:root{--sileo-spring-easing:linear(0, .002 0.6%, .007 1.2%, .015 1.8%, .026 2.4%, .041 3.1%, .06 3.8%, .108 5.3%, .157 6.6%, .214 8%, .467 13.7%, .577 16.3%, .631 17.7%, .682 19.1%, .73 20.5%, .771 21.8%, .808 23.1%, .844 24.5%, .874 25.8%, .903 27.2%, .928 28.6%, .952 30.1%, .972 31.6%, .988 33.1%, 1.01 35.7%, 1.025 38.5%, 1.034 41.6%, 1.038 45%, 1.035 50.1%, 1.012 64.2%, 1.003 73%, .999 83.7%, 1);--sileo-duration:.6s;--sileo-height:40px;--sileo-width:350px;--sileo-state-success:oklch(72.3% .219 142.136);--sileo-state-loading:oklch(55.6% 0 0);--sileo-state-error:oklch(63.7% .237 25.331);--sileo-state-warning:oklch(79.5% .184 86.047);--sileo-state-info:oklch(68.5% .169 237.323);--sileo-state-action:oklch(62.3% .214 259.815)}[data-sileo-toast]{cursor:pointer;pointer-events:auto;touch-action:none;width:var(--sileo-width);height:var(--_h,var(--sileo-height));opacity:0;transform-origin:50%;contain:layout style;background:0 0;border:0;padding:0;position:relative;overflow:visible;transform:translateZ(0)scale(.95)}[data-sileo-toast][data-state=loading]{cursor:default}[data-sileo-toast][data-ready=true]{opacity:1;transition:transform calc(var(--sileo-duration) * .66) var(--sileo-spring-easing), opacity calc(var(--sileo-duration) * .66) var(--sileo-spring-easing), margin-bottom calc(var(--sileo-duration) * .66) var(--sileo-spring-easing), margin-top calc(var(--sileo-duration) * .66) var(--sileo-spring-easing), height var(--sileo-duration) var(--sileo-spring-easing);transform:translateZ(0)scale(1)}[data-sileo-viewport][data-position^=top] [data-sileo-toast]:not([data-ready=true]){transform:translateY(-6px)scale(.95)}[data-sileo-viewport][data-position^=bottom] [data-sileo-toast]:not([data-ready=true]){transform:translateY(6px)scale(.95)}[data-sileo-toast][data-ready=true][data-exiting=true]{opacity:0;pointer-events:none}[data-sileo-viewport][data-position^=top] [data-sileo-toast][data-ready=true][data-exiting=true]{transform:translateY(-6px)scale(.95)}[data-sileo-viewport][data-position^=bottom] [data-sileo-toast][data-ready=true][data-exiting=true]{transform:translateY(6px)scale(.95)}[data-sileo-canvas]{pointer-events:none;contain:layout style;position:absolute;left:0;right:0;overflow:visible;transform:translateZ(0)}[data-sileo-canvas][data-edge=top]{bottom:0;transform:scaleY(-1)translateZ(0)}[data-sileo-canvas][data-edge=bottom]{top:0}[data-sileo-svg]{overflow:visible}[data-sileo-header]{z-index:20;height:var(--sileo-height);left:var(--_px,0px);transform:var(--_ht);max-width:var(--_pw);align-items:center;padding:.5rem;display:flex;position:absolute;overflow:hidden}[data-sileo-toast][data-ready=true] [data-sileo-header]{transition:transform var(--sileo-duration) var(--sileo-spring-easing), left var(--sileo-duration) var(--sileo-spring-easing), max-width var(--sileo-duration) var(--sileo-spring-easing)}[data-sileo-header][data-edge=top]{bottom:0}[data-sileo-header][data-edge=bottom]{top:0}[data-sileo-header-stack]{align-items:center;height:100%;display:inline-flex;position:relative}[data-sileo-header-inner]{white-space:nowrap;opacity:1;filter:blur();align-items:center;gap:.5rem;display:flex;transform:translateZ(0)}[data-sileo-header-inner][data-layer=current]{z-index:1;animation:sileo-header-enter var(--sileo-duration) var(--sileo-spring-easing) both;position:relative}[data-sileo-header-inner][data-layer=current]:not(:only-child),[data-sileo-header-inner][data-exiting=true]{will-change:opacity, filter}[data-sileo-header-inner][data-layer=prev]{z-index:0;pointer-events:none;position:absolute;top:0;left:0}[data-sileo-header-inner][data-exiting=true]{animation:sileo-header-exit calc(var(--sileo-duration) * .7) ease forwards}[data-sileo-badge]{box-sizing:border-box;width:24px;height:24px;color:var(--sileo-tone,currentColor);background-color:var(--sileo-tone-bg,transparent);border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;padding:2px;display:flex}[data-sileo-title]{text-transform:capitalize;color:var(--sileo-tone,currentColor);font-size:.825rem;font-weight:500;line-height:1rem}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state]{--_c:var(--sileo-state-success)}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state=loading]{--_c:var(--sileo-state-loading)}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state=error]{--_c:var(--sileo-state-error)}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state=warning]{--_c:var(--sileo-state-warning)}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state=info]{--_c:var(--sileo-state-info)}:is([data-sileo-badge],[data-sileo-title],[data-sileo-button])[data-state=action]{--_c:var(--sileo-state-action)}:is([data-sileo-badge],[data-sileo-title])[data-state]{--sileo-tone:var(--_c);--sileo-tone-bg:color-mix(in oklch, var(--_c) 20%, transparent)}[data-sileo-content]{z-index:10;pointer-events:none;width:100%;opacity:var(--_co,0);position:absolute;left:0}[data-sileo-content]:not([data-visible=true]){content-visibility:hidden}[data-sileo-toast][data-ready=true] [data-sileo-content]{transition:opacity calc(var(--sileo-duration) * .08) ease calc(var(--sileo-duration) * .04)}[data-sileo-content][data-edge=top]{top:0}[data-sileo-content][data-edge=bottom]{top:var(--sileo-height)}[data-sileo-content][data-visible=true]{pointer-events:auto}[data-sileo-toast][data-ready=true] [data-sileo-content][data-visible=true]{transition:opacity calc(var(--sileo-duration) * .6) ease calc(var(--sileo-duration) * .3)}[data-sileo-description]{text-align:left;contain:layout style paint;content-visibility:auto;width:100%;padding:1rem;font-size:.875rem;line-height:1.25rem}[data-sileo-button]{cursor:pointer;height:1.75rem;color:var(--sileo-btn-color,currentColor);background-color:var(--sileo-btn-bg,transparent);border:0;border-radius:9999px;justify-content:center;align-items:center;margin-top:.75rem;padding:0 .625rem;font-size:.75rem;font-weight:500;transition:background-color .15s;display:flex}[data-sileo-button]:hover{background-color:var(--sileo-btn-bg-hover,transparent)}[data-sileo-button][data-state]{--sileo-btn-color:var(--_c);--sileo-btn-bg:color-mix(in oklch, var(--_c) 15%, transparent);--sileo-btn-bg-hover:color-mix(in oklch, var(--_c) 25%, transparent)}[data-sileo-icon=spin]{animation:1s linear infinite sileo-spin}@keyframes sileo-spin{to{transform:rotate(360deg)}}@keyframes sileo-header-enter{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}@keyframes sileo-header-exit{0%{opacity:1;filter:blur()}to{opacity:0;filter:blur(6px)}}[data-sileo-viewport]{z-index:50;pointer-events:none;contain:layout style;gap:.75rem;max-width:calc(100vw - 1.5rem);padding:.75rem;display:flex;position:fixed}[data-sileo-viewport][data-position^=top] [data-sileo-toast]:not([data-ready=true]){margin-bottom:calc(-1 * (var(--sileo-height) + .75rem))}[data-sileo-viewport][data-position^=bottom] [data-sileo-toast]:not([data-ready=true]){margin-top:calc(-1 * (var(--sileo-height) + .75rem))}[data-sileo-viewport][data-position^=top]{flex-direction:column-reverse;top:0}[data-sileo-viewport][data-position^=bottom]{flex-direction:column;bottom:0}[data-sileo-viewport][data-position$=left]{align-items:flex-start;left:0}[data-sileo-viewport][data-position$=right]{align-items:flex-end;right:0}[data-sileo-viewport][data-position$=center]{align-items:center;left:50%;transform:translate(-50%)}@media (prefers-reduced-motion:no-preference){[data-sileo-toast][data-ready=true]:hover,[data-sileo-toast][data-ready=true][data-exiting=true]{will-change:transform, opacity, height}}@media (prefers-reduced-motion:reduce){[data-sileo-viewport],[data-sileo-viewport] *,[data-sileo-viewport] :before,[data-sileo-viewport] :after{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}[data-sileo-viewport][data-theme=dark] [data-sileo-description]{color:#00000080}[data-sileo-viewport][data-theme=light] [data-sileo-description]{color:#ffffff80}:root{--sf-ink:#090c0e;--sf-ink-2:#101518;--sf-paper:#f1f0eb;--sf-paper-2:#e7e7e1;--sf-white:#f7f8f5;--sf-muted:#858e8e;--sf-line-on-dark:#ffffff24;--sf-line-on-light:#090c0e29;--sf-cyan:#a4f5e3;--sf-lime:#c9fa86;--sf-font-sans:"Manrope", system-ui, sans-serif;--sf-font-mono:"DM Mono", ui-monospace, monospace;--sf-wordmark-tracking:.18em;--sf-muted-on-paper:#5c6464;--sf-line-strong-on-paper:#7a8282;--sf-line-strong-on-dark:#ffffff61;--sf-lime-hover:#b5ea6c;--sf-skeleton:#e0dfd8;--sf-success:#2e6b1f;--sf-success-tint:#e4efd2;--sf-warning:#8a5300;--sf-warning-tint:#f3e6cc;--sf-danger:#b3261e;--sf-danger-tint:#f6deda;--sf-warning-on-dark:#f5c26b;--sf-danger-on-dark:#ff8a80;--sf-mock:#fff8db;--sf-mock-border:#8a6d00;--color-bg:var(--sf-paper);--color-surface:var(--sf-white);--color-well:var(--sf-paper-2);--color-fg:var(--sf-ink);--color-muted:var(--sf-muted-on-paper);--color-border:var(--sf-line-on-light);--color-border-strong:var(--sf-line-strong-on-paper);--color-accent:var(--sf-ink);--color-cta:var(--sf-lime);--color-cta-hover:var(--sf-lime-hover);--color-on-cta:var(--sf-ink);--color-cta-edge:var(--sf-ink);--color-focus-ring:var(--sf-ink);--color-success:var(--sf-success);--color-success-tint:var(--sf-success-tint);--color-warning:var(--sf-warning);--color-warning-tint:var(--sf-warning-tint);--color-danger:var(--sf-danger);--color-danger-tint:var(--sf-danger-tint);--color-skeleton:var(--sf-skeleton);--color-scrim:#090c0e8c;--color-mock:var(--sf-mock);--color-mock-border:var(--sf-mock-border);--logo-mark:var(--sf-ink);--logo-word:var(--sf-ink);--chart-1:var(--sf-ink);--chart-2:#0e6e62;--chart-3:#3557c9;--chart-4:#6e46c4;--chart-5:#646c6c;--chart-grid:var(--sf-line-on-light);--chart-axis:var(--sf-muted-on-paper);--font-display:var(--sf-font-sans);--font-body:var(--sf-font-sans);--font-mono:var(--sf-font-mono);--text-xs:13px;--text-sm:14px;--text-base:16px;--text-lg:20px;--text-xl:28px;--weight-regular:400;--weight-medium:500;--weight-strong:650;--leading-body:1.55;--leading-tight:1.15;--track-h1:-.035em;--track-h2:-.025em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-chip:2px;--radius-control:2px;--radius-card:4px;--radius-round:999px;--control-h:44px;--rail-w:248px;--rail-w-compact:92px;--content-max:1360px;--shadow-pop:0 1px 2px #090c0e14, 0 24px 48px -24px #090c0e80;--ease:cubic-bezier(.2, .7, .2, 1);--duration-fast:.15s;--duration-base:.22s;--z-sticky:10;--z-drawer:80;--z-pop:90;--z-dialog:100;--toast-fill:var(--sf-ink);--toast-text-muted:#b9c1c1;--sileo-state-success:var(--sf-lime);--sileo-state-error:var(--sf-danger-on-dark);--sileo-state-warning:var(--sf-warning-on-dark);--sileo-state-info:var(--sf-cyan);--sileo-state-action:var(--sf-cyan)}.on-ink{--color-bg:var(--sf-ink);--color-surface:var(--sf-ink-2);--color-well:var(--sf-ink-2);--color-fg:var(--sf-white);--color-muted:var(--sf-muted);--color-border:var(--sf-line-on-dark);--color-border-strong:var(--sf-line-strong-on-dark);--color-accent:var(--sf-cyan);--color-focus-ring:var(--sf-cyan);--color-success:var(--sf-lime);--color-warning:var(--sf-warning-on-dark);--color-danger:var(--sf-danger-on-dark);--logo-mark:var(--sf-cyan);--logo-word:var(--sf-white);background:var(--color-bg);color:var(--color-fg)}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-fg);font:var(--weight-regular) var(--text-base)/var(--leading-body) var(--font-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-display);font-weight:var(--weight-strong);line-height:var(--leading-tight);text-wrap:balance;margin:0}h1{font-size:var(--text-xl);letter-spacing:var(--track-h1)}h2{font-size:var(--text-lg);letter-spacing:var(--track-h2)}h3{font-size:var(--text-base);letter-spacing:-.01em}p{margin:0}code,.mono{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-regular)}.num,td,th,.tabular{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}::selection{background:var(--sf-lime);color:var(--sf-ink)}[hidden]{display:none!important}.muted{color:var(--color-muted)}.small{font-size:var(--text-xs)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.icon{stroke-width:1.9px;vertical-align:middle;flex:none;width:18px;height:18px}.icon-sm{width:16px;height:16px}.stack{gap:var(--space-4);display:grid}.row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.spacer{flex:1}.wrap-anywhere{overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){:root{--duration-fast:.01ms;--duration-base:.01ms}*,:before,:after{transition:none!important;animation:none!important}}.brand{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);color:var(--color-fg);min-height:var(--control-h);text-decoration:none;display:flex}.logo{width:auto;height:32px;display:block;overflow:visible}.logo .lg-line{fill:none;stroke:var(--logo-mark);stroke-width:1.5px}.logo .lg-mark{fill:var(--logo-mark)}.logo .lg-word{fill:var(--logo-word)}.logo text{font-family:var(--font-body)}.logo-mark{display:none}.brand .product{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-muted);padding-left:var(--space-3);border-left:1px solid var(--color-border-strong);line-height:1.2}.app{grid-template-columns:var(--rail-w) minmax(0, 1fr);background:linear-gradient(90deg, var(--sf-ink) var(--rail-w), var(--color-bg) var(--rail-w));min-height:100vh;display:grid}.app.bare{background:var(--color-bg)}.rail{padding:var(--space-4) var(--space-3);gap:var(--space-4);flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.rail>.brand{padding:var(--space-2) var(--space-3) var(--space-3)}.nav{gap:2px;display:grid}.nav a{align-items:center;gap:var(--space-3);min-height:var(--control-h);padding:0 var(--space-3);border-radius:var(--radius-control);color:var(--color-fg);font-size:var(--text-sm);font-weight:var(--weight-medium);transition:background var(--duration-fast) var(--ease);text-decoration:none;display:flex;position:relative}.nav a:hover,.nav a[aria-current=page]{background:var(--color-well)}.nav a[aria-current=page]:before{content:"";background:var(--color-accent);width:3px;position:absolute;top:10px;bottom:10px;left:-12px}.nav a .icon{color:var(--color-muted)}.nav a[aria-current=page] .icon{color:var(--color-accent)}.rail-heading{font-size:var(--text-xs);color:var(--color-muted);font-weight:var(--weight-medium);padding:0 var(--space-3);margin-top:var(--space-2)}.rail-projects a{padding-top:var(--space-1);padding-bottom:var(--space-1)}.rail-projects .rp{min-width:0;line-height:1.3;display:grid}.rail-projects .rp-name{font-size:var(--text-sm);font-weight:var(--weight-medium);overflow-wrap:anywhere}.rail-projects .rp-sub{font-size:var(--text-xs);color:var(--color-muted);font-weight:var(--weight-regular)}.rail-projects .rp-sub code{color:var(--color-muted)}.rail-foot{text-wrap:balance;border-top:1px solid var(--color-border);padding:var(--space-3) var(--space-3) 0;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-muted);margin-top:auto;display:grid}.rail-foot .who{color:var(--color-fg);font-weight:var(--weight-medium);font-size:var(--text-sm);overflow-wrap:anywhere;min-height:var(--control-h);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px;align-items:center;display:inline-flex}.rail-foot .who:hover{text-decoration-color:currentColor}.topbar{display:none}.main{min-width:0}.page{max-width:var(--content-max);padding:var(--space-6) var(--space-8) var(--space-16)}.page-head{align-items:flex-end;gap:var(--space-3) var(--space-6);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.page-head .lede{color:var(--color-muted);font-size:var(--text-sm);margin-top:var(--space-1);max-width:62ch}.page-head .actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-left:auto;display:flex}.section{margin-top:var(--space-8)}.section-head{align-items:baseline;gap:var(--space-2) var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.section-head p{color:var(--color-muted);font-size:var(--text-sm)}.section-head .actions{gap:var(--space-2);flex-wrap:wrap;margin-left:auto;display:flex}.updated{font-size:var(--text-xs);color:var(--color-muted);align-items:center;gap:var(--space-1);display:inline-flex}.scrim{display:none}@media (width<=1099px){.app{grid-template-columns:var(--rail-w-compact) minmax(0, 1fr);background:linear-gradient(90deg, var(--sf-ink) var(--rail-w-compact), var(--color-bg) var(--rail-w-compact))}.rail{padding:var(--space-3) var(--space-2);align-items:stretch}.rail>.brand{padding:var(--space-2) 0;justify-content:center}.rail>.brand .logo-full,.rail>.brand .product{display:none}.rail>.brand .logo-mark{display:block}.nav a{padding:var(--space-2) var(--space-1);font-size:var(--text-xs);text-align:center;flex-direction:column;justify-content:center;gap:2px;min-height:60px}.nav a[aria-current=page]:before{left:-8px}.rail-heading,.rail-projects{display:none}.rail-foot{padding:var(--space-3) 0 0;text-align:center}.rail-foot .session-text{display:none}.page{padding:var(--space-6) var(--space-6) var(--space-16)}}@media (width<=767px){.app{background:var(--color-bg);grid-template-columns:minmax(0,1fr)}.topbar{align-items:center;gap:var(--space-2);z-index:var(--z-sticky);border-bottom:1px solid var(--color-border);padding:0 var(--space-2) 0 var(--space-2);min-height:56px;display:flex;position:sticky;top:0}.topbar .brand{padding:0 var(--space-2)}.topbar .logo{height:28px}.rail{width:min(300px,86vw);z-index:var(--z-drawer);transition:transform var(--duration-base) var(--ease);visibility:hidden;padding:var(--space-4) var(--space-3);align-items:stretch;position:fixed;inset:0 auto 0 0;transform:translate(-100%)}.app.drawer-open .rail{visibility:visible;box-shadow:var(--shadow-pop);transform:none}.app.drawer-open .scrim{background:var(--color-scrim);z-index:calc(var(--z-drawer) - 1);display:block;position:fixed;inset:0}.rail>.brand{padding:var(--space-2) var(--space-3) var(--space-3);justify-content:flex-start}.rail>.brand .logo-full,.rail>.brand .product{display:block}.rail>.brand .logo-mark{display:none}.nav a{justify-content:flex-start;gap:var(--space-3);padding:0 var(--space-3);font-size:var(--text-sm);min-height:var(--control-h);text-align:left;flex-direction:row}.nav a[aria-current=page]:before{left:-12px}.rail-heading,.rail-projects{display:grid}.rail-foot{text-align:left;padding:var(--space-3) var(--space-3) 0}.rail-foot .session-text{display:block}.page{padding:var(--space-5) var(--space-4) var(--space-12)}.page-head .actions{margin-left:0}}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-h);min-width:var(--control-h);padding:0 var(--space-4);border-radius:var(--radius-control);border:1px solid var(--color-border-strong);background:var(--color-surface);color:var(--color-fg);font:var(--weight-strong) var(--text-sm)/1 var(--font-body);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);text-decoration:none;display:inline-flex}.on-ink .btn{background:0 0}.btn:hover{border-color:var(--color-fg)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.55;cursor:not-allowed;transform:none}.btn-off{background:var(--color-well);border-color:var(--color-border);color:var(--color-muted);cursor:not-allowed}.btn-off:hover{border-color:var(--color-border)}.btn-primary{background:var(--color-cta);border-color:var(--color-cta-edge);color:var(--color-on-cta)}.btn-primary:hover{background:var(--color-cta-hover);border-color:var(--color-cta-edge)}.on-ink .btn-primary{background:var(--color-cta);border-color:var(--color-cta);color:var(--color-on-cta)}.btn-primary[disabled]{background:var(--color-well);border-color:var(--color-border-strong);color:var(--color-muted);opacity:1}.btn-quiet{background:0 0;border-color:#0000}.btn-quiet:hover{background:var(--color-well);border-color:#0000}.btn-danger{color:var(--color-danger);border-color:var(--color-danger)}.btn-danger:hover{background:var(--color-danger-tint);border-color:var(--color-danger)}.btn-danger-solid{background:var(--color-danger);border-color:var(--color-danger);color:var(--sf-white)}.btn-icon{width:var(--control-h);padding:0}.btn-wide{width:100%}.btn .spin,.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.link{color:var(--color-fg);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px;align-items:center;gap:var(--space-1);min-height:var(--control-h);min-width:var(--control-h);display:inline-flex}.link:hover{text-decoration-color:currentColor;text-decoration-thickness:2px}.on-ink .link{color:var(--color-accent);text-decoration-color:currentColor}.link .icon{width:14px;height:14px;color:var(--color-muted)}.input{min-height:var(--control-h);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);padding:0 var(--space-3);font:var(--weight-regular) var(--text-base)/1 var(--font-body);color:var(--color-fg);width:100%}.input::placeholder{color:var(--color-muted)}.input:focus{outline:2px solid var(--color-focus-ring);outline-offset:1px;border-color:var(--color-fg)}.input[aria-invalid=true]{border-color:var(--color-danger);border-width:2px}.search{flex:260px;min-width:0;position:relative}.search .icon{color:var(--color-muted);pointer-events:none;position:absolute;top:13px;left:12px}.search .input{font-size:var(--text-sm);padding-left:38px}.label{font-size:var(--text-sm);font-weight:var(--weight-strong);margin-bottom:var(--space-2);display:block}.help{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-2);gap:var(--space-1);align-items:flex-start;display:flex}.help .icon{width:16px;height:16px;margin-top:1px}.help.err{color:var(--color-danger)}.seg{border-radius:var(--radius-control);background:var(--color-well);min-height:var(--control-h);flex-wrap:wrap;align-items:center;gap:0;padding:0;display:inline-flex}.seg button{min-height:var(--control-h);min-width:52px;padding:0 var(--space-3);border-radius:var(--radius-control);font:var(--weight-medium) var(--text-sm)/1 var(--font-body);color:var(--color-muted);cursor:pointer;background:0 0;border:0}.seg button[aria-pressed=true]{background:var(--color-surface);color:var(--color-fg);box-shadow:inset 0 0 0 1px var(--color-fg)}.seg button:hover{color:var(--color-fg)}.tabs{gap:var(--space-1);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-6);display:flex;overflow-x:auto}.tabs a{align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-3);color:var(--color-muted);font-size:var(--text-sm);font-weight:var(--weight-medium);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;text-decoration:none;display:inline-flex}.tabs a:hover{color:var(--color-fg)}.tabs a[aria-current=page]{color:var(--color-fg);border-bottom-color:var(--color-fg)}.tabs a .count{font-family:var(--font-mono);font-size:var(--text-xs)}.switch{align-items:center;gap:var(--space-2);min-height:var(--control-h);cursor:pointer;font-size:var(--text-sm);padding:0 var(--space-2);color:var(--color-fg);background:0 0;border:0;font-family:inherit;display:inline-flex}.switch .track{border-radius:var(--radius-round);background:var(--color-surface);width:36px;height:22px;box-shadow:inset 0 0 0 1px var(--color-border-strong);transition:background var(--duration-fast) var(--ease);position:relative}.switch .track:after{content:"";background:var(--color-border-strong);width:16px;height:16px;transition:transform var(--duration-base) var(--ease);border-radius:50%;position:absolute;top:3px;left:3px}.switch[aria-checked=true] .track{background:var(--sf-ink);box-shadow:none}.switch[aria-checked=true] .track:after{background:var(--sf-lime);transform:translate(14px)}.chip-toggle{align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);font:var(--weight-medium) var(--text-sm)/1 var(--font-body);color:var(--color-muted);cursor:pointer;display:inline-flex}.chip-toggle[aria-pressed=true]{color:var(--color-fg);border-color:var(--color-fg)}.chip-toggle .box{border:1.5px solid;border-radius:2px;place-items:center;width:16px;height:16px;display:grid}.chip-toggle .box .icon{stroke-width:3px;visibility:hidden;width:12px;height:12px}.chip-toggle[aria-pressed=true] .box{background:var(--sf-ink);border-color:var(--sf-ink);color:var(--sf-lime)}.chip-toggle[aria-pressed=true] .box .icon{visibility:visible}.combo{position:relative}.combo-btn{align-items:center;gap:var(--space-2);min-height:var(--control-h);padding:0 var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);font:var(--weight-medium) var(--text-sm)/1 var(--font-body);color:var(--color-fg);cursor:pointer;white-space:nowrap;display:inline-flex}.combo-btn .combo-label{color:var(--color-muted);font-weight:var(--weight-regular)}.combo-btn:hover{border-color:var(--color-fg)}.combo.block .combo-btn{justify-content:flex-start;width:100%}.combo.block .combo-btn .icon:last-child{margin-left:auto}.combo-pop{z-index:var(--z-pop);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);width:max(100%,260px);max-width:calc(100vw - 32px);box-shadow:var(--shadow-pop);padding:var(--space-2);display:none;position:absolute;top:calc(100% + 6px);left:0}.combo.open .combo-pop{animation:pop-in var(--duration-fast) var(--ease);display:block}.combo-pop.align-right{left:auto;right:0}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}.combo-pop .input{margin-bottom:var(--space-2);font-size:var(--text-sm)}.combo-list{max-height:260px;margin:0;padding:0;list-style:none;overflow-y:auto}.combo-list li{align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-2);border-radius:var(--radius-control);cursor:pointer;font-size:var(--text-sm);display:flex}.combo-list li .tick{visibility:hidden;width:16px;height:16px;color:var(--color-accent)}.combo-list li[aria-selected=true] .tick{visibility:visible}.combo-list li.active,.combo-list li:hover{background:var(--color-well)}.combo-list li .hint{color:var(--color-muted);font-size:var(--text-xs);margin-left:auto}.combo-empty{padding:var(--space-3) var(--space-2);color:var(--color-muted);font-size:var(--text-sm)}.combo-foot{border-top:1px solid var(--color-border);margin-top:var(--space-2);padding-top:var(--space-2);justify-content:space-between;display:flex}.pill{height:26px;padding:0 var(--space-2) 0 6px;border-radius:var(--radius-chip);font:var(--weight-medium) var(--text-xs)/1 var(--font-body);white-space:nowrap;background:var(--color-well);color:var(--color-fg);align-items:center;gap:6px;display:inline-flex}.pill .icon{width:15px;height:15px}.pill.ok{background:var(--color-success-tint);color:var(--color-success)}.pill.warn{background:var(--color-warning-tint);color:var(--color-warning)}.pill.bad{background:var(--color-danger-tint);color:var(--color-danger)}.pill.none{background:var(--color-well);color:var(--color-muted)}.pill.paused{color:var(--color-fg);box-shadow:inset 0 0 0 1px var(--color-border-strong);background:0 0}.pill.role{background:var(--sf-ink);color:var(--sf-white)}.chip.role-chip{font-family:var(--font-body);gap:6px}.chip.role-chip code{color:var(--color-muted)}.chip{border-radius:var(--radius-chip);background:var(--color-well);height:24px;font:var(--weight-regular) var(--text-xs)/1 var(--font-mono);color:var(--color-fg);white-space:nowrap;align-items:center;padding:0 6px;display:inline-flex}.t-ok{color:var(--color-success)}.t-warn{color:var(--color-warning)}.t-bad{color:var(--color-danger)}.t-none,.t-paused{color:var(--color-muted)}.fleet{border-radius:var(--radius-card);padding:var(--space-5) var(--space-6) var(--space-4);margin-bottom:var(--space-8)}.fleet-summary{font-size:var(--text-base);margin-bottom:var(--space-4)}.fleet-summary strong{font-weight:var(--weight-strong)}.ribbon{grid-template-columns:repeat(8,minmax(0,1fr));gap:3px;display:grid}.seg-cell{gap:var(--space-1);color:var(--color-fg);padding:0 0 var(--space-2);border-radius:var(--radius-chip);min-height:44px;text-decoration:none;display:grid}.seg-cell .bar{background:var(--color-border);height:10px}.seg-cell.ok .bar{background:var(--color-success)}.seg-cell.warn .bar{background:var(--color-warning)}.seg-cell.bad .bar{background:var(--color-danger)}.seg-cell.paused .bar{background:var(--sf-muted)}.seg-cell.none .bar{background:repeating-linear-gradient(135deg, var(--color-border-strong) 0 2px, transparent 2px 6px);box-shadow:inset 0 0 0 1px var(--color-border-strong)}.seg-cell .id{font-family:var(--font-mono);font-size:var(--text-xs);align-items:center;gap:var(--space-1);padding:0 2px;display:flex}.seg-cell .word{font-size:var(--text-xs);color:var(--color-muted);padding:0 2px}.seg-cell .icon{width:14px;height:14px}.seg-cell:hover .id{text-underline-offset:3px;text-decoration:underline}@media (width<=767px){.ribbon{row-gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.fleet{padding:var(--space-4)}}.strip{border-top:1px solid var(--color-border);margin-top:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.strip-item{gap:var(--space-3);padding:var(--space-3) var(--space-4) 0 0;align-items:flex-start;min-width:0;display:flex}.strip-item+.strip-item{border-left:1px solid var(--color-border);padding-left:var(--space-4)}.strip-item .icon{margin-top:2px}.strip-item .k{font-size:var(--text-xs);color:var(--color-muted)}.strip-item .k.nowrap{white-space:nowrap}.strip-item .v{font-size:var(--text-sm);font-weight:var(--weight-medium)}@media (width<=1099px){.strip{grid-template-columns:repeat(2,minmax(0,1fr))}.strip-item:nth-child(3){border-left:0;padding-left:0}.strip-item:nth-child(n+3){border-top:1px solid var(--color-border);margin-top:var(--space-3)}}.table-wrap{border-top:1px solid var(--color-border);position:relative;overflow-x:auto}table.t{border-collapse:collapse;width:100%;font-size:var(--text-sm)}table.t th{text-align:left;font-weight:var(--weight-medium);color:var(--color-muted);font-size:var(--text-xs);padding:0 var(--space-3);border-bottom:1px solid var(--color-border);white-space:nowrap;background:var(--color-bg);height:44px;position:sticky;top:0}table.t td{padding:var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:top}table.t tbody tr:hover{background:var(--color-well)}table.t .r{text-align:right}table.t td.r,.num{font-family:var(--font-mono);font-size:var(--text-xs)}table.t td.r{padding-top:14px}table.t .nowrap,table.t td.mono{white-space:nowrap}table.t td.mono{padding-top:14px}table.t th.r .sort{justify-content:flex-end}table.t th:first-child,table.t td:first-child{padding-left:0}.sort{align-items:center;gap:var(--space-1);min-width:44px;min-height:44px;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;width:100%;padding:0;display:inline-flex}.sort:hover{color:var(--color-fg)}.sort .icon{width:14px;height:14px}table.t th[aria-sort] .sort{color:var(--color-fg)}.cell-main{font-weight:var(--weight-medium)}.cell-sub{color:var(--color-muted);font-size:var(--text-xs)}.sticky-col{background:var(--color-bg);z-index:1;position:sticky;left:0}table.t tbody tr:hover .sticky-col{background:var(--color-well)}.tfoot td{font-weight:var(--weight-medium);border-bottom:0}.projects{border-top:1px solid var(--color-border)}.p-head,.p-row{gap:var(--space-3);padding:var(--space-3) var(--space-2);grid-template-columns:minmax(0,2.6fr) minmax(104px,1fr) minmax(0,.7fr) minmax(0,1.1fr) minmax(0,1.25fr) minmax(0,.7fr) minmax(0,.8fr) 92px;align-items:start;display:grid}.p-head{border-bottom:1px solid var(--color-border);color:var(--color-muted);font-size:var(--text-xs);align-items:center;min-height:40px;padding-top:0;padding-bottom:0}.p-head .r,.p-row .r{text-align:right;justify-self:end}.p-row{border-bottom:1px solid var(--color-border);font-size:var(--text-sm);transition:background var(--duration-fast) var(--ease)}.p-row:hover{background:var(--color-well)}.p-row .k{display:none}.p-name{gap:0;min-width:0;display:grid}.p-name .title{font-weight:var(--weight-strong);font-size:var(--text-sm);color:var(--color-fg);min-height:var(--control-h);align-items:center;text-decoration:none;display:inline-flex}.p-name .title:hover{text-underline-offset:3px;text-decoration:underline}.p-name .meta{gap:0 var(--space-2);padding-bottom:var(--space-1);flex-wrap:wrap;align-items:center;display:flex}.p-name .meta .pill,.p-name .meta .chip{margin:9px 0}.p-name .meta .chip,.p-name .meta .pill,.p-name .meta .title{flex:none;max-width:100%}.p-name .host{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);overflow-wrap:anywhere;-webkit-hyphens:none;hyphens:none}.p-val{justify-items:start;gap:2px;padding-top:9px;display:grid}.p-val.r{justify-items:end}.p-val .main{font-weight:var(--weight-medium)}.p-val .main.num{font-size:var(--text-sm);font-weight:var(--weight-medium)}.p-val .sub{color:var(--color-muted);font-size:var(--text-xs)}.p-val .sub.mono{font-size:var(--text-xs)}.p-open{justify-self:end}.p-open .muted{font-size:var(--text-xs);min-height:var(--control-h);align-items:center;display:inline-flex}.p-note{color:var(--color-muted);font-size:var(--text-sm);grid-column:3/-1;align-self:start;max-width:72ch;padding-top:10px}.ctr-bar{gap:2px;display:flex}.ctr-bar i{background:var(--color-success);width:8px;height:14px}.ctr-bar i.off{box-shadow:inset 0 0 0 1.5px var(--color-danger);background:0 0}.ctr-bar.paused i{background:var(--color-muted)}.ctr-bar.paused i.off{box-shadow:inset 0 0 0 1.5px var(--color-muted);background:0 0}@media (width<=1099px){.p-head{display:none}.p-row{gap:var(--space-3) var(--space-4);padding:var(--space-4) 0;grid-template-columns:repeat(3,minmax(0,1fr))}.p-row .p-name{grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto}.p-row .p-name>*{grid-column:1}.p-row .p-name>.cell-sub{grid-column:1/-1}.p-row .p-open{display:none}.p-row .p-name>.open-inline{grid-area:1/2/span 2;align-self:center;display:inline-flex}.p-row .k{font-size:var(--text-xs);color:var(--color-muted);display:block}.p-row .r,.p-head .r{text-align:left;justify-self:start}.p-val{padding-top:0}.p-val.r{justify-items:start}.p-note{grid-column:1/-1;padding-top:0}}.p-name .open-inline{display:none}@media (width<=767px){.p-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.banner{gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-card);border:1px solid var(--color-border);font-size:var(--text-sm);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:flex-start;display:flex}.banner .icon{margin-top:2px}.banner .body{flex:280px;gap:2px;display:grid}.banner.bad{border-color:var(--color-danger);background:var(--color-danger-tint)}.banner.bad>.icon{color:var(--color-danger)}.banner.warn{border-color:var(--color-warning);background:var(--color-warning-tint)}.banner.warn>.icon{color:var(--color-warning)}.banner.info{background:var(--color-well);border-color:var(--color-well)}.banner.paused{border-color:var(--color-border-strong);background:0 0}.state{text-align:center;justify-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-4);color:var(--color-muted);font-size:var(--text-sm);border-bottom:1px solid var(--color-border);display:grid}.state .icon{width:24px;height:24px;color:var(--color-muted)}.state h3{color:var(--color-fg)}.state p{max-width:52ch}.state .btn{margin-top:var(--space-2)}.state.error .icon{color:var(--color-danger)}.state code{background:var(--color-well);border-radius:var(--radius-chip);color:var(--color-fg);padding:2px 6px}.skel{background:var(--color-skeleton);border-radius:var(--radius-chip);height:12px;animation:1.4s ease-in-out infinite pulse}.skel.h20{height:20px}.skel.h28{height:28px}.skel.w30{width:30%}.skel.w40{width:40%}.skel.w50{width:50%}.skel.w60{width:60%}.skel.w70{width:70%}.skel.w80{width:80%}.on-ink .skel{background:var(--color-surface)}@keyframes pulse{50%{opacity:.55}}.stats{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat{padding:var(--space-4) var(--space-4) var(--space-4) 0;gap:var(--space-1);align-content:start;min-width:0;display:grid}.stat+.stat{border-left:1px solid var(--color-border);padding-left:var(--space-4)}.stat .label{font-size:var(--text-xs);color:var(--color-muted)}.stat .value{font-family:var(--font-body);font-size:var(--text-xl);font-weight:var(--weight-strong);letter-spacing:-.03em;line-height:1.1}.stat .delta{font-size:var(--text-xs);color:var(--color-muted);align-items:center;gap:2px;display:inline-flex}.stat .delta .icon{width:14px;height:14px}.stat .spark{margin-top:var(--space-1)}@media (width<=1099px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat:nth-child(3){border-left:0;padding-left:0}.stat:nth-child(n+3){border-top:1px solid var(--color-border)}}.chart{position:relative}.chart-title{align-items:baseline;gap:var(--space-1) var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.chart-title h3{font-size:var(--text-sm);font-family:var(--font-body);font-weight:var(--weight-strong);letter-spacing:0}.chart-title .now{font-size:var(--text-xs);color:var(--color-muted)}.plot{border-bottom:1px solid var(--color-border-strong);height:160px;margin-left:44px;margin-right:6px;position:relative}.plot.tall{height:220px}.plot svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.plot:focus-visible{outline-offset:6px}.gridline{stroke:var(--chart-grid);stroke-width:1px;vector-effect:non-scaling-stroke}.gridline.alert{stroke:var(--color-danger);stroke-dasharray:4 4}.yl{text-align:right;width:38px;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--chart-axis);position:absolute;left:-44px;transform:translateY(-50%)}.xl{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--chart-axis);white-space:nowrap;position:absolute;top:calc(100% + 4px);transform:translate(-50%)}.xl.first{transform:none}.xl.last{transform:translate(-100%)}.ln{fill:none;stroke-width:2px;vector-effect:non-scaling-stroke;stroke-linejoin:round;stroke-linecap:round}.ln.dash{stroke-dasharray:5 4}.s1{stroke:var(--chart-1);color:var(--chart-1)}.s2{stroke:var(--chart-2);color:var(--chart-2)}.s3{stroke:var(--chart-3);color:var(--chart-3)}.s4{stroke:var(--chart-4);color:var(--chart-4)}.s5{stroke:var(--chart-5);color:var(--chart-5)}.sd{stroke:var(--color-danger);color:var(--color-danger)}.area{stroke:var(--color-bg);stroke-width:1px;vector-effect:non-scaling-stroke}.area.s1{fill:var(--chart-1)}.area.s2{fill:var(--chart-2)}.area.s3{fill:var(--chart-3)}.area.s4{fill:var(--chart-4)}.area.s5{fill:var(--chart-5)}.bar-rect{stroke:none}.bar-rect.s1{fill:var(--chart-1)}.bar-rect.sd{fill:var(--color-danger)}.crosshair{background:var(--color-fg);opacity:.35;pointer-events:none;width:1px;display:none;position:absolute;top:0;bottom:0}.dot-now{width:8px;height:8px;box-shadow:0 0 0 2px var(--color-bg);pointer-events:none;background:currentColor;border-radius:50%;position:absolute;transform:translate(-50%,-50%)}.tip{z-index:5;pointer-events:none;background:var(--color-surface);color:var(--color-fg);border:1px solid var(--color-border);box-shadow:var(--shadow-pop);border-radius:var(--radius-control);padding:var(--space-2) var(--space-3);font-size:var(--text-xs);white-space:nowrap;font-variant-numeric:tabular-nums;gap:2px;display:none;position:absolute;top:4px}.tip .sw{vertical-align:middle;background:currentColor;width:10px;height:3px;margin-right:6px;display:inline-block}.end-labels{width:64px;position:absolute;top:0;bottom:0;left:calc(100% + 8px)}.end-labels span{font-size:var(--text-xs);font-weight:var(--weight-strong);white-space:nowrap;position:absolute;transform:translateY(-50%)}.plot.has-end{margin-right:72px}.chart-foot{margin-top:var(--space-6);gap:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--color-muted);flex-wrap:wrap;align-items:center;display:flex}.legend{gap:var(--space-1) var(--space-4);font-size:var(--text-xs);color:var(--color-fg);flex-wrap:wrap;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{background:currentColor;width:14px;height:3px}.legend i.box{width:10px;height:10px}.legend i.dash{background:repeating-linear-gradient(90deg,currentColor 0 4px,#0000 4px 7px)}details.as-table{margin-top:var(--space-2)}details.as-table summary{align-items:center;gap:var(--space-1);min-height:var(--control-h);cursor:pointer;font-size:var(--text-xs);color:var(--color-fg);text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px;list-style:none;display:inline-flex}details.as-table summary::-webkit-details-marker{display:none}details.as-table summary .icon{width:14px;height:14px}details.as-table .table-wrap{max-height:280px;overflow:auto}.charts-3{gap:var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=1099px){.charts-3{gap:var(--space-6);grid-template-columns:minmax(0,1fr)}}.spark{width:120px;height:30px;display:block;overflow:visible}.spark.w-full{width:100%}.spark .ln{stroke-width:1.6px}.spark-dot{fill:currentColor}.chart-skel{border-bottom:1px solid var(--color-border);height:160px;margin-left:44px;position:relative}.chart-skel:before{content:"";background:var(--color-skeleton);clip-path:polygon(0 60%,15% 40%,30% 55%,45% 20%,60% 45%,75% 10%,90% 35%,100% 25%,100% 100%,0 100%);animation:1.4s ease-in-out infinite pulse;position:absolute;inset:40% 0 30%}.hbars{gap:var(--space-3) var(--space-3);font-size:var(--text-sm);grid-template-columns:auto minmax(60px,1fr) auto;align-items:center;display:grid}.hbar{display:contents}.hbar .track{background:var(--color-well);height:12px;position:relative}.hbar .fill{background:currentColor;position:absolute;inset:0 auto 0 0}.hbar .val{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-fg);min-width:0}.mix{background:var(--color-well);gap:1px;width:140px;height:10px;display:flex;overflow:hidden}.mix i{background:currentColor;height:100%;display:block}.grid-2{gap:var(--space-8);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.grid-2-1{gap:var(--space-8);grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);display:grid}@media (width<=1099px){.grid-2,.grid-2-1{grid-template-columns:minmax(0,1fr)}}.panel{border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-5);background:var(--color-surface)}.dl{border-top:1px solid var(--color-border);font-size:var(--text-sm);grid-template-columns:minmax(120px,13rem) minmax(0,1fr);margin:0;display:grid}.dl dt,.dl dd{padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);margin:0}.dl dt{color:var(--color-muted)}@media (width<=767px){.dl{grid-template-columns:minmax(0,1fr)}.dl dt{border-bottom:0;padding-bottom:0}.dl dd{padding-top:var(--space-1)}}.proj-head{gap:var(--space-3);margin-bottom:var(--space-5);display:grid}.proj-head .titles{align-items:center;gap:var(--space-2) var(--space-3);flex-wrap:wrap;display:flex}.proj-head .links{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.proj-head .facts{gap:0 var(--space-6);font-size:var(--text-sm);color:var(--color-muted);flex-wrap:wrap;display:flex}.proj-head .facts .link{font-family:var(--font-mono);font-size:var(--text-xs)}.back{align-items:center;gap:var(--space-1);min-height:var(--control-h);color:var(--color-muted);font-size:var(--text-sm);margin-bottom:var(--space-1);text-decoration:none;display:inline-flex}.back:hover{color:var(--color-fg)}.back .icon{transform:rotate(180deg)}.checklist{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.checklist li{gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-sm);grid-template-columns:24px minmax(0,1fr) auto;align-items:start;display:grid}.checklist li .icon{margin-top:2px}.checklist li .what{font-weight:var(--weight-medium)}.checklist li .detail{color:var(--color-muted);font-size:var(--text-xs)}@media (width<=767px){.checklist li{grid-template-columns:24px minmax(0,1fr)}.checklist li>:last-child{grid-column:2}}.toolbar{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.toolbar .spacer{flex:1 1 0}.toolbar-2{gap:var(--space-2) var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.live{align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--color-muted);display:inline-flex}.live .pulse{background:var(--color-success);width:8px;height:8px;animation:ring 2s var(--ease) infinite;border-radius:50%}.live.paused .pulse{background:var(--color-border-strong);animation:none}@keyframes ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--color-success) 45%, transparent)}70%,to{box-shadow:0 0 0 7px #0000}}.logs{border-top:1px solid var(--color-border);font-size:var(--text-sm)}.log{gap:var(--space-3);padding:var(--space-2) var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:112px 64px minmax(120px,170px) 96px minmax(0,1fr);align-items:start;display:grid}.log:hover{background:var(--color-well)}.log .ts{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);padding-top:3px}.log .svc{font-family:var(--font-mono);font-size:var(--text-xs);overflow-wrap:anywhere;padding-top:3px}.log .src{font-size:var(--text-xs);color:var(--color-muted);align-items:center;gap:4px;padding-top:2px;display:inline-flex}.log .src .icon{width:14px;height:14px}.log .msg{font-family:var(--font-mono);font-size:var(--text-xs);white-space:pre-wrap;overflow-wrap:anywhere;min-width:0;line-height:1.6}.log .msg .more{font-family:var(--font-body)}.lvl-tag{border-radius:var(--radius-chip);height:22px;font:var(--weight-medium) var(--text-xs)/1 var(--font-mono);align-items:center;padding:0 6px;display:inline-flex}.lvl-tag.error{background:var(--color-danger-tint);color:var(--color-danger)}.lvl-tag.warn{background:var(--color-warning-tint);color:var(--color-warning)}.lvl-tag.info{background:var(--color-well);color:var(--color-fg)}.lvl-tag.debug{color:var(--color-muted);box-shadow:inset 0 0 0 1px var(--color-border);background:0 0}.log.fresh{animation:fresh 1.6s var(--ease)}@keyframes fresh{0%{background:color-mix(in srgb, var(--sf-lime) 45%, transparent)}to{background:0 0}}.btn-more{color:var(--color-fg);text-underline-offset:3px;font:var(--weight-strong) var(--text-xs)/1 var(--font-body);cursor:pointer;background:0 0;border:0;min-width:44px;min-height:44px;padding:0;text-decoration:underline}.btn-more:hover{text-decoration-thickness:2px}.logs-foot{padding:var(--space-4) 0;justify-content:center;display:flex}@media (width<=1099px){.log{gap:var(--space-1) var(--space-3);padding:var(--space-3) 0;grid-template-columns:auto auto auto minmax(0,1fr)}.log .msg{grid-column:1/-1}.log .src{justify-self:end}}.cred{gap:var(--space-4);display:grid}.cred-head{gap:var(--space-2) var(--space-4);min-height:var(--control-h);flex-wrap:wrap;align-items:center;display:flex}.cred-head h3{font-size:var(--text-base)}.field{gap:var(--space-3);padding:var(--space-2) 0;border-top:1px solid var(--color-border);font-size:var(--text-sm);grid-template-columns:110px minmax(0,1fr) auto;align-items:center;display:grid}.field .name{color:var(--color-muted)}.field .val{font-family:var(--font-mono);font-size:var(--text-xs);align-items:center;gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;min-width:0;min-height:32px;display:flex}.field .val.masked{letter-spacing:2px;color:var(--color-muted)}.field .val .timer{font-family:var(--font-body);color:var(--color-muted);letter-spacing:0}.field .btns{gap:var(--space-1);display:flex}@media (width<=767px){.field{grid-template-columns:minmax(0,1fr) auto}.field .name{grid-column:1/-1}}.never{gap:var(--space-3);font-size:var(--text-sm);color:var(--color-muted);padding:var(--space-3) var(--space-4);background:var(--color-well);border-radius:var(--radius-card);align-items:flex-start;display:flex}.never .icon{color:var(--color-fg);margin-top:2px}.cmd{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-1) var(--space-1) var(--space-4);background:var(--color-well);border-radius:var(--radius-control);font-family:var(--font-mono);font-size:var(--text-xs);display:flex}.cmd code{overflow-wrap:anywhere;padding:var(--space-2) 0;flex:1}.person{gap:2px;min-width:0;display:grid}.person .nm{font-weight:var(--weight-strong);gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.person .em{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);white-space:nowrap}.person-cell{min-width:250px}.person a.nm{color:var(--color-fg);min-height:28px;text-decoration:none}.person a.nm:hover{text-underline-offset:3px;text-decoration:underline}.roles-line{gap:var(--space-1);flex-wrap:wrap;display:flex}.role-list{gap:var(--space-1);font-size:var(--text-sm);margin:0;padding:0;list-style:none;display:grid}.role-list li{gap:2px var(--space-2);flex-wrap:wrap;align-items:baseline;display:flex}.role-list .nm{font-weight:var(--weight-medium)}.role-list code{font-size:var(--text-xs);color:var(--color-muted)}.role-list .muted{font-size:var(--text-xs);flex-basis:100%}.role-rows{border-top:1px solid var(--color-border)}.role-row{gap:var(--space-2) var(--space-4);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) minmax(220px,280px);align-items:center;display:grid}.role-row .role-app{gap:2px;display:grid}.role-row .role-app .nm{font-weight:var(--weight-medium);font-size:var(--text-sm)}.role-row .role-app .sub{font-size:var(--text-xs);color:var(--color-muted)}@media (width<=767px){.role-row{grid-template-columns:minmax(0,1fr)}}.person-head{align-items:center;gap:var(--space-3) var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.person-head .em{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted)}.save-bar{gap:var(--space-2);margin-top:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.danger-zone{border:1px solid var(--color-danger);border-radius:var(--radius-card);padding:var(--space-4) var(--space-5);gap:var(--space-3) var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.danger-zone .body{font-size:var(--text-sm);flex:320px;gap:2px;display:grid}.danger-zone .body p{color:var(--color-muted)}.danger-zone.restore{border-color:var(--color-border-strong)}dialog.dlg{border-radius:var(--radius-card);box-shadow:var(--shadow-pop);width:min(460px,100vw - 32px);color:var(--color-fg);background:var(--color-surface);border:0;padding:0}dialog.dlg::backdrop{background:var(--color-scrim)}.dlg-body{padding:var(--space-6);gap:var(--space-3);display:grid}.dlg-body p{font-size:var(--text-sm);color:var(--color-muted)}.dlg-body ul{padding-left:var(--space-5);font-size:var(--text-sm);color:var(--color-muted);gap:var(--space-1);margin:0;display:grid}.dlg-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.auth{grid-template-columns:minmax(300px,5fr) minmax(0,7fr);min-height:100vh;display:grid}.auth-side{padding:var(--space-8) var(--space-10);gap:var(--space-8);flex-direction:column;display:flex}.auth-side .tagline{margin-top:var(--space-16)}.auth-side .foot{margin-top:auto}.auth-side .brand{padding:0}.auth-side .tagline{font-size:var(--text-xl);font-weight:var(--weight-medium);letter-spacing:var(--track-h1);max-width:16ch;line-height:1.15}.auth-side .apps-list{gap:var(--space-2);font-size:var(--text-sm);color:var(--color-muted);margin:0;padding:0;list-style:none;display:grid}.auth-side .apps-list li{gap:var(--space-2);align-items:center;display:flex}.auth-side .apps-list .dot{background:var(--color-accent);flex:none;width:6px;height:6px;transform:rotate(45deg)}.auth-side .foot{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted)}.auth-main{padding:var(--space-12) var(--space-6);place-items:center;display:grid}.auth-card{gap:var(--space-5);width:min(440px,100%);display:grid}.auth-card h1{font-size:var(--text-xl)}.auth-card .lede{color:var(--color-muted);max-width:52ch}.auth-card .state-icon{width:28px;height:28px}.auth-card .facts{font-size:var(--text-xs);color:var(--color-muted);border-top:1px solid var(--color-border);padding-top:var(--space-4);gap:var(--space-1);display:grid}.auth-card form{gap:var(--space-4);display:grid}.auth-card .addr{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-fg);overflow-wrap:anywhere}.auth-card .countdown{font-size:var(--text-xs);color:var(--color-muted)}.handoff{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);font-size:var(--text-sm);display:grid}.handoff .row-k{color:var(--color-muted);font-size:var(--text-xs)}.handoff .url{font-family:var(--font-mono);font-size:var(--text-xs);overflow-wrap:anywhere}.progress{background:var(--color-well);height:3px;overflow:hidden}.progress i{background:var(--sf-ink);width:40%;height:100%;animation:slide 1.1s var(--ease) infinite;display:block}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(260%)}}@media (width<=767px){.auth{grid-template-columns:minmax(0,1fr);min-height:0}.auth-side{padding:var(--space-3) var(--space-4);gap:var(--space-3)}.auth-side .tagline,.auth-side .apps-list,.auth-side .foot{display:none}.auth-main{padding:var(--space-8) var(--space-4) var(--space-12);place-items:start center}}.member-top{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-6);flex-wrap:wrap;min-height:64px;display:flex}.member-top .who{font-size:var(--text-sm);color:var(--color-muted);overflow-wrap:anywhere;margin-left:auto}.member-page{max-width:880px;padding:var(--space-8) var(--space-6) var(--space-16);margin:0 auto}.app-list{border-top:1px solid var(--color-border);margin:0;padding:0;list-style:none}.app-list li{gap:var(--space-2) var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.app-list .nm{font-weight:var(--weight-strong)}.app-list .sub{font-size:var(--text-xs);color:var(--color-muted);gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-top:2px;display:flex}.app-list .sub .host{font-family:var(--font-mono)}@media (width<=767px){.member-top{padding:var(--space-2) var(--space-4)}.member-top .who{width:100%;margin-left:0}.member-page{padding:var(--space-6) var(--space-4) var(--space-12)}}.mail-page{max-width:1240px;padding:var(--space-6) var(--space-6) var(--space-16);margin:0 auto}.mail-grid{gap:var(--space-6);grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:start;display:grid}@media (width<=1099px){.mail-grid{grid-template-columns:minmax(0,1fr)}}@media (width<=767px){.mail-page{padding:var(--space-4) var(--space-4) var(--space-12)}}.envelope{border:1px solid var(--color-border);border-radius:var(--radius-card) var(--radius-card) 0 0;background:var(--color-surface);padding:var(--space-3) var(--space-4);gap:var(--space-1) var(--space-3);font-size:var(--text-sm);grid-template-columns:72px minmax(0,1fr);display:grid}.envelope dt{color:var(--color-muted)}.envelope dd{overflow-wrap:anywhere;margin:0}.mail-frame{border:1px solid var(--color-border);background:var(--color-surface);border-top:0;width:100%;height:760px;display:block}.mail-text{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);font:var(--weight-regular) var(--text-xs)/1.7 var(--font-mono);white-space:pre-wrap;overflow-wrap:anywhere;margin:0}html [data-sileo-viewport]{z-index:200}html [data-sileo-title]{text-transform:none}html [data-sileo-viewport][data-theme=light] [data-sileo-description]{color:var(--toast-text-muted)}.app.bare{grid-template-columns:minmax(0,1fr)}.app.bare .rail,.app.bare .topbar,.app.bare .scrim{display:none}.rail-foot .signout{justify-content:flex-start}@media (width<=1099px) and (width>=768px){.rail-foot .signout{justify-content:center}}input[type=search]::-webkit-search-cancel-button{appearance:none}button.link{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.page-loading{min-height:60vh;color:var(--color-muted);font-size:var(--text-sm);place-items:center;gap:var(--space-2);display:grid}.field .val.unset{color:var(--color-muted);letter-spacing:0;font-family:var(--font-body)}.state .btn-row{gap:var(--space-2);flex-wrap:wrap;justify-content:center;display:flex}.auth-card .addr.lg{font-size:var(--text-base)}
