:root{--body:#c5c2bb;--body-subtle:#8a8781;--heading:#f0ede6;--fg-brand-subtle:#b33a24;--fg-brand:#fbb393;--fg-brand-strong:#fbc3a6;--fg-success:#4ade80;--fg-success-strong:#86efac;--fg-danger:#fb7185;--fg-danger-strong:#fda4af;--fg-warning:#fbbf24;--fg-disabled:#55534e;--neutral-primary-soft:#1a1a1a;--neutral-primary:#141414;--neutral-primary-medium:#1f1f1f;--neutral-primary-strong:#262626;--neutral-secondary-soft:#141314;--neutral-secondary:#050505;--neutral-secondary-medium:#0f0f0f;--neutral-tertiary-soft:#1f1f1f;--neutral-tertiary:#262626;--neutral-tertiary-medium:#2e2e2e;--neutral-quaternary:#363636;--neutral-quaternary-medium:#444444;--brand-softer:#241110;--brand-soft:#3a1712;--brand:#f79f79;--brand-medium:#fbb393;--brand-strong:#da8a63;--success-soft:#0c2818;--success:#22c55e;--danger-soft:#2a1015;--danger:#f43f5e;--warning-soft:#2a1e05;--warning:#f59e0b;--dark-soft:#1a1a1a;--dark:#0a0a0a;--dark-strong:#000000;--disabled:#1f1f1f;--border-default-subtle:#1f1f1f;--border-default:#262626;--border-default-medium:#333333;--border-default-strong:#444444;--border-success-subtle:#14532d;--border-danger-subtle:#4c1d24;--border-warning-subtle:#4a3410;--border-brand-subtle:#3a1712;--border-brand-light:#f79f79;--border-dark-backdrop:#000000;--nav-surface:rgb(20 19 20/0.78);--scrim:rgb(0 0 0/0.5);--hairline-cream:rgb(240 237 230/0.12);--hairline-cream-faint:rgb(240 237 230/0.06);--oblique-line-dark:rgb(240 237 230/0.035);--heat-0:#262626;--heat-1:#5a2a1c;--heat-2:#94512f;--heat-3:#da8a63;--heat-4:#fcd3bd;--heat-cell:11px;--font-family:var(--font-instrument),"Instrument Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-family-monospace:var(--font-chivo-mono),"Chivo Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Roboto Mono","Courier New",monospace;--font-size-xxs:0.6875rem;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.375rem;--font-size-3xl:1.5625rem;--font-size-4xl:1.75rem;--font-size-5xl:2rem;--font-size-6xl:2.25rem;--font-size-7xl:2.5rem;--font-size-9xl:3.125rem;--font-size-10xl:3.75rem;--font-size-hero:4.5rem;--line-height-heading:1.3;--line-height-display:1;--line-height-detail:1.3;--line-height-component:1.3;--line-height-body:1.5;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-0.5px;--letter-spacing-wider:0.1px;--spacing-0-5:0.125rem;--spacing-1:0.25rem;--spacing-1-5:0.375rem;--spacing-2:0.5rem;--spacing-2-5:0.625rem;--spacing-3:0.75rem;--spacing-3-5:0.875rem;--spacing-4:1rem;--spacing-5:1.25rem;--spacing-6:1.5rem;--spacing-8:2rem;--spacing-10:2.5rem;--spacing-11:2.75rem;--spacing-12:3rem;--spacing-14:3.5rem;--spacing-16:4rem;--spacing-20:5rem;--spacing-24:6rem;--spacing-28:7rem;--section-pad:122px;--hero-gap:44px;--mockup-gap:52px;--radius-none:0;--radius-xs:0.125rem;--radius-md:0.375rem;--radius-full:9999px;--elevation-none:none;--elevation-2:0px 8px 24px rgba(0,0,0,0.55);--container:1280px;--nav-height:68px;color-scheme:dark}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--neutral-secondary-soft);color:var(--body);font-family:var(--font-family);font-size:var(--font-size-md);line-height:var(--line-height-body);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{display:block;max-width:100%}h1,h2,h3,h4,h5,h6{margin:0;color:var(--heading);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight)}ol,p,ul{margin:0}ol,ul{padding:0}a{color:var(--fg-brand);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit}code{font-family:var(--font-family-monospace);font-size:.9em;color:var(--heading);background:var(--neutral-tertiary);padding:0 var(--spacing-1)}:focus-visible{outline:2px solid var(--brand-medium);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--spacing-4);top:-100px;z-index:100;background:var(--brand);color:var(--dark);padding:var(--spacing-2) var(--spacing-4);font-family:var(--font-family-monospace);font-weight:var(--font-weight-bold)}.skip-link:focus{top:var(--spacing-4)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--spacing-6)}@media (max-width:640px){.container{padding-inline:var(--spacing-4)}}.grain{position:relative;isolation:isolate}.grain:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.5' numOctaves='5' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23g)'/%3E%3C/svg%3E");background-size:260px 260px;opacity:.09}.section{padding-block:var(--section-pad)}.section-header{max-width:768px;margin-bottom:var(--spacing-16)}.section-header--center{margin-inline:auto;text-align:center}.section-header>:last-child{margin-bottom:0}.eyebrow{display:inline-block;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;line-height:var(--line-height-detail);color:var(--body-subtle);margin-bottom:var(--spacing-3)}.section-title{font-size:clamp(var(--font-size-5xl),4vw,var(--font-size-7xl));font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);margin-bottom:var(--spacing-6);color:var(--heading)}@supports ((-webkit-background-clip:text) or (background-clip:text)){.gradient-text{background:linear-gradient(180deg,var(--heading) 30%,var(--fg-brand-strong) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}}.lead{font-size:var(--font-size-lg);color:var(--body);margin-bottom:var(--spacing-6)}.muted{color:var(--body-subtle)}.separator{position:relative;height:104px;margin-block:-52px;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent);mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}.separator__band{position:absolute;left:0;right:0;top:32px;height:40px;border-block:1px solid var(--hairline-cream);background-image:repeating-linear-gradient(90deg,var(--hairline-cream-faint) 0 1px,transparent 1px 10px)}.separator__dots{position:absolute;left:0;right:0;height:2px;background-image:radial-gradient(circle,var(--hairline-cream) .3px,transparent .6px);background-size:7px 2px}.separator__dots--top{top:24px}.separator__dots--bottom{top:78px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-1-5);overflow:hidden;isolation:isolate;box-sizing:border-box;border:2px solid transparent;border-radius:var(--radius-none);font-family:var(--font-family-monospace);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.04em;line-height:1;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;transition:color .3s ease-in-out,border-color .3s ease-in-out}.btn,.btn:hover{text-decoration:none}.btn svg{width:16px;height:16px;margin-block:-2px;flex:none}.btn--base{font-size:var(--font-size-sm);padding:16px 24px;min-height:52px}.btn--small{font-size:var(--font-size-xs);padding:10px 16px;min-height:36px}.btn>span{position:relative;z-index:1;display:inline-flex;align-items:center;gap:var(--spacing-1-5)}.btn:after{content:"";position:absolute;left:0;right:0;bottom:0;height:0;z-index:0;border-radius:0;transform:scale(1);transition:all .4s ease-in-out}.btn:hover:after{bottom:auto;top:0;height:100%;border-radius:50%;transform:scale(1.5)}.btn:hover>span{animation:btnPulse .3s ease-in-out}@keyframes btnPulse{0%{transform:scale(1)}50%{transform:scale(.95)}to{transform:scale(1)}}.btn--primary{background:var(--brand);color:var(--dark)}.btn--primary:after{background:var(--brand-medium)}.btn--primary:focus-visible{outline:none;box-shadow:0 0 0 3px var(--brand-medium)}.btn--dark{background:var(--neutral-secondary-soft);color:var(--heading)}.btn--dark:after{background:var(--neutral-primary-strong)}.btn--dark:focus-visible{outline:none;box-shadow:0 0 0 3px var(--dark)}.btn--outline{background:transparent;border-color:var(--border-default-strong);color:var(--heading)}.btn--outline:after{background:var(--neutral-primary-strong)}.btn--outline-dark{background:transparent;border-color:var(--neutral-secondary-soft);color:var(--neutral-secondary-soft)}.btn--outline-dark:after{background:var(--neutral-secondary-soft)}.btn--ghost,.btn--outline-dark:hover{color:var(--heading)}.btn--ghost{background:transparent}.btn--ghost:after{background:var(--neutral-secondary-medium)}.btn:disabled,.btn[aria-disabled=true]{background:var(--disabled);color:var(--fg-disabled);border-color:transparent;pointer-events:none}.btn:disabled:after{display:none}@media (prefers-reduced-motion:reduce){.btn:after{transition:none}.btn:hover>span{animation:none}}.btn-row{display:flex;flex-wrap:wrap;gap:var(--spacing-4)}@media (max-width:480px){.btn-row .btn{width:100%}}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:var(--nav-surface);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--border-default)}@supports not (((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))) or (-webkit-backdrop-filter:blur(1px))){.nav{background:var(--neutral-secondary-soft)}}.nav__inner{display:flex;align-items:center;justify-content:space-between;min-height:var(--nav-height);gap:var(--spacing-6)}.brandmark{display:inline-flex;align-items:center;gap:var(--spacing-2);color:var(--heading);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);letter-spacing:var(--letter-spacing-tight)}.brandmark:hover{text-decoration:none;color:var(--heading)}.brandmark__glyph{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:var(--brand);color:var(--dark)}.brandmark__glyph svg{width:16px;height:16px}.nav__links{display:flex;align-items:center;gap:var(--spacing-6);list-style:none;padding:0;margin:0}.nav__link{color:var(--body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);text-decoration:none}.nav__link:hover,.nav__link[aria-current=page]{color:var(--heading);text-decoration:none}.nav__actions{display:flex;align-items:center;gap:var(--spacing-3)}.nav__toggle{display:none;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:1px solid var(--border-default);color:var(--heading);cursor:pointer}.nav__toggle svg{width:16px;height:16px}.nav__panel{display:none}@media (max-width:860px){.nav__actions .btn,.nav__links{display:none}.nav__toggle{display:inline-flex}.nav__panel[data-open=true]{display:block;border-top:1px solid var(--border-default);padding-block:var(--spacing-4) var(--spacing-6)}.nav__panel ul{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.nav__panel .btn{width:100%}}.hero{position:relative;background-color:var(--brand);background-image:repeating-linear-gradient(45deg,var(--brand-strong) 0 1px,transparent 1px 22px);color:var(--neutral-secondary-soft);padding-top:var(--spacing-24);overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:var(--brand);opacity:.55;pointer-events:none}.hero>*{position:relative}.hero__eyebrow{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--neutral-secondary-soft);border:1px solid var(--neutral-secondary-soft);padding:var(--spacing-1-5) var(--spacing-2-5);margin-bottom:var(--spacing-6)}.hero__eyebrow svg{width:14px;height:14px}.hero h1{max-width:1024px;font-size:var(--font-size-hero);line-height:var(--line-height-display);letter-spacing:-2px;font-weight:var(--font-weight-bold)}.hero h1,.hero__lead{color:var(--neutral-secondary-soft);margin-bottom:var(--hero-gap)}.hero__lead{max-width:680px;font-size:var(--font-size-xl);line-height:var(--line-height-body)}.hero__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-6);margin-top:var(--spacing-6);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--neutral-secondary-soft);list-style:none;padding:0}.hero__meta li{display:inline-flex;align-items:center;gap:var(--spacing-1-5)}.hero__meta svg{width:14px;height:14px}@media (max-width:768px){.hero{padding-top:var(--spacing-16)}.hero h1{font-size:clamp(2.75rem,11vw,var(--font-size-hero));letter-spacing:-1px}.hero__lead{font-size:var(--font-size-lg)}}.ticker{margin-top:var(--spacing-20);border-block:1px solid var(--brand-strong);overflow:hidden}.ticker__track{display:flex;width:max-content;animation:ticker 40s linear infinite}.ticker__group{display:flex;align-items:center;gap:var(--spacing-10);padding:var(--spacing-4) var(--spacing-5);list-style:none;margin:0}.ticker__item{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--neutral-secondary-soft);white-space:nowrap}.ticker__item svg{width:14px;height:14px}@keyframes ticker{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.ticker__track{animation:none}}.card{position:relative;isolation:isolate;overflow:hidden;border:1px solid transparent;border-radius:var(--radius-md);background:radial-gradient(120% 80% at 50% 0,var(--brand-softer) 0,transparent 60%) padding-box,linear-gradient(180deg,var(--neutral-primary-soft),var(--neutral-primary)) padding-box,linear-gradient(180deg,var(--border-default-medium),transparent) border-box;padding:var(--spacing-6)}.card:before{content:"";background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.7'/%3E%3C/svg%3E");background-size:200px 200px;mix-blend-mode:screen;opacity:.1}.card:before,.card__glow{position:absolute;inset:0;z-index:1;border-radius:inherit;pointer-events:none}.card__glow{padding:2.5px;background:radial-gradient(200px circle at var(--mx,50%) var(--my,0),var(--brand-medium),transparent 72%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease}.card:hover .card__glow{opacity:.9}@media (prefers-reduced-motion:reduce){.card__glow{transition:none}}.card>:not(.card__glow){position:relative;z-index:2}.card :is(p,ul,ol,blockquote,figure){margin:0}.card__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border-brand-subtle);background:var(--brand-softer);color:var(--fg-brand);margin-bottom:var(--spacing-5)}.card__icon svg{width:16px;height:16px}.card__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);line-height:var(--line-height-heading);letter-spacing:0;color:var(--heading);margin-bottom:var(--spacing-3)}.card__body{font-size:var(--font-size-md);color:var(--body)}.card__body+.card__body{margin-top:var(--spacing-3)}.grid{display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.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))}@media (max-width:1024px){.grid--3,.grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:680px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}}.composite{padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:0;gap:0}.composite__cell{padding:var(--spacing-6);border-right:1px solid var(--border-default);background:transparent}.composite__cell:last-of-type{border-right:0}@media (max-width:1024px){.composite{grid-template-columns:1fr}.composite__cell{border-right:0;border-bottom:1px solid var(--border-default)}.composite__cell:last-of-type{border-bottom:0}}.step-label{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-brand);display:inline-flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-3)}.step-label svg{width:16px;height:16px}.stat__value{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);color:var(--heading);margin-bottom:var(--spacing-3)}.stat__source{display:inline-flex;align-items:center;gap:var(--spacing-1);margin-top:var(--spacing-4);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em}.stat__source svg{width:12px;height:12px}.badge{display:inline-flex;align-items:center;gap:var(--spacing-1);width:auto;border-radius:var(--radius-none);border:1px solid;padding:var(--spacing-0-5) var(--spacing-2);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);line-height:var(--line-height-component);text-transform:uppercase;letter-spacing:.04em}.badge svg{width:12px;height:12px}.badge--brand{background:var(--brand-softer);color:var(--fg-brand-strong);border-color:var(--border-brand-subtle)}.badge--neutral{background:var(--neutral-secondary-medium);color:var(--heading);border-color:var(--border-default-medium)}.badge--danger{background:var(--danger-soft);color:var(--fg-danger-strong);border-color:var(--border-danger-subtle)}.badge--success{background:var(--success-soft);color:var(--fg-success-strong);border-color:var(--border-success-subtle)}.badge--warning{background:var(--warning-soft);color:var(--fg-warning);border-color:var(--border-warning-subtle)}.badge-row{display:flex;flex-wrap:wrap;gap:var(--spacing-2)}.how{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);grid-gap:var(--spacing-16);gap:var(--spacing-16);align-items:center}@media (max-width:1024px){.how{grid-template-columns:1fr;gap:var(--mockup-gap)}}.how__steps{grid-gap:var(--spacing-4);list-style:none;padding:0}.how__step,.how__steps{display:grid;gap:var(--spacing-4)}.how__step{grid-template-columns:40px 1fr;grid-gap:var(--spacing-4);align-items:start}.how__step .card__icon{margin:0}.how__step h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:0;margin-bottom:var(--spacing-2)}.how__step p{font-size:var(--font-size-md)}.mock{padding:0}.mock__bar{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-5);border-bottom:1px solid var(--border-default)}.mock__bar-title{display:inline-flex;align-items:center;gap:var(--spacing-2);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle)}.mock__bar-title svg{width:14px;height:14px}.mock__msg{padding:var(--spacing-5);display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.mock__from{display:flex;align-items:center;gap:var(--spacing-3)}.avatar{width:40px;height:40px;border-radius:var(--radius-full);background:var(--neutral-quaternary);display:inline-flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);flex:none}.avatar,.mock__name{color:var(--heading);font-weight:var(--font-weight-semibold)}.mock__name{font-size:var(--font-size-md);line-height:var(--line-height-heading)}.mock__role{color:var(--body-subtle);font-size:var(--font-size-xs)}.mock__bubble{background:var(--neutral-tertiary-soft);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--spacing-4);font-size:var(--font-size-md);color:var(--body);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.flag{background:var(--danger-soft);color:var(--fg-danger-strong);border-bottom:1px dashed var(--fg-danger);padding:0 var(--spacing-0-5)}.mock__answer{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3);padding:0 var(--spacing-5) var(--spacing-5)}.mock__answer .btn{width:100%}.mock__feedback{border-top:1px solid var(--border-default);padding:var(--spacing-5);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.mock__feedback ul{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.mock__feedback li{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-2);gap:var(--spacing-2);font-size:var(--font-size-md)}.mock__feedback li svg{width:16px;height:16px;margin-top:4px;color:var(--fg-danger)}.track__list{list-style:none;padding:0;grid-gap:var(--spacing-2);margin-top:var(--spacing-5)!important}.track__list,.track__list li{display:grid;gap:var(--spacing-2)}.track__list li{grid-template-columns:16px 1fr;grid-gap:var(--spacing-2);font-size:var(--font-size-md)}.track__list svg{width:16px;height:16px;margin-top:4px;color:var(--fg-brand)}.track .badge-row{margin-bottom:var(--spacing-5)}.habits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--spacing-4) var(--spacing-8);gap:var(--spacing-4) var(--spacing-8);list-style:none;padding:0}@media (max-width:680px){.habits{grid-template-columns:1fr}}.habits li{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3);padding-block:var(--spacing-4);border-bottom:1px solid var(--border-default);font-size:var(--font-size-md)}.habits li svg{width:16px;height:16px;margin-top:4px;color:var(--fg-success)}.habits strong{color:var(--heading);font-weight:var(--font-weight-semibold)}.accordion{border-top:1px solid var(--border-default);max-width:880px;margin-inline:auto}.accordion details{border-bottom:1px solid var(--border-default)}.accordion summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-3);padding:var(--spacing-5) 0;cursor:pointer;color:var(--body);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.accordion summary::-webkit-details-marker{display:none}.accordion details[open] summary,.accordion summary:hover{color:var(--heading)}.accordion summary svg{width:16px;height:16px;flex:none;transition:transform .2s ease}.accordion details[open] summary svg{transform:rotate(180deg)}.accordion summary:focus-visible{outline:2px solid var(--border-brand-light);outline-offset:2px}.accordion__panel{padding:0 0 var(--spacing-5);font-size:var(--font-size-md);color:var(--body);max-width:72ch}@media (prefers-reduced-motion:reduce){.accordion summary svg{transition:none}}.cta{display:grid;grid-template-columns:minmax(0,1.3fr) auto;grid-gap:var(--spacing-8);gap:var(--spacing-8);align-items:center;padding:var(--spacing-12)}.cta .section-title{margin-bottom:var(--spacing-6)}.cta p{font-size:var(--font-size-lg)}@media (max-width:860px){.cta{grid-template-columns:1fr;padding:var(--spacing-8) var(--spacing-6)}}.footer{position:relative;background-color:var(--neutral-secondary-soft);background-image:repeating-linear-gradient(45deg,var(--oblique-line-dark) 0 1px,transparent 1px 22px);border-top:1px solid var(--border-default);padding-top:var(--spacing-24);padding-bottom:0}.footer__top{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr));grid-gap:var(--spacing-10);gap:var(--spacing-10);padding-bottom:var(--spacing-12)}@media (max-width:860px){.footer__top{grid-template-columns:1fr 1fr}.footer__about{grid-column:1/-1}}.footer__about p{margin-top:var(--spacing-4);max-width:360px;font-size:var(--font-size-md);color:var(--body-subtle)}.footer__heading{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;color:var(--body-subtle);margin-bottom:var(--spacing-4);letter-spacing:.08em}.footer__links{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.footer__link,.footer__linkbtn{color:var(--body);font-size:var(--font-size-sm);text-decoration:none;background:none;border:0;padding:0;cursor:pointer;text-align:left}.footer__link:hover,.footer__linkbtn:hover{color:var(--heading);text-decoration:none}.footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--spacing-4);border-top:1px solid var(--border-default);padding-block:var(--spacing-8);font-size:var(--font-size-xs);color:var(--body-subtle)}.page-hero{padding-top:var(--spacing-24);padding-bottom:var(--spacing-16);border-bottom:1px solid var(--border-default)}.page-hero h1{font-size:clamp(var(--font-size-6xl),5vw,var(--font-size-10xl));line-height:var(--line-height-display);letter-spacing:-1.5px;margin-bottom:var(--spacing-6);max-width:900px}.page-hero .lead{max-width:720px;margin-bottom:0}.prose{max-width:760px}.prose h2{font-size:var(--font-size-3xl);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-12);margin-bottom:var(--spacing-3);letter-spacing:0}.prose h2:first-child{margin-top:0}.prose h3{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);margin-top:var(--spacing-6);margin-bottom:var(--spacing-3);letter-spacing:0}.prose li,.prose p{font-size:var(--font-size-md);color:var(--body)}.prose p+p{margin-top:var(--spacing-4)}.prose ol,.prose ul{padding-left:var(--spacing-5);margin-block:var(--spacing-4);display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.prose a{font-weight:var(--font-weight-medium)}.prose strong{color:var(--heading)}.prose .updated{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle);margin-bottom:var(--spacing-8)}.table-wrap{overflow-x:auto;border:1px solid var(--border-default);border-radius:var(--radius-md);margin-block:var(--spacing-6)}.table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.table th{text-align:left;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;font-weight:var(--font-weight-medium);color:var(--body-subtle);background:var(--neutral-primary)}.table td,.table th{padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--border-default)}.table td{color:var(--body);vertical-align:top}.table tr:last-child td{border-bottom:0}.table tbody tr:hover{background:var(--neutral-primary-medium)}.form{grid-gap:var(--spacing-5)}.form,.form__row{display:grid;gap:var(--spacing-5)}.form__row{grid-template-columns:1fr 1fr;grid-gap:var(--spacing-5)}@media (max-width:640px){.form__row{grid-template-columns:1fr}}.field{display:grid;grid-gap:var(--spacing-2-5);gap:var(--spacing-2-5)}.field__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--heading)}.field__label .optional{color:var(--body-subtle);font-weight:var(--font-weight-normal)}.input,.select,.textarea{width:100%;background:var(--neutral-tertiary);border:1px solid var(--border-default);border-radius:var(--radius-none);color:var(--heading);font-family:var(--font-family);font-size:var(--font-size-md);line-height:var(--line-height-component);padding:var(--spacing-3) var(--spacing-3-5);transition:border-color .15s ease,box-shadow .15s ease}.textarea{border-radius:var(--radius-md);padding:var(--spacing-3-5);min-height:160px;resize:vertical;line-height:var(--line-height-body)}.select{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--body) 50%),linear-gradient(135deg,var(--body) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat;padding-right:var(--spacing-10)}.input::placeholder,.textarea::placeholder{color:var(--body-subtle);font-style:italic}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-soft)}.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger)}.field__error{color:var(--fg-danger)}.field__error,.field__help{font-size:var(--font-size-sm)}.field__help{color:var(--body-subtle)}.checkbox{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:start;font-size:var(--font-size-sm);color:var(--body);cursor:pointer}.checkbox input{-moz-appearance:none;appearance:none;-webkit-appearance:none;margin:3px 0 0;width:16px;height:16px;border-radius:var(--radius-none);border:1px solid var(--border-default-strong);background:var(--neutral-tertiary);display:grid;place-content:center;cursor:pointer}.checkbox input:after{content:"";width:9px;height:5px;border-left:2px solid var(--dark);border-bottom:2px solid var(--dark);transform:rotate(-45deg) translate(1px,-1px);opacity:0}.checkbox input:checked{background:var(--brand);border-color:var(--brand)}.checkbox input:checked:after{opacity:1}.checkbox input:focus-visible{outline:none;box-shadow:0 0 0 3px var(--brand-soft)}.alert{display:flex;gap:var(--spacing-2);align-items:flex-start;padding:var(--spacing-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);border:1px solid}.alert svg{width:16px;height:16px;flex:none;margin-top:2px}.alert strong{font-weight:var(--font-weight-medium)}.alert--success{background:var(--success-soft);color:var(--fg-success-strong);border-color:var(--border-success-subtle)}.alert--danger{background:var(--danger-soft);color:var(--fg-danger-strong);border-color:var(--border-danger-subtle)}.alert--info{background:var(--brand-softer);color:var(--fg-brand-strong);border-color:var(--border-brand-subtle)}.contact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);grid-gap:var(--spacing-16);gap:var(--spacing-16);align-items:start}@media (max-width:960px){.contact{grid-template-columns:1fr;gap:var(--spacing-12)}}.contact__aside{display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.contact__item{display:grid;grid-template-columns:40px 1fr;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.contact__item .card__icon{margin:0}.contact__item h2,.contact__item h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);letter-spacing:0;margin-bottom:var(--spacing-1)}.contact__item p{font-size:var(--font-size-md)}.toggle{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--spacing-4);cursor:pointer}.toggle__text strong{display:block;color:var(--heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-1)}.toggle__text span{font-size:var(--font-size-sm);color:var(--body-subtle)}.toggle input{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;flex:none;width:36px;height:20px;margin:0;border-radius:var(--radius-full);background:var(--neutral-quaternary);border:1px solid var(--border-default-strong);cursor:pointer;transition:background .15s ease}.toggle input:after{content:"";position:absolute;top:1px;left:1px;width:16px;height:16px;border-radius:var(--radius-full);background:var(--border-default-strong);transition:transform .15s ease,background .15s ease}.toggle input:checked{background:var(--brand);border-color:var(--brand)}.toggle input:checked:after{transform:translateX(16px);background:var(--heading)}.toggle input:disabled{opacity:.6;cursor:not-allowed}.toggle input:focus-visible{outline:none;box-shadow:0 0 0 4px var(--brand-soft)}.cookie-banner{position:fixed;z-index:60;left:var(--spacing-4);right:var(--spacing-4);bottom:var(--spacing-4);max-width:560px;background:var(--neutral-primary-soft);border:1px solid var(--border-default-medium);border-radius:var(--radius-md);box-shadow:var(--elevation-2);padding:var(--spacing-6);display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.cookie-banner h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:0;display:flex;align-items:center;gap:var(--spacing-2)}.cookie-banner h2 svg{width:16px;height:16px;color:var(--fg-brand)}.cookie-banner p{font-size:var(--font-size-md)}.cookie-banner .btn-row{gap:var(--spacing-3)}@media (max-width:480px){.cookie-banner .btn-row .btn{width:100%}}.modal-backdrop{position:fixed;inset:0;z-index:70;background:var(--scrim);display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.modal-backdrop{animation:none}}.modal{width:100%;max-width:512px;max-height:calc(100vh - 2rem);display:flex;flex-direction:column;background:var(--neutral-primary-soft);border:1px solid var(--border-default-medium);border-radius:var(--radius-md);padding:var(--spacing-6)}.modal__header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--border-default)}.modal__header h2{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:0}.modal__close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background:transparent;border:0;color:var(--body);cursor:pointer}.modal__close:hover{color:var(--heading);background:var(--neutral-secondary-medium)}.modal__close svg{width:16px;height:16px}.modal__body{overflow-y:auto;padding-block:var(--spacing-5);display:grid;grid-gap:var(--spacing-5);gap:var(--spacing-5)}.modal__body>p{font-size:var(--font-size-md)}.modal__footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--border-default)}@media (max-width:480px){.modal__footer .btn{width:100%}}.quiz-page{padding-block:var(--spacing-10) var(--spacing-20);min-height:calc(100vh - var(--nav-height))}.quiz-shell{max-width:1120px;margin-inline:auto;display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.app-h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}.app-h1,.app-h3{line-height:var(--line-height-heading);color:var(--heading)}.app-h3{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:0;margin-bottom:var(--spacing-4)}.panel{background:var(--neutral-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--spacing-6)}@media (max-width:640px){.panel{padding:var(--spacing-4)}}.panel :is(p,ul,ol){margin:0}.btn--touch{min-height:44px}.quiz-intro{max-width:720px;margin-bottom:var(--spacing-4)}.quiz-intro .app-h1{margin-bottom:var(--spacing-6)}.quiz-intro__lead{font-size:var(--font-size-md)}.quiz-intro__lead strong{color:var(--heading)}.track-picker{border:0;padding:0;margin:0;display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.track-option{display:grid;grid-template-columns:40px 1fr auto;grid-gap:var(--spacing-4);gap:var(--spacing-4);align-items:center;padding:var(--spacing-4) var(--spacing-5);background:var(--neutral-primary);border:1px solid var(--border-default);border-radius:var(--radius-md);cursor:pointer;transition:border-color .15s ease,background .15s ease}.track-option:hover{background:var(--neutral-primary-medium)}.track-option.is-selected{border-color:var(--brand);background:var(--brand-softer)}.track-option input{position:absolute;opacity:0;pointer-events:none}.track-option:has(input:focus-visible){box-shadow:0 0 0 3px var(--brand-soft)}.track-option__icon{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid var(--border-default);background:var(--neutral-tertiary-soft);color:var(--fg-brand)}.track-option__icon svg{width:16px;height:16px}.track-option__text strong{display:block;color:var(--heading);font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}.track-option__text span{font-size:var(--font-size-sm);color:var(--body-subtle)}@media (max-width:560px){.track-option{grid-template-columns:40px 1fr}.track-option .badge{grid-column:2;justify-self:start}}.quiz-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-4);margin-top:var(--spacing-4)}.quiz-actions--end{justify-content:flex-start}.quiz-keys,.quiz-prev{font-size:var(--font-size-sm)}.quiz-top{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-4)}.quiz-progress{display:flex;flex-wrap:wrap;gap:var(--spacing-2) var(--spacing-5);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em}.quiz-progress__label{color:var(--heading)}.quiz-progress__score{color:var(--body-subtle)}.quiz-exit{display:inline-flex;align-items:center;gap:var(--spacing-1-5);font-size:var(--font-size-sm);color:var(--body)}.quiz-exit:hover{color:var(--heading);text-decoration:none}.quiz-exit svg{width:14px;height:14px}.progressbar{height:4px;background:var(--neutral-tertiary);border-radius:var(--radius-full);overflow:hidden}.progressbar span{display:block;height:100%;background:var(--brand);transition:width .3s ease}.quiz-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-gap:var(--spacing-4);gap:var(--spacing-4);align-items:start}@media (max-width:920px){.quiz-grid{grid-template-columns:1fr}}.quiz-side{position:-webkit-sticky;position:sticky;top:calc(var(--nav-height) + var(--spacing-4))}@media (max-width:920px){.quiz-side{position:static}}.scenario__head{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);justify-items:start;margin-bottom:var(--spacing-5)}.scenario__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:0}.scenario__title:focus{outline:none}.scenario__title:focus-visible{outline:2px solid var(--brand-medium);outline-offset:4px}.answer-panel .muted{font-size:var(--font-size-md);margin-bottom:var(--spacing-5)}.answer-buttons{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.answer-buttons .btn{width:100%}.btn--danger-outline{background:transparent;border-color:var(--danger);color:var(--fg-danger)}.btn--danger-outline:after{background:var(--danger)}.btn--danger-outline:hover{color:var(--dark)}.btn--success-outline{background:transparent;border-color:var(--success);color:var(--fg-success)}.btn--success-outline:after{background:var(--success)}.btn--success-outline:hover{color:var(--dark)}.feedback{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.feedback--correct{border-color:var(--border-success-subtle)}.feedback--wrong{border-color:var(--border-danger-subtle)}.feedback__title{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);letter-spacing:0}.feedback__title:focus{outline:none}.feedback__title svg{width:18px;height:18px}.feedback--correct .feedback__title{color:var(--fg-success-strong)}.feedback--wrong .feedback__title{color:var(--fg-danger-strong)}.feedback__verdict{font-size:var(--font-size-md);display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-2)}.feedback__sub{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.08em;color:var(--body-subtle)}.flag-list{list-style:none;padding:0;grid-gap:var(--spacing-3)}.flag-list,.flag-list li{display:grid;gap:var(--spacing-3)}.flag-list li{grid-template-columns:22px 1fr;grid-gap:var(--spacing-3);font-size:var(--font-size-md)}.flag-list strong{color:var(--heading)}.feedback__explain{font-size:var(--font-size-md)}.rule{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3);padding:var(--spacing-4);background:var(--brand-softer);border:1px solid var(--border-brand-subtle);border-radius:var(--radius-md)}.rule svg{width:16px;height:16px;color:var(--fg-brand);margin-top:3px}.rule__label{display:block;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--fg-brand);margin-bottom:var(--spacing-1)}.rule p{color:var(--heading);font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}.feedback__next{justify-self:start}@media (max-width:480px){.feedback__next{justify-self:stretch}}.flagmark{color:inherit;padding:0 var(--spacing-0-5);border-bottom:2px solid;border-radius:var(--radius-xs)}.flagmark--phish{background:var(--danger-soft);border-color:var(--danger);color:var(--fg-danger-strong)}.flagmark--legit{background:var(--success-soft);border-color:var(--success);color:var(--fg-success-strong)}.flagmark__num{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;margin-right:var(--spacing-1);padding:0 var(--spacing-1);border-radius:var(--radius-full);font-family:var(--font-family-monospace);font-size:var(--font-size-xxs);font-weight:var(--font-weight-bold);line-height:1;vertical-align:2px}.flag-list--phish .flagmark__num,.flagmark--phish .flagmark__num{background:var(--danger);color:var(--dark)}.flag-list--legit .flagmark__num,.flagmark--legit .flagmark__num{background:var(--success);color:var(--dark)}.flag-list .flagmark__num{width:22px;height:22px;margin:2px 0 0;font-size:var(--font-size-xs)}.scenario__mock{font-size:var(--font-size-md)}.mock-spacer{flex:1 1}.mock-sub{color:var(--body-subtle);font-weight:var(--font-weight-normal)}.avatar--sm,.mock-sub{font-size:var(--font-size-xs)}.avatar--sm{width:32px;height:32px}.avatar--sm svg{width:14px;height:14px}.mock-call,.mock-code,.mock-email,.mock-repo,.mock-thread,.mock-web{background:var(--neutral-secondary-medium);border:1px solid var(--border-default);border-radius:var(--radius-md);overflow:hidden}.mock-call__head,.mock-code__tab,.mock-email__toolbar,.mock-thread__head,.mock-urlbar{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--border-default);background:var(--neutral-primary-soft);color:var(--body-subtle);font-size:var(--font-size-sm)}.mock-call__head svg,.mock-code__tab svg,.mock-email__toolbar svg,.mock-thread__head>svg,.mock-urlbar svg{width:14px;height:14px;flex:none}.mock-call__head strong,.mock-thread__head strong{color:var(--heading);font-size:var(--font-size-sm)}.mock-email__subject{padding:var(--spacing-4) var(--spacing-4) 0;font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--heading)}.mock-email__meta{display:flex;gap:var(--spacing-3);align-items:center;padding:var(--spacing-3) var(--spacing-4);border-bottom:1px solid var(--border-default)}.mock-email__from{font-size:var(--font-size-sm);color:var(--heading);overflow-wrap:anywhere}.mock-email__addr,.mock-email__to{color:var(--body-subtle)}.mock-email__to{font-size:var(--font-size-xs);overflow-wrap:anywhere}.mock-email__body{padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);overflow-wrap:anywhere}.mock-email__attachment{display:inline-flex;align-items:center;gap:var(--spacing-2);justify-self:start;padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--border-default-medium);background:var(--neutral-tertiary-soft);font-family:var(--font-family-monospace);font-size:var(--font-size-sm);color:var(--heading)}.mock-email__attachment svg{width:14px;height:14px}.mock-email__button{justify-self:start;display:inline-block;padding:var(--spacing-2) var(--spacing-4);background:var(--neutral-quaternary);color:var(--heading);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:not-allowed}.mock-thread__msgs{list-style:none;padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.bubble{max-width:85%;padding:var(--spacing-2-5) var(--spacing-3-5);border-radius:var(--radius-md);font-size:var(--font-size-md);line-height:var(--line-height-body);overflow-wrap:anywhere}.bubble--them{justify-self:start;background:var(--neutral-tertiary);color:var(--heading);border-bottom-left-radius:var(--radius-xs)}.bubble--me{justify-self:end;background:var(--brand-soft);color:var(--heading);border-bottom-right-radius:var(--radius-xs)}.bubble__time{display:block;margin-top:var(--spacing-1);font-size:var(--font-size-xxs);color:var(--body-subtle);text-align:right}.mock-thread__composer{display:flex;justify-content:space-between;align-items:center;margin:0 var(--spacing-4) var(--spacing-4);padding:var(--spacing-2-5) var(--spacing-3-5);border:1px solid var(--border-default);border-radius:var(--radius-full);color:var(--fg-disabled);font-size:var(--font-size-sm)}.mock-thread__composer svg{width:14px;height:14px}.mock-urlbar span{font-family:var(--font-family-monospace);font-size:var(--font-size-xs)}.mock-repo__head,.mock-urlbar span{color:var(--heading);overflow-wrap:anywhere}.mock-repo__head{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-4) var(--spacing-4) var(--spacing-1);flex-wrap:wrap}.mock-repo__head svg{width:16px;height:16px}.mock-repo__desc{padding:0 var(--spacing-4) var(--spacing-3);font-size:var(--font-size-sm)}.mock-repo__files{list-style:none;padding:0;margin:0 var(--spacing-4)!important;border:1px solid var(--border-default);border-radius:var(--radius-md);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body)}.mock-repo__files li{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-3);border-bottom:1px solid var(--border-default)}.mock-repo__files svg{width:14px;height:14px;color:var(--body-subtle)}.mock-repo__readme{margin:var(--spacing-4);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);overflow-wrap:anywhere}.mock-repo__readme-title{display:flex;align-items:center;gap:var(--spacing-2);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle);text-transform:uppercase;letter-spacing:.06em}.mock-repo__readme-title svg{width:14px;height:14px}.mock-repo__readme h3{font-size:var(--font-size-xl);letter-spacing:0}.mock-repo__readme h4{font-size:var(--font-size-lg);letter-spacing:0}.mock-code__body,.mock-repo__readme pre{margin:0;background:var(--neutral-secondary);border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--spacing-3);overflow-x:auto}.mock-code__body code,.mock-repo__readme pre code{background:none;padding:0;font-size:var(--font-size-sm);color:var(--heading)}.mock-code__body{border:0;border-radius:0;display:grid;grid-template-columns:auto 1fr;grid-column-gap:var(--spacing-4);column-gap:var(--spacing-4);white-space:pre;font-family:var(--font-family-monospace);line-height:1.7}.mock-code__ln{color:var(--fg-disabled);text-align:right;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:var(--font-size-sm)}.mock-code__note{padding:var(--spacing-3) var(--spacing-4);border-top:1px solid var(--border-default);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body);overflow-wrap:anywhere}.mock-web__page{padding:var(--spacing-6) var(--spacing-5);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.mock-web__page h3{font-size:var(--font-size-xl);letter-spacing:0}.mock-web__fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));grid-gap:var(--spacing-2);gap:var(--spacing-2)}.mock-web__field{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--border-default-medium);background:var(--neutral-tertiary-soft);color:var(--fg-disabled);font-size:var(--font-size-sm)}.mock-call__lines{margin:0;padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.mock-call__lines div{display:grid;grid-template-columns:76px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.mock-call__lines dt{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle);padding-top:3px}.mock-call__lines .is-me dt{color:var(--fg-brand)}.mock-call__lines dd{margin:0;color:var(--heading)}.result-hero{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.result-hero .app-h1:focus{outline:none}.result-score{font-size:var(--font-size-xl);color:var(--heading)}.result-score strong{font-size:var(--font-size-4xl)}.result-compare{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm)}.result-actions{margin-top:var(--spacing-3);gap:var(--spacing-3)}@media (max-width:480px){.result-actions .btn{width:100%}}.results-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:var(--spacing-4);gap:var(--spacing-4);align-items:start}@media (max-width:860px){.results-grid{grid-template-columns:1fr}}.lesson-list{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.lesson-list li{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.lesson-list svg{width:16px;height:16px;color:var(--fg-brand);margin-top:3px}.lesson-list__cat{display:block;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle);margin-bottom:var(--spacing-1)}.lesson-list p{font-size:var(--font-size-md);color:var(--heading)}.breakdown td:last-child{white-space:nowrap}.breakdown__val{display:inline-block;min-width:48px;color:var(--heading);font-family:var(--font-family-monospace)}.breakdown__bar{display:inline-block;vertical-align:middle;width:90px;height:4px;margin-left:var(--spacing-2);background:var(--neutral-tertiary);border-radius:var(--radius-full);overflow:hidden}.breakdown__bar span{display:block;height:100%;background:var(--brand)}.missed-list{list-style:none;padding:0;display:grid}.missed-list li{padding-block:var(--spacing-4);border-bottom:1px solid var(--border-default);display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.missed-list li:first-child{padding-top:0}.missed-list li:last-child{border-bottom:0;padding-bottom:0}.missed-list__head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--spacing-2);align-items:center}.missed-list__head strong{color:var(--heading);font-weight:var(--font-weight-semibold)}.missed-list p{font-size:var(--font-size-md)}.app-page{padding-block:var(--spacing-10) var(--spacing-20);min-height:calc(100vh - var(--nav-height))}.panel__head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:var(--spacing-2) var(--spacing-4);margin-bottom:var(--spacing-5)}.panel__title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);letter-spacing:0}.panel__link{display:inline-flex;align-items:center;gap:var(--spacing-1-5);font-size:var(--font-size-sm)}.panel__link svg{width:14px;height:14px}.empty{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4);color:var(--body)}.auth{padding-block:var(--spacing-16) var(--spacing-20)}.auth__grid{display:grid;grid-template-columns:minmax(0,480px) minmax(0,1fr);grid-gap:var(--spacing-16);gap:var(--spacing-16);align-items:center}@media (max-width:900px){.auth__grid{grid-template-columns:1fr;gap:var(--spacing-10)}}.auth__panel{padding:var(--spacing-8)}@media (max-width:480px){.auth__panel{padding:var(--spacing-5)}}.auth__panel .app-h1{margin-block:var(--spacing-3) var(--spacing-3)}.auth__lead{margin-bottom:var(--spacing-6)!important}.auth__switch{font-size:var(--font-size-sm)}.auth__perks{list-style:none;padding:0}.auth__perks,.dash{display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.dash__head{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:var(--spacing-4);margin-bottom:var(--spacing-2)}.dash__head .app-h1{margin-block:var(--spacing-3) var(--spacing-1)}.dash__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--spacing-4);gap:var(--spacing-4)}@media (max-width:1024px){.dash__stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.dash__stats{grid-template-columns:1fr}}.dash__split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);grid-gap:var(--spacing-6);gap:var(--spacing-6);align-items:start}@media (max-width:960px){.dash__split{grid-template-columns:1fr}}.stat-tile{display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2);align-content:start}.stat-tile__label{display:inline-flex;align-items:center;gap:var(--spacing-1-5);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle)}.stat-tile__label svg{width:14px;height:14px;color:var(--fg-brand)}.stat-tile__value{font-size:var(--font-size-5xl);font-weight:var(--font-weight-bold);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-tight);color:var(--heading)}.stat-tile__value small{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--body-subtle);letter-spacing:0}.stat-tile__ok{color:var(--fg-success);font-size:var(--font-size-md)}.stat-tile .muted{font-size:var(--font-size-sm)}.meter{height:6px;background:var(--neutral-tertiary);overflow:hidden}.meter>span{display:block;height:100%;background:var(--brand)}.activity,.board{list-style:none;padding:0;display:grid}.activity li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:center;padding-block:var(--spacing-3);border-bottom:1px solid var(--border-default);font-size:var(--font-size-sm)}.activity li:last-child,.board li:last-child{border-bottom:0}.activity__label{color:var(--heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity__meta{color:var(--body-subtle);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);white-space:nowrap}@media (max-width:520px){.activity li{grid-template-columns:1fr;gap:var(--spacing-1)}}.board li{display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:center;padding-block:var(--spacing-3);border-bottom:1px solid var(--border-default);font-size:var(--font-size-sm)}.board li[aria-current=true]{background:var(--brand-softer);box-shadow:-8px 0 0 var(--brand-softer),8px 0 0 var(--brand-softer)}.board__rank{font-family:var(--font-family-monospace);color:var(--body-subtle)}.board__name{color:var(--heading);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board__score{font-family:var(--font-family-monospace);color:var(--fg-brand)}.heatmap{position:relative}.heatmap__scroll{overflow-x:auto;padding-bottom:var(--spacing-2)}.heatmap__grid{display:grid;grid-gap:3px;gap:3px;min-width:max-content;width:100%;max-width:1000px}.heatmap__row{display:contents}.heatmap__day,.heatmap__month{font-family:var(--font-family-monospace);font-size:var(--font-size-xxs);color:var(--body-subtle);line-height:1;white-space:nowrap;align-self:center;overflow:visible}.heatmap__month{width:0}.heatmap__cell{display:block;width:100%;aspect-ratio:1;min-width:var(--heat-cell);border-radius:var(--radius-xs);background:var(--heat-0)}.heatmap__legend .heatmap__cell{width:var(--heat-cell)}.heatmap__cell[data-level="1"]{background:var(--heat-1)}.heatmap__cell[data-level="2"]{background:var(--heat-2)}.heatmap__cell[data-level="3"]{background:var(--heat-3)}.heatmap__cell[data-level="4"]{background:var(--heat-4)}.heatmap__cell--future{background:transparent}.heatmap__grid .heatmap__cell:not(.heatmap__cell--future):hover{outline:1px solid var(--heading);outline-offset:1px}.heatmap__tip{position:absolute;transform:translate(-50%,calc(-100% - 8px));background:var(--neutral-primary-strong);border:1px solid var(--border-default-medium);border-radius:var(--radius-md);box-shadow:var(--elevation-2);padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-xs);color:var(--body);white-space:nowrap;pointer-events:none;z-index:5;display:grid;grid-gap:2px;gap:2px}.heatmap__tip strong{color:var(--heading);font-weight:var(--font-weight-semibold)}.heatmap__tip span{color:var(--body-subtle)}.heatmap__foot{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:var(--spacing-3);margin-top:var(--spacing-3)}.heatmap__legend{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-size-xs);color:var(--body-subtle)}.heatmap__legend span:first-of-type{margin-left:var(--spacing-1)}.heatmap__legend span:last-of-type{margin-right:var(--spacing-1)}.heatmap__table summary{cursor:pointer;font-size:var(--font-size-sm);color:var(--fg-brand)}.heatmap__table .table-wrap{margin-block:var(--spacing-3) 0;max-width:420px}.nav__account{display:inline-flex;align-items:center;gap:var(--spacing-3)}.nav__xp{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--fg-brand);white-space:nowrap}@media (max-width:860px){.nav__actions .nav__account{display:none}}.nav__panel>.nav__link{display:block;margin-bottom:var(--spacing-4)}.section--tight{padding-block:var(--spacing-16) var(--section-pad)}.room-card{display:flex;flex-direction:column;gap:0}.room-card__top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-3);flex-wrap:wrap}.room-card__top .badge-row{justify-content:flex-end}.room-card .card__body{flex:1 1}.room-card__meta{display:flex;flex-wrap:wrap;gap:var(--spacing-2) var(--spacing-5);margin-top:var(--spacing-4)!important;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle)}.room-card__meta>*{display:inline-flex;align-items:center;gap:var(--spacing-1-5)}.room-card__meta svg{width:12px;height:12px}.room-card__progress{display:grid;grid-template-columns:1fr auto;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:center;margin-top:var(--spacing-4);font-size:var(--font-size-sm)}.room-card__cta{margin-top:var(--spacing-5);align-self:flex-start}.room-page{max-width:960px;display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.room-page__head{display:grid;grid-template-columns:40px 1fr;grid-gap:var(--spacing-4);gap:var(--spacing-4);align-items:start}.room-page__head .card__icon{margin:4px 0 0}.room-page__head .app-h1{margin-bottom:var(--spacing-2)}.room-page__head .room-card__meta{text-transform:none;letter-spacing:0;font-family:var(--font-family);font-size:var(--font-size-sm)}.room{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.room__progress{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.room__progress-row{display:flex;justify-content:space-between;align-items:baseline}.room__pct{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--heading)}.room__progress .muted{font-size:var(--font-size-sm)}.room__earned{color:var(--fg-brand);font-weight:var(--font-weight-semibold)}.room__signin{display:flex;gap:var(--spacing-2);align-items:flex-start;font-size:var(--font-size-sm);color:var(--body);background:var(--brand-softer);border:1px solid var(--border-brand-subtle);border-radius:var(--radius-md);padding:var(--spacing-3) var(--spacing-4)}.room__signin svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--fg-brand)}.tasks{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.task{padding:0;overflow:hidden}.task[data-done=true]{border-color:var(--border-success-subtle)}.task__head{font-size:inherit;letter-spacing:0}.task__toggle{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:center;background:transparent;border:0;padding:var(--spacing-4) var(--spacing-5);color:var(--heading);cursor:pointer;text-align:left}.task__toggle:hover{background:var(--neutral-primary-medium)}.task__num{display:inline-flex;align-items:center;justify-content:center;min-width:64px;padding:var(--spacing-1) var(--spacing-2);background:var(--brand);color:var(--dark);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);text-transform:uppercase}.task[data-done=true] .task__num{background:var(--success)}.task__num svg{width:14px;height:14px}.task__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.task__chev{width:16px;height:16px;color:var(--body-subtle);transition:transform .15s ease}.task__toggle[aria-expanded=true] .task__chev{transform:rotate(180deg)}@media (max-width:520px){.task__toggle{grid-template-columns:auto minmax(0,1fr) auto}.task__toggle .badge{display:none}.task__num{min-width:0}}.task__body{padding:var(--spacing-2) var(--spacing-5) var(--spacing-6);display:grid;grid-gap:var(--spacing-5);gap:var(--spacing-5);border-top:1px solid var(--border-default)}.task__brief{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);max-width:72ch;padding-top:var(--spacing-3)}.task__brief strong{color:var(--heading)}.rt-code{word-break:break-all}.artifact{margin:0;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--neutral-secondary);overflow:hidden}.artifact__bar{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2-5) var(--spacing-4);border-bottom:1px solid var(--border-default);background:var(--neutral-primary-soft)}.artifact__code{margin:0;padding:var(--spacing-4);overflow-x:auto;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);line-height:1.7;color:var(--heading);background:var(--neutral-secondary);white-space:pre}.artifact__comment{color:var(--body-subtle)}.artifact__add{color:var(--fg-success)}.artifact__del{color:var(--fg-danger)}.artifact__chat{padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.artifact__note{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle)}.chat-bubble{max-width:85%;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-md);font-size:var(--font-size-sm);white-space:pre-wrap;border:1px solid var(--border-default)}.chat-bubble--user{justify-self:end;background:var(--brand-softer);border-color:var(--border-brand-subtle);color:var(--heading)}.chat-bubble--assistant{justify-self:start;background:var(--neutral-tertiary-soft);color:var(--body)}.chat-bubble__who{display:block;font-family:var(--font-family-monospace);font-size:var(--font-size-xxs);text-transform:uppercase;letter-spacing:.08em;color:var(--body-subtle);margin-bottom:var(--spacing-1)}.lab{border:1px solid var(--border-brand-subtle);border-radius:var(--radius-md);background:var(--neutral-primary-soft);padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-3)}.lab,.lab__bar{gap:var(--spacing-3)}.lab__bar{display:flex;justify-content:space-between;align-items:center}.lab__examples,.lab__intro{font-size:var(--font-size-sm)}.lab__examples{display:flex;flex-wrap:wrap;gap:var(--spacing-2);align-items:center}.chip{background:var(--neutral-tertiary);border:1px solid var(--border-default-medium);color:var(--heading);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-2);cursor:pointer}.chip:hover{border-color:var(--brand)}.lab__req{display:grid;grid-template-columns:110px minmax(0,1fr) auto;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.lab__req--chat{grid-template-columns:minmax(0,1fr) auto}@media (max-width:560px){.lab__req{grid-template-columns:1fr}}.lab__body,.lab__path{font-family:var(--font-family-monospace);font-size:var(--font-size-sm)}.lab__body{min-height:110px}.lab__hdr{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle);overflow-wrap:anywhere}.lab__resp{max-height:360px;overflow:auto;border:1px solid var(--border-default);border-radius:var(--radius-md)}.lab__ok{color:var(--fg-success)}.lab__bad{color:var(--fg-danger)}.lab__history summary{cursor:pointer;font-size:var(--font-size-sm);color:var(--fg-brand)}.lab__history ul{list-style:none;padding:var(--spacing-2) 0 0;display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1);font-size:var(--font-size-sm)}.lab__query{white-space:pre-wrap;word-break:break-all;border:1px solid var(--border-default);border-radius:var(--radius-md)}.lab__flag{-webkit-user-select:all;-moz-user-select:all;user-select:all}.lab__chat{max-height:380px;overflow-y:auto;padding:0}.question,.questions{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.question{border:1px solid var(--border-default);border-radius:var(--radius-md);padding:var(--spacing-4);background:var(--neutral-primary)}.question[data-solved=true]{border-color:var(--border-success-subtle);background:var(--success-soft)}.question__head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-3)}.question__prompt{color:var(--heading);font-weight:var(--font-weight-medium)}.question__n{font-family:var(--font-family-monospace);color:var(--fg-brand)}.question__head .badge{flex:none}@media (max-width:520px){.question__head{flex-direction:column}}.question__input{font-family:var(--font-family-monospace);font-size:var(--font-size-sm)}.question__actions{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.question__hint{font-size:var(--font-size-sm);color:var(--fg-warning);background:var(--warning-soft);border:1px solid var(--border-warning-subtle);border-radius:var(--radius-md);padding:var(--spacing-2) var(--spacing-3)}.question__wrong{display:flex;gap:var(--spacing-2);align-items:center}.question__wrong svg{width:16px;height:16px}.question__solved{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-2);gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--body)}.question__solved svg{width:16px;height:16px;margin-top:3px;color:var(--fg-success)}.question__solved strong{color:var(--fg-success-strong)}.choices{border:0;padding:0;margin:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.choice{display:grid;grid-template-columns:16px 1fr;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:start;padding:var(--spacing-2-5) var(--spacing-3);border:1px solid var(--border-default);cursor:pointer;font-size:var(--font-size-sm)}.choice:hover{border-color:var(--border-default-strong)}.choice:has(input:checked){border-color:var(--brand);background:var(--brand-softer)}.choice input{margin:3px 0 0;accent-color:var(--brand)}.choices:disabled .choice{cursor:not-allowed;opacity:.7}.dash-rooms{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--spacing-3);gap:var(--spacing-3)}@media (max-width:760px){.dash-rooms{grid-template-columns:1fr}}.dash-rooms__item{display:grid;grid-template-columns:40px minmax(0,1fr) 80px 44px;grid-gap:var(--spacing-3);gap:var(--spacing-3);align-items:center;padding:var(--spacing-3);border:1px solid var(--border-default);color:var(--heading)}.dash-rooms__item:hover{text-decoration:none;border-color:var(--border-default-strong);background:var(--neutral-primary-medium)}.dash-rooms__item .card__icon{margin:0}.dash-rooms__name{font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.dash-rooms__pct{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle);text-align:right}.play{display:grid;grid-gap:var(--spacing-12);gap:var(--spacing-12)}.play .section-header{margin-bottom:0}.hub{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--spacing-6);gap:var(--spacing-6);align-items:start}@media (max-width:860px){.hub{grid-template-columns:1fr}}.hub__card{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.hub__code{font-family:var(--font-family-monospace);text-transform:uppercase;letter-spacing:.15em}.hub__open-head{margin:var(--spacing-2) 0 0}.hub__list{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.hub__item{grid-template-columns:40px minmax(0,1fr) auto auto}.hub{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}.hub__games{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.hub__side{display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.hub__join{pointer-events:none}@media (max-width:560px){.hub__item{grid-template-columns:40px minmax(0,1fr) auto}.hub__join{display:none}}.lobby__searching{display:inline-flex;align-items:center;gap:var(--spacing-2);color:var(--body-subtle);font-size:var(--font-size-sm)}.lobby__searching svg{width:14px;height:14px;animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.lobby__manage summary{cursor:pointer;font-size:var(--font-size-sm);color:var(--body)}.lobby__manage ul{list-style:none;padding:0;margin:var(--spacing-3) 0 0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.lobby__manage li{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-sm);border:1px solid var(--border-default);padding:var(--spacing-2) var(--spacing-3)}.game{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4);margin-top:var(--spacing-4)}.game__bar{justify-content:space-between;padding:var(--spacing-3) var(--spacing-5)}.game__bar,.game__code{display:flex;align-items:center;flex-wrap:wrap;gap:var(--spacing-3)}.game__code strong{font-size:var(--font-size-xl);letter-spacing:.15em}.game__code strong,.game__phase{font-family:var(--font-family-monospace);color:var(--heading)}.game__phase{display:inline-flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.06em}.game__phase svg{width:16px;height:16px;color:var(--fg-brand)}.game__timer{min-width:48px;text-align:center;padding:var(--spacing-1) var(--spacing-2);background:var(--brand);color:var(--dark);font-weight:var(--font-weight-bold)}.game--night .game__bar{border-color:var(--border-brand-subtle);background:var(--brand-softer)}.game__grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:var(--spacing-4);gap:var(--spacing-4);align-items:start}@media (max-width:960px){.game__grid{grid-template-columns:1fr}}.game__main,.game__side{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.game__h{display:flex;align-items:center;gap:var(--spacing-2);margin-bottom:var(--spacing-3);font-size:var(--font-size-lg)}.game__h svg{width:18px;height:18px;color:var(--fg-brand)}.inline-icon{display:inline;width:16px;height:16px;vertical-align:-3px}.players{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:var(--spacing-2);gap:var(--spacing-2)}.player{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;grid-column-gap:var(--spacing-3);column-gap:var(--spacing-3);grid-row-gap:var(--spacing-1);row-gap:var(--spacing-1);align-items:center;text-align:left;background:var(--neutral-primary-soft);border:1px solid var(--border-default);padding:var(--spacing-3);color:var(--heading);font:inherit;cursor:default}.player .avatar{grid-row:span 2}.player .avatar svg{width:18px;height:18px}.player:not(:disabled){cursor:pointer;border-color:var(--border-default-strong)}.player:not(:disabled):hover{border-color:var(--brand);background:var(--brand-softer)}.player[data-chosen=true]{border-color:var(--brand);background:var(--brand-soft);box-shadow:inset 0 0 0 1px var(--brand)}.player[data-alive=false]{opacity:.55}.player[data-alive=false] .player__name{text-decoration:line-through}.player__name{gap:var(--spacing-2);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.player__meta,.player__name{display:flex;align-items:center}.player__meta{flex-wrap:wrap;gap:var(--spacing-1-5);min-height:20px;color:var(--body-subtle)}.player__meta>svg{width:14px;height:14px}.player:disabled{opacity:1}.player[data-alive=false]:disabled{opacity:.55}.lobby{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.action{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);border-color:var(--border-brand-subtle)}.action .panel__title{margin-bottom:0}.action strong{color:var(--heading)}.role-card{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);justify-items:start}.role-card[data-team=intruders]{border-color:var(--border-danger-subtle);background:var(--danger-soft)}.role-card[data-team=defenders]{border-color:var(--border-success-subtle)}.role-card__name{font-size:var(--font-size-3xl)}.role-card__parallel{font-size:var(--font-size-sm);color:var(--body-subtle)}.role-card__parallel strong{color:var(--heading)}.notes{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2);font-size:var(--font-size-sm)}.notes li{padding:var(--spacing-2) var(--spacing-3);background:var(--brand-softer);border:1px solid var(--border-brand-subtle);color:var(--heading)}.glog li:before,.notes__r{font-family:var(--font-family-monospace);font-size:var(--font-size-xxs);color:var(--body-subtle);margin-right:var(--spacing-1)}.glog{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2);font-size:var(--font-size-sm);max-height:340px;overflow-y:auto}.glog li{padding-left:var(--spacing-3);border-left:2px solid var(--border-default-medium)}.glog li[data-kind=death]{border-left-color:var(--danger);color:var(--heading)}.glog li[data-kind=save]{border-left-color:var(--success);color:var(--heading)}.glog li[data-kind=vote]{border-left-color:var(--warning)}.glog li[data-kind=win]{border-left-color:var(--brand);color:var(--heading);font-weight:var(--font-weight-semibold)}.winner{font-size:var(--font-size-md)}.chat{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3)}.chat .game__h{margin-bottom:0}.chat__list{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2);max-height:300px;min-height:120px;overflow-y:auto;align-content:start;font-size:var(--font-size-sm)}.chat__list li{display:flex;flex-wrap:wrap;gap:var(--spacing-1) var(--spacing-2);align-items:baseline}.chat__list li[data-channel=intruders]{color:var(--fg-danger-strong)}.chat__list li[data-channel=dead]{color:var(--body-subtle)}.chat__who{color:var(--fg-brand);font-weight:var(--font-weight-semibold)}.chat__text{overflow-wrap:anywhere}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.shell__main{min-width:0}.shell__top{display:none}.side{position:-webkit-sticky;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;gap:var(--spacing-6);padding:var(--spacing-5) var(--spacing-4);background:var(--neutral-primary);border-right:1px solid var(--border-default);overflow-y:auto}.side__brand{padding:var(--spacing-1) var(--spacing-2)}.side__nav{display:flex;flex-direction:column;flex:1 1;gap:var(--spacing-6)}.side__nav ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1)}.side__secondary{margin-top:auto!important;padding-top:var(--spacing-4)!important;border-top:1px solid var(--border-default)}.side__link{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2-5) var(--spacing-3);color:var(--body);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-left:2px solid transparent}.side__link svg{width:16px;height:16px;flex:none}.side__link:hover{text-decoration:none;color:var(--heading);background:var(--neutral-primary-medium)}.side__link[aria-current=page]{color:var(--heading);background:var(--brand-softer);border-left-color:var(--brand)}.side__link[aria-current=page] svg{color:var(--fg-brand)}.side__account{display:grid;grid-template-columns:28px minmax(0,1fr) auto;grid-gap:var(--spacing-2-5);gap:var(--spacing-2-5);align-items:center;padding:var(--spacing-3);border:1px solid var(--border-default);background:var(--neutral-primary-soft)}.side__who{display:grid;min-width:0;font-size:var(--font-size-sm)}.side__who strong{color:var(--heading)}.side__who span,.side__who strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.side__who span{color:var(--body-subtle);font-size:var(--font-size-xs)}.side__logout{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border-default);color:var(--body);cursor:pointer}.side__logout:hover{color:var(--heading);border-color:var(--border-default-strong)}.side__logout svg{width:15px;height:15px}.appnav__xp{display:inline-flex;align-items:center;gap:var(--spacing-1-5);padding:var(--spacing-1-5) var(--spacing-2-5);border:1px solid var(--border-brand-subtle);background:var(--brand-softer);color:var(--fg-brand-strong);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);white-space:nowrap}.appnav__xp:hover{text-decoration:none;border-color:var(--brand)}.appnav__xp svg{width:14px;height:14px}.appnav__avatar{width:28px;height:28px;font-size:var(--font-size-xs);background:var(--brand);color:var(--dark)}.shell__scrim{display:none}@media (max-width:960px){.shell{grid-template-columns:1fr}.shell__top{position:-webkit-sticky;position:sticky;top:0;z-index:40;justify-content:space-between;min-height:60px;padding:0 var(--spacing-4);background:var(--nav-surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--border-default)}.shell__top,.shell__top-actions{display:flex;align-items:center;gap:var(--spacing-3)}.shell__toggle{display:inline-flex}.side{position:fixed;inset:0 auto 0 0;width:min(280px,85vw);z-index:50;transform:translateX(-100%);transition:transform .2s ease}.side[data-open=true]{transform:none;box-shadow:var(--elevation-2)}.shell__scrim{display:block;position:fixed;inset:0;z-index:45;background:var(--scrim)}.side__brand{display:none}}@media (prefers-reduced-motion:reduce){.side{transition:none}}.shell .app-page{min-height:auto}.seg{display:inline-flex;border:1px solid var(--border-default)}.seg__item{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);color:var(--body);border-right:1px solid var(--border-default)}.seg__item:last-child{border-right:0}.seg__item:hover{text-decoration:none;color:var(--heading);background:var(--neutral-primary-medium)}.seg__item[aria-current=page]{background:var(--brand);color:var(--dark);font-weight:var(--font-weight-semibold)}.board--full li{grid-template-columns:36px minmax(0,1fr) auto auto}@media (max-width:520px){.board--full li{grid-template-columns:28px minmax(0,1fr) auto}.board__level{display:none}}.board__medal{width:18px;height:18px}.board__medal--1{color:var(--fg-warning)}.board__medal--2{color:var(--heading)}.board__medal--3{color:var(--brand-strong)}.board__level{font-size:var(--font-size-xs);font-family:var(--font-family-monospace);text-transform:uppercase;letter-spacing:.06em}.board__you{margin-top:var(--spacing-4)!important;padding-top:var(--spacing-4);border-top:1px solid var(--border-default);font-size:var(--font-size-sm)}.support__title{margin-bottom:var(--spacing-5)}.support__faq{list-style:none;padding:0;display:grid;grid-gap:var(--spacing-6);gap:var(--spacing-6)}.settings-page{max-width:880px}.settings,.settings__card{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.settings__static{padding:var(--spacing-3) 0;color:var(--heading);font-family:var(--font-family-monospace);font-size:var(--font-size-sm);overflow-wrap:anywhere}.settings__danger,.settings__delete{border-color:var(--border-danger-subtle)}.settings__delete{color:var(--fg-danger-strong)}.fx-layer{position:fixed;inset:0;pointer-events:none;z-index:90;overflow:hidden}.fx-xp{position:fixed;left:50%;bottom:18%;transform:translateX(-50%);display:grid;justify-items:center;grid-gap:2px;gap:2px;padding:var(--spacing-2) var(--spacing-4);background:var(--brand);color:var(--dark);font-family:var(--font-family-monospace);font-weight:var(--font-weight-bold);font-size:var(--font-size-xl);box-shadow:var(--elevation-2);animation:fxRise 2.1s cubic-bezier(.2,.9,.3,1.2) forwards}.fx-xp span{font-size:var(--font-size-xxs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.06em}.fx-toast{position:fixed;left:50%;top:84px;transform:translateX(-50%);padding:var(--spacing-3) var(--spacing-5);border:1px solid var(--border-brand-subtle);background:var(--neutral-primary-strong);color:var(--heading);font-weight:var(--font-weight-semibold);box-shadow:var(--elevation-2);border-radius:var(--radius-md);animation:fxDrop 2.1s ease forwards;white-space:nowrap}.fx-toast--success{border-color:var(--border-success-subtle);color:var(--fg-success-strong)}.fx-toast--danger{border-color:var(--border-danger-subtle);color:var(--fg-danger-strong)}.fx-confetti{position:fixed;inset:0}.fx-confetti i{position:absolute;top:-12px;width:8px;height:12px;animation:fxFall 1.7s cubic-bezier(.25,.6,.4,1) forwards}@keyframes fxRise{0%{opacity:0;transform:translate(-50%,20px) scale(.6)}15%{opacity:1;transform:translate(-50%) scale(1.08)}25%{transform:translate(-50%) scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-60px)}}@keyframes fxDrop{0%{opacity:0;transform:translate(-50%,-16px)}12%{opacity:1;transform:translate(-50%)}85%{opacity:1}to{opacity:0;transform:translate(-50%,-8px)}}@keyframes fxFall{to{transform:translate(var(--dx),105vh) rotate(var(--rot));opacity:.9}}.fx-shake{animation:fxShake .38s ease}@keyframes fxShake{0%,to{transform:none}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}.fx-pop{animation:fxPop .35s cubic-bezier(.2,.9,.3,1.4)}@keyframes fxPop{0%{transform:scale(.96)}60%{transform:scale(1.02)}to{transform:none}}.btn>span svg,.side__link svg{transition:transform .15s ease}.side__link:hover svg{transform:rotate(-8deg) scale(1.12)}.btn:active{transform:translateY(1px)}.player:not(:disabled):active{transform:scale(.98)}.stat-tile__label svg.flame{animation:flicker 1.6s ease-in-out infinite;transform-origin:50% 90%}@keyframes flicker{0%,to{transform:scale(1) rotate(0)}30%{transform:scale(1.12) rotate(-6deg)}60%{transform:scale(.95) rotate(4deg)}}.side__sound{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:transparent;border:1px solid var(--border-default);color:var(--body);cursor:pointer}.side__sound:hover{color:var(--heading);border-color:var(--border-default-strong)}.side__sound svg{width:15px;height:15px}.side__account{grid-template-columns:28px minmax(0,1fr) auto auto}@media (prefers-reduced-motion:reduce){.fx-confetti{display:none}.fx-toast,.fx-xp{animation-duration:2.1s;animation-name:fxFade}.fx-pop,.fx-shake,.stat-tile__label svg.flame{animation:none}.side__link:hover svg{transform:none}}@keyframes fxFade{0%{opacity:0}10%,85%{opacity:1}to{opacity:0}}.back-link{display:inline-flex;align-items:center;gap:var(--spacing-1-5);font-size:var(--font-size-sm);color:var(--body);margin-bottom:var(--spacing-2)}.back-link svg{width:14px;height:14px}.doc-tabs{margin-block:var(--spacing-2) var(--spacing-2);flex-wrap:wrap}.doc-tabs .seg__item{display:inline-flex;align-items:center;gap:var(--spacing-2)}.doc-tabs svg{width:14px;height:14px}.doc-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;grid-gap:var(--spacing-6);gap:var(--spacing-6);align-items:start}.doc-body{padding:var(--spacing-8)}.doc-lead{font-size:var(--font-size-lg);color:var(--heading);margin-bottom:var(--spacing-6)!important}.doc{max-width:760px}.doc-intro{margin-bottom:var(--spacing-8);padding-bottom:var(--spacing-8);border-bottom:1px solid var(--border-default)}.doc-cta .btn,.doc-end .btn{white-space:normal;text-align:left}.doc__section{padding-top:var(--spacing-8);margin-top:var(--spacing-8);border-top:1px solid var(--border-default);scroll-margin-top:var(--spacing-8)}.doc__section:first-child{border-top:0;margin-top:0;padding-top:0}.doc .doc__section h2{margin-top:var(--spacing-1);font-size:var(--font-size-2xl)}.doc__tag{margin-bottom:0}.doc :is(p,ul,ol,.artifact,.doc-note,.doc-table)+:is(p,ul,ol,.artifact,.doc-note,.doc-table){margin-top:var(--spacing-4)}.doc .artifact{margin-block:var(--spacing-4)}.doc li code,.doc p code,.doc td code{font-family:var(--font-family-monospace);font-size:.875em;background:var(--neutral-secondary-medium);border:1px solid var(--border-default);padding:0 var(--spacing-1);color:var(--heading);word-break:break-word}.doc-steps{counter-reset:step;list-style:none;padding-left:0!important}.doc-steps li{counter-increment:step;position:relative;padding-left:var(--spacing-10)}.doc-steps li:before{content:counter(step);position:absolute;left:0;top:0;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--fg-brand-strong)}.doc-note,.doc-steps li:before{background:var(--brand-softer);border:1px solid var(--border-brand-subtle)}.doc-note{display:grid;grid-template-columns:18px minmax(0,1fr);grid-gap:var(--spacing-3);gap:var(--spacing-3);padding:var(--spacing-4)}.doc-note svg{width:18px;height:18px;color:var(--fg-brand);margin-top:2px}.doc-note--warn{border-color:var(--border-warning-subtle);background:var(--warning-soft)}.doc-note--warn svg{color:var(--fg-warning)}.doc-note p{margin:0!important;color:var(--heading)}.doc-table{overflow-x:auto;border:1px solid var(--border-default)}.doc-table table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.doc-table th{text-align:left;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle);font-weight:var(--font-weight-medium);background:var(--neutral-primary-soft)}.doc-table :is(th,td){padding:var(--spacing-3);border-bottom:1px solid var(--border-default);vertical-align:top}.doc-table tr:last-child td{border-bottom:0}.doc-table td:first-child{white-space:nowrap}.doc-aside{position:-webkit-sticky;position:sticky;top:var(--spacing-6);display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.doc-toc{border:1px solid var(--border-default);background:var(--neutral-primary);padding:var(--spacing-4)}.doc-toc__title{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle);margin-bottom:var(--spacing-3);display:block}.doc-toc ol{list-style:none;padding:0;margin:0;display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1);max-height:60vh;overflow-y:auto}.doc-toc a{display:flex;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--body);padding:var(--spacing-1) 0}.doc-toc a:hover{color:var(--heading);text-decoration:none}.doc-toc__tag{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--fg-brand);min-width:44px;padding-top:2px}.doc-next{display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1);border:1px solid var(--border-default);padding:var(--spacing-4);color:var(--heading);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm)}.doc-next:hover{text-decoration:none;border-color:var(--border-default-strong);background:var(--neutral-primary-medium)}.doc-next .doc-toc__title{margin:0}.doc-cta,.doc-end,.doc-sources{margin-top:var(--spacing-10);padding-top:var(--spacing-8);border-top:1px solid var(--border-default);display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);justify-items:start}.doc-sources ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2);font-size:var(--font-size-sm)}.doc-sources a{display:inline-flex;align-items:center;gap:var(--spacing-1-5)}.doc-sources svg{width:12px;height:12px}.room-card__inside{margin-top:var(--spacing-4);font-size:var(--font-size-sm)}.room-card__inside summary{cursor:pointer;color:var(--body)}.room-card__inside ol{margin:var(--spacing-3) 0 0;padding-left:var(--spacing-5);display:grid;grid-gap:var(--spacing-1-5);gap:var(--spacing-1-5);color:var(--body)}.room-card__inside .badge{margin-left:var(--spacing-2);vertical-align:middle}.room-card__links{display:flex;flex-wrap:wrap;gap:var(--spacing-3);margin-top:var(--spacing-5);align-items:center}.room-card__links .room-card__cta{margin-top:0}@media (max-width:1100px){.doc-layout{grid-template-columns:minmax(0,1fr)}.doc-aside{display:none}}@media (max-width:640px){.doc-practice{display:none}.doc-body{padding:var(--spacing-5)}.doc-table td:first-child{white-space:normal}}.inv-case{display:grid;grid-gap:var(--spacing-4);gap:var(--spacing-4)}.inv-case>p{max-width:72ch;color:var(--body)}.inv-steps{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--spacing-2);gap:var(--spacing-2);counter-reset:inv}@media (max-width:640px){.inv-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}.inv-step{display:grid;grid-template-columns:28px minmax(0,1fr);grid-template-rows:auto auto;grid-column-gap:var(--spacing-2);column-gap:var(--spacing-2);align-items:center;padding:var(--spacing-2-5) var(--spacing-3);border:1px solid var(--border-default);background:var(--neutral-primary)}.inv-step__icon{grid-row:span 2;display:inline-grid;place-items:center;width:28px;height:28px;background:var(--neutral-tertiary);color:var(--fg-brand)}.inv-step__icon svg{width:14px;height:14px}.inv-step__label{font-weight:var(--font-weight-semibold);color:var(--heading);font-size:var(--font-size-sm)}.inv-step__xp{font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle)}.inv-step[data-stage=explain] .inv-step__xp,.inv-step[data-stage=fix] .inv-step__xp{color:var(--fg-brand)}.inv-step[data-done=true]{border-color:var(--border-success-subtle);background:var(--success-soft)}.inv-step[data-done=true] .inv-step__icon{background:var(--success);color:var(--dark)}.stage-badge--break{background:var(--danger-soft);color:var(--fg-danger-strong);border-color:var(--border-danger-subtle)}.stage-badge--explain{background:var(--warning-soft);color:var(--fg-warning);border-color:var(--border-warning-subtle)}.stage-badge--fix{background:var(--brand-softer);color:var(--fg-brand-strong);border-color:var(--border-brand-subtle)}.stage-badge--prove{background:var(--success-soft);color:var(--fg-success-strong);border-color:var(--border-success-subtle)}.patch-list{border:0;padding:0;margin:0}.patch-list,.patch-opt{display:grid;grid-gap:var(--spacing-2);gap:var(--spacing-2)}.patch-opt{padding:var(--spacing-3);border:1px solid var(--border-default);background:var(--neutral-primary-soft);cursor:pointer}.patch-opt:hover{border-color:var(--border-default-strong)}.patch-opt[data-on=true]{border-color:var(--brand);background:var(--brand-softer)}.patch-list:disabled .patch-opt{cursor:not-allowed;opacity:.7}.patch-opt .checkbox{pointer-events:none}.patch-opt__label{display:block;color:var(--heading)}.patch-opt__file{display:inline-block;margin-top:var(--spacing-1);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle)}.patch-opt__diff{padding:var(--spacing-2) var(--spacing-3)}.patch-opt__diff,.suite{border:1px solid var(--border-default);border-radius:var(--radius-md)}.suite{background:var(--neutral-secondary);padding:var(--spacing-3) var(--spacing-4);display:grid;grid-gap:var(--spacing-2);font-size:var(--font-size-sm)}.suite,.suite__head{gap:var(--spacing-2)}.suite__head{display:flex;align-items:center;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--body-subtle)}.suite__head svg{width:14px;height:14px}.suite__list{list-style:none;padding:0;margin:0;grid-gap:var(--spacing-2)}.suite__list,.suite__test{display:grid;gap:var(--spacing-2)}.suite__test{grid-template-columns:16px minmax(0,1fr);grid-gap:var(--spacing-2);align-items:start;color:var(--body)}.suite__test>svg{width:16px;height:16px;margin-top:2px}.suite__test[data-pass=true]>svg{color:var(--fg-success)}.suite__test[data-pass=false]>svg{color:var(--fg-danger)}.suite__test .badge{margin-right:var(--spacing-1)}.suite__detail{display:block;margin-top:var(--spacing-1);color:var(--body-subtle);font-size:var(--font-size-xs)}.explain-guide{margin:0;padding-left:var(--spacing-5);display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--body)}.explain-box{min-height:180px}.explain-actions{align-items:center}.explain-count{margin-left:auto;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle)}.agent-turn{display:grid;grid-gap:var(--spacing-1-5);gap:var(--spacing-1-5)}.agent-turn--user{justify-items:end}.agent-call{display:grid;grid-template-columns:14px minmax(0,1fr);grid-gap:var(--spacing-2);gap:var(--spacing-2);align-items:start;max-width:85%;padding:var(--spacing-1-5) var(--spacing-3);border:1px dashed var(--border-default-strong);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--body-subtle);overflow-wrap:anywhere}.agent-call svg{width:14px;height:14px;margin-top:2px}.agent-call code{color:var(--heading)}.agent-call--risky{border-color:var(--border-danger-subtle);background:var(--danger-soft);color:var(--fg-danger-strong)}.logx__bar{display:flex;flex-wrap:wrap;gap:var(--spacing-2);align-items:center;justify-content:space-between}.logx__bar .seg__item{background:transparent;border-top:0;border-bottom:0;border-left:0;cursor:pointer;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em}.logx__bar .seg__item[aria-pressed=true]{background:var(--brand);color:var(--dark);font-weight:var(--font-weight-semibold)}.logx__search{position:relative;flex:1 1 220px;max-width:360px}.logx__search svg{position:absolute;left:var(--spacing-3);top:50%;width:14px;height:14px;transform:translateY(-50%);color:var(--body-subtle)}.logx__search .input{padding-left:var(--spacing-8);font-family:var(--font-family-monospace);font-size:var(--font-size-sm)}.logx__count{font-size:var(--font-size-xs)}.logx__clear{background:none;border:0;padding:0;color:var(--fg-brand);cursor:pointer;font:inherit}.logx__table{max-height:420px;overflow:auto;border:1px solid var(--border-default);border-radius:var(--radius-md);background:var(--neutral-secondary);font-family:var(--font-family-monospace);font-size:var(--font-size-xs);line-height:1.6}.logx__row{display:grid;grid-template-columns:52px 72px minmax(0,1fr);grid-gap:var(--spacing-3);gap:var(--spacing-3);padding:var(--spacing-1) var(--spacing-3);border-bottom:1px solid var(--border-default-subtle)}.logx__row:hover{background:var(--neutral-primary-soft)}.logx__src{text-transform:uppercase;color:var(--body-subtle)}.logx__src--auth{color:var(--fg-warning)}.logx__src--api{color:var(--fg-brand)}.logx__src--audit{color:var(--fg-success)}.logx__time{color:var(--body-subtle)}.logx__msg{color:var(--heading);overflow-wrap:anywhere;white-space:pre-wrap}.logx__pivot{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;-webkit-text-decoration:underline dotted var(--border-default-strong);text-decoration:underline dotted var(--border-default-strong);text-underline-offset:3px}.logx__pivot:hover{color:var(--fg-brand);-webkit-text-decoration-color:var(--brand);text-decoration-color:var(--brand)}@media (max-width:560px){.logx__row{grid-template-columns:44px minmax(0,1fr)}.logx__time{display:none}}.rooms-section-head{display:grid;grid-gap:var(--spacing-3);gap:var(--spacing-3);margin-bottom:var(--spacing-6);max-width:72ch}.rooms-section-head h2{margin:0}.format-strip{list-style:none;padding:0;margin:0 0 var(--spacing-8);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--spacing-3);gap:var(--spacing-3)}@media (max-width:760px){.format-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.format-strip li{border:1px solid var(--border-default);background:var(--neutral-primary);padding:var(--spacing-4);display:grid;grid-gap:var(--spacing-1);gap:var(--spacing-1)}.format-strip svg{width:18px;height:18px;color:var(--fg-brand)}.format-strip strong{color:var(--heading)}.format-strip span{font-size:var(--font-size-sm);color:var(--body)}.format-strip em{font-style:normal;font-family:var(--font-family-monospace);font-size:var(--font-size-xs);color:var(--fg-brand)}.lab__headers{min-height:64px}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}@media (prefers-reduced-motion:no-preference){.hero .container>*{animation:hero-in .9s cubic-bezier(.16,1,.3,1) both}.hero .container>:nth-child(2){animation-delay:80ms}.hero .container>:nth-child(3){animation-delay:.16s}.hero .container>:nth-child(4){animation-delay:.24s}.hero .container>:nth-child(5){animation-delay:.32s}.hero .ticker{animation:fade-in 1.2s ease .4s both}.reveal-ready :is([data-reveal],[data-reveal-stagger]>:not(.card__glow)){opacity:0;transform:translate3d(var(--reveal-x,0),var(--reveal-y,40px),0) scale(var(--reveal-scale,1));transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal-ready [data-reveal-from=above]:not(.is-revealed){--reveal-y:-40px}.reveal-ready [data-reveal=right]{--reveal-x:48px;--reveal-y:0px}.reveal-ready [data-reveal=zoom]{--reveal-scale:0.94;--reveal-y:24px}.reveal-ready :is([data-reveal],[data-reveal-stagger]>:not(.card__glow)).is-revealed{opacity:1;transform:none}.reveal-ready [data-reveal-stagger]>.is-revealed{transition-delay:calc(min(var(--reveal-i, 0), 6) * 70ms)}}@keyframes hero-in{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.dash>.panel,.dash__split>.panel,.dash__stats .stat-tile{position:relative;transition:border-color .2s ease,background-color .2s ease,transform .25s cubic-bezier(.16,1,.3,1)}.dash__stats .stat-tile:after{content:"";position:absolute;inset:-1px -1px auto;height:2px;background:var(--brand);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.16,1,.3,1)}.dash__stats .stat-tile:hover{border-color:var(--border-default-strong);background:var(--neutral-primary-medium);transform:translateY(-3px)}.dash__stats .stat-tile:hover:after{transform:scaleX(1)}.stat-tile__label svg{transition:transform .25s cubic-bezier(.16,1,.3,1)}.stat-tile:hover .stat-tile__label svg{transform:scale(1.2)}.stat-tile__value{transition:color .2s ease}.stat-tile:hover .stat-tile__value{color:var(--fg-brand)}.stat-tile:hover .stat-tile__value small{color:var(--body)}.dash>.panel:hover,.dash__split>.panel:hover{border-color:var(--border-default-strong)}.dash-rooms__item{transition:border-color .2s ease,background-color .2s ease,transform .2s ease}.dash-rooms__item:hover{transform:translateX(3px)}.dash-rooms__item .card__icon{transition:background-color .2s ease,border-color .2s ease}.dash-rooms__item:hover .card__icon{background:var(--brand-soft);border-color:var(--border-brand-light)}.activity li{transition:background-color .15s ease;padding-inline:var(--spacing-2);margin-inline:calc(-1 * var(--spacing-2))}.activity li:hover{background:var(--neutral-primary-medium)}@media (prefers-reduced-motion:reduce){.dash-rooms__item,.dash-rooms__item .card__icon,.dash>.panel,.dash__split>.panel,.dash__stats .stat-tile,.dash__stats .stat-tile:after,.stat-tile__label svg{transition:none}.dash-rooms__item:hover,.dash__stats .stat-tile:hover,.stat-tile:hover .stat-tile__label svg{transform:none}}