*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0a0a0a;--bg-raise: #0e0e0e;--bg-code: #0d0d0d;--line: #222222;--line-strong: #333333;--fg: #ededed;--fg-mid: #a1a1a1;--fg-dim: #7a7a7a;--accent: #4e9bfa;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--motion-quick: .12s;--motion-content: .18s;--motion-spatial: .22s;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 40px;--s7: 64px;--s8: 96px;color-scheme:dark}html{background:var(--bg)}body{font-family:var(--sans);background:var(--bg);color:var(--fg);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;letter-spacing:-.006em}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}::selection{background:color-mix(in srgb,var(--accent) 26%,transparent);color:var(--fg)}.wrap{max-width:1120px;margin:0 auto;padding:0 var(--s5)}.num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip-link{position:fixed;left:var(--s3);top:var(--s3);z-index:100;padding:var(--s2) var(--s3);border-radius:6px;background:var(--fg);color:var(--bg);font-weight:600;transform:translateY(calc(-100% - var(--s5)))}.skip-link:focus{transform:translateY(0)}main:focus{outline:none}.site-head{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;background:var(--bg)}.site-head .wrap{display:flex;align-items:center;gap:var(--s4);height:56px}.public-site-head .public-label{color:var(--fg-dim);font-size:12px}.public-unavailable{min-height:calc(100vh - 120px);display:grid;place-items:center}.wordmark{display:flex;align-items:center;gap:10px;font-weight:600;font-size:14px;letter-spacing:-.01em;flex:none;min-height:40px}.search{flex:1;max-width:380px;position:relative;display:flex;align-items:center}.search svg{position:absolute;left:10px;color:var(--fg-dim);pointer-events:none}.search input{width:100%;height:40px;background:var(--bg);border:1px solid var(--line);border-radius:6px;color:var(--fg);font:inherit;font-size:13px;padding:0 var(--s3) 0 32px}.search input::placeholder{color:var(--fg-dim)}.search input:focus,.search input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line-strong)}.search kbd{position:absolute;right:8px;font-family:var(--mono);font-size:10px;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.head-spacer{flex:1}.btn-ghost{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 var(--s3);border:1px solid var(--line);border-radius:8px;color:var(--fg-mid);font-size:13px}.btn-ghost:hover{border-color:var(--line-strong);color:var(--fg)}section{padding:var(--s7) 0 0}#projects{padding-top:var(--s6)}.sec-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--s5);gap:var(--s3);flex-wrap:wrap}.sec-head h1,.sec-head h2{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.09em;color:var(--fg-dim)}.sec-head .count{font-family:var(--mono);font-size:11px;color:var(--fg-dim)}.project-summary-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--s3)}.act-list{list-style:none;border-top:1px solid var(--line)}.act-list li{border-bottom:1px solid var(--line)}.act-list a{display:flex;align-items:baseline;gap:var(--s3);padding:14px var(--s2);min-height:48px;font-size:13px;color:var(--fg-mid);transition:background var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out)}.act-list a:hover{background:var(--bg-raise);color:var(--fg)}.act-list .act-t{min-width:0;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.act-list .act-t strong{font-weight:500;color:var(--fg)}.act-list .act-p{color:var(--fg-dim)}.act-list .act-v{font-family:var(--mono);font-size:11px;color:var(--fg-dim);flex:none}.act-list .act-w{font-family:var(--mono);font-size:11px;color:var(--fg-dim);flex:none;width:44px;text-align:right}.proj-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);list-style:none}.proj-card{background:var(--bg)}.proj-card a{display:block;padding:var(--s5);transition:background var(--motion-quick) var(--ease-out)}.proj-card a:hover{background:var(--bg-raise)}.proj-card h3{font-size:14px;font-weight:500;letter-spacing:-.01em}.proj-card .big{display:block;margin-top:var(--s5);font-size:44px;font-weight:300;line-height:1;letter-spacing:-.03em}.proj-card .big-label{display:block;margin-top:var(--s1);font-size:12px;color:var(--fg-dim)}.proj-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border-top:1px solid var(--line);margin:var(--s5) calc(-1 * var(--s5)) calc(-1 * var(--s5))}.proj-stats>div{background:var(--bg);padding:var(--s3) var(--s5)}.proj-stats dt{font-size:11px;color:var(--fg-dim)}.proj-stats dd{font-size:13px;margin-top:2px;color:var(--fg-mid)}.kind-filter{display:inline-flex;border:1px solid var(--line)}.kind-filter button{padding:5px 10px;color:var(--fg-dim);font-size:11px;border-left:1px solid var(--line)}.kind-filter button:first-child{border-left:0}.kind-filter button:hover,.kind-filter button[aria-pressed=true]{color:var(--fg);background:var(--bg-raise)}.toolbar{display:flex;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s4);align-items:center}.toolbar .search{max-width:300px;flex:1 1 220px}.document-toolbar{position:sticky;top:56px;z-index:8;padding:var(--s3) 0;background:var(--bg);border-bottom:1px solid var(--line)}.document-toolbar .search{max-width:none}.sel,.text-input{height:40px;padding:0 var(--s4);background:var(--bg);color:var(--fg-mid);border:1px solid var(--line);border-radius:6px;font:inherit;font-size:13px}.text-input{color:var(--fg);min-width:200px}.sel{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background-image:linear-gradient(45deg,transparent 50%,var(--fg-dim) 50%),linear-gradient(135deg,var(--fg-dim) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 10px) 50%;background-repeat:no-repeat;background-size:4px 4px}.sel:hover,.text-input:hover{border-color:var(--line-strong)}.sel:focus,.text-input:focus,.sel:focus-visible,.text-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line-strong)}.plan-list{list-style:none;border-top:1px solid var(--line)}.plan-load-more{display:flex;justify-content:center;padding:var(--s5) 0 var(--s3)}.plan-row{border-bottom:1px solid var(--line)}.plan-row>a{display:grid;grid-template-columns:minmax(0,2.4fr) 76px 92px minmax(0,1.6fr) 74px 48px;gap:var(--s4);align-items:center;padding:var(--s4) var(--s2);min-height:56px;transition:background var(--motion-quick) var(--ease-out)}.plan-row>a:hover{background:var(--bg-raise)}.plan-title{min-width:0}.plan-title .t{display:block;font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.plan-title .p{display:block;font-size:12px;color:var(--fg-dim);margin-top:1px}.author{font-family:var(--mono);font-size:11px;color:var(--fg-mid);border:1px solid var(--line);border-radius:4px;padding:2px 7px;justify-self:start}.status{display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--fg-mid);white-space:nowrap}.status:before{content:"";width:7px;height:7px;border-radius:50%;flex:none}.status.st-draft:before{background:transparent;border:1px solid var(--fg-dim)}.status.st-active:before{background:var(--accent)}.status.st-done:before{background:var(--fg)}.status.st-archived:before{background:var(--line-strong)}.status.st-archived{color:var(--fg-dim)}.tags{display:flex;gap:var(--s2);flex-wrap:wrap;min-width:0}.tag{font-family:var(--mono);font-size:11px;color:var(--fg-dim);white-space:nowrap}.tag:before{content:"#";opacity:.6}.updated{font-size:12px;color:var(--fg-dim);white-space:nowrap;text-align:right}.ver{font-family:var(--mono);font-size:11px;color:var(--fg-mid);border:1px solid var(--line);border-radius:999px;padding:2px 8px;justify-self:end}.crumbs{display:flex;align-items:center;gap:var(--s2);font-size:12px;color:var(--fg-dim);flex-wrap:wrap;min-height:44px}.crumbs a{color:var(--fg-dim);padding:4px 2px;margin:0 -2px;display:inline-flex;align-items:center}.crumbs a:hover{color:var(--fg)}.crumbs .sep{color:var(--line-strong)}.crumbs .here{color:var(--fg-mid)}.crumbs a.crumb-up{font-family:var(--mono);font-size:12px;line-height:1;border:1px solid var(--line);border-radius:4px;height:24px;padding:0 8px;display:inline-flex;align-items:center;margin:0 var(--s2) 0 0;color:var(--fg-dim)}.crumbs a.crumb-up:hover{border-color:var(--line-strong)}.proj-view{padding:var(--s5) 0 var(--s8)}.reader{padding:var(--s5) 0 var(--s8);display:block}.proj-head{margin:0 0 var(--s6)}.proj-head h1{font-size:26px;font-weight:600;letter-spacing:-.02em;line-height:1.2}.proj-head .desc{color:var(--fg-mid);font-size:14px;margin-top:var(--s2);max-width:64ch}.proj-head .proj-repo{font-size:13px;margin-top:var(--s3)}.proj-head .proj-repo a{color:var(--accent);word-break:break-all}.proj-head .proj-repo span{color:var(--fg-dim);word-break:break-all}.page-grid{display:grid;grid-template-columns:minmax(0,1fr) 236px;grid-template-areas:"crumbs crumbs" "main rail";column-gap:var(--s7);align-items:start}.page-grid>.crumbs{grid-area:crumbs;margin-bottom:var(--s6)}.page-grid>.page-main{grid-area:main;min-width:0}.page-grid>.meta-rail{grid-area:rail}.page-grid.page-grid-board{max-width:1480px;grid-template-columns:minmax(0,1fr);grid-template-areas:"crumbs" "main"}.page-grid-board>.meta-rail{display:none}.meta-rail{position:sticky;top:76px;display:flex;flex-direction:column;gap:var(--s5);padding-left:var(--s5);border-left:1px solid var(--line);font-size:12px}.meta-rail a{color:var(--fg)}.meta-rail a:hover{color:var(--accent)}.meta-rail .mr-k{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim)}.meta-rail .mr-v{margin-top:6px;color:var(--fg)}.meta-rail .mr-ver .mr-v{display:flex;align-items:baseline;gap:var(--s2);flex-wrap:wrap}.meta-rail .ver-hint{color:var(--fg-dim);font-family:var(--mono);font-size:11px}.meta-rail .mr-tags .mr-v,.meta-rail .mr-agents .mr-v{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3)}.meta-rail .mr-stats{display:flex;flex-direction:column;gap:var(--s3)}.meta-rail .mr-stat{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3)}.meta-rail .mr-stat .k{color:var(--fg-dim)}.meta-rail .mr-stat .v{color:var(--fg);font-variant-numeric:tabular-nums}.sel-sm{height:30px;padding:0 28px 0 var(--s2);font-size:12px}.ver-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.ver-chip{font-family:var(--mono);font-size:11px;color:var(--fg-dim);border:1px solid var(--line);border-radius:999px;padding:2px 8px}.ver-chip:hover{border-color:var(--line-strong);color:var(--fg)}.ver-chip[aria-pressed=true]{border-color:var(--fg-mid);color:var(--fg)}.ver-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap;border:1px solid var(--line-strong);border-radius:8px;padding:var(--s3) var(--s4);margin-bottom:var(--s4);font-size:12px;color:var(--fg-mid)}.ver-banner-actions{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.operation-note{border:1px solid color-mix(in srgb,var(--accent) 35%,var(--line));border-radius:6px;padding:var(--s2) var(--s3);margin-bottom:var(--s3);color:var(--fg-mid);font-size:12px}.plan-frame{width:100%;border:0;display:block;background:transparent;min-height:300px}.panel{border:1px solid var(--line);border-radius:10px;padding:var(--s5);margin-bottom:var(--s4)}.panel-h{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.09em;color:var(--fg-dim);margin-bottom:var(--s4)}.code-block{background:var(--bg-code);border:1px solid var(--line);border-radius:8px;padding:var(--s4);overflow-x:auto;font-family:var(--mono);font-size:12.5px;line-height:1.6;color:var(--fg-mid);white-space:pre}.token-form{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s4)}.token-form-lock{display:flex;width:100%;min-width:0;flex-direction:column;align-items:flex-start;gap:var(--s4);margin:0;padding:0;border:0}.token-create-grid{width:100%;display:grid;grid-template-columns:minmax(180px,1fr) 150px 190px;gap:var(--s3)}.token-field{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--fg-dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.token-field .text-input,.token-field .sel{width:100%;min-width:0}.token-field small{color:var(--fg-dim);font-size:11px;line-height:1.4;text-transform:none;letter-spacing:0}.token-presets,.token-project-access{width:100%;border:1px solid var(--line);border-radius:8px;padding:var(--s3) var(--s4) var(--s4)}.token-presets legend,.token-project-access legend{padding:0 6px;color:var(--fg-dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.token-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s3)}.token-preset{display:flex;gap:var(--s2);border:1px solid var(--line);border-radius:7px;padding:var(--s3);color:var(--fg-mid);cursor:pointer}.token-preset[data-selected]{border-color:var(--fg-mid);background:var(--bg-code)}.token-preset input,.token-access-choice input,.token-project-option input{margin-top:3px;accent-color:var(--accent)}.token-preset span,.token-access-choice span,.token-project-option span{display:flex;min-width:0;flex-direction:column;gap:3px}.token-preset small,.token-access-choice small{color:var(--fg-dim);font-size:11px;line-height:1.45}.token-project-access{display:flex;flex-direction:column;gap:var(--s3)}.token-access-choice{display:flex;align-items:flex-start;gap:var(--s2);color:var(--fg-mid);font-size:12px;cursor:pointer}.token-access-all{border-top:1px solid var(--line);padding-top:var(--s3)}.token-project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2);padding-left:var(--s5)}.token-project-option{display:flex;align-items:flex-start;gap:var(--s2);color:var(--fg-mid);font-size:12px;cursor:pointer}.token-project-option code{color:var(--fg-dim);font-size:10.5px}.token-project-note{padding-left:var(--s5);color:var(--fg-dim);font-size:12px;line-height:1.5}.token-advanced{width:100%;color:var(--fg-dim);font-size:12px}.token-advanced summary{cursor:pointer}.token-advanced .token-scopes{margin-top:var(--s3)}.token-scopes{width:100%;border:1px solid var(--line);border-radius:8px;padding:var(--s3) var(--s4) var(--s4)}.token-scopes legend{padding:0 6px;color:var(--fg-dim);font-size:11px;text-transform:uppercase;letter-spacing:.06em}.token-scope-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s2) var(--s4)}.token-scope{display:flex;align-items:flex-start;gap:var(--s2);color:var(--fg-mid);font-size:12px;line-height:1.4;cursor:pointer}.token-scope input{margin-top:2px;accent-color:var(--accent)}.token-scope span{display:flex;min-width:0;flex-direction:column}.token-scope code{color:var(--fg-dim);font-family:var(--mono);font-size:10.5px}.token-reveal{margin-top:var(--s4);border:1px solid var(--line-strong);border-radius:8px;padding:var(--s4)}.token-reveal h3{margin-bottom:var(--s4);font-size:16px}.token-reveal-note{font-size:12px;color:var(--accent);margin-bottom:var(--s2)}.token-reveal-row{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap}.token-value{flex:1 1 360px;min-width:180px;font-family:var(--mono);font-size:13px;color:var(--fg)}.token-onboarding-step{display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--s3);padding:var(--s4) 0;border-top:1px solid var(--line)}.token-onboarding-step>div{min-width:0}.token-onboarding-step p{margin-bottom:var(--s2);color:var(--fg-mid);font-size:12px}.token-onboarding-step .token-security-note{margin-top:var(--s3);margin-bottom:0;color:var(--fg-dim)}.token-step-num{display:grid;place-items:center;align-self:start;width:24px;height:24px;border:1px solid var(--line-strong);border-radius:999px;color:var(--fg-mid);font-family:var(--mono);font-size:11px}.token-setup-code{display:block;width:100%;margin-bottom:var(--s2);resize:vertical;white-space:pre-wrap;word-break:break-word}.token-test-result{margin-top:var(--s2)}.token-test-result.success{color:#65c98a}.token-test-result.error{color:#f2555a}.form-err{margin-top:var(--s3);font-size:12px;color:#f2555a}.token-list{list-style:none}.token-item{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(220px,1.3fr) auto auto;align-items:center;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--line);font-size:13px}.token-item:last-child{border-bottom:0}.token-identity,.token-access,.token-activity{display:flex;min-width:0;flex-direction:column;gap:4px;align-items:flex-start}.token-name{font-weight:500}.token-prefix{font-family:var(--mono);font-size:12px;color:var(--fg-dim)}.token-agent,.token-legacy{border:1px solid var(--line);border-radius:999px;padding:1px 7px;color:var(--fg-dim);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.token-legacy{border-color:#7a4e28;color:#e0913a}.token-access{color:var(--fg-dim);font-family:var(--mono);font-size:11px;line-height:1.45}.token-access span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.token-activity{align-items:flex-end;white-space:nowrap}.token-meta{color:var(--fg-dim)}.token-revoked{color:var(--fg-dim);font-size:12px}.btn{display:inline-flex;align-items:center;height:40px;padding:0 var(--s4);background:var(--fg);color:#0a0a0a;border-radius:6px;font-size:13px;font-weight:500}.btn:hover{background:#fff}.btn:disabled{opacity:.5;cursor:default}.btn-quiet{border:1px solid var(--line);border-radius:6px;padding:6px 12px;font-size:12px;color:var(--fg-mid)}.btn-quiet:hover{border-color:var(--line-strong);color:var(--fg)}.loader{padding:var(--s7) 0;display:grid;place-items:center}.loader.loader-page{min-height:calc(100vh - 56px);padding:0 0 56px}.boot{min-height:100vh;display:grid;place-items:center}.lab-loading{display:flex;flex-direction:column;align-items:center;color:var(--fg)}.lab-loader{display:inline-block;line-height:0}.lab-loader svg{width:100%;height:100%;overflow:visible}.lab-loader{position:relative}.ll-rotor{position:absolute;top:0;right:0;bottom:0;left:0;animation:lab-turn 3.2s infinite;will-change:transform}.ll-rotor svg{position:absolute;top:0;right:0;bottom:0;left:0}.ll-fill{position:absolute;left:calc(100% / 18);top:calc(100% / 18);width:calc(100% * 8 / 18);height:calc(100% * 8 / 18);background:currentColor;animation:lab-slide 3.2s infinite;will-change:transform}@keyframes lab-turn{0%{transform:rotate(0);animation-timing-function:cubic-bezier(.65,0,.35,1)}30%{transform:rotate(180deg)}50%{transform:rotate(180deg);animation-timing-function:cubic-bezier(.65,0,.35,1)}80%{transform:rotate(360deg)}to{transform:rotate(360deg)}}@keyframes lab-slide{0%{transform:translateY(100%)}30%{transform:translateY(100%);animation-timing-function:cubic-bezier(.5,0,.75,.35)}42%{transform:translateY(0)}46%{transform:translateY(18.75%)}50%{transform:translateY(0)}80%{transform:translateY(0);animation-timing-function:cubic-bezier(.5,0,.75,.35)}92%{transform:translateY(100%)}96%{transform:translateY(81.25%)}to{transform:translateY(100%)}}.empty-state{padding:var(--s8) 0;text-align:center}.empty-title{font-size:15px;color:var(--fg)}.empty-body{font-size:13px;color:var(--fg-mid);margin:var(--s3) 0 var(--s5)}.empty-body a{color:var(--accent)}.signin-screen{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s3);padding:var(--s5)}.signin-brand{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:600;letter-spacing:-.02em}.signin-sub{color:var(--fg-mid);font-size:14px;margin-bottom:var(--s5)}.site-foot{border-top:1px solid var(--line);margin-top:var(--s7);padding:var(--s5) 0 var(--s6)}.site-foot .wrap{display:flex;justify-content:space-between;gap:var(--s4);font-size:12px;color:var(--fg-dim);flex-wrap:wrap}.site-foot .mono{font-family:var(--mono);font-size:11px}.kind-badge{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;padding:1px 5px;margin-left:var(--s2);vertical-align:1px;white-space:nowrap}.unread-badge{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);border-radius:4px;padding:1px 5px;margin-left:var(--s2);vertical-align:1px;white-space:nowrap}.outline-list{list-style:none;display:flex;flex-direction:column;gap:2px}.outline-list button{display:block;width:100%;text-align:left;font-size:12px;color:var(--fg-mid);padding:3px 0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.outline-list button:hover{color:var(--fg)}.outline-list .lvl3 button{padding-left:var(--s3);color:var(--fg-dim)}.outline-list .lvl3 button:hover{color:var(--fg)}.feedback{margin-top:var(--s7);border-top:1px solid var(--line);padding-top:var(--s5)}.feedback-form{display:flex;flex-direction:column;gap:var(--s3);margin-bottom:var(--s5)}.feedback-form textarea{min-height:72px;resize:vertical;padding:var(--s3);background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;line-height:1.5}.feedback-form textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line-strong)}.feedback-form-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);flex-wrap:wrap}.feedback-hint{font-size:12px;color:var(--fg-dim)}.feedback-hint code{font-family:var(--mono);font-size:11px;border:1px solid var(--line);border-radius:4px;padding:1px 5px}.feedback-dropzone{display:flex;align-items:center;gap:var(--s3);min-height:42px;padding:var(--s2) var(--s3);border:1px dashed var(--line);border-radius:8px;color:var(--fg-dim);font-size:12px;transition:border-color var(--motion-quick) var(--ease-out),background var(--motion-quick) var(--ease-out)}.feedback-dropzone.is-dragging{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--bg))}.feedback-image-drafts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--s3);list-style:none}.feedback-image-drafts li{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:var(--s3);align-items:center;min-width:0;padding:var(--s2);border:1px solid var(--line);border-radius:8px;background:var(--bg-raise)}.feedback-image-drafts img{width:72px;height:56px;object-fit:cover;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.feedback-image-drafts li>div{display:flex;min-width:0;flex-direction:column;gap:3px}.feedback-image-name{overflow:hidden;color:var(--fg-mid);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.feedback-image-drafts input{width:100%;min-width:0;padding:5px 7px;border:1px solid var(--line);border-radius:5px;background:var(--bg);color:var(--fg);font:inherit;font-size:12px}.feedback-image-drafts input:focus{outline:2px solid var(--accent);outline-offset:2px}.feedback-list{list-style:none;border-top:1px solid var(--line)}.feedback-item{border-bottom:1px solid var(--line);padding:var(--s4) 0}.feedback-item.resolved .feedback-body{color:var(--fg-dim)}.feedback-meta{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;font-size:12px;color:var(--fg-dim)}.feedback-meta .feedback-actions{margin-left:auto;display:inline-flex;gap:var(--s2)}.feedback-body{margin-top:var(--s2);font-size:14px;color:var(--fg-mid);white-space:pre-wrap;overflow-wrap:anywhere}.feedback-anchor{font-size:12px;color:var(--fg-mid)}.feedback-context{color:var(--fg-mid)}.outdated-badge{border:1px solid #7a4e28;border-radius:999px;padding:1px 7px;color:#e0913a;font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.04em}button.feedback-anchor:hover{color:var(--accent)}.feedback-quote{margin-top:var(--s2);display:flex;align-items:flex-start;gap:var(--s2);border-left:2px solid var(--line-strong);padding:2px 0 2px var(--s3);font-size:13px;color:var(--fg-dim);font-style:italic;overflow-wrap:anywhere}.feedback-quote .btn-quiet{flex:none;padding:0 7px}.feedback-attachments{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,240px));gap:var(--s3);margin-top:var(--s3);list-style:none}.feedback-attachments li{min-width:0}.feedback-attachments a{display:block;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--bg-raise)}.feedback-attachments img{display:block;width:100%;max-height:240px;object-fit:contain}.feedback-attachments li>span{display:block;margin-top:var(--s1);overflow:hidden;color:var(--fg-dim);font-size:11px;text-overflow:ellipsis;white-space:nowrap}.feedback-image-unavailable{display:grid;min-height:96px;place-items:center;border:1px solid var(--line);border-radius:8px;color:var(--fg-dim);font-size:12px}.issue-comment-images{margin-top:var(--s3)}.issue-comment-composer{margin-top:var(--s4)}.issue-load-more{margin-top:var(--s3)}.feedback-context-target{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);padding:var(--s2) var(--s3);border-left:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,var(--bg));color:var(--fg-mid);font-size:12px}.feedback-context-target code{color:var(--fg-dim)}.name-form{display:flex;align-items:center;gap:var(--s2);flex:1;min-width:0;flex-wrap:wrap}.name-form .name-input{flex:1 1 240px;font-size:18px;font-weight:600;letter-spacing:-.02em}.btn-quiet-danger{color:#f2555a}.btn-quiet-danger:hover{border-color:#f2555a80;color:#f2555a}.review-workbench{padding:0;margin-bottom:var(--s5)}.review-workbench-bar{position:sticky;top:56px;z-index:15;margin:0;padding:var(--s2) 0;border-block:1px solid var(--line);background:color-mix(in srgb,var(--bg) 98%,transparent);-webkit-backdrop-filter:blur(14px) saturate(120%);backdrop-filter:blur(14px) saturate(120%)}.review-workbench-controls{display:flex;align-items:center;gap:var(--s2) var(--s3);min-height:36px;flex-wrap:wrap}.workbench-primary-controls,.workbench-view-controls{display:inline-flex;align-items:center;gap:var(--s2);min-width:0}.review-workbench-controls .sel{width:auto;height:34px;padding:0 30px 0 var(--s3)}.review-workbench-controls .reader-tabs{margin:0}.workbench-mode{padding:6px var(--s3);color:var(--fg-dim);font-size:12px}.workbench-feedback-toggle{min-height:34px;padding:0 var(--s3);border:1px solid var(--line);border-radius:6px;color:var(--fg-mid);font-size:12px;transition:border-color var(--motion-quick) var(--ease-out),background var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out),transform var(--motion-quick) var(--ease-out)}.workbench-feedback-toggle:hover,.workbench-feedback-toggle[aria-expanded=true]{border-color:var(--line-strong);color:var(--fg);background:var(--bg-raise)}.workbench-feedback-toggle:active{transform:translateY(1px)}.workbench-queue-nav{display:inline-flex;align-items:center;gap:2px;margin-left:auto}.workbench-queue-nav a,.workbench-queue-nav>span{display:inline-flex;align-items:center;gap:5px;min-height:34px;padding:0 var(--s2);border-radius:6px;color:var(--fg-mid);font-size:12px;transition:background var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out),transform var(--motion-quick) var(--ease-out)}.workbench-queue-nav a:hover{background:var(--bg-raise);color:var(--fg)}.workbench-queue-nav a:active{transform:translateY(1px)}.workbench-queue-nav .is-disabled{color:var(--fg-dim);opacity:.45}.workbench-queue-nav kbd{font-family:var(--mono);font-size:9px;color:var(--fg-dim)}.workbench-error{padding:var(--s2) 0;border-bottom:1px solid var(--line)}.workbench-approval{border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg-raise) 55%,var(--bg))}.workbench-approval>summary{display:flex;align-items:center;gap:var(--s2);min-height:40px;padding:var(--s2) 2px;color:var(--fg-dim);font-size:12px;cursor:pointer;list-style:none;transition:color var(--motion-quick) var(--ease-out)}.workbench-approval>summary::-webkit-details-marker{display:none}.workbench-approval>summary:before{content:"";width:6px;height:6px;flex:none;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);transition:transform var(--motion-quick) var(--ease-out)}.workbench-approval[open]>summary:before{transform:rotate(45deg)}.workbench-approval>summary:hover{color:var(--fg-mid)}.workbench-approval>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px;color:var(--fg-mid)}.workbench-approval .review-decision{margin:0;padding:var(--s4) 0;border-top:1px solid var(--line)}.workbench-feedback{max-height:min(620px,65vh);overflow:auto;padding:0 0 var(--s4);border-bottom:1px solid var(--line);background:var(--bg)}.workbench-feedback .feedback{margin-top:0;padding-top:var(--s4);border-top:0}.reader-view-controls{display:flex;align-items:flex-start;gap:var(--s3);margin-bottom:var(--s4);flex-wrap:wrap}.reader-tabs{display:inline-flex;gap:2px;border:1px solid var(--line);border-radius:8px;padding:2px;margin-bottom:var(--s4)}.reader-view-controls .reader-tabs{margin-bottom:0}.reader-tabs button{padding:5px 12px;font-size:12px;border-radius:6px;color:var(--fg-dim);transition:color var(--motion-quick) var(--ease-out),background var(--motion-quick) var(--ease-out)}.reader-tabs button:hover{color:var(--fg)}.reader-tabs button[aria-selected=true]{background:var(--bg-raise);color:var(--fg)}.reader-tabs button .num{color:var(--fg-dim);font-size:11px;margin-left:4px}.diff-cta{min-height:34px;padding:5px var(--s2);color:var(--accent);font-size:12px}.diff-cta:hover{text-decoration:underline;color:var(--accent)}.diff-head{display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;font-size:12px;color:var(--fg-mid);margin-bottom:var(--s3)}.diff-reverse{color:var(--warn, #d9a441)}.diff-head>.sel-sm:first-of-type{margin-left:auto}.review-decision{margin-top:var(--s6);padding-top:var(--s5);border-top:1px solid var(--line)}.review-decision-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.review-decision-head h2{font-size:12px;font-weight:500;text-transform:uppercase;letter-spacing:.09em;color:var(--fg-dim)}.decision-badge{border:1px solid var(--line-strong);border-radius:999px;padding:2px 8px;font-family:var(--mono);font-size:10px;text-transform:uppercase}.decision-approved{color:#57ab5a;border-color:#57ab5a73}.decision-changes_requested{color:#e0913a;border-color:#e0913a73}.decision-current{margin-top:var(--s3);color:var(--fg-mid)}.decision-current .num{display:block;margin-top:var(--s1);color:var(--fg-dim);font-size:11px}.decision-hint{margin-top:var(--s3);color:var(--fg-dim);font-size:12px}.review-decision-actions{display:flex;align-items:center;gap:var(--s2);margin-top:var(--s2)}.plan-questions{margin-top:var(--s7);padding-top:var(--s5);border-top:1px solid var(--line)}.plan-questions>header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s5)}.plan-questions>header h2{font-size:14px;font-weight:600}.plan-questions>header p{color:var(--fg-dim);font-size:12px}.plan-question-list{display:flex;flex-direction:column;gap:var(--s6)}.plan-question{min-width:0;border:0}.plan-question legend{color:var(--fg);font-size:14px;font-weight:500;margin-bottom:var(--s3)}.plan-question-options{display:grid;gap:var(--s2)}.plan-question-option{display:flex;align-items:center;gap:var(--s3);min-height:44px;padding:var(--s2) var(--s3);border:1px solid var(--line);border-radius:7px;color:var(--fg-mid);cursor:pointer;transition:border-color var(--motion-quick) var(--ease-out),background-color var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out)}.plan-question-option:hover{border-color:var(--line-strong);color:var(--fg)}.plan-question-option:has(input:checked){border-color:var(--fg-mid);background:var(--bg-raise);color:var(--fg)}.plan-question-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.plan-question-option:has(input:disabled){cursor:default;opacity:.65}.plan-question-option input{width:16px;height:16px;flex:none;accent-color:var(--accent)}.plan-question-status,.plan-question>.form-err{min-height:18px;margin-top:var(--s2);font-size:11px}.plan-question-status{color:var(--fg-dim)}.load-more{display:block;margin:var(--s4) auto 0}.inbox-page{padding-top:var(--s6);padding-bottom:var(--s8)}.inbox-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4)}.inbox-heading-actions{display:flex;align-items:center;gap:var(--s3)}.inbox-total{padding-top:6px;color:var(--fg-dim);font-size:12px;white-space:nowrap}.inbox-summary{display:flex;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s5);color:var(--fg-dim);font-size:12px}.inbox-summary strong{color:var(--fg)}.inbox-count-scope{color:var(--fg-dim);font-size:11px}.inbox-filters{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;margin-bottom:var(--s4)}.inbox-filters .text-input{width:min(320px,100%)}.inbox-filter-count{margin-left:auto;color:var(--fg-dim);font-size:11px}.inbox-list{list-style:none;border-top:1px solid var(--line)}.inbox-item{border-bottom:1px solid var(--line)}.inbox-item>a{display:grid;grid-template-columns:92px minmax(0,1fr) minmax(100px,180px) 72px;gap:var(--s4);align-items:center;min-height:68px;padding:var(--s3) var(--s2)}.inbox-item>a:hover{background:var(--bg-raise)}.inbox-kind{color:var(--fg-dim);font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em}.inbox-copy{display:flex;min-width:0;flex-direction:column}.inbox-copy strong{color:var(--fg);font-size:13px;font-weight:500}.inbox-copy>span{overflow:hidden;color:var(--fg-mid);text-overflow:ellipsis;white-space:nowrap}.inbox-copy .inbox-detail,.inbox-project,.inbox-time{color:var(--fg-dim);font-size:12px}.inbox-time{text-align:right}.proj-head-row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4)}.proj-menu{position:relative;flex:none}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid var(--line);border-radius:8px;color:var(--fg-mid)}.icon-btn:hover{border-color:var(--line-strong);color:var(--fg)}.menu-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:10;min-width:168px;background:var(--bg-raise);border:1px solid var(--line-strong);border-radius:10px;padding:var(--s1);box-shadow:0 8px 28px #00000080;transform-origin:top right}.menu-pop button{display:flex;width:100%;align-items:center;gap:var(--s2);padding:8px var(--s3);font-size:13px;color:var(--fg-mid);border-radius:6px;text-align:left}.menu-pop button:hover,.menu-pop button:focus-visible{background:var(--bg);color:var(--fg)}.menu-pop button.danger{color:#f2555a}.menu-pop button.danger:hover{background:#f2555a1a;color:#f2555a}.menu-pop .menu-sep{height:1px;background:var(--line);margin:var(--s1) 0}.desc-form{display:flex;flex-direction:column;gap:var(--s2);margin-top:var(--s2);max-width:64ch}.desc-form textarea{min-height:72px;resize:vertical;padding:var(--s3);background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;line-height:1.5}.desc-form textarea:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line-strong)}.desc-form .row{display:flex;gap:var(--s2);align-items:center}.desc-add{color:var(--fg-dim);font-size:13px;margin-top:var(--s2);border:1px dashed var(--line);border-radius:8px;padding:8px var(--s3)}.desc-add:hover{border-color:var(--line-strong);color:var(--fg-mid)}.archived-badge{font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;padding:2px 6px;vertical-align:middle;margin-left:var(--s3)}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#0009;display:grid;place-items:center;padding:var(--s5);overscroll-behavior:contain}.confirm-card{width:100%;max-width:420px;background:var(--bg-raise);border:1px solid var(--line-strong);border-radius:12px;padding:var(--s5);transform-origin:center}.confirm-card h3{font-size:15px;font-weight:600;margin-bottom:var(--s2)}.confirm-card p{font-size:13px;color:var(--fg-mid);margin-bottom:var(--s4)}.confirm-card .text-input{width:100%;min-width:0}.confirm-actions{display:flex;justify-content:flex-end;gap:var(--s2);margin-top:var(--s4)}.btn-danger{display:inline-flex;align-items:center;height:40px;padding:0 var(--s4);background:#f2555a;color:#0a0a0a;border-radius:6px;font-size:13px;font-weight:500}.btn-danger:hover{background:#ff6b70}.btn-danger:disabled{opacity:.4;cursor:default}.archived-block{margin-top:var(--s5)}.arch-toggle{display:inline-flex;align-items:center;gap:var(--s2);font-size:12px;color:var(--fg-dim)}.arch-toggle:hover{color:var(--fg-mid)}.arch-grid{margin-top:var(--s4)}.arch-grid .proj-card h3{color:var(--fg-mid)}.arch-grid .proj-card a{opacity:.72}.arch-grid .proj-card a:hover{opacity:1}.token-exp{color:var(--fg-dim);font-size:12px}.token-exp.expired{color:#f2555a}.bottom-nav{display:none}@media(max-width:960px){.proj-grid{grid-template-columns:1fr 1fr}.plan-row>a{grid-template-columns:minmax(0,2fr) 92px 74px 48px}.plan-row .tags,.plan-row .author{display:none}.token-item{grid-template-columns:minmax(160px,.7fr) minmax(200px,1.3fr) auto}.token-item>.btn-quiet,.token-item>.token-revoked{grid-column:3}.page-grid{grid-template-columns:1fr;grid-template-areas:"crumbs" "main" "rail"}.meta-rail{position:static;border-left:0;padding-left:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:var(--s4) 0;margin:var(--s6) 0 0;flex-direction:row;flex-wrap:wrap;gap:var(--s4) var(--s6);align-items:flex-start}.meta-rail .mr-stats{flex-direction:row;flex-wrap:wrap;gap:var(--s4) var(--s6)}.meta-rail .mr-stat{flex-direction:column;justify-content:flex-start;gap:4px}.meta-rail .mr-stat .k{font-size:11px;text-transform:uppercase;letter-spacing:.08em}}@media(max-width:640px){body{padding-bottom:calc(72px + env(safe-area-inset-bottom))}.wrap{padding:0 var(--s4)}.site-head{position:static}.document-toolbar{top:0}.site-head .wrap{height:auto;flex-wrap:wrap;padding-top:var(--s3);padding-bottom:var(--s3);row-gap:var(--s3)}.wordmark{order:1}.btn-ghost .btn-label,.head-spacer{display:none}.search{order:3;max-width:none;flex-basis:100%}.search kbd{display:none}section{padding-top:var(--s6)}#projects{padding-top:var(--s5)}.proj-grid{grid-template-columns:1fr}.proj-card .big{font-size:36px;margin-top:var(--s4)}.plan-row>a{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"title ver" "meta meta";row-gap:var(--s2);padding:var(--s4) 0}.plan-title{grid-area:title}.plan-title .t{white-space:normal}.ver{grid-area:ver;align-self:start}.plan-row .status{grid-area:meta}.plan-row .updated{display:none}.plan-row .status:after{content:attr(data-updated);color:var(--fg-dim);margin-left:var(--s2)}.toolbar .search{flex-basis:100%;max-width:none}.token-create-grid,.token-scope-grid,.token-preset-grid,.token-project-grid{grid-template-columns:1fr}.token-item{grid-template-columns:1fr auto;gap:var(--s3)}.token-access{grid-column:1 / -1;grid-row:2}.token-activity{grid-column:1;grid-row:3;align-items:flex-start}.token-item>.btn-quiet,.token-item>.token-revoked{grid-column:2;grid-row:3}.proj-head h1{font-size:22px}.bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:30;background:var(--bg);border-top:1px solid var(--line);height:60px;padding-bottom:env(safe-area-inset-bottom)}.bottom-nav a,.bottom-nav button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-size:10.5px;color:var(--fg-dim);min-height:44px}.bottom-nav a[aria-current=page]{color:var(--fg)}.bottom-nav svg{display:block}.inbox-item>a{grid-template-columns:72px minmax(0,1fr);gap:var(--s2)}.inbox-project,.inbox-time{grid-column:2;text-align:left}.review-workbench-bar{top:0}.review-workbench-controls{align-items:stretch}.workbench-primary-controls,.workbench-view-controls{width:100%}.workbench-primary-controls{order:1}.workbench-view-controls{order:2}.review-workbench-controls .sel{flex:1 1 112px;min-width:0}.workbench-primary-controls .workbench-feedback-toggle{flex:0 1 auto}.workbench-queue-nav{order:3;width:100%;margin-left:0;justify-content:space-between}.workbench-feedback{max-height:none}.plan-questions>header{align-items:flex-start;flex-direction:column;gap:var(--s1)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.ll-rotor{animation:none!important}.ll-fill{animation:none!important;opacity:1!important;transform:none!important}.workbench-feedback-toggle:active,.workbench-queue-nav a:active{transform:none}.workbench-approval>summary:before{transition:none}}.issue-list{list-style:none;border-top:1px solid var(--line)}.issue-row{border-bottom:1px solid var(--line)}.issue-row>a{display:grid;grid-template-columns:52px minmax(0,2.6fr) minmax(0,220px) 72px;gap:var(--s4);align-items:center;padding:var(--s3) var(--s2);min-height:54px;transition:background var(--motion-quick) var(--ease-out)}.issue-row>a:hover{background:var(--bg-raise)}.issue-num{color:var(--fg-dim);font-family:var(--mono);font-size:12px}.issue-main{min-width:0;display:flex;flex-direction:column;gap:3px}.issue-title{color:var(--fg);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:var(--s2)}.issue-row.st-closed .issue-title{color:var(--fg-dim)}.issue-closed{font-family:var(--mono);font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-dim);border:1px solid var(--line);border-radius:4px;padding:1px 5px}.issue-tags{display:flex;gap:var(--s3);flex-wrap:wrap}.issue-sig{display:flex;align-items:center;gap:var(--s3);font-family:var(--mono);font-size:11px;color:var(--fg-dim);justify-content:flex-end}.issue-sig .sig{white-space:nowrap}.sig.sev{display:inline-flex;align-items:center;gap:5px}.sig.sev:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--fg-dim)}.sev-low:before{background:var(--fg-dim)}.sev-medium:before{background:var(--accent)}.sev-high:before{background:#e0913a}.sev-critical:before{background:#f2555a}.issue-when{color:var(--fg-dim);font-family:var(--mono);font-size:11px;text-align:right}.board-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s5);margin:var(--s5) 0 var(--s4)}.board-title-row{display:flex;align-items:baseline;gap:var(--s2)}.board-title-row h2{font-size:18px;font-weight:600;letter-spacing:-.02em}.board-title-row .count{color:var(--fg-dim);font-family:var(--mono);font-size:11px}.board-help{margin-top:2px;color:var(--fg-dim);font-size:12px}.board-filter-field{display:flex;align-items:center;gap:var(--s2);color:var(--fg-dim);font-size:11px}.board-filter{min-width:148px}.board-error{margin-bottom:var(--s3)}.kanban{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:start;gap:var(--s3);padding:0 0 var(--s3)}.kanban-column{min-width:0;align-self:start;padding:var(--s2);border:1px solid var(--line);border-radius:8px;background:color-mix(in srgb,var(--bg-raise) 76%,var(--bg));scroll-snap-align:start}.kanban-column-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s3);padding:var(--s1) var(--s2) var(--s3)}.kanban-column-head h3{color:var(--fg-mid);font-size:12px;font-weight:500}.kanban-column-head-actions{display:flex;align-items:center;gap:var(--s2)}.kanban-add-issue{min-height:30px;padding:0 var(--s2);border:1px solid var(--line);border-radius:5px;color:var(--fg-dim);font-size:10.5px;transition:border-color var(--motion-quick) var(--ease-out),color var(--motion-quick) var(--ease-out)}.kanban-add-issue:hover{border-color:var(--line-strong);color:var(--fg)}.kanban-add-issue:active{transform:translateY(1px)}.kanban-column-body{display:flex;flex-direction:column;gap:var(--s2)}.kanban-empty{min-height:72px;display:grid;place-items:center;border:1px dashed var(--line);border-radius:6px;color:var(--fg-dim);font-size:12px;text-align:center}.kanban-card{display:flex;min-width:0;flex-direction:column;gap:var(--s2);padding:var(--s3) var(--s3) var(--s2);border:1px solid var(--line);border-radius:8px;background:var(--bg);transition:border-color var(--motion-quick) var(--ease-out),transform var(--motion-quick) var(--ease-out)}.kanban-card-topline,.kanban-card-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--s2);color:var(--fg-dim);font-size:10.5px}.kanban-card h4{min-width:0;font-size:13px;font-weight:500;line-height:1.4}.kanban-card h4 a{display:inline;color:var(--fg);text-wrap:pretty}.kanban-card h4 a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.kanban-card-meta{color:var(--fg-dim);font-size:11.5px}.board-kind{font-family:var(--mono);font-size:9.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--fg-dim)}.board-kind-plan{color:var(--accent)}.board-kind-review{color:#b08df8}.board-kind-issue{color:#e0913a}.board-kind-work{color:var(--fg-mid)}.board-severity{display:inline-flex;align-items:center;gap:5px}.board-severity:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--fg-dim)}.board-severity.sev-medium:before{background:var(--accent)}.board-severity.sev-high:before{background:#e0913a}.board-severity.sev-critical:before{background:#f2555a}.kanban-tags{display:flex;min-width:0;gap:var(--s2);overflow:hidden}.kanban-relations{display:flex;min-width:0;align-items:baseline;gap:var(--s2);color:var(--fg-dim);font-size:10.5px}.kanban-relations>span{flex:none}.kanban-relations a{min-width:0;color:var(--fg-mid);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card-footer{margin-top:auto;padding-top:var(--s1)}.board-status{min-width:0;height:34px;padding-left:var(--s2);font-size:11px}.work-state{color:var(--fg-mid)}.board-issue-create{display:flex;flex-direction:column;gap:var(--s2);padding:var(--s3);border:1px solid var(--line-strong);border-radius:7px;background:var(--bg)}.board-issue-create label{color:var(--fg-mid);font-size:11px;font-weight:500}.board-issue-create .text-input{width:100%;min-width:0}.board-issue-create-actions{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.board-issue-create-actions .btn{height:36px;padding:0 var(--s3)}.board-issue-create-actions .btn:active{transform:translateY(1px)}.kanban-show-more{display:flex;min-height:40px;width:100%;align-items:center;justify-content:space-between;gap:var(--s2);padding:0 var(--s3);border:1px dashed var(--line);border-radius:6px;color:var(--fg-mid);font-size:11px;text-align:left}.kanban-show-more .num{color:var(--fg-dim);font-size:10px}.kanban-show-more:hover{border-color:var(--line-strong);color:var(--fg)}.kanban-show-more:active{transform:translateY(1px)}.board-limit-note{margin-top:var(--s3);color:var(--fg-dim);font-size:11px}@media(hover:hover)and (pointer:fine){.kanban-card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.kanban-relations a:hover{color:var(--fg)}}@media(prefers-reduced-motion:reduce){.kanban-card{transition:none}.kanban-card:hover{transform:none}}@media(max-width:820px){.kanban{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:minmax(260px,calc(50vw - var(--s5)));overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:thin}}.issue-form,.close-form,.comment-form{display:flex;flex-direction:column;gap:var(--s2);max-width:64ch}.issue-form{margin-bottom:var(--s5)}.issue-body-input{min-height:72px;resize:vertical;padding:var(--s3);background:var(--bg);color:var(--fg);border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;line-height:1.5}.issue-body-input:focus{outline:2px solid var(--accent);outline-offset:2px;border-color:var(--line-strong)}.issue-form .text-input{min-width:0;width:100%}.issue-form-row{display:flex;gap:var(--s2);flex-wrap:wrap}.issue-form-row label{display:flex;flex-direction:column;gap:4px;font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--fg-dim)}.issue-form .row,.close-form .row,.comment-form .row{display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}.close-form{margin-top:var(--s3)}.close-form .text-input{min-width:0;flex:1 1 180px}.issue-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s4);flex-wrap:wrap;margin-bottom:var(--s4)}.issue-head h1{font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--fg);display:flex;gap:var(--s3);align-items:baseline;min-width:0}.issue-head h1 .issue-num{font-size:16px}.issue-actions{display:flex;gap:var(--s2);align-items:center;flex-wrap:wrap}.issue-body{word-wrap:break-word;color:var(--fg-mid);font-size:14px;line-height:1.7;margin:var(--s3) 0 var(--s6)}.issue-body.empty{color:var(--fg-dim);font-style:italic}.istatus{display:inline-flex;align-items:center;gap:6px;text-transform:capitalize}.istatus:before{content:"";width:7px;height:7px;border-radius:50%}.is-open:before{background:var(--accent)}.is-closed:before{background:var(--fg-dim)}.meta-rail .mr-list{display:flex;flex-direction:column;gap:var(--s4)}.mr-closed{display:flex;flex-direction:column;gap:2px}.mr-closed .mono,.mr-closed a{font-family:var(--mono);font-size:12px}.mr-v>.mr-tags{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s3)}.comments{margin-top:var(--s6);border-top:1px solid var(--line);padding-top:var(--s5)}.comment-list{list-style:none;display:flex;flex-direction:column;gap:var(--s3);margin-bottom:var(--s5)}.comment{border:1px solid var(--line);border-radius:8px;padding:var(--s3) var(--s4)}.comment-meta{display:flex;align-items:baseline;gap:var(--s3);margin-bottom:6px}.comment-author{color:var(--fg);font-size:12px;font-weight:500;text-transform:capitalize}.comment-meta .num{color:var(--fg-dim);font-family:var(--mono);font-size:11px}.comment-body{word-wrap:break-word;color:var(--fg-mid);font-size:13.5px;line-height:1.6}.markdown>:first-child{margin-top:0}.markdown>:last-child{margin-bottom:0}.markdown p,.markdown ul,.markdown ol,.markdown blockquote,.markdown pre{margin:0 0 var(--s3)}.markdown ul,.markdown ol{padding-left:var(--s5)}.markdown h3{color:var(--fg);font-size:14px;margin:var(--s4) 0 var(--s2)}.markdown a{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.markdown code{font-family:var(--mono);font-size:.92em;color:var(--fg)}.markdown pre{overflow-x:auto;padding:var(--s3);border:1px solid var(--line);border-radius:6px;background:var(--bg-code);white-space:pre}.markdown blockquote{padding-left:var(--s3);border-left:2px solid var(--line-strong);color:var(--fg-dim)}@media(max-width:640px){.board-heading{align-items:stretch;flex-direction:column;gap:var(--s3)}.board-filter-field{justify-content:space-between}.board-filter{flex:1;max-width:220px}.kanban{grid-auto-columns:calc(100vw - 56px)}.kanban-column{padding:var(--s2)}.board-filter,.board-status,.board-issue-create .text-input{font-size:16px}.board-status{height:44px}.kanban-add-issue,.kanban-show-more{min-height:44px}.issue-row>a{grid-template-columns:40px minmax(0,1fr);row-gap:6px;padding:var(--s3) 0}.issue-num{grid-row:1;grid-column:1}.issue-main{grid-column:2}.issue-sig{grid-column:2;justify-content:flex-start}.issue-when{display:none}}
