@font-face{font-family:Commit Mono;font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/commit-mono-400-normal.woff2)format("woff2")}@font-face{font-family:Commit Mono;font-weight:400;font-style:italic;font-display:swap;src:url(/fonts/commit-mono-400-italic.woff2)format("woff2")}@font-face{font-family:Commit Mono;font-weight:700;font-style:normal;font-display:swap;src:url(/fonts/commit-mono-700-normal.woff2)format("woff2")}@font-face{font-family:Commit Mono;font-weight:700;font-style:italic;font-display:swap;src:url(/fonts/commit-mono-700-italic.woff2)format("woff2")}:root{--gray-10:#fafbfc;--gray-20:#edeff2;--gray-30:#dee1e7;--gray-40:#c6cad1;--gray-50:#a2a8b2;--gray-60:#6b7280;--gray-70:#464c56;--gray-80:#31353d;--gray-90:#1e2128;--gray-95:#16181d;--gray-100:#0c0d10;--hue-cta:#ff6b00;--hue-cta-lift:#ff8534;--hue-cta-deep:#d25400;--hue-cta-deepest:#b44700;--hue-sec:#334155;--hue-info:#2f6feb;--hue-info-deep:#1d4fb8;--hue-success:#1e9e5a;--hue-success-deep:#157a45;--hue-warn:#e0a400;--hue-warn-deep:#a87700;--hue-danger:#e23d3d;--hue-danger-deep:#c22a2a;--app-sidebar-w:300px;--app-header-h:48px;--app-statusbar-h:34px;--app-pane-px:2.25rem;--app-measure:46rem;--app-radius:4px;--app-modal-w:30rem;--app-panel-w-normal:min(420px, 100%);--app-panel-w-wide:min(720px, 100%);--border-thin:1px;--border-medium:2px;--border-thick:3px;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--content-gap:var(--space-5);--font-header:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-body:"Helvetica Neue", Helvetica, Arial, sans-serif;--font-alt:"Commit Mono", ui-monospace, monospace;--fs-header-xs:1rem;--fs-header-s:1.25rem;--fs-header-m:1.5rem;--fs-header-l:2rem;--fs-header-xl:2.5rem;--fs-header-xxl:3.25rem;--fs-body-xs:.75rem;--fs-body-s:.875rem;--fs-body-m:1rem;--fs-body-l:1.125rem;--fs-body-xl:1.25rem;--fs-body-xxl:1.5rem;--fs-alt-xs:.7rem;--fs-alt-s:.8rem;--fs-alt-m:.9rem;--fs-alt-l:1.05rem;--fs-alt-xl:1.2rem;--fs-alt-xxl:1.4rem;--line-display:1.08;--line-title:1.15;--line-tight:1.25;--line-default:1.45;--line-body:1.6}:root[data-theme=dark]{--c-canvas:var(--gray-100);--c-canvas-ink:var(--gray-40);--c-panel:var(--gray-95);--c-panel-ink:var(--gray-40);--c-panel-2:var(--gray-90);--c-panel-2-ink:var(--gray-10);--c-panel-3:var(--gray-80);--c-panel-3-ink:var(--gray-10);--c-border:var(--gray-80);--c-ink:#fff;--c-ink-soft:var(--gray-40);--c-ink-mute:var(--gray-60);--c-cta:var(--hue-cta);--c-cta-alt:var(--hue-cta-lift);--c-cta-opposite:var(--gray-10);--c-cta-wash:color-mix(in oklab, var(--hue-cta) 20%, var(--c-canvas));--grad-cta:linear-gradient(135deg, var(--c-cta), var(--c-cta-alt));--c-sec:var(--hue-sec);--c-sec-alt:color-mix(in oklab, var(--hue-sec) 80%, var(--gray-10));--c-sec-opposite:var(--gray-10);--c-sec-wash:color-mix(in oklab, var(--hue-sec) 20%, var(--c-canvas));--grad-sec:linear-gradient(135deg, var(--c-sec), var(--c-sec-alt));--c-info:var(--hue-info);--c-info-alt:color-mix(in oklab, var(--hue-info) 82%, var(--gray-10));--c-info-opposite:var(--gray-10);--c-info-wash:color-mix(in oklab, var(--hue-info) 20%, var(--c-canvas));--grad-info:linear-gradient(135deg, var(--c-info), var(--c-info-alt));--c-success:var(--hue-success);--c-success-alt:color-mix(in oklab, var(--hue-success) 82%, var(--gray-10));--c-success-opposite:var(--gray-10);--c-success-wash:color-mix(in oklab, var(--hue-success) 20%, var(--c-canvas));--grad-success:linear-gradient(135deg, var(--c-success), var(--c-success-alt));--c-warn:var(--hue-warn);--c-warn-alt:color-mix(in oklab, var(--hue-warn) 82%, var(--gray-10));--c-warn-opposite:var(--gray-100);--c-warn-wash:color-mix(in oklab, var(--hue-warn) 20%, var(--c-canvas));--grad-warn:linear-gradient(135deg, var(--c-warn), var(--c-warn-alt));--c-danger:var(--hue-danger);--c-danger-alt:color-mix(in oklab, var(--hue-danger) 82%, var(--gray-10));--c-danger-opposite:var(--gray-10);--c-danger-wash:color-mix(in oklab, var(--hue-danger) 20%, var(--c-canvas));--grad-danger:linear-gradient(135deg, var(--c-danger), var(--c-danger-alt));--c-scrim:#0000008c;--elev-card:0 1px 3px #0006;--elev-raised:0 4px 12px #00000073;--elev-elevated:0 8px 32px #0000008c}:root[data-theme=light]{--c-canvas:#fbfbf9;--c-canvas-ink:#3b4048;--c-panel:#f4f5f2;--c-panel-ink:#3b4048;--c-panel-2:#eaebe3;--c-panel-2-ink:#14161a;--c-panel-3:#e0e1d8;--c-panel-3-ink:#14161a;--c-border:#d4d5cb;--c-ink:#14161a;--c-ink-soft:#3b4048;--c-ink-mute:#8a9099;--c-cta:var(--hue-cta-deep);--c-cta-alt:var(--hue-cta-deepest);--c-cta-opposite:var(--gray-10);--c-cta-wash:color-mix(in oklab, var(--hue-cta) 16%, var(--c-canvas));--grad-cta:linear-gradient(135deg, var(--c-cta), var(--c-cta-alt));--c-sec:var(--hue-sec);--c-sec-alt:color-mix(in oklab, var(--hue-sec) 82%, var(--gray-100));--c-sec-opposite:var(--gray-10);--c-sec-wash:color-mix(in oklab, var(--hue-sec) 16%, var(--c-canvas));--grad-sec:linear-gradient(135deg, var(--c-sec), var(--c-sec-alt));--c-info:var(--hue-info-deep);--c-info-alt:color-mix(in oklab, var(--hue-info-deep) 85%, var(--gray-100));--c-info-opposite:var(--gray-10);--c-info-wash:color-mix(in oklab, var(--hue-info) 16%, var(--c-canvas));--grad-info:linear-gradient(135deg, var(--c-info), var(--c-info-alt));--c-success:var(--hue-success-deep);--c-success-alt:color-mix(in oklab, var(--hue-success-deep) 85%, var(--gray-100));--c-success-opposite:var(--gray-10);--c-success-wash:color-mix(in oklab, var(--hue-success) 16%, var(--c-canvas));--grad-success:linear-gradient(135deg, var(--c-success), var(--c-success-alt));--c-warn:var(--hue-warn-deep);--c-warn-alt:color-mix(in oklab, var(--hue-warn-deep) 85%, var(--gray-100));--c-warn-opposite:var(--gray-10);--c-warn-wash:color-mix(in oklab, var(--hue-warn) 16%, var(--c-canvas));--grad-warn:linear-gradient(135deg, var(--c-warn), var(--c-warn-alt));--c-danger:var(--hue-danger-deep);--c-danger-alt:color-mix(in oklab, var(--hue-danger-deep) 85%, var(--gray-100));--c-danger-opposite:var(--gray-10);--c-danger-wash:color-mix(in oklab, var(--hue-danger) 16%, var(--c-canvas));--grad-danger:linear-gradient(135deg, var(--c-danger), var(--c-danger-alt));--c-scrim:#14161a73;--elev-card:0 1px 3px #14161a1a;--elev-raised:0 4px 12px #14161a24;--elev-elevated:0 8px 32px #14161a33}body{background:var(--c-canvas);color:var(--c-ink);font-family:var(--font-body);font-size:var(--fs-body-m);line-height:var(--line-body);margin:0}::selection{background:var(--c-cta);color:var(--c-cta-opposite)}:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:2px}:root{--motion-stagger:40ms;--motion-beat:80ms;--motion-exit:.15s;--motion-enter:.25s;--motion-exit-far:.35s;--motion-enter-far:.4s;--motion-emphasis:.5s;--ease-surface:cubic-bezier(.22, 1, .36, 1);--ease-swap:ease-in-out;--ease-hint:ease-out;--ease-loop:linear;--ease-pop:cubic-bezier(.34, 1.36, .64, 1);--ease-settle:cubic-bezier(.34, 3.85, .64, 1);--motion-rise-tight:4px;--motion-rise:8px;--motion-rise-loose:12px;--motion-rise-far:30px;--motion-scale-modal:.96;--motion-scale-menu:.97;--motion-scale-hint:.98;--motion-blur:2px;--motion-blur-emphasis:8px}@media (prefers-reduced-motion:reduce){:root{--motion-stagger:0s;--motion-beat:0s;--motion-exit:.01ms;--motion-enter:.01ms;--motion-exit-far:.01ms;--motion-enter-far:.01ms;--motion-emphasis:.01ms;--motion-rise-tight:0;--motion-rise:0;--motion-rise-loose:0;--motion-rise-far:0;--motion-scale-modal:1;--motion-scale-menu:1;--motion-scale-hint:1;--motion-blur:0;--motion-blur-emphasis:0}}
.bg-canvas{background:var(--c-canvas);color:var(--c-canvas-ink)}.bg-panel{background:var(--c-panel);color:var(--c-panel-ink)}.bg-panel-2{background:var(--c-panel-2);color:var(--c-panel-2-ink)}.bg-panel-3{background:var(--c-panel-3);color:var(--c-panel-3-ink)}.bg-cta{background:var(--c-cta);color:var(--c-cta-opposite)}.bg-cta-alt{background:var(--c-cta-alt);color:var(--c-cta-opposite)}.bg-cta-wash{background:var(--c-cta-wash);color:var(--c-ink)}.bg-cta-gradient{background:var(--grad-cta);color:var(--c-cta-opposite)}.bg-sec{background:var(--c-sec);color:var(--c-sec-opposite)}.bg-sec-alt{background:var(--c-sec-alt);color:var(--c-sec-opposite)}.bg-sec-wash{background:var(--c-sec-wash);color:var(--c-ink)}.bg-sec-gradient{background:var(--grad-sec);color:var(--c-sec-opposite)}.bg-info{background:var(--c-info);color:var(--c-info-opposite)}.bg-info-alt{background:var(--c-info-alt);color:var(--c-info-opposite)}.bg-info-wash{background:var(--c-info-wash);color:var(--c-ink)}.bg-info-gradient{background:var(--grad-info);color:var(--c-info-opposite)}.bg-success{background:var(--c-success);color:var(--c-success-opposite)}.bg-success-alt{background:var(--c-success-alt);color:var(--c-success-opposite)}.bg-success-wash{background:var(--c-success-wash);color:var(--c-ink)}.bg-success-gradient{background:var(--grad-success);color:var(--c-success-opposite)}.bg-warn{background:var(--c-warn);color:var(--c-warn-opposite)}.bg-warn-alt{background:var(--c-warn-alt);color:var(--c-warn-opposite)}.bg-warn-wash{background:var(--c-warn-wash);color:var(--c-ink)}.bg-warn-gradient{background:var(--grad-warn);color:var(--c-warn-opposite)}.bg-danger{background:var(--c-danger);color:var(--c-danger-opposite)}.bg-danger-alt{background:var(--c-danger-alt);color:var(--c-danger-opposite)}.bg-danger-wash{background:var(--c-danger-wash);color:var(--c-ink)}.bg-danger-gradient{background:var(--grad-danger);color:var(--c-danger-opposite)}.ink{color:var(--c-ink)}.ink-soft{color:var(--c-ink-soft)}.ink-mute{color:var(--c-ink-mute)}.ink-cta{color:var(--c-cta)}.ink-cta-alt{color:var(--c-cta-alt)}.ink-sec{color:var(--c-sec)}.ink-sec-alt{color:var(--c-sec-alt)}.ink-info{color:var(--c-info)}.ink-info-alt{color:var(--c-info-alt)}.ink-success{color:var(--c-success)}.ink-success-alt{color:var(--c-success-alt)}.ink-warn{color:var(--c-warn)}.ink-warn-alt{color:var(--c-warn-alt)}.ink-danger{color:var(--c-danger)}.ink-danger-alt{color:var(--c-danger-alt)}:root{--fs-xs:var(--fs-body-xs);--fs-s:var(--fs-body-s);--fs-m:var(--fs-body-m);--fs-l:var(--fs-body-l);--fs-xl:var(--fs-body-xl);--fs-xxl:var(--fs-body-xxl)}.font-header{font-family:var(--font-header);--fs-xs:var(--fs-header-xs);--fs-s:var(--fs-header-s);--fs-m:var(--fs-header-m);--fs-l:var(--fs-header-l);--fs-xl:var(--fs-header-xl);--fs-xxl:var(--fs-header-xxl);font-size:var(--fs-m)}.font-body{font-family:var(--font-body);--fs-xs:var(--fs-body-xs);--fs-s:var(--fs-body-s);--fs-m:var(--fs-body-m);--fs-l:var(--fs-body-l);--fs-xl:var(--fs-body-xl);--fs-xxl:var(--fs-body-xxl);font-size:var(--fs-m)}.font-alt{font-family:var(--font-alt);--fs-xs:var(--fs-alt-xs);--fs-s:var(--fs-alt-s);--fs-m:var(--fs-alt-m);--fs-l:var(--fs-alt-l);--fs-xl:var(--fs-alt-xl);--fs-xxl:var(--fs-alt-xxl);font-size:var(--fs-m);font-variant-numeric:tabular-nums}.text-xs{font-size:var(--fs-xs)}.text-s{font-size:var(--fs-s)}.text-l{font-size:var(--fs-l)}.text-xl{font-size:var(--fs-xl)}.text-xxl{font-size:var(--fs-xxl)}.elev-card{box-shadow:var(--elev-card)}.elev-raised{box-shadow:var(--elev-raised)}.elev-elevated{box-shadow:var(--elev-elevated)}.hairline-top{border-top:var(--border-thin) solid var(--c-border)}.hairline-right{border-right:var(--border-thin) solid var(--c-border)}.hairline-bottom{border-bottom:var(--border-thin) solid var(--c-border)}.hairline-left{border-left:var(--border-thin) solid var(--c-border)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}
html,body{height:100%}body{background:var(--c-canvas);color:var(--c-ink-soft);font-family:var(--font-body);line-height:var(--line-default);margin:0;overflow:hidden}.app-shell,.app-shell *,.app-shell :before,.app-shell :after,.app-panel-layer,.app-panel-layer *,.app-panel-layer :before,.app-panel-layer :after{box-sizing:border-box}.app-shell{grid-template-columns:var(--app-sidebar-w) minmax(0, 1fr);background:var(--c-canvas);grid-template-rows:minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.app-sidebar{background:var(--c-panel);min-height:0;color:var(--c-panel-ink);border-right:var(--border-thin) solid var(--c-border);flex-direction:column;display:flex;overflow:hidden}.app-sidebar__head{align-items:center;gap:var(--space-2);height:var(--app-header-h);background:var(--c-panel);border-bottom:var(--border-thin) solid var(--c-border);flex:none;padding:0 .8rem;display:flex}.app-sidebar__title{color:var(--c-ink);font-family:var(--font-body);white-space:nowrap;font-size:.8rem;font-weight:700;overflow:hidden}.app-tree{overscroll-behavior:contain;flex:auto;min-height:0;padding:.4rem .35rem 2.5rem;font-size:.8rem;line-height:1.5;overflow:hidden auto}.app-tree__item,.app-tree__summary{align-items:center;gap:var(--space-2);border-radius:var(--app-radius);color:var(--c-ink-soft);font-family:var(--font-body);white-space:nowrap;padding:.34rem .55rem;text-decoration:none;display:flex;overflow:hidden}.app-tree__item{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.6rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 1.6rem),#0000)}.app-tree__item:hover,.app-tree__summary:hover{background:var(--c-panel-2);color:var(--c-ink)}.app-tree__item.is-active{background:var(--c-panel-2);color:var(--c-ink);font-weight:700}.app-tree__icon{text-align:center;width:1.1rem;color:var(--c-ink-mute);flex:none}.app-tree__item:hover .app-tree__icon,.app-tree__item.is-active .app-tree__icon,.app-tree__summary:hover .app-tree__icon{color:var(--c-ink)}.app-tree__group{margin-top:.1rem}.app-tree__summary{cursor:pointer;color:var(--c-ink);font-weight:600;list-style:none}.app-tree__summary::-webkit-details-marker{display:none}.app-tree__grouplink{color:inherit;text-overflow:ellipsis;flex:auto;text-decoration:none;overflow:hidden}.app-tree__summary:hover .app-tree__grouplink{color:var(--c-ink)}.app-tree__chevron{text-align:center;width:.9rem;color:var(--c-ink-mute);transition:transform var(--motion-exit) var(--ease-surface);flex:none;margin-left:auto;font-size:.7rem}.app-tree__group[open]>.app-tree__summary .app-tree__chevron{transform:rotate(90deg)}.app-tree__summary:hover .app-tree__chevron{color:var(--c-ink)}.app-tree__list{margin:0;padding:0;list-style:none}.app-tree__list .app-tree__item{padding-left:1.8rem}.app-main{grid-template-rows:var(--app-header-h) minmax(0, 1fr) var(--app-statusbar-h);min-width:0;height:100%;min-height:0;display:grid}.app-topbar{--btn-fs:var(--fs-s);padding:0 var(--app-pane-px);height:var(--app-header-h);background:var(--c-panel);color:var(--c-panel-ink);border-bottom:var(--border-thin) solid var(--c-border);z-index:72;align-items:center;gap:.4rem;display:flex;position:relative;overflow:hidden}.app-topbar__title{min-width:0;color:var(--c-ink);font-family:var(--font-body);font-size:.78rem;font-weight:600;line-height:var(--app-header-h);white-space:nowrap;flex:1 1 0;margin:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 1.4rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 1.4rem),#0000)}.app-topbar__right{flex:none;align-items:center;gap:.3rem;display:flex}.app-topbar__left{display:none}.app-topbar .saved-indicator{font-size:var(--fs-xs)}.app-topbar__crumbs{align-items:center;gap:.4rem;min-width:0;display:inline-flex}.app-topbar__crumb{color:var(--c-ink-soft);text-decoration:none}.app-topbar__crumb:hover{color:var(--c-ink)}.app-topbar__crumb.is-current{color:var(--c-ink);pointer-events:none}.app-topbar__crumb-sep{color:var(--c-ink-mute)}.app-iconbtn{border:var(--border-thin) solid transparent;border-radius:var(--app-radius);width:26px;height:24px;color:var(--c-ink-soft);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;font-size:.95rem;line-height:1;text-decoration:none;display:inline-flex}.app-iconbtn:hover,.app-iconbtn[aria-pressed=true]{background:var(--c-panel-2);color:var(--c-ink)}.app-iconbtn[aria-disabled=true]{opacity:.3;pointer-events:none}.app-menu-toggle,.app-menu-close{display:none}.app-pane{overscroll-behavior:contain;min-height:0;padding:var(--app-pane-px) var(--app-pane-px) 5rem;background:var(--c-canvas);color:var(--c-canvas-ink);overflow:hidden auto}.app-pane>*+*{margin-top:var(--content-gap)}.app-statusbar{height:var(--app-statusbar-h);background:var(--c-panel);border-top:var(--border-thin) solid var(--c-border);color:var(--c-ink-mute);z-index:72;align-items:center;gap:1.1rem;padding:0 .9rem;font-size:.72rem;display:flex;position:relative}.app-statusbar__version{font-family:var(--font-alt);font-variant-numeric:tabular-nums;flex:none}.app-statusbar__mid{flex:auto;align-items:center;gap:1.1rem;min-width:0;display:flex;overflow:hidden}.app-statusbar__right{flex:none;align-items:center;gap:.5rem;display:flex}.app-statusbar__item{color:var(--c-ink-mute);font-family:var(--font-alt);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.app-panel-layer{top:var(--app-header-h);right:0;bottom:var(--app-statusbar-h);left:var(--app-sidebar-w);z-index:70;position:fixed;overflow:hidden}.app-panel-scrim{z-index:0;background:var(--c-scrim);position:absolute;inset:0}.app-panel{z-index:1;width:var(--app-panel-w-normal);background:var(--c-panel);max-width:100%;color:var(--c-panel-ink);border-left:var(--border-thin) solid var(--c-border);box-shadow:var(--elev-elevated);transition:transform var(--motion-enter) var(--ease-surface);flex-direction:column;display:flex;position:absolute;top:0;bottom:0;right:0;transform:translate(0)}.app-panel--wide{width:var(--app-panel-w-wide)}.app-panel.is-entering{transform:translate(100%)}.app-panel__head,.app-panel__foot{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--c-panel);flex:none;display:flex}.app-panel__head{border-bottom:var(--border-thin) solid var(--c-border)}.app-panel__foot{border-top:var(--border-thin) solid var(--c-border);justify-content:flex-end}.app-panel__title{min-width:0;color:var(--c-ink);font-family:var(--font-header);font-size:1rem;font-weight:700;line-height:var(--line-title);white-space:nowrap;text-overflow:ellipsis;flex:auto;margin:0;overflow:hidden}.app-panel__body{overscroll-behavior:contain;min-height:0;padding:var(--space-4);gap:var(--space-4);flex-direction:column;flex:auto;display:flex;overflow:hidden auto}.app-tree::-webkit-scrollbar{width:10px}.app-pane::-webkit-scrollbar{width:10px}.app-panel__body::-webkit-scrollbar{width:10px}.app-tree::-webkit-scrollbar-thumb{background:var(--c-panel-2);border:3px solid var(--c-panel);border-radius:6px}.app-pane::-webkit-scrollbar-thumb{background:var(--c-panel-2);border:3px solid var(--c-panel);border-radius:6px}.app-panel__body::-webkit-scrollbar-thumb{background:var(--c-panel-2);border:3px solid var(--c-panel);border-radius:6px}.app-pane::-webkit-scrollbar-thumb{border-color:var(--c-canvas)}@media (min-width:801px){.app-sidebar-collapse{margin-left:auto}.app-shell{transition:grid-template-columns var(--motion-exit) var(--ease-surface)}html[data-sidebar=collapsed]{--app-sidebar-w:52px}html[data-sidebar=collapsed] .app-sidebar-collapse i{transform:scaleX(-1)}html[data-sidebar=collapsed] .app-sidebar__head{justify-content:center;padding:0}html[data-sidebar=collapsed] .app-sidebar-collapse{margin-left:0}html[data-sidebar=collapsed] .app-sidebar__title,html[data-sidebar=collapsed] .app-tree__chevron,html[data-sidebar=collapsed] .app-tree__list{display:none}html[data-sidebar=collapsed] .app-tree__summary{justify-content:center;padding:.4rem 0;position:relative}html[data-sidebar=collapsed] .app-tree__grouplink{text-indent:-9999px;flex:none;position:absolute;inset:0}html[data-sidebar=collapsed] .app-tree__item{justify-content:center;padding:.4rem 0;-webkit-mask-image:none;mask-image:none}html[data-sidebar=collapsed] .app-tree__item span{display:none}html[data-sidebar=collapsed] .app-tree__group[open]>.app-tree__summary{background:var(--c-panel-2)}}@media (max-width:800px){:root{--app-pane-px:1.1rem}.app-shell{grid-template-columns:minmax(0,1fr)}.app-sidebar{z-index:75;width:100%;transition:transform var(--motion-enter) var(--ease-surface);position:fixed;inset:0;transform:translate(-100%)}.app-shell.is-menu-open .app-sidebar{transform:none}.app-topbar__left{display:flex}.app-menu-toggle,.app-menu-close{display:inline-flex}.app-menu-close{margin-left:auto}.app-sidebar-collapse{display:none}.app-panel-layer{left:0}.app-panel{width:100%;max-width:100vw}}
a{color:var(--c-cta);text-decoration:none}a:hover{text-decoration:underline}.btn{border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);color:var(--c-ink);font-family:var(--font-body);font-weight:600;line-height:var(--line-tight);white-space:nowrap;cursor:pointer;justify-content:center;align-items:center;gap:.5em;padding:.75em 1.5em;text-decoration:none;display:inline-flex}:where(.btn){font-size:var(--btn-fs,var(--fs-m))}.btn:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-panel-2);color:var(--c-panel-2-ink);border-color:var(--c-ink-mute)}.btn:active:not(:disabled):not([aria-disabled=true]){transform:translateY(1px)}.btn:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:2px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}a.btn,a.btn:hover,.tbl a.btn{text-decoration:none}.btn--cta{background:var(--c-cta);color:var(--c-cta-opposite);border-color:var(--c-cta)}.btn--sec{background:var(--c-sec);color:var(--c-sec-opposite);border-color:var(--c-sec)}.btn--info{background:var(--c-info);color:var(--c-info-opposite);border-color:var(--c-info)}.btn--success{background:var(--c-success);color:var(--c-success-opposite);border-color:var(--c-success)}.btn--warn{background:var(--c-warn);color:var(--c-warn-opposite);border-color:var(--c-warn)}.btn--danger{background:var(--c-danger);color:var(--c-danger-opposite);border-color:var(--c-danger)}.btn--cta:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-cta-alt);color:var(--c-cta-opposite);border-color:var(--c-cta-alt)}.btn--sec:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-sec-alt);color:var(--c-sec-opposite);border-color:var(--c-sec-alt)}.btn--info:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-info-alt);color:var(--c-info-opposite);border-color:var(--c-info-alt)}.btn--success:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-success-alt);color:var(--c-success-opposite);border-color:var(--c-success-alt)}.btn--warn:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-warn-alt);color:var(--c-warn-opposite);border-color:var(--c-warn-alt)}.btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-danger-alt);color:var(--c-danger-opposite);border-color:var(--c-danger-alt)}.btn--outline.btn--cta{color:var(--c-cta);border-color:var(--c-cta);background:0 0}.btn--outline.btn--sec{color:var(--c-sec);border-color:var(--c-sec);background:0 0}.btn--outline.btn--info{color:var(--c-info);border-color:var(--c-info);background:0 0}.btn--outline.btn--success{color:var(--c-success);border-color:var(--c-success);background:0 0}.btn--outline.btn--warn{color:var(--c-warn);border-color:var(--c-warn);background:0 0}.btn--outline.btn--danger{color:var(--c-danger);border-color:var(--c-danger);background:0 0}.btn--outline.btn--cta:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-cta);color:var(--c-cta-opposite)}.btn--outline.btn--sec:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-sec);color:var(--c-sec-opposite)}.btn--outline.btn--info:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-info);color:var(--c-info-opposite)}.btn--outline.btn--success:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-success);color:var(--c-success-opposite)}.btn--outline.btn--warn:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-warn);color:var(--c-warn-opposite)}.btn--outline.btn--danger:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-danger);color:var(--c-danger-opposite)}.btn--ghost{color:var(--c-ink-soft);background:0 0;border-color:#0000}.btn--ghost:hover:not(:disabled):not([aria-disabled=true]){background:var(--c-panel-2);color:var(--c-panel-2-ink);border-color:#0000}.iconbtn{border:var(--border-thin) solid transparent;border-radius:var(--app-radius);width:26px;height:24px;color:var(--c-ink-mute);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;font-size:.95em;line-height:1;text-decoration:none;display:inline-flex}.iconbtn:hover{background:var(--c-panel-2);color:var(--c-panel-2-ink)}.iconbtn:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:1px}.iconbtn:disabled,.iconbtn[aria-disabled=true]{opacity:.3;pointer-events:none}.iconbtn--danger:hover{background:var(--c-danger-wash);color:var(--c-danger)}a.iconbtn,a.iconbtn:hover,.tbl a.iconbtn{text-decoration:none}.badge{align-items:center;gap:var(--space-1);padding:calc(var(--space-1) / 2) var(--space-2);background:var(--c-panel-2);color:var(--c-ink-soft);font-size:var(--fs-s);font-weight:600;line-height:var(--line-default);white-space:nowrap;border-radius:999px;display:inline-flex}.badge--cta{background:var(--c-cta-wash);color:var(--c-cta)}.badge--sec{background:var(--c-sec-wash);color:var(--c-sec)}.badge--info{background:var(--c-info-wash);color:var(--c-info)}.badge--success{background:var(--c-success-wash);color:var(--c-success)}.badge--warn{background:var(--c-warn-wash);color:var(--c-warn)}.badge--danger{background:var(--c-danger-wash);color:var(--c-danger)}.chips{gap:var(--space-1);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:calc(var(--space-1) * 1.5);padding:calc(var(--space-1) / 2) var(--space-2);border:var(--border-thin) solid var(--c-border);background:var(--c-panel-2);color:var(--c-panel-2-ink);font-size:var(--fs-s);white-space:nowrap;border-radius:999px;display:inline-flex}.chip__x{color:var(--c-ink-mute);cursor:pointer;background:0 0;border:none;padding:0;font-size:.85em;line-height:1;display:inline-flex}.chip__x:hover{color:var(--c-danger)}.chip__x:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:1px;border-radius:999px}.chip__x:disabled{opacity:.4;pointer-events:none}.avatar{object-fit:cover;border:var(--border-thin) solid var(--c-ink-mute);background:var(--c-panel-2);color:var(--c-ink);font-family:var(--font-header);text-transform:uppercase;-webkit-user-select:none;user-select:none;border-radius:50%;flex:none;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.avatar img,img.avatar{object-fit:cover}.avatar--xs{width:22px;height:22px;font-size:var(--fs-xs)}.avatar--sm{width:28px;height:28px;font-size:var(--fs-xs)}.avatar--md{width:40px;height:40px;font-size:var(--fs-s)}.avatar--lg{width:96px;height:96px;font-size:var(--fs-xl)}.avatar--wash-cta{background:var(--c-cta-wash);color:var(--c-ink)}.avatar--wash-sec{background:var(--c-sec-wash);color:var(--c-ink)}.avatar--wash-info{background:var(--c-info-wash);color:var(--c-ink)}.avatar--wash-success{background:var(--c-success-wash);color:var(--c-ink)}.avatar--wash-warn{background:var(--c-warn-wash);color:var(--c-ink)}.toggle{align-items:center;gap:var(--space-2);font-size:var(--fs-s);color:var(--c-ink);cursor:pointer;display:inline-flex}.toggle__input{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toggle__switch{border:var(--border-thin) solid var(--c-border);background:var(--c-panel-3);width:2.1em;height:1.15em;transition:background var(--motion-exit) var(--ease-surface);border-radius:999px;flex:none;position:relative}.toggle__switch:after{content:"";background:var(--c-ink);width:.9em;height:.9em;transition:left var(--motion-exit) var(--ease-surface), background var(--motion-exit) var(--ease-surface);border-radius:999px;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.toggle__input:checked+.toggle__switch{background:var(--c-cta);border-color:var(--c-cta)}.toggle__input:checked+.toggle__switch:after{background:var(--c-cta-opposite);left:calc(100% - .9em - 2px)}.toggle__input:focus-visible+.toggle__switch{outline:var(--border-medium) solid var(--c-cta);outline-offset:2px}.toggle__input:disabled+.toggle__switch{opacity:.5}.toggle:has(.toggle__input:disabled){cursor:not-allowed;color:var(--c-ink-mute)}.empty{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4);border:var(--border-thin) dashed var(--c-border);border-radius:var(--app-radius);color:var(--c-ink-mute);font-size:var(--fs-s);text-align:center;flex-direction:column;display:flex}.empty__icon{font-size:var(--fs-xl);color:var(--c-ink-mute);display:block}.empty__body{max-width:var(--app-measure)}.banner{align-items:flex-start;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:var(--border-thin) solid var(--c-border);background:var(--c-panel);color:var(--c-ink);font-size:var(--fs-s);display:flex}.banner--info{background:var(--c-info-wash)}.banner--success{background:var(--c-success-wash)}.banner--warn{background:var(--c-warn-wash)}.banner--danger{background:var(--c-danger-wash)}.banner__icon{line-height:var(--line-body);flex:none}.banner--info .banner__icon{color:var(--c-info)}.banner--success .banner__icon{color:var(--c-success)}.banner--warn .banner__icon{color:var(--c-warn)}.banner--danger .banner__icon{color:var(--c-danger)}.banner__body{flex:auto;min-width:0}.banner__dismiss{color:var(--c-ink-mute);cursor:pointer;background:0 0;border:none;flex:none;padding:.1em .2em;font-size:.95em;line-height:1}.banner__dismiss:hover{color:var(--c-ink)}.banner__dismiss:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:1px}.stats{border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);color:var(--c-panel-ink);flex-wrap:wrap;gap:0;display:flex;overflow:hidden}.stat{min-width:5.5rem;padding:var(--space-3) var(--space-4);border-left:var(--border-thin) solid var(--c-border);text-align:center;flex:auto}.stat:first-child{border-left:none}.stat__value{color:var(--c-ink);font-family:var(--font-alt);font-variant-numeric:tabular-nums;font-size:var(--fs-xl);font-weight:700;line-height:var(--line-display);display:block}.stat__label{margin-top:var(--space-1);color:var(--c-ink-soft);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;display:block}.stats--grid{grid-template-columns:repeat(6,1fr);gap:0;display:grid}.stats--grid .stat{grid-column:span var(--stat-span,2);border-left:var(--border-thin) solid var(--c-border);border-top:var(--border-thin) solid var(--c-border)}.stats--grid .stat:first-child{border-top:none}.stats--grid .stat--rowstart{border-left:none}.modal-scrim,.modal-scrim *,.modal-scrim :before,.modal-scrim :after{box-sizing:border-box}.modal-scrim{z-index:80;padding:var(--space-6) var(--space-4);background:var(--c-scrim);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{width:min(var(--app-modal-w), 100%);border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);max-height:100%;color:var(--c-panel-ink);box-shadow:var(--elev-elevated);flex-direction:column;display:flex}.modal__head{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:var(--border-thin) solid var(--c-border);flex:none;display:flex}.modal__title{min-width:0;color:var(--c-ink);flex:auto;margin:0;font-weight:700}.modal__body{gap:var(--space-4);padding:var(--space-4);flex-direction:column;min-height:0;display:flex;overflow:hidden auto}.modal__foot{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:var(--border-thin) solid var(--c-border);flex:none;display:flex}.tooltip-anchor{display:inline-flex;position:relative}.tooltip-trigger{min-width:0;display:inline-flex}.tooltip{z-index:95;width:max-content;max-width:18rem;padding:var(--space-1) var(--space-2);border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel-3);color:var(--c-panel-3-ink);box-shadow:var(--elev-raised);font-family:var(--font-body);font-size:var(--fs-xs);font-weight:400;line-height:var(--line-default);text-align:left;white-space:normal;pointer-events:none;position:fixed}.tooltip:after{content:"";border:5px solid #0000;width:0;height:0;position:absolute}.tooltip[data-placement=top]:after{border-top-color:var(--c-panel-3);top:100%;left:50%;transform:translate(-50%)}.tooltip[data-placement=bottom]:after{border-bottom-color:var(--c-panel-3);bottom:100%;left:50%;transform:translate(-50%)}.tooltip[data-placement=left]:after{border-left-color:var(--c-panel-3);top:50%;left:100%;transform:translateY(-50%)}.tooltip[data-placement=right]:after{border-right-color:var(--c-panel-3);top:50%;right:100%;transform:translateY(-50%)}.menu{display:inline-flex;position:relative}.menu__caret{margin-left:var(--space-1);opacity:.8;font-size:.7em}.menu__panel{z-index:90;min-width:12rem;padding:var(--space-1);border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);color:var(--c-panel-ink);box-shadow:var(--elev-raised);flex-direction:column;display:flex;position:fixed}.menu__item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--app-radius);color:var(--c-ink);font:inherit;font-size:var(--fs-s);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.menu__item:hover,.menu__item:focus-visible{background:var(--c-panel-2);color:var(--c-panel-2-ink);outline:none}.menu__item:disabled{opacity:.5;pointer-events:none}.menu__item--danger{color:var(--c-danger)}.menu__item--danger:hover,.menu__item--danger:focus-visible{background:var(--c-danger-wash);color:var(--c-danger)}.menu__icon{text-align:center;width:1rem;color:var(--c-ink-mute)}.menu__item--danger .menu__icon{color:var(--c-danger)}.tbl-wrap{border:var(--border-medium) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);overflow-x:auto}.tbl{border-collapse:collapse;background:var(--c-panel);width:100%;color:var(--c-panel-ink);font-family:var(--font-alt);font-variant-numeric:tabular-nums;font-size:var(--fs-s)}.tbl th,.tbl td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:var(--border-thin) solid var(--c-border);vertical-align:middle}.tbl tbody tr:last-child td{border-bottom:0}.tbl thead th{background:var(--c-panel-2);color:var(--c-panel-2-ink);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;white-space:nowrap;font-weight:700}.tbl tbody tr:hover td{background:var(--c-panel-2)}.tbl .tbl__identity,.tbl .tbl__label{font-family:var(--font-body);font-size:var(--fs-m);color:var(--c-ink)}.tbl thead th.tbl__identity,.tbl thead th.tbl__label{font-family:var(--font-alt);font-size:var(--fs-xs)}.tbl .tbl__identity a,.tbl .tbl__label a{color:var(--c-ink);text-decoration:none}.tbl .tbl__identity a:hover,.tbl .tbl__label a:hover{text-decoration:underline}.tbl .tbl__num{text-align:right}.tbl .tbl__center{text-align:center}.tbl .tbl__actions{text-align:right;white-space:nowrap;width:1%}.tbl__titlebar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:var(--border-thin) solid var(--c-border);background:var(--c-panel-3);color:var(--c-panel-3-ink);font-family:var(--font-alt);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:700;display:flex}.tbl__titlebar-actions{align-items:center;gap:var(--space-2);text-transform:none;letter-spacing:normal;font-family:var(--font-body);display:flex}.tbl-toolbar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.tbl-toolbar__actions{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.search{align-items:center;display:inline-flex;position:relative}.search__icon{color:var(--c-ink-mute);pointer-events:none;font-size:.85em;position:absolute;left:.75em}.search__input{border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);width:16rem;max-width:100%;color:var(--c-panel-ink);font-family:var(--font-body);font-size:inherit;line-height:var(--line-tight);padding:.45em 2em .45em 2.2em}.search__input::placeholder{color:var(--c-ink-mute)}.search__input:focus{border-color:var(--c-cta);outline:none}.search__clear{border-radius:var(--app-radius);color:var(--c-ink-mute);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:.2em .35em;font-size:.85em;line-height:1;display:inline-flex;position:absolute;right:.4em}.search__clear:hover{color:var(--c-ink)}.search__clear:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:1px}.filter{align-items:center;display:inline-flex;position:relative}.filter__select{appearance:none;border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-panel);color:var(--c-panel-ink);font-family:var(--font-body);font-size:inherit;line-height:var(--line-tight);cursor:pointer;padding:.45em 2em .45em .75em}.filter__select:focus{border-color:var(--c-cta);outline:none}.filter__caret{color:var(--c-ink-mute);pointer-events:none;font-size:.7em;position:absolute;right:.75em}.filter--active .filter__select{background:var(--c-cta-wash);border-color:var(--c-cta);color:var(--c-ink)}.filter--active .filter__caret{color:var(--c-cta)}.section__head{align-items:center;gap:var(--space-2);margin-bottom:var(--space-3);display:flex}.section__title{color:var(--c-ink);margin:0;font-weight:700}.section__spacer{flex:auto}.section__meta{color:var(--c-ink-mute);font-size:var(--fs-s)}.field{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.label{color:var(--c-ink-soft);font-size:var(--fs-s);font-weight:600}.hint{color:var(--c-ink-mute);font-size:var(--fs-s)}.field__error{color:var(--c-danger);font-size:var(--fs-s)}.field--error .input,.field--error .select,.field--error .textarea{border-color:var(--c-danger)}.input,.select,.textarea{width:100%;padding:var(--space-2) .65em;border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-canvas);color:var(--c-canvas-ink);font:inherit;font-size:var(--fs-s)}.input::placeholder,.textarea::placeholder{color:var(--c-ink-mute)}.input:focus,.select:focus,.textarea:focus{border-color:var(--c-cta);outline:none}.input:disabled,.select:disabled,.textarea:disabled{opacity:.5;cursor:not-allowed}.textarea{resize:vertical;min-height:5rem;line-height:var(--line-default)}.select-wrap{display:block;position:relative}.select{appearance:none;cursor:pointer;padding-right:2em}.select-wrap__caret{color:var(--c-ink-mute);pointer-events:none;font-size:.7em;position:absolute;top:50%;right:.75em;transform:translateY(-50%)}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-grid--1{grid-template-columns:minmax(0,1fr)}.form-grid__full{grid-column:1/-1}@media (max-width:640px){.form-grid{grid-template-columns:minmax(0,1fr)}}.form-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);margin-top:var(--space-5);display:flex}.copyrow{align-items:stretch;gap:var(--space-2);flex-wrap:wrap;display:flex}.copyrow__value{min-width:0;padding:var(--space-2) .65em;border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-canvas);color:var(--c-ink-soft);font-family:var(--font-alt);font-variant-numeric:tabular-nums;font-size:var(--fs-s);white-space:nowrap;flex:18rem;overflow-x:auto}.saved-indicator{color:var(--c-ink-soft);font-size:var(--fs-s);white-space:nowrap}.ghost-title{width:100%;min-width:0;margin:0 0 0 calc(-1 * (.3rem + var(--border-thin)));border:var(--border-thin) solid transparent;border-radius:var(--app-radius);color:var(--c-ink);font-weight:700;line-height:var(--line-title);background:0 0;flex:auto;padding:.15rem .3rem}.ghost-title:hover:not(:focus):not(:disabled){border-color:var(--c-border);cursor:text}.ghost-title:focus{border-color:var(--c-cta);outline:none}.ghost-title:disabled{color:var(--c-ink);opacity:1;cursor:default}.inline-cell{align-items:center;gap:var(--space-2);min-width:0;display:flex}.inline-cell__text{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:var(--line-tight);padding:.15rem 0;overflow:hidden}.inline-cell__edit{border-radius:var(--app-radius);width:1.4em;height:1.4em;color:var(--c-ink-mute);cursor:pointer;opacity:0;transition:opacity var(--motion-exit) var(--ease-hint), color var(--motion-exit) var(--ease-hint);background:0 0;border:none;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;display:inline-flex}.tbl tr:hover .inline-cell__edit,.inline-cell:hover .inline-cell__edit,.inline-cell__edit:focus-visible{opacity:1}.inline-cell__edit:hover{color:var(--c-ink)}.inline-cell__edit:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:1px}.inline-edit{border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);background:var(--c-canvas);width:100%;min-width:0;color:var(--c-canvas-ink);font-family:var(--font-body);font-size:var(--fs-s);line-height:var(--line-tight);margin:0;padding:.15rem .3rem}.inline-edit:focus{border-color:var(--c-cta);outline:none}
.sb-tree{--sb-tree-indent:var(--space-6);gap:var(--space-2);max-width:var(--app-measure);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sb-tree__row{padding-left:calc(var(--sb-depth,0) * var(--sb-tree-indent));position:relative}.sb-tree__row--dragging .sb-card{opacity:.45;box-shadow:none;border-style:dashed}.sb-tree__row:before{content:"";top:0;bottom:0;left:calc(var(--sb-depth,0) * var(--sb-tree-indent) - var(--space-3));border-left:var(--border-thin) solid var(--c-border);position:absolute}.sb-tree__row[style*="--sb-depth: 0"]:before,.sb-tree__row[style*=--sb-depth\:0]:before{display:none}.sb-tree__ghost{width:min(var(--app-measure), 100%);cursor:grabbing}.sb-tree{padding-block:var(--space-2)}
.sb-card{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--c-panel);color:var(--c-panel-ink);border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);box-shadow:var(--elev-card);cursor:pointer;display:flex}.sb-card:hover,.sb-card:focus-visible,.sb-card:focus-within{border-color:var(--c-ink-soft)}.sb-card--selected{outline:var(--border-medium) solid var(--c-cta);outline-offset:calc(-1 * var(--border-medium))}.sb-card--ghost{box-shadow:var(--elev-raised);cursor:grabbing}.sb-card__handle,.sb-card__toggle{width:var(--space-5);height:var(--space-5);border-radius:var(--app-radius);color:var(--c-ink-soft);font:inherit;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.sb-card__handle{cursor:grab;touch-action:none}.sb-card__handle:active{cursor:grabbing}.sb-card__handle:hover,.sb-card__handle:focus-visible,.sb-card__toggle:hover,.sb-card__toggle:focus-visible{background:var(--c-panel-2);color:var(--c-ink)}.sb-card__handle:focus-visible,.sb-card__toggle:focus-visible,.sb-card__title:focus-visible{outline:var(--border-medium) solid var(--c-cta);outline-offset:0}.sb-card__toggle--none{cursor:default}.sb-card__toggle .fa-chevron-right{transition:transform var(--motion-enter) var(--ease-surface)}.sb-card__toggle--open .fa-chevron-right{transform:rotate(90deg)}.sb-card__kind{width:var(--space-5);height:var(--space-5);flex:none;justify-content:center;align-items:center;display:inline-flex}.sb-card__kind--new{color:var(--c-success)}.sb-card__kind--existing{color:var(--c-info)}.sb-card__title{min-width:0;padding:var(--space-1) 0;color:inherit;font:inherit;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:0 0;border:0;flex:0 auto;font-weight:600;overflow:hidden}.sb-card__title--empty{color:var(--c-ink-soft);font-style:italic;font-weight:400}.sb-card__meta{align-items:center;gap:var(--space-2);flex:none;display:flex}.sb-card__children{align-items:center;gap:var(--space-1);padding:calc(var(--space-1) / 2) var(--space-2);border-radius:var(--app-radius);background:var(--c-panel-2);color:var(--c-ink);font-size:var(--fs-body-s);display:inline-flex}.sb-card__children .fa-turn-down{color:var(--c-ink-soft)}.sb-card__collection{align-items:center;gap:var(--space-1);padding:calc(var(--space-1) / 2) var(--space-2);border-radius:var(--app-radius);background:var(--c-sec-wash);color:var(--c-ink);font-size:var(--fs-body-s);display:inline-flex}.sb-card__spacer{min-width:var(--space-2);flex:auto}.sb-card__actions{align-items:center;gap:var(--space-1);opacity:0;transition:opacity var(--motion-exit) var(--ease-hint);flex:none;display:flex}.sb-card__actions .iconbtn,.sb-card__actions .btn{height:var(--space-6);min-height:0;padding-block:0}.sb-card__actions .iconbtn{width:var(--space-6)}.sb-card:hover .sb-card__actions,.sb-card:focus-visible .sb-card__actions,.sb-card:focus-within .sb-card__actions,.sb-card--selected .sb-card__actions{opacity:1}.sb-card--collection{background:var(--c-panel-2);color:var(--c-panel-2-ink)}@media (hover:none){.sb-card__actions{opacity:1}}
.sb-editor{display:block}.sb-editor__aside{align-items:stretch;gap:var(--space-2);margin-inline-end:auto;display:flex}.sb-editor__aside .iconbtn{width:auto;height:auto;padding-inline:var(--space-3)}
.sb-solo.app-shell{grid-template-columns:minmax(0,1fr)}.sb-solo .app-menu-toggle{display:none}.sb-solo .app-panel-layer{left:0}.sb-solo .app-topbar__right{gap:var(--space-4)}.sb-solo .app-topbar__right .saved-indicator{white-space:nowrap}.sb-solo .app-topbar__title{padding-inline-start:var(--space-2)}
.sb-workbench{grid-template-columns:minmax(0, 1fr) var(--app-panel-w-normal);gap:var(--space-5);align-items:start;display:grid}.sb-workbench__tree{min-width:0}.sb-workbench__aside{min-width:0;position:sticky;top:0}@media (max-width:800px){.sb-workbench{grid-template-columns:minmax(0,1fr)}.sb-workbench__aside{position:static}}
.sb-aside{max-height:calc(100dvh - var(--app-header-h) - var(--app-statusbar-h) - 2 * var(--space-5));background:var(--c-panel);color:var(--c-panel-ink);border:var(--border-thin) solid var(--c-border);border-radius:var(--app-radius);box-shadow:var(--elev-card);flex-direction:column;display:flex;overflow:hidden}.sb-aside__head{min-height:var(--app-header-h);padding:0 var(--space-4);border-bottom:var(--border-thin) solid var(--c-border);flex:none;align-items:center;display:flex}.sb-aside__title{margin:0}.sb-aside__body{overscroll-behavior:contain;min-height:0;padding:var(--space-4);flex:auto;overflow:auto}.sb-aside__empty{padding:var(--space-5) var(--space-2);text-align:center;color:var(--c-ink-soft);margin:0}.sb-aside__foot{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-top:var(--border-thin) solid var(--c-border);flex:none;display:flex}
