/* veritart stylesheet — trio's real bundles, folded into plinth's single fingerprinted asset.
   crucix (global chrome+prose, font urls localized /build/assets->/fonts) + profile (/lucas) + mochi (/mochi).
   The handful of trio inline styles (--reveal-delay, --mode-accent) are re-expressed as data-attribute
   rules below so the strict CSP (style-src 'self', no unsafe-inline) holds. */
@layer base{*,:before,:after{box-sizing:border-box}html{background:var(--color-base);color:var(--color-text-1);font-family:var(--font-body);font-size:13px;line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:radial-gradient(1200px 600px at 20% -10%, oklch(85% .17 170/.05), transparent 60%), radial-gradient(900px 500px at 85% -5%, oklch(78% .12 220/.04), transparent 60%), var(--color-base);min-height:100vh;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--color-text-1);margin:0}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-lg)}h4{font-size:var(--fs-md)}h5{font-size:var(--fs-sm);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-text-3);font-family:var(--font-mono);font-weight:500}p{color:var(--color-text-2);line-height:var(--lh-body);margin:0}a{color:var(--color-accent);text-underline-offset:2px;transition:color var(--dur-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--color-accent-dim);text-decoration:underline}code,pre,kbd,samp{font-family:var(--font-mono);letter-spacing:var(--tracking-mono);font-size:.92em}hr{background:var(--color-border);height:1px;margin:var(--size-5) 0;border:0}::selection{color:var(--color-text-1);background:oklch(85% .17 170/.3)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}::-webkit-scrollbar-thumb:hover{background:var(--color-border-hover)}}@layer layout{.container{max-width:var(--layout-max);padding-inline:var(--size-5);z-index:var(--z-base);margin-inline:auto;position:relative}.container-fluid{max-width:none;padding-inline:var(--size-5);z-index:var(--z-base);position:relative}.reading{max-width:var(--layout-reading);margin-inline:auto}.stack-0{gap:var(--size-0);flex-direction:column;display:flex}.stack-1{gap:var(--size-1);flex-direction:column;display:flex}.stack-2{gap:var(--size-2);flex-direction:column;display:flex}.stack-3{gap:var(--size-3);flex-direction:column;display:flex}.stack-4{gap:var(--size-4);flex-direction:column;display:flex}.stack-5{gap:var(--size-5);flex-direction:column;display:flex}.stack-6{gap:var(--size-6);flex-direction:column;display:flex}.row{gap:var(--size-3);align-items:center;display:flex}.row-2{gap:var(--size-2);align-items:center;display:flex}.row-wrap{gap:var(--size-2);flex-wrap:wrap;align-items:center;display:flex}.row-between{gap:var(--size-3);justify-content:space-between;align-items:center;display:flex}.grid{gap:var(--size-4);display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.admin-layout{grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:var(--header-h) 1fr;min-height:100vh;display:grid}.admin-layout>.admin-header{grid-column:1/-1}.admin-layout>.admin-sidebar{border-right:1px solid var(--color-border);background:radial-gradient(ellipse 140% 40% at 0% 0%, oklch(84% .17 165/.07), transparent 55%), radial-gradient(ellipse 80% 30% at 0% 100%, oklch(80% .14 220/.04), transparent 60%), var(--glass-subtle);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));grid-row:2;overflow-y:auto}.admin-layout>.admin-main{padding:var(--size-5);background:radial-gradient(1600px 500px at 10% 0,oklch(84% .17 165/.03),#0000 55%),radial-gradient(1200px 400px at 90% 0,oklch(80% .14 220/.025),#0000 55%);grid-row:2;overflow-y:auto}.admin-header{height:var(--header-h);padding-inline:var(--size-4);border-bottom:1px solid var(--color-border);background:radial-gradient(ellipse 30% 200% at 0% 50%, oklch(84% .17 165/.06), transparent 55%), var(--glass-medium);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));z-index:var(--z-sticky);align-items:center;display:flex;position:sticky;top:0}.public-header{z-index:var(--z-sticky);background:radial-gradient(ellipse 30% 200% at 0% 50%, oklch(84% .17 165/.05), transparent 55%), var(--glass-medium);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border-bottom:1px solid var(--color-border);height:var(--header-h);align-items:center;display:flex;position:sticky;top:0}.input-group--header{min-width:240px}@media (width<=720px){.public-header{height:auto;min-height:var(--header-h);padding-block:var(--size-3)}.public-header .row-between{row-gap:var(--size-3);flex-wrap:wrap}.public-header .public-nav{gap:var(--size-4);flex-wrap:wrap}.input-group--header{flex:100%;order:3;min-width:0}}.workbench{grid-template-columns:var(--sidebar-w) 1fr 300px;min-height:100vh;display:grid}.workbench>.wb-nav{border-right:1px solid var(--color-border);background:var(--glass-subtle);overflow-y:auto}.workbench>.wb-main{min-width:0;overflow-y:auto}.workbench>.wb-side{border-left:1px solid var(--color-border);background:var(--glass-subtle);overflow-y:auto}}@layer components{.brand{align-items:center;gap:var(--size-2);font-family:var(--font-display);font-weight:600;font-size:var(--fs-lg);letter-spacing:var(--tracking-tight);color:var(--color-text-1);text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--color-border-strong);border-radius:var(--radius-1);width:18px;height:18px;color:var(--color-accent);background:linear-gradient(135deg,oklch(85% .17 170/.2),oklch(78% .12 220/.12));place-items:center;display:grid}.brand-mark svg{width:12px;height:12px}.brand-logo{flex:none;width:1.4rem;height:1.4rem;display:block}.brand-word__art{color:var(--color-accent);position:relative}.brand-word__art:after{content:"";background:linear-gradient(90deg, var(--color-accent), var(--color-accent2), var(--c-prompt), var(--color-accent));opacity:.7;height:2px;box-shadow:0 0 6px color-mix(in oklab, var(--color-accent) 35%, transparent);transition:opacity var(--dur-base) var(--ease-out);background-size:200% 100%;border-radius:2px;position:absolute;bottom:-.16em;left:0;right:0}.brand:hover .brand-word__art:after,.brand:focus-visible .brand-word__art:after{opacity:1;box-shadow:0 0 9px color-mix(in oklab, var(--color-accent2) 45%, transparent)}@media (prefers-reduced-motion:no-preference){.brand:hover .brand-word__art:after,.brand:focus-visible .brand-word__art:after{animation:6s linear infinite holo-edge}}.panel{background:radial-gradient(ellipse 60% 40% at 0% 0%, oklch(84% .17 165/.05), transparent 60%), var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);-webkit-backdrop-filter:blur(var(--glass-blur-soft));backdrop-filter:blur(var(--glass-blur-soft));min-width:0;max-width:100%;position:relative;overflow-x:auto}.card{background:radial-gradient(ellipse 80% 50% at 0% 0%, oklch(84% .17 165/.04), transparent 55%), var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-4);-webkit-backdrop-filter:blur(var(--glass-blur-soft));backdrop-filter:blur(var(--glass-blur-soft));min-width:0;transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);position:relative}.card:hover{border-color:var(--color-border-hover);background:radial-gradient(80% 50% at 0 0,oklch(84% .17 165/.07),#0000 55%),oklch(14% .02 250/.55)}.card-tight{padding:var(--size-3)}.card-flush{padding:0}.card-header{justify-content:space-between;align-items:center;gap:var(--size-3);padding:var(--size-3) var(--size-4);border-bottom:1px solid var(--color-border);min-height:32px;display:flex}.card-body{padding:var(--size-4)}.card-footer{padding:var(--size-2) var(--size-4);border-top:1px solid var(--color-border);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.card-title{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--color-text-1);letter-spacing:var(--tracking-tight);font-weight:600;line-height:1.2}.card-meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono)}.card-spine{padding:var(--size-4);border:1px solid var(--color-accent);border-radius:var(--radius-1);background:var(--tint-accent)}.card-spine.spine-cyan{border-color:var(--color-accent2);background:var(--tint-info)}.card-spine.spine-violet{border-color:var(--violet-300);background:var(--tint-violet)}.card-spine.spine-warning{border-color:var(--color-warning);background:var(--tint-warning)}.card-spine.spine-danger{border-color:var(--color-danger);background:var(--tint-danger)}.card-spine.spine-success{border-color:var(--color-success);background:var(--tint-success)}.btn{justify-content:center;align-items:center;gap:var(--size-2);height:var(--h-ctrl-sm);padding:0 var(--size-3);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--color-text-1);background:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-2);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);white-space:nowrap;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--color-border-hover);color:var(--color-text-1);background:oklch(22% .02 250);text-decoration:none}.btn:active{transform:translateY(1px)}.btn svg{width:13px;height:13px}.btn-primary{border-color:var(--color-border-strong);color:var(--color-accent);background:linear-gradient(oklch(85% .17 170/.22),oklch(85% .17 170/.1));box-shadow:inset 0 1px oklch(100% 0 0/.05)}.btn-primary:hover{color:var(--color-text-1);background:linear-gradient(oklch(85% .17 170/.32),oklch(85% .17 170/.15))}.btn-ghost{color:var(--color-text-2);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--glass-subtle);color:var(--color-text-1)}.btn-danger{color:var(--color-danger);border-color:oklch(70% .2 25/.25)}.btn-danger:hover{background:oklch(70% .2 25/.1);border-color:oklch(70% .2 25/.5)}.btn-xs{height:var(--h-ctrl-xs);padding:0 var(--size-2);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase}.btn-sm{height:var(--h-ctrl-sm);padding:0 var(--size-3);font-size:var(--fs-xs)}.btn-md{height:var(--h-ctrl-md);padding:0 var(--size-4);font-size:var(--fs-sm)}.btn-lg{height:var(--h-ctrl-lg);padding:0 var(--size-5);font-size:var(--fs-base)}.btn-icon{width:var(--h-ctrl-sm);padding:0}.btn-icon.btn-xs{width:var(--h-ctrl-xs)}.btn-icon.btn-md{width:var(--h-ctrl-md)}.btn-group{border:1px solid var(--color-border);border-radius:var(--radius-2);background:var(--color-elevated);display:inline-flex;overflow:hidden}.btn-group .btn{border:0;border-right:1px solid var(--color-border);background:0 0;border-radius:0}.btn-group .btn:last-child{border-right:0}.btn-group .btn.active{background:var(--tint-accent);color:var(--color-accent)}.badge{height:16px;font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-2);background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-0);white-space:nowrap;align-items:center;gap:4px;padding:1px 6px;font-weight:500;display:inline-flex}.badge:before{content:"";opacity:.8;background:currentColor;border-radius:999px;width:4px;height:4px}.badge-accent{color:var(--color-accent);background:oklch(85% .17 170/.08);border-color:oklch(85% .17 170/.35)}.badge-cyan{color:var(--color-accent2);background:oklch(78% .12 220/.08);border-color:oklch(78% .12 220/.35)}.badge-violet{color:var(--violet-300);background:oklch(78% .15 300/.08);border-color:oklch(78% .15 300/.35)}.badge-success{color:var(--color-success);background:oklch(82% .17 155/.08);border-color:oklch(82% .17 155/.35)}.badge-warning{color:var(--color-warning);background:oklch(82% .14 85/.08);border-color:oklch(82% .14 85/.35)}.badge-danger{color:var(--color-danger);background:oklch(70% .2 25/.08);border-color:oklch(70% .2 25/.35)}.badge-draft{color:var(--color-text-3);border-color:var(--color-border)}.badge-plain:before{display:none}.dot-status{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.dot-status:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.dot-status.ok{color:var(--color-success)}.dot-status.warn{color:var(--color-warning)}.dot-status.err{color:var(--color-danger)}.dot-status.run{color:var(--color-accent)}.dot-status.run:before{animation:1.6s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);margin-bottom:var(--size-1);font-weight:500;display:block}.input,.textarea,.select{width:100%;height:var(--h-ctrl-sm);padding:0 var(--size-3);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--color-text-1);border:1px solid var(--color-border);border-radius:var(--radius-2);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);background:oklch(10% .02 250);display:block}.input:focus,.textarea:focus,.select:focus{border-color:var(--color-accent-dim);outline:none;box-shadow:0 0 0 2px oklch(85% .17 170/.15)}.textarea{height:auto;min-height:4.5rem;padding:var(--size-2) var(--size-3);resize:vertical;font-family:var(--font-mono);line-height:var(--lh-snug)}.input::placeholder,.textarea::placeholder{color:var(--color-text-mute)}.input-mono{font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.input-md{height:var(--h-ctrl-md)}.input-group{align-items:center;gap:var(--size-2);height:var(--h-ctrl-sm);padding:0 var(--size-3);border:1px solid var(--color-border);border-radius:var(--radius-2);background:oklch(10% .02 250);display:flex}.input-group:focus-within{border-color:var(--color-accent-dim)}.input-group svg{width:12px;height:12px;color:var(--color-text-3);flex:none}.input-group input{color:var(--color-text-1);font-family:var(--font-body);font-size:var(--fs-sm);background:0 0;border:0;outline:none;flex:1;min-width:0;height:100%}.input-group .kbd{flex:none}.field-inline{gap:var(--size-3);padding:var(--size-1) 0;grid-template-columns:120px 1fr;align-items:center;display:grid}.field-inline>.label{margin-bottom:0}.table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.table th,.table td{text-align:left;padding:var(--size-2) var(--size-3);height:var(--h-row-sm);border-bottom:1px solid var(--color-border);line-height:1.3}.table th{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);z-index:1;background:oklch(10% .02 250/.5);height:26px;font-weight:500;position:sticky;top:0}.table td{color:var(--color-text-2)}.cell-title{color:var(--color-text-1);font-weight:500}.table.table-zebra tbody tr:nth-child(2n) td{background:oklch(16% .02 250/.3)}.table.table-compact th,.table.table-compact td{padding:3px var(--size-3);height:var(--h-row-xs);font-size:var(--fs-xs)}.table.table-bordered th,.table.table-bordered td{border-right:1px solid var(--color-border)}.table.table-bordered th:last-child,.table.table-bordered td:last-child{border-right:0}.table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table th.sortable:after{content:"↕";color:var(--color-text-3);margin-left:4px;font-size:.85em}.table th.sort-asc:after{content:"↑";color:var(--color-accent)}.table th.sort-desc:after{content:"↓";color:var(--color-accent)}.table td.numeric{font-family:var(--font-mono);text-align:right;color:var(--color-text-1);letter-spacing:var(--tracking-mono)}.table td.checkbox,.table th.checkbox{width:28px;padding-right:0}.table td.row-id{font-family:var(--font-mono);color:var(--color-text-3);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono)}.table .row-expand{background:oklch(10% .02 250/.6)}.table .row-expand td{padding:var(--size-3)}.dl-dense{font-size:var(--fs-xs);font-family:var(--font-mono);grid-template-columns:100px minmax(0,1fr);gap:0;display:grid}.dl-dense>dt{color:var(--color-text-3);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:var(--fs-micro);border-bottom:1px dashed var(--color-border);padding:4px 0}.dl-dense>dd{color:var(--color-text-1);letter-spacing:var(--tracking-mono);border-bottom:1px dashed var(--color-border);text-align:right;overflow-wrap:anywhere;word-break:break-word;min-width:0;margin:0;padding:4px 0}.dl-dense>dt:last-of-type,.dl-dense>dd:last-of-type{border-bottom:0}.dl-dense>dd.ok{color:var(--color-success)}.dl-dense>dd.warn{color:var(--color-warning)}.dl-dense>dd.err{color:var(--color-danger)}.nav-group-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);padding:var(--size-3) var(--size-3) var(--size-1)}.nav-item{align-items:center;gap:var(--size-2);padding:4px var(--size-3);margin-inline:var(--size-1);height:26px;font-size:var(--fs-sm);color:var(--color-text-2);border-radius:var(--radius-2);cursor:pointer;border:1px solid #0000;text-decoration:none;display:flex}.nav-item:hover{background:var(--glass-subtle);color:var(--color-text-1);text-decoration:none}.nav-item.active{color:var(--color-accent);background:oklch(85% .17 170/.1);border-color:oklch(85% .17 170/.2)}.nav-item svg{opacity:.85;flex:none;width:13px;height:13px}.nav-item-count{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);margin-left:auto}.tabs{border-bottom:1px solid var(--color-border);gap:0;height:30px;display:flex}.tab{padding:0 var(--size-3);align-items:center;gap:var(--size-2);height:100%;font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);cursor:pointer;transition:color var(--dur-fast), border-color var(--dur-fast);background:0 0;border:0;border-bottom:1px solid #0000;margin-bottom:-1px;display:inline-flex}.tab:hover{color:var(--color-text-1)}.tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.tab .tab-badge{font-size:var(--fs-micro);background:var(--tint-accent);color:var(--color-accent);border-radius:999px;padding:0 5px;line-height:14px}.tab[aria-disabled=true]{opacity:.4;cursor:not-allowed}.tabs.tabs-pill{border-bottom:0;border:1px solid var(--color-border);border-radius:var(--radius-2);background:oklch(10% .02 250);gap:1px;height:auto;padding:2px;display:inline-flex}.tabs.tabs-pill .tab{padding:4px var(--size-3);border-radius:var(--radius-1);border-bottom:0;height:22px;margin:0}.tabs.tabs-pill .tab.active{background:var(--tint-accent);color:var(--color-accent)}.metric{padding:var(--size-3) var(--size-4);background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(84% .17 165/.06), transparent 55%), var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);gap:var(--size-1);transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out);flex-direction:column;display:flex;position:relative}.metric:hover{border-color:var(--color-border-hover);background:radial-gradient(120% 80% at 0 0,oklch(84% .17 165/.09),#0000 55%),oklch(14% .02 250/.55)}.metric.m-cyan{background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(80% .14 220/.06), transparent 55%), var(--glass-subtle)}.metric.m-violet{background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(78% .15 300/.06), transparent 55%), var(--glass-subtle)}.metric.m-peach{background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(80% .1 55/.06), transparent 55%), var(--glass-subtle)}.metric-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.metric-value{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);color:var(--color-text-1);font-variant-numeric:tabular-nums;font-weight:500;line-height:1}.metric-row{align-items:baseline;gap:var(--size-2);display:flex}.metric-unit{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);letter-spacing:var(--tracking-mono)}.metric-delta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-success);letter-spacing:var(--tracking-mono);align-items:center;gap:2px;display:inline-flex}.metric-delta.neg{color:var(--color-danger)}.metric-spark{margin-top:var(--size-2)}.metric-strip{border:1px solid var(--color-border);border-radius:var(--radius-1);background:var(--glass-subtle);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid;overflow:hidden}.metric-strip>*{padding:var(--size-3) var(--size-4);border-right:1px solid var(--color-border);flex-direction:column;gap:2px;min-width:0;display:flex}.metric-strip>:last-child{border-right:0}.metric-strip .k{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.metric-strip .v{font-family:var(--font-display);font-size:var(--fs-md);color:var(--color-text-1);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-weight:500;line-height:1;overflow:hidden}.metric-strip .d{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-success);letter-spacing:var(--tracking-mono);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.metric-strip .k{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.metric-strip .d.neg{color:var(--color-danger)}.toast{align-items:flex-start;gap:var(--size-3);padding:var(--size-2) var(--size-3);background:var(--glass-strong);border:1px solid var(--color-border-accent);border-radius:var(--radius-2);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));box-shadow:var(--shadow-2);min-width:280px;font-size:var(--fs-xs);display:flex}.toast-title{font-size:var(--fs-sm);color:var(--color-text-1);font-weight:500}.toast-msg{font-size:var(--fs-micro);color:var(--color-text-3);margin-top:1px}.toast-danger{border-left-color:var(--color-danger)}.toast-warning{border-left-color:var(--color-warning)}.toast-success{border-left-color:var(--color-success)}kbd,.kbd{height:16px;line-height:14px;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-2);border:1px solid var(--color-border);border-radius:var(--radius-1);background:oklch(10% .02 250);border-bottom-width:2px;padding:0 4px;display:inline-block}pre.code-block{border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-3);font-family:var(--font-code);font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-snug);letter-spacing:var(--tracking-mono);background:oklch(10% .02 250);position:relative;overflow-x:auto}pre.code-block .kw{color:var(--color-accent)}pre.code-block .str{color:var(--color-accent2)}pre.code-block .num{color:oklch(82% .14 85)}pre.code-block .cmt{color:var(--color-text-mute);font-style:italic}pre.code-block .fn{color:oklch(82% .12 310)}.hero{padding:var(--size-7) 0 var(--size-6)}.hero-eyebrow{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--size-2)}.hero-title{font-family:var(--font-display);font-size:clamp(1.75rem, 4vw, var(--fs-3xl));letter-spacing:var(--tracking-tight);color:var(--color-text-1);font-weight:500;line-height:1.05}.hero-title em{color:var(--color-accent);font-style:normal}.hero-lede{margin-top:var(--size-3);max-width:52ch;color:var(--color-text-2);font-size:var(--fs-md);line-height:var(--lh-body)}.avatar{width:22px;height:22px;font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-accent);border:1px solid var(--color-border-strong);letter-spacing:var(--tracking-mono);background:linear-gradient(135deg,oklch(85% .17 170/.22),oklch(78% .12 220/.15));border-radius:999px;flex:none;place-items:center;display:grid}.avatar-xs{width:16px;height:16px;font-size:9px}.avatar-sm{width:22px;height:22px}.avatar-md{width:28px;height:28px;font-size:var(--fs-xs)}.avatar-lg{width:36px;height:36px;font-size:var(--fs-sm)}.empty{padding:var(--size-6) var(--size-5);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-1);color:var(--color-text-3)}.empty-title{color:var(--color-text-2);margin-bottom:var(--size-1);font-size:var(--fs-sm)}.sec-head{justify-content:space-between;align-items:baseline;gap:var(--size-3);margin-bottom:var(--size-3);padding:var(--size-2) var(--size-3);border-bottom:1px solid var(--color-border);border-radius:var(--radius-1) var(--radius-1) 0 0;background:radial-gradient(40% 100% at 0%,oklch(84% .17 165/.08),#0000 60%),linear-gradient(oklch(14% .02 250/.4),#0000);display:flex}.sec-head h2{font-size:var(--fs-md);font-weight:600}.sec-head .kicker{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent)}.type-chip{height:16px;font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;white-space:nowrap;border:1px solid;border-radius:999px;align-items:center;gap:5px;padding:1px 7px;display:inline-flex}.type-chip:before{content:"";background:currentColor;border-radius:999px;width:4px;height:4px;box-shadow:0 0 6px}.progress{background:oklch(20% .02 250);border-radius:999px;height:4px;position:relative;overflow:hidden}.progress>.bar{background:linear-gradient(90deg, var(--color-accent), var(--color-accent2));height:100%}.console{border:1px solid var(--color-border);border-radius:var(--radius-1);font-family:var(--font-mono);font-size:var(--fs-xs);background:radial-gradient(50% 100% at 100% 0,oklch(80% .14 220/.05),#0000 60%),oklch(8% .02 250);overflow:hidden}.console-head{align-items:center;gap:var(--size-2);padding:4px var(--size-3);border-bottom:1px solid var(--color-border);height:24px;font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);background:oklch(14% .02 250);display:flex}.console-head .dot{border-radius:999px;width:6px;height:6px}.console-body{padding:var(--size-3);line-height:1.55}.console-body .log-row{gap:var(--size-2);grid-template-columns:64px 52px minmax(0,1fr);display:grid}.console-body .log-ts{color:var(--color-text-3)}.console-body .log-tag.in{color:var(--color-accent)}.console-body .log-tag.out{color:var(--color-accent2)}.console-body .log-tag.err{color:var(--color-danger)}.console-body .log-tag.sys{color:var(--color-warning)}.console-body .log-tag.ok{color:var(--color-success)}.console-body .log-msg{color:var(--color-text-2);overflow-wrap:anywhere;word-break:break-word;min-width:0}.diff{font-family:var(--font-mono);font-size:var(--fs-xs);border:1px solid var(--color-border);border-radius:var(--radius-1);background:oklch(10% .02 250);line-height:1.5;overflow:hidden}.diff-row{grid-template-columns:32px 1fr;display:grid}.diff-row .ln{color:var(--color-text-3);text-align:right;padding:0 var(--size-2);border-right:1px solid var(--color-border)}.diff-row .ln.add{color:var(--color-success);background:oklch(82% .17 155/.1)}.diff-row .ln.del{color:var(--color-danger);background:oklch(70% .2 25/.1)}.diff-row .code{padding:0 var(--size-2);white-space:pre}.diff-row.add .code{color:var(--color-text-1);background:oklch(82% .17 155/.06)}.diff-row.add .code:before{content:"+ ";color:var(--color-success)}.diff-row.del .code{color:var(--color-text-1);background:oklch(70% .2 25/.06)}.diff-row.del .code:before{content:"− ";color:var(--color-danger)}.diff-row.ctx .code:before{content:"  ";color:var(--color-text-3)}.timeline{padding-left:var(--size-5);position:relative}.timeline:before{content:"";background:linear-gradient(to bottom, var(--color-accent), transparent);width:1px;position:absolute;top:4px;bottom:4px;left:4px}.timeline-item{padding-bottom:var(--size-3);position:relative}.timeline-item:before{content:"";left:calc(-1 * var(--size-5) + 1px);background:var(--color-accent);width:7px;height:7px;box-shadow:0 0 0 2px var(--color-base);border-radius:999px;position:absolute;top:5px}.timeline-item .ts{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono)}.timeline-item .ev-title{color:var(--color-text-1);font-weight:500;font-size:var(--fs-xs);margin-top:1px}.timeline-item .ev-body{color:var(--color-text-2);font-size:var(--fs-xs);margin-top:1px}.notif{gap:var(--size-3);padding:var(--size-3);background:var(--glass-medium);border:1px solid var(--color-border-accent);border-radius:var(--radius-1);font-size:var(--fs-xs);grid-template-columns:24px 1fr auto;align-items:start;display:grid}.notif-info{border-left-color:var(--color-info)}.notif-success{border-left-color:var(--color-success)}.notif-warning{border-left-color:var(--color-warning)}.notif-danger{border-left-color:var(--color-danger)}.notif-mochi{border-left-color:var(--violet-300)}.notif .n-ico{border:1px solid var(--color-border);width:22px;height:22px;color:var(--color-accent);background:oklch(14% .02 250);border-radius:999px;place-items:center;display:grid}.notif .n-ico svg{width:11px;height:11px}.notif-info .n-ico{color:var(--color-info);border-color:oklch(78% .12 220/.4)}.notif-success .n-ico{color:var(--color-success);border-color:oklch(82% .17 155/.4)}.notif-warning .n-ico{color:var(--color-warning);border-color:oklch(82% .14 85/.4)}.notif-danger .n-ico{color:var(--color-danger);border-color:oklch(70% .2 25/.4)}.notif-mochi .n-ico{color:var(--violet-300);border-color:oklch(78% .15 300/.4)}.notif .n-title{font-size:var(--fs-sm);color:var(--color-text-1);align-items:center;gap:var(--size-2);font-weight:600;display:flex}.notif .n-msg{font-size:var(--fs-xs);color:var(--color-text-3);margin-top:1px}.prose{color:var(--color-text-2);font-size:var(--fs-md);line-height:var(--lh-body);max-width:var(--layout-reading)}.prose>*+*{margin-top:var(--size-4)}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--color-text-1);font-family:var(--font-display);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}.prose h2{font-size:var(--fs-xl);margin-top:var(--size-6);font-weight:600}.prose h3{font-size:var(--fs-lg);margin-top:var(--size-5);font-weight:600}.prose h4{font-size:var(--fs-sm);margin-top:var(--size-4);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-accent);font-weight:600}.prose p{text-wrap:pretty}.prose a{color:var(--color-accent);border-bottom:1px dashed oklch(85% .17 170/.4);text-decoration:none}.prose a:hover{color:var(--color-accent2);border-bottom-color:var(--color-accent2)}.prose strong,.prose b{color:var(--color-text-1);font-weight:600}.prose em,.prose i{color:var(--color-text-1);font-style:italic}.prose small{font-size:var(--fs-xs);color:var(--color-text-3)}.prose code,.prose .inline-code{font-family:var(--font-mono);color:var(--color-accent);border:1px solid var(--color-border);background:oklch(85% .17 170/.08);border-radius:2px;padding:0 4px;font-size:.9em}.prose ul,.prose ol{padding-left:var(--size-5);margin-block:var(--size-3)}.prose ul li,.prose ol li{margin-top:var(--size-1)}.prose ul{padding-left:0;list-style:none}.prose ul>li{padding-left:var(--size-4);position:relative}.prose ul>li:before{content:"";background:var(--color-accent);width:8px;height:1px;position:absolute;top:.65em;left:0}.prose ol{counter-reset:li;padding-left:0;list-style:none}.prose ol>li{counter-increment:li;padding-left:var(--size-5);position:relative}.prose ol>li:before{content:counter(li, decimal-leading-zero);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-accent);letter-spacing:var(--tracking-mono);position:absolute;top:0;left:0}.prose blockquote{border:1px solid var(--color-border-accent);border-radius:var(--radius-1);padding:var(--size-3) var(--size-4);color:var(--color-text-1);background:var(--tint-accent);margin-block:var(--size-4);font-style:italic}.prose hr{border:0;border-top:1px dashed var(--color-border);margin-block:var(--size-5)}.prose mark,.prose .mark,mark,.mark{color:var(--color-text-1);border-bottom:var(--hl-accent-underline);-webkit-box-decoration-break:clone;box-decoration-break:clone;background:0 0;border-radius:0;padding:0 1px;text-decoration:none}.prose mark.subtle,mark.subtle{background:var(--hl-accent-subtle);border-bottom:0;border-radius:2px;padding:1px 3px}.callout{gap:var(--size-3);padding:var(--size-3) var(--size-4);border:1px solid var(--color-border-accent);background:var(--tint-accent);border-radius:var(--radius-1);font-size:var(--fs-sm);grid-template-columns:14px minmax(0,1fr);align-items:start;display:grid}.callout .callout-icon{color:var(--color-accent);margin-top:2px}.callout-title{color:var(--color-text-1);font-weight:600;font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;margin-bottom:2px}.callout-body{font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-body)}.callout-info{border-color:var(--color-info);background:var(--tint-info)}.callout-info .callout-icon,.callout-info .callout-title{color:var(--color-info)}.callout-warning{border-color:var(--color-warning);background:var(--tint-warning)}.callout-warning .callout-icon,.callout-warning .callout-title{color:var(--color-warning)}.callout-danger{border-color:var(--color-danger);background:var(--tint-danger)}.callout-danger .callout-icon,.callout-danger .callout-title{color:var(--color-danger)}.callout-note{border-color:var(--violet-300);background:var(--tint-violet)}.callout-note .callout-icon,.callout-note .callout-title{color:var(--violet-300)}.ring-stat{gap:var(--size-3);grid-template-columns:56px 1fr;align-items:center;display:grid}.ring-stat svg{width:56px;height:56px;transform:rotate(-90deg)}.ring-stat .ring-bg{fill:none;stroke:oklch(20% .02 250);stroke-width:6px}.ring-stat .ring-fg{fill:none;stroke:var(--color-accent);stroke-width:6px;stroke-linecap:round}.heatmap{grid-template-columns:repeat(24,1fr);gap:1px;display:grid}.heatmap>div{aspect-ratio:1;background:oklch(85% .17 170 / var(--a,.05));border-radius:1px}.funnel{gap:var(--size-1);flex-direction:column;display:flex}.funnel .step{gap:var(--size-3);font-size:var(--fs-xs);grid-template-columns:120px 1fr 56px;align-items:center;display:grid}.funnel .step .fn-label{color:var(--color-text-2)}.funnel .step .fn-track{background:oklch(18% .02 250);border-radius:2px;height:18px;position:relative;overflow:hidden}.funnel .step .fn-bar{background:linear-gradient(90deg, var(--color-accent), var(--color-accent2));height:100%;padding-right:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);color:oklch(0% 0 0/.78);letter-spacing:var(--tracking-mono);justify-content:flex-end;align-items:center;display:flex}.funnel .step .fn-pct{font-family:var(--font-mono);color:var(--color-text-3);font-size:var(--fs-micro);text-align:right;letter-spacing:var(--tracking-mono)}.ramp{border:1px solid var(--color-border);border-radius:var(--radius-1);font-family:var(--font-mono);font-size:var(--fs-micro);grid-template-columns:repeat(10,1fr);display:grid;overflow:hidden}.ramp>div{padding:var(--size-2);color:oklch(0% 0 0/.7);min-height:48px;letter-spacing:var(--tracking-mono);flex-direction:column;justify-content:space-between;display:flex}.ramp>div.dark{color:oklch(100% 0 0/.85)}.ramp>div .step{opacity:.6}.card-article{grid-template-rows:100px auto;padding:0;display:grid;overflow:hidden}.card-article.compact{grid-template-rows:auto;grid-template-columns:80px 1fr}.card-article .cover{background:linear-gradient(135deg,oklch(85% .17 170/.4),oklch(78% .12 220/.3)),oklch(20% .04 250);position:relative;overflow:hidden}.card-article .cover:before{content:"";background-image:linear-gradient(oklch(85% .17 170/.12) 1px,#0000 1px),linear-gradient(90deg,oklch(85% .17 170/.12) 1px,#0000 1px);background-size:20px 20px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 70%,#000,#0000 70%);mask-image:radial-gradient(at 70%,#000,#0000 70%)}.card-article .cover-label{left:var(--size-3);bottom:var(--size-3);z-index:2;position:absolute}.card-article .body{padding:var(--size-3) var(--size-4)}.card-image{border-color:oklch(78% .15 300/.25);padding:0;overflow:hidden}.card-image .frame{aspect-ratio:1;background:radial-gradient(at 30% 30%,oklch(78% .15 300/.45),#0000 60%),radial-gradient(at 70% 80%,oklch(78% .12 220/.45),#0000 60%),oklch(12% .04 280);position:relative}.card-image .frame-seed{top:var(--size-2);left:var(--size-2);color:oklch(100% 0 0/.9);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);z-index:2;background:oklch(0% 0 0/.6);border-radius:2px;padding:1px 5px;position:absolute}.card-image .body{padding:var(--size-3)}.audio-player{gap:var(--size-3);padding:var(--size-2) var(--size-3);background:var(--glass-medium);border:1px solid var(--color-border-accent);border-radius:var(--radius-1);grid-template-columns:36px minmax(0,1fr) auto;align-items:center;min-width:0;display:grid}.audio-player .play{border:1px solid var(--color-accent);background:var(--tint-accent);width:32px;height:32px;color:var(--color-accent);cursor:pointer;border-radius:999px;place-items:center;display:grid}.audio-player .play:hover{background:var(--color-accent);color:var(--color-base)}.audio-player .play svg{width:12px;height:12px}.audio-player .info{min-width:0}.audio-player .title{font-size:var(--fs-xs);color:var(--color-text-1);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.audio-player .scrub{gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;margin-top:2px;display:grid}.audio-player .wave{align-items:center;gap:1px;height:18px;display:flex}.audio-player .wave span{background:var(--color-border-strong);border-radius:1px;flex:1;min-height:2px}.audio-player .wave span.played{background:var(--color-accent)}.audio-player .actions{color:var(--color-text-3);gap:2px;display:flex}.audio-player .actions button{color:inherit;cursor:pointer;background:0 0;border:0;width:22px;height:22px;padding:4px}.audio-player .actions button:hover{color:var(--color-accent)}.event-card{gap:var(--size-3);padding:var(--size-3);background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);font-size:var(--fs-xs);grid-template-columns:2px minmax(0,1fr) auto;min-width:0;display:grid}.event-card>.spine{background:var(--color-accent);border-radius:1px}.event-card.event-err>.spine{background:var(--color-danger)}.event-card.event-warn>.spine{background:var(--color-warning)}.event-card.event-info>.spine{background:var(--color-info)}.event-card .ev-head{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);display:flex}.event-card .ev-msg{font-size:var(--fs-xs);color:var(--color-text-1);margin-top:2px}.event-card .ev-payload{margin-top:var(--size-2);padding:var(--size-2);border:1px solid var(--color-border);border-radius:var(--radius-1);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-2);background:oklch(10% .02 250);line-height:1.5}.card-stat{padding:var(--size-3) var(--size-4);background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(84% .17 165/.05), transparent 55%), var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);min-width:0;position:relative;overflow:hidden}.card-stat .s-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.card-stat .s-value{font-family:var(--font-display);font-size:var(--fs-xl);margin-top:var(--size-1);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;font-weight:500;line-height:1}.card-stat .s-delta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-success);margin-top:var(--size-1);letter-spacing:var(--tracking-mono)}.card-stat .s-delta.neg{color:var(--color-danger)}.card-stat .s-spark{opacity:.75;pointer-events:none;position:absolute;bottom:0;right:0}.card-tool{background:linear-gradient(oklch(80% .14 220/.05),#0000);border-color:oklch(80% .14 220/.25)}.card-skill{background:linear-gradient(oklch(80% .1 55/.05),#0000);border-color:oklch(80% .1 55/.25)}.tool-sig{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);border:1px solid var(--color-border);letter-spacing:var(--tracking-mono);background:oklch(10% .02 250);border-radius:2px;padding:3px 6px}.tool-sig .arg{color:var(--color-accent2)}.tool-sig .ret{color:var(--color-accent)}.chart-card{padding:var(--size-4);background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1)}.chart-head{margin-bottom:var(--size-3);justify-content:space-between;align-items:baseline;display:flex}.chart-head .c-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.chart-head .c-value{font-family:var(--font-display);font-size:var(--fs-md);color:var(--color-text-1);font-weight:500}.chart-svg{width:100%;display:block}.chart-svg .axis{stroke:var(--color-border)}.chart-svg .grid{stroke:var(--color-border);stroke-dasharray:2 3;opacity:.5}.chart-svg .tick{fill:var(--color-text-3);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);font-size:9px}.metric-rich{padding:var(--size-3) var(--size-4) 0;background:linear-gradient(180deg, oklch(12% .02 250/.6), oklch(10% .02 250/.3)), var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-rows:auto 1fr auto;min-width:0;min-height:116px;display:grid;position:relative;overflow:hidden}.metric-rich:before{content:"";background:radial-gradient(ellipse 120% 80% at 0% 0%, var(--m-tint,var(--color-accent) / .08), transparent 55%);pointer-events:none;position:absolute;inset:0}.metric-rich.m-accent{--m-tint:oklch(84% .17 165/.08);--m-stroke:var(--color-accent)}.metric-rich.m-cyan{--m-tint:oklch(80% .14 220/.08);--m-stroke:var(--color-accent2)}.metric-rich.m-violet{--m-tint:oklch(78% .15 300/.08);--m-stroke:var(--violet-300)}.metric-rich.m-peach{--m-tint:oklch(80% .1 55/.08);--m-stroke:var(--peach-300,oklch(80% .1 55))}.metric-rich.m-danger{--m-tint:oklch(65% .2 25/.08);--m-stroke:var(--color-danger)}.metric-rich>*{z-index:1;position:relative}.metric-rich .m-head{justify-content:space-between;align-items:center;gap:var(--size-2);min-width:0;display:flex}.metric-rich .m-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);align-items:center;gap:5px;min-width:0;display:flex}.metric-rich .m-label .m-ico{width:10px;height:10px;color:var(--m-stroke,var(--color-accent));flex:none}.metric-rich .m-badge{font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;border:1px solid var(--color-border);color:var(--color-text-3);white-space:nowrap;background:oklch(100% 0 0/.04);border-radius:2px;padding:1px 4px;font-size:9px}.metric-rich .m-row{align-items:baseline;gap:var(--size-2);margin-top:var(--size-2);min-width:0;display:flex}.metric-rich .m-value{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;color:var(--color-text-1);white-space:nowrap;font-size:30px;font-weight:500;line-height:1}.metric-rich .m-value .u{color:var(--color-text-3);margin-left:2px;font-size:14px;font-weight:400}.metric-rich .m-delta{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-success);white-space:nowrap;background:oklch(84% .17 165/.08);border:1px solid oklch(84% .17 165/.2);border-radius:2px;align-items:center;gap:3px;padding:1px 5px;display:inline-flex}.metric-rich .m-delta.neg{color:var(--color-danger);background:oklch(65% .2 25/.08);border-color:oklch(65% .2 25/.2)}.metric-rich .m-sub{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;overflow:hidden}.metric-rich .m-spark{margin:var(--size-2) calc(var(--size-4) * -1) 0;width:calc(100% + var(--size-4) * 2);height:32px;display:block}.metric-rich .m-bar-comp{margin-top:var(--size-2);margin-bottom:var(--size-2);align-items:center;gap:var(--size-2);font-family:var(--font-mono);color:var(--color-text-3);letter-spacing:var(--tracking-mono);grid-template-columns:32px 1fr 32px;font-size:9px;display:grid}.metric-rich .m-bar-comp .track{background:oklch(100% 0 0/.05);border-radius:2px;height:4px;display:grid;overflow:hidden}.metric-rich .m-bar-comp .track>span{background:var(--m-stroke,var(--color-accent));border-radius:2px;grid-area:1/1;height:100%}.audio-editorial{background:linear-gradient(180deg, oklch(14% .03 250/.7), oklch(10% .02 250/.4)), var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-columns:72px minmax(0,1fr);gap:0;min-width:0;display:grid;position:relative;overflow:hidden}.audio-editorial:before{content:"";pointer-events:none;background:radial-gradient(40% 100% at 0%,oklch(84% .17 165/.08),#0000 60%);position:absolute;inset:0}.audio-editorial>*{z-index:1;position:relative}.audio-editorial .ae-cover{border-right:1px solid var(--color-border);background:repeating-linear-gradient(45deg,#0000 0 6px,oklch(100% 0 0/.025) 6px 7px),linear-gradient(155deg,oklch(20% .05 165/.6),oklch(15% .04 200/.4));place-items:center;display:grid;position:relative}.audio-editorial .ae-cover:after{content:"VI";font-family:var(--font-mono);letter-spacing:var(--tracking-caps);color:var(--color-accent);background:oklch(0% 0 0/.6);border-radius:2px;padding:1px 4px;font-size:9px;position:absolute;bottom:4px;left:4px}.audio-editorial .ae-play{background:var(--color-accent);width:42px;height:42px;color:var(--color-base);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;box-shadow:0 2px 12px oklch(84% .17 165/.25)}.audio-editorial .ae-play svg{width:14px;height:14px;margin-left:2px}.audio-editorial .ae-body{padding:var(--size-3) var(--size-4);gap:var(--size-2);grid-template-rows:auto auto auto;min-width:0;display:grid}.audio-editorial .ae-head{justify-content:space-between;align-items:baseline;gap:var(--size-3);min-width:0;display:flex}.audio-editorial .ae-title{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--color-text-1);letter-spacing:var(--tracking-tight);white-space:nowrap;text-overflow:ellipsis;min-width:0;font-weight:500;overflow:hidden}.audio-editorial .ae-meta-row{align-items:center;gap:var(--size-3);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);white-space:nowrap;display:flex}.audio-editorial .ae-meta-row .bul{color:var(--color-text-mute)}.audio-editorial .ae-meta-row .vo{color:var(--color-accent2)}.audio-editorial .ae-waveform{cursor:pointer;align-items:center;gap:1px;height:28px;padding:0;display:flex}.audio-editorial .ae-waveform span{background:var(--color-border-strong);border-radius:1px;flex:1;min-height:2px;transition:background 80ms}.audio-editorial .ae-waveform span.played{background:var(--color-accent)}.audio-editorial .ae-waveform span.head{background:var(--color-text-1)}.audio-editorial .ae-scrub{align-items:center;gap:var(--size-3);grid-template-columns:auto 1fr auto auto;min-width:0;display:grid}.audio-editorial .ae-time{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-2);letter-spacing:var(--tracking-mono);font-variant-numeric:tabular-nums}.audio-editorial .ae-time .cur{color:var(--color-accent)}.audio-editorial .ae-actions{gap:2px;display:flex}.audio-editorial .ae-actions button{border:1px solid var(--color-border);width:22px;height:22px;color:var(--color-text-3);cursor:pointer;background:0 0;border-radius:2px;place-items:center;display:grid}.audio-editorial .ae-actions button:hover{color:var(--color-accent);border-color:var(--color-accent)}.audio-editorial .ae-actions button.rate{width:auto;font-family:var(--font-mono);letter-spacing:var(--tracking-mono);padding:0 5px;font-size:9px}.audio-editorial .ae-transcript{padding:var(--size-2) var(--size-4) var(--size-3);border-top:1px dashed var(--color-border);font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-body);gap:var(--size-3);background:oklch(8% .02 250/.3);grid-column:1/-1;min-width:0;display:flex}.audio-editorial .ae-transcript .ts{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-accent);letter-spacing:var(--tracking-mono);flex:none}.audio-editorial .ae-transcript em{background:linear-gradient(transparent 85%, var(--hl-accent-underline,oklch(84% .17 165/.4)) 85%);font-style:normal}.event-rich{background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-columns:3px minmax(0,1fr) auto;min-width:0;display:grid;position:relative;overflow:hidden}.event-rich>.spine-col{background:var(--color-accent)}.event-rich.ev-info>.spine-col{background:var(--color-info)}.event-rich.ev-warn>.spine-col{background:var(--color-warning)}.event-rich.ev-err>.spine-col{background:var(--color-danger)}.event-rich.ev-ok>.spine-col{background:var(--color-success)}.event-rich .er-body{padding:var(--size-3) var(--size-4);gap:var(--size-2);flex-direction:column;min-width:0;display:flex}.event-rich .er-head{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);flex-wrap:wrap;display:flex}.event-rich .er-head .er-ts{color:var(--color-text-2)}.event-rich .er-head .er-src{color:var(--color-accent2);background:oklch(80% .14 220/.1);border-radius:2px;padding:1px 5px}.event-rich.ev-err .er-head .er-src{color:var(--color-danger);background:oklch(65% .2 25/.1)}.event-rich.ev-warn .er-head .er-src{color:var(--color-warning);background:oklch(85% .15 85/.1)}.event-rich.ev-ok .er-head .er-src{color:var(--color-success);background:oklch(84% .17 165/.1)}.event-rich .er-msg{font-size:var(--fs-xs);color:var(--color-text-1);line-height:var(--lh-body)}.event-rich .er-payload{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);padding:var(--size-2);border:1px solid var(--color-border);gap:var(--size-1) var(--size-3);background:oklch(0% 0 0/.3);border-radius:2px;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));min-width:0;display:grid}.event-rich .er-payload .k{color:var(--color-text-mute)}.event-rich .er-payload .v{color:var(--color-accent)}.event-rich .er-payload .v.warn{color:var(--color-warning)}.event-rich .er-payload .v.ok{color:var(--color-success)}.event-rich .er-aside{padding:var(--size-3);justify-content:space-between;align-items:flex-end;gap:var(--size-2);border-left:1px solid var(--color-border);background:oklch(0% 0 0/.2);flex-direction:column;min-width:84px;display:flex}.event-rich .er-aside .dur{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-1);letter-spacing:var(--tracking-mono);font-variant-numeric:tabular-nums}.event-rich .er-aside .dur-label{font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-mute);font-size:9px}.stat-rich{min-height:132px;padding:var(--size-3) var(--size-4);background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-rows:auto 1fr auto;min-width:0;display:grid;position:relative;overflow:hidden}.stat-rich .sr-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);align-items:center;gap:5px;display:flex}.stat-rich .sr-value{font-family:var(--font-display);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;margin-top:var(--size-2);color:var(--color-text-1);font-size:32px;font-weight:500;line-height:1}.stat-rich .sr-sub{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);margin-top:2px}.stat-rich .sr-foot{justify-content:space-between;align-items:center;gap:var(--size-2);margin-top:var(--size-3);padding-top:var(--size-2);border-top:1px dashed var(--color-border);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);display:flex}.stat-rich .sr-spark-wrap{opacity:.5;pointer-events:none;height:30px;position:absolute;bottom:0;left:0;right:0}.stat-rich .sr-spark-wrap svg{width:100%;height:100%;display:block}.card-image-rich{background:var(--color-surface-1);border-radius:var(--radius-1);border:1px solid oklch(78% .15 300/.25);grid-template-rows:auto auto;min-width:0;display:grid;overflow:hidden}.card-image-rich .frame{aspect-ratio:1;background:repeating-linear-gradient(135deg,#0000 0 8px,oklch(100% 0 0/.03) 8px 9px),radial-gradient(circle at 70% 30%,oklch(40% .22 300/.5),#0000 55%),radial-gradient(circle at 20% 80%,oklch(50% .2 25/.4),#0000 55%),linear-gradient(135deg,oklch(18% .05 280),oklch(12% .04 250));position:relative;overflow:hidden}.card-image-rich .frame:after{content:"";background:linear-gradient(135deg,#0000 48%,oklch(100% 0 0/.06) 50%,#0000 52%);position:absolute;inset:0}.card-image-rich .frame .overlay{padding:var(--size-2);flex-direction:column;justify-content:space-between;display:flex;position:absolute;inset:0}.card-image-rich .frame .chip-top{justify-content:space-between;gap:var(--size-2);display:flex}.card-image-rich .frame .chip{font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-2);-webkit-backdrop-filter:blur(var(--glass-blur-chip));backdrop-filter:blur(var(--glass-blur-chip));background:oklch(0% 0 0/.6);border:1px solid oklch(100% 0 0/.08);border-radius:2px;padding:2px 5px;font-size:9px}.card-image-rich .frame .chip.accent{color:var(--violet-300);border-color:oklch(78% .15 300/.4)}.card-image-rich .frame .prompt-echo{font-family:var(--font-mono);color:oklch(100% 0 0/.45);letter-spacing:var(--tracking-mono);padding:var(--size-2);background:linear-gradient(#0000,oklch(0% 0 0/.6));border-radius:2px;font-size:9px;line-height:1.3}.card-image-rich .body{padding:var(--size-3) var(--size-4);gap:4px;display:grid}.card-image-rich .ir-title{font-family:var(--font-display);font-size:var(--fs-sm);color:var(--color-text-1);letter-spacing:var(--tracking-tight);font-weight:500}.card-image-rich .ir-meta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);gap:var(--size-2);flex-wrap:wrap;display:flex}.card-image-rich .ir-meta .dot{color:var(--color-text-mute)}.card-image-rich .ir-meta .model{color:var(--violet-300)}.card-image-rich .ir-foot{margin-top:var(--size-2);padding-top:var(--size-2);border-top:1px dashed var(--color-border);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);justify-content:space-between;display:flex}.card-image-rich .ir-foot .cost{color:var(--color-accent)}.do-dont{gap:var(--size-3);grid-template-columns:1fr 1fr;min-width:0;display:grid}.dd-card{border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-rows:auto auto 1fr;min-width:0;display:grid;overflow:hidden}.dd-card.do{background:linear-gradient(oklch(84% .17 165/.04),#0000 60%);border-color:oklch(84% .17 165/.25)}.dd-card.dont{background:linear-gradient(oklch(65% .2 25/.04),#0000 60%);border-color:oklch(65% .2 25/.25)}.dd-head{align-items:center;gap:var(--size-2);padding:var(--size-2) var(--size-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;border-bottom:1px solid var(--color-border);display:flex}.dd-card.do .dd-head{color:var(--color-success);background:oklch(84% .17 165/.06)}.dd-card.dont .dd-head{color:var(--color-danger);background:oklch(65% .2 25/.06)}.dd-head .dd-glyph{width:14px;height:14px;color:var(--color-base);background:currentColor;border-radius:2px;place-items:center;font-size:10px;font-weight:700;display:grid}.dd-head .dd-glyph span{color:var(--color-base)}.dd-head .dd-count{color:var(--color-text-3);margin-left:auto}.dd-specimen{padding:var(--size-3);border-bottom:1px dashed var(--color-border);background:oklch(0% 0 0/.25);align-items:center;min-height:62px;display:flex;overflow:hidden}.dd-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.dd-list li{gap:var(--size-2);padding:var(--size-2) var(--size-3);font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-body);border-bottom:1px solid var(--color-border);grid-template-columns:18px 1fr;display:grid}.dd-list li:last-child{border-bottom:0}.dd-list li .glyph{font-family:var(--font-mono);text-align:center;font-size:11px;font-weight:600}.dd-card.do .dd-list li .glyph{color:var(--color-success)}.dd-card.dont .dd-list li .glyph{color:var(--color-danger)}.dd-list li .why{font-family:var(--font-mono);color:var(--color-text-mute);letter-spacing:var(--tracking-mono);margin-top:2px;font-size:10px;display:block}.chart-panel{background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-3) var(--size-4);grid-template-rows:auto auto 1fr auto;min-width:0;display:grid;position:relative;overflow:hidden}.chart-panel .cp-head{justify-content:space-between;align-items:baseline;gap:var(--size-3);min-width:0;display:flex}.chart-panel .cp-title{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.chart-panel .cp-hero{align-items:baseline;gap:var(--size-2);margin-top:2px;display:flex}.chart-panel .cp-value{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;color:var(--color-text-1);font-weight:500;line-height:1}.chart-panel .cp-delta{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-success);letter-spacing:var(--tracking-mono)}.chart-panel .cp-delta.neg{color:var(--color-danger)}.chart-panel .cp-legend{gap:var(--size-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);margin-top:var(--size-2);flex-wrap:wrap;display:flex}.chart-panel .cp-legend .lg{align-items:center;gap:5px;display:inline-flex}.chart-panel .cp-legend .sw{border-radius:1px;width:8px;height:8px}.chart-panel .cp-body{margin-top:var(--size-3);min-height:0}.chart-panel .cp-foot{margin-top:var(--size-3);padding-top:var(--size-2);border-top:1px dashed var(--color-border);font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);justify-content:space-between;display:flex}.chart-panel svg{width:100%;display:block}.chart-panel svg .axis{stroke:var(--color-border)}.chart-panel svg .grid{stroke:var(--color-border);stroke-dasharray:2 3;opacity:.4}.chart-panel svg .tick{fill:var(--color-text-3);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);font-size:9px}.chart-panel svg .xy-label{fill:var(--color-text-mute);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:9px}.heatmap{font-family:var(--font-mono);color:var(--color-text-3);letter-spacing:var(--tracking-mono);grid-template-columns:auto repeat(24,1fr);gap:2px;font-size:9px;display:grid}.heatmap .hm-row-label,.heatmap .hm-col-label{color:var(--color-text-mute);white-space:nowrap;padding:2px 4px}.heatmap .hm-col-label{text-align:center}.heatmap .hm-cell{aspect-ratio:1;background:oklch(100% 0 0/.03);border-radius:1px}.heatmap .hm-cell.l1{background:oklch(84% .17 165/.12)}.heatmap .hm-cell.l2{background:oklch(84% .17 165/.28)}.heatmap .hm-cell.l3{background:oklch(84% .17 165/.5)}.heatmap .hm-cell.l4{background:oklch(84% .17 165/.8)}.ring-wrap{gap:var(--size-3);grid-template-columns:72px 1fr;align-items:center;display:grid}.ring-wrap svg{width:72px;height:72px}.ring-wrap .ring-track{stroke:var(--color-border);fill:none;stroke-width:6px}.ring-wrap .ring-fill{stroke:var(--color-accent);fill:none;stroke-width:6px;stroke-linecap:round;transform-origin:50%;transform:rotate(-90deg)}.ring-wrap .ring-pct{fill:var(--color-text-1);font-family:var(--font-display);text-anchor:middle;dominant-baseline:middle;letter-spacing:var(--tracking-tight);font-size:16px;font-weight:500}.ring-wrap .ring-body{font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-body)}.ring-wrap .ring-body .k{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-caps);text-transform:uppercase}.crumbs{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);display:flex}.crumbs a{color:var(--color-text-3);text-decoration:none}.crumbs a:hover{color:var(--color-accent)}.crumbs .cur{color:var(--color-text-1)}.crumbs .sep{color:var(--color-text-mute)}.toolbar{align-items:center;gap:var(--size-2);min-height:36px;padding:var(--size-1) var(--size-3);background:radial-gradient(ellipse 40% 100% at 0% 50%, oklch(84% .17 165/.06), transparent 55%), var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);flex-wrap:wrap;display:flex}.toolbar .sep{background:var(--color-border);width:1px;height:18px;margin-inline:var(--size-1)}.status-bar{align-items:center;gap:var(--size-4);height:22px;padding:0 var(--size-3);border-top:1px solid var(--color-border);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);background:radial-gradient(20% 100% at 0%,oklch(84% .17 165/.08),#0000 60%),oklch(10% .02 250);display:flex}.status-bar .seg{align-items:center;gap:var(--size-2);display:flex}.status-bar .sep{background:var(--color-border);width:1px;height:12px}.workbench>.wb-nav{background:radial-gradient(ellipse 140% 40% at 0% 0%, oklch(84% .17 165/.07), transparent 55%), radial-gradient(ellipse 80% 30% at 0% 100%, oklch(80% .14 220/.04), transparent 60%), var(--glass-subtle)}.workbench>.wb-side{background:radial-gradient(ellipse 140% 40% at 100% 0%, oklch(80% .14 220/.06), transparent 55%), radial-gradient(ellipse 80% 30% at 100% 100%, oklch(78% .15 300/.04), transparent 60%), var(--glass-subtle)}.workbench>.wb-main{background:radial-gradient(1600px 500px at 10% 0,oklch(84% .17 165/.03),#0000 55%),radial-gradient(1200px 400px at 90% 0,oklch(80% .14 220/.025),#0000 55%)}.nav-item.active{box-shadow:inset 2px 0 0 var(--color-accent), var(--glow-accent-sm);background:radial-gradient(100% 80% at 0%,oklch(84% .17 165/.22),#0000 60%),oklch(84% .17 165/.06);border-color:oklch(85% .17 170/.28)}.nav-group+.nav-group{border-top:1px solid var(--color-border)}.table th{background:radial-gradient(80% 120% at 0%,oklch(84% .17 165/.05),#0000 60%),oklch(16% .02 250)}.table tr:hover td{background:radial-gradient(40% 120% at 0%,oklch(84% .17 165/.06),#0000 60%),oklch(20% .02 250/.4)}.tabs.tabs-pill .tab.active{background:radial-gradient(ellipse 80% 100% at 50% 100%, oklch(84% .17 165/.18), transparent 60%), var(--tint-accent);box-shadow:inset 0 -1px 0 var(--color-accent)}.tabs:not(.tabs-pill) .tab.active{background:radial-gradient(100% 50% at 50% 100%,oklch(84% .17 165/.08),#0000 70%)}.metric-rich:before{background:radial-gradient(ellipse 130% 90% at 0% 0%, var(--m-tint,oklch(84% .17 165/.1)), transparent 55%), radial-gradient(ellipse 60% 40% at 100% 100%, var(--m-tint,oklch(84% .17 165/.05)), transparent 60%)}.ring-stat{isolation:isolate;position:relative}.ring-stat svg{filter:drop-shadow(0 0 8px oklch(84% .17 165/.25))}.ring-stat .ring-fg{stroke:url(#ring-grad-accent)}.heatmap{padding:var(--size-1);border:1px solid var(--color-border);border-radius:var(--radius-1);background:radial-gradient(80% 60% at 0 0,oklch(84% .17 165/.05),#0000 55%),oklch(12% .02 250/.5)}.heatmap>div:hover{background:oklch(85% .17 170 / calc(var(--a,.05) + .15));box-shadow:0 0 0 1px oklch(85% .17 170/.5),0 0 8px oklch(85% .17 170/.3)}.chart-card{background:radial-gradient(ellipse 120% 80% at 0% 0%, oklch(84% .17 165/.05), transparent 55%), radial-gradient(ellipse 60% 60% at 100% 100%, oklch(80% .14 220/.03), transparent 60%), var(--glass-subtle)}.event-rich{background:radial-gradient(ellipse 80% 80% at 0% 50%, oklch(84% .17 165/.04), transparent 55%), var(--glass-subtle)}.event-rich.ev-err{background:radial-gradient(ellipse 80% 80% at 0% 50%, oklch(65% .2 25/.06), transparent 55%), var(--glass-subtle)}.event-rich.ev-warn{background:radial-gradient(ellipse 80% 80% at 0% 50%, oklch(82% .14 85/.06), transparent 55%), var(--glass-subtle)}.event-rich.ev-ok{background:radial-gradient(ellipse 80% 80% at 0% 50%, oklch(82% .17 155/.05), transparent 55%), var(--glass-subtle)}.event-rich.ev-info{background:radial-gradient(ellipse 80% 80% at 0% 50%, oklch(78% .12 220/.05), transparent 55%), var(--glass-subtle)}.stat-rich{background:radial-gradient(ellipse 140% 80% at 100% 0%, oklch(84% .17 165/.06), transparent 55%), radial-gradient(ellipse 60% 60% at 0% 100%, oklch(80% .14 220/.03), transparent 60%), var(--glass-subtle)}.card-article .frame{background:radial-gradient(80% 60% at 100% 30%,oklch(84% .17 165/.18),#0000 55%),radial-gradient(60% 50% at 0 100%,oklch(80% .14 220/.14),#0000 55%),linear-gradient(155deg,oklch(85% .17 170/.2),oklch(78% .12 220/.12)),oklch(18% .04 250)}.input:focus,.input:focus-visible,.select:focus,.textarea:focus,textarea.input:focus{box-shadow:0 0 0 3px oklch(85% .17 170/.12), var(--glow-accent-sm)}.btn-primary:hover{box-shadow:var(--glow-accent-sm)}.btn-primary:focus-visible{box-shadow:0 0 0 3px oklch(85% .17 170/.2), var(--glow-accent-sm)}.console{background:radial-gradient(40% 100% at 100% 0,oklch(80% .14 220/.06),#0000 60%),radial-gradient(30% 80% at 0 100%,oklch(84% .17 165/.04),#0000 60%),oklch(8% .02 250)}.callout{isolation:isolate;position:relative;overflow:hidden}.callout:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(ellipse 50% 100% at 0% 50%, var(--cl-tint,oklch(84% .17 165/.08)), transparent 55%);position:absolute;inset:0}.callout>*{z-index:1;position:relative}.callout.info{--cl-tint:oklch(78% .12 220/.1)}.callout.success{--cl-tint:oklch(82% .17 155/.1)}.callout.warning{--cl-tint:oklch(82% .14 85/.1)}.callout.danger{--cl-tint:oklch(70% .2 25/.1)}.ring-grad-stops stop:first-child{stop-color:oklch(85% .17 170)}.ring-grad-stops stop:last-child{stop-color:oklch(78% .12 220)}.grad-divider{background:linear-gradient(90deg, transparent, var(--color-accent), var(--color-accent2), transparent);opacity:.5;height:1px;margin:var(--size-4) 0}.sec-head,.sec-head-ds{position:relative}.sec-head:before,.sec-head-ds:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(30% 120% at 0%,oklch(84% .17 165/.08),#0000 55%);position:absolute;inset:0}.sec-head>*,.sec-head-ds>*{z-index:1;position:relative}.toolbar .btn:hover{box-shadow:inset 0 -1px oklch(84% .17 165/.2)}.progress{background:oklch(16% .02 250);box-shadow:inset 0 1px 2px oklch(0% 0 0/.3)}.progress>.bar{box-shadow:0 0 8px oklch(84% .17 165/.35)}.badge .dot{box-shadow:0 0 6px}.dot.ok{box-shadow:0 0 6px var(--color-success)}.dot.warn{box-shadow:0 0 6px var(--color-warning)}.dot.err{box-shadow:0 0 6px var(--color-danger)}.spark-grad-mint stop:first-child{stop-color:oklch(85% .17 170/.5)}.spark-grad-mint stop:last-child{stop-color:oklch(85% .17 170/0)}.spark-grad-cyan stop:first-child{stop-color:oklch(78% .12 220/.5)}.spark-grad-cyan stop:last-child{stop-color:oklch(78% .12 220/0)}.spark-grad-violet stop:first-child{stop-color:oklch(78% .15 300/.5)}.spark-grad-violet stop:last-child{stop-color:oklch(78% .15 300/0)}}@layer utility{.mono{font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.caps{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.num{font-variant-numeric:tabular-nums;font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.text-1{color:var(--color-text-1)}.text-2{color:var(--color-text-2)}.text-3{color:var(--color-text-3)}.text-mute{color:var(--color-text-mute)}.text-accent{color:var(--color-accent)}.text-cyan{color:var(--color-accent2)}.text-violet{color:var(--violet-300)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.fs-micro{font-size:var(--fs-micro)}.fs-xs{font-size:var(--fs-xs)}.fs-sm{font-size:var(--fs-sm)}.fs-base{font-size:var(--fs-base)}.fs-md{font-size:var(--fs-md)}.fs-lg{font-size:var(--fs-lg)}.truncate{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.nowrap{white-space:nowrap}.hidden{display:none!important}.glow-mint{isolation:isolate;position:relative}.glow-mint:before{content:"";pointer-events:none;z-index:-1;border-radius:inherit;background:radial-gradient(60% 50% at 0 0,oklch(84% .17 165/.08),#0000 60%);position:absolute;inset:0}.glow-cyan{isolation:isolate;position:relative}.glow-cyan:before{content:"";pointer-events:none;z-index:-1;border-radius:inherit;background:radial-gradient(60% 50% at 100% 0,oklch(80% .14 220/.08),#0000 60%);position:absolute;inset:0}.glow-violet{isolation:isolate;position:relative}.glow-violet:before{content:"";pointer-events:none;z-index:-1;border-radius:inherit;background:radial-gradient(60% 50% at 0 100%,oklch(78% .15 300/.08),#0000 60%);position:absolute;inset:0}.glow-peach{isolation:isolate;position:relative}.glow-peach:before{content:"";pointer-events:none;z-index:-1;border-radius:inherit;background:radial-gradient(60% 50% at 100% 100%,oklch(80% .1 55/.08),#0000 60%);position:absolute;inset:0}}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/be-vietnam-pro-vietnamese-400-normal-CRcqvyg1.woff2)format("woff2"),url(/fonts/be-vietnam-pro-vietnamese-400-normal-BuGn0gnm.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/be-vietnam-pro-latin-ext-400-normal-CiZNW1ec.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-ext-400-normal-DYBYyMQr.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/be-vietnam-pro-latin-400-normal-PpnXBOrz.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-400-normal-bXgqVju9.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/be-vietnam-pro-vietnamese-500-normal-DREgrEoJ.woff2)format("woff2"),url(/fonts/be-vietnam-pro-vietnamese-500-normal-CfdwVo8-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/be-vietnam-pro-latin-ext-500-normal-h0Fp6aX0.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-ext-500-normal-CK0UkkKf.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/be-vietnam-pro-latin-500-normal-B6LVzGNe.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-500-normal-BJkVuMHw.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/be-vietnam-pro-vietnamese-600-normal-nyU-ZL2p.woff2)format("woff2"),url(/fonts/be-vietnam-pro-vietnamese-600-normal-DkpCIyan.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/be-vietnam-pro-latin-ext-600-normal-BNd8euf0.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-ext-600-normal-BeUwKxhG.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/be-vietnam-pro-latin-600-normal-BZDkUTrt.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-600-normal-5IO4e7bK.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/be-vietnam-pro-vietnamese-700-normal-Csr0PCuG.woff2)format("woff2"),url(/fonts/be-vietnam-pro-vietnamese-700-normal-By_5yT39.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/be-vietnam-pro-latin-ext-700-normal-C8_gqRu2.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-ext-700-normal-4Hjo2OtD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Be Vietnam Pro;font-style:normal;font-display:swap;font-weight:700;src:url(/fonts/be-vietnam-pro-latin-700-normal-DlW1Zbsh.woff2)format("woff2"),url(/fonts/be-vietnam-pro-latin-700-normal-C2EtzaOi.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-cyrillic-ext-400-normal-C_uLvvQ5.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-ext-400-normal-Bh0R7Dhr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-greek-400-normal-C190GLew.woff2)format("woff2"),url(/fonts/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-vietnamese-400-normal-ByoDsISC.woff2)format("woff2"),url(/fonts/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/fonts/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-400-normal-6-qcROiO.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-cyrillic-ext-500-normal-C9ShMxGR.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-ext-500-normal-CEVyPk4Y.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-greek-500-normal-JpySY46c.woff2)format("woff2"),url(/fonts/jetbrains-mono-greek-500-normal-D7SFKleX.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-vietnamese-500-normal-BvH7FW2L.woff2)format("woff2"),url(/fonts/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/fonts/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-500-normal-CJOVTJB7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-cyrillic-ext-600-normal-Dj6eZy5f.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-ext-600-normal-DVvC-yKp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-cyrillic-600-normal-EVf6-Yzo.woff2)format("woff2"),url(/fonts/jetbrains-mono-cyrillic-600-normal-8K4wrrwR.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-greek-600-normal-H7WoG9Et.woff2)format("woff2"),url(/fonts/jetbrains-mono-greek-600-normal-mc2nkWzM.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-vietnamese-600-normal-Dtizs43-.woff2)format("woff2"),url(/fonts/jetbrains-mono-vietnamese-600-normal-OWROknRo.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-latin-ext-600-normal-BfB_LPfz.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-ext-600-normal-DObL3zCW.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/fonts/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2"),url(/fonts/jetbrains-mono-latin-600-normal-BfsvjouI.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-base:oklch(13% .02 250);--color-surface:oklch(16% .02 250);--color-elevated:oklch(20% .02 250);--color-panel:oklch(16% .02 250/.82);--color-panel-glass:oklch(14% .02 250/.55);--color-text-1:oklch(95% .02 170);--color-text-2:oklch(85% .02 170);--color-text-3:oklch(58% .03 170);--color-text-mute:oklch(45% .03 250);--color-accent:oklch(85% .17 170);--color-accent-dim:oklch(75% .13 170);--color-accent-deep:oklch(55% .15 170);--color-accent2:oklch(78% .12 220);--color-accent2-dim:oklch(65% .13 220);--pmap-hue-slate:oklch(66% .03 250);--pmap-hue-teal:oklch(70% .09 195);--pmap-hue-amber:oklch(74% .1 75);--pmap-hue-violet:oklch(66% .11 300);--pmap-hue-crimson:oklch(64% .12 20);--pmap-hue-blue:oklch(66% .11 255);--pmap-hue-orange:oklch(70% .12 50);--pmap-hue-green:oklch(70% .1 160);--pmap-hue-purple:oklch(64% .11 310);--pmap-hue-magenta:oklch(66% .12 350);--pmap-edge:oklch(45% .02 250);--pmap-edge-active:var(--color-accent);--color-scrim:oklch(0% 0 0/.66);--c-article:oklch(85% .17 170);--c-prompt:oklch(78% .15 300);--c-tool:oklch(80% .14 220);--c-skill:oklch(80% .1 55);--c-page:oklch(80% .13 25);--c-media:oklch(80% .14 330);--c-mcp:oklch(82% .18 145);--c-api:oklch(80% .14 260);--mint-50:oklch(96% .04 170);--mint-100:oklch(92% .08 170);--mint-200:oklch(88% .13 170);--mint-300:oklch(85% .17 170);--mint-400:oklch(78% .17 170);--mint-500:oklch(68% .17 170);--mint-600:oklch(55% .15 170);--mint-700:oklch(42% .12 170);--mint-800:oklch(30% .08 170);--mint-900:oklch(20% .05 170);--cyan-50:oklch(96% .03 220);--cyan-100:oklch(92% .06 220);--cyan-200:oklch(86% .1 220);--cyan-300:oklch(78% .12 220);--cyan-400:oklch(70% .13 220);--cyan-500:oklch(60% .13 220);--cyan-600:oklch(48% .12 220);--cyan-700:oklch(36% .1 220);--cyan-800:oklch(25% .07 220);--cyan-900:oklch(18% .04 220);--violet-100:oklch(92% .06 300);--violet-300:oklch(78% .15 300);--violet-500:oklch(60% .17 300);--violet-700:oklch(40% .13 300);--amber-100:oklch(94% .07 85);--amber-300:oklch(82% .16 85);--amber-500:oklch(68% .16 85);--amber-700:oklch(48% .13 85);--rose-100:oklch(93% .05 25);--rose-300:oklch(80% .13 25);--rose-500:oklch(65% .19 25);--rose-700:oklch(45% .16 25);--navy-50:oklch(95% .02 250);--navy-100:oklch(85% .02 250);--navy-200:oklch(70% .02 250);--navy-300:oklch(55% .03 250);--navy-400:oklch(40% .03 250);--navy-500:oklch(28% .02 250);--navy-600:oklch(20% .02 250);--navy-700:oklch(16% .02 250);--navy-800:oklch(13% .02 250);--navy-900:oklch(9% .02 250);--color-success:oklch(82% .17 155);--color-warning:oklch(82% .14 85);--color-danger:oklch(70% .2 25);--color-info:oklch(78% .12 220);--tint-accent:oklch(85% .17 170/.08);--tint-success:oklch(82% .17 155/.08);--tint-warning:oklch(82% .14 85/.08);--tint-danger:oklch(70% .2 25/.08);--tint-info:oklch(78% .12 220/.08);--tint-violet:oklch(78% .15 300/.08);--tint-amber:oklch(82% .16 85/.08);--tint-rose:oklch(80% .13 25/.08);--hl-accent-underline:2px solid var(--color-accent);--hl-accent-subtle:oklch(85% .17 170/.1);--hl-rose-underline:2px solid var(--rose-300);--color-border:oklch(85% .17 170/.12);--color-border-hover:oklch(85% .17 170/.3);--color-border-accent:oklch(85% .17 170/.2);--color-border-strong:oklch(85% .17 170/.45);--glass-subtle:oklch(14% .02 250/.3);--glass-medium:oklch(14% .02 250/.55);--glass-strong:oklch(14% .02 250/.75);--glass-blur:20px;--glass-blur-soft:12px;--glass-blur-chip:4px;--glow-accent:0 0 32px -8px oklch(85% .17 170/.35);--glow-accent-sm:0 0 16px -6px oklch(85% .17 170/.25);--glow-cyan:0 0 32px -8px oklch(78% .12 220/.3);--shadow-1:0 1px 2px oklch(0% 0 0/.4);--shadow-2:0 4px 16px oklch(0% 0 0/.5);--shadow-3:0 12px 40px oklch(0% 0 0/.6);--size-0:.125rem;--size-1:.25rem;--size-2:.375rem;--size-3:.5rem;--size-4:.75rem;--size-5:1rem;--size-6:1.5rem;--size-7:2rem;--size-8:3rem;--size-9:4rem;--tap-min:24px;--radius-0:0;--radius-1:2px;--radius-2:3px;--radius-3:6px;--fs-micro:.675rem;--fs-xs:.75rem;--fs-sm:.85rem;--fs-base:.9rem;--fs-md:.975rem;--fs-lg:1.125rem;--fs-xl:1.375rem;--fs-2xl:1.75rem;--fs-3xl:2.25rem;--fs-4xl:3rem;--lh-tight:1.1;--lh-snug:1.3;--lh-body:1.5;--lh-loose:1.65;--tracking-tight:-.02em;--tracking-normal:0;--tracking-mono:.02em;--tracking-caps:.12em;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--dur-fast:.12s;--dur-base:.2s;--dur-slow:.4s;--layout-max:1440px;--layout-reading:68ch;--sidebar-w:220px;--header-h:44px;--h-ctrl-xs:22px;--h-ctrl-sm:26px;--h-ctrl-md:30px;--h-ctrl-lg:36px;--h-row-xs:24px;--h-row-sm:28px;--h-row-md:32px;--z-base:1;--z-sticky:10;--z-dropdown:20;--z-modal:40;--z-toast:50;--z-tooltip:60;--color-surface-raised:var(--color-elevated);--color-ink:var(--color-text-1);--color-ink-muted:var(--color-text-2);--color-link:var(--color-accent);--color-accent-ink:var(--color-base);--text-sm:var(--fs-sm);--text-base:var(--fs-base);--text-lg:var(--fs-lg);--text-xl:var(--fs-xl);--text-2xl:var(--fs-2xl);--leading-normal:var(--lh-body);--weight-normal:400;--weight-bold:700;--space-0:0;--space-1:var(--size-1);--space-2:var(--size-3);--space-3:var(--size-4);--space-4:var(--size-5);--space-5:var(--size-6);--space-6:var(--size-7);--space-7:var(--size-8);--space-8:var(--size-9);--radius-sm:var(--radius-1);--radius-md:var(--radius-2);--measure:var(--layout-reading);--container:var(--layout-max)}:root,[data-font=crucix]{--font-display:"Be Vietnam Pro", "Inter", system-ui, sans-serif;--font-body:"Be Vietnam Pro", "Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-code:"JetBrains Mono", ui-monospace, monospace}[data-font=classic]{--font-display:"Lexend", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--font-code:"JetBrains Mono", ui-monospace, monospace}.bg-grid,.bg-radial,.bg-scanline{pointer-events:none;z-index:0;position:fixed;inset:0}.bg-grid{background-image:linear-gradient(oklch(85% .17 170/.035) 1px,#0000 1px),linear-gradient(90deg,oklch(85% .17 170/.035) 1px,#0000 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(80% 60% at 50% 30%,#000 40%,#0000 100%);mask-image:radial-gradient(80% 60% at 50% 30%,#000 40%,#0000 100%)}.bg-radial{background:radial-gradient(640px 420px at 13% -2%,oklch(85% .17 170/.04),#0000 60%),radial-gradient(520px 320px at 92% 4%,oklch(78% .12 220/.035),#0000 60%),radial-gradient(460px 300px at 78% 0,oklch(78% .15 300/.025),#0000 64%)}.bg-scanline{background:repeating-linear-gradient(#0000 0 2px,oklch(90% .06 220/.028) 2px 3px)}mark,.mark,.prose mark,.prose .mark{color:var(--color-text-1);border-bottom:var(--hl-accent-underline);-webkit-box-decoration-break:clone;box-decoration-break:clone;background:0 0;border-radius:0;padding:0 1px}mark.subtle,.prose mark.subtle{background:var(--hl-accent-subtle);border-bottom:0;border-radius:2px;padding:1px 3px}.kind-switcher a,.filter-chip,.status-chip,.ver-chip,.kind-chip,.t-kind,.s-kind,.p-kind,.tc-badge,.p-ver,.p-tags .tag,.r-info .tags .tag,.lang-chip{border-radius:var(--radius-2)!important}.filter-chip,.kind-switcher a{height:var(--h-ctrl-xs);gap:var(--size-2);line-height:1;padding:0 var(--size-3)!important;font-size:var(--fs-micro)!important}.kind-switcher a{background:var(--glass-subtle)}.p-tags .tag,.r-info .tags .tag,.ver-chip,.p-ver,.tc-badge{align-items:center;height:16px;line-height:1;display:inline-flex;font-size:var(--fs-micro)!important;padding:1px 6px!important}.s-title,.t-title,.p-title{font-size:clamp(1.75rem, 3.2vw, var(--fs-3xl))!important;letter-spacing:var(--tracking-tight)!important;font-weight:500!important;line-height:1.05!important}.s-hero,.t-hero,.p-hero{padding-top:var(--size-5)!important;padding-bottom:var(--size-6)!important}.s-nav,.t-nav{padding-bottom:var(--size-3)!important;margin-bottom:var(--size-4)!important}.filter-bar{padding:var(--size-3) 0!important;gap:var(--size-3)!important}.group-head{padding:var(--size-5) 0 var(--size-3)!important;margin-bottom:var(--size-3)!important}.group-head .name{font-size:var(--fs-lg)!important}.hm-row .v{font-size:var(--fs-xl)!important;letter-spacing:var(--tracking-tight)!important}.sk-card:hover,.tc-card:hover,.p-card:hover{border-color:var(--color-border-hover)!important}.pbtn,.pbtn.play,.run-row .r-play,.np-ctrl button,.a-play,.voice-card .big-dot,.avatar,.avatar-xs,.avatar-sm,.avatar-md,.avatar-lg,.dot-status:before,.dot-status,.voice-name .dot,.dep-row .dot,.np-label .pulse,.kind-switcher a .dot,.kind-chip:before,.status-chip:before,.s-kind:before,.t-kind:before,.p-kind:before,.badge:before,.type-chip:before,.voice-card .v-params .pb,.voice-card .v-params .pb .fill,.progress,.progress>.bar{border-radius:999px!important}.sk-card,.tc-card,.p-card{transition:border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out)!important}.mt-2{margin-top:var(--size-2)}.mt-3{margin-top:var(--size-3)}.mt-4{margin-top:var(--size-4)}.mt-5{margin-top:var(--size-5)}.mt-6{margin-top:var(--size-6)}.public-nav a{color:var(--color-text-3);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:var(--fs-xs);text-decoration:none}.article-layout{gap:var(--size-7);padding:var(--size-7) 0;grid-template-columns:220px 1fr 220px;display:grid}@media (width<=1100px){.article-layout{gap:var(--size-5);grid-template-columns:1fr}.aside-left,.aside-right{display:none}}.aside-sticky{top:calc(var(--header-h) + var(--size-5));font-family:var(--font-mono);font-size:var(--fs-xs);position:sticky}.toc-item{color:var(--color-text-3);letter-spacing:var(--tracking-mono);transition:color var(--dur-fast) var(--ease-out);padding:4px 0;text-decoration:none;display:block}.toc-item.active{color:var(--color-accent)}.toc-item:hover{color:var(--color-text-1)}.meta-row{padding:var(--size-3) 0;border-bottom:1px dashed var(--color-border)}.meta-key{color:var(--color-text-3);letter-spacing:var(--tracking-caps);text-transform:uppercase}.meta-val{color:var(--color-text-1);margin-top:2px}article.long h1{letter-spacing:-.02em;max-width:20ch;font-size:clamp(2.2rem,4vw,3rem);font-weight:500;line-height:1.05}article.long h1 em{color:var(--color-accent);font-style:normal}article.long h2{margin-top:var(--size-7);font-size:var(--fs-xl);font-weight:600}article.long h3{margin-top:var(--size-6);font-size:var(--fs-lg)}article.long p{max-width:none;font-size:var(--fs-md);line-height:var(--lh-body);color:var(--color-text-2);margin-top:var(--size-4)}article.long blockquote{max-width:none;margin:var(--size-6) 0;padding:var(--size-5) var(--size-5) var(--size-5) var(--size-7);border:1px solid var(--color-border-accent);border-radius:var(--radius-1);background:var(--tint-accent);font-family:var(--font-display);font-size:var(--fs-lg);color:var(--color-text-1);font-style:italic;position:relative}article.long blockquote:before{content:"“";left:var(--size-3);top:var(--size-1);color:var(--color-accent);opacity:.4;pointer-events:none;font-size:2.4em;line-height:1;position:absolute}article.long blockquote p{font-size:inherit;color:inherit;max-width:none;margin:0}article.long ul,article.long ol{max-width:none;color:var(--color-text-2);padding-left:var(--size-5);margin-top:var(--size-4)}article.long li{margin-top:var(--size-2)}article.long li::marker{color:var(--color-accent)}article.long strong{color:var(--color-text-1);font-weight:700}article.long em{color:var(--color-text-1);font-style:italic}article.long strong em,article.long em strong{color:var(--color-text-1);font-style:italic;font-weight:700}article.long a{color:var(--color-accent);border-bottom:1px dashed var(--color-border-strong);text-decoration:none}article.long a:hover{color:var(--color-accent2);border-bottom-color:var(--color-accent2)}article.long code{font-family:var(--font-mono);color:var(--color-accent);background:var(--tint-accent);border:1px solid var(--color-border);border-radius:2px;padding:0 4px;font-size:.9em}article.long pre{max-width:none;margin-top:var(--size-5);background:var(--color-base);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-4);font-family:var(--font-code);font-size:var(--fs-xs);line-height:var(--lh-snug);overflow-x:auto}article.long pre code{color:var(--color-text-2);background:0 0;border:0;padding:0}article.long hr{border:0;border-top:1px dashed var(--color-border);margin:var(--size-6) 0}article.long .lede{font-size:var(--fs-lg);color:var(--color-text-1);max-width:none;margin-top:var(--size-6);line-height:1.55}.article-body .table-of-contents{display:none}.article-body{counter-reset:sec}.article-body h2{counter-increment:sec}.article-body h2:before{content:counter(sec, decimal-leading-zero) " · ";font-family:var(--font-mono);color:var(--color-accent);letter-spacing:var(--tracking-mono);font-weight:500}.article-body h2 .heading-permalink{display:none}.hero-frame{margin-top:var(--size-6);border:1px solid var(--color-border-strong);border-radius:var(--radius-1);position:relative;overflow:hidden}.hero-frame img{width:100%;height:auto;display:block}.hero-frame .caption{bottom:var(--size-3);left:var(--size-4);z-index:1;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-1);padding:2px var(--size-2);border-radius:var(--radius-1);-webkit-backdrop-filter:blur(var(--glass-blur-chip));backdrop-filter:blur(var(--glass-blur-chip));background:oklch(8% .02 250/.7);position:absolute}.share-col{gap:var(--size-2);flex-direction:column;display:flex}.share-btn{border:1px solid var(--color-border);border-radius:var(--radius-2);width:40px;height:40px;color:var(--color-text-3);background:var(--glass-subtle);cursor:pointer;transition:all var(--dur-fast) var(--ease-out);place-items:center;display:grid}.share-btn:hover{color:var(--color-accent);border-color:var(--color-border-hover)}.share-btn.copied{color:var(--color-success);border-color:var(--color-border-hover)}.reading-progress{height:2px;z-index:var(--z-sticky);pointer-events:none;background:0 0;position:fixed;inset:0 0 auto}.reading-progress__bar{background:var(--color-accent);width:0;height:100%;box-shadow:var(--glow-accent-sm);display:block}.article-nav{gap:var(--size-4);margin-top:var(--size-7);padding-top:var(--size-6);border-top:1px dashed var(--color-border);grid-template-columns:1fr 1fr;display:grid}.article-nav__link{gap:var(--size-2);padding:var(--size-4);border:1px solid var(--color-border);border-radius:var(--radius-2);background:var(--glass-subtle);transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.article-nav__link--next{text-align:right;align-items:flex-end}.article-nav__link:hover{border-color:var(--color-border-hover);background:var(--glass-strong)}.article-nav__link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.article-nav__dir{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent)}.article-nav__title{font-family:var(--font-display);font-size:var(--fs-md);color:var(--color-text-1);letter-spacing:-.01em;line-height:1.2}.article-nav__link:hover .article-nav__title{color:var(--color-accent)}@media (width<=640px){.article-nav{grid-template-columns:1fr}.article-nav__link--next{text-align:left;align-items:flex-start}}.article-tags-mobile{margin-top:var(--size-6);display:none}@media (width<=1100px){.article-tags-mobile{display:block}}.article-tags-mobile__list{gap:var(--size-2);margin-top:var(--size-1);flex-wrap:wrap;display:flex}.tag-chip{min-height:34px;padding:0 var(--size-3);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-2);transition:color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:inline-flex}.tag-chip:hover{color:var(--color-accent);border-color:var(--color-border-hover)}.tag-chip:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (width<=640px){article.long .article-body p{text-align:left}}.article-body>p:first-of-type:first-letter{float:left;font-family:var(--font-display);color:var(--color-accent);margin:.05em .12em 0 0;font-size:3.1em;font-weight:600;line-height:.66}.article-body>p:first-of-type{color:var(--color-text-1)}.article-body p{text-align:justify;-webkit-hyphens:none;hyphens:none;overflow-wrap:break-word}article.long blockquote{position:relative}article.long blockquote:before{content:"“";z-index:0;font-family:var(--font-display);color:var(--color-accent);opacity:.22;pointer-events:none;font-size:3.4em;line-height:1;position:absolute;top:-.3em;left:.12em}article.long blockquote p{z-index:1;position:relative}article.long :not(pre)>code{white-space:nowrap;font-weight:500}.code-block{position:relative}.code-copy{top:var(--size-2);right:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);background:var(--glass-strong);border:1px solid var(--color-border);border-radius:var(--radius-2);padding:2px var(--size-2);cursor:pointer;opacity:0;transition:opacity var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);position:absolute}.code-block:hover .code-copy,.code-copy:focus-visible{opacity:1}.code-copy:hover{color:var(--color-accent);border-color:var(--color-border-hover)}.code-copy.copied{color:var(--color-success);opacity:1}.article-body table{width:100%;max-width:none;margin-top:var(--size-5);border-collapse:collapse;font-size:var(--fs-sm);display:block;overflow-x:auto}.article-body th,.article-body td{padding:var(--size-2) var(--size-3);border:1px solid var(--color-border);text-align:left;vertical-align:top}.article-body th{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-2);background:var(--glass-subtle)}.article-body td{color:var(--color-text-2)}.article-body tbody tr:nth-child(2n){background:var(--glass-subtle)}.article-body ul:has(>li input[type=checkbox]){padding-left:var(--size-2);list-style:none}.article-body li input[type=checkbox]{margin-right:var(--size-2);accent-color:var(--color-accent)}.article-body del{color:var(--color-text-3)}.article-body p>img,.article-body figure img{max-width:100%;height:auto;margin:var(--size-5) auto;border:1px solid var(--color-border);border-radius:var(--radius-1);display:block}.article-body figcaption{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);letter-spacing:var(--tracking-mono);margin-top:var(--size-2);text-align:center}.article-body figure{margin:var(--size-5) auto}.article-body figure img{margin:0 auto}article.long hr{height:auto;margin:var(--size-7) 0;text-align:center;border:0;line-height:1}article.long hr:before{content:"✦";color:var(--color-accent);font-size:var(--fs-md);opacity:.7}article.long h3{color:var(--color-text-1);letter-spacing:-.01em}article.long h4{margin-top:var(--size-5);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent);font-weight:600}.article-body p.has-runin>strong:first-child{color:var(--color-accent)}.article-body mark.hl-quote{background:var(--color-accent);color:var(--color-accent-ink);border-radius:var(--radius-1);-webkit-box-decoration-break:clone;box-decoration-break:clone;margin:0 .02em;padding:.06em .22em;font-weight:500}.article-body blockquote:last-of-type{text-align:center;margin-block:var(--size-8);padding:var(--size-5) 0;font-style:normal;font-size:var(--fs-xl);color:var(--color-accent);background:0 0;border-left:0}.article-body blockquote:last-of-type:before{display:none}.article-body blockquote:last-of-type p{font-size:inherit;color:inherit}.article-body>p:last-child:has(>em:only-child){text-align:center;color:var(--color-text-3);margin-top:var(--size-6)}.article-body>p:last-child:has(>em:only-child) em{font-style:normal;font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono)}.article-body p.tell-title{margin-top:var(--size-7);margin-bottom:var(--size-2);font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.01em;text-align:left;text-indent:0;-webkit-hyphens:none;hyphens:none;line-height:1.2}.article-body p.tell-title>strong{color:var(--color-text-1);font-weight:600}.article-body p.tell-title:before{content:"▸";color:var(--color-accent);margin-right:var(--size-2);vertical-align:.08em;font-size:.78em}.article-body blockquote.specimen{max-width:none;margin:var(--size-3) 0 var(--size-5);padding:var(--size-4) var(--size-5);border:1px solid var(--color-border-accent);border-radius:var(--radius-1);background:var(--tint-accent);font-family:var(--font-mono);font-size:var(--fs-sm);font-style:normal;line-height:var(--lh-snug);color:var(--color-text-2);text-align:left;position:relative}.article-body blockquote.specimen:before{content:"AI SPECIMEN";margin:0 0 var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);color:var(--color-accent-dim);opacity:1;font-weight:600;line-height:1;display:block;position:static;inset:auto}.article-body blockquote.specimen p{max-width:none;font-family:inherit;font-size:inherit;color:inherit;text-align:left;-webkit-hyphens:none;hyphens:none;margin:0;font-style:normal}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.article-body .article-chart{margin:var(--size-6) 0;background:radial-gradient(120% 80% at 0% 0%, var(--tint-accent), transparent 60%), var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-2);padding:clamp(.9rem,3vw,1.4rem)}.article-body .article-chart__head{flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;display:flex}.article-body .article-chart__title{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.01em;color:var(--color-text-1);margin:0;font-weight:600}.article-body .article-chart__sub{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);margin:0}.article-body .article-chart__legend{flex-wrap:wrap;gap:.4rem 1.1rem;margin:.65rem 0 .2rem;display:flex}.article-body .article-chart__key{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);align-items:center;gap:.45rem;display:inline-flex}.article-body .article-chart__key:before{content:"";border-radius:1px;width:.85rem;height:.2rem}.article-body .article-chart__key--rise:before{background:var(--color-accent)}.article-body .article-chart__key--fall:before{background:var(--color-danger)}.article-body .article-chart__plot{aspect-ratio:96/43;width:100%;margin-top:.5rem;position:relative}@media (width<=560px){.article-body .article-chart__plot{aspect-ratio:7/5}}.article-body .article-chart__svg{width:100%;height:100%;position:absolute;inset:0}.article-body .article-chart__overlay{pointer-events:none;font-family:var(--font-mono);position:absolute;inset:0}.article-body .article-chart__overlay>span{white-space:nowrap;position:absolute}.article-body .article-chart__grid{stroke:var(--color-border);stroke-width:1px;vector-effect:non-scaling-stroke}.article-body .article-chart__axis{stroke:color-mix(in oklch, var(--color-text-3) 55%, transparent);stroke-width:1px;vector-effect:non-scaling-stroke}.article-body .article-chart__line{fill:none;stroke-width:2.25px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0;vector-effect:non-scaling-stroke}.article-body .article-chart__line--rise{stroke:var(--color-accent)}.article-body .article-chart__line--fall{stroke:var(--color-danger);filter:drop-shadow(0 0 5px color-mix(in oklch, var(--color-danger) 45%, transparent))}.article-body .article-chart__fill-top{stop-color:var(--color-accent);stop-opacity:.2}.article-body .article-chart__fill-bot{stop-color:var(--color-accent);stop-opacity:0}.article-body .article-chart__marker{stroke:color-mix(in oklch, var(--color-danger) 60%, transparent);stroke-width:1.5px;stroke-dasharray:4 5;vector-effect:non-scaling-stroke}.article-body .ac-ylabel,.article-body .ac-xlabel{color:var(--color-text-3);font-size:clamp(9px,2.4vw,12px)}.article-body .ac-ylabel{transform:translate(-100%,-50%)}.article-body .ac-xlabel{transform:translate(-50%,-50%)}.article-body .ac-dot{border-radius:50%;transform:translate(-50%,-50%)}.article-body .ac-dot--peak{background:var(--color-accent);border:2px solid var(--color-base);width:9px;height:9px;box-shadow:var(--glow-accent-sm)}.article-body .ac-dot--end{background:var(--color-danger);width:7px;height:7px}.article-body .ac-peak{color:var(--color-accent);padding-right:8px;font-size:clamp(10px,2.6vw,13px);font-weight:600;transform:translate(-100%,-150%)}.article-body .ac-crash{max-width:32%;color:var(--color-text-2);white-space:normal;font-size:clamp(9px,2.4vw,12px);line-height:1.25}.article-body .ac-crash b{color:var(--color-text-1);white-space:nowrap;font-weight:700;display:block}.article-body .ac-crash>span{color:var(--color-text-3);white-space:normal;display:block}.article-body .ac-end{color:var(--color-danger);font-size:clamp(9px,2.4vw,12px);font-weight:600;transform:translate(-100%,-50%)}.article-body .article-chart__caption{margin-top:var(--size-4);font-family:var(--font-body);font-size:var(--fs-sm);text-align:left;color:var(--color-text-2);font-style:normal;line-height:1.6}.article-body .article-chart__source{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);margin-top:.4rem;display:block}.article-body .article-chart__data{margin-top:var(--size-4);border-top:1px solid var(--color-border);padding-top:var(--size-3)}.article-body .article-chart__data summary{cursor:pointer;min-height:44px;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-accent-dim);align-items:center;gap:.5rem;list-style:none;display:flex}.article-body .article-chart__data summary::-webkit-details-marker{display:none}.article-body .article-chart__data summary:before{content:"▸";transition:transform .2s}.article-body .article-chart__data[open] summary:before{transform:rotate(90deg)}.article-body .article-chart__data summary:hover{color:var(--color-accent)}.article-body .article-chart__data summary:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:var(--radius-1)}.article-body .article-chart__table-scroll{margin-top:var(--size-3);overflow-x:auto}.article-body .article-chart__data table{width:100%;font-family:var(--font-mono);font-size:var(--fs-xs);border-collapse:collapse}.article-body .article-chart__data th,.article-body .article-chart__data td{text-align:right;white-space:nowrap;padding:.3rem .6rem}.article-body .article-chart__data th[scope=row]{text-align:left;color:var(--color-text-3)}.article-body .article-chart__data thead th{color:var(--color-text-2)}@media (prefers-reduced-motion:no-preference){.article-body .article-chart__line--rise{animation:1.15s cubic-bezier(.22,1,.36,1) both ac-draw}.article-body .article-chart__line--fall{animation:.6s cubic-bezier(.33,1,.68,1) 1s both ac-draw}.article-body .article-chart__area{opacity:0;animation:.9s .45s forwards ac-fade}.article-body .article-chart__marker{opacity:0;animation:.5s 1.4s forwards ac-fade}.article-body .ac-dot,.article-body .ac-peak,.article-body .ac-crash,.article-body .ac-end{opacity:0;animation:.5s 1.55s forwards ac-fade}}@keyframes ac-draw{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes ac-fade{to{opacity:1}}@media (width<=560px){.article-body .article-chart__sub,.article-body .article-chart__key,.article-body .article-chart__source,.article-body .ac-ylabel,.article-body .ac-xlabel,.article-body .ac-crash,.article-body .ac-end{font-size:11px}.article-body .article-chart__caption,.article-body .ac-peak,.article-body .article-chart__data summary{font-size:12px}}.article-body .cite-ref{vertical-align:baseline;font-size:100%;line-height:inherit}.article-body .cite-ref a{font-family:var(--font-mono);vertical-align:super;color:var(--color-accent);letter-spacing:var(--tracking-mono);white-space:nowrap;transition:color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out);border-bottom:0;border-radius:3px;padding:0 .12em;font-size:.68em;font-weight:600;line-height:0}.article-body .cite-ref a:before{content:"[";opacity:.5}.article-body .cite-ref a:after{content:"]";opacity:.5}.article-body .cite-ref a:hover{color:var(--color-accent2);background:var(--tint-accent)}.article-body .cite-ref a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.article-body h2.cite-heading:before{content:none}.article-body h2.cite-heading{margin-top:var(--size-8);padding-top:var(--size-5);border-top:1px solid var(--color-border);align-items:baseline;gap:var(--size-2) var(--size-3);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-2);flex-wrap:wrap;font-weight:600;display:flex}.article-body h2.cite-heading .cite-count{font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);text-transform:none;color:var(--color-text-3);font-weight:500}.article-body h2.cite-heading .cite-count:before{content:"· ";color:var(--color-accent)}.article-body ol.ref-list{counter-reset:refn;margin-top:var(--size-4);font-size:var(--fs-sm);padding-left:0;list-style:none}.article-body ol.ref-list li{counter-increment:refn;padding:var(--size-3) var(--size-2) var(--size-3) 3rem;border-bottom:1px dashed var(--color-border);line-height:var(--lh-snug);color:var(--color-text-2);scroll-margin-top:calc(var(--header-h) + var(--size-5));transition:background var(--dur-fast) var(--ease-out);margin:0;position:relative}.article-body ol.ref-list li:before{content:"[" counter(refn) "]";left:0;top:var(--size-3);text-align:right;width:2.5rem;font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-accent);letter-spacing:var(--tracking-mono);font-weight:600;position:absolute}.article-body ol.ref-list li:hover{background:var(--glass-subtle)}.article-body ol.ref-list li em{color:var(--color-text-1);font-style:italic}.article-body ol.ref-list li a{color:var(--color-accent);border-bottom:1px dashed var(--color-border-strong);word-break:break-word}.article-body ol.ref-list li a:hover{color:var(--color-accent2);border-bottom-color:var(--color-accent2)}.article-body ol.ref-list li .ref-back{color:var(--color-text-3);opacity:0;transition:opacity var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);border-bottom:0;margin-left:.35em}.article-body ol.ref-list li:hover .ref-back,.article-body ol.ref-list li:focus-within .ref-back,.article-body ol.ref-list li:target .ref-back{opacity:1}.article-body ol.ref-list li .ref-back:hover{color:var(--color-accent)}.article-body ol.ref-list li:target{background:var(--tint-accent);outline:1px solid var(--color-border-accent);outline-offset:-1px;border-radius:var(--radius-1)}@media (prefers-reduced-motion:no-preference){.article-body ol.ref-list li:target{animation:ref-flash 1.5s var(--ease-out)}}@keyframes ref-flash{0%{background:color-mix(in oklch, var(--color-accent) 32%, transparent)}to{background:var(--tint-accent)}}.cite-pop{z-index:var(--z-tooltip);gap:0 var(--size-3);max-width:min(360px,92vw);padding:var(--size-3) var(--size-4);background:var(--color-surface);border:1px solid var(--color-border-accent);border-radius:var(--radius-2);box-shadow:var(--shadow-3);font-family:var(--font-body);font-size:var(--fs-xs);line-height:var(--lh-snug);color:var(--color-text-2);opacity:0;transition:opacity var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);pointer-events:none;grid-template-columns:auto 1fr;display:grid;position:fixed;transform:translateY(4px)}.cite-pop.is-visible{opacity:1;transform:none}.cite-pop__n{font-family:var(--font-mono);font-weight:600;font-size:var(--fs-micro);color:var(--color-accent);letter-spacing:var(--tracking-mono)}.cite-pop__t em{color:var(--color-text-1);font-style:italic}.cite-pop__t a{color:var(--color-accent);word-break:break-word}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.article-body .article-chart__bars{gap:var(--size-3);margin-top:var(--size-4);flex-direction:column;display:flex}.article-body .acb-row{align-items:center;gap:var(--size-2) var(--size-3);grid-template-columns:minmax(8rem,36%) 1fr auto;display:grid}.article-body .acb-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);line-height:var(--lh-snug);color:var(--color-text-2)}.article-body .acb-track{background:var(--glass-subtle);border:1px solid var(--color-border);border-radius:var(--radius-1);height:.7rem;position:relative;overflow:hidden}.article-body .acb-fill{border-radius:inherit;height:100%;display:block}.article-body .acb-fill--danger{background:var(--color-danger)}.article-body .acb-fill--accent{background:var(--color-accent)}.article-body .acb-fill--muted{background:color-mix(in oklch, var(--color-text-3) 50%, transparent)}.article-body .acb-val{font-family:var(--font-mono);font-size:var(--fs-sm);text-align:right;white-space:nowrap;min-width:3.5ch;color:var(--color-text-1);font-weight:600}.article-body .acb-val--danger{color:var(--color-danger)}.article-body .acb-val--accent{color:var(--color-accent)}.article-body .acb-val--muted{color:var(--color-text-3)}@media (width<=560px){.article-body .acb-row{row-gap:var(--size-1);grid-template-columns:1fr auto}.article-body .acb-label{grid-column:1/-1}}@media (prefers-reduced-motion:no-preference){.article-body .acb-fill{animation:.85s cubic-bezier(.22,1,.36,1) both acb-grow;animation-delay:var(--acb-delay,0s)}}@keyframes acb-grow{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}.article-body .article-chart__line--decline{stroke:var(--color-danger);filter:drop-shadow(0 0 5px color-mix(in oklch, var(--color-danger) 40%, transparent))}.article-body .article-chart__fill-decline-top{stop-color:var(--color-danger);stop-opacity:.18}.article-body .article-chart__fill-decline-bot{stop-color:var(--color-danger);stop-opacity:0}.article-body .article-chart__refline{stroke:color-mix(in oklch, var(--color-text-3) 50%, transparent);stroke-width:1px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke}.article-body .ac-refline-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);padding-right:6px;transform:translate(-100%,-50%)}.article-body .ac-pointval{font-family:var(--font-mono);color:var(--color-text-1);font-size:clamp(11px,2.6vw,14px);font-weight:600;transform:translate(-50%,-50%)}.article-body .ac-dot--mid{background:var(--color-text-2);border-radius:50%;width:7px;height:7px;transform:translate(-50%,-50%)}.article-body .ac-xlabel--stacked{color:var(--color-text-2);flex-direction:column;align-items:center;gap:1px;font-weight:600;display:flex}.article-body .ac-xlabel--stacked span{color:var(--color-text-3);font-size:.85em;font-weight:400}.article-body .ac-pointval.ac-edge--start,.article-body .ac-xlabel.ac-edge--start{transform:translateY(-50%)}.article-body .ac-pointval.ac-edge--end,.article-body .ac-xlabel.ac-edge--end{transform:translate(-100%,-50%)}.article-body .ac-xlabel--stacked.ac-edge--start{align-items:flex-start}.article-body .ac-xlabel--stacked.ac-edge--end{align-items:flex-end}@media (prefers-reduced-motion:no-preference){.article-body .article-chart__line--decline{animation:1.1s cubic-bezier(.22,1,.36,1) both ac-draw}.article-body .article-chart__area--decline{opacity:0;animation:.9s .5s forwards ac-fade}}.article-body .article-chart__plot--dist{aspect-ratio:96/40}@media (width<=560px){.article-body .article-chart__plot--dist{aspect-ratio:5/4}}.article-body .acd-curve{fill:none;stroke-width:2.5px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.article-body .acd-curve--human{stroke:var(--color-accent)}.article-body .acd-curve--machine{stroke:var(--color-danger)}.article-body .acd-fill--human{fill:color-mix(in oklch, var(--color-accent) 13%, transparent)}.article-body .acd-fill--machine{fill:color-mix(in oklch, var(--color-danger) 12%, transparent)}.article-body .acd-overlap{fill:color-mix(in oklch, color-mix(in oklch, var(--color-danger), var(--color-accent)) 30%, transparent)}.article-body .acd-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);white-space:nowrap}.article-body .acd-label--human{color:var(--color-accent);transform:translate(-100%,-100%)}.article-body .acd-label--machine{color:var(--color-danger);transform:translateY(-100%)}.article-body .acd-label--overlap{color:var(--color-text-1);text-transform:uppercase;font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);transform:translate(-50%,-50%)}.article-body .acd-note{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);transform:translate(-50%,-100%)}@media (prefers-reduced-motion:no-preference){.article-body .acd-curve{animation:1.2s cubic-bezier(.22,1,.36,1) both ac-draw}.article-body .acd-curve--machine{animation-delay:.15s}.article-body .acd-fill,.article-body .acd-overlap{opacity:0;animation:.9s .6s forwards ac-fade}}.article-body .article-chart--matrix .acm-grid{margin-top:var(--size-4);border-top:1px solid var(--color-border);grid-template-columns:minmax(6.5rem,.8fr) 1fr 1fr;display:grid}.article-body .acm-head{padding:var(--size-3) var(--size-3) var(--size-2);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);border-bottom:1px solid var(--color-border)}.article-body .acm-label,.article-body .acm-then,.article-body .acm-now{padding:var(--size-4) var(--size-3);border-bottom:1px solid var(--color-border);font-size:var(--fs-sm);color:var(--color-text-2);line-height:1.5}.article-body .acm-label{flex-direction:column;gap:.15rem;display:flex}.article-body .acm-label-name{font-family:var(--font-display);font-weight:700;font-size:var(--fs-base);letter-spacing:-.01em;color:var(--color-accent)}.article-body .acm-gloss{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3)}.article-body .acm-then{color:var(--color-text-3)}.article-body .acm-now{color:var(--color-text-1);box-shadow:inset 1px 0 0 color-mix(in oklch, var(--color-accent) 35%, transparent)}@media (width<=620px){.article-body .article-chart--matrix .acm-grid{border-top:0;grid-template-columns:1fr}.article-body .acm-head{display:none}.article-body .acm-label{padding:var(--size-5) var(--size-3) var(--size-2);border-bottom:0}.article-body .acm-then,.article-body .acm-now{padding:var(--size-1) var(--size-3) var(--size-2);box-shadow:none}.article-body .acm-now{border-bottom:1px solid var(--color-border)}.article-body .acm-then:before,.article-body .acm-now:before{font-family:var(--font-mono);font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:var(--tracking-caps);margin-right:.4rem;display:inline}.article-body .acm-then:before{content:"Then";color:var(--color-text-3)}.article-body .acm-now:before{content:"Now";color:var(--color-accent)}}.article-body .article-chart__plot--collapse{aspect-ratio:96/43}@media (width<=560px){.article-body .article-chart__plot--collapse{aspect-ratio:5/4}}.article-body .acc-curve{fill:none;stroke-width:2.25px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:100;vector-effect:non-scaling-stroke}.article-body .acc-curve--0{stroke:color-mix(in oklch, var(--color-danger) 30%, transparent)}.article-body .acc-curve--1{stroke:color-mix(in oklch, var(--color-danger) 52%, transparent)}.article-body .acc-curve--2{stroke:color-mix(in oklch, var(--color-danger) 74%, transparent)}.article-body .acc-curve--3{stroke:var(--color-danger);filter:drop-shadow(0 0 5px color-mix(in oklch, var(--color-danger) 45%, transparent))}.article-body .acc-fill--0{fill:color-mix(in oklch, var(--color-danger) 5%, transparent)}.article-body .acc-fill--1{fill:color-mix(in oklch, var(--color-danger) 7%, transparent)}.article-body .acc-fill--2{fill:color-mix(in oklch, var(--color-danger) 9%, transparent)}.article-body .acc-fill--3{fill:color-mix(in oklch, var(--color-danger) 12%, transparent)}.article-body .acc-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-2);white-space:nowrap;flex-direction:column;gap:1px;display:flex}.article-body .acc-label em{font-style:normal;font-size:var(--fs-micro);color:var(--color-text-3)}.article-body .acc-label--start{text-align:right;transform:translate(-100%,-50%)}.article-body .acc-label--end{color:var(--color-danger);transform:translateY(-50%)}.article-body .acc-note{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);transform:translateY(-100%)}@media (prefers-reduced-motion:no-preference){.article-body .acc-curve{animation:1.15s cubic-bezier(.22,1,.36,1) both ac-draw}.article-body .acc-curve--1{animation-delay:.12s}.article-body .acc-curve--2{animation-delay:.24s}.article-body .acc-curve--3{animation-delay:.36s}.article-body .acc-fill{opacity:0;animation:.9s .5s forwards ac-fade}}.article-body .article-chart--donut .acp-wrap{align-items:center;gap:var(--size-5) var(--size-6);margin-top:var(--size-4);flex-wrap:wrap;display:flex}.article-body .acp-plot{aspect-ratio:1;flex:none;width:clamp(9rem,38%,11.5rem);position:relative}.article-body .acp-svg{width:100%;height:100%}.article-body .acp-track{stroke:var(--glass-subtle)}.article-body .acp-seg{stroke-linecap:butt}.article-body .acp-seg--danger{stroke:var(--color-danger)}.article-body .acp-seg--accent{stroke:var(--color-accent)}.article-body .acp-seg--muted{stroke:color-mix(in oklch, var(--color-text-3) 50%, transparent)}.article-body .acp-center{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.article-body .acp-center-num{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--lh-tight);color:var(--color-text-1)}.article-body .acp-center-sub{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);max-width:6.5rem;line-height:var(--lh-snug);margin-top:.3rem}.article-body .acp-legend{margin:0;padding:0;list-style:none}.article-body .article-chart--donut .acp-legend{align-items:baseline;column-gap:var(--size-5);row-gap:var(--size-3);grid-template-columns:max-content max-content;display:grid}.article-body .acp-key{display:contents}.article-body .acp-key-label{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);line-height:var(--lh-snug);color:var(--color-text-2);align-items:baseline;gap:.5rem;display:inline-flex}.article-body .acp-key-label:before{content:"";border-radius:var(--radius-1);flex:none;width:.6rem;height:.6rem;transform:translateY(.05rem)}.article-body .acp-key--danger .acp-key-label:before{background:var(--color-danger)}.article-body .acp-key--accent .acp-key-label:before{background:var(--color-accent)}.article-body .acp-key--muted .acp-key-label:before{background:color-mix(in oklch, var(--color-text-3) 50%, transparent)}.article-body .acp-key-val{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono);color:var(--color-text-1);white-space:nowrap;justify-self:end;font-weight:600}@keyframes acp-pop{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:no-preference){.article-body .article-chart--donut .acp-plot{animation:.7s cubic-bezier(.22,1,.36,1) both acp-pop}}.skip-link{left:var(--size-3);top:var(--size-3);z-index:var(--z-toast);transition:transform var(--dur-fast) var(--ease-out);padding:var(--size-2) var(--size-4);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-1);background:var(--color-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-2);position:absolute;transform:translateY(-200%)}.skip-link:focus{outline:2px solid var(--color-accent);outline-offset:2px;transform:translateY(0)}.item:focus-visible,.feature:focus-visible,.post:focus-visible,.pillar:focus-visible,.brand:focus-visible,.public-nav a:focus-visible,.filter-bar .badge:focus-visible,.list-section__more:focus-visible,.page-btn:focus-visible,.section-head .right a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-2)}.public-shell{max-width:var(--layout-max);padding-inline:var(--size-5);z-index:1;margin-inline:auto;position:relative}.public-nav{gap:var(--size-5);align-items:center;display:flex}.public-nav a{min-height:var(--tap-min);color:var(--color-text-3);font-family:var(--font-mono);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:var(--fs-xs);align-items:center;text-decoration:none;display:inline-flex}.public-nav a:hover{color:var(--color-accent)}.public-nav a.active{color:var(--color-text-1)}.ml-auto{margin-left:auto}.public-footer{border-top:1px solid var(--color-border);margin-top:var(--size-8);padding-block:var(--size-6);background:radial-gradient(60% 130% at 0 100%,oklch(85% .17 170/.045),#0000 62%)}.footer-brand{align-items:center;gap:var(--size-3);min-width:0;display:inline-flex}.footer-logo{flex:none;width:18px;height:18px;display:block}@media (width<=640px){.public-footer .public-shell{row-gap:var(--size-3);flex-wrap:wrap}}.archive-hero{padding:var(--size-8) 0 var(--size-6);border-bottom:1px solid var(--color-border)}.archive-hero .eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--size-4)}.archive-hero h1{letter-spacing:-.02em;max-width:20ch;font-size:clamp(2.4rem,6vw,3.5rem);font-weight:500;line-height:1.05}.archive-hero h1 em{color:var(--color-accent);font-style:normal}.archive-hero p{margin-top:var(--size-4);max-width:64ch;color:var(--color-text-2);font-size:var(--fs-md);line-height:var(--lh-body)}.archive-hero .hero-cta{margin-top:var(--size-6)}.filter-bar{gap:var(--size-3);padding:var(--size-4) 0;border-bottom:1px solid var(--color-border);flex-wrap:wrap;align-items:center;display:flex}.filter-bar .tabs{border-bottom:0;gap:0;height:auto}.filter-bar .tab{padding:0 var(--size-3);height:28px}.filter-bar .badge{min-height:var(--tap-min)}.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}h1,h2,h3{text-wrap:balance}.list-section{padding:var(--size-6) 0 0}.list-section+.list-section{padding-top:var(--size-7)}.list-section__head{justify-content:space-between;align-items:baseline;gap:var(--size-3);padding-bottom:var(--size-3);border-bottom:1px solid var(--color-border);display:flex}.list-section__head h2{font-size:var(--fs-xl);font-weight:600}.list-section__more{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);align-items:center;gap:var(--size-2);display:inline-flex}.list-section__more:hover{color:var(--color-accent)}.list-section__count{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-3);font-weight:400}.feature{gap:clamp(var(--size-5), 4vw, var(--size-7));padding:var(--size-6) 0 var(--size-7);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;text-decoration:none;display:grid}.feature-media{aspect-ratio:16/10;border-radius:var(--radius-3);border:1px solid var(--color-border);background:var(--color-base);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-base) var(--ease-out);position:relative;overflow:hidden}.feature:hover .feature-media{border-color:var(--color-border-hover);box-shadow:var(--glow-accent-sm)}.feature-media img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out);display:block}.feature:hover .feature-media img{transform:scale(1.03)}.feature-meta{gap:var(--size-3);flex-wrap:wrap;align-items:center;display:flex}.feature-date{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);text-transform:uppercase}.feature-title{letter-spacing:-.02em;color:var(--color-text-1);margin-top:var(--size-4);text-wrap:balance;transition:color var(--dur-fast) var(--ease-out);font-size:clamp(1.7rem,2.6vw,2.6rem);font-weight:500;line-height:1.08}.feature:hover .feature-title{color:var(--color-accent)}.feature-excerpt{margin-top:var(--size-4);color:var(--color-text-2);font-size:var(--fs-md);line-height:var(--lh-body);text-wrap:pretty;max-width:54ch}.feature-cta{margin-top:var(--size-5);align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--color-accent);display:inline-flex}.feature-cta svg{width:14px;height:14px;transition:transform var(--dur-fast) var(--ease-out)}.feature:hover .feature-cta svg{transform:translate(4px)}.item-list{padding:var(--size-3) 0 var(--size-6)}.item{gap:var(--size-2);padding:var(--size-5) 0;border-bottom:1px solid var(--color-border);transition:background var(--dur-fast) var(--ease-out);grid-template-columns:minmax(0,1fr);align-items:start;text-decoration:none;display:grid}.item:hover{background:oklch(20% .02 250/.3);text-decoration:none}.item--media{column-gap:var(--size-5);grid-template-columns:clamp(116px,18vw,168px) minmax(0,1fr)}.item-media{aspect-ratio:4/3;border-radius:var(--radius-2);border:1px solid var(--color-border);transition:border-color var(--dur-fast) var(--ease-out);overflow:hidden}.item:hover .item-media{border-color:var(--color-border-hover)}.item-thumb{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out);display:block}.item:hover .item-thumb{transform:scale(1.03)}.item-meta{gap:var(--size-3);flex-wrap:wrap;align-items:center;display:flex}.item-date{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);text-transform:uppercase}.item-body h3{font-size:var(--fs-lg);color:var(--color-text-1);letter-spacing:-.01em;margin-top:var(--size-3);transition:color var(--dur-fast) var(--ease-out);font-weight:500;line-height:1.25}.item:hover .item-body h3{color:var(--color-accent)}.item-body>p{font-size:var(--fs-sm);color:var(--color-text-2);margin-top:var(--size-2);max-width:72ch;line-height:var(--lh-body);text-wrap:pretty}.item-body .badge mark,.item-body mark{background:var(--hl-accent-subtle);color:var(--color-accent);border-bottom:0;padding:0 2px}@media (prefers-reduced-motion:no-preference){@keyframes archive-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.feature,.item-list .item{animation:archive-in var(--dur-slow) var(--ease-out) both}.item-list .item:nth-child(2){animation-delay:60ms}.item-list .item:nth-child(3){animation-delay:.12s}.item-list .item:nth-child(4){animation-delay:.18s}.item-list .item:nth-child(n+5){animation-delay:.24s}}@media (width>=1000px){.item-list{column-gap:clamp(var(--size-6), 4vw, var(--size-8));grid-template-columns:1fr 1fr;display:grid}}@media (width<=760px){.feature{gap:var(--size-4);padding:var(--size-5) 0 var(--size-6);grid-template-columns:1fr;align-items:start}.feature-media{aspect-ratio:16/9}.feature-title{margin-top:var(--size-3)}}@media (width<=560px){.item--media{row-gap:var(--size-3);grid-template-columns:1fr}.item-media{aspect-ratio:16/9}}.tile-grid{gap:var(--size-4);padding:var(--size-5) 0 var(--size-7);grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));display:grid}.pagination-nav{gap:var(--size-2);padding:var(--size-6) 0 var(--size-8);justify-content:center;align-items:center;display:flex}.page-btn{min-width:32px;height:32px;padding:0 var(--size-2);border:1px solid var(--color-border);border-radius:var(--radius-2);color:var(--color-text-2);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);background:0 0;place-items:center;text-decoration:none;display:inline-grid}.page-btn:hover{border-color:var(--color-border-hover);color:var(--color-text-1);text-decoration:none}.page-btn.active{border-color:var(--color-accent);color:var(--color-accent);background:var(--tint-accent)}.page-btn.disabled{opacity:.4;pointer-events:none}.page-gap{color:var(--color-text-3);padding:0 var(--size-1)}.search-hero{padding:var(--size-7) 0 var(--size-5)}.search-hero h1{font-size:var(--fs-2xl);letter-spacing:-.02em;margin-bottom:var(--size-4);font-weight:500}.search-form{max-width:560px}.search-form .input-group{height:var(--h-ctrl-md)}.search-meta{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);text-transform:uppercase;padding:var(--size-4) 0;border-bottom:1px solid var(--color-border)}.empty-state{align-items:center;gap:var(--size-3);padding:var(--size-8) var(--size-5);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-1);color:var(--color-text-3);margin:var(--size-6) 0;font-size:var(--fs-sm);flex-direction:column;display:flex}.empty-state__icon{width:26px;height:26px;color:var(--color-text-mute)}.empty-state__msg{max-width:44ch;line-height:var(--lh-snug);margin:0}.empty-state__action{margin-top:var(--size-2)}.page-shell{padding:var(--size-8) 0}.page-shell article.long{max-width:var(--layout-reading);margin-inline:auto}.page-shell article.long h1{font-size:clamp(2rem, 4vw, var(--fs-3xl));letter-spacing:-.02em;margin-bottom:var(--size-5);max-width:none;font-weight:500;line-height:1.1}.page-body .table-of-contents{display:none}.error-page{text-align:center;min-height:60vh;padding:var(--size-9) var(--size-5);justify-content:center;align-items:center;gap:var(--size-4);flex-direction:column;display:flex}.error-code{font-family:var(--font-mono);font-size:var(--fs-4xl);letter-spacing:-.02em;color:var(--color-accent);font-weight:600}.error-msg{color:var(--color-text-2);font-size:var(--fs-md);max-width:44ch}.admin-form{max-width:580px}.field{gap:var(--size-2);margin-bottom:var(--size-4);display:grid}.field__label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);font-weight:500}.field__hint{font-size:var(--fs-xs);color:var(--color-text-3);margin:0}.field__error{font-size:var(--fs-xs);color:var(--color-danger);margin:0}.control{width:100%;height:var(--h-ctrl-md);padding:0 var(--size-3);font-family:var(--font-body);font-size:var(--fs-sm);color:var(--color-text-1);border:1px solid var(--color-border);border-radius:var(--radius-2);background:oklch(10% .02 250);display:block}.control:focus{border-color:var(--color-accent-dim);box-shadow:0 0 0 2px var(--hl-accent-subtle);outline:none}.control--area{height:auto;min-height:8rem;padding:var(--size-2) var(--size-3);resize:vertical;font-family:var(--font-mono);line-height:var(--lh-snug)}.control::placeholder{color:var(--color-text-mute)}.btn--accent{border-color:var(--color-border-strong);color:var(--color-accent);background:linear-gradient(oklch(85% .17 170/.22),oklch(85% .17 170/.1))}.btn--accent:hover{color:var(--color-text-1);background:linear-gradient(oklch(85% .17 170/.32),oklch(85% .17 170/.15))}.auth-card{max-width:26rem;margin:var(--size-9) auto;padding:var(--size-6);border:1px solid var(--color-border);border-radius:var(--radius-1);background:var(--glass-subtle)}.auth-card__title{font-family:var(--font-display);font-size:var(--fs-xl);letter-spacing:var(--tracking-tight);margin-bottom:var(--size-2);font-weight:500}.checkbox-row{font-size:var(--fs-sm);color:var(--color-text-3);align-items:center;gap:var(--size-2);display:inline-flex}.flash{margin-bottom:var(--size-5);padding:var(--size-3) var(--size-4);border:1px solid var(--color-success);border-radius:var(--radius-1);color:var(--color-success);font-size:var(--fs-sm);background:var(--tint-success)}.flash--error{border-color:var(--color-danger);color:var(--color-danger);background:var(--tint-danger)}.file-upload{gap:var(--size-3);display:grid}.file-upload__preview{border:1px solid var(--color-border);border-radius:var(--radius-1);max-width:12rem}.file-upload__remove{font-size:var(--fs-sm);color:var(--color-text-3);align-items:center;gap:var(--size-2);display:inline-flex}@media (width<=720px){.public-header{position:static}.public-nav a{min-height:44px}.input-group--header{height:44px}}@media (width<=640px){.control,.input,.select,.btn:not(.btn-xs):not(.btn-icon){min-height:44px}.section-head .right a{align-items:center;min-height:44px;display:inline-flex}}.hero-wrap{padding:var(--size-8) 0 var(--size-7);border-bottom:1px solid var(--color-border);position:relative}.hero-eyebrow-row{align-items:center;gap:var(--size-3);margin-bottom:var(--size-5);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);flex-wrap:wrap;display:flex}.hero-eyebrow-row .sep{color:var(--color-border-strong)}.hero-h1{font-family:var(--font-display);letter-spacing:-.035em;color:var(--color-text-1);max-width:18ch;font-size:clamp(2.4rem,6vw,4.2rem);font-weight:500;line-height:1}.hero-h1 em{color:var(--color-accent);font-style:normal}.hero-intro{margin-top:var(--size-5);color:var(--color-text-2);font-size:var(--fs-md);text-wrap:pretty;max-width:56ch;line-height:1.55}.hero-meta-strip{margin-top:var(--size-6);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(4,1fr);gap:0;display:grid}@media (width<=720px){.hero-meta-strip{grid-template-columns:repeat(2,1fr)}}.hero-meta-strip>div{padding:var(--size-4) var(--size-4) var(--size-4) 0;border-right:1px solid var(--color-border);flex-direction:column;gap:3px;display:flex}.hero-meta-strip>div:last-child{border-right:0}.hero-meta-strip>div:not(:first-child){padding-left:var(--size-4)}.hero-meta-strip .k{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3)}.hero-meta-strip .v{font-family:var(--font-display);font-size:var(--fs-xl);color:var(--color-text-1);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:500;line-height:1}.hero-meta-strip .v .u{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-3);letter-spacing:var(--tracking-mono);margin-left:3px}.section-head{justify-content:space-between;align-items:baseline;gap:var(--size-4);margin-bottom:var(--size-6);display:flex}.section-kicker{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-accent)}.section-head h2{font-family:var(--font-display);font-size:var(--fs-2xl);letter-spacing:-.02em;color:var(--color-text-1);margin-top:6px;font-weight:500}.section-head p{color:var(--color-text-3);font-size:var(--fs-sm);max-width:56ch;margin-top:4px}.section-head .right{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);white-space:nowrap}.section-head .right a{color:var(--color-accent);text-decoration:none}.section-head .right a:hover{text-decoration:underline}.latest-wrap{padding:var(--size-8) 0 var(--size-7);border-bottom:1px solid var(--color-border)}.latest-grid{gap:var(--size-5);grid-template-columns:repeat(3,1fr);display:grid}@media (width<=900px){.latest-grid{grid-template-columns:1fr}}.post{gap:var(--size-3);padding:var(--size-5) 0;border-top:1px solid var(--color-border);cursor:pointer;min-height:200px;transition:border-color var(--dur-base) var(--ease-out);flex-direction:column;text-decoration:none;display:flex}.post .date-row{align-items:center;gap:var(--size-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);display:flex}.post .date-row .day{color:var(--color-accent);font-weight:500}.post h3{font-family:var(--font-display);font-size:var(--fs-lg);letter-spacing:-.015em;color:var(--color-text-1);max-width:26ch;transition:color var(--dur-fast) var(--ease-out);font-weight:500;line-height:1.15}.post p{font-size:var(--fs-sm);color:var(--color-text-2);max-width:44ch;line-height:1.55}.post .foot{padding-top:var(--size-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-mono);color:var(--color-text-3);justify-content:space-between;align-items:center;margin-top:auto;display:flex}.post:hover{border-top-color:var(--color-border-strong)}.post:hover h3{color:var(--color-accent)}.post-cover{aspect-ratio:16/9;border-radius:var(--radius-2);border:1px solid var(--color-border);margin-bottom:var(--size-2);display:block;overflow:hidden}.post-cover img{object-fit:cover;width:100%;height:100%;transition:transform var(--dur-slow) var(--ease-out);display:block}.post:hover .post-cover{border-color:var(--color-border-hover)}.post:hover .post-cover img{transform:scale(1.03)}.workshop-wrap{padding:var(--size-8) 0}.pillars{border:1px solid var(--color-border);border-radius:var(--radius-1);grid-template-columns:repeat(4,1fr);gap:0;display:grid;overflow:hidden}@media (width<=900px){.pillars{grid-template-columns:repeat(2,1fr)}}.pillar{padding:var(--size-6);border-right:1px solid var(--color-border);background:var(--glass-subtle);gap:var(--size-3);cursor:pointer;min-height:220px;transition:background var(--dur-base) var(--ease-out);flex-direction:column;text-decoration:none;display:flex;position:relative}.pillar:last-child{border-right:0}@media (width<=900px){.pillar:nth-child(2){border-right:0}.pillar:first-child,.pillar:nth-child(2){border-bottom:1px solid var(--color-border)}}.pillar:hover{background:var(--glass-strong)}.pillar:before{content:"";background:currentColor;width:40px;height:2px;position:absolute;top:0;left:0}.p-article{color:var(--c-article)}.p-prompt{color:var(--c-prompt)}.p-skill{color:var(--c-skill)}.p-tool{color:var(--c-tool)}.pillar .p-label{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:currentColor}.pillar .p-count{font-family:var(--font-display);color:var(--color-text-1);letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:2.6rem;font-weight:500;line-height:1}.pillar .p-title{font-family:var(--font-display);font-size:var(--fs-md);color:var(--color-text-1);letter-spacing:-.015em;font-weight:500}.pillar .p-desc{font-size:var(--fs-xs);color:var(--color-text-3);max-width:30ch;line-height:1.5}.pillar .p-foot{padding-top:var(--size-4);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--color-text-3);justify-content:space-between;align-items:center;margin-top:auto;display:flex}.pillar .p-foot .arrow{color:currentColor;transition:transform var(--dur-fast) var(--ease-out)}.pillar:hover .p-foot .arrow{transform:translate(3px)}.section-head h2{text-shadow:0 0 16px oklch(85% .17 170/.32),0 0 32px oklch(78% .12 220/.18)}.hero-wrap,.latest-wrap{position:relative}.hero-wrap:after,.latest-wrap:after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), var(--color-accent2), var(--c-prompt), transparent);opacity:.55;filter:drop-shadow(0 0 6px oklch(78% .12 220/.4));background-size:200% 100%;height:1px;position:absolute;bottom:-1px;left:0;right:0}@media (prefers-reduced-motion:no-preference){.hero-wrap:after,.latest-wrap:after{animation:8s linear infinite holo-edge}.holo-glitch.is-holo-in{animation:.55s steps(2,end) holo-glitch}.holo-glitch:hover{animation:.4s steps(2,end) holo-glitch}}@keyframes holo-glitch{0%{text-shadow:0 0 16px oklch(88% .13 170/.45);transform:translate(0)}20%{text-shadow:-3px 0 oklch(70% .2 25/.75),3px 0 oklch(82% .11 220/.75);transform:translate(-2px,1px)}40%{text-shadow:3px 0 oklch(70% .2 25/.65),-3px 0 oklch(82% .11 220/.65);transform:translate(2px,-1px)}60%{text-shadow:-2px 0 oklch(80% .14 300/.65),2px 0 oklch(88% .13 170/.65);transform:translate(-1px)}to{text-shadow:0 0 16px oklch(88% .13 170/.45),0 0 30px oklch(82% .11 220/.3);transform:translate(0)}}@keyframes holo-edge{0%{background-position:0 0}to{background-position:200% 0}}.comment-form{gap:var(--size-4);margin-block:var(--size-7);padding:var(--size-5);background:var(--glass-subtle);-webkit-backdrop-filter:blur(var(--glass-blur-soft));backdrop-filter:blur(var(--glass-blur-soft));border:1px solid var(--color-border);border-radius:var(--radius-3);display:grid}.comment-form__field{gap:var(--size-1);font-size:var(--fs-sm);display:grid}.comment-form__field input,.comment-form__field textarea{width:100%;padding:var(--size-2) var(--size-3);background:var(--glass-medium);border:1px solid var(--color-border);border-radius:var(--radius-2);color:var(--color-text-1)}.comment-form__field textarea{resize:vertical;min-height:6rem}.comment-form__error{color:var(--color-danger);font-size:var(--fs-xs)}.comment-form__submit{padding:var(--size-2) var(--size-5);border-radius:var(--radius-2);background:var(--color-accent);color:var(--color-accent-ink);cursor:pointer;font-size:var(--fs-sm);border:0;justify-self:start;font-weight:600}.comment-form__submit:hover{background:var(--color-accent-dim)}.comments__list{gap:var(--size-5);padding:0;list-style:none;display:grid}.comments__list--nested{margin-left:var(--size-5);border-left:1px solid var(--color-border);padding-left:var(--size-5)}.comment__head{gap:var(--size-3);margin-bottom:var(--size-2);align-items:baseline;display:flex}.comment__author a{color:var(--color-accent);text-decoration:none}.comment__author a:hover{color:var(--color-accent-dim);text-decoration:underline}.comment__date{font-size:var(--fs-xs);color:var(--color-text-3)}.comment{background:var(--glass-subtle);-webkit-backdrop-filter:blur(var(--glass-blur-soft));backdrop-filter:blur(var(--glass-blur-soft));border:1px solid var(--color-border);border-radius:var(--radius-2);padding:var(--size-4) var(--size-5)}.comment__body{font-size:var(--fs-sm);color:var(--color-text-2);line-height:var(--lh-body)}.comment__body p{margin:0 0 var(--size-2)}.comment__body p:last-child{margin-bottom:0}.comments__heading{font-size:var(--fs-lg);color:var(--color-text-1);margin:0 0 var(--size-4);border-bottom:1px solid var(--color-border);padding-bottom:var(--size-3);font-weight:600}.comments__count{font-size:var(--fs-sm);color:var(--color-text-3);font-weight:400}.comments__flash{background:var(--glass-subtle);border:1px solid var(--color-border-accent);border-radius:var(--radius-2);padding:var(--size-3) var(--size-4);color:var(--color-text-1);font-size:var(--fs-sm);margin-bottom:var(--size-4)}.comments__empty{color:var(--color-text-3);font-size:var(--fs-sm);font-style:italic}

.site-nav__me{color:var(--color-accent)}.profile-hero{padding:clamp(var(--size-7), 8vw, calc(var(--size-8) + var(--size-5))) 0 var(--size-7);border-bottom:1px solid var(--color-border)}.profile-hero__eyebrow{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-3);letter-spacing:.02em;margin:0 0 var(--size-3)}.profile-hero__title{font-size:clamp(var(--fs-2xl), 7vw, var(--fs-3xl));letter-spacing:-.03em;font-weight:700;line-height:var(--lh-tight);text-wrap:balance;margin:0 0 var(--size-4)}.profile-hero__cursor{color:var(--color-accent);animation:1s steps(2,start) infinite profile-blink}.profile-hero__thesis{font-size:var(--fs-xl);color:var(--color-text-1);max-width:var(--layout-reading);text-wrap:balance;margin:0 0 var(--size-5)}.profile-hero__cta{gap:var(--size-3);flex-wrap:wrap;display:flex}@keyframes profile-blink{to{opacity:0}}.profile-section{padding:var(--size-7) 0;border-bottom:1px solid var(--color-border)}.profile-section:first-of-type{padding-top:var(--size-8)}.profile-section__heading{font-size:var(--fs-2xl);letter-spacing:-.02em;text-wrap:balance}.profile-section__lede,.profile-prose{max-width:var(--layout-reading);color:var(--color-text-3);line-height:var(--lh-body)}.profile-prose strong{color:var(--color-text-1)}.profile-section__head-row{justify-content:space-between;align-items:baseline;gap:var(--size-4);flex-wrap:wrap;display:flex}.profile-contact{padding-block:var(--size-8);border-bottom:0}.profile-contact .profile-section__heading{color:var(--color-accent)}.case{background:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-5);scroll-margin-top:var(--size-7)}.case__title{font-size:var(--fs-xl);margin:0 0 var(--size-2)}.case__meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-2);margin:0 0 var(--size-2)}.case__tagline{color:var(--color-text-1);margin:0 0 var(--size-3)}.case__blurb{color:var(--color-text-2);max-width:var(--layout-reading)}.case__outcomes{color:var(--color-text-2);font-size:var(--fs-sm);padding-left:var(--size-5)}.case__tech,.case__metrics,.case__links{gap:var(--size-2);margin-top:var(--size-3);flex-wrap:wrap;display:flex}.chip{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-2);border:1px solid var(--color-border);padding:var(--size-1) var(--size-3);border-radius:999px}.metric{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-accent)}.case__shot{margin:0}.case__shot img{border:1px solid var(--color-border);border-radius:var(--radius-2);width:100%;height:auto;box-shadow:var(--shadow-3);display:block}.case__shot-cap{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--color-text-2);text-transform:uppercase;letter-spacing:.08em;line-height:var(--lh-snug);margin:var(--size-2) 0 0}.profile-captures .shots{gap:var(--size-7);margin-top:var(--size-6);display:grid}.shot--featured{width:100%;max-width:64rem;margin-inline:auto}.shots__rest{gap:var(--size-6);grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));min-width:0;display:grid}.shot{gap:var(--size-3);min-width:0;color:inherit;text-decoration:none;display:grid}.shot__frame{border:1px solid var(--color-border);border-radius:var(--radius-2);background:var(--color-surface);box-shadow:var(--shadow-2);transition:border-color var(--dur-base) var(--ease-out), box-shadow var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);display:block;position:relative;overflow:hidden}.shot__frame img{width:100%;height:auto;display:block}.shots__rest .shot__frame{aspect-ratio:16/10}.shots__rest .shot__frame img{object-fit:cover;object-position:top center;height:100%}.shot__live{top:var(--size-2);right:var(--size-2);align-items:center;gap:var(--size-1);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.06em;color:var(--color-text-1);background:color-mix(in oklch, var(--color-base) 86%, transparent);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:2px var(--size-2);pointer-events:none;display:inline-flex;position:absolute}.shot__live-dot{background:var(--color-accent);width:6px;height:6px;box-shadow:0 0 6px color-mix(in oklch, var(--color-accent) 70%, transparent);border-radius:50%}.shot__meta{gap:var(--size-1);min-width:0;display:grid}.shot__id{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-1);letter-spacing:-.01em;transition:color var(--dur-fast) var(--ease-out);display:inline-flex}.shot--featured .shot__id{font-size:var(--fs-base)}.shot__icon{color:var(--color-accent-dim);flex:none}.shot__note{font-size:var(--fs-sm);color:var(--color-text-2);line-height:var(--lh-snug)}.shot:hover .shot__frame,.shot:focus-within .shot__frame{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in oklch, var(--color-accent) 30%, transparent), var(--shadow-3)}.shot:hover .shot__id,.shot:focus-visible .shot__id{color:var(--color-accent)}.shot:focus-visible{outline:none}.shot:focus-visible .shot__frame{outline:2px solid var(--color-accent);outline-offset:3px}@media (prefers-reduced-motion:no-preference){.shot:hover .shot__frame,.shot:focus-visible .shot__frame{transform:translateY(-3px)}.shot__frame img{transition:transform var(--dur-slow) var(--ease-out)}.shot:hover .shot__frame img,.shot:focus-visible .shot__frame img{transform:scale(1.025)}}.skill-grid{gap:var(--size-6);margin-top:var(--size-5);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));display:grid}.skill-grid__title{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);text-transform:uppercase;letter-spacing:.08em;margin:0 0 var(--size-3)}.skill-grid__list{gap:var(--size-4);margin:0;padding:0;list-style:none;display:grid}.skill{gap:var(--size-1);font-size:var(--fs-sm);color:var(--color-text-2);display:grid}.skill__head{align-items:center;gap:var(--size-2);display:flex}.skill__icon{font-size:var(--fs-base);color:var(--color-text-3);transition:color var(--dur-fast) var(--ease-out);flex:none}.skill:hover .skill__icon,.skill:focus-within .skill__icon{color:var(--color-accent)}.skill__proof{padding-left:calc(var(--fs-base) + var(--size-2));font-size:var(--fs-micro);line-height:var(--lh-snug)}.skill__sep{color:var(--color-text-mute);margin:0 var(--size-1)}.proof-link{color:var(--color-text-3);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);text-decoration:none}.proof-link:hover,.proof-link:focus-visible{color:var(--color-accent)}.proof-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:1px}.spec-list{gap:var(--size-7) var(--size-6);margin-top:var(--size-6);grid-template-columns:repeat(auto-fit,minmax(22rem,1fr));display:grid}.spec__head{align-items:center;gap:var(--size-3);margin-bottom:var(--size-3);display:flex}.spec__node{border:1px solid var(--color-border);border-radius:var(--radius-1);background:var(--color-elevated);width:1.9rem;height:1.9rem;color:var(--color-accent);transition:border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);flex:none;justify-content:center;align-items:center;display:inline-flex}.spec__icon{width:1rem;height:1rem}.spec:hover .spec__node,.spec:focus-within .spec__node{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in oklch, var(--color-accent) 30%, transparent)}.spec__title{font-size:var(--fs-lg);letter-spacing:-.01em;line-height:var(--lh-snug);text-wrap:balance;margin:0}.spec__blurb{color:var(--color-text-2);font-size:var(--fs-sm);line-height:var(--lh-body);max-width:44ch;margin:0 0 var(--size-4)}.spec__proof{gap:var(--size-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.proof{align-items:center;gap:var(--size-2);padding:var(--size-1) var(--size-3);border:1px solid var(--color-border);border-radius:var(--radius-1);background:var(--color-elevated);color:var(--color-text-2);font-size:var(--fs-xs);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);text-decoration:none;display:inline-flex}.proof__icon{width:.9rem;height:.9rem;color:var(--color-text-3);transition:color var(--dur-fast) var(--ease-out);flex:none}.spec:hover .proof{border-color:var(--color-border-hover)}.proof:hover,.proof:focus-visible{border-color:var(--color-accent);color:var(--color-text-1);box-shadow:0 4px 14px -8px color-mix(in oklch, var(--color-accent) 55%, transparent);transform:translateY(-1px)}.proof:hover .proof__icon,.proof:focus-visible .proof__icon{color:var(--color-accent)}.proof:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pmap{margin:var(--size-4) 0 var(--size-2);position:relative}.pmap__caption{align-items:center;gap:var(--size-1);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--size-3);display:inline-flex}.pmap__bands{z-index:1;gap:var(--size-3);display:grid;position:relative}.pmap__band{--pmap-key:var(--color-text-3);border-inline-start:2px solid color-mix(in oklch, var(--pmap-key) 55%, transparent);padding-inline-start:var(--size-3)}.pmap__band[data-hue=slate]{--pmap-key:var(--pmap-hue-slate)}.pmap__band[data-hue=teal]{--pmap-key:var(--pmap-hue-teal)}.pmap__band[data-hue=amber]{--pmap-key:var(--pmap-hue-amber)}.pmap__band[data-hue=violet]{--pmap-key:var(--pmap-hue-violet)}.pmap__band[data-hue=crimson]{--pmap-key:var(--pmap-hue-crimson)}.pmap__band[data-hue=blue]{--pmap-key:var(--pmap-hue-blue)}.pmap__band[data-hue=orange]{--pmap-key:var(--pmap-hue-orange)}.pmap__band[data-hue=green]{--pmap-key:var(--pmap-hue-green)}.pmap__band[data-hue=purple]{--pmap-key:var(--pmap-hue-purple)}.pmap__band[data-hue=magenta]{--pmap-key:var(--pmap-hue-magenta)}.pmap__band-title{font-family:var(--font-mono);font-size:var(--fs-micro);color:var(--pmap-key);text-transform:uppercase;letter-spacing:.1em;margin:0 0 var(--size-2)}.pmap__nodes{gap:var(--size-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.pmap__node{align-items:center;gap:var(--size-1);background:var(--color-elevated);border:1px solid var(--color-border);border-radius:var(--radius-1);padding:var(--size-1) var(--size-3);font-size:var(--fs-sm);color:var(--color-text-2);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out), background var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);display:inline-flex}.pmap__node:hover,.pmap__node.is-active{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in oklch, var(--color-accent) 35%, transparent)}.pmap__node.is-active{background:color-mix(in oklch, var(--color-accent) 12%, var(--color-elevated));color:var(--color-text-1)}.pmap__node.is-linked{border-color:color-mix(in oklch, var(--color-accent) 45%, var(--color-border));box-shadow:0 0 0 1px color-mix(in oklch, var(--color-accent) 22%, transparent)}.pmap__node:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.pmap__status{font-size:var(--fs-base);color:var(--color-text-3);flex:none}.pmap__node[data-status=built] .pmap__status{color:var(--color-accent-dim)}.pmap__node[data-status=partial] .pmap__status{color:var(--pmap-hue-amber)}.pmap__node[data-status=planned] .pmap__status{color:var(--color-text-3)}.pmap__edges{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:visible}.pmap__edge{fill:none;stroke:var(--pmap-edge);stroke-width:1.5px;opacity:.55;transition:stroke var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out)}.pmap__edge--active{stroke:var(--pmap-edge-active);opacity:1;filter:drop-shadow(0 0 3px color-mix(in oklch, var(--color-accent) 60%, transparent))}.pmap__arrowhead path{fill:var(--pmap-edge)}.pmap__arrowhead--active path{fill:var(--pmap-edge-active)}.pmap__join{fill:var(--pmap-edge);opacity:.7;transition:fill var(--dur-fast) var(--ease-out), opacity var(--dur-fast) var(--ease-out)}.pmap__join--active{fill:var(--pmap-edge-active);opacity:1;filter:drop-shadow(0 0 3px color-mix(in oklch, var(--color-accent) 60%, transparent))}.pmap__edge-pill-bg{fill:var(--color-surface);stroke:color-mix(in oklch, var(--color-accent) 50%, transparent);stroke-width:1px}.pmap__edge-label{font-family:var(--font-mono);font-size:var(--fs-micro);fill:var(--color-accent)}.pmap__particle{fill:var(--color-accent);filter:drop-shadow(0 0 2px var(--color-accent))}@media (width<=40rem){.pmap__edges{display:none}.pmap__node{width:100%}}.pmap--hero{margin:var(--size-6) 0 var(--size-2)}.pmap--hero .pmap__bands{gap:var(--size-5)}.pmap__node-li{display:contents}.pmap__node--project{min-width:12rem;max-width:17rem;padding:var(--size-2) var(--size-3);flex-direction:column;align-items:flex-start;gap:2px;text-decoration:none}.pmap__node--project .pmap__node-label{color:var(--color-text-1);font-weight:600}.pmap__node-sub{font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-tight);text-wrap:balance}.pmap__node--hub{border-color:var(--color-accent);box-shadow:0 0 0 1px color-mix(in oklch, var(--color-accent) 30%, transparent)}.pmap__node--hub .pmap__node-label{color:var(--color-accent)}.pmap__node-head{align-items:center;gap:var(--size-2);display:inline-flex}.pmap__node-icon{width:1rem;height:1rem;color:var(--color-text-3);transition:color var(--dur-fast) var(--ease-out);flex:none}.pmap__node--hub .pmap__node-icon{color:var(--color-accent)}.pmap__node--project{transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out)}.pmap__node--project:hover,.pmap__node--project:focus-visible{border-color:var(--color-accent);box-shadow:0 8px 22px -12px color-mix(in oklch, var(--color-accent) 50%, transparent);transform:translateY(-2px)}.pmap__node--project:hover .pmap__node-icon,.pmap__node--project:focus-visible .pmap__node-icon{color:var(--color-accent)}.pmap--hero .pmap__edges{display:none}.pmap__bands--split{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.pmap--hero .pmap__bands--split{gap:var(--size-6)}.pmap__band--side .pmap__band-title{font-size:var(--fs-sm);letter-spacing:.08em}.pmap__band-lede{font-size:var(--fs-xs);color:var(--color-text-2);line-height:var(--lh-tight);margin:0 0 var(--size-3);text-wrap:balance;max-width:34ch}.pmap__band--side .pmap__node--project{width:100%;min-width:0;max-width:none}@media (width<=52rem){.pmap__bands--split{grid-template-columns:1fr}}.detail{width:min(94vw,46rem);max-width:none;height:max-content;max-height:88dvh;box-shadow:none;color:var(--color-text-1);padding:var(--size-6);--g-red:color-mix(in oklch, var(--color-danger) 82%, transparent);--g-cyan:color-mix(in oklch, var(--color-accent2) 82%, transparent);--g-violet:color-mix(in oklch, var(--violet-300) 78%, transparent);--g-mint:color-mix(in oklch, var(--color-accent) 78%, transparent);background:0 0;border:0;margin:auto;position:fixed;inset:0;overflow-y:auto}.detail[open]{opacity:1;transition:opacity var(--dur-base) var(--ease-out)}@starting-style{.detail[open]{opacity:0}}.detail::backdrop{background:var(--color-scrim);opacity:0;-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));transition:opacity var(--dur-slow) var(--ease-out), display var(--dur-slow) allow-discrete, overlay var(--dur-slow) allow-discrete}.detail[open]::backdrop{opacity:1}@starting-style{.detail[open]::backdrop{opacity:0}}.detail__chrome{justify-content:space-between;align-items:center;gap:var(--size-3);margin-bottom:var(--size-2);display:flex}.detail__grid{gap:var(--size-6);align-items:start;display:grid}.detail[data-cols="2"]{width:min(96vw,64rem)}.detail[data-cols="2"] .detail__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.detail__main,.detail__aside{min-width:0}.detail__aside[hidden]{display:none}.detail__map{gap:var(--size-3);display:grid}.detail__map .pmap{margin:0}.detail__map .pmap__bands{gap:var(--size-3)}.detail__map .pmap__caption{display:none}@media (width<=48rem){.detail[data-cols="2"]{width:min(94vw,46rem)}.detail[data-cols="2"] .detail__grid{grid-template-columns:1fr}}.detail__eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-accent-dim);text-transform:uppercase;letter-spacing:.1em;margin:0}.detail__close{width:2rem;height:2rem;color:var(--color-text-3);cursor:pointer;font-size:var(--fs-lg);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.detail__close:hover{color:var(--color-accent)}.detail__close:focus-visible{color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:2px}.detail__title{font-size:var(--fs-2xl);letter-spacing:-.02em;margin:0 0 var(--size-2);text-wrap:balance}.detail__title:focus-visible{outline:none}.detail__meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);margin:0 0 var(--size-4)}.detail__body{gap:var(--size-4);display:grid}.detail__body>*{margin:0}.detail.is-glitch-in :is(.detail__eyebrow,.detail__title,.detail__meta,.detail__body>*){animation:.44s steps(2,end) backwards el-glitch-in;animation-delay:calc(var(--i,0) * 30ms)}.detail.is-glitch-out :is(.detail__eyebrow,.detail__title,.detail__meta,.detail__body>*){animation:.32s steps(2,end) both el-glitch-out;animation-delay:calc(var(--i,0) * 14ms)}@keyframes el-glitch-in{0%{opacity:0;filter:drop-shadow(-6px 0 var(--g-red)) drop-shadow(6px 0 var(--g-cyan));transform:translate(-6px)}16%{opacity:1;filter:drop-shadow(6px 0 var(--g-red)) drop-shadow(-6px 0 var(--g-cyan));transform:translate(5px)}46%{opacity:1;filter:drop-shadow(-4px 0 var(--g-violet)) drop-shadow(4px 0 var(--g-mint));transform:translate(-3px)}74%{opacity:1;filter:drop-shadow(3px 0 var(--g-red)) drop-shadow(-3px 0 var(--g-cyan));transform:translate(2px)}to{opacity:1;filter:none;transform:none}}@keyframes el-glitch-out{0%{opacity:1;filter:none;transform:none}35%{opacity:1;filter:drop-shadow(-5px 0 var(--g-red)) drop-shadow(5px 0 var(--g-cyan));transform:translate(5px)}70%{opacity:.5;filter:drop-shadow(5px 0 var(--g-red)) drop-shadow(-5px 0 var(--g-cyan));transform:translate(-4px)}to{opacity:0;filter:drop-shadow(-3px 0 var(--g-red)) drop-shadow(3px 0 var(--g-cyan));transform:translate(4px)}}.detail.is-glitch-in :is(.detail__aside .pmap__band-title,.detail__aside .pmap__node){animation:.44s steps(2,end) backwards el-node-in;animation-delay:calc(var(--i,0) * 14ms)}.detail.is-glitch-out :is(.detail__aside .pmap__band-title,.detail__aside .pmap__node){animation:.3s steps(2,end) both el-node-out;animation-delay:calc(var(--i,0) * 9ms)}@keyframes el-node-in{0%{opacity:0;filter:drop-shadow(-5px 0 var(--g-red)) drop-shadow(5px 0 var(--g-cyan))}18%{opacity:1;filter:drop-shadow(5px 0 var(--g-red)) drop-shadow(-5px 0 var(--g-cyan))}50%{opacity:1;filter:drop-shadow(-3px 0 var(--g-violet)) drop-shadow(3px 0 var(--g-mint))}to{opacity:1;filter:none}}@keyframes el-node-out{0%{opacity:1;filter:none}45%{opacity:1;filter:drop-shadow(-5px 0 var(--g-red)) drop-shadow(5px 0 var(--g-cyan))}to{opacity:0;filter:drop-shadow(3px 0 var(--g-red)) drop-shadow(-3px 0 var(--g-cyan))}}.detail .case__blurb,.detail .case__outcomes{max-width:none}.detail .chip{border-color:color-mix(in oklch, var(--color-border) 45%, transparent)}.detail__back{align-items:center;gap:var(--size-1);margin-bottom:var(--size-3);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--color-text-3);cursor:pointer;transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;padding:0;display:inline-flex}.detail__back:hover,.detail__back:focus-visible{color:var(--color-accent)}.detail__back:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.detail__status{font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;align-items:center;display:inline-flex}.detail__status--built{color:var(--color-accent-dim)}.detail__status--partial{color:var(--pmap-hue-amber)}.detail__status--planned{color:var(--color-text-3)}.detail__section{gap:var(--size-2);display:grid}.detail__section-title{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);text-transform:uppercase;letter-spacing:.08em;margin:0}.detail__conns{gap:var(--size-1);flex-direction:column;display:flex}.detail__conn{align-items:baseline;gap:var(--size-2);text-align:left;width:100%;padding:var(--size-1) 0;color:var(--color-text-2);cursor:pointer;font-size:var(--fs-sm);transition:color var(--dur-fast) var(--ease-out);background:0 0;border:0;display:flex}.detail__conn:hover{color:var(--color-accent)}.detail__conn:focus-visible{color:var(--color-accent);outline:2px solid var(--color-accent);outline-offset:2px}.detail__conn:hover .detail__conn-label,.detail__conn:focus-visible .detail__conn-label{color:var(--color-accent)}.detail__conn-kind{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-accent-dim);flex:none}.detail__conn-label{color:var(--color-text-1);transition:color var(--dur-fast) var(--ease-out)}.detail__empty{color:var(--color-text-3);font-size:var(--fs-sm)}.resume__group{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-3);margin-top:var(--size-5)}.resume__entry{margin-bottom:var(--size-4)}.resume__role{color:var(--color-text-1);margin:0}.resume__when{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);margin:0}.profile-footnote{color:var(--color-text-3);font-size:var(--fs-sm);margin-top:var(--size-4)}@media print{.public-header,footer{display:none}.resume-doc{color:var(--color-base)}.resume-doc__role span{color:var(--color-text-3)}}.resume-doc{max-width:var(--layout-reading)}.resume-doc h1{font-size:var(--fs-2xl);margin-bottom:var(--size-1)}.resume-doc h2{font-size:var(--fs-lg);margin-top:var(--size-6);border-bottom:1px solid var(--color-border)}.resume-doc__entry{margin-bottom:var(--size-4)}.resume-doc__role span,.resume-doc__tech{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}html.motion-armed [data-reveal]:not(.is-revealed){opacity:0;transform:translateY(var(--size-2))}}[data-reveal]{transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay,0s)}[data-reveal].is-revealed{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){[data-hero]>*{animation:hero-in var(--dur-base) var(--ease-out) both}[data-hero]>:first-child{animation-delay:60ms}[data-hero]>:nth-child(2){animation-delay:.15s}[data-hero]>:nth-child(3){animation-delay:.24s}[data-hero]>:nth-child(4){animation-delay:.33s}}@keyframes hero-in{0%{opacity:0;transform:translateY(var(--size-2))}to{opacity:1;transform:none}}.case{transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out)}.case:hover{transform:translateY(calc(-1 * var(--size-1)));border-color:var(--color-accent)}.case__icon{width:1.05em;height:1.05em;color:var(--color-text-3);vertical-align:-.15em;transition:color var(--dur-fast) var(--ease-out);flex:none}.case:hover .case__icon{color:var(--color-accent)}.case__link-icon,.exhibit-strip__more-icon,.search-section__more-icon{transition:transform var(--dur-fast) var(--ease-out)}.case__links a:hover .case__link-icon,.exhibit-strip__more:hover .exhibit-strip__more-icon,.search-section__more:hover .search-section__more-icon{transform:translate(1px,-1px)}.icon{vertical-align:-.125em}.scroll-progress{background:var(--color-accent);transform-origin:0;z-index:100;height:2px;position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.section-rail{display:none}@media (width>=64rem){.section-rail{gap:var(--size-3);right:var(--size-5);z-index:50;flex-direction:column;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.section-rail__link{align-items:center;gap:var(--size-2);color:var(--color-text-3);font-family:var(--font-mono);font-size:var(--fs-xs);display:flex}.section-rail__dot{width:var(--size-2);height:var(--size-2);border:1px solid var(--color-border);background:var(--color-base);transition:background var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out);border-radius:999px}.section-rail__label{opacity:0;transition:opacity var(--dur-fast) var(--ease-out)}.section-rail__link:hover .section-rail__label,.section-rail__link:focus-visible .section-rail__label,.section-rail__link[aria-current=true] .section-rail__label{opacity:1}.section-rail__link:focus-visible .section-rail__dot,.section-rail__link[aria-current=true] .section-rail__dot{background:var(--color-accent);border-color:var(--color-accent)}}.copy-email{min-width:var(--size-6);min-height:var(--size-6);color:var(--color-text-3);cursor:pointer;padding:var(--size-1);vertical-align:middle;background:0 0;border:none;justify-content:center;align-items:center;display:inline-flex}.copy-email:hover{color:var(--color-accent)}.copy-email:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;color:var(--color-accent)}@media (pointer:coarse){.copy-email,.detail__close{min-width:44px;min-height:44px}}.copy-email__check{color:var(--color-success);display:none}.copy-email.is-copied .copy-email__copy{display:none}.copy-email.is-copied .copy-email__check{display:inline}.pmap__node--hub{position:relative}@media (prefers-reduced-motion:no-preference){.pmap--live .pmap__node--hub:after{content:"";border-radius:inherit;border:1px solid var(--color-accent);opacity:0;pointer-events:none;transform-origin:50%;animation:pmap-hub-pulse 2.8s var(--ease-out) infinite;position:absolute;inset:-1px}}@keyframes pmap-hub-pulse{0%{opacity:.5;transform:scale(1)}70%{opacity:0;transform:scale(1.06)}to{opacity:0;transform:scale(1.06)}}@media (prefers-reduced-motion:no-preference){.pmap--hero.pmap--live .pmap__node--project{animation:pmap-card-in var(--dur-base) var(--ease-out) backwards}.pmap--hero.pmap--live .pmap__node-li:first-child .pmap__node--project{animation-delay:60ms}.pmap--hero.pmap--live .pmap__node-li:nth-child(2) .pmap__node--project{animation-delay:.12s}.pmap--hero.pmap--live .pmap__node-li:nth-child(3) .pmap__node--project{animation-delay:.18s}.pmap--hero.pmap--live .pmap__node-li:nth-child(4) .pmap__node--project{animation-delay:.24s}.pmap--hero.pmap--live .pmap__node-li:nth-child(5) .pmap__node--project{animation-delay:.3s}.pmap--hero.pmap--live .pmap__node-li:nth-child(6) .pmap__node--project{animation-delay:.36s}.pmap--hero.pmap--live .pmap__node-li:nth-child(7) .pmap__node--project{animation-delay:.42s}.pmap--hero.pmap--live .pmap__node-li:nth-child(8) .pmap__node--project{animation-delay:.48s}}@keyframes pmap-card-in{0%{opacity:0;transform:translateY(10px)}}.profile-hero,.profile-section{border-bottom:0;position:relative}.profile-hero:after,.profile-section:not(.profile-contact):after{content:"";background:linear-gradient(90deg, transparent, var(--color-accent), var(--color-accent2), var(--c-prompt), transparent);opacity:.55;height:1px;filter:drop-shadow(0 0 6px color-mix(in oklch, var(--color-accent2) 45%, transparent));background-size:200% 100%;position:absolute;bottom:0;left:0;right:0}@media (prefers-reduced-motion:no-preference){.profile-hero:after,.profile-section:not(.profile-contact):after{animation:8s linear infinite holo-edge}}.profile-section__heading{text-shadow:0 0 16px color-mix(in oklch, var(--color-accent) 38%, transparent), 0 0 34px color-mix(in oklch, var(--color-accent2) 20%, transparent)}@media (prefers-reduced-motion:no-preference){[data-reveal].is-revealed .profile-section__heading{animation:.46s steps(2,end) .25s both reveal-chroma}}@keyframes reveal-chroma{0%{text-shadow:-6px 0 color-mix(in oklch, var(--color-danger) 88%, transparent), 6px 0 color-mix(in oklch, var(--color-accent2) 88%, transparent)}32%{text-shadow:5px 0 color-mix(in oklch, var(--color-danger) 72%, transparent), -5px 0 color-mix(in oklch, var(--color-accent2) 72%, transparent)}60%{text-shadow:-3px 0 color-mix(in oklch, var(--violet-300) 68%, transparent), 3px 0 color-mix(in oklch, var(--color-accent) 68%, transparent)}to{text-shadow:0 0 16px color-mix(in oklch, var(--color-accent) 38%, transparent), 0 0 34px color-mix(in oklch, var(--color-accent2) 20%, transparent)}}

.mochi{isolation:isolate;color:var(--color-text-1);position:relative}.mochi__sky{z-index:0;pointer-events:none;background:radial-gradient(46% 36% at 90% 2%, var(--tint-accent), transparent 70%), radial-gradient(54% 46% at 4% 100%, var(--tint-violet), transparent 72%);position:fixed;inset:0}.mochi__shell{z-index:1;max-width:var(--layout-max);padding-inline:var(--size-5);margin-inline:auto;position:relative}.scroll-progress{transform-origin:0;background:var(--color-accent);height:2px;z-index:var(--z-sticky);position:fixed;top:0;left:0;right:0;transform:scaleX(0)}.mochi-sec{padding-block:clamp(var(--size-7), 7vw, var(--size-9));border-top:1px solid var(--color-border)}.mochi-sec__head{max-width:var(--layout-reading);margin-bottom:var(--size-6)}.mochi-sec__title{font-size:clamp(var(--fs-xl), 4.5vw, var(--fs-3xl));letter-spacing:-.03em;font-weight:700;line-height:var(--lh-tight);text-wrap:balance;margin:0 0 var(--size-3);color:var(--color-text-1)}.mochi-sec__lede{font-size:var(--fs-md);color:var(--color-text-2);line-height:var(--lh-body);text-wrap:pretty;max-width:var(--layout-reading);margin:0}.mochi-hero{align-items:center;gap:clamp(var(--size-6), 5vw, var(--size-9));padding-block:clamp(var(--size-8), 9vw, calc(var(--size-9) + var(--size-6)));grid-template-columns:1.35fr .65fr;display:grid}.mochi-hero__kind{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-3);letter-spacing:.02em;margin:0 0 var(--size-4)}.mochi-hero__glyph{color:var(--color-accent-dim)}.icon{vertical-align:-.125em}.mochi-hero__name{font-size:clamp(var(--fs-3xl), 8vw, var(--fs-4xl));letter-spacing:-.04em;margin:0 0 var(--size-4);text-wrap:balance;color:var(--color-text-1);font-weight:700;line-height:.98}.mochi-hero__cursor{color:var(--color-accent);font-weight:400}.mochi-hero__tagline{font-size:clamp(var(--fs-lg), 2.6vw, var(--fs-2xl));color:var(--color-text-1);letter-spacing:-.01em;margin:0 0 var(--size-3);text-wrap:balance;font-weight:600}.mochi-hero__selfdef{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-2);margin:0 0 var(--size-5)}.mochi-hero__mode{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-sm);padding:var(--size-2) var(--size-4);border:1px solid var(--color-border);border-radius:var(--radius-1);background:var(--color-surface);margin:0 0 var(--size-5);display:inline-flex}.mochi-hero__mode-dot{background:var(--color-accent);width:7px;height:7px;box-shadow:0 0 8px color-mix(in oklch, var(--color-accent) 70%, transparent);border-radius:50%;flex:none}.mochi-hero__mode-key{color:var(--color-text-3);text-transform:uppercase;letter-spacing:.1em;font-size:var(--fs-xs)}.mochi-hero__mode-val{color:var(--color-accent);transition:opacity var(--dur-base) var(--ease-out);font-weight:600}.mochi-words{gap:var(--size-2);margin:0 0 var(--size-6);flex-wrap:wrap;padding:0;list-style:none;display:flex}.mochi-words__chip{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:.04em;color:var(--color-text-2);padding:var(--size-1) var(--size-3);border:1px solid var(--color-border);border-radius:var(--radius-1)}.mochi-hero__cta{gap:var(--size-3);flex-wrap:wrap;margin:0;display:flex}.mochi-btn{align-items:center;gap:var(--size-2);font-family:var(--font-mono);font-size:var(--fs-sm);padding:var(--size-3) var(--size-5);border-radius:var(--radius-1);border:1px solid var(--color-border-strong);color:var(--color-text-1);cursor:pointer;transition:transform var(--dur-fast) var(--ease-out), border-color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), color var(--dur-base) var(--ease-out);background:0 0;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.mochi-btn--primary{background:var(--color-accent);color:var(--color-base);border-color:var(--color-accent)}.mochi-btn--ghost{background:var(--color-surface)}.mochi-btn:hover{transform:translateY(-2px)}.mochi-btn--primary:hover{background:var(--color-accent-dim);border-color:var(--color-accent-dim)}.mochi-btn--ghost:hover{border-color:var(--color-accent);color:var(--color-accent)}.mochi-btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.mochi-btn__face--copied{color:var(--color-accent);display:none}.mochi-btn.is-copied .mochi-btn__face--default{display:none}.mochi-btn.is-copied .mochi-btn__face--copied{display:inline}@media (width<=640px){.mochi-btn{min-height:40px}}.mochi-hero__avatar{place-items:center;display:grid}.mochi-node{width:clamp(132px,17vw,196px)}.mochi-node__svg{width:100%;height:auto;overflow:visible}.mochi-node__skewer{stroke:var(--color-border-strong)}.mochi-node__ring{fill:var(--color-surface);stroke:var(--color-accent-dim)}.mochi-node__dot,.mochi-node__live{fill:var(--color-accent)}.mochi-node__pulse{stroke:var(--color-accent);opacity:0}.mochi-id{padding-block:var(--size-6);border-top:1px solid var(--color-border)}.mochi-id__grid{background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;margin:0;display:grid;overflow:hidden}.mochi-id__cell{background:var(--color-surface);padding:var(--size-4) var(--size-5)}.mochi-id__cell--wide{grid-column:span 2}.mochi-id__k{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-3);margin:0 0 var(--size-1)}.mochi-id__v{font-size:var(--fs-md);color:var(--color-text-1);margin:0;font-weight:600}.mochi-id__handle{color:var(--color-accent);text-decoration:none}.mochi-id__handle:hover{text-underline-offset:3px;text-decoration:underline}.mx{position:relative}.mx__radio{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.mx__tabs{gap:var(--size-3);margin-bottom:var(--size-6);flex-wrap:wrap;display:flex}.mx__tab{align-items:center;gap:var(--size-2);cursor:pointer;font-family:var(--font-mono);font-size:var(--fs-sm);padding:var(--size-2) var(--size-4);border-radius:var(--radius-1);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-2);transition:color var(--dur-base) var(--ease-out), background var(--dur-base) var(--ease-out), border-color var(--dur-base) var(--ease-out), transform var(--dur-fast) var(--ease-out);-webkit-user-select:none;user-select:none;display:inline-flex}.mx__tab:hover{color:var(--color-text-1);border-color:var(--mode-accent);transform:translateY(-1px)}.mx__tab-glyph{color:var(--mode-accent)}#mx-technical:checked~.mx__tabs [for=mx-technical],#mx-cute:checked~.mx__tabs [for=mx-cute],#mx-roast:checked~.mx__tabs [for=mx-roast]{color:var(--color-base);background:var(--mode-accent);border-color:var(--mode-accent)}#mx-technical:checked~.mx__tabs [for=mx-technical] .mx__tab-glyph,#mx-cute:checked~.mx__tabs [for=mx-cute] .mx__tab-glyph,#mx-roast:checked~.mx__tabs [for=mx-roast] .mx__tab-glyph{color:var(--color-base)}#mx-technical:focus-visible~.mx__tabs [for=mx-technical],#mx-cute:focus-visible~.mx__tabs [for=mx-cute],#mx-roast:focus-visible~.mx__tabs [for=mx-roast]{outline:2px solid var(--mode-accent);outline-offset:3px}.mx__panels{position:relative}.mx__panel{display:none}#mx-technical:checked~.mx__panels #panel-technical,#mx-cute:checked~.mx__panels #panel-cute,#mx-roast:checked~.mx__panels #panel-roast{display:block}.mx__panel{border:1px solid var(--mode-accent);border-radius:var(--radius-2);padding:clamp(var(--size-5), 4vw, var(--size-7));background:var(--color-surface)}.mx__panel-head{align-items:center;gap:var(--size-4);margin-bottom:var(--size-4);display:flex}.mx__panel-glyph{border-radius:var(--radius-1);width:44px;height:44px;font-size:var(--fs-lg);color:var(--mode-accent);border:1px solid var(--mode-accent);background:color-mix(in oklch, var(--mode-accent) 12%, transparent);flex:none;place-items:center;display:grid}.mx__panel-id{min-width:0}.mx__panel-title{font-size:var(--fs-xl);color:var(--color-text-1);letter-spacing:-.01em;margin:0}.mx__panel-trigger{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--mode-accent);margin:var(--size-1) 0 0}.mx__lock{color:var(--mode-accent);font-size:var(--fs-lg);margin-left:auto}.mx__panel-blurb{color:var(--color-text-2);line-height:var(--lh-body);max-width:var(--layout-reading);margin:0 0 var(--size-5)}.mx__samples{gap:var(--size-3);margin:0;padding:0;list-style:none;display:grid}.mx__sample{font-size:var(--fs-base);color:var(--color-text-1);padding:var(--size-3) var(--size-4) var(--size-3) var(--size-6);border-radius:var(--radius-1);background:var(--color-base);border:1px solid var(--color-border);position:relative}.mx__sample-mark{left:var(--size-3);color:var(--mode-accent);font-size:var(--fs-lg);position:absolute;top:2px}.mx__sample--locked{color:var(--mode-accent);font-family:var(--font-mono);letter-spacing:.18em;text-align:center;padding-left:var(--size-4)}.mx__sample--locked .mx__sample-mark{display:none}.mx__panel--locked{border-style:dashed}.mx__panel--locked .mx__panel-blurb{font-style:italic}.mochi-voice__list{gap:var(--size-4);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0;padding:0;list-style:none;display:grid}.mochi-voice__item{padding:var(--size-5);border-radius:var(--radius-2);border:1px solid var(--color-border);background:var(--color-surface);border-top:2px solid var(--voice-hue,var(--color-accent))}.mochi-voice__item--vi{--voice-hue:var(--pmap-hue-magenta)}.mochi-voice__item--en{--voice-hue:var(--color-accent)}.mochi-voice__text{font-size:var(--fs-lg);color:var(--color-text-1);line-height:var(--lh-snug);margin:0 0 var(--size-3);text-wrap:pretty}.mochi-voice__item--vi .mochi-voice__text{font-style:italic}.mochi-voice__meta{align-items:baseline;gap:var(--size-3);flex-wrap:wrap;margin:0;display:flex}.mochi-voice__lang{font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--voice-hue,var(--color-accent));flex:none}.mochi-voice__gloss{font-size:var(--fs-sm);color:var(--color-text-3);margin:0}.mochi-lore__grid{gap:var(--size-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.mochi-lore__beat{padding:var(--size-6);border-radius:var(--radius-2);border:1px solid var(--color-border);background:var(--color-surface);transition:border-color var(--dur-base) var(--ease-out)}.mochi-lore__beat:hover{border-color:var(--color-border-hover)}.mochi-lore__glyph{width:40px;height:40px;margin-bottom:var(--size-3);font-size:var(--fs-xl);border-radius:var(--radius-1);border:1px solid var(--lore-hue);color:var(--lore-hue);background:color-mix(in oklch, var(--lore-hue) 10%, transparent);place-items:center;line-height:1;display:inline-grid}.mochi-lore__beat:nth-child(4n+1){--lore-hue:var(--color-accent)}.mochi-lore__beat:nth-child(4n+2){--lore-hue:var(--pmap-hue-magenta)}.mochi-lore__beat:nth-child(4n+3){--lore-hue:var(--pmap-hue-violet)}.mochi-lore__beat:nth-child(4n+4){--lore-hue:var(--pmap-hue-amber)}.mochi-lore__title{font-size:var(--fs-lg);color:var(--color-text-1);margin:0 0 var(--size-2)}.mochi-lore__body{font-size:var(--fs-base);color:var(--color-text-2);line-height:var(--lh-body);text-wrap:pretty;margin:0}.mochi-term{border:1px solid var(--color-border-strong);border-radius:var(--radius-2);max-width:760px;box-shadow:var(--shadow-2);overflow:hidden}.mochi-term__bar{align-items:center;gap:var(--size-2);padding:var(--size-3) var(--size-4);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex}.mochi-term__dot{background:var(--color-border-strong);border-radius:50%;width:8px;height:8px}.mochi-term__dot:first-child{background:var(--color-accent);box-shadow:0 0 8px color-mix(in oklch, var(--color-accent) 70%, transparent)}.mochi-term__path{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);margin-left:var(--size-2)}.mochi-term__body{padding:var(--size-5);background:var(--color-base);gap:var(--size-3);margin:0;display:grid}.mochi-term__row{gap:var(--size-4);grid-template-columns:116px 1fr;align-items:baseline;display:grid}.mochi-term__k{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-accent)}.mochi-term__k:before{content:"› ";color:var(--color-accent-deep)}.mochi-term__v{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--color-text-1);margin:0}.mochi-contact{text-align:center;border-top:1px solid var(--color-border)}.mochi-contact__glyph{font-size:var(--fs-2xl);color:var(--color-accent);margin:0 0 var(--size-3)}.mochi-contact__glyph .icon{vertical-align:middle}.mochi-contact__title{font-size:clamp(var(--fs-xl), 5vw, var(--fs-3xl));color:var(--color-text-1);letter-spacing:-.03em;margin:0 0 var(--size-3);text-wrap:balance;overflow-wrap:break-word;font-weight:700}.mochi-contact__sub{color:var(--color-text-2);margin:0 auto var(--size-6);max-width:46ch}.mochi-contact__links{gap:var(--size-3);flex-wrap:wrap;justify-content:center;display:flex}.mochi-contact__home{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--color-text-3);margin:var(--size-7) 0 0}.mochi-contact__home-link{color:var(--color-accent);text-decoration:none}.mochi-contact__home-link:hover{text-underline-offset:3px;text-decoration:underline}@media (width<=760px){.mochi-hero{grid-template-columns:1fr}.mochi-hero__avatar{order:-1;justify-items:start}.mochi-node{width:clamp(108px,34vw,150px)}.mochi-id__cell--wide{grid-column:span 1}.mochi-term__row{gap:var(--size-1);grid-template-columns:1fr}}[data-reveal]{transition:opacity var(--dur-slow) var(--ease-out), transform var(--dur-slow) var(--ease-out)}[data-reveal].is-revealed{opacity:1;transform:none}@media (prefers-reduced-motion:no-preference){html.motion-armed [data-reveal]:not(.is-revealed){opacity:0;transform:translateY(var(--size-4))}.mx__panel{animation:mochi-panel-in var(--dur-base) var(--ease-out)}@keyframes mochi-panel-in{0%{opacity:0;transform:translateY(var(--size-2))}to{opacity:1;transform:none}}.mochi-hero__cursor{animation:1s steps(2,start) infinite mochi-blink}@keyframes mochi-blink{to{opacity:0}}.mochi-node__pulse{animation:mochi-node-pulse 2.8s var(--ease-out) infinite;transform-box:fill-box;transform-origin:50%}@keyframes mochi-node-pulse{0%{opacity:.5;transform:scale(1)}70%,to{opacity:0;transform:scale(1.28)}}}

/* inline-style replacements (CSP-safe): trio SSR'd these as style=; the JS reads neither, only CSS does. */
[data-reveal-delay="0"]{--reveal-delay:calc(0 * var(--dur-fast))}
[data-reveal-delay="1"]{--reveal-delay:calc(1 * var(--dur-fast))}
[data-reveal-delay="2"]{--reveal-delay:calc(2 * var(--dur-fast))}
[data-reveal-delay="3"]{--reveal-delay:calc(3 * var(--dur-fast))}
[data-reveal-delay="4"]{--reveal-delay:calc(4 * var(--dur-fast))}
[data-mode-accent="color-accent"]{--mode-accent:var(--color-accent)}
[data-mode-accent="pmap-hue-amber"]{--mode-accent:var(--pmap-hue-amber)}
[data-mode-accent="pmap-hue-magenta"]{--mode-accent:var(--pmap-hue-magenta)}
/* two spacing utilities trio applied via inline style= (CSP-safe as classes) — the rest already exist in crucix */
.mb-4{margin-bottom:var(--size-4)}
.gap-2{gap:var(--size-2)}

/* C1 — CSP-clean bar fill: the data-driven width is an SVG <rect> (presentation attr), not an inline
   style. Reuses trio's .acb-track/.acb-label/.acb-val; only the fill + value tone colors are new. */
.acb-track>svg{display:block;width:100%;height:100%}
.acb-fs--danger{fill:var(--color-danger)}
.acb-fs--accent{fill:var(--color-accent)}
.acb-fs--muted{fill:color-mix(in oklch,var(--color-text-3) 50%,transparent)}
.acb-val--danger{color:var(--color-danger)}
.acb-val--accent{color:var(--color-accent)}
.acb-val--muted{color:color-mix(in oklch,var(--color-text-3) 50%,transparent)}
/* ── plinth engine charts: SVG-<text> overlay labels (CSP-clean; replaces trio's HTML style= overlay).
   Canonical intent lives with packages/engine/src/charts.ts; ships in each consuming site's bundle.
   The plot's aspect-ratio is pinned to the viewBox ratio at every width so preserveAspectRatio="none"
   scales uniformly and the <text> never distorts. ── */
.article-body .article-chart__plot,.article-body .article-chart__plot--dist,.article-body .article-chart__plot--collapse{aspect-ratio:960/430}
.article-body .article-chart__svg text{font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}
/* SVG-<text> label sizes are user units scaled by the plot (viewBox 960 → ~876px on desktop, ×0.912),
   tuned so they land on trio's rendered px at that width: axis 12, value 14, refline/notes ~8.8,
   dist/collapse labels ~9.75. (Measured against veritart.me; trio's HTML-overlay clamp can't be matched
   at every width under CSP, so these target the desktop reading width.) */
.article-body .acl-y,.article-body .acl-x{fill:var(--color-text-3)}
.article-body .acl-y{font-size:13px;text-anchor:end;dominant-baseline:central}
.article-body .acl-x{font-size:13px}
.article-body .acl-x__sub{fill:var(--color-text-3);font-size:12px}
.article-body .acl-val{fill:var(--color-text-1);font-weight:600;font-size:15px}
.article-body .acl-ref{fill:var(--color-text-3);font-size:10px}
.article-body .acl-peak{fill:var(--color-accent);font-weight:600;font-size:14px}
.article-body .acl-end{fill:var(--color-danger);font-weight:600;font-size:13px;dominant-baseline:central}
.article-body .acl-crash{fill:var(--color-text-2);font-size:13px}
.article-body .acl-crash__b{fill:var(--color-text-1);font-weight:700}
.article-body .acl-crash__sub{fill:var(--color-text-3)}
.article-body .acl-dot--peak{fill:var(--color-accent);stroke:var(--color-base);stroke-width:2}
.article-body .acl-dot--end{fill:var(--color-danger)}
.article-body .acl-d{font-size:11px}
.article-body .acl-d--human{fill:var(--color-accent)}
.article-body .acl-d--machine{fill:var(--color-danger)}
.article-body .acl-d--overlap{fill:var(--color-text-1);text-transform:uppercase;letter-spacing:var(--tracking-caps);font-size:10px;dominant-baseline:central}
.article-body .acl-d-note{fill:var(--color-text-3);font-size:10px}
.article-body .acl-c{font-size:11px;fill:var(--color-text-2)}
.article-body .acl-c__em{fill:var(--color-text-3);font-size:10px}
.article-body .acl-c--end{fill:var(--color-danger)}
.article-body .acl-c-note{fill:var(--color-text-3);font-size:10px}
/* header/layout utilities trio expressed as inline styles (CSP moves them to classes) — the missing
   `.w-full` is why `.public-shell` (a flex item of the flex `.public-header`) collapsed to content
   width, so `row-between` could not spread the logo/nav/search across the bar. */
.w-full{width:100%}
.ml-auto{margin-left:auto}
/* COMMENTS — the honeypot field hides via a CLASS (the strict CSP forbids trio's inline style=), and
   the form title sits in veritart's display system. These two rules were missing when veritart wired
   comments; the rest of the comment styling was already present. */
.comment-form__title{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--color-text-1);margin:0;font-weight:600}
.comment-form__hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
