@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(./geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(./geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations")}:root{--bg:#fff;--bg-subtle:#fafafa;--bg-muted:#f3f3f3;--line:#ebebeb;--line-strong:#d9d9d9;--ink:#171717;--ink-2:#404040;--ink-3:#5c5c5c;--ink-4:#737373;--accent:#d6008f;--accent-ink:#b0007a;--accent-soft:#fdf0f7;--stroke:#171717;--shell:#fff;--key:#fff;--screen-off:#111;--led-off:#e5e5e5;--led-on:#22c55e;--led-amber:#f59e0b;--led-error:#ef4444;--error-ink:#b42318;--error-soft:#fef3f2;--error-line:#fecdca;--code-gutter:#a3a3a3;--syn-keyword:#a626a4;--syn-string:#2b7a3b;--syn-number:#b45309;--syn-comment:#8a8a8a;--syn-call:#2f5fd0;--syn-type:#0f766e;--syn-nds:#b0007a;--sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"Geist Mono", ui-monospace, "SFMono-Regular", Menlo, monospace;--radius:12px;--radius-sm:8px;--px:1.5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:80px}body{background:var(--bg);color:var(--ink);font:400 1rem/1.6 var(--sans);font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;overflow-x:clip}img,svg,canvas{max-width:100%;display:block}a{color:inherit}button{font:inherit;color:inherit}code,kbd,pre{font-family:var(--mono)}:where(p,li,dd) code{color:var(--ink);font-size:.875em}h1,h2,h3{text-wrap:balance;margin:0}p{margin:0}:focus-visible{outline:2px solid var(--ink);outline-offset:2px;border-radius:6px}.skip-link{z-index:30;background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:8px 14px;position:absolute;top:-48px;left:16px}.skip-link:focus{top:12px}.icon{flex:none;width:16px;height:16px}.label{font:500 .75rem/1.2 var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-4)}.frame{border-inline:1px solid var(--line);max-width:1200px;margin-inline:auto}.wrap{padding-inline:clamp(20px,4vw,48px)}.hero,.section{border-bottom:1px solid var(--line);position:relative}.hero:before,.hero:after,.section:before,.section:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(var(--ink-4), var(--ink-4)) center / 100% 1px no-repeat, linear-gradient(var(--ink-4), var(--ink-4)) center / 1px 100% no-repeat;width:11px;height:11px;position:absolute;bottom:-6px}.hero:before,.section:before{left:-6px}.hero:after,.section:after{right:-6px}.nav{top:env(safe-area-inset-top,0px);z-index:20;-webkit-backdrop-filter:saturate(1.8)blur(12px);border-bottom:1px solid var(--line);background:#ffffffd9;position:sticky}.nav-inner{align-items:center;gap:24px;max-width:1200px;height:64px;margin-inline:auto;padding-inline:clamp(20px,4vw,48px);display:flex}.brand{color:var(--ink);letter-spacing:-.03em;align-items:center;gap:8px;font-size:1.0625rem;font-weight:600;text-decoration:none;display:inline-flex}.brand-mark{width:22px;height:22px}.nav-links{gap:2px;margin-inline-start:auto;display:flex}.nav-links a{color:var(--ink-3);border-radius:999px;padding:6px 12px;font-size:.875rem;text-decoration:none;transition:color .15s,background .15s}.nav-links a:hover{color:var(--ink);background:var(--bg-muted)}.button{border:1px solid var(--line-strong);background:var(--bg);height:44px;color:var(--ink);font:500 .9375rem/1 var(--sans);letter-spacing:-.01em;white-space:nowrap;cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:8px;padding:0 20px;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .15s;display:inline-flex}.button:hover{background:var(--bg-subtle);border-color:#c4c4c4}.button:active{transform:scale(.98)}.button-primary{background:var(--ink);border-color:var(--ink);color:#fff}.button-primary:hover{background:#383838;border-color:#383838}.button-small{gap:6px;height:32px;padding:0 12px;font-size:.8125rem}.button-small .icon{width:15px;height:15px}.button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.button[disabled]{opacity:.5;cursor:progress}.chip{border:1px solid var(--line-strong);background:var(--bg);height:30px;color:var(--ink-2);font:500 .8125rem/1 var(--sans);cursor:pointer;white-space:nowrap;border-radius:999px;align-items:center;padding:0 12px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.chip:hover{color:var(--ink);border-color:#c4c4c4}.chip[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}.chip[disabled]{opacity:.45;cursor:not-allowed}kbd{border:1px solid var(--line-strong);background:var(--bg-subtle);min-width:1.7em;box-shadow:inset 0 -1px 0 var(--line-strong);color:var(--ink-2);font:500 .75rem/1.5 var(--mono);text-align:center;border-radius:6px;padding:1px 6px;display:inline-block}.hero-grid{grid-template:"copy device""carts device"1fr/minmax(0,1fr) auto;gap:48px clamp(32px,5vw,64px);padding-block:clamp(48px,7vw,80px);display:grid}.hero-copy{grid-area:copy;align-self:end;max-width:560px;container-type:inline-size}.hero-copy h1{font:600 clamp(2.25rem, 11.4cqi, 4.25rem)/1.02 var(--sans);letter-spacing:-.055em}.lede{max-width:30em;color:var(--ink-3);letter-spacing:-.01em;margin-top:24px;font-size:1.1875rem;line-height:1.55}.lede code{background:var(--bg-muted);border-radius:6px;padding:1px 6px;font-size:.85em}.cta-row{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.hero-carts{grid-area:carts;max-width:560px}.hero-device{flex-direction:column;grid-area:device;align-items:center;gap:16px;min-width:0;display:flex}.rack{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.cart{cursor:pointer;text-align:left;width:100%;color:var(--ink);background:0 0;border:0;gap:10px;padding:0;display:grid}.cart-shell{aspect-ratio:33/35;padding:20% 11% 11%;transition:transform .2s cubic-bezier(.2,.8,.2,1);display:block;position:relative}.cart-outline{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.cart-outline .cart-body{fill:var(--bg);stroke:var(--line-strong);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round;transition:stroke .15s}.cart-label{aspect-ratio:4/3;width:100%;height:auto;image-rendering:pixelated;border:1px solid var(--line-strong);background:var(--screen-off);border-radius:3px;position:relative}.cart-title{font:500 .875rem/1.3 var(--sans);letter-spacing:-.01em}.cart-state{font:400 .75rem/1.4 var(--mono);color:var(--ink-4);margin-top:2px;display:block}.cart:hover .cart-shell{transform:translateY(-3px)}.cart:hover .cart-body{stroke:#a3a3a3}.cart[aria-pressed=true] .cart-body{stroke:var(--ink);stroke-width:1.5px}.cart[aria-pressed=true] .cart-label{border-color:var(--ink)}.cart[aria-pressed=true] .cart-state{color:var(--accent-ink)}.cart:focus-visible{outline:none}.cart:focus-visible .cart-shell{outline:2px solid var(--ink);outline-offset:4px;border-radius:8px}.cart-flight{z-index:40;pointer-events:none;border:1px solid var(--ink);image-rendering:pixelated;margin:0;position:fixed}.hero-device{--ds-w:550;--ds-lid:270;--ds-hinge:36;--ds-base:270;--ds-screen-x:147;--ds-top-y:41;--ds-bottom-y:28}.ds{--u:calc(var(--px) * 1px);width:calc(var(--ds-w) * var(--u));perspective:calc(2400 * var(--u));-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;outline:none;transition:transform 1.1s cubic-bezier(.25,1.25,.45,1);position:relative}.ds[data-lid=closed]{transform:translateY(calc((var(--ds-base) - 2 * var(--ds-lid)) / 2 * var(--u)))}.ds-lid,.ds-hinge,.ds-base{position:relative}.ds-lid{z-index:2;height:calc(var(--ds-lid) * var(--u));transform-origin:50% calc(100% + var(--ds-hinge) * .5 * var(--u));transform-style:preserve-3d;transition:transform 1.1s cubic-bezier(.25,1.25,.45,1)}.ds[data-lid=closed] .ds-lid{cursor:pointer;transform:rotateX(-180deg)}.ds-lid-face,.ds-lid-back{backface-visibility:hidden;position:absolute;inset:0}.ds-lid-back{transform:rotateX(180deg)}.ds-hinge{z-index:1;height:calc(var(--ds-hinge) * var(--u));cursor:pointer}.ds-base{height:calc(var(--ds-base) * var(--u))}.ds-art{fill:none;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.ds-base>.ds-art{top:calc(var(--ds-hinge) * -.5 * var(--u));height:calc((var(--ds-base) + var(--ds-hinge) * .5) * var(--u))}.ds[data-layout=wide] .ds-art-compact,.ds[data-layout=compact] .ds-art-wide{display:none}.ds-art *{vector-effect:non-scaling-stroke}.ds-art .shell{fill:var(--shell)}.ds-art .edge,.ds-art .detail,.ds-art .hint{stroke:var(--stroke);stroke-linecap:round;stroke-linejoin:round}.ds-art .edge{stroke-width:1.5px}.ds-art .detail{stroke-width:1px}.ds-art .hint{stroke-width:1px;stroke:var(--line-strong)}.ds-art text{fill:var(--stroke);font-family:var(--sans);text-anchor:middle;font-weight:600}.ds-art .key-note{fill:var(--ink-3);font-family:var(--mono);letter-spacing:.04em;text-anchor:start;font-weight:500}.ds-art .wordmark{letter-spacing:-.04em}.ds-art .mic,.ds-art .mark{fill:var(--stroke)}.ds-art .focus-ring{stroke:var(--ink);stroke-width:2px;opacity:0}.ds:focus-visible:not([data-pointer-focus]) .focus-ring{opacity:1}.ds-art [data-button],.ds-art .ds-dpad{cursor:pointer;touch-action:none}.ds-art .hit{pointer-events:all}.ds-art .detail,.ds-art .hint,.ds-art .mic,.ds-art .led{pointer-events:none}.ds-art .arm-face,.ds-art .knuckle-face{fill:#0000;transition:fill 70ms}.ds-art .key-face{transition:fill 70ms}.key-cap,.dpad-cap{transition:transform 70ms ease-out}.dpad-cap{transform:translate(calc(var(--dpad-x,0) * 1.5px), calc(var(--dpad-y,0) * 1.5px))}.ds-key[data-pressed] .key-cap{transform:translateY(2px)}.ds-art [data-pressed] .key-face,.ds-art [data-pressed] .arm-face,.ds-art [data-pressed] .knuckle-face{fill:var(--stroke)}.ds-art .key-cap text{transition:fill 70ms}.ds-art [data-pressed] .key-cap text,.ds-art .ds-knuckle[data-pressed] text{fill:var(--shell)}@media (hover:hover){.ds-art .ds-key:not([data-pressed]):hover .key-face,.ds-art .dpad-arm:not([data-pressed]):hover .arm-face,.ds-art .ds-knuckle:not([data-pressed]):hover .knuckle-face{fill:var(--bg-muted)}}.ds-art .led{fill:var(--led-off);stroke:var(--stroke);stroke-width:1px;transition:fill .3s}.ds[data-power=on] [data-led=power]{fill:var(--led-on)}.ds[data-power=sleep] [data-led=power]{animation:2.4s steps(12,end) infinite led-sleep}.ds[data-power=error] [data-led=power]{fill:var(--led-error)}.ds[data-sound=on] [data-led=charge]{fill:var(--led-amber)}@keyframes led-sleep{0%,to{fill:var(--led-off)}50%{fill:var(--led-on)}}.ds-screen{left:calc(var(--ds-screen-x) * var(--u));width:calc(256 * var(--u));height:calc(192 * var(--u));background:var(--screen-off);position:absolute;overflow:hidden}.ds-screen-top{top:calc(var(--ds-top-y) * var(--u))}.ds-screen-bottom{top:calc(var(--ds-bottom-y) * var(--u))}.ds-screen canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}.ds-screen-bottom canvas{cursor:crosshair;touch-action:none}.console-bar,.console-help,.console-error{width:100%;max-width:calc(var(--ds-w) * var(--px) * 1px + 24px)}.console-bar{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin-top:10px;padding:10px 10px 10px 16px;display:flex}.console-now{letter-spacing:-.01em;align-items:center;gap:10px;min-width:0;font-size:.9375rem;font-weight:500;display:flex}.console-now span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.console-dot{background:var(--led-off);border-radius:50%;flex:none;width:8px;height:8px}.ds-host-on .console-dot{background:var(--led-on)}.console-stats{font-variant-numeric:tabular-nums;gap:20px;margin:0;display:flex}.console-stats div{gap:2px;display:grid}.console-stats dt{font:500 .6875rem/1 var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-4)}.console-stats dd{font:500 .9375rem/1.2 var(--mono);min-width:3.4em;margin:0}.console-stats small{color:var(--ink-4);margin-inline-start:2px;font-size:.75em}.console-actions{flex-wrap:wrap;gap:6px;display:flex}.console-help{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;padding-inline:4px;display:flex}.controls{color:var(--ink-3);flex-wrap:wrap;gap:6px 16px;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.controls li{align-items:center;gap:6px;display:inline-flex}.controls b{color:var(--ink);font-weight:600}.keyboard-hint{color:var(--ink-4);font-size:.8125rem}.ds-host-keyboard .keyboard-hint{color:var(--accent-ink)}.console-error{border-radius:var(--radius-sm);border:1px solid var(--error-line);background:var(--error-soft);color:var(--error-ink);font:400 .8125rem/1.5 var(--mono);white-space:pre-wrap;overflow-wrap:anywhere;padding:12px 16px}.section{padding-block:clamp(72px,9vw,112px)}.section-head{gap:16px;max-width:680px;margin-bottom:clamp(32px,4vw,56px);display:grid}.section-head h2{font:600 clamp(2rem, 3.5vw, 3rem)/1.05 var(--sans);letter-spacing:-.05em}.section-head p{color:var(--ink-3);max-width:60ch;font-size:1.0625rem;line-height:1.6}.ide{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);overflow:hidden}.ide-bar{border-bottom:1px solid var(--line);background:var(--bg-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;min-height:48px;padding:0 16px 0 8px;display:flex}.ide-tabs{align-self:stretch;display:flex}.ide-tab{cursor:pointer;font:400 .8125rem/1 var(--mono);color:var(--ink-4);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 12px;transition:color .15s}.ide-tab:hover{color:var(--ink)}.ide-tab[aria-selected=true]{color:var(--ink);border-bottom-color:var(--ink)}.ide-path{font:400 .75rem/1 var(--mono);color:var(--ink-4);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ide-body{grid-template-columns:minmax(0,1fr) 320px;display:grid}.code{background:var(--bg);height:760px;font:400 .8125rem/1.65 var(--mono);tab-size:2;grid-template-columns:auto minmax(0,1fr);display:grid;position:relative}.code-gutter{text-align:right;color:var(--code-gutter);white-space:pre;border-right:1px solid var(--line);-webkit-user-select:none;user-select:none;font-variant-numeric:tabular-nums;padding:16px 12px 16px 16px;overflow:hidden}.code-scroll{position:relative;overflow:hidden}.code-highlight,.code-input{font:inherit;line-height:inherit;tab-size:inherit;white-space:pre;letter-spacing:0;word-spacing:0;border:0;margin:0;padding:16px 20px}.code-highlight{pointer-events:none;min-width:100%;color:var(--ink);position:absolute;inset:0 auto auto 0}.code-input{resize:none;color:#0000;width:100%;height:100%;caret-color:var(--ink);background:0 0;outline:none;position:absolute;inset:0;overflow:auto}.code-input::selection{color:#0000;background:#2f5fd02e}.code-input[readonly]{caret-color:#0000}.code:focus-within{box-shadow:inset 0 0 0 1px var(--ink)}.tok-keyword{color:var(--syn-keyword)}.tok-string{color:var(--syn-string)}.tok-number{color:var(--syn-number)}.tok-comment{color:var(--syn-comment)}.tok-call{color:var(--syn-call)}.tok-type{color:var(--syn-type)}.tok-nds{color:var(--syn-nds);font-weight:600}.tok-hex{color:var(--syn-number)}.ide-side{border-left:1px solid var(--line);background:var(--bg-subtle);flex-direction:column;gap:20px;min-width:0;padding:20px;display:flex}.mini{border:1px solid var(--line-strong);background:var(--bg);border-radius:10px;outline:none;gap:8px;padding:8px;display:grid}.mini canvas{aspect-ratio:4/3;width:100%;height:auto;image-rendering:pixelated;background:var(--screen-off);border-radius:4px}.mini canvas+canvas{cursor:crosshair;touch-action:none}.mini:focus-visible,.mini.mini-keyboard{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink)}.build{gap:12px;display:grid}.build-state{letter-spacing:-.01em;align-items:center;gap:10px;font-size:.875rem;font-weight:500;line-height:1.45;display:flex}.build-state:before{content:"";background:var(--led-on);border-radius:50%;flex:none;width:8px;height:8px}.build[data-state=busy] .build-state:before{background:var(--led-amber);animation:.9s steps(2,end) infinite pulse}.build[data-state=error] .build-state:before{background:var(--led-error)}.build[data-state=edited] .build-state:before{background:var(--led-amber)}@keyframes pulse{50%{opacity:.35}}.build-figures{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.build-figures div{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);padding:10px 12px}.build-figures dt{font:500 .6875rem/1.2 var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-4)}.build-figures dd{font:500 .9375rem/1.3 var(--mono);font-variant-numeric:tabular-nums;margin:4px 0 0}.ide-actions{gap:8px;display:grid}.ide-actions .button{width:100%}.tweaks .label{margin-bottom:10px}.tweak-list{flex-wrap:wrap;gap:6px;display:flex}.diagnostics{gap:8px;margin:0;padding:0;list-style:none;display:grid}.diagnostics:empty{display:none}.diagnostics li{border-radius:var(--radius-sm);border:1px solid var(--error-line);background:var(--error-soft);color:var(--error-ink);font:400 .75rem/1.5 var(--mono);overflow-wrap:anywhere;padding:10px 12px}.diagnostics button{all:unset;cursor:pointer;text-underline-offset:2px;font-weight:600;text-decoration:underline}.diagnostics button:focus-visible{outline:2px solid var(--ink)}.ide-note{color:var(--ink-4);margin-top:auto;font-size:.8125rem}.flow{grid-template-columns:minmax(0,1fr) minmax(0,1.55fr);align-items:start;gap:clamp(24px,4vw,48px);display:grid}.flow-trunk{gap:28px;margin:0;padding:0;list-style:none;display:grid;position:relative}.flow-trunk:before{content:"";border-left:1px solid var(--line-strong);position:absolute;top:24px;bottom:24px;left:27px}.flow-node{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);gap:4px;padding:16px 20px 16px 56px;display:grid;position:relative}.flow-node:before{content:"";background:var(--bg);border:1px solid var(--ink);border-radius:50%;width:13px;height:13px;position:absolute;top:20px;left:21px}.flow-node>code{font-size:.9375rem;font-weight:500}.flow-node p{color:var(--ink-3);font-size:.9375rem}.flow-node-key{border-color:var(--ink)}.flow-node-key:before{background:var(--accent);border-color:var(--accent)}.flow-node b{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;font-weight:500}.flow-lanes{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:1px;display:grid;overflow:hidden}.flow-lane{background:var(--bg);padding:24px}.flow-lane h3{font:600 1.125rem/1.3 var(--sans);letter-spacing:-.02em;margin-bottom:16px}.flow-lane ol{counter-reset:lane;gap:14px;margin:0;padding:0;list-style:none;display:grid}.flow-lane li{color:var(--ink-3);counter-increment:lane;padding-left:34px;font-size:.9375rem;position:relative}.flow-lane li:before{content:counter(lane);width:22px;height:22px;font:500 .75rem/1 var(--mono);color:var(--ink-2);border:1px solid var(--line-strong);background:var(--bg-subtle);border-radius:6px;place-items:center;display:grid;position:absolute;top:.1em;left:0}.cells{background:var(--line);border:1px solid var(--line);border-radius:var(--radius);grid-template-columns:repeat(6,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.cell{background:var(--bg);flex-direction:column;gap:14px;min-width:0;padding:clamp(20px,2.6vw,32px);display:flex}.cell p{color:var(--ink-3);font-size:.9375rem}.figure{gap:6px;display:grid}.figure strong{font:600 clamp(2.5rem, 4vw, 3.25rem)/1 var(--sans);letter-spacing:-.05em;color:var(--ink);font-variant-numeric:tabular-nums}.figure strong small{letter-spacing:0;color:var(--ink-4);margin-inline-start:4px;font-size:.4em;font-weight:500}.figure span{font:500 .75rem/1.2 var(--mono);letter-spacing:.02em;text-transform:uppercase;color:var(--ink-4)}.cell-rate{grid-column:span 3}.cell-rate .figure strong{font-size:clamp(3.25rem,6vw,4.75rem)}.cell-heap{grid-column:span 3}.cell-frame,.cell-tone,.cell-touch{grid-column:span 2}.cell-proof{grid-column:span 6;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);align-items:center;gap:16px 48px;display:grid}.cell-proof h3{font:600 clamp(1.375rem, 2.2vw, 1.75rem)/1.2 var(--sans);letter-spacing:-.035em;grid-column:1}.cell-proof p{grid-column:1}.tick-ruler{justify-content:space-between;align-items:flex-end;height:26px;margin-top:auto;display:flex;position:relative;overflow:hidden}.tick-ruler i{background:var(--line-strong);width:1px;height:9px}.tick-ruler i:nth-child(10n+1){background:var(--ink-4);height:18px}.tick-ruler:after{content:"";border-left:2px solid var(--accent);animation:1s linear infinite sweep;position:absolute;inset:0}@keyframes sweep{0%{transform:translate(0)}to{transform:translate(100%)}}.meter{background:var(--bg-muted);border-radius:999px;height:6px;margin-top:auto;overflow:hidden}.meter span{width:var(--share);border-radius:inherit;background:var(--ink);height:100%;display:block}.meter-scale{justify-content:space-between;display:flex;font:400 .75rem/1 var(--mono)!important;color:var(--ink-4)!important}.frame-bar{background:var(--bg-muted);border-radius:999px;gap:2px;height:10px;display:flex;overflow:hidden}.frame-bar span{width:var(--share);height:100%}.frame-update{background:var(--ink)}.frame-draw{background:var(--accent)}.frame-legend{flex-wrap:wrap;gap:6px 16px;display:flex;font:400 .75rem/1.4 var(--mono)!important;color:var(--ink-4)!important}.frame-legend span{align-items:center;gap:6px;display:inline-flex}.frame-legend i{border-radius:2px;width:8px;height:8px}.swatch-update{background:var(--ink)}.swatch-draw{background:var(--accent)}.square-wave{fill:none;width:100%;height:44px;stroke:var(--ink);stroke-width:1.5px;margin-top:auto;overflow:visible}.square-wave path{vector-effect:non-scaling-stroke}.touch-frames{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.touch-frames span{aspect-ratio:4/3;border:1px solid var(--line-strong);background:var(--bg-subtle);border-radius:6px;position:relative}.touch-frames span:before{content:"";aspect-ratio:1;border:1px dashed var(--ink-4);border-radius:50%;width:13%;position:absolute;top:35%;left:30%}.touch-frames .touch-hit{border-color:var(--ink);background:var(--bg)}.touch-frames .touch-hit:after{content:"";aspect-ratio:1;background:var(--accent);border-radius:50%;width:15%;position:absolute;top:34%;left:29%}.proof-tracks{grid-area:1/2/span 2;gap:18px;display:grid}.proof-track{grid-template-columns:6.5em minmax(0,1fr) 3.5em;align-items:center;gap:12px;font-size:.8125rem;display:grid}.proof-track code{color:var(--ink-3)}.proof-track b{font:500 .875rem/1 var(--mono);text-align:right;font-variant-numeric:tabular-nums}.proof-rail{border-bottom:1px solid var(--line-strong);height:20px;position:relative}.proof-rail:before{content:"";background:var(--ink-4);width:1px;height:9px;position:absolute;bottom:-5px;left:0}.proof-rail i{bottom:-7px;left:calc(var(--distance) / 120 * 100%);background:var(--accent);border-radius:50%;width:13px;height:13px;position:absolute;transform:translate(-50%)}.footnote{color:var(--ink-4);max-width:80ch;margin-top:20px;font-size:.875rem}.api{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:32px;display:grid}.api-menu{gap:2px;display:grid}.api-menu button{border-radius:var(--radius-sm);cursor:pointer;text-align:left;width:100%;color:var(--ink-3);font:500 .9375rem/1.3 var(--sans);letter-spacing:-.01em;background:0 0;border:0;gap:2px;padding:10px 12px;transition:background .15s,color .15s;display:grid}.api-menu button small{font:400 .75rem/1.3 var(--mono);letter-spacing:0;color:var(--ink-4)}.api-menu button:hover{background:var(--bg-subtle);color:var(--ink)}.api-menu button[aria-selected=true]{background:var(--bg-muted);color:var(--ink)}.api-pane{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);outline:none;min-height:400px;padding:clamp(20px,3vw,32px)}.api-pane:focus-visible{box-shadow:0 0 0 2px var(--ink)}.api-pane h3{font:600 1.5rem/1.2 var(--sans);letter-spacing:-.035em}.api-pane>p{color:var(--ink-3);max-width:62ch;margin-top:8px}.api-list{margin:24px 0 0;padding:0;display:grid}.api-list div{border-top:1px solid var(--line);grid-template-columns:minmax(0,.95fr) minmax(0,1fr);gap:6px 24px;padding:14px 0;display:grid}.api-list div:first-child{border-top:0;padding-top:0}.api-list dt{font:500 .8125rem/1.6 var(--mono);color:var(--ink);overflow-wrap:anywhere}.api-list dd{color:var(--ink-3);margin:0;font-size:.9375rem}.api-tags{flex-wrap:wrap;gap:6px;margin-top:20px;display:flex}.api-tags code{border:1px solid var(--line);background:var(--bg-subtle);border-radius:6px;padding:2px 8px;font-size:.75rem}.api-note{border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg-subtle);padding:12px 16px;font-size:.875rem;color:var(--ink-2)!important;margin-top:20px!important}.limits{grid-template-columns:repeat(4,minmax(0,1fr))}.limits h3{font:600 1rem/1.3 var(--sans);letter-spacing:-.02em}.limits ul{gap:12px;margin:0;padding:0;list-style:none;display:grid}.limits li{color:var(--ink-3);font-size:.9375rem;line-height:1.5}.start-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);grid-template-areas:"head head""steps terminal";gap:0 clamp(24px,4vw,56px);display:grid}.start-grid .section-head{grid-area:head}.steps{counter-reset:step;grid-area:steps;align-content:start;gap:6px;margin:0;padding:0;list-style:none;display:grid}.steps li{border-radius:var(--radius);counter-increment:step;cursor:default;border:1px solid #0000;padding:14px 16px 14px 52px;transition:background .15s,border-color .15s;position:relative}.steps li:before{content:counter(step);width:24px;height:24px;font:500 .75rem/1 var(--mono);border:1px solid var(--line-strong);background:var(--bg);border-radius:6px;place-items:center;transition:background .15s,color .15s,border-color .15s;display:grid;position:absolute;top:15px;left:14px}.steps li.active{border-color:var(--line);background:var(--bg-subtle)}.steps li.active:before{background:var(--ink);border-color:var(--ink);color:#fff}.steps h3{font:600 1rem/1.4 var(--sans);letter-spacing:-.015em}.steps p{color:var(--ink-3);font-size:.9375rem}.terminal{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);grid-area:terminal;align-self:start;overflow:hidden}.terminal-bar{border-bottom:1px solid var(--line);background:var(--bg-subtle);justify-content:space-between;align-items:center;min-height:48px;padding:0 8px 0 16px;display:flex}.terminal-title{font:400 .8125rem/1 var(--mono);color:var(--ink-4)}.terminal-body{margin:0;padding:16px 0;font-size:.875rem;line-height:1.9;overflow-x:auto}.terminal-body code{min-width:max-content;display:grid}.terminal-body .line{border-left:2px solid #0000;padding:0 20px;transition:border-color .15s,background .15s;display:block}.terminal-body .line.active{border-left-color:var(--accent);background:var(--accent-soft)}.terminal-body .prompt{color:var(--ink-4);-webkit-user-select:none;user-select:none;margin-inline-end:10px}.footer-inner{grid-template-columns:minmax(0,1.4fr) auto;align-items:start;gap:24px 48px;max-width:1200px;margin-inline:auto;padding:48px clamp(20px,4vw,48px) 64px;display:grid}.footer-brand{justify-items:start;gap:14px;display:grid}.footer-brand p,.footer-note{color:var(--ink-4);max-width:64ch;font-size:.875rem}.footer-links{flex-wrap:wrap;gap:4px 24px;display:flex}.footer-links a{color:var(--ink-3);font-size:.875rem;text-decoration:none}.footer-links a:hover{color:var(--ink)}.footer-note{grid-column:1/-1}@media (max-width:1080px){.hero-grid{grid-template:"copy""device""carts"/minmax(0,1fr)}.hero-copy,.hero-carts{max-width:680px}.ide-body{grid-template-columns:minmax(0,1fr)}.ide-side{border-left:0;border-top:1px solid var(--line)}.mini{grid-template-columns:1fr 1fr}.ide-note{margin-top:0}.code{height:560px}.flow{grid-template-columns:minmax(0,1fr)}.cells{grid-template-columns:repeat(2,minmax(0,1fr))}.cell-heap,.cell-frame,.cell-tone,.cell-touch{grid-column:span 1}.cell-rate,.cell-proof{grid-column:span 2}.limits{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.frame{border-inline:0}.hero:before,.hero:after,.section:before,.section:after,.nav-links{display:none}.nav-inner>.button{margin-inline-start:auto}.rack{grid-template-columns:repeat(2,minmax(0,1fr))}.code{height:440px}.mini,.flow-lanes{grid-template-columns:minmax(0,1fr)}.api{grid-template-columns:minmax(0,1fr);gap:16px}.api-menu{scrollbar-width:thin;gap:4px;padding-bottom:4px;display:flex;overflow-x:auto}.api-menu button{flex:none;width:auto}.api-list div,.cells,.limits{grid-template-columns:minmax(0,1fr)}.cell-rate,.cell-proof{grid-column:span 1}.cell-proof{grid-template-columns:minmax(0,1fr)}.proof-tracks{grid-area:auto/1}.start-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""terminal""steps"}.steps{margin-top:20px}.footer-inner{grid-template-columns:minmax(0,1fr)}.console-stats{gap:14px}}@media (pointer:coarse) and (hover:none){.keyboard-hint{display:none}}@media (max-width:420px){.cta-row .button{flex:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}.tick-ruler:after{display:none}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
