:root{--color-neutral-0: #FFFFFF;--color-neutral-50: #F4F5F6;--color-neutral-100: #E6E8EB;--color-neutral-150: #EDEFF1;--color-neutral-200: #D5D8DC;--color-neutral-300: #B4B9C0;--color-neutral-400: #9BA1A9;--color-neutral-500: #5B6068;--color-neutral-600: #3A3F46;--color-neutral-700: #2A2E33;--color-neutral-800: #15181B;--color-neutral-850: #111316;--color-neutral-900: #0A0A0A;--color-signal-positive: #1F7A4D;--color-signal-negative: #B3261E;--color-signal-info: #1D4ED8;--color-signal-caution: #9A5B00;--color-bg-page: var(--color-neutral-50);--color-bg-raised: var(--color-neutral-0);--color-bg-sunken: var(--color-neutral-100);--color-bg-inverse: var(--color-neutral-900);--color-fg-default: var(--color-neutral-900);--color-fg-body: var(--color-neutral-600);--color-fg-muted: var(--color-neutral-500);--color-fg-inverse: var(--color-neutral-50);--color-fg-inverse-body: #C9CDD2;--color-fg-inverse-muted: var(--color-neutral-400);--color-border-subtle: var(--color-neutral-200);--color-border-default: var(--color-neutral-300);--color-border-strong: var(--color-neutral-900);--color-border-inverse: var(--color-neutral-700);--font-family-sans: "Schibsted Grotesk", "Helvetica Neue", Arial, sans-serif;--font-family-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;--font-size-label: 12px;--font-size-small: 15px;--font-size-body: 17px;--font-size-lead: 20px;--font-size-h3: 24px;--font-size-h2: clamp(30px, 3.6vw, 48px);--font-size-display: clamp(44px, 7vw, 96px);--font-weight-regular: 400;--font-weight-semibold: 600;--font-weight-bold: 700;--font-tracking-display: -.045em;--font-tracking-heading: -.03em;--font-tracking-label: .14em;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 56px;--space-9: 96px;--space-10: 112px;--size-container: 1200px;--size-gutter: 32px;--size-control: 52px;--radius-none: 0px;--radius-pill: 999px}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--color-bg-page);color:var(--color-fg-default);font-family:var(--font-family-sans);font-size:var(--font-size-body);line-height:1.55;-webkit-font-smoothing:antialiased}a{color:inherit}a:hover{color:var(--color-fg-muted)}.inverse a:hover{color:var(--color-fg-inverse-muted)}:focus-visible{outline:2px solid var(--color-signal-info);outline-offset:3px}img{max-width:100%;display:block}p{margin:0;text-wrap:pretty}h1,h2,h3{margin:0;text-wrap:balance}code{font-family:var(--font-family-mono);font-size:.9em}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.skip{position:absolute;left:-9999px}.skip:focus{left:var(--space-4);top:var(--space-4);background:var(--color-bg-inverse);color:var(--color-fg-inverse);padding:var(--space-3) var(--space-4);z-index:10}.container{max-width:var(--size-container);margin:0 auto;padding-inline:var(--size-gutter)}@media (max-width: 600px){.container{padding-inline:var(--space-4)}}.band{padding-block:var(--space-9)}.band--tight{padding-block:var(--space-7)}.band--inverse{background:var(--color-bg-inverse);color:var(--color-fg-inverse)}.band--raised{background:var(--color-bg-raised);border-block:1px solid var(--color-border-subtle)}.stack{display:flex;flex-direction:column}.row{display:flex;flex-wrap:wrap}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:var(--space-8);align-items:start}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:var(--space-6)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.gap-6{gap:var(--space-6)}.gap-7{gap:var(--space-7)}.gap-8{gap:var(--space-8)}.label{font-family:var(--font-family-mono);font-size:var(--font-size-label);letter-spacing:var(--font-tracking-label);text-transform:uppercase;color:var(--color-fg-muted)}.inverse .label,.band--inverse .label{color:var(--color-fg-inverse-muted)}.display{font-size:var(--font-size-display);line-height:.98;letter-spacing:var(--font-tracking-display);font-weight:var(--font-weight-bold)}.h2{font-size:var(--font-size-h2);line-height:1.05;letter-spacing:var(--font-tracking-heading);font-weight:var(--font-weight-bold)}.h3{font-size:var(--font-size-h3);line-height:1.2;letter-spacing:-.02em;font-weight:var(--font-weight-bold)}.lead{font-size:var(--font-size-lead);line-height:1.5;color:var(--color-fg-body)}.body{color:var(--color-fg-body)}.small{font-size:var(--font-size-small)}.muted{color:var(--color-fg-muted)}.band--inverse .lead,.band--inverse .body{color:var(--color-fg-inverse-body)}.band--inverse .muted{color:var(--color-fg-inverse-muted)}.prose{display:flex;flex-direction:column;gap:var(--space-5);font-size:18px;line-height:1.6;color:var(--color-fg-body)}.band--inverse .prose{color:var(--color-fg-inverse-body)}.section-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:var(--space-4);border-bottom:1px solid var(--color-border-strong);padding-bottom:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--size-control);padding:0 28px;font:inherit;font-weight:var(--font-weight-semibold);font-size:16px;text-decoration:none;cursor:pointer;border-radius:var(--radius-none);border:1px solid var(--color-border-strong);transition:background .12s ease,color .12s ease}.btn--primary{background:var(--color-bg-inverse);color:var(--color-fg-inverse)}.btn--primary:hover{background:var(--color-neutral-700);color:var(--color-fg-inverse)}.btn--secondary{background:transparent;color:var(--color-fg-default)}.btn--secondary:hover{background:var(--color-bg-sunken);color:var(--color-fg-default)}.btn--small{min-height:40px;padding:0 var(--space-4);font-size:var(--font-size-small)}.btn:disabled{opacity:.45;cursor:not-allowed}.band--inverse .btn--primary,.inverse .btn--primary{background:var(--color-fg-inverse);color:var(--color-fg-default);border-color:var(--color-fg-inverse)}.band--inverse .btn--primary:hover{background:var(--color-neutral-200);color:var(--color-fg-default)}.band--inverse .btn--secondary,.inverse .btn--secondary{color:var(--color-fg-inverse);border-color:var(--color-fg-inverse)}.band--inverse .btn--secondary:hover{background:var(--color-neutral-800);color:var(--color-fg-inverse)}.pill{display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border-default);border-radius:var(--radius-pill);padding:6px 14px;font-size:13px;background:transparent;color:inherit;font-family:inherit}button.pill{cursor:pointer;min-height:36px}button.pill[aria-pressed=true]{background:var(--color-bg-inverse);color:var(--color-fg-inverse);border-color:var(--color-border-strong)}.nav{border-bottom:1px solid var(--color-border-subtle);background:var(--color-bg-page);position:sticky;top:0;z-index:5}.nav__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:18px}.nav__brand{font-weight:var(--font-weight-bold);font-size:17px;letter-spacing:-.01em;text-decoration:none}.nav__links{display:flex;flex-wrap:wrap;gap:var(--space-2) 28px;font-size:var(--font-size-small)}.nav__links a{text-decoration:none}.nav__links a[aria-current=page]{text-decoration:underline;text-underline-offset:6px}.placeholder{aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-4);border:1px solid var(--color-border-subtle);background:repeating-linear-gradient(135deg,var(--color-neutral-100) 0 12px,var(--color-neutral-150) 12px 24px);font-family:var(--font-family-mono);font-size:var(--font-size-label);letter-spacing:.1em;text-transform:uppercase;color:var(--color-fg-muted)}.band--inverse .placeholder,.placeholder--dark{border-color:var(--color-border-inverse);color:var(--color-fg-inverse-muted);background:repeating-linear-gradient(135deg,var(--color-neutral-850) 0 12px,var(--color-neutral-800) 12px 24px)}.placeholder--wide{aspect-ratio:16 / 8}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:1px;background:var(--color-border-subtle);border:1px solid var(--color-border-subtle)}.band--inverse .stats{background:var(--color-border-inverse);border-color:var(--color-border-inverse)}.stat{background:var(--color-bg-page);padding:var(--space-5);display:flex;flex-direction:column;gap:6px}.band--inverse .stat{background:var(--color-bg-inverse)}.stat__value{font-size:36px;font-weight:var(--font-weight-bold);letter-spacing:-.035em;line-height:1}.rule-list{display:flex;flex-direction:column}.rule-list>*{padding-block:20px;border-top:1px solid var(--color-border-subtle)}.rule-list>*:first-child{border-top-color:var(--color-border-strong)}.rule-list>*:last-child{border-bottom:1px solid var(--color-border-subtle)}.band--inverse .rule-list>*{border-color:var(--color-border-inverse)}.numbered{display:grid;grid-template-columns:56px 1fr;gap:var(--space-4)}.exp-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-5)}.work-card{text-decoration:none;display:flex;flex-direction:column;gap:var(--space-4)}.work-card:hover .h3{text-decoration:underline;text-underline-offset:5px}.ai-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));border:1px solid var(--color-border-strong)}.ai-strip>div{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-2);border-right:1px solid var(--color-border-subtle)}.ai-strip>div:last-child{border-right:0}.band--inverse .ai-strip{border-color:var(--color-border-inverse)}.band--inverse .ai-strip>div{border-color:var(--color-border-inverse)}.footer__meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-4);border-top:1px solid var(--color-border-inverse);padding-top:var(--space-5);font-family:var(--font-family-mono);font-size:var(--font-size-label);letter-spacing:.08em;color:var(--color-fg-inverse-muted)}.drift-badge{display:inline-flex;align-items:center;gap:var(--space-2);text-decoration:none;color:var(--color-fg-inverse-muted)}.drift-badge__dot{width:8px;height:8px;border-radius:var(--radius-pill);background:var(--color-neutral-400);flex:none}.drift-badge__dot--ok{background:var(--color-signal-positive);box-shadow:0 0 0 2px var(--color-neutral-700)}.drift-badge__dot--drift{background:var(--color-signal-caution);box-shadow:0 0 0 2px var(--color-neutral-700)}.table-wrap{overflow-x:auto;border:1px solid var(--color-border-subtle);background:var(--color-bg-raised)}table{border-collapse:collapse;width:100%;font-size:var(--font-size-small)}th,td{text-align:left;padding:10px var(--space-4);border-bottom:1px solid var(--color-border-subtle);white-space:nowrap}th{font-family:var(--font-family-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-fg-muted);font-weight:500}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tr:last-child td{border-bottom:0}.panel{background:var(--color-bg-raised);border:1px solid var(--color-border-subtle);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.panel--strong{border-color:var(--color-border-strong)}.notice{border:1px dashed var(--color-border-default);padding:var(--space-3) var(--space-4);font-size:var(--font-size-small);color:var(--color-fg-body);background:var(--color-bg-raised)}.steps{display:flex;flex-wrap:wrap;gap:var(--space-2);list-style:none;padding:0;margin:0}.step-btn{display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-border-default);background:transparent;font:inherit;font-size:var(--font-size-small);cursor:pointer;color:inherit}.step-btn[aria-current=step]{background:var(--color-bg-inverse);color:var(--color-fg-inverse);border-color:var(--color-border-strong)}.step-btn__n{font-family:var(--font-family-mono);font-size:11px}.chip-cite{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;margin-inline:2px;border:1px solid var(--color-border-default);font-family:var(--font-family-mono);font-size:11px;vertical-align:2px;background:var(--color-bg-page);cursor:pointer;color:inherit}.chip-cite[aria-pressed=true]{background:var(--color-bg-inverse);color:var(--color-fg-inverse)}.highlight{outline:2px solid var(--color-signal-info);outline-offset:-2px;background:color-mix(in srgb,var(--color-signal-info) 8%,transparent)}.cursor:after{content:"▍";animation:blink 1s steps(1) infinite;margin-left:2px}@keyframes blink{50%{opacity:0}}.meter{display:flex;gap:3px}.meter span{width:18px;height:6px;background:var(--color-border-subtle)}.meter span.on{background:var(--color-fg-default)}@media (prefers-reduced-motion: reduce){.cursor:after{animation:none}html{scroll-behavior:auto}}
