@font-face{font-family:Instrument Sans;font-style:normal;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-normal-BbzFLZTg.woff2)format("woff2-variations")}@font-face{font-family:Instrument Sans;font-style:italic;font-display:swap;font-weight:400 700;src:url(/assets/instrument-sans-latin-wght-italic-BlcgWI5J.woff2)format("woff2-variations")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2)format("woff2")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/caveat-latin-700-normal-D8_1Nw6V.woff2)format("woff2")}:root{--ink:#0b2350;--ink-2:#33456b;--ink-3:#5d6b88;--paper:#fff;--mist:#f4f6fb;--mist-2:#eaeef7;--line:#e1e6f0;--line-2:#cdd5e4;--blue:#1f5bff;--blue-ink:#1546cc;--blue-wash:#e8eeff;--on-blue:#fff;--highlight:#ffe066;--highlight-soft:#fff3b8;--margin-rose:#e8505b;--rose-wash:#fdecee;--green:#11865b;--green-wash:#e3f6ee;--amber:#a15c00;--amber-wash:#fff1db;--mint:#d4f5ef;--lavender:#e7e5ff;--code-bg:#fbfcfe;--shadow-1:0 1px 2px #0b23500f, 0 1px 1px #0b23500a;--shadow-2:0 12px 32px -12px #0b235038, 0 2px 6px #0b23500f;--grid-line:#0b23500e;--grid-blue:#1f5bff17;--pen:#e03131;--hand:"Caveat", "Segoe Print", "Bradley Hand", cursive;--font:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--r-sm:6px;--r-md:10px;--r-lg:16px;--gutter:16px;--max:1200px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background-color:var(--paper);background-image:linear-gradient(to right, var(--grid-blue) 1px, transparent 1px), linear-gradient(var(--grid-blue) 1px, transparent 1px);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-size:32px 32px;margin:0;font-size:16px;line-height:1.55}h1,h2,h3,h4{letter-spacing:-.02em;margin:0;font-weight:700;line-height:1.12}p{margin:0}a{color:var(--blue);text-decoration:none}a:hover{text-underline-offset:3px;text-decoration:underline}code,pre,kbd{font-family:var(--mono);font-variant-ligatures:none;font-feature-settings:"liga" 0, "calt" 0}button,input,select,textarea{font:inherit;color:inherit}img,svg{max-width:100%;display:block}:focus-visible{outline:2px solid var(--blue);outline-offset:2px;border-radius:4px}::selection{background:var(--highlight);color:#0b2350}.mark{z-index:0;white-space:nowrap;position:relative}.mark:after{content:"";background:var(--highlight);height:.42em;transform:skew(-8deg) scaleX(var(--mark-scale,1));transform-origin:0;z-index:-1;border-radius:3px;position:absolute;bottom:.06em;left:-.08em;right:-.08em}.mark.draw:after{--mark-scale:0;animation:.7s cubic-bezier(.6,0,.2,1) .45s forwards mark-draw}@keyframes mark-draw{to{--mark-scale:1;transform:skew(-8deg)scaleX(1)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-delay:0s!important}.mark.draw:after{transform:skew(-8deg)scaleX(1)}}.sr-only{clip:rect(0, 0, 0, 0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;height:42px;padding:0 18px;font-size:15px;font-weight:600;transition:background .12s,border-color .12s,color .12s,box-shadow .12s;display:inline-flex;text-decoration:none!important}.btn-primary{background:var(--blue);color:var(--on-blue);box-shadow:0 1px 0 #ffffff26 inset, var(--shadow-1)}.btn-primary:hover{background:var(--blue-ink)}.btn-secondary{background:var(--paper);color:var(--ink);border-color:var(--line-2)}.btn-secondary:hover{border-color:var(--ink-3)}.btn-ghost{color:var(--ink-2);background:0 0}.btn-ghost:hover{background:var(--mist-2)}.btn-sm{height:32px;padding:0 12px;font-size:14px}.btn[disabled]{opacity:.5;cursor:not-allowed}.btn-danger{background:var(--rose-wash);color:var(--margin-rose)}.chip{white-space:nowrap;background:var(--mist-2);height:24px;color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:12.5px;font-weight:600;display:inline-flex}.chip .dot{background:currentColor;border-radius:50%;width:7px;height:7px}.chip-blue{background:var(--blue-wash);color:var(--blue-ink)}.chip-green{background:var(--green-wash);color:var(--green)}.chip-rose{background:var(--rose-wash);color:var(--margin-rose)}.chip-amber{background:var(--amber-wash);color:var(--amber)}.chip-yellow{background:var(--highlight-soft);color:var(--ink)}.field{gap:6px;display:grid}.field>span{color:var(--ink-2);font-size:14px;font-weight:600}.input,.textarea,.select{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--paper);width:100%;padding:9px 12px;font-size:15px;transition:border-color .12s,box-shadow .12s}.textarea{resize:vertical;min-height:120px;line-height:1.5}.textarea.mono{font-family:var(--mono);font-size:13px}.input:focus,.textarea:focus,.select:focus{border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-wash);outline:none}.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}@media (width<=640px){.wrap{padding:0 var(--gutter)}}.logo{color:var(--ink);align-items:center;display:inline-flex;text-decoration:none!important}.logo-word{isolation:isolate;letter-spacing:-.035em;padding:0 2px;font-size:22px;font-weight:700;line-height:1;position:relative}.logo-word:after{content:"";z-index:-1;background:var(--highlight);border-radius:3px;height:.48em;position:absolute;bottom:0;left:-2px;right:-4px;transform:skew(-10deg)}.nav{z-index:30;background:color-mix(in srgb, var(--paper) 86%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-inner{max-width:var(--max);align-items:center;gap:32px;height:64px;margin:0 auto;padding:0 24px;display:flex}.nav-links{flex:1;gap:28px;display:flex}.nav-links a{color:var(--ink-2);font-size:15px;font-weight:500}.nav-links a:hover{color:var(--ink);text-decoration:none}.nav-cta{align-items:center;gap:8px;margin-left:auto;display:flex}.nav-toggle{width:36px;padding:0;display:none}@media (width<=760px){.nav-inner{padding:0 var(--gutter);gap:12px}.nav-toggle{display:inline-flex}.nav-links{background:var(--paper);border-bottom:1px solid var(--line);padding:8px var(--gutter) 16px;flex-direction:column;gap:0;display:none;position:absolute;top:64px;left:0;right:0}.nav-links.open{display:flex}.nav-links a{border-bottom:1px solid var(--line);padding:12px 0}}.hero{padding:72px 0 88px;position:relative;overflow:hidden}.hero:before,.cta:before{content:"";z-index:-1;pointer-events:none;mix-blend-mode:multiply;position:absolute;inset:0}.hero:before{background:radial-gradient(760px 460px at 92% 8%, var(--mint), transparent 70%), radial-gradient(620px 420px at 6% 0%, color-mix(in srgb, var(--highlight) 26%, transparent), transparent 66%), radial-gradient(520px 360px at 40% 110%, var(--lavender), transparent 70%)}.hero-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.3fr);align-items:center;gap:48px;display:grid;position:relative}.hero h1{letter-spacing:-.035em;max-width:11ch;font-size:clamp(42px,6.2vw,72px);line-height:1.02}.lede{color:var(--ink-2);max-width:34em;margin-top:24px;font-size:19px;line-height:1.55}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-note{color:var(--ink-3);max-width:38em;margin-top:28px;font-size:14px}@media (width<=960px){.hero{padding:48px 0 64px}.hero-grid{grid-template-columns:1fr;gap:40px}}.sheet{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);margin:0;animation:.6s cubic-bezier(.2,.7,.2,1) both rise;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.sheet-bar{border-bottom:1px solid var(--line);background:var(--mist);justify-content:space-between;align-items:center;padding:12px 16px;font-size:13px;display:flex}.sheet-file{font-family:var(--mono);color:var(--ink);font-weight:500}.sheet-q{color:var(--ink-3);font-weight:600}.sheet-body{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);display:grid}@keyframes sweep{to{transform:scaleX(1)skew(-6deg)}}.sheet-margin{border-left:2px solid var(--margin-rose);background:var(--paper);flex-direction:column;gap:12px;padding:14px 16px 16px 20px;display:flex;position:relative}.note{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);box-shadow:var(--shadow-1);opacity:0;padding:10px 12px;font-size:13.5px;line-height:1.5;animation:.42s cubic-bezier(.2,.7,.2,1) forwards note-in}.note-miss{border-left:3px solid var(--margin-rose);animation-delay:1.5s}.note-ok{border-left:3px solid var(--green);animation-delay:1.9s}.note code{background:var(--mist-2);border-radius:4px;padding:1px 4px;font-size:12px}.note-head{color:var(--ink-3);align-items:center;gap:8px;margin-bottom:4px;font-size:12.5px;display:flex}.note-head b{color:var(--ink)}.tick{border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;font-weight:700;display:inline-grid}.tick.miss{background:var(--rose-wash);color:var(--margin-rose)}.tick.ok{background:var(--green-wash);color:var(--green)}@keyframes note-in{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:none}}@media (width<=640px){.sheet-body{grid-template-columns:1fr}.sheet-margin{border-left:0;border-top:2px solid var(--margin-rose)}}.band{color:var(--paper);background:linear-gradient(to right, color-mix(in srgb, var(--paper) 7%, transparent) 1px, transparent 1px) 0 0 / 32px 32px, linear-gradient(color-mix(in srgb, var(--paper) 7%, transparent) 1px, transparent 1px) 0 0 / 32px 32px, var(--ink);padding:56px 0}.band-grid{grid-template-columns:1fr 1fr;align-items:start;gap:48px;display:grid}.band h2{letter-spacing:-.025em;font-size:clamp(26px,3.2vw,36px)}.band p{color:color-mix(in srgb, var(--paper) 78%, transparent);max-width:36em;font-size:17px}@media (width<=860px){.band-grid{grid-template-columns:1fr;gap:20px}}.section{padding:88px 0}.section-tint{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.section-head{max-width:44em;margin-bottom:40px}.section-head h2{letter-spacing:-.03em;font-size:clamp(30px,3.8vw,44px)}.section-head p{color:var(--ink-2);margin-top:14px;font-size:17px}@media (width<=640px){.section{padding:64px 0}}.step-who{color:var(--ink-3);font-size:12.5px;font-weight:600}.step-n{background:var(--blue-wash);width:28px;height:28px;color:var(--blue-ink);border-radius:8px;place-items:center;font-size:14px;font-weight:700;display:inline-grid}[data-who=browser] .step-n{background:var(--highlight-soft);color:var(--ink)}[data-who=model] .step-n{background:var(--blue-wash);color:var(--blue-ink)}[data-who=you] .step-n{background:var(--green-wash);color:var(--green)}.evidence-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.metric{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);padding:24px}.metric h3{font-size:18px}.metric-sub{color:var(--ink-3);margin:4px 0 20px;font-size:14px}.bar-row{grid-template-columns:9.5em 1fr 4.2em;align-items:center;gap:12px;margin-top:12px;font-size:14px;display:grid}.bar-label{color:var(--ink-2);font-weight:500}.bar-track{background:var(--mist-2);border-radius:999px;height:12px;overflow:hidden}.bar-fill{border-radius:999px;height:100%;display:block}.bar-fill.brand{background:var(--blue)}.bar-fill.muted{background:var(--line-2)}.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.evidence-notes{color:var(--ink-2);grid-template-columns:1fr 1fr;gap:24px;margin-top:28px;font-size:15px;display:grid}@media (width<=900px){.evidence-grid,.evidence-notes{grid-template-columns:1fr}}.sub-head{margin:48px 0 20px;font-size:24px}.lect{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;display:grid}.lect-copy h2{letter-spacing:-.03em;font-size:clamp(30px,3.8vw,44px)}.lect-copy p{color:var(--ink-2);margin-top:16px;font-size:17px}.lect-figure{background:var(--ink);color:var(--paper);border-radius:var(--r-lg);box-shadow:var(--shadow-2);padding:32px}.split{gap:20px;display:grid}.split-row{grid-template-columns:8.5em 1fr 4em;align-items:center;gap:14px;font-size:15px;display:grid}.split-row b{text-align:right;font-variant-numeric:tabular-nums;font-size:20px}.split-track{background:color-mix(in srgb, var(--paper) 14%, transparent);border-radius:999px;height:18px;overflow:hidden}.split-fill{background:color-mix(in srgb, var(--paper) 60%, transparent);border-radius:999px;height:100%;display:block}.split-fill.strong{background:var(--highlight)}.split-cap{color:color-mix(in srgb, var(--paper) 70%, transparent);margin-top:18px;font-size:13px}@media (width<=860px){.lect{grid-template-columns:1fr;gap:28px}.split-row{grid-template-columns:7em 1fr 3.6em}}.cta{padding:88px 0;position:relative;overflow:hidden}.cta:before{background:radial-gradient(640px 280px at 50% 55%, var(--mint), transparent 72%)}.cta-inner{text-align:center;justify-items:center;gap:16px;display:grid}.cta h2{letter-spacing:-.03em;font-size:clamp(30px,4vw,46px)}.cta p{color:var(--ink-2);max-width:32em;font-size:17px}.cta .btn{margin-top:8px}.footer{border-top:1px solid var(--line);padding:28px 0}.footer-inner{flex-wrap:wrap;align-items:center;gap:24px;display:flex}.footer-inner p{min-width:240px;color:var(--ink-3);flex:1;font-size:14px}.footer-inner a:last-child{font-size:14px;font-weight:600}.demo-page{min-height:100vh}.demo-bar{z-index:30;background:color-mix(in srgb, var(--paper) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0}.demo-bar-in{max-width:var(--max);align-items:center;gap:20px;height:64px;margin:0 auto;padding:0 24px;display:flex}.stepper{align-items:center;gap:4px;margin:0 auto;padding:0;list-style:none;display:flex}.stepper li{align-items:center;display:flex}.stepper li+li:before{content:"";background:var(--line-2);border-radius:2px;width:28px;height:2px;margin:0 4px}.stepper li.past+li:before,.stepper li.now:before{background:var(--blue)}.stepper button{color:var(--ink-3);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:6px 8px;font-size:14px;font-weight:600;display:inline-flex}.stepper button:disabled{cursor:default}.stepper button:not(:disabled):hover{background:var(--mist-2)}.step-dot{background:var(--mist-2);width:24px;height:24px;color:var(--ink-3);border-radius:50%;place-items:center;font-size:12.5px;display:grid}.stepper li.now .step-dot{background:var(--blue);color:var(--on-blue)}.stepper li.now button{color:var(--ink)}.stepper li.past .step-dot{background:var(--green-wash);color:var(--green)}@media (width<=900px){.step-label{display:none}.stepper li.now .step-label{display:inline}.stepper li+li:before{width:14px}.demo-back{display:none}}.demo{gap:22px;max-width:1100px;padding-block:36px 72px;display:grid}.demo-head h1{letter-spacing:-.03em;font-size:clamp(30px,4vw,42px)}.demo-head p{color:var(--ink-2);max-width:40em;margin-top:10px;font-size:17px}@media (width<=640px){.demo-bar-in{padding:0 var(--gutter)}}.demo-grid{grid-template-columns:260px minmax(0,1fr);align-items:start;gap:24px;display:grid}.picker{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);gap:4px;padding:8px;display:grid;position:sticky;top:76px}.pick{border-radius:var(--r-sm);text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:0;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:8px 10px;font-size:14.5px;display:grid}.pick:hover{background:var(--mist)}.pick[aria-selected=true]{background:var(--blue-wash)}.avatar{background:var(--mist-2);width:30px;height:30px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.pick[aria-selected=true] .avatar{background:var(--blue);color:var(--on-blue)}.pick-name{font-weight:500}.pick-pct{font-variant-numeric:tabular-nums;color:var(--ink-2);font-weight:700}.picker-note{color:var(--ink-3);padding:8px 10px 4px;font-size:12.5px}@media (width<=900px){.demo-grid{grid-template-columns:minmax(0,1fr)}.picker{padding:6px;display:flex;position:static;overflow-x:auto}.pick{flex:none;grid-template-columns:auto auto}.pick-pct,.picker-note{display:none}}.banner{border-radius:var(--r-md);background:var(--blue-wash);padding:12px 14px;font-size:14.5px}.banner.rose{background:var(--rose-wash)}.muted{color:var(--ink-3)}.small{font-size:13.5px}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;flex:none;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.fb{gap:16px;min-width:0;display:grid}.fb-top{align-items:flex-end;gap:16px;display:flex}.fb-top h2{letter-spacing:-.02em;font-size:26px}.fb-sub{color:var(--ink-3);margin-top:2px}.fb-pct{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin-left:auto;font-size:44px;line-height:1}.jumpbar{z-index:20;background:color-mix(in srgb, var(--paper) 92%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);box-shadow:var(--shadow-1);border-radius:999px;flex-wrap:wrap;gap:4px;width:max-content;max-width:100%;padding:5px;display:flex;position:sticky;top:70px}.jump{height:32px;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.jump:hover{background:var(--mist-2)}.jump b{color:var(--ink);font-variant-numeric:tabular-nums}.jump.full b{color:var(--green)}.legend{color:var(--ink-3);flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.legend i{border-radius:3px;width:14px;height:10px;display:inline-block}.legend .l-ok{background:var(--green-wash);box-shadow:inset 3px 0 0 var(--green)}.legend .l-miss{background:var(--rose-wash);box-shadow:inset 3px 0 0 var(--margin-rose)}.qsec{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);scroll-margin-top:120px;overflow:hidden}.qsec-head{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:14px 18px;display:flex}.qsec-head h3{flex-wrap:wrap;align-items:center;gap:10px;font-size:17px;display:flex}.qsec-head code{color:var(--ink-2);background:var(--mist);border-radius:6px;padding:2px 8px;font-size:13px;font-weight:500}.qsec-score{color:var(--ink-3);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-weight:600}.qsec-score b{color:var(--ink);font-size:22px}.note-unverified{border-radius:var(--r-md);background:var(--amber-wash);margin:12px 18px 0;padding:10px 12px;font-size:14px}.unanchored{background:var(--mist);border-bottom:1px solid var(--line);gap:8px;padding:12px 18px;display:grid}.unanchored>p{color:var(--ink-3);font-size:13px;font-weight:600}.seg{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);display:grid}.seg.has+.seg{border-top:1px dashed var(--line)}.seg-code{background:var(--code-bg);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:4px 0;font-size:13px;line-height:1.75}.seg-margin{border-left:2px solid var(--margin-rose);align-content:start;gap:8px;padding:0 12px;display:grid}.seg.has .seg-margin{padding-block:10px}.ln-row{grid-template-columns:40px minmax(0,1fr);display:grid}.ln-row .ln{text-align:right;color:var(--ink-3);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;padding-right:10px}.ln-row .tx{border-left:3px solid #0000;padding:0 12px 0 10px}.ln-row.ok .tx{background:var(--green-wash);border-left-color:color-mix(in srgb, var(--green) 55%, transparent)}.ln-row.miss .tx{background:var(--rose-wash);border-left-color:color-mix(in srgb, var(--margin-rose) 65%, transparent)}@media (width<=760px){.seg{grid-template-columns:minmax(0,1fr)}.seg-margin{border-left:0;border-top:2px solid var(--margin-rose)}.seg:not(.has) .seg-margin{display:none}.jumpbar{top:66px}}.cmt{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--line-2);border-radius:var(--r-md);box-shadow:var(--shadow-1);gap:4px;padding:10px 12px;font-size:14px;line-height:1.55;display:grid}.cmt.ok{border-left-color:var(--green)}.cmt.miss{border-left-color:var(--margin-rose)}.cmt-head{color:var(--ink-3);align-items:baseline;gap:8px;font-size:12.5px;display:flex}.cmt-mark{border-radius:50%;flex:none;align-self:center;place-items:center;width:20px;height:20px;font-size:11px;font-weight:700;display:inline-grid}.cmt-mark.ok{background:var(--green-wash);color:var(--green)}.cmt-mark.miss{background:var(--rose-wash);color:var(--margin-rose)}.cmt-id{color:var(--ink);font-family:var(--mono);flex:none;font-size:12px}.cmt-rub{min-width:0}.cmt-fb{color:var(--ink)}.qsum{border-top:1px solid var(--line);background:var(--mist);padding:14px 18px;font-size:14.5px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);gap:16px;padding:20px 22px;display:grid}.next-row{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:12px;display:flex}.next-note{text-align:right;margin-top:-10px}.code-field{min-width:220px}.link-btn{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-size:13.5px;font-weight:600}.link-btn:hover{text-decoration:underline}.assign-top{align-items:flex-start;gap:16px;display:flex}.assign-top h2{font-size:21px}.assign-top p{max-width:46em;margin-top:6px}.assign-top .chip{flex:none;margin-left:auto}.qlist{border-top:1px solid var(--line);margin:0;padding:0;list-style:none;display:grid}.qlist>li{border-bottom:1px solid var(--line);gap:10px;padding:14px 0;display:grid}.qrow{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.qrow code{background:var(--mist);border-radius:6px;padding:2px 8px;font-size:13px}.qrow .link-btn{margin-left:auto}.items{color:var(--ink-2);gap:4px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.items span{font-family:var(--mono);color:var(--ink);margin-right:4px;font-size:12px}.guides summary{cursor:pointer;font-weight:600}.guides textarea{margin-top:10px}.drop{border:2px dashed var(--line-2);border-radius:var(--r-lg);background:var(--paper);text-align:center;color:var(--ink-2);justify-items:center;gap:12px;padding:40px 20px;transition:border-color .12s,background .12s;display:grid}.drop svg{color:var(--blue)}.drop.over{border-color:var(--blue);background:var(--blue-wash)}.drop-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.subs{gap:0;padding:6px 20px 14px}.sub-row,.mark-row{border-bottom:1px solid var(--line);align-items:center;gap:14px;padding:12px 0;display:flex}.sub-main,.mark-main{flex:1;gap:6px;min-width:0;display:grid}.found{flex-wrap:wrap;gap:6px;display:flex}.subs>p{margin-top:10px}.panel>.mark-row:last-child{border-bottom:0}.mark-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.mark-state{color:var(--ink-2);align-items:center;gap:8px;font-size:14px;display:inline-flex}.mark-state b{color:var(--ink);font-size:18px}.bar{background:var(--mist-2);border-radius:999px;height:8px;display:block;overflow:hidden}.bar>span{background:var(--blue);border-radius:999px;height:100%;transition:width .4s;display:block}.bar.full>span{background:var(--green)}.fail{color:var(--margin-rose);font-weight:600}.review-head{flex-wrap:wrap;align-items:flex-end;gap:20px;display:flex}.review-head .demo-head{flex:1;min-width:280px}.export-actions{flex-wrap:wrap;gap:10px;display:flex}.review-main{gap:14px;min-width:0;display:grid}.approve-bar{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.approve-bar>.small{flex:1;min-width:220px}.cmt-actions{flex-wrap:wrap;align-items:center;gap:14px;margin-top:2px;display:flex}.cmt-changed{color:var(--blue-ink);background:var(--blue-wash);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:600}.cmt-edit{min-height:90px;font-size:14px}body.export{background:var(--mist)}.export-wrap{max-width:1040px;padding:28px max(16px, env(safe-area-inset-right,0px)) 56px max(16px, env(safe-area-inset-left,0px));gap:18px;margin:0 auto;display:grid}.export-brand{align-items:baseline;gap:12px;font-size:18px;font-weight:700;display:flex}.export-brand span{color:var(--ink-3);font-size:14px;font-weight:500}.export-ai{border-radius:var(--r-md);background:var(--highlight-soft);padding:12px 14px;font-size:14.5px}.export-demo{color:var(--ink-3);text-align:center;margin-top:8px;font-size:12.5px}.export .jumpbar{position:static}@media (width<=640px){.logo-word{font-size:19px}.demo-bar-in{gap:8px}.stepper{min-width:0}.stepper li+li:before{width:8px;margin:0 2px}.stepper button{gap:6px;padding:4px;font-size:13px}}.drop-pair{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:16px;display:grid}.drop-small{align-content:center;padding:28px 20px}.drop.off{opacity:.55}@media (width<=860px){.drop-pair{grid-template-columns:minmax(0,1fr)}}.export-error{text-align:right;color:var(--margin-rose);flex-basis:100%;margin:0}.setup{gap:22px}.setup-top{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;display:flex}.setup-top p{color:var(--ink-2);margin:0}.opt-group{border:0;gap:10px;min-width:0;margin:0;padding:0;display:grid}.opt-group legend{margin-bottom:10px;padding:0;font-size:15px;font-weight:700}.opts{gap:10px;display:grid}.opts.two{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=700px){.opts.two{grid-template-columns:minmax(0,1fr)}}.opt{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:var(--paper);cursor:pointer;align-items:flex-start;gap:12px;padding:14px 16px;transition:border-color .12s,box-shadow .12s;display:flex;position:relative}.opt:hover{border-color:var(--ink-3)}.opt.on{border-color:var(--blue);box-shadow:0 0 0 3px color-mix(in srgb, var(--blue) 14%, transparent)}.opt.off{cursor:not-allowed;opacity:.55}.opt.off:hover{border-color:var(--line-2)}.opt input{opacity:0;pointer-events:none;position:absolute}.opt:has(input:focus-visible){outline:2px solid var(--blue);outline-offset:2px}.opt-dot{border:2px solid var(--line-2);background:var(--paper);border-radius:50%;flex:none;width:18px;height:18px;margin-top:2px}.opt.on .opt-dot{border-color:var(--blue);box-shadow:inset 0 0 0 3px var(--paper);background:var(--blue)}.opt-body{gap:3px;min-width:0;display:grid}.opt-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.opt-title .mono{font-family:var(--mono);font-size:14.5px}.effs{border:1px solid var(--line-2);border-radius:var(--r-md);background:var(--mist);flex-wrap:wrap;justify-self:start;gap:4px;padding:4px;display:inline-flex}.eff{border-radius:var(--r-sm);min-width:88px;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;justify-items:center;padding:8px 14px;font-size:14px;font-weight:600;display:grid}.eff small{color:var(--green);font-size:11px;font-weight:500}.eff:hover{background:var(--mist-2)}.eff.on{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-1), 0 0 0 1.5px var(--blue)}.switch{border:1.5px solid var(--line-2);border-radius:var(--r-md);background:var(--paper);cursor:pointer;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.switch.off{cursor:not-allowed;opacity:.6}.switch input{opacity:0;pointer-events:none;position:absolute}.switch-ui{background:var(--line-2);border-radius:999px;flex:none;width:40px;height:22px;margin-top:1px;transition:background .15s;position:relative}.switch-ui:after{content:"";width:16px;height:16px;box-shadow:var(--shadow-1);background:#fff;border-radius:50%;transition:transform .15s;position:absolute;top:3px;left:3px}.switch input:checked+.switch-ui{background:var(--blue)}.switch input:checked+.switch-ui:after{transform:translate(18px)}.switch input:focus-visible+.switch-ui{outline:2px solid var(--blue);outline-offset:2px}.switch-text{gap:4px;display:grid}.switch-title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.setup-used{border-radius:var(--r-md);background:var(--mist);color:var(--ink-2);margin:0;padding:10px 14px}.setup-used.unchecked{background:var(--amber-wash);color:var(--ink)}@media (width<=560px){.demo-bar-in{gap:10px}.stepper{gap:0}.stepper button{gap:6px;padding:4px 3px}.stepper li+li:before{width:8px;margin:0 2px}.stepper li.now .step-label{display:none}.step-dot{width:22px;height:22px;font-size:12px}.eff{flex:64px;min-width:0;padding:8px 10px}.effs{justify-self:stretch;display:flex}}.note-injection{border-radius:var(--r-md);background:var(--rose-wash);border-left:3px solid var(--margin-rose);margin:12px 18px 0;padding:10px 12px;font-size:14px}.note-injection p{margin:0}.note-injection ul{gap:4px;margin:6px 0 0;padding-left:18px;display:grid}.note-injection li span{color:var(--ink-2)}.note-injection code{white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink);margin-top:2px;font-size:12.5px;display:block}.ln-row.inj .tx{background:var(--rose-wash);outline:2px dashed color-mix(in srgb, var(--margin-rose) 70%, transparent);outline-offset:-2px}.pick-flag{background:var(--rose-wash);color:var(--margin-rose);vertical-align:1px;border-radius:999px;margin-left:8px;padding:1px 7px;font-size:11.5px;font-weight:700}.mark[data-reveal]:after{transition:transform .75s cubic-bezier(.6,0,.2,1) .15s;transform:skew(-8deg)scaleX(0)}.mark[data-reveal].in:after{transform:skew(-8deg)scaleX(1)}.mark-soft{white-space:normal}.mark-soft:after{background:var(--highlight-soft);height:.5em}[data-reveal=up]{opacity:0;transition:opacity .6s,transform .6s cubic-bezier(.2,.7,.2,1),box-shadow .16s;transform:translateY(18px)}[data-reveal=up].in{opacity:1;transform:none}[data-reveal=up]:nth-child(2){transition-delay:90ms}[data-reveal=up]:nth-child(3){transition-delay:.18s}[data-reveal=up]:nth-child(4){transition-delay:.27s}[data-reveal=up]:nth-child(5){transition-delay:.36s}.ed{background:var(--code-bg);font-family:var(--mono);font-variant-ligatures:none;grid-template-columns:40px minmax(0,1fr);font-size:12.5px;line-height:1.9;display:grid}.ed-gutter{text-align:right;color:var(--ink-3);-webkit-user-select:none;user-select:none;padding:14px 10px 14px 0}.ed-gutter span{display:block}.ed-gutter .miss{color:var(--margin-rose);font-weight:700}.ed-gutter .ok{color:var(--green);font-weight:700}.ed-area{min-width:0;position:relative}.ed-area:focus-within{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--blue) 35%, transparent)}.ed-back,.ed-input{font:inherit;line-height:inherit;white-space:pre;tab-size:2;letter-spacing:0;font-variant-ligatures:none;margin:0;padding:14px 14px 14px 2px}.ed-back{color:#0000;pointer-events:none;position:absolute;inset:0;overflow:hidden}.ed-line>span{z-index:0;position:relative}.ed-line.miss>span:after{content:"";background:var(--highlight);z-index:-1;transform-origin:0;border-radius:3px;animation:.65s cubic-bezier(.6,0,.2,1) .9s forwards sweep;position:absolute;inset:3px -6px 3px -4px;transform:scaleX(0)skew(-6deg)}.ed-sheet.touched .ed-line.miss>span:after{animation-duration:.38s;animation-delay:0s}.ed-input{resize:none;width:100%;color:var(--ink);caret-color:var(--blue);background:0 0;border:0;border-radius:0;outline:0;display:block;position:relative;overflow:auto hidden}.ed-input:focus-visible{outline:0}.ed-foot{border-top:1px solid var(--line);background:var(--mist);color:var(--ink-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:10px 14px;font-size:13px;display:flex}.ed-foot p{flex:240px;margin:0}.ed-foot b{color:var(--ink)}.ed-btns{gap:8px;display:flex}.ed-btns .btn-sm{height:32px;padding:0 12px;font-size:13.5px}.sheet-q b{color:var(--ink-2);display:inline-block}.sheet-q .pop{animation:.38s cubic-bezier(.2,.9,.3,1.4) pop}.sheet-q.full b{color:var(--green);background:var(--green-wash);border-radius:999px;padding:1px 8px}@keyframes pop{0%{transform:scale(.7)}70%{transform:scale(1.12)}to{transform:none}}.ed-sheet.touched .note{animation-duration:.26s}.pen-note{font-family:var(--hand);color:var(--pen);align-self:flex-end;margin-top:2px;font-size:34px;font-weight:700;line-height:1;animation:.52s cubic-bezier(.2,.9,.3,1.4) both pen-in;transform:rotate(-7deg)}@keyframes pen-in{0%{opacity:0;transform:rotate(-7deg)scale(1.6)}to{opacity:1;transform:rotate(-7deg)scale(1)}}.scrawl{color:var(--pen);font-family:var(--hand);transform-origin:0;align-items:center;gap:40px;margin-top:34px;padding-left:14px;font-weight:700;display:inline-flex;transform:rotate(-3deg)}.scrawl-num{white-space:nowrap;font-variant-numeric:tabular-nums;padding:4px 6px;font-size:clamp(46px,5vw,60px);line-height:1;position:relative}.scrawl-ring{pointer-events:none;width:calc(100% + 52px);max-width:none;height:calc(100% + 32px);position:absolute;top:-16px;left:-16px;overflow:visible}.scrawl-ring path{fill:none;stroke:var(--pen);stroke-width:3.2px;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1px}.scrawl.in .scrawl-ring path{animation:.9s cubic-bezier(.6,0,.2,1) 1.3s forwards ink}.scrawl-txt{max-width:8.5em;font-size:clamp(24px,2.4vw,30px);line-height:1.02}@keyframes ink{to{stroke-dashoffset:0}}.pipe{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--shadow-2);overflow:hidden}.pipe-tabs{border-bottom:1px solid var(--line);background:var(--mist);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.pipe-tab{border:0;border-right:1px solid var(--line);min-width:0;color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;background:0 0;align-items:center;gap:10px;padding:14px 16px;transition:background .16s,color .16s;display:flex;position:relative}.pipe-tab:last-child{border-right:0}.pipe-tab:hover{background:var(--mist-2)}.pipe-tab.on{background:var(--paper);color:var(--ink);box-shadow:inset 0 -2px 0 var(--blue)}.pipe-tab:not(.on) .step-n{filter:saturate(.4);opacity:.75}.pipe-t{min-width:0;line-height:1.25;display:grid}.pipe-t b{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.pipe-t small{color:var(--ink-3);white-space:nowrap;font-size:12px}.pipe-timer{background:var(--highlight);z-index:1;width:0;height:2px;animation:linear forwards timer;position:absolute;bottom:0;left:0}@keyframes timer{to{width:100%}}.pipe-stage{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:36px;min-height:330px;padding:32px;animation:.42s cubic-bezier(.2,.7,.2,1) both rise;display:grid}.pipe-copy h3{letter-spacing:-.025em;margin-top:6px;font-size:28px}.pipe-copy p{color:var(--ink-2);margin-top:10px;font-size:16px}.pipe-ctl{margin-top:18px;font-size:13.5px}.pipe-visual{border:1px solid var(--line);border-radius:var(--r-md);background-color:var(--code-bg);background-image:linear-gradient(to right, var(--grid-blue) 1px, transparent 1px), linear-gradient(var(--grid-blue) 1px, transparent 1px);background-size:16px 16px;align-content:center;min-height:318px;padding:22px;display:grid}@media (width<=900px){.pipe-tabs{scrollbar-width:none;grid-template-columns:repeat(5,minmax(150px,1fr));overflow-x:auto}.pipe-stage{padding:22px var(--gutter);grid-template-columns:1fr;gap:20px}.pipe-visual{padding:16px}}.pv{gap:8px;font-size:14px;display:grid}.pv [style*=--d]{opacity:0;animation:pv-in .45s cubic-bezier(.2, .7, .2, 1) var(--d) forwards}@keyframes pv-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.pv-label{color:var(--ink-3);margin:6px 0 0;font-size:12.5px;font-weight:600}.pv-row{border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line);font-family:var(--mono);align-items:center;gap:10px;padding:7px 12px;font-size:13px;display:flex}.pv-row.ind{margin-left:26px}.pv-row:first-child .pv-file{font-weight:700}.pv-file:before{content:"";border:1.5px solid var(--ink-3);vertical-align:-1px;border-radius:2px;width:9px;height:11px;margin-right:8px;display:inline-block}.pv-row:first-child .pv-file:before{background:var(--highlight-soft);border-color:var(--ink-2);border-radius:2px 2px 3px 3px;width:12px;height:9px}.pv-chip{font-family:var(--font);background:var(--blue-wash);color:var(--blue-ink);border-radius:999px;margin-left:auto;padding:2px 9px;font-size:12px;font-weight:600}.pv-chip.alt{background:var(--highlight-soft);color:var(--ink);margin-left:0}.pv-note{font-family:var(--font);background:0 0;border-style:dashed}.pv-code{border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:10px 12px;font-size:13px}.pv-hit{animation:hit .38s var(--h) forwards;border-radius:3px}@keyframes hit{to{background:var(--highlight)}}.pv-tag{background:var(--blue-wash);color:var(--blue-ink);border-radius:4px;padding:0 4px;font-weight:700;display:inline-block}.pv-lock{border-radius:var(--r-sm);background:var(--green-wash);color:var(--green);margin:6px 0 0;padding:8px 12px;font-size:13px;font-weight:600}.pv-item{border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:9px 12px;display:grid}.pv-item b{font-family:var(--mono);font-size:12.5px}.pv-ev{color:var(--ink-3);background:var(--mist);border-radius:4px;padding:1px 6px;font-size:12px}.pv-tick[style*=--d]{animation-name:tick-in}@keyframes tick-in{0%{opacity:0;transform:scale(.3)}70%{transform:scale(1.25)}to{opacity:1;transform:none}}.pv-meta{color:var(--ink-3);margin:8px 0 0;font-size:12.5px}.pv-fb{border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--margin-rose);margin:0;padding:10px 12px;font-size:13.5px}.pv-fb code,.pv-q code{background:var(--mist-2);border-radius:4px;padding:1px 4px;font-size:12px}.pv-dims{flex-wrap:wrap;gap:6px;display:flex}.pv-dim{background:var(--mist-2);color:var(--ink-3);animation:dim-on .26s var(--h) forwards;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600}@keyframes dim-on{to{background:var(--blue-wash);color:var(--blue-ink)}}.pv-hall{gap:4px;display:grid}.pv-h{color:var(--ink-2);align-items:center;gap:8px;font-size:13px;display:flex}.pv-h .tick{font-style:normal}.pv-stamp{background:var(--mint);color:var(--ink);border-radius:999px;justify-self:start;margin-top:4px;padding:5px 12px;font-size:12.5px;font-weight:600}.pv-q{border-radius:var(--r-sm);background:var(--paper);border:1px solid var(--line);align-items:center;gap:8px;padding:8px 12px;font-size:13.5px;display:flex}.pv-q.muted{opacity:.6}.pv-q b{font-family:var(--mono);font-size:12.5px}.pv-who{font-family:var(--mono);color:var(--ink-3);margin-left:auto;font-size:12px}.pv-ok{color:var(--green);background:var(--green-wash);border-radius:999px;padding:1px 8px;font-size:12px;font-weight:700}.pv-actions{margin-top:4px;position:relative}.pv-approve{pointer-events:none;animation:.32s 3.1s press}@keyframes press{50%{filter:brightness(.9);transform:scale(.93)}}.pv-cursor{width:22px;height:22px;fill:var(--ink);stroke:var(--paper);stroke-width:1.5px;opacity:0;animation:1s cubic-bezier(.4,0,.2,1) 2s forwards cursor;position:absolute;top:16px;left:150px}@keyframes cursor{0%{opacity:0;transform:translate(110px,70px)}20%{opacity:1}to{opacity:1;transform:none}}.pv-toast{border-radius:var(--r-sm);background:var(--green-wash);color:var(--green);margin:4px 0 0;padding:9px 12px;font-size:13px;font-weight:600}.audit-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.audit-title{letter-spacing:-.02em;font-size:22px;font-weight:700}.audit-you{font-family:var(--hand);color:#ffe066;margin-left:4px;font-size:34px;display:inline-block;transform:rotate(-4deg)}.audit-replay{border:1px solid color-mix(in srgb, var(--paper) 30%, transparent);color:inherit;font:inherit;cursor:pointer;background:0 0;border-radius:999px;padding:4px 12px;font-size:13px}.audit-replay:hover{background:color-mix(in srgb, var(--paper) 10%, transparent)}.audit-steps{counter-reset:a;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:16px 0 0;padding:0;list-style:none;display:grid}.audit-steps li{counter-increment:a;border-radius:var(--r-sm);background:color-mix(in srgb, var(--paper) 7%, transparent);color:color-mix(in srgb, var(--paper) 55%, transparent);padding:6px 10px;font-size:13px;transition:background .3s,color .3s}.audit-steps li:before{content:counter(a) ". ";font-weight:700}.audit-steps li.on{background:var(--highlight);color:#0b2350}.audit-steps li.past{color:color-mix(in srgb, var(--paper) 85%, transparent)}.waffle{grid-template-columns:repeat(20,minmax(0,1fr));gap:4px;margin:20px 0 22px;display:grid;position:relative}.cell{aspect-ratio:1;background:color-mix(in srgb, var(--paper) 10%, transparent);transition:background .26s,opacity .4s,box-shadow .3s;transition-delay:calc(var(--i) * 13ms);border-radius:3px;position:relative}.audit:not(.p0) .cell{background:color-mix(in srgb, var(--paper) 42%, transparent)}.audit:is(.p2,.p3,.p4) .cell.amb{background:#f0a73a}.audit:is(.p2,.p3,.p4) .cell.red{background:var(--margin-rose)}.p3 .cell:not(.amb),.p4 .cell:not(.red){opacity:.3;transition-delay:0s}.p3 .cell.amb{box-shadow:0 0 0 2px color-mix(in srgb, var(--paper) 90%, transparent);transition-delay:calc(var(--i) * 4ms)}.p4 .cell.red{animation:1.2s ease-in-out .3s 3 glow;box-shadow:0 0 0 2px #ffe066}@keyframes glow{50%{box-shadow:0 0 0 2px #ffe066,0 0 14px 3px #ffe066bf}}.waffle-scan{opacity:0;pointer-events:none;background:linear-gradient(#0000,#ffe066,#0000);border-radius:2px;width:3px;position:absolute;top:-6px;bottom:-6px;left:0}.p2 .waffle-scan{animation:1.5s cubic-bezier(.5,0,.5,1) forwards scan}@keyframes scan{0%{opacity:1;left:0}95%{opacity:1}to{opacity:0;left:100%}}.audit .split-fill{transition:none}@media (width<=560px){.waffle{grid-template-columns:repeat(10,minmax(0,1fr))}.audit-steps{grid-template-columns:1fr}}.pubs{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.pub{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);flex-direction:column;gap:10px;padding:24px;display:flex}.pub.in:hover{box-shadow:var(--shadow-2);transform:translateY(-3px)}.pub-top{justify-content:space-between;align-items:center;display:flex}.pub-year{font-family:var(--hand);color:var(--pen);font-size:24px;font-weight:700;line-height:1;transform:rotate(-4deg)}.pub h3{font-size:18px;line-height:1.3}.pub-alt{color:var(--ink-3);margin:0;font-size:14px;font-style:italic}.pub-meta{color:var(--ink-2);margin:0;font-size:14px}.pub-link{margin-top:auto;padding-top:6px;font-weight:600}@media (width<=900px){.pubs{grid-template-columns:1fr}}.qc{padding:14px 0 12px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000);mask-image:linear-gradient(90deg,#0000,#000 5% 95%,#0000)}.qc-track{gap:20px;width:max-content;padding-right:20px;animation:52s linear infinite marquee;display:flex}.qc:hover .qc-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-25%)}}.qc-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);width:340px;box-shadow:var(--shadow-1);flex-direction:column;flex:none;gap:12px;margin:0;padding:30px 24px 20px;display:flex;position:relative}.qc-card.hl{background:var(--highlight-soft);border-color:#0000}.qc-mark{font-family:var(--hand);color:var(--pen);font-size:62px;font-weight:700;line-height:1;position:absolute;top:-4px;left:18px}.qc-card blockquote{color:var(--ink);flex:1;margin:0;font-size:17px;line-height:1.5}.qc-card figcaption{color:var(--ink-3);font-size:13px}.nb{border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);background-color:var(--paper);background-image:repeating-linear-gradient(#0000 0 31px,#1f5bff29 31px 32px);background-position:0 20px;padding:20px 0 32px;position:relative;overflow:hidden}.nb:before{content:"";background:var(--margin-rose);opacity:.75;width:2px;position:absolute;top:0;bottom:0;left:58%}.nb-head,.nb-row{grid-template-columns:58% 42%;display:grid}.nb-head{letter-spacing:.06em;text-transform:uppercase;height:32px;color:var(--ink-3);align-items:end;padding:0 0 4px;font-size:12.5px;font-weight:700}.nb-head>span{padding:0 28px}.nb-head-fix{font-family:var(--hand);letter-spacing:0;text-transform:none;color:var(--pen);font-size:26px;line-height:1}.nb-row{align-items:start;margin-top:32px}.nb-quote{color:var(--ink-2);margin:0;padding:0 28px;font-size:16px;font-style:italic;line-height:32px;transition:color .6s .9s}.nb-strike{background:linear-gradient(var(--pen), var(--pen)) no-repeat 0 60% / 0% 2.5px;transition:background-size 1.1s cubic-bezier(.6,0,.2,1) .25s}.nb-row.in .nb-quote{color:var(--ink-3)}.nb-row.in .nb-strike{background-size:100% 2.5px}.nb-fix{font-family:var(--hand);color:var(--pen);transform-origin:0 0;clip-path:inset(0 100% 0 0);margin:0;padding:0 28px;font-size:25px;font-weight:700;line-height:32px;transition:clip-path 1.3s cubic-bezier(.5,0,.3,1) 1.25s;transform:rotate(-1.2deg)}.nb-row.in .nb-fix{clip-path:inset(0 -10px 0 0)}@media (width<=760px){.nb:before{left:30px}.nb-head{display:none}.nb-head,.nb-row{grid-template-columns:1fr}.nb-quote,.nb-fix{padding:0 18px 0 46px}.nb-row{margin-top:32px}}.fa{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:28px;display:grid}.fa-qs{gap:10px;display:grid}.fa-q{border:1px solid var(--line);border-radius:var(--r-md);background:var(--paper);color:var(--ink-3);font:inherit;text-align:left;cursor:pointer;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;padding:14px 16px;transition:border-color .2s,box-shadow .2s,color .2s;display:grid;position:relative;overflow:hidden}.fa-n{background:var(--mist-2);border-radius:8px;grid-row:span 2;place-items:center;width:30px;height:30px;font-weight:700;display:grid}.fa-q b{font-size:17px}.fa-q small{font-size:12.5px}.fa-q.on{color:var(--ink);border-color:var(--blue);box-shadow:var(--shadow-1)}.fa-q.on .fa-n{background:var(--highlight);color:#0b2350}.fa-timer{background:var(--highlight);width:0;height:3px;animation:linear forwards timer;position:absolute;bottom:0;left:0}.fa-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.fa-code{background:var(--code-bg);font-family:var(--mono);border-bottom:2px solid var(--margin-rose);gap:14px;padding:14px 18px;font-size:13.5px;display:flex}.fa-code .ln{color:var(--margin-rose);font-weight:700}.fa-line{z-index:0;white-space:pre;position:relative}.fa-line:after{content:"";z-index:-1;background:var(--highlight);transform-origin:0;border-radius:3px;transition:transform .45s cubic-bezier(.6,0,.2,1);position:absolute;inset:1px -6px 1px -4px;transform:scaleX(0)skew(-6deg)}.fa-line.hot:after{transform:scaleX(1)skew(-6deg)}.fa-cmt{border:1px solid var(--line);border-left:3px solid var(--margin-rose);border-radius:var(--r-md);box-shadow:var(--shadow-1);margin:18px;padding:14px 16px 16px;position:relative}.fa-head{color:var(--ink-3);align-items:center;gap:8px;font-size:12.5px;display:flex}.fa-head b{color:var(--ink)}.fa-cmt p{margin:8px 0 0;font-size:16px;line-height:1.75}.fa-cmt code{background:var(--mist-2);border-radius:4px;padding:1px 5px;font-size:13px}.fa-part{color:var(--ink-3);border-radius:3px;transition:background .3s,color .3s,box-shadow .3s}.fa-part.on{color:#0b2350;background:var(--highlight);box-shadow:0 0 0 2px var(--highlight)}.fa-hand{font-family:var(--hand);color:var(--pen);font-size:26px;font-weight:700;line-height:1;animation:.5s cubic-bezier(.2,.9,.3,1.4) both pen-in;position:absolute;top:6px;right:14px}@media (width<=860px){.fa{grid-template-columns:1fr}}.mk{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);overflow:hidden}.mk-stage{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:32px;min-height:300px;padding:32px;animation:.42s cubic-bezier(.2,.7,.2,1) both rise;display:grid}.mk-visual{border:1px solid var(--line);border-radius:var(--r-md);background-color:var(--code-bg);background-image:linear-gradient(to right, var(--grid-blue) 1px, transparent 1px), linear-gradient(var(--grid-blue) 1px, transparent 1px);background-size:16px 16px;place-items:center;min-height:220px;padding:32px 24px;display:grid}.mk-card{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--margin-rose);border-radius:var(--r-md);width:min(100%,390px);box-shadow:var(--shadow-1);padding:18px;font-size:14.5px;position:relative}.mk-card p{margin:0}.mk-card code{background:var(--mist-2);border-radius:4px;padding:1px 4px;font-size:12.5px}.mk-stamp{border:2.5px solid var(--amber);background:var(--amber-wash);color:var(--amber);letter-spacing:.08em;text-transform:uppercase;border-radius:6px;padding:4px 12px;font-size:13px;font-weight:800;animation:.52s cubic-bezier(.2,.9,.3,1.4) .6s both stamp;position:absolute;top:-16px;right:-12px}@keyframes stamp{0%{opacity:0;transform:rotate(8deg)scale(2.4)}to{opacity:1;transform:rotate(8deg)scale(1)}}.mk-blur{animation:.7s .5s forwards blurout}@keyframes blurout{to{filter:blur(5px);opacity:.55}}.mk-lock{color:var(--ink);opacity:0;justify-content:center;align-items:center;gap:8px;font-weight:700;animation:.4s 1.1s forwards pv-in;display:flex;position:absolute;inset:0}.mk-lock svg{fill:none;stroke:currentColor;stroke-width:2px;width:20px;height:20px}.mk-ai{background:var(--blue-wash);color:var(--blue-ink);border-radius:999px;margin-bottom:10px;padding:3px 10px;font-size:12px;font-weight:700;animation:.4s .3s both pv-in;display:inline-block}.mk-query{border:1px solid var(--blue);color:var(--blue);border-radius:6px;margin-top:12px;padding:4px 10px;font-size:13px;font-weight:600;animation:.32s 1.9s press;display:inline-flex;position:relative}.mk-cursor{width:22px;height:22px;fill:var(--ink);stroke:#fff;stroke-width:1.5px;opacity:0;animation:.9s cubic-bezier(.4,0,.2,1) .9s forwards cursor;position:absolute;top:55%;left:70%}.mk-card.mk-mark{border-left-width:1px}.mk-cap{color:var(--ink-3);font-size:13px;font-weight:600}.mk-bar{border-radius:8px;height:36px;margin-top:10px;font-size:12.5px;font-weight:700;display:flex;overflow:hidden}.mk-rest{background:var(--mist-2);color:var(--ink-3);flex:9;place-items:center;display:grid}.mk-prac{background:var(--margin-rose);color:#fff;transform-origin:0;flex:1;place-items:center;animation:.7s cubic-bezier(.2,.7,.2,1) .4s both grow;display:grid}@keyframes grow{0%{transform:scaleX(0)}}.mk-hand{text-align:right;font-family:var(--hand);color:var(--pen);margin-top:8px;font-size:24px;font-weight:700;animation:.5s .9s both pen-in}.mk-n{font-family:var(--hand);color:var(--pen);font-size:22px;font-weight:700}.mk-copy h3{letter-spacing:-.025em;margin-top:4px;font-size:28px}.mk-copy p{color:var(--ink-2);margin-top:10px;font-size:16px}.mk-nav{border-top:1px solid var(--line);background:var(--mist);justify-content:center;align-items:center;gap:16px;padding:12px;display:flex}.mk-arrow{border:1px solid var(--line-2);background:var(--paper);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:16px}.mk-arrow:hover{border-color:var(--ink-3)}.dots{gap:8px;display:flex}.dots button{background:var(--line-2);cursor:pointer;border:0;border-radius:999px;width:9px;height:9px;padding:0;transition:width .2s,background .2s}.dots button.on{background:var(--blue);width:26px}@media (width<=860px){.mk-stage{padding:20px var(--gutter);grid-template-columns:1fr;gap:18px}}.lf{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-2);grid-template-columns:1fr minmax(48px,.7fr) 1fr minmax(48px,.7fr) 1fr;align-items:start;gap:8px;padding:32px;display:grid}.lf-node{text-align:center;opacity:0;justify-items:center;gap:6px;transition:opacity .5s,transform .5s cubic-bezier(.2,.7,.2,1);display:grid;transform:translateY(10px)}.lf.in .lf-node{opacity:1;transform:none}.lf.in .lf-node:nth-child(3){transition-delay:.3s}.lf.in .lf-node:nth-child(5){transition-delay:.6s}.lf-icon{background:var(--mist-2);width:64px;height:64px;color:var(--ink);box-shadow:var(--shadow-1);border-radius:16px;place-items:center;font-size:20px;font-weight:700;display:grid}.lf-icon.mg{background:var(--paper);border:1px solid var(--line);width:auto;padding:0 16px}.lf-icon.up{background:var(--green-wash);color:var(--green)}.lf-node b{font-size:16px}.lf-node small{max-width:15em;color:var(--ink-3);font-size:13px}.lf-lane{background:repeating-linear-gradient(to right, var(--line-2) 0 6px, transparent 6px 12px);height:2px;margin-top:31px;position:relative}.lf-file{background:var(--highlight);color:#0b2350;font-family:var(--mono);box-shadow:var(--shadow-1);opacity:0;border-radius:5px;padding:3px 7px;font-size:11.5px;font-weight:700;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.lf.in .lf-file{animation:2.6s ease-in-out infinite travel}.lf.in .f4{background:var(--blue-wash);color:var(--blue-ink);animation-delay:1.3s}.lf.in .f5{background:var(--green-wash);color:var(--green);animation-delay:1.9s}@keyframes travel{0%{opacity:0;left:0}12%{opacity:1}88%{opacity:1}to{opacity:0;left:100%}}.lf-alt{text-align:center;color:var(--ink-2);margin-top:18px;font-size:15px}.lf-alt a{font-weight:600}@media (width<=760px){.lf{padding:24px var(--gutter);grid-template-columns:1fr}.lf-lane{background:repeating-linear-gradient(to bottom, var(--line-2) 0 6px, transparent 6px 12px);width:2px;height:56px;margin:4px auto}.lf-file{top:0;left:50%}@keyframes travel{0%{opacity:0;top:0}12%{opacity:1}88%{opacity:1}to{opacity:0;top:100%}}}@media (prefers-reduced-motion:reduce){.qc{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.qc-track{animation:none!important}.lf-file{display:none}}.tick.amber{background:var(--amber-wash);color:var(--amber)}.mk-card.mk-code{border-left-color:var(--margin-rose)}.mk-code code{background:var(--rose-wash);outline:2px dashed color-mix(in srgb, var(--margin-rose) 70%, transparent);outline-offset:-2px;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px;padding:8px 10px;font-size:12.5px;animation:.4s .2s both pv-in;display:block}.mk-code .ln{color:var(--margin-rose);margin-right:10px;font-weight:700}.mk-stamp.rose{border-color:var(--margin-rose);background:var(--rose-wash);color:var(--margin-rose)}
