/*! fin1te design system 1.0.0 | https://ds.fin1te.com */
@layer tokens,base,components,diagram;@layer tokens{:root{--font-sans:'Mona Sans Variable',ui-sans-serif,system-ui,sans-serif;--font-mono:'IBM Plex Mono',ui-monospace,'SFMono-Regular',Menlo,monospace;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--radius-xs:0.1875rem;--radius-sm:0.25rem;--radius:0.375rem;--radius-lg:0.5rem;--radius-xl:0.625rem;--radius-2xl:0.75rem;--radius-full:999px;--ease:cubic-bezier(0.2,0.7,0.1,1);--dur-fast:0.15s;--dur:0.2s;--dur-slow:0.45s;--dur-reveal:0.7s;--max:80rem;--gutter:clamp(1.25rem,4vw,2.5rem);--prose:68ch;--z-sticky:10;--z-header:50;--z-menu:40;--z-dialog:55;--z-toast:60;--bg:#f6f5f1;--bg-sunk:#efede7;--surface:#fdfcfa;--ink:#141413;--ink-2:#3d3d3a;--muted:#6b6a65;--faint:#9c9a93;--rule:#dfddd6;--rule-strong:#c9c6bd;--accent:#6e56cf;--accent-ink:#5b3fc4;--accent-wash:#eeeafc;--amber:#d97706;--amber-ink:#b45309;--amber-wash:#fbf0dc;--pink:#d6409f;--ok:#1f8a4c;--warn:#d97706;--down:#dc2626;--t-purple:#6e56cf;--w-purple:#eeeafc;--t-amber:#d97706;--w-amber:#fbf0dc;--t-green:#1f8a4c;--w-green:#e2f3e8;--t-blue:#2563eb;--w-blue:#e6eefd;--t-red:#dc2626;--w-red:#fbe8e8;--t-teal:#0f8a86;--w-teal:#dff3f1;--t-pink:#c2418a;--w-pink:#fbe7f2;--s-work:#6e56cf;--s-personal:#c96a04;--grid-line:rgba(20,20,19,0.06);--grid-dot:rgba(20,20,19,0.07);--shadow:0 1px 2px rgba(20,20,19,0.04),0 6px 20px -8px rgba(20,20,19,0.14);--shadow-lg:0 1.5rem 3.75rem -0.75rem rgba(0,0,0,0.35);color-scheme:light}:root[data-theme='dark']{--bg:#0e0e0d;--bg-sunk:#0a0a09;--surface:#151514;--ink:#eeede8;--ink-2:#c9c8c1;--muted:#94928b;--faint:#65645f;--rule:#262624;--rule-strong:#393935;--accent:#9b85f5;--accent-ink:#b8a7ff;--accent-wash:#1f1a33;--amber:#fbbf24;--amber-ink:#fcd34d;--amber-wash:#2a2111;--pink:#f472b6;--ok:#3ecf7a;--warn:#fbbf24;--down:#f87171;--t-purple:#9b85f5;--w-purple:#1f1a33;--t-amber:#fbbf24;--w-amber:#2a2111;--t-green:#3ecf7a;--w-green:#0f2519;--t-blue:#60a5fa;--w-blue:#0f1c31;--t-red:#f87171;--w-red:#2c1414;--t-teal:#2dd4bf;--w-teal:#0d2523;--t-pink:#f472b6;--w-pink:#2b1321;--s-work:#8a73ee;--s-personal:#c07a1c;--grid-line:rgba(238,237,232,0.055);--grid-dot:rgba(238,237,232,0.06);--shadow:0 1px 2px rgba(0,0,0,0.4),0 8px 24px -8px rgba(0,0,0,0.6);--shadow-lg:0 1.5rem 3.75rem -0.75rem rgba(0,0,0,0.7);color-scheme:dark}}@layer tokens,base,components,diagram;@layer base{*,*::before,*::after{box-sizing:border-box}html{font-size:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:5rem}@media (min-width:1400px){html{font-size:112.5%}}@media (min-width:1800px){html{font-size:125%}}body{margin:0;overflow-x:clip;background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:1rem;line-height:1.6;font-feature-settings:'ss01','cv11';-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}img,svg,canvas,video{display:block;max-width:100%}a{color:inherit;text-decoration-color:var(--rule-strong);text-underline-offset:0.1875rem;text-decoration-thickness:1px;transition:text-decoration-color var(--dur-fast),color var(--dur-fast)}a:hover{text-decoration-color:var(--accent)}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}h1,h2,h3,h4{margin:0;font-weight:600;line-height:1.12;letter-spacing:-0.02em;text-wrap:balance}p{margin:0}button,input,select,textarea{font:inherit;color:inherit}code,kbd,pre,samp{font-family:var(--font-mono)}*{scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.label{font-family:var(--font-mono);font-size:0.7188rem;font-weight:500;letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.kicker{color:var(--accent-ink)}.mono{font-family:var(--font-mono);font-feature-settings:'zero'}.num{font-variant-numeric:tabular-nums}.muted{color:var(--muted)}.faint{color:var(--faint)}.accent{color:var(--accent-ink)}.warm{color:var(--amber-ink)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.rule{border:0;border-top:1px solid var(--rule);margin:0}.section{padding-block:clamp(3.5rem,9vw,7rem);border-top:1px solid var(--rule)}.section-head{display:grid;gap:0.75rem;margin-bottom:clamp(1.75rem,4vw,3rem)}@media (min-width:860px){.section-head{grid-template-columns:13.75rem 1fr;gap:2rem;align-items:baseline}}.section-head h2{font-size:clamp(1.625rem,3.2vw,2.375rem);font-stretch:108%;max-width:22ch}.section-head p:not(.label){color:var(--muted);max-width:60ch;margin-top:0.75rem}.section-head .label,.page-head .label{color:var(--accent-ink)}.page-head{padding-block:clamp(3.5rem,10vw,7.5rem) clamp(2.25rem,5vw,3.5rem)}.page-head h1{font-size:clamp(2rem,3.8vw,2.875rem);font-stretch:112%;font-weight:620;letter-spacing:-0.03em;line-height:1.06;max-width:24ch}.page-head .label + h1{margin-top:0.875rem}.page-head p:not(.label){margin-top:1.25rem;font-size:clamp(1.0625rem,1.6vw,1.1875rem);color:var(--ink-2);max-width:58ch}.grid-bg,.page-head{position:relative;isolation:isolate}.grid-bg::before,.page-head::before{content:'';position:absolute;z-index:-1;inset:0 auto 0 50%;width:100vw;transform:translateX(-50%);background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:3.5rem 3.5rem;background-position:calc(50% + 0.5px) -1px;-webkit-mask-image:radial-gradient(ellipse 70% 75% at 30% 45%,#000 25%,transparent 72%);mask-image:radial-gradient(ellipse 70% 75% at 30% 45%,#000 25%,transparent 72%);pointer-events:none}.page-head::before{-webkit-mask-image:radial-gradient(ellipse 55% 85% at 22% 50%,rgba(0,0,0,0.8) 15%,transparent 70%);mask-image:radial-gradient(ellipse 55% 85% at 22% 50%,rgba(0,0,0,0.8) 15%,transparent 70%)}.grid-box{background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:3.5rem 3.5rem}.dot-grid{background-color:var(--bg);background-image:radial-gradient(var(--grid-dot) 1px,transparent 1px);background-size:1rem 1rem}.grad-text{background:linear-gradient(100deg,var(--accent) 8%,color-mix(in srgb,var(--accent) 45%,var(--pink)) 55%,color-mix(in srgb,var(--amber) 80%,var(--pink)) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-box-decoration-break:clone;box-decoration-break:clone}.prose{max-width:var(--prose);font-size:1.0625rem;line-height:1.7;color:var(--ink-2)}.prose>* + *{margin-top:1.15em}.prose h2{margin-top:2.2em;font-size:1.625rem;font-stretch:106%;color:var(--ink);scroll-margin-top:5.5rem}.prose h3{margin-top:1.8em;font-size:1.25rem;color:var(--ink);scroll-margin-top:5.5rem}.prose h2 + *,.prose h3 + *{margin-top:0.7em}.prose strong{color:var(--accent-ink);font-weight:600}.prose a{color:var(--ink);text-decoration-color:var(--accent)}.prose ul,.prose ol{padding-left:1.3em}.prose li + li{margin-top:0.4em}.prose li::marker{color:var(--faint)}.prose blockquote{margin-inline:0;padding-left:1.125rem;border-left:2px solid var(--accent);color:var(--ink)}.prose hr{border:0;border-top:1px solid var(--rule);margin-block:2.4em}.prose :not(pre)>code{overflow-wrap:anywhere;padding:0.12em 0.35em;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);font-size:0.86em;color:var(--ink)}.prose figure{margin-inline:0}.prose figcaption{margin-top:0.625rem;font-size:0.8125rem;color:var(--muted)}.js [data-reveal]{opacity:0;transform:translateY(0.625rem);transition:opacity var(--dur-reveal) var(--ease),transform var(--dur-reveal) var(--ease)}.js [data-reveal].in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms !important;animation-iteration-count:1 !important;transition-duration:0.01ms !important;scroll-behavior:auto !important}.js [data-reveal]{opacity:1;transform:none}}}@layer components{.i{width:1rem;height:1rem;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.i.lg{width:1.125rem;height:1.125rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;height:2.375rem;padding-inline:0.875rem;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--surface);color:var(--ink);font-size:0.875rem;font-weight:500;line-height:1;white-space:nowrap;text-decoration:none;cursor:pointer;transition:border-color var(--dur-fast),background var(--dur-fast),color var(--dur-fast),transform var(--dur-fast) var(--ease)}.btn:hover{border-color:var(--ink)}.btn:active{transform:translateY(1px)}.btn:disabled,.btn[aria-disabled='true']{opacity:0.4;cursor:default;transform:none}.btn:disabled:hover{border-color:var(--rule-strong)}.btn.sm{height:2rem;padding-inline:0.75rem;font-size:0.8125rem;gap:0.375rem}.btn.xs{height:1.75rem;padding-inline:0.5rem;font-size:0.75rem;gap:0.3125rem;border-radius:0.3125rem}.btn.icon{width:2.375rem;padding:0}.btn.icon.sm{width:2rem}.btn.icon.xs{width:1.75rem}.btn.primary,.btn-primary{background:var(--ink);border-color:var(--ink);color:var(--bg)}.btn.primary:hover,.btn-primary:hover{background:var(--ink-2);border-color:var(--ink-2)}.btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}.btn.accent:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn.ghost{border-color:transparent;background:transparent;color:var(--ink-2)}.btn.ghost:hover{background:var(--bg-sunk);color:var(--ink)}.btn.ghost:disabled:hover{background:transparent}.btn.on,.btn[aria-pressed='true']{background:var(--accent-wash);color:var(--accent-ink);border-color:transparent}.btn.danger{color:var(--down)}.btn.danger:hover{border-color:var(--down)}.btn-row{display:flex;flex-wrap:wrap;gap:0.5rem;align-items:center}.chips{display:flex;flex-wrap:wrap;gap:0.375rem}.chip{display:inline-flex;align-items:center;gap:0.3125rem;height:1.375rem;padding-inline:0.4375rem;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);color:var(--ink-2);font-family:var(--font-mono);font-size:0.7188rem;white-space:nowrap;text-decoration:none;transition:color var(--dur-fast),border-color var(--dur-fast),background var(--dur-fast)}a.chip,button.chip{cursor:pointer}.chip:is(a,button):hover,.chip.hl,.chip.on,.chip[aria-pressed='true']{color:var(--accent-ink);border-color:color-mix(in srgb,var(--accent) 45%,transparent);background:var(--accent-wash)}.chip.warm{color:var(--amber-ink);border-color:color-mix(in srgb,var(--amber) 40%,transparent);background:var(--amber-wash)}.chip.warm:is(a,button):hover,.chip.warm.hl{border-color:var(--amber)}.badge{display:inline-flex;align-items:center;gap:0.25rem;height:1.125rem;padding-inline:0.375rem;border-radius:var(--radius-sm);background:var(--bg-sunk);color:var(--muted);font:500 0.6562rem var(--font-mono);letter-spacing:0.02em;white-space:nowrap}.badge.outline{background:transparent;box-shadow:inset 0 0 0 1px var(--rule-strong)}.badge.accent{background:var(--accent-wash);color:var(--accent-ink)}.badge.warm{background:var(--amber-wash);color:var(--amber-ink)}.badge.ok{background:color-mix(in srgb,var(--ok) 12%,transparent);color:color-mix(in srgb,var(--ok) 75%,var(--ink))}.badge.warn{background:color-mix(in srgb,var(--warn) 14%,transparent);color:color-mix(in srgb,var(--warn) 70%,var(--ink))}.badge.down{background:color-mix(in srgb,var(--down) 11%,transparent);color:var(--down)}.pill{display:inline-flex;align-items:center;gap:0.375rem;padding:0.3125rem 0.625rem;border:1px solid var(--rule);border-radius:var(--radius-full);background:var(--bg);color:var(--ink-2);font-size:0.75rem;cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast)}.pill:hover{border-color:var(--accent);color:var(--accent-ink)}.kbd,.prose kbd{display:inline-block;min-width:1.25em;padding:1px 0.3125rem;border:1px solid var(--rule);border-bottom-color:var(--rule-strong);border-radius:var(--radius-sm);background:var(--surface);color:var(--muted);font:0.6875rem/1.5 var(--font-mono);text-align:center;white-space:nowrap}.kbd.bare{border:0;background:none;padding:0;min-width:0;color:var(--faint);font-size:0.625rem}.fld{display:grid;gap:0.25rem}.fld>span:first-child,.fld>label:first-child{font-size:0.7188rem;color:var(--muted)}.fld .hint{font-size:0.75rem}.fld .err{font-size:0.75rem;color:var(--down)}.two{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem}.inp{width:100%;min-width:0;height:2rem;padding:0 0.5625rem;border:1px solid var(--rule);border-radius:var(--radius);background:var(--bg);color:var(--ink);font:0.8125rem var(--font-sans);outline:none;transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.inp.lg{height:2.375rem;padding-inline:0.75rem;font-size:0.9375rem}.inp::placeholder{color:var(--faint)}.inp:hover{border-color:var(--rule-strong)}.inp:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 16%,transparent)}.inp[aria-invalid='true']{border-color:var(--down)}.inp:disabled{opacity:0.5;cursor:not-allowed}.inp.mono{font-family:var(--font-mono);font-size:0.75rem}textarea.inp{height:auto;padding:0.4375rem 0.5625rem;resize:vertical;line-height:1.45}select.inp{padding-right:1.75rem;appearance:none;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 0.8125rem) 52%,calc(100% - 0.5rem) 52%;background-size:0.3125rem 0.3125rem;background-repeat:no-repeat}.chk{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.8125rem;color:var(--ink-2);cursor:pointer}.chk input{accent-color:var(--accent);margin:0;width:0.875rem;height:0.875rem}.switch{appearance:none;position:relative;flex:none;margin:0;width:1.875rem;height:1.125rem;border-radius:var(--radius-full);background:var(--rule-strong);cursor:pointer;transition:background var(--dur) var(--ease)}.switch::before{content:'';position:absolute;top:0.1875rem;left:0.1875rem;width:0.75rem;height:0.75rem;border-radius:50%;background:var(--surface);box-shadow:0 1px 2px rgba(0,0,0,0.2);transition:transform var(--dur) var(--ease)}.switch:checked{background:var(--accent)}.switch:checked::before{transform:translateX(0.75rem)}.switch:disabled{opacity:0.4;cursor:not-allowed}.seg{display:inline-flex;gap:2px;padding:0.1875rem;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--bg-sunk)}.seg button{appearance:none;border:0;background:transparent;height:1.875rem;padding-inline:0.75rem;border-radius:0.3125rem;font-size:0.8125rem;font-weight:500;color:var(--muted);white-space:nowrap;cursor:pointer;transition:color var(--dur-fast),background var(--dur-fast),box-shadow var(--dur-fast)}.seg button:hover{color:var(--ink)}.seg button:is([aria-pressed='true'],[aria-selected='true'],[aria-checked='true'],.on){background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--rule),0 1px 2px rgba(0,0,0,0.06)}.seg.fill{display:grid;grid-template-columns:repeat(auto-fit,minmax(4rem,1fr));padding:2px;border-radius:0.4375rem;background:var(--bg)}.seg.sm button,.seg.fill button{height:1.625rem;padding-inline:0.375rem;font-size:0.75rem;font-weight:400}.tabs{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none}.tab{position:relative;display:inline-flex;align-items:center;gap:0.25rem;height:1.875rem;padding:0 0.625rem;border:0;border-radius:0.4375rem;background:none;font-size:0.7812rem;color:var(--muted);white-space:nowrap;cursor:pointer;user-select:none;transition:background var(--dur-fast),color var(--dur-fast)}.tab:hover{background:var(--bg-sunk);color:var(--ink)}.tab:is([aria-selected='true'],.on){background:var(--accent-wash);color:var(--accent-ink);font-weight:560}.tab .tx{display:none;place-items:center;width:1.125rem;height:1.125rem;margin-right:-0.25rem;padding:0;border:0;border-radius:var(--radius-sm);background:none;color:inherit;cursor:pointer}.tab .tx .i{width:0.75rem;height:0.75rem}.tab:hover .tx,.tab:is([aria-selected='true'],.on) .tx{display:grid}.tab .tx:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.tabs.line{gap:1.25rem;border-bottom:1px solid var(--rule)}.tabs.line .tab{height:2.25rem;padding:0;border-radius:0;background:none;font-size:0.875rem;box-shadow:inset 0 -2px 0 transparent}.tabs.line .tab:is([aria-selected='true'],.on){color:var(--ink);box-shadow:inset 0 -2px 0 var(--accent);font-weight:500}.card{display:block;padding:1.25rem 1.375rem;border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);color:inherit;text-decoration:none}a.card{transition:border-color var(--dur-fast),transform var(--dur-fast) var(--ease)}a.card:hover{border-color:var(--rule-strong)}a.card:hover h3{color:var(--accent-ink)}.card h3{font-size:1.1875rem;font-stretch:105%;transition:color var(--dur-fast)}.card .label + h3{margin-top:0.5rem}.card p:not(.label){margin-top:0.5rem;color:var(--ink-2);font-size:0.9375rem}.card.sunk{background:var(--bg-sunk)}.card.flat{border-radius:0;border-width:1px 0 0;background:none;padding-inline:0}.cards{display:grid;gap:0.75rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.callout{--c:var(--accent);display:grid;grid-template-columns:auto 1fr;gap:0.625rem;align-items:start;padding:0.875rem 1rem;border:1px solid var(--rule);border-left:2px solid var(--c);border-radius:0 var(--radius) var(--radius) 0;background:var(--surface);font-size:0.9062rem;color:var(--ink-2)}.callout>.i{margin-top:0.1875rem;color:var(--c)}.callout strong{color:var(--ink);font-weight:600}.callout.warm{--c:var(--amber)}.callout.ok{--c:var(--ok)}.callout.down{--c:var(--down)}.callout>:only-child{grid-column:1 / -1}[data-tip]{position:relative}[data-tip]::after{content:attr(data-tip);position:absolute;z-index:var(--z-menu);left:50%;bottom:calc(100% + 0.375rem);padding:0.25rem 0.5rem;border-radius:0.3125rem;background:var(--ink);color:var(--bg);font:400 0.75rem/1.4 var(--font-sans);letter-spacing:0;text-transform:none;white-space:nowrap;opacity:0;transform:translate(-50%,0.1875rem);pointer-events:none;transition:opacity var(--dur-fast),transform var(--dur-fast) var(--ease)}[data-tip][data-tip-pos='bottom']::after{bottom:auto;top:calc(100% + 0.375rem);transform:translate(-50%,-0.1875rem)}[data-tip]:is(:hover,:focus-visible)::after{opacity:1;transform:translate(-50%,0);transition-delay:0.35s}.dropdown{position:relative;display:inline-block}.menu{z-index:var(--z-menu);display:block;width:16.25rem;padding:0.375rem;border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow);max-height:min(70vh,30rem);overflow:auto}.dropdown>.menu{position:absolute;top:calc(100% + 0.375rem);left:0;animation:pop 0.14s var(--ease)}.dropdown>.menu.end{left:auto;right:0}.menu[hidden]{display:none}.menu hr{margin:0.375rem 0.25rem;border:0;border-top:1px solid var(--rule)}.mh{margin:0.5rem 0.5rem 0.25rem;font:500 0.625rem var(--font-mono);letter-spacing:0.06em;text-transform:uppercase;color:var(--faint)}.mi{display:flex;align-items:center;gap:0.625rem;width:100%;padding:0.4375rem 0.5rem;border:0;border-radius:var(--radius);background:none;color:var(--ink-2);font-size:0.8125rem;text-align:left;text-decoration:none;cursor:pointer}.mi:is(:hover,:focus-visible,[data-active]):not(:disabled){background:var(--bg-sunk);color:var(--ink);outline:none}.mi:disabled{opacity:0.4;cursor:default}.mi>span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mi .kbd{border:0;background:none;padding:0;color:var(--faint)}.mi[aria-checked='true']::after{content:'';width:0.375rem;height:0.375rem;border-radius:50%;background:var(--accent)}.mi.danger{color:var(--down)}@keyframes pop{from{opacity:0;transform:translateY(-0.25rem)}}.dlg{width:min(40rem,calc(100vw - 2rem));max-height:calc(100vh - 3rem);padding:0 1.125rem 1.125rem;border:1px solid var(--rule);border-radius:var(--radius-2xl);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg)}.dlg.sm{width:min(26rem,calc(100vw - 2rem))}.dlg[open]{animation:dlg-in 0.18s var(--ease)}.dlg::backdrop{background:rgba(10,10,9,0.35);backdrop-filter:blur(2px)}.dlg-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin:0 -1.125rem 0.875rem;padding:0.875rem 0.75rem 0.75rem 1.125rem;border-bottom:1px solid var(--rule);background:var(--surface)}.dlg-head h4{font-size:0.875rem;font-weight:600;letter-spacing:-0.01em}.dlg-foot{display:flex;justify-content:flex-end;gap:0.5rem;margin-top:1.125rem}@keyframes dlg-in{from{opacity:0;transform:translateY(-0.375rem) scale(0.985)}}.toast{position:fixed;z-index:var(--z-toast);left:50%;bottom:1.25rem;transform:translate(-50%,0.75rem);display:flex;align-items:center;gap:0.5rem;max-width:calc(100vw - 2rem);padding:0.5625rem 0.875rem;border-radius:var(--radius-lg);background:var(--ink);color:var(--bg);font-size:0.8125rem;opacity:0;pointer-events:none;transition:opacity var(--dur),transform var(--dur) var(--ease)}.toast.show{opacity:1;transform:translate(-50%,0)}.toast .i{width:0.875rem;height:0.875rem}.toast.inline{position:static;transform:none;opacity:1;display:inline-flex}.palette{padding:0;border:0;background:transparent;width:min(35rem,calc(100vw - 2rem));margin:14vh auto auto;max-height:none;overflow:visible}.palette::backdrop{background:rgba(10,10,9,0.36);backdrop-filter:blur(2px)}.palette[open] .pbox{animation:dlg-in 0.16s var(--ease)}.pbox{overflow:hidden;border:1px solid var(--rule-strong);border-radius:var(--radius-xl);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-lg)}.pbox input{width:100%;height:3.25rem;padding:0 1.125rem;border:0;border-bottom:1px solid var(--rule);background:transparent;font-size:1rem;color:var(--ink);outline:none}.pbox input::placeholder{color:var(--faint)}.pbox ul{list-style:none;margin:0;padding:0.375rem;max-height:min(22.5rem,50vh);overflow:auto}.pbox [role='option']{display:flex;justify-content:space-between;align-items:center;gap:1rem;height:2.375rem;padding:0 0.75rem;border-radius:var(--radius);font-size:0.875rem;cursor:pointer}.pbox [aria-selected='true']{background:var(--bg-sunk);box-shadow:inset 2px 0 0 var(--accent)}.pbox .ph{overflow:hidden;font:0.7188rem var(--font-mono);color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.pbox .pg{padding:0.625rem 0.75rem 0.25rem;font:0.6562rem var(--font-mono);letter-spacing:0.06em;text-transform:uppercase;color:var(--muted)}.pbox .pe{padding:1.25rem 0.75rem;color:var(--muted);font-size:0.875rem}.pbox .pf{display:flex;gap:1rem;padding:0.5625rem 0.875rem;border-top:1px solid var(--rule);font:0.7188rem var(--font-mono);color:var(--muted)}.pbox .pf kbd{font:inherit;border:1px solid var(--rule);border-radius:var(--radius-xs);padding:0 0.25rem;margin-right:0.1875rem}.table,.prose table{width:100%;border-collapse:collapse;font-size:0.9062rem;font-variant-numeric:tabular-nums}.table th,.prose th{text-align:left;font:500 0.6875rem var(--font-mono);letter-spacing:0.05em;text-transform:uppercase;color:var(--muted)}.table :is(th,td),.prose :is(th,td){padding:0.5625rem 0.75rem 0.5625rem 0;border-bottom:1px solid var(--rule);vertical-align:top}.table :is(th,td).n,.prose :is(td,th):not(:first-child){text-align:right}.table td.n{font-family:var(--font-mono);font-size:0.8125rem}.table code{font-size:0.8125rem;color:var(--accent-ink)}.table.compact{font-size:0.8125rem}.table.compact :is(th,td){padding-block:0.375rem}.table tbody tr:hover td{background:color-mix(in srgb,var(--bg-sunk) 60%,transparent)}.table-wrap{overflow-x:auto}.code{position:relative}.code pre,pre.code{margin:0;padding:1rem 1.125rem;overflow-x:auto;border:1px solid var(--rule);border-radius:var(--radius-lg);background-color:var(--surface) !important;font-size:0.8125rem;line-height:1.6;tab-size:2}.code .copy{position:absolute;top:0.5rem;right:0.5rem;height:1.625rem;padding:0 0.5rem;border:1px solid var(--rule);border-radius:0.3125rem;background:var(--bg);font:0.7188rem var(--font-mono);color:var(--muted);cursor:pointer;opacity:0;transition:opacity var(--dur-fast),color var(--dur-fast)}.code:hover .copy,.code .copy:focus-visible{opacity:1}.code .copy:hover{color:var(--ink)}@media (hover:none){.code .copy{opacity:1}}.code-i{padding:0.12em 0.35em;border:1px solid var(--rule);border-radius:var(--radius-sm);background:var(--surface);font-size:0.86em;color:var(--ink);overflow-wrap:anywhere}[data-theme='dark'] .astro-code,[data-theme='dark'] .astro-code span{color:var(--shiki-dark) !important;font-style:var(--shiki-dark-font-style) !important;font-weight:var(--shiki-dark-font-weight) !important}.stat-tiles{display:grid;grid-template-columns:repeat(var(--cols,4),minmax(0,1fr));margin:0;border-top:1px solid var(--ink)}@media (max-width:860px){.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-tiles>div:nth-child(odd){padding-left:0;border-left:0}}.stat-tiles>div{padding:1rem 1rem 1.25rem 0;border-bottom:1px solid var(--rule)}.stat-tiles>div + div{padding-left:1rem;border-left:1px solid var(--rule)}.stat-tiles dd{margin:0.5rem 0 0}.stat-v{display:block;font-size:clamp(1.375rem,2.2vw,1.75rem);font-weight:600;font-stretch:108%;letter-spacing:-0.03em;font-variant-numeric:tabular-nums}.stat-s{display:block;margin-top:0.25rem;font-size:0.8125rem;color:var(--muted);line-height:1.4}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(10.625rem,1fr));gap:1px;margin:0;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--rule);overflow:hidden}.metrics>div{display:flex;flex-direction:column-reverse;justify-content:flex-end;gap:0.25rem;padding:0.75rem 0.875rem;background:var(--surface)}.metrics dd{margin:0;color:var(--amber-ink);font-size:1.1875rem;font-weight:600;font-stretch:110%;letter-spacing:-0.02em;font-variant-numeric:tabular-nums}.metrics dt{font-size:0.7812rem;color:var(--muted);line-height:1.4}.meter{--v:0.5;position:relative;height:0.375rem;border-radius:var(--radius-full);background:color-mix(in srgb,var(--ink) 7%,transparent);overflow:hidden}.meter>i{position:absolute;inset:0 auto 0 0;width:calc(var(--v) * 100%);border-radius:inherit;background:var(--accent);transition:width var(--dur-slow) var(--ease)}.meter.warm>i{background:var(--s-personal)}.meter.ok>i{background:var(--ok)}.meter.warn>i{background:var(--warn)}.meter.down>i{background:var(--down)}.meter.lg{height:0.625rem}.meter-row{display:grid;grid-template-columns:7rem 1fr 3rem;gap:0.75rem;align-items:center;font-size:0.8125rem}.meter-row>:last-child{text-align:right;font:0.75rem var(--font-mono);color:var(--muted)}.meter.indeterminate>i{width:35%;animation:meter-slide 1.3s var(--ease) infinite}@keyframes meter-slide{from{transform:translateX(-100%)}to{transform:translateX(300%)}}.bars{display:flex;gap:3px;height:9rem;align-items:flex-end;border-bottom:1px solid var(--rule-strong)}.bars>i{flex:1;height:calc(var(--v) * 100%);min-height:1px;border-radius:2px 2px 0 0;background:var(--s-work);transition:height var(--dur-slow) var(--ease),opacity var(--dur-fast)}.bars>i.p{background:var(--s-personal)}.bars:hover>i:not(:hover){opacity:0.55}.axis{display:flex;justify-content:space-between;margin-top:0.375rem;font:0.6875rem var(--font-mono);color:var(--muted)}.timeline{position:relative;margin:0;padding:0;list-style:none}.tl-item{display:grid;grid-template-columns:11.25rem 1.5rem 1fr;column-gap:0.5rem}.tl-when{padding:0.1875rem 1rem 0 0;font:0.75rem var(--font-mono);color:var(--muted);text-align:right;transition:color 0.3s}.tl-rail{position:relative;display:flex;justify-content:center}.tl-rail::before{content:'';position:absolute;top:0;bottom:0;width:1px;background:var(--rule)}.tl-item:last-child .tl-rail::before{bottom:auto;height:0.75rem}.tl-rail::after{content:'';position:relative;margin-top:0.4375rem;width:0.5625rem;height:0.5625rem;border-radius:50%;background:var(--bg);border:1.5px solid var(--rule-strong);transition:background 0.3s,border-color 0.3s,transform 0.3s var(--ease)}.tl-item.ms .tl-rail::after{border-color:var(--accent);box-shadow:0 0 0 0.25rem var(--accent-wash)}.tl-item.on .tl-rail::after{border-color:var(--accent);background:var(--accent-wash)}.tl-item.ms.on .tl-rail::after{background:var(--accent)}.tl-item.cur .tl-rail::after{transform:scale(1.25)}.tl-item.cur .tl-when{color:var(--accent-ink)}.tl-body{min-width:0;padding:0 0 2.25rem 0.75rem}.tl-body .org{font-size:0.8125rem;color:var(--muted)}.tl-body h3{margin-top:0.25rem;color:var(--accent-ink);font-size:clamp(1.125rem,2vw,1.375rem);font-stretch:106%}.tl-body p:not(.org){margin-top:0.5rem;color:var(--ink-2);max-width:64ch}.tl-fill{position:absolute;top:0;left:calc(11.25rem + 0.5rem + 0.75rem - 1px);width:2px;height:100%;border-radius:1px;pointer-events:none;background:linear-gradient(to bottom,color-mix(in srgb,var(--accent) 35%,transparent),var(--accent));transform-origin:top;transform:scaleY(var(--p,0))}@media (max-width:640px){.tl-item{grid-template-columns:1.25rem 1fr}.tl-when{grid-column:2;text-align:left;padding:0 0 0 0.75rem}.tl-rail{grid-row:1 / span 2;grid-column:1}.tl-fill{left:calc(0.625rem - 1px)}}.island{display:flex;align-items:center;gap:2px;padding:0.25rem;border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow)}.island.bar{gap:3px;padding:0.3125rem;border-radius:var(--radius-2xl)}.island.bar .btn{height:2.25rem;font-size:0.8438rem}.island.bar .btn.icon{width:2.25rem}.island.bar .i{width:1.125rem;height:1.125rem}.island .btn{height:2rem;font-size:0.8125rem;font-weight:520;border-radius:0.4375rem}.island .btn:not(.accent):not(.primary){border-color:transparent;background:transparent;color:var(--ink-2)}.island .btn:not(.accent):not(.primary):hover{background:var(--bg-sunk);color:var(--ink)}.island .btn:is(.on,[aria-pressed='true']){background:var(--accent-wash) !important;color:var(--accent-ink) !important}.island .btn.icon{width:2rem}.island .brand{padding:0 0.5rem 0 0.125rem;font-size:0.875rem;font-weight:500;letter-spacing:0.02em}.sep{flex:none;width:1px;height:1.25rem;margin:0 0.25rem;background:var(--rule)}.island.bar .sep{height:1.375rem}.tool{position:relative}.tool kbd{position:absolute;right:2px;bottom:0;font:0.5312rem/1 var(--font-mono);color:var(--faint)}.panel{overflow:auto;padding:0 0.875rem 1rem;border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);box-shadow:var(--shadow)}.panel[hidden]{display:none}.panel-head{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:0.5rem;margin:0 -0.875rem 0.25rem;padding:0.75rem 0.625rem 0.625rem 0.875rem;border-bottom:1px solid var(--rule);background:var(--surface)}.panel-head h4{font-size:0.875rem;font-weight:600;letter-spacing:-0.01em}.panel-sec{display:grid;gap:0.625rem;padding:0.75rem 0;border-bottom:1px solid var(--rule)}.panel-sec:last-child{border-bottom:0}.panel-sec>.label{font-size:0.6875rem}.hint{margin:0;font-size:0.75rem;color:var(--muted);line-height:1.45}.meta{margin:0.875rem 0 0;font:0.6875rem var(--font-mono);color:var(--faint)}.tones{display:flex;flex-wrap:wrap;gap:0.375rem}.tone{width:1.375rem;height:1.375rem;padding:0;border:1.5px solid var(--rule-strong);border-radius:50%;background:var(--surface);cursor:pointer}.tone:is(.on,[aria-pressed='true'],[aria-checked='true']){box-shadow:0 0 0 2px var(--surface),0 0 0 3.5px var(--ink)}.t-purple{background:var(--w-purple);border-color:var(--t-purple)}.t-amber{background:var(--w-amber);border-color:var(--t-amber)}.t-green{background:var(--w-green);border-color:var(--t-green)}.t-blue{background:var(--w-blue);border-color:var(--t-blue)}.t-red{background:var(--w-red);border-color:var(--t-red)}.t-teal{background:var(--w-teal);border-color:var(--t-teal)}.t-pink{background:var(--w-pink);border-color:var(--t-pink)}.status-dot{--c:var(--ok);display:inline-block;flex:none;width:0.4375rem;height:0.4375rem;border-radius:50%;background:var(--c);box-shadow:0 0 0 0.1875rem color-mix(in srgb,var(--c) 22%,transparent)}.status-dot.warn{--c:var(--warn)}.status-dot.down{--c:var(--down);animation:blink 1.2s steps(2,jump-none) infinite}.status-dot.idle{--c:var(--faint)}.status-dot.live::after{content:'';display:block;width:100%;height:100%;border-radius:50%;background:var(--c);animation:ping 1.8s var(--ease) infinite}.status{display:inline-flex;align-items:center;gap:0.5rem;font-size:0.8125rem;color:var(--ink-2)}@keyframes blink{50%{opacity:0.25}}@keyframes ping{to{transform:scale(2.6);opacity:0}}.skeleton{display:block;height:0.875rem;border-radius:var(--radius-sm);background:linear-gradient(90deg,color-mix(in srgb,var(--ink) 6%,transparent) 30%,color-mix(in srgb,var(--ink) 11%,transparent) 50%,color-mix(in srgb,var(--ink) 6%,transparent) 70%);background-size:300% 100%;animation:shimmer 1.6s linear infinite}.skeleton.title{height:1.5rem;width:60%}.skeleton.block{height:6rem;border-radius:var(--radius-lg)}.skeleton + .skeleton{margin-top:0.5rem}@keyframes shimmer{from{background-position:100% 0}to{background-position:0 0}}.empty{display:grid;justify-items:center;gap:0.75rem;padding:3rem 1.5rem;text-align:center}.empty h2{font-size:1.625rem;font-stretch:105%}.empty p:not(.label){max-width:44ch;color:var(--ink-2)}.empty .btn-row{justify-content:center;margin-top:0.625rem}.empty-art{width:4.5rem;height:3rem;color:var(--rule-strong)}.crumbs{display:flex;flex-wrap:wrap;gap:0.375rem;margin:0;padding:0;list-style:none;font:0.75rem var(--font-mono);color:var(--muted)}.crumbs li + li::before{content:'/';margin-right:0.375rem;color:var(--faint)}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs [aria-current='page']{color:var(--ink)}.pager{display:grid;grid-template-columns:1fr 1fr;gap:0.75rem}.pager a{display:grid;gap:0.25rem;padding:0.875rem 1rem;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);text-decoration:none;transition:border-color var(--dur-fast)}.pager a:hover{border-color:var(--rule-strong)}.pager a:hover strong{color:var(--accent-ink)}.pager .next{grid-column:2;text-align:right}.pager strong{font-weight:560;transition:color var(--dur-fast)}.pages{display:inline-flex;gap:2px}.pages a,.pages span{display:grid;place-items:center;min-width:2rem;height:2rem;padding:0 0.375rem;border-radius:var(--radius);font:0.75rem var(--font-mono);color:var(--muted);text-decoration:none}.pages a:hover{background:var(--bg-sunk);color:var(--ink)}.pages [aria-current='page']{background:var(--accent-wash);color:var(--accent-ink)}.hdr{position:sticky;top:0;z-index:var(--z-header);border-bottom:1px solid var(--rule);background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:saturate(1.4) blur(0.625rem);-webkit-backdrop-filter:saturate(1.4) blur(0.625rem)}.hdr-row{display:flex;align-items:center;gap:1.5rem;height:3.5rem}.brand{display:flex;align-items:center;gap:0.5625rem;font:500 0.9375rem var(--font-mono);letter-spacing:-0.01em;text-decoration:none}.mark{width:0.625rem;height:0.625rem;border-radius:1px;background:var(--accent);transition:transform 0.4s var(--ease)}.brand:hover .mark{transform:rotate(90deg)}.nav{flex:1;overflow-x:auto;scrollbar-width:none}.nav ul{display:flex;gap:2px;margin:0;padding:0;list-style:none}.nav a{display:block;padding:0.375rem 0.625rem;border-radius:0.3125rem;font-size:0.875rem;color:var(--muted);text-decoration:none;white-space:nowrap;transition:color var(--dur-fast),background var(--dur-fast)}.nav a:hover{color:var(--ink)}.nav a[aria-current='page']{color:var(--ink);background:var(--bg-sunk)}.hdr-tools{display:flex;gap:0.375rem;align-items:center}.kbtn,.ibtn{appearance:none;display:inline-flex;align-items:center;gap:0.625rem;height:2rem;border:1px solid var(--rule);border-radius:var(--radius);background:var(--surface);color:var(--muted);cursor:pointer;transition:border-color var(--dur-fast),color var(--dur-fast)}.kbtn{padding:0 0.375rem 0 0.625rem;font-size:0.8125rem}.kbtn kbd{padding:1px 0.3125rem;border:1px solid var(--rule);border-radius:var(--radius-sm);font-size:0.6875rem;color:var(--muted)}.ibtn{width:2rem;justify-content:center}.kbtn:hover,.ibtn:hover{border-color:var(--rule-strong);color:var(--ink)}@media (max-width:760px){.hdr-row{flex-wrap:wrap;height:auto;padding-block:0.625rem 0;gap:0.5rem 1rem}.hdr-row .brand{flex:1}.hdr-row .nav{order:3;flex-basis:100%;margin-inline:-0.625rem;padding-bottom:0.375rem}.kbtn .kt{display:none}}.ftr{border-top:1px solid var(--rule);background:var(--bg-sunk)}.ftr-cta{display:grid;gap:1.75rem;padding-block:clamp(3rem,7vw,5.5rem)}@media (min-width:860px){.ftr-cta{grid-template-columns:1fr auto;align-items:end}}.ftr-cta h2{margin-top:0.875rem;font-size:clamp(1.5rem,3vw,2.125rem);font-stretch:108%;max-width:24ch}.ftr-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding-block:1.375rem 1.75rem;border-top:1px solid var(--rule);font-size:0.8438rem;color:var(--muted)}.ftr-links{display:flex;flex-wrap:wrap;gap:0.25rem 1.125rem;margin:0;padding:0;list-style:none}.ftr-links a{text-decoration:none}.ftr-links a:hover{color:var(--ink)}.posts{margin:0;padding:0;list-style:none;border-top:1px solid var(--rule)}.posts>li{position:relative;display:grid;grid-template-columns:6.875rem 1fr auto;gap:0.5rem 1.5rem;align-items:baseline;padding:1.25rem 0;border-bottom:1px solid var(--rule)}.posts time,.posts .r{font:0.75rem var(--font-mono);color:var(--muted)}.posts .t{display:flex;flex-direction:column;gap:0.25rem}.posts .h{color:var(--accent-ink);font-size:1.125rem;font-weight:580;letter-spacing:-0.01em;text-decoration:none}.posts .h::after{content:'';position:absolute;inset:0}.posts>li:hover .h{text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:0.25rem}.posts .d{color:var(--muted);font-size:0.9062rem;max-width:70ch}.posts .chips{position:relative;z-index:1;margin-top:0.5rem}@media (max-width:640px){.posts>li{grid-template-columns:1fr auto}.posts .t{grid-column:1 / -1;grid-row:2}}.rows>*{display:grid;gap:0.75rem;padding-block:2rem;border-top:1px solid var(--rule)}@media (min-width:860px){.rows>*{grid-template-columns:13.75rem 1fr;gap:2rem}}}@layer diagram{.tp{overflow:visible;font-family:var(--font-sans)}.tp text{font-feature-settings:'ss01','cv11'}.tp .tone-purple{--tc:var(--t-purple);--tw:var(--w-purple)}.tp .tone-amber{--tc:var(--t-amber);--tw:var(--w-amber)}.tp .tone-green{--tc:var(--t-green);--tw:var(--w-green)}.tp .tone-blue{--tc:var(--t-blue);--tw:var(--w-blue)}.tp .tone-red{--tc:var(--t-red);--tw:var(--w-red)}.tp .tone-teal{--tc:var(--t-teal);--tw:var(--w-teal)}.tp .tone-pink{--tc:var(--t-pink);--tw:var(--w-pink)}.tp .zone .zr{fill:none;stroke:var(--rule-strong);stroke-dasharray:3 4}.tp .zone.solid .zr{stroke-dasharray:none}.tp .zone[class*='tone-'] .zr{stroke:color-mix(in srgb,var(--tc) 55%,var(--rule-strong))}.tp .zone.tint .zr{fill:color-mix(in srgb,var(--tw) 65%,transparent)}.tp .zone .zl{font:500 10.5px var(--font-mono);letter-spacing:0.05em;text-transform:uppercase;fill:var(--muted);paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}.tp .zone[class*='tone-'] .zl{fill:var(--tc)}.tp .edge path{fill:none;stroke-linejoin:round}.tp .edge .base{stroke:var(--rule-strong);stroke-width:1.4;transition:stroke 0.2s,opacity 0.2s}.tp .edge.control .base{stroke-dasharray:5 4}.tp .edge.fallback .base{stroke-dasharray:1.5 4;stroke-linecap:round}.tp .edge.stream .base{stroke-width:2.2;stroke:color-mix(in srgb,var(--accent) 30%,var(--rule-strong))}.tp .edge[class*='tone-'] .base{stroke:color-mix(in srgb,var(--tc) 55%,var(--rule-strong))}.tp .edge .flow{stroke:var(--accent);stroke-width:1.6;stroke-dasharray:3 13;stroke-linecap:round;opacity:0.85;animation:tp-flow 1.1s steps(16) infinite}.tp .edge .flow.rev{animation-direction:reverse}.tp .edge[class*='tone-'] .flow,.tp .edge[class*='tone-'] .pulse{stroke:var(--tc)}.tp .edge .pulse{stroke:var(--accent);stroke-width:3;stroke-linecap:round;opacity:0;animation:tp-pulse 2.4s ease-in-out infinite}.tp .edge .pkt{fill:var(--accent)}.tp .edge .comet{stroke:var(--accent);stroke-width:2.4;stroke-linecap:round;opacity:0.9}.tp .edge[class*='tone-'] .comet{stroke:var(--tc)}.tp .busy-track{fill:var(--surface);stroke:var(--rule-strong);stroke-width:1.5}.tp .busy-arc{fill:none;stroke:var(--accent);stroke-width:1.8;stroke-linecap:round}.tp .node[class*='tone-'] .busy-arc{stroke:var(--tc)}.tp .node.glow .body{animation:tp-glow 2.6s ease-in-out infinite}.tp .edge[class*='tone-'] .pkt{fill:var(--tc)}.tp .edge .elabel{font:10.5px var(--font-mono);fill:var(--muted);paint-order:stroke;stroke:var(--bg);stroke-width:4px;stroke-linejoin:round}.tp .arr{fill:var(--rule-strong)}.tp .arr[class*='tone-']{fill:color-mix(in srgb,var(--tc) 70%,var(--rule-strong))}.tp .hatch{stroke:var(--rule);stroke-width:2}.tp .node .body{fill:var(--surface);stroke:var(--rule-strong);stroke-width:1;transition:stroke 0.2s,fill 0.2s}.tp .node .ghost{opacity:0.7}.tp .node.compute .body{stroke:var(--ink-2)}.tp .node.control .body{fill:var(--bg-sunk);stroke-dasharray:4 3}.tp .node.io .body{fill:var(--bg)}.tp .node .lip{stroke:var(--rule-strong);fill:none}.tp .node .rim{stroke:var(--rule-strong);fill:none}.tp .node.store .body{stroke:color-mix(in srgb,var(--amber) 55%,var(--rule-strong))}.tp .node.store .lip{stroke:var(--amber);stroke-width:1.5}.tp .node[class*='tone-'] .body{stroke:var(--tc)}.tp .node[class*='tone-'] .lip{stroke:var(--tc)}.tp .node .hfill{stroke:none;pointer-events:none}.tp .node .ico{fill:none;stroke:var(--muted);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.tp .node.store .ico{stroke:color-mix(in srgb,var(--amber-ink) 70%,var(--muted))}.tp .node[class*='tone-'] .ico{stroke:var(--tc)}.tp .nl{font:var(--w-label,580) 13px var(--font-sans);fill:var(--ink);letter-spacing:-0.01em}.tp .ns{font:10.5px var(--font-mono);fill:var(--muted)}.tp .badge rect{fill:var(--surface);stroke:var(--rule-strong)}.tp .badge text{font:500 9.5px var(--font-mono);fill:var(--muted)}.tp .node[class*='tone-'] .badge rect{stroke:var(--tc)}.tp .status{stroke:var(--surface);stroke-width:1.5}.tp .status.ok{fill:var(--ok)}.tp .status.warn{fill:var(--warn)}.tp .status.down{fill:var(--down);animation:tp-blink 1.2s steps(2,jump-none) infinite}.tp .pring{fill:none;stroke:var(--accent);stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:tp-ring 2.2s ease-out infinite}.tp .node[class*='tone-'] .pring{stroke:var(--tc)}.tp .node[aria-pressed='true'] .body{stroke:var(--accent);stroke-width:1.6;fill:var(--accent-wash);stroke-dasharray:none}.tp .node.store[aria-pressed='true'] .body{stroke:var(--amber);fill:var(--amber-wash)}.tp .node[class*='tone-'][aria-pressed='true'] .body{stroke:var(--tc);fill:var(--tw)}.tp .node[aria-pressed='true'] .ico{stroke:var(--accent-ink)}.tp .note text{font:13px var(--font-sans);fill:var(--ink-2)}.tp .note.mono text{font-family:var(--font-mono);fill:var(--muted);letter-spacing:0.02em}.tp .node,.tp .edge{transition:opacity 0.2s}.tp.focusing .node:not(.near){opacity:0.45}.tp.focusing .edge:not(.on){opacity:0.35}.tp.focusing .zone:not(.near){opacity:0.6}.tp .edge.on .base{stroke:var(--ink-2)}.tp .edge[class*='tone-'].on .base{stroke:var(--tc)}.tp.still .flow,.tp.still .pulse,.tp.still .pring,.tp.still .status,.tp.still .node.glow .body{animation-play-state:paused}@keyframes tp-flow{to{stroke-dashoffset:-16}}@keyframes tp-pulse{0%,100%{opacity:0}50%{opacity:0.55}}@keyframes tp-ring{from{opacity:0.55;transform:scale(1)}to{opacity:0;transform:scale(1.1,1.3)}}@keyframes tp-blink{50%{opacity:0.25}}@keyframes tp-glow{50%{stroke-width:2;filter:drop-shadow(0 0 6px color-mix(in srgb,var(--accent) 55%,transparent))}}@media (prefers-reduced-motion:reduce){.tp .flow,.tp .pulse,.tp .pring,.tp .status,.tp .node.glow .body{animation:none}}.tp .node.inc-set .status:not(.inc-dot){display:none}.tp .node.inc-down .body:not(.ghost){stroke:var(--down);stroke-width:1.8;stroke-dasharray:none;fill:color-mix(in srgb,var(--down) 9%,var(--surface));animation:tp-alarm 1.8s ease-in-out infinite}.tp .node.inc-down .ghost{stroke:color-mix(in srgb,var(--down) 45%,var(--rule-strong))}.tp .node.inc-down .ico{stroke:var(--down)}.tp .node.inc-warn .body:not(.ghost){stroke:var(--warn);stroke-width:1.6;stroke-dasharray:none;fill:color-mix(in srgb,var(--warn) 8%,var(--surface))}.tp .node.inc-warn .ico{stroke:color-mix(in srgb,var(--warn) 80%,var(--ink))}.tp .node.inc-recovered .body:not(.ghost){animation:tp-recover 1.6s ease-out 1}.tp .edge.inc-broken .base{stroke:color-mix(in srgb,var(--down) 70%,var(--rule-strong));stroke-dasharray:3 5}.tp .edge.inc-broken :is(.flow,.pulse,.comet,.pkt){display:none}.tp .edge.inc-slow .base{stroke:color-mix(in srgb,var(--warn) 60%,var(--rule-strong))}.tp .edge.inc-slow .flow{stroke:var(--warn);animation-duration:3.3s}.tp .edge.inc-slow :is(.comet,.pulse){stroke:var(--warn)}.tp .edge.inc-slow .pkt{fill:var(--warn)}.tp.focusing .node:is(.inc-down,.inc-warn):not(.near){opacity:0.8}.tp.still .node.inc-down .body{animation-play-state:paused}@keyframes tp-alarm{50%{filter:drop-shadow(0 0 7px color-mix(in srgb,var(--down) 60%,transparent))}}@keyframes tp-recover{from{stroke:var(--ok);stroke-width:2.2;filter:drop-shadow(0 0 8px color-mix(in srgb,var(--ok) 60%,transparent))}}@media (prefers-reduced-motion:reduce){.tp .node.inc-down .body,.tp .node.inc-recovered .body{animation:none}}.sd{margin:0;display:grid;grid-template-columns:minmax(0,1fr);border:1px solid var(--rule);border-radius:var(--radius-xl);background:var(--surface);overflow:hidden}@media (min-width:1000px){.sd{grid-template-columns:minmax(0,1fr) 18.75rem}.sd.no-insp{grid-template-columns:minmax(0,1fr)}}.sd .fh{grid-column:1 / -1;display:flex;align-items:baseline;gap:0.875rem;padding:0.75rem 1.25rem;border-bottom:1px solid var(--rule);background:var(--surface)}.sd .fn{font:0.6875rem var(--font-mono);letter-spacing:0.06em;text-transform:uppercase;color:var(--accent-ink)}.sd .ft{font-weight:580;font-size:0.9375rem;letter-spacing:-0.01em}.sd .fc{margin-left:auto;font:0.6875rem var(--font-mono);color:var(--muted)}@media (max-width:640px){.sd .fc{display:none}}.sd .canvas{position:relative;min-width:0;background-color:var(--bg);background-image:radial-gradient(var(--grid-dot) 1px,transparent 1px);background-size:1rem 1rem}.sd .scroll{overflow-x:auto;padding:1.75rem 1.25rem 0.75rem}.sd .scroll>svg{display:block;width:100%;min-width:32rem;height:auto;overflow:visible;margin:0 auto}.sd .node{cursor:pointer;outline:none}.sd .node:hover .body,.sd .node:focus-visible .body{stroke:var(--ink)}.sd .node:focus-visible .body{stroke-width:2}.sd .legend{display:flex;flex-wrap:wrap;gap:0.375rem 1rem;padding:0.625rem 1.25rem 0.875rem;font:0.6875rem var(--font-mono);color:var(--muted)}.sd .legend span{display:inline-flex;align-items:center;gap:0.375rem}.lg{display:inline-block;width:1.125rem;height:0;border-top:1.5px solid var(--rule-strong)}.lg.data{border-color:var(--accent)}.lg.control{border-top-style:dashed}.lg.fallback{border-top-style:dotted;border-top-width:2px}.lg.stream{border-top-width:2.5px;border-color:color-mix(in srgb,var(--accent) 45%,var(--rule-strong))}.lg-store{display:inline-block;width:0.75rem;height:0.625rem;border:1px solid var(--amber);border-top-width:2px;border-radius:2px}.lg-host{display:inline-block;width:0.75rem;height:0.625rem;border:1px solid var(--rule-strong);border-radius:2px;background:repeating-linear-gradient(45deg,var(--rule) 0 1.5px,transparent 1.5px 4px)}.sd .legend .hint{margin-left:auto}.sd .insp{border-top:1px solid var(--rule);padding:1.375rem 1.375rem 1.625rem;min-height:13.75rem}@media (min-width:1000px){.sd .insp{border-top:0;border-left:1px solid var(--rule)}}.insp-card{animation:cin 0.25s var(--ease)}.insp-card[hidden]{display:none}.insp-card .label.k-store{color:var(--amber-ink)}.insp-card h3{margin-top:0.5rem;font-size:1.1875rem;font-stretch:105%}.insp-card .sub{margin:2px 0 0;font:0.75rem var(--font-mono);color:var(--muted)}.insp-card .role{margin:0.875rem 0 0;font-size:0.9062rem;color:var(--ink-2);line-height:1.55}.insp-card dl{margin:1.125rem 0 0;border-top:1px solid var(--rule)}.insp-card dl div{display:flex;justify-content:space-between;gap:0.75rem;padding:0.5rem 0;border-bottom:1px solid var(--rule);font-size:0.8125rem}.insp-card dt{color:var(--muted)}.insp-card dd{margin:0;font:0.75rem var(--font-mono);text-align:right}@keyframes cin{from{opacity:0;transform:translateY(0.25rem)}}.stepbar{display:flex;align-items:center;gap:0.375rem;margin:0.75rem 1.25rem 0;padding:0.375rem 0.5rem;border:1px solid var(--rule);border-radius:var(--radius-lg);background:var(--surface);font-size:0.8125rem;color:var(--muted)}.stepbar .num{min-width:3.5rem;text-align:center;font:0.7188rem var(--font-mono);color:var(--accent-ink)}.stepbar .tm{margin-left:0.25rem;font:0.7188rem var(--font-mono);color:var(--ink-2);white-space:nowrap}.stepbar .tm:empty{display:none}.stepbar .tm[data-rel]::after{content:attr(data-rel);margin-left:0.375rem;color:var(--muted)}.stepbar .cap{margin-left:0.375rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stepbar.active .cap{color:var(--ink)}.stepbar .end{margin-left:auto}.irail{display:grid;grid-template-columns:1fr auto;column-gap:0.875rem;row-gap:2px;align-items:center;margin:0.5rem 1.75rem 0}.irail .rail{position:relative;height:1.125rem}.irail .rail::before{content:'';position:absolute;left:0;right:0;top:0.5rem;height:2px;border-radius:1px;background:var(--rule)}.irail .impact{position:absolute;top:0.4375rem;height:0.25rem;border-radius:2px;background:color-mix(in srgb,var(--down) 45%,transparent)}.irail .impact.open{background:linear-gradient(90deg,color-mix(in srgb,var(--down) 45%,transparent),transparent)}.irail .tick{position:absolute;top:0.1875rem;width:0.75rem;height:0.75rem;margin-left:-0.375rem;padding:0;border-radius:50%;cursor:pointer;border:2px solid var(--surface);background:var(--rule-strong);box-shadow:0 0 0 1px var(--rule-strong);transition:transform var(--dur-fast) var(--ease)}.irail .tick.sev-down{background:var(--down);box-shadow:0 0 0 1px var(--down)}.irail .tick.sev-warn{background:var(--warn);box-shadow:0 0 0 1px var(--warn)}.irail .tick.sev-ok{background:var(--ok);box-shadow:0 0 0 1px var(--ok)}.irail .tick:hover{transform:scale(1.25)}.irail .tick.cur{transform:scale(1.45);box-shadow:0 0 0 1px var(--ink),0 0 0 4px var(--accent-wash)}.irail .ends{grid-column:1;display:flex;justify-content:space-between;font:0.6562rem var(--font-mono);color:var(--muted)}.irail .sum{grid-column:2;grid-row:1;font:0.7188rem var(--font-mono);color:var(--muted);white-space:nowrap}.irail .sum.bad{color:var(--down)}}