.panel-host{display:flex;flex-direction:column;background:var(--card);border-left:1px solid var(--line);position:sticky;top:var(--shell-h);height:calc(100vh - var(--shell-h));min-height:0}.d-head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--line)}.d-head h2{margin:0;font-size:var(--fs-md);flex:1}.d-close{border:none;background:none;font-size:20px;line-height:1;cursor:pointer;color:var(--text-muted);padding:4px 6px;border-radius:6px}.d-close:hover{background:var(--row-hover);color:var(--ink)}.d-filters{display:flex;gap:6px;flex-wrap:wrap;padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--line)}.d-filter{padding:3px 10px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--card);color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;cursor:pointer}.d-filter:hover{color:var(--ink);background:var(--row-hover)}.d-filter.is-on{background:var(--accent-soft);color:var(--accent-ink);border-color:transparent}.d-list{flex:1;overflow-y:auto;padding:var(--sp-3) var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3)}.d-empty{color:var(--text-muted);font-size:var(--fs-sm);padding:var(--sp-4) 0}.d-thread{border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-3);background:var(--paper)}.d-thread.is-resolved{opacity:.7}.d-thread-head{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2)}.d-section{font-size:var(--fs-xs);font-weight:700;color:var(--accent-ink);background:var(--accent-soft);border:none;padding:2px 8px;border-radius:var(--radius-pill);cursor:pointer}.d-section:hover{filter:brightness(.95)}.d-status{font-size:var(--fs-xs);color:var(--text-muted);margin-left:auto}.d-status.is-resolved{color:var(--ok);font-weight:700}.d-entry{display:grid;grid-template-columns:28px 1fr;gap:var(--sp-2);padding:var(--sp-2) 0}.d-entry+.d-entry{border-top:1px dashed var(--line)}.d-avatar{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;background:var(--warm-soft);color:var(--warm-ink)}.d-avatar.is-owner{background:var(--accent-soft);color:var(--accent-ink)}.d-avatar.is-claude{background:var(--violet-soft);color:var(--violet-ink)}.d-meta{display:flex;align-items:baseline;gap:var(--sp-2);font-size:var(--fs-xs);color:var(--text-muted)}.d-meta b{color:var(--ink);font-size:var(--fs-sm)}.d-badge{font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;padding:1px 6px;border-radius:4px;background:var(--violet-soft);color:var(--violet-ink)}.d-body{font-size:var(--fs-sm)}.d-body p{margin:4px 0}.d-entry-actions{display:flex;gap:6px;margin-top:2px}.d-link{border:none;background:none;padding:0;font-size:var(--fs-xs);color:var(--text-muted);cursor:pointer}.d-link:hover{color:var(--danger);text-decoration:underline}.d-thread-actions{display:flex;gap:6px;margin-top:var(--sp-2);flex-wrap:wrap}.d-compose{display:flex;flex-direction:column;gap:6px;padding:var(--sp-3) 0 0}.d-compose textarea{width:100%;min-height:70px;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-sm);resize:vertical}.d-compose textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.d-compose-row{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.d-compose-row .muted{font-size:var(--fs-xs)}.d-error{font-size:var(--fs-xs);color:var(--danger)}.d-new{padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--line);background:var(--card)}.d-new-label{font-size:var(--fs-xs);font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.d-new select{padding:6px 8px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-xs);max-width:100%}.g-chapter{max-width:var(--prose-w);margin:0 auto}.g-chapter.is-wide{max-width:1040px}.g-chapter-head{margin-bottom:var(--sp-6)}.g-kicker{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:var(--sp-1)}.g-h1{font-size:var(--fs-xxl);line-height:1.15;margin:0 0 var(--sp-3);letter-spacing:-.01em}.g-h2{font-size:var(--fs-xl);line-height:1.2;margin:0;letter-spacing:-.005em}.g-h3{font-size:var(--fs-lg);margin:0 0 var(--sp-2)}.g-lead{font-size:var(--fs-lg);color:var(--ink-soft);margin:0 0 var(--sp-4);line-height:1.5}.g-meta{color:var(--text-muted);font-size:var(--fs-sm);display:flex;gap:var(--sp-3);flex-wrap:wrap}.g-section{margin:var(--sp-7) 0;scroll-margin-top:calc(var(--shell-h) + var(--sp-4))}.g-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-4);padding-bottom:var(--sp-2);border-bottom:1px solid var(--line)}.g-section p{margin:0 0 var(--sp-4)}.g-section ul,.g-section ol{margin:0 0 var(--sp-4);padding-left:1.3em}.g-section li{margin-bottom:var(--sp-1)}.g-section strong{font-weight:700}.g-chip{flex:none;display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--card);color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;cursor:pointer}.g-chip:hover{color:var(--accent-ink);border-color:var(--accent);background:var(--accent-soft)}.g-chip.has-count{color:var(--accent-ink);background:var(--accent-soft);border-color:transparent}.g-tag{font-size:var(--fs-xs);font-weight:700;padding:1px 8px;border-radius:var(--radius-pill);background:var(--paper-2);color:var(--text-muted);white-space:nowrap}.g-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font-size:var(--fs-sm);font-weight:600;cursor:pointer}.g-btn:hover{background:color-mix(in srgb,var(--ink) 8%,var(--card))}.g-btn:disabled{opacity:.45;cursor:default}.g-btn-primary{background:var(--accent);border-color:transparent;color:#fff}.g-btn-primary:hover{background:var(--accent);color:#fff;filter:brightness(1.08)}.g-btn-danger{color:var(--danger);border-color:color-mix(in srgb,var(--danger) 40%,var(--line))}.g-btn-danger:hover{background:var(--danger-soft);color:var(--danger)}.g-btn-sm{padding:4px 10px;font-size:var(--fs-xs)}.g-path{display:inline-block;font-family:var(--mono);font-size:.88em;background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:0 5px}pre.g-code{font-family:var(--mono);font-size:var(--fs-sm);line-height:1.55;background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-sm);padding:var(--sp-3) var(--sp-4);overflow-x:auto;margin:0 0 var(--sp-4)}pre.g-code code{background:none;border:none;padding:0;font-size:inherit}.g-callout{border-radius:var(--radius);padding:var(--sp-4) var(--sp-5);margin:var(--sp-4) 0;border:1px solid var(--line);background:var(--card);border-left-width:5px}.g-callout p:last-child{margin-bottom:0}.g-callout-label{font-size:var(--fs-xs);font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--sp-1)}.g-callout-note{border-left-color:var(--accent)}.g-callout-note .g-callout-label{color:var(--accent-ink)}.g-callout-rule{border-left-color:var(--violet);background:color-mix(in srgb,var(--violet-soft) 45%,var(--card))}.g-callout-rule .g-callout-label{color:var(--violet-ink)}.g-callout-story{border-left-color:var(--warm);background:color-mix(in srgb,var(--warm-soft) 40%,var(--card))}.g-callout-story .g-callout-label{color:var(--warm-ink)}.g-callout-warn{border-left-color:var(--danger);background:color-mix(in srgb,var(--danger-soft) 40%,var(--card))}.g-callout-warn .g-callout-label{color:var(--danger)}.g-callout-tip{border-left-color:var(--ok);background:color-mix(in srgb,var(--ok-soft) 45%,var(--card))}.g-callout-tip .g-callout-label{color:var(--ok)}.g-cards{display:grid;gap:var(--sp-3);margin:var(--sp-4) 0}.g-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}.g-cards-2{grid-template-columns:repeat(2,minmax(0,1fr))}.g-card{position:relative;padding:var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);background:var(--card);border-top:4px solid var(--line-strong)}.g-card.tone-accent{border-top-color:var(--accent)}.g-card.tone-warm{border-top-color:var(--warm)}.g-card.tone-violet{border-top-color:var(--violet)}.g-card.tone-danger{border-top-color:var(--danger)}.g-card.tone-ok{border-top-color:var(--ok)}.g-card-icon{position:absolute;top:10px;right:12px;font-size:var(--fs-sm);font-weight:800;color:var(--text-muted)}.g-card-title{font-weight:700;margin-bottom:var(--sp-1);padding-right:28px}.g-card-body{font-size:var(--fs-sm);color:var(--ink-soft)}.g-card-body p{margin:0 0 var(--sp-2)}.g-card-body p:last-child{margin-bottom:0}.g-reveal{border:1px dashed var(--line-strong);border-radius:var(--radius);padding:var(--sp-4);margin:var(--sp-4) 0;background:color-mix(in srgb,var(--card) 60%,var(--paper))}.g-reveal-prompt{margin-bottom:var(--sp-3);font-weight:600}.g-reveal-body{border-top:1px solid var(--line);padding-top:var(--sp-3)}.g-reveal-body p:last-child{margin-bottom:0}.g-revlist{list-style:none;margin:var(--sp-4) 0;padding:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:var(--card)}.g-revlist li+li{border-top:1px solid var(--line)}.g-revlist-row{width:100%;display:flex;align-items:center;gap:var(--sp-2);padding:12px 14px;border:none;background:none;text-align:left;font:inherit;font-weight:600;color:var(--ink);cursor:pointer}.g-revlist-row:hover{background:var(--row-hover)}.g-revlist-caret{color:var(--text-muted);transition:transform .15s}.g-revlist li.is-open .g-revlist-caret{transform:rotate(90deg)}.g-revlist-title{flex:1}.g-revlist-body{padding:0 14px 14px 36px;color:var(--ink-soft);font-size:var(--fs-sm)}.g-stepper{margin:var(--sp-4) 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);overflow:hidden}.g-stepper-rail{list-style:none;margin:0;padding:var(--sp-3);display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--line);background:var(--paper-2)}.g-stepper-dot{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-pill);border:1px solid transparent;background:none;color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;cursor:pointer;white-space:nowrap}.g-stepper-dot:hover{background:color-mix(in srgb,var(--ink) 6%,var(--paper-2));color:var(--ink)}.g-stepper-num{width:20px;height:20px;border-radius:50%;display:inline-grid;place-items:center;background:var(--line-strong);color:var(--card);font-weight:800}.g-stepper-dot.is-past .g-stepper-num{background:var(--accent)}.g-stepper-dot.is-on{background:var(--card);border-color:var(--line-strong);color:var(--ink)}.g-stepper-dot.is-on .g-stepper-num{background:var(--accent)}.g-stepper-stage{display:grid;grid-template-columns:minmax(0,1fr)}.g-stepper-visual{padding:var(--sp-4);background:var(--paper);border-bottom:1px solid var(--line)}.g-stepper-text{padding:var(--sp-4) var(--sp-5)}.g-stepper-text p{margin:0 0 var(--sp-3)}.g-stepper-controls{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.g-quiz{margin:var(--sp-6) 0;padding:var(--sp-5);border-radius:var(--radius);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}.g-quiz-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:var(--sp-3)}.g-quiz-q{padding:var(--sp-3) 0;border-top:1px solid var(--line)}.g-quiz-text{font-weight:600;margin-bottom:var(--sp-2)}.g-quiz-opts{display:grid;gap:6px}.g-quiz-opt{text-align:left;padding:9px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-sm);cursor:pointer}.g-quiz-opt:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,var(--card));border-color:var(--accent)}.g-quiz-opt:disabled{cursor:default}.g-quiz-opt.is-right{background:var(--ok-soft);border-color:var(--ok);color:var(--ink)}.g-quiz-opt.is-wrong{background:var(--danger-soft);border-color:var(--danger);color:var(--ink)}.g-quiz-opt.is-dim{opacity:.55}.g-quiz-why{margin-top:var(--sp-2);font-size:var(--fs-sm);padding:8px 12px;border-radius:var(--radius-sm)}.g-quiz-why.is-right{background:var(--ok-soft)}.g-quiz-why.is-wrong{background:var(--note-soft)}.g-quiz-result{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px solid var(--line);font-weight:600}.g-sorter,.g-order{margin:var(--sp-4) 0;padding:var(--sp-4);border-radius:var(--radius);background:var(--card);border:1px solid var(--line)}.g-sorter-intro{color:var(--ink-soft);font-size:var(--fs-sm);margin-bottom:var(--sp-3)}.g-sorter-card{padding:var(--sp-4);border-radius:var(--radius-sm);background:var(--paper-2);margin-bottom:var(--sp-3)}.g-sorter-text{font-size:var(--fs-lg);font-weight:600;margin-top:var(--sp-1)}.g-sorter-buckets{display:flex;flex-wrap:wrap;gap:var(--sp-2)}.g-bucket{padding:8px 14px;border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer}.g-bucket:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 10%,var(--card));border-color:var(--accent)}.g-bucket:disabled{cursor:default}.g-bucket.is-right{background:var(--ok-soft);border-color:var(--ok)}.g-bucket.is-wrong{background:var(--danger-soft);border-color:var(--danger)}.g-bucket.is-dim{opacity:.5}.g-sorter-why{margin-top:var(--sp-3);display:flex;gap:var(--sp-3);align-items:flex-start;justify-content:space-between;padding:var(--sp-3);border-radius:var(--radius-sm);font-size:var(--fs-sm)}.g-sorter-why.is-right{background:var(--ok-soft)}.g-sorter-why.is-wrong{background:var(--note-soft)}.g-sorter-why .g-btn{flex:none}.g-sorter-done{display:flex;align-items:center;gap:var(--sp-3)}.g-order-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-4)}.g-order-pool,.g-order-seq{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;min-height:60px}.g-order-seq{counter-reset:step}.g-order-seq li{display:flex;align-items:center;gap:8px}.g-order-seq li:before{counter-increment:step;content:counter(step);width:20px;flex:none;font-size:var(--fs-xs);font-weight:800;color:var(--text-muted);text-align:right}.g-order-seq li.is-right .g-order-item{border-color:var(--ok);background:var(--ok-soft)}.g-order-seq li.is-wrong .g-order-item{border-color:var(--danger);background:var(--danger-soft)}.g-order-item{flex:1;text-align:left;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-sm);cursor:pointer}.g-order-item:hover{background:color-mix(in srgb,var(--accent) 10%,var(--card));border-color:var(--accent)}.g-order-controls{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.g-order-detail{margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line);font-size:var(--fs-sm)}.g-order-detail.is-wrong{color:var(--danger);font-weight:600}.g-order-detail ol{padding-left:1.3em}.g-order-detail li{margin-bottom:var(--sp-2)}.g-tree{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-3);margin:var(--sp-4) 0}.g-tree-pane{padding:var(--sp-3);border-radius:var(--radius);background:var(--paper-2);border:1px solid var(--line);font-family:var(--mono);font-size:var(--fs-sm);overflow-x:auto}.g-tree-row{display:flex;gap:6px;width:100%;text-align:left;padding:3px 6px;border:none;border-radius:5px;background:none;color:var(--ink);font:inherit;cursor:pointer;white-space:pre}.g-tree-row:hover{background:color-mix(in srgb,var(--ink) 7%,var(--paper-2))}.g-tree-row.is-on{background:var(--accent-soft);color:var(--accent-ink);font-weight:700}.g-tree-glyph{color:var(--text-muted);width:12px}.g-tree-name.kind-dir:after{content:"/";color:var(--text-muted)}.g-tree-card{padding:var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:var(--fs-sm)}.g-tree-card-name{display:flex;align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-2);font-size:var(--fs-md)}.g-tree-card p{margin:0 0 var(--sp-2)}.g-term{position:relative;display:inline}.g-term-btn{font:inherit;color:inherit;background:none;border:none;padding:0;cursor:help;border-bottom:2px dotted var(--accent)}.g-term-btn:hover{background:var(--accent-soft)}.g-term-pop{position:absolute;left:0;top:1.6em;z-index:20;width:min(340px,80vw);padding:10px 12px;border-radius:var(--radius-sm);background:var(--ink);color:var(--paper);font-size:var(--fs-sm);line-height:1.45;box-shadow:var(--shadow-lift);font-weight:400}@media (prefers-color-scheme: dark){.g-term-pop{background:var(--card);color:var(--ink);border:1px solid var(--line-strong)}}.g-figure{margin:var(--sp-4) 0}.g-figure-body{border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:var(--sp-3);overflow-x:auto}.g-figure svg{display:block;width:100%;height:auto;max-width:100%}.g-figure figcaption{font-size:var(--fs-sm);color:var(--text-muted);margin-top:var(--sp-2)}.dg-text{font-family:var(--font);font-size:14px;fill:var(--ink)}.dg-text-sm{font-family:var(--font);font-size:12px;fill:var(--text-muted)}.dg-text-b{font-family:var(--font);font-size:14px;font-weight:700;fill:var(--ink)}.dg-text-inv{font-family:var(--font);font-size:12px;font-weight:700;fill:#fff}.dg-box{fill:var(--card);stroke:var(--line-strong);stroke-width:1.5}.dg-box-accent{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.5}.dg-box-warm{fill:var(--warm-soft);stroke:var(--warm);stroke-width:1.5}.dg-box-violet{fill:var(--violet-soft);stroke:var(--violet);stroke-width:1.5}.dg-box-danger{fill:var(--danger-soft);stroke:var(--danger);stroke-width:1.5}.dg-box-ok{fill:var(--ok-soft);stroke:var(--ok);stroke-width:1.5}.dg-fill-ink{fill:var(--ink-soft)}.dg-fill-accent{fill:var(--accent)}.dg-fill-warm{fill:var(--warm)}.dg-fill-violet{fill:var(--violet)}.dg-fill-danger{fill:var(--danger)}.dg-fill-ok{fill:var(--ok)}.dg-line{stroke:var(--line-strong);stroke-width:1.5;fill:none}.dg-arrow{stroke:var(--ink-soft);stroke-width:2;fill:none;marker-end:url(#dg-arrowhead)}.dg-arrow-accent{stroke:var(--accent);stroke-width:2;fill:none;marker-end:url(#dg-arrowhead-accent)}.dg-ground{fill:var(--paper-2)}.dg-band-accent{fill:color-mix(in srgb,var(--accent) 10%,var(--card));stroke:none}.dg-band-warm{fill:color-mix(in srgb,var(--warm) 10%,var(--card));stroke:none}.dg-hit{cursor:pointer}.dg-hit:hover rect,.dg-hit:hover circle{filter:brightness(.96)}.dg-hit.is-on rect{stroke-width:3}.g-layers{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--sp-3);margin:var(--sp-4) 0}.g-layers-svg{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card);padding:var(--sp-2)}.g-layers-svg svg{display:block;width:100%;height:auto}.g-layers-card{padding:var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);border-left:5px solid var(--accent);background:var(--card);font-size:var(--fs-sm);min-height:120px}.g-layers-card h4{margin:0 0 var(--sp-2);font-size:var(--fs-md)}.g-layers-card p{margin:0 0 var(--sp-2)}.mock{border:1px solid var(--line-strong);border-radius:var(--radius);overflow:hidden;background:var(--card);font-size:var(--fs-sm);box-shadow:var(--shadow)}.mock-bar{display:flex;align-items:center;gap:var(--sp-3);padding:8px 12px;border-bottom:1px solid var(--line)}.mock-bar.is-global{background:var(--paper-2)}.mock-bar .mock-brand{font-weight:800}.mock-bar .mock-spacer{flex:1}.mock-dot{width:22px;height:22px;border-radius:50%;background:var(--line-strong);display:inline-grid;place-items:center;font-size:11px;font-weight:800}.mock-dot.is-accent{background:var(--accent);color:#fff}.mock-pill{padding:3px 9px;border-radius:var(--radius-pill);background:var(--paper-2);font-size:var(--fs-xs);font-weight:600}.mock-pill.is-primary{background:var(--accent);color:#fff}.mock-pill.is-warm{background:var(--warm-soft);color:var(--warm-ink)}.mock-body{padding:var(--sp-4)}.mock-strip{display:flex;align-items:center;gap:var(--sp-3);padding:10px 14px;border-radius:var(--radius-sm);background:var(--warm-soft);color:var(--warm-ink);font-weight:600;margin-bottom:var(--sp-3)}.mock-rail{display:flex;gap:6px;align-items:stretch;margin:var(--sp-3) 0}.mock-stage{flex:1;padding:10px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card);cursor:pointer;font:inherit;text-align:left;color:var(--ink)}.mock-stage.is-done{background:var(--ok-soft);border-color:transparent;color:var(--ink-soft)}.mock-stage.is-here{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);font-weight:700}.mock-stage.is-next{color:var(--text-muted)}.mock-stage .mock-stage-k{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.mock-panel{padding:var(--sp-3);border-radius:var(--radius-sm);background:var(--paper-2)}.mock-panel p{margin:0 0 var(--sp-2)}.mock-label{position:absolute}.mock-annot{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--sp-2);margin-top:var(--sp-3)}.mock-annot div{font-size:var(--fs-xs);padding:6px 10px;border-radius:var(--radius-sm);background:var(--card);border:1px solid var(--line)}.mock-annot b{display:block;color:var(--accent-ink)}.g-states{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-2);margin:var(--sp-3) 0}.g-state{padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--card)}.g-state code{display:block;margin-bottom:4px}.g-state small{color:var(--text-muted)}.g-state.is-client{border-left:4px solid var(--warm)}.g-state.is-agency{border-left:4px solid var(--accent)}.g-state.is-none{border-left:4px solid var(--line-strong)}.g-state.is-attn{border-left:4px solid var(--danger)}.g-state.is-done{border-left:4px solid var(--ok)}.g-sheet{margin:var(--sp-4) 0}.g-sheet-q{padding:var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);background:var(--card);margin-bottom:var(--sp-3)}.g-sheet-q label{display:block;font-weight:600;margin-bottom:var(--sp-2)}.g-sheet-q textarea{width:100%;min-height:72px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--paper);color:var(--ink);font:inherit;font-size:var(--fs-sm);resize:vertical}.g-sheet-q textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.g-sheet-model{margin-top:var(--sp-3);padding:var(--sp-3);border-radius:var(--radius-sm);background:var(--accent-soft);color:var(--ink);font-size:var(--fs-sm)}.g-sheet-model .g-kicker{color:var(--accent-ink)}.g-sheet-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap;align-items:center}.g-end{margin-top:var(--sp-7);padding-top:var(--sp-4);border-top:2px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);flex-wrap:wrap}.g-end-check{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:600;cursor:pointer}.g-end-check input{width:18px;height:18px;accent-color:var(--accent)}.g-end-nav{display:flex;gap:var(--sp-2);flex-wrap:wrap}.g-map{list-style:none;margin:var(--sp-4) 0;padding:0;display:grid;gap:var(--sp-2)}.g-map li{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:var(--sp-3);padding:12px 14px;border-radius:var(--radius);border:1px solid var(--line);background:var(--card);cursor:pointer;text-align:left;font:inherit;color:var(--ink)}.g-map li:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--card))}.g-map-num{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent-ink);font-weight:800}.g-map-num.is-done{background:var(--accent);color:#fff}.g-map-title{font-weight:700}.g-map-blurb{font-size:var(--fs-sm);color:var(--text-muted)}.g-map-min{font-size:var(--fs-xs);color:var(--text-muted);white-space:nowrap}.g-gloss-filter{width:100%;max-width:420px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;margin-bottom:var(--sp-4)}.g-gloss-group{margin:var(--sp-5) 0}.g-gloss{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--sp-3)}.g-gloss-item{padding:var(--sp-3) var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:var(--fs-sm)}.g-gloss-item b{display:block;font-size:var(--fs-md);margin-bottom:4px}.g-gloss-item p{margin:0;color:var(--ink-soft)}.g-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm);margin:var(--sp-3) 0 var(--sp-4)}.g-table th,.g-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}.g-table th{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.g-table-wrap{overflow-x:auto}.g-compare{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-3);margin:var(--sp-4) 0}.g-compare>div{padding:var(--sp-4);border-radius:var(--radius);border:1px solid var(--line);background:var(--card);font-size:var(--fs-sm)}.g-compare h4{margin:0 0 var(--sp-2);font-size:var(--fs-md)}.g-compare.is-bad-good>div:first-child{border-top:4px solid var(--danger)}.g-compare.is-bad-good>div:last-child{border-top:4px solid var(--ok)}.g-compare ul{margin:0;padding-left:1.2em}@media (max-width: 820px){.g-cards-3,.g-cards-2,.g-order-cols,.g-tree,.g-layers,.g-compare{grid-template-columns:minmax(0,1fr)}.g-figure svg,.g-layers-svg svg{min-width:560px}.g-h1{font-size:28px}.g-h2{font-size:22px}.g-section{margin:var(--sp-6) 0}.mock-rail{flex-direction:column}}.bw-admin,.bw-banner,.bw-picker,.bw-menu,.bw-dialog,.bw-panel,.bw-permpick,.bw-table-wrap{--bw-accent: var(--brand-accent, #6d5efc);--bw-accent-contrast: #fff;--bw-bg: var(--surface, #fff);--bw-fg: var(--text, #202124);--bw-muted: var(--text-muted, #5f6368);--bw-border: var(--border, #dadce0);--bw-row-hover: var(--row-hover, #f6f7fb);--bw-chip: var(--chip-bg, #eef1ff);--bw-chip-fg: var(--chip-fg, #3b4aa0);--bw-danger: var(--danger, #c5221f);--bw-ok: var(--ok, #137333);--bw-radius: var(--radius, 10px);color:var(--bw-fg);font-family:inherit}.bw-admin{display:flex;flex-direction:column;gap:16px}.bw-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--bw-border)}.bw-tab{padding:8px 14px;border:none;background:none;cursor:pointer;font-size:14px;font-weight:600;color:var(--bw-muted);border-bottom:2px solid transparent}.bw-tab.bw-tab-on{color:var(--bw-fg);border-bottom-color:var(--bw-accent)}.bw-panel{display:flex;flex-direction:column;gap:12px}.bw-panel h3{margin:0;font-size:15px;font-weight:600}.bw-muted{color:var(--bw-muted);font-size:13px}.bw-flash{padding:9px 12px;border-radius:var(--bw-radius);font-size:13px;background:#e6f4ea;border:1px solid #b7dfc3;color:var(--bw-ok)}.bw-flash.bw-flash-err{background:#fce8e6;border-color:#f3b9b3;color:var(--bw-danger)}.bw-btn{padding:6px 12px;border-radius:8px;border:1px solid var(--bw-border);background:var(--bw-bg);color:var(--bw-fg);font-size:13px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}.bw-btn:hover{background:color-mix(in srgb,var(--bw-fg) 9%,var(--bw-bg))}.bw-btn:disabled{opacity:.5;cursor:default}.bw-btn-primary{background:var(--bw-accent);color:var(--bw-accent-contrast);border-color:transparent}.bw-btn-primary:hover{background:var(--bw-accent);filter:brightness(1.08)}.bw-btn-danger{color:var(--bw-danger);border-color:#f3b9b3}.bw-btn-danger:hover{background:#fce8e6}.bw-search,.bw-filter,.bw-picker-input,.bw-input,.bw-select{padding:8px 11px;border-radius:9px;border:1px solid var(--bw-border);background:var(--bw-bg);color:var(--bw-fg);font-size:13px;font-family:inherit}.bw-search:focus,.bw-picker-input:focus,.bw-input:focus,.bw-select:focus{outline:none;border-color:var(--bw-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--bw-accent) 20%,transparent)}.bw-search{min-width:220px}.bw-table-wrap{display:flex;flex-direction:column;gap:10px}.bw-table-toolbar{display:flex;gap:8px;flex-wrap:wrap}.bw-table-scroll{overflow-x:auto}.bw-table{width:100%;border-collapse:collapse;font-size:13.5px}.bw-table thead th{text-align:left;color:var(--bw-muted);font-weight:600;font-size:11.5px;text-transform:uppercase;letter-spacing:.03em;padding:8px 10px;border-bottom:2px solid var(--bw-border);white-space:nowrap}.bw-th-sort{cursor:pointer;-webkit-user-select:none;user-select:none}.bw-th-nosort{cursor:default}.bw-sort-arrow{font-size:10px}.bw-table tbody td{padding:9px 10px;border-bottom:1px solid var(--bw-border);vertical-align:top}.bw-table tbody tr:hover{background:color-mix(in srgb,var(--bw-fg) 7%,transparent)}.bw-empty{text-align:center;color:var(--bw-muted);padding:22px}.bw-pill{display:inline-block;padding:1px 9px;border-radius:11px;font-size:11.5px;font-weight:600;background:#e8eaed;color:#3c4043}.bw-pill.bw-pill-ok{background:#d8f0df;color:var(--bw-ok)}.bw-pill.bw-pill-off{background:#fbdcd9;color:var(--bw-danger)}.bw-lvl{display:inline-block;background:var(--bw-chip);color:var(--bw-chip-fg);border-radius:9px;padding:1px 8px;font-size:12px;font-weight:600}.bw-chip{display:inline-flex;align-items:center;gap:4px;background:var(--bw-row-hover);border:1px solid var(--bw-border);border-radius:13px;padding:2px 6px 2px 10px;font-size:12.5px}.bw-chip button{background:none;border:none;color:var(--bw-danger);cursor:pointer;font-size:15px;line-height:1;padding:0 4px;font-weight:700}.bw-chips{display:flex;flex-wrap:wrap;gap:6px}.bw-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.bw-permpick{border:1px solid var(--bw-border);border-radius:var(--bw-radius);padding:10px;display:flex;flex-direction:column;gap:8px;background:var(--bw-bg)}.bw-permpick-list{max-height:300px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding-right:4px}.bw-perm-group{display:flex;flex-direction:column;gap:1px;margin-bottom:4px}.bw-perm-group-head{display:flex;align-items:center;gap:7px;padding:4px 6px;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--bw-muted);cursor:pointer}.bw-perm-line{display:flex;align-items:center;gap:7px;padding:3px 6px 3px 22px;border-radius:6px;cursor:pointer}.bw-perm-line:hover{background:color-mix(in srgb,var(--bw-fg) 6%,transparent)}.bw-perm-name{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px}.bw-perm-ns{color:var(--bw-muted)}.bw-badge-warn{display:inline-grid;place-items:center;width:14px;height:14px;border-radius:50%;background:#9a6a00;color:#fff;font-size:10px;font-weight:700;cursor:help;margin-left:5px;vertical-align:1px}.bw-permsummary{display:flex;flex-direction:column;gap:3px}.bw-level-row{display:flex;align-items:center;gap:10px;padding:8px 6px;border-bottom:1px solid var(--bw-border);flex-wrap:wrap;font-size:13.5px}.bw-level-detail{padding:10px 6px 14px 30px;border-bottom:1px solid var(--bw-border);display:flex;flex-direction:column;gap:10px}.bw-caret{border:none;background:none;cursor:pointer;color:var(--bw-muted);font-size:12px;padding:2px 4px}.bw-linklike{border:none;background:none;cursor:pointer;color:var(--bw-accent);font-size:12.5px;font-weight:600;padding:0;text-decoration:underline;text-underline-offset:2px}.bw-pillselect{align-items:center}.bw-picker{position:relative;min-width:240px}.bw-picker-input{width:100%}.bw-picker-menu{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;background:var(--bw-bg);border:1px solid var(--bw-border);border-radius:var(--bw-radius);box-shadow:0 12px 32px -12px #0006;max-height:280px;overflow-y:auto}.bw-picker-item{display:flex;flex-direction:column;align-items:flex-start;gap:1px;width:100%;text-align:left;padding:8px 11px;border:none;background:none;cursor:pointer}.bw-picker-item:hover{background:var(--bw-row-hover)}.bw-picker-user{font-size:13.5px;font-weight:600;color:var(--bw-fg)}.bw-picker-meta{font-size:12px;color:var(--bw-muted)}.bw-picker-hint{padding:8px 11px;font-size:12.5px;color:var(--bw-muted)}.bw-picker-fallback{color:var(--bw-accent);font-weight:600}.bw-banner{position:fixed;left:16px;bottom:16px;z-index:9000;display:inline-flex;align-items:center;gap:8px;padding:6px 8px 6px 12px;border-radius:999px;font-size:12.5px;font-weight:700;line-height:1.2;color:#fff;background:#b45309;white-space:nowrap;max-width:calc(100vw - 32px);box-shadow:0 8px 24px -6px #00000080,0 0 0 2px #ffffffb3;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.bw-banner-dragging{cursor:grabbing;box-shadow:0 12px 32px -6px #0009,0 0 0 2px #ffffffe6}.bw-banner-ro{background:#b45309}.bw-banner-act{background:#b91c1c}.bw-banner-icon{font-size:14px;animation:bw-banner-pulse 2.2s ease-in-out infinite}.bw-banner-text{overflow:hidden;text-overflow:ellipsis}.bw-banner-mode{margin-left:7px;padding:1px 6px;border-radius:999px;background:#00000038;font-size:10.5px;letter-spacing:.04em}.bw-banner .bw-btn{padding:3px 9px;font-size:12px;border-radius:999px;background:#ffffff2e;color:#fff;border-color:#ffffff8c;cursor:pointer}.bw-banner .bw-btn:hover{background:#ffffff52}@keyframes bw-banner-pulse{0%,to{opacity:1}50%{opacity:.45}}@media (prefers-reduced-motion: reduce){.bw-banner-icon{animation:none}}.bw-menu{position:relative;display:inline-block}.bw-menu-btn{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--bw-border);background:var(--bw-bg);color:var(--bw-fg);cursor:pointer;font-size:13px;font-weight:600}.bw-menu-avatar{width:24px;height:24px;border-radius:50%;background:var(--bw-accent);color:var(--bw-accent-contrast);display:grid;place-items:center;font-size:12px}.bw-menu-pop{position:absolute;right:0;top:calc(100% + 6px);z-index:50;min-width:200px;background:var(--bw-bg);border:1px solid var(--bw-border);border-radius:var(--bw-radius);box-shadow:0 14px 36px -14px #0006;padding:6px}.bw-menu-item{display:block;width:100%;text-align:left;padding:9px 11px;border:none;background:none;cursor:pointer;font-size:13.5px;color:var(--bw-fg);border-radius:7px;text-decoration:none}.bw-menu-item:hover{background:var(--bw-row-hover)}.bw-menu-sep{height:1px;background:var(--bw-border);margin:5px 0}.bw-menu-head{padding:8px 11px}.bw-menu-name{font-size:13.5px;font-weight:600}.bw-menu-sub{font-size:12px;color:var(--bw-muted)}.bw-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9500;background:#0006;display:grid;place-items:center;padding:16px}.bw-dialog{background:var(--bw-bg);color:var(--bw-fg);border-radius:16px;padding:22px;width:min(94vw,420px);box-shadow:0 30px 80px -20px #0009;display:flex;flex-direction:column;gap:12px}.bw-dialog h3{margin:0}.bw-radio{display:flex;gap:8px;align-items:center;font-size:13px}.bw-input{width:100%}:root{--brand-accent: #0f766e;--surface: #ffffff;--text: #1b1f24;--text-muted: #5b6470;--border: #e3e6ec;--row-hover: #f3f5f8;--chip-bg: #e6f4f2;--chip-fg: #0b5d57;--ink: #1b1f24;--ink-soft: #3c434d;--paper: #f7f6f2;--paper-2: #efede6;--card: #ffffff;--line: #e3e6ec;--line-strong: #c9ced8;--accent: #0f766e;--accent-soft: #d9f0ec;--accent-ink: #0b5d57;--warm: #b45309;--warm-soft: #fdebd3;--warm-ink: #8a3f05;--violet: #6d5efc;--violet-soft: #e9e6ff;--violet-ink: #4a3fbf;--danger: #b91c1c;--danger-soft: #fde2e2;--ok: #15803d;--ok-soft: #dcf5e3;--note: #eab308;--note-soft: #fdf6cc;--font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-xs: 12px;--fs-sm: 13.5px;--fs-md: 16px;--fs-lg: 19px;--fs-xl: 26px;--fs-xxl: 36px;--lh: 1.6;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--sp-7: 48px;--sp-8: 72px;--radius: 12px;--radius-sm: 8px;--radius-pill: 999px;--shadow: 0 1px 2px rgba(20, 24, 30, .06), 0 8px 24px rgba(20, 24, 30, .06);--shadow-lift: 0 2px 6px rgba(20, 24, 30, .08), 0 18px 40px rgba(20, 24, 30, .12);--shell-h: 56px;--sidebar-w: 268px;--panel-w: 400px;--prose-w: 720px;color-scheme:light dark;font-family:var(--font);font-size:var(--fs-md);line-height:var(--lh)}@media (prefers-color-scheme: dark){:root{--surface: #1c1f24;--text: #e8eaee;--text-muted: #a3a9b4;--border: #2f343c;--row-hover: #242830;--chip-bg: #173a37;--chip-fg: #9fe3d9;--ink: #e8eaee;--ink-soft: #c2c7d0;--paper: #14161a;--paper-2: #1c1f24;--card: #1f2329;--line: #2f343c;--line-strong: #454b56;--accent: #2dd4bf;--accent-soft: #143d39;--accent-ink: #9fe3d9;--warm: #f59e0b;--warm-soft: #3f2a0c;--warm-ink: #fcd28a;--violet: #a89cff;--violet-soft: #2a2749;--violet-ink: #cbc4ff;--danger: #f87171;--danger-soft: #3f1c1c;--ok: #4ade80;--ok-soft: #14351f;--note: #facc15;--note-soft: #3b3410;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lift: 0 2px 6px rgba(0, 0, 0, .5), 0 18px 40px rgba(0, 0, 0, .5)}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}a{color:var(--accent-ink)}code{font-family:var(--mono);font-size:.9em;background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:0 4px}button{font-family:inherit}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 45%,transparent);outline-offset:2px}.app-splash{min-height:60vh;display:grid;place-items:center;color:var(--text-muted);font-size:var(--fs-sm)}.shell{display:grid;grid-template-rows:var(--shell-h) 1fr;min-height:100vh}.topbar{position:sticky;top:0;z-index:30;height:var(--shell-h);display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-4);background:var(--card);border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:var(--sp-2);font-weight:800;font-size:var(--fs-md);letter-spacing:.01em;color:var(--ink);border:none;background:none;padding:0;cursor:pointer}.brand-mark{width:26px;height:26px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--violet));display:inline-grid;place-items:center;color:#fff;font-size:13px;font-weight:900}.topbar-locator{color:var(--text-muted);font-size:var(--fs-sm);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:var(--sp-2)}.icon-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-pill);border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:var(--fs-sm);font-weight:600;cursor:pointer}.icon-btn:hover{background:color-mix(in srgb,var(--ink) 8%,var(--card))}.icon-btn.is-on{background:var(--accent-soft);border-color:transparent;color:var(--accent-ink)}.icon-btn.is-on:hover{background:color-mix(in srgb,var(--accent-ink) 12%,var(--accent-soft))}.icon-btn .count{min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:var(--fs-xs);font-weight:700;display:inline-grid;place-items:center}.frame{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);min-height:calc(100vh - var(--shell-h))}.frame.has-panel{grid-template-columns:var(--sidebar-w) minmax(0,1fr) var(--panel-w)}.content{padding:var(--sp-6) var(--sp-5) var(--sp-8);min-width:0}.sidebar{position:sticky;top:var(--shell-h);align-self:start;height:calc(100vh - var(--shell-h));overflow-y:auto;padding:var(--sp-4) var(--sp-3);border-right:1px solid var(--line);background:var(--card)}.sidebar-title{font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin:var(--sp-2) var(--sp-2) var(--sp-2)}.progress{margin:0 var(--sp-2) var(--sp-4)}.progress-bar{height:6px;border-radius:var(--radius-pill);background:var(--paper-2);overflow:hidden}.progress-fill{height:100%;background:var(--accent);border-radius:var(--radius-pill);width:var(--pct, 0%);transition:width .3s ease}.progress-label{font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--sp-1)}.nav-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.nav-item{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:var(--sp-2);width:100%;text-align:left;padding:8px 10px;border-radius:var(--radius-sm);border:none;background:none;color:var(--ink-soft);font-size:var(--fs-sm);cursor:pointer}.nav-item:hover{background:color-mix(in srgb,var(--ink) 6%,var(--card));color:var(--ink)}.nav-item.is-active{background:var(--accent-soft);color:var(--accent-ink);font-weight:600}.nav-item.is-active:hover{background:color-mix(in srgb,var(--accent-ink) 10%,var(--accent-soft))}.nav-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--line-strong);display:inline-grid;place-items:center;font-size:10px;font-weight:800;color:var(--text-muted)}.nav-item.is-active .nav-dot{border-color:var(--accent);color:var(--accent-ink)}.nav-dot.is-done{background:var(--accent);border-color:var(--accent);color:#fff}.nav-badge{font-size:var(--fs-xs);color:var(--text-muted);background:var(--paper-2);border-radius:var(--radius-pill);padding:1px 7px}.nav-sep{height:1px;background:var(--line);margin:var(--sp-3) var(--sp-2)}.mobile-nav{display:none;gap:var(--sp-2);align-items:center;margin-bottom:var(--sp-4)}.mobile-nav select{flex:1;padding:8px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--ink);font:inherit;font-size:var(--fs-sm)}.muted{color:var(--text-muted)}.no-access{max-width:520px;margin:12vh auto;padding:var(--sp-6);background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.no-access h1{margin:0 0 var(--sp-3);font-size:var(--fs-xl)}.footer{margin-top:var(--sp-8);padding-top:var(--sp-4);border-top:1px solid var(--line);color:var(--text-muted);font-size:var(--fs-xs);display:flex;gap:var(--sp-4);flex-wrap:wrap}@media (max-width: 1100px){.frame.has-panel{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.panel-host{position:fixed;inset:var(--shell-h) 0 0 auto;width:min(var(--panel-w),100vw);z-index:25;box-shadow:var(--shadow-lift)}}@media (max-width: 820px){.frame,.frame.has-panel{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.mobile-nav{display:flex}.content{padding:var(--sp-4) var(--sp-4) var(--sp-7)}.topbar-locator{display:none}.panel-host{width:100vw}}
