body{font-size:var(--text-md)}html{scroll-padding-top:var(--space-20)}.i{width:1em;height:1em;flex:none;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.mono{font-family:var(--font-mono);font-size:.92em}.muted{color:var(--ink-2)}.sk{display:block;height:.62em;margin-block:.45em;width:var(--w, 100%);max-width:100%;border-radius:var(--radius-pill);background:color-mix(in oklab,var(--ink) 9%,transparent)}.sk.thin{height:.5em}.sk-lines{display:grid;max-width:var(--measure-text)}.sk-block{border-radius:var(--radius-md);background:color-mix(in oklab,var(--ink) 7%,transparent)}.sk-inline{display:inline-block;vertical-align:middle;height:.6em;width:var(--w, 6ch);border-radius:var(--radius-pill);background:color-mix(in oklab,var(--ink) 9%,transparent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-5);border:1px solid transparent;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--dur-1) var(--ease-move),border-color var(--dur-1) var(--ease-move),color var(--dur-1) var(--ease-move),transform var(--dur-1) var(--ease-out)}.btn:active{transform:scale(var(--press))}.btn-primary{background:var(--ink);color:var(--paper);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1f}.btn-primary:hover{background:color-mix(in oklab,var(--ink) 86%,var(--accent))}.btn-accent{background:var(--accent);color:var(--accent-ink)}.btn-accent:hover{background:color-mix(in oklab,var(--accent) 88%,var(--ink))}.btn-secondary{background:var(--paper);color:var(--ink);border-color:var(--line)}.btn-secondary:hover{border-color:color-mix(in oklab,var(--ink) 24%,transparent);background:var(--paper-2)}.form{display:grid;gap:var(--space-5)}.field{display:grid;gap:var(--space-2)}.pair-fields{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.label{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2);font-size:var(--text-sm);font-weight:500}.label output{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--paper-2);border:1px solid var(--line)}.num-box{display:inline-flex;align-items:baseline;gap:.5ch;font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink);padding:2px var(--space-2);border-radius:var(--radius-sm);background:var(--paper-2);border:1px solid var(--line);cursor:text;transition:border-color var(--dur-1) var(--ease-move),box-shadow var(--dur-1) var(--ease-move),background-color var(--dur-1) var(--ease-move)}.num-box:hover{border-color:color-mix(in oklab,var(--ink) 28%,transparent);background:var(--paper)}.num-box:focus-within{border-color:var(--accent);box-shadow:var(--field-ring);background:var(--paper)}.num{min-width:2ch;padding:0;border:0;background:none;outline:none;font:inherit;color:inherit;text-align:right;font-variant-numeric:tabular-nums}.num-box .unit{color:var(--ink-3)}.hint{font-size:var(--text-xs);color:var(--ink-3)}.control{width:100%;min-height:var(--target-min);padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);font-size:var(--text-sm);transition:border-color var(--dur-1) var(--ease-move),box-shadow var(--dur-1) var(--ease-move)}.control:hover{border-color:color-mix(in oklab,var(--ink) 22%,transparent)}.control:focus{outline:none;border-color:var(--accent);box-shadow:var(--field-ring)}.select{position:relative}.select select{appearance:none;padding-right:var(--space-10);cursor:pointer}.select .i{position:absolute;right:var(--space-3);top:50%;translate:0 -50%;color:var(--ink-3);pointer-events:none}.search-field{position:relative;display:flex;align-items:center;min-height:calc(var(--target-min) + var(--space-3));padding:0 var(--space-3) 0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-md);transition:border-color var(--dur-1) var(--ease-move),box-shadow var(--dur-2) var(--ease-move)}.search-field:hover{border-color:color-mix(in oklab,var(--ink) 22%,transparent)}.search-field:focus-within{border-color:var(--accent);box-shadow:var(--shadow-md),var(--field-ring)}.search-field>svg{width:var(--space-5);height:var(--space-5);flex:none;fill:none;stroke:var(--ink-3);stroke-width:1.5;stroke-linecap:round}.search-field input{flex:1;min-width:0;min-height:var(--target-min);padding:0 var(--space-3);border:0;background:none;outline:none;font-size:var(--text-md)}.search-field input::placeholder{color:var(--ink-3)}.search-field input::-webkit-search-cancel-button{display:none}.range{width:100%;height:var(--space-6);margin:0;appearance:none;background:none;cursor:pointer;--v: 50%}.range::-webkit-slider-runnable-track{height:4px;border-radius:var(--radius-pill);background:linear-gradient(var(--accent),var(--accent)) 0 / var(--v) 100% no-repeat,var(--paper-3)}.range::-moz-range-track{height:4px;border-radius:var(--radius-pill);background:var(--paper-3)}.range::-moz-range-progress{height:4px;border-radius:var(--radius-pill);background:var(--accent)}.range::-webkit-slider-thumb{appearance:none;width:var(--space-5);height:var(--space-5);margin-top:-8px;border-radius:50%;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-md);transition:transform var(--dur-1) var(--ease-out)}.range::-moz-range-thumb{width:var(--space-5);height:var(--space-5);border-radius:50%;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-md)}.range:active::-webkit-slider-thumb{transform:scale(1.12)}.range:focus-visible{outline:none}.range:focus-visible::-webkit-slider-thumb{box-shadow:var(--shadow-md),0 0 0 4px var(--accent-soft);border-color:var(--accent)}.checks{display:flex;flex-wrap:wrap;gap:var(--space-2);border:0;margin:0;padding:0;min-width:0}.checks legend{padding:0;margin-bottom:var(--space-2)}.check-chip{position:relative;display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--space-10);padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);font-size:var(--text-sm);font-family:var(--font-mono);cursor:pointer;transition:background-color var(--dur-1) var(--ease-move),border-color var(--dur-1) var(--ease-move)}.check-chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.check-chip .box{display:grid;place-items:center;width:var(--space-4);height:var(--space-4);border-radius:4px;border:1px solid color-mix(in oklab,var(--ink) 30%,transparent);color:transparent;transition:background-color var(--dur-1) var(--ease-move),color var(--dur-1) var(--ease-move)}.check-chip .box .i{font-size:var(--text-xs);stroke-width:2.5}.check-chip:has(input:checked){border-color:color-mix(in oklab,var(--accent) 40%,transparent);background:var(--accent-soft)}.check-chip:has(input:checked) .box{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.check-chip:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--target-min);cursor:pointer}.switch-row .text{display:grid;font-size:var(--text-sm);font-weight:500}.switch-row .text small{font-size:var(--text-xs);font-weight:400;color:var(--ink-3)}.switch{flex:none;appearance:none;position:relative;width:2.5rem;height:1.5rem;margin:0;border-radius:var(--radius-pill);background:var(--paper-3);border:1px solid var(--line);cursor:pointer;transition:background-color var(--dur-2) var(--ease-move)}.switch:after{content:"";position:absolute;top:2px;left:2px;width:calc(1.5rem - 6px);height:calc(1.5rem - 6px);border-radius:50%;background:var(--paper);box-shadow:var(--shadow-sm),0 0 0 1px var(--line);transition:transform var(--dur-3) var(--ease-out)}.switch:checked{background:var(--accent);border-color:var(--accent)}.switch:checked:after{transform:translate(1rem)}.btn-ghost{background:transparent;color:var(--ink-2);border-color:transparent}.btn-ghost:hover{background:var(--paper-2);color:var(--ink)}.btn-lg{min-height:calc(var(--target-min) + var(--space-2));padding-inline:var(--space-6);font-size:var(--text-md)}.btn-icon{width:var(--target-min);padding:0}.btn .i{font-size:1.1em}.kbd{display:inline-grid;place-items:center;min-width:var(--space-6);height:var(--space-6);padding-inline:var(--space-1);border:1px solid var(--line);border-bottom-width:2px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);background:var(--paper)}.kbd-k{display:inline-flex;gap:2px}@media(hover:none){.kbd-k,.search-btn .kbd-k.label-long{display:none}}.pill{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--space-8);padding:0 var(--space-3);border:1px solid var(--line);border-radius:var(--radius-pill);font-size:var(--text-sm);color:var(--ink-2);background:var(--paper)}.pill .dot{width:var(--space-1);height:var(--space-1);border-radius:50%;background:var(--ink-3)}.pill-local{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 30%,transparent);background:var(--accent-soft);font-size:var(--text-xs);font-weight:500;min-height:var(--space-6)}.chips{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:0;margin:0;list-style:none}.chip{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-pill);color:var(--ink-2);text-decoration:none;font-size:var(--text-sm);background:var(--paper);transition:background-color var(--dur-fast) var(--ease-in-out),color var(--dur-fast) var(--ease-in-out),border-color var(--dur-fast) var(--ease-in-out),transform var(--dur-fast) var(--motion-emphasis)}.chip:hover{color:var(--ink);border-color:var(--ink-3)}.chip:active{transform:scale(var(--motion-press))}.chips-label{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-3)}.chip-link{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 35%,transparent);background:var(--accent-soft);font-weight:500;padding-inline:var(--space-4) var(--space-3)}.chip-link .i{font-size:.95em;opacity:.7;transition:transform var(--dur-fast) var(--ease-in-out),opacity var(--dur-fast) var(--ease-in-out)}.chip-link:hover{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.chip-link:hover .i{opacity:1;transform:translate(2px)}.ext{display:inline-grid;place-items:center;min-width:3.25rem;height:var(--space-6);padding-inline:var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;color:var(--ink);background:var(--paper-3)}.site-header{position:sticky;top:0;z-index:50;isolation:isolate}.site-header .wrap{display:flex;align-items:center;gap:var(--space-6);height:var(--space-16)}.logo{display:inline-flex;align-items:center;gap:var(--space-3);color:var(--ink);text-decoration:none;font-family:var(--font-display);font-size:var(--text-xl);font-weight:600;letter-spacing:var(--tracking-tight);min-height:var(--target-min)}.logo-word{line-height:1;padding-bottom:.08em}.logo-web{color:var(--ink-3);font-weight:500}.dave{width:2.5rem;height:2.5rem;flex:none;border-radius:25%;box-shadow:var(--shadow-sm);transform:rotate(-4deg);transition:transform var(--dur-base) var(--ease-out)}.dave-head{transform-box:fill-box;transform-origin:50% 100%;transition:transform var(--dur-base) var(--ease-out)}.logo:hover .dave{transform:rotate(0)}.logo:hover .dave-head{transform:rotate(-7deg)}.dave-face{display:block;flex:none;overflow:visible}.dave-face .dave-head{transform-box:fill-box;transform-origin:50% 100%;transition:transform var(--dur-2) var(--ease-out)}.dave-face .mood{opacity:0}.dave-face[data-mood=hello] .m-hello,.dave-face[data-mood=look] .m-look,.dave-face[data-mood=busy] .m-busy,.dave-face[data-mood=done] .m-done,.dave-face[data-mood=oops] .m-oops,.dave-face[data-mood=sad] .m-sad{opacity:1}.dave-face[data-mood=look] .dave-head{transform:rotate(-6deg) translateY(-1px)}.dave-face[data-mood=busy] .dave-head{animation:dave-work .9s var(--ease-in-out) infinite alternate}.dave-face[data-mood=done]{animation:dave-pop var(--dur-3) var(--ease-out)}.dave-face[data-mood=done] .dave-spark{transform-box:fill-box;transform-origin:center;animation:dave-spark var(--dur-3) var(--ease-out) .12s backwards}.dave-face[data-mood=oops] .dave-head{animation:dave-shake var(--dur-3) var(--ease-out)}.dave-face[data-mood=oops] .dave-drop{transform-box:fill-box;transform-origin:top;animation:dave-spark var(--dur-3) var(--ease-out) 80ms backwards}.dave-face[data-mood=sad] .dave-head{transform:rotate(4deg) translateY(.6px)}.dave-face[data-mood=sad] .dave-tear{transform-box:fill-box;transform-origin:top;animation:dave-tear 3.2s var(--ease-in-out) .6s infinite backwards}@keyframes dave-tear{0%{opacity:0;transform:translateY(-1.5px) scale(.4)}15%,55%{opacity:1;transform:none}80%,to{opacity:0;transform:translateY(3px)}}@keyframes dave-work{0%{transform:rotate(-4deg)}to{transform:rotate(3deg) translateY(-.3px)}}@keyframes dave-pop{45%{transform:scale(1.1) rotate(2deg)}}@keyframes dave-spark{0%{opacity:0;transform:scale(.2) rotate(-45deg)}}@keyframes dave-shake{25%{transform:translate(-1.4px) rotate(-3deg)}60%{transform:translate(1.2px) rotate(2deg)}}.dave-status{position:relative;display:inline-grid;flex:none}.dave-status .dave-face{width:2.75rem;height:2.75rem}.dave-badge{position:absolute;right:-.6rem;bottom:-.15rem;display:grid;place-items:center;width:1.1rem;height:1.1rem;border-radius:50%;background:var(--accent);color:var(--accent-ink);box-shadow:0 0 0 2px var(--paper);animation:dave-spark var(--dur-3) var(--ease-out) .16s backwards}.dave-badge .i{width:.7rem;height:.7rem;stroke-width:3;color:inherit!important}[inert] .dave-face,[inert] .dave-face *{animation:none!important}.dave-done .dave-face{width:2.25rem;height:2.25rem}.dave-done{display:block;margin-bottom:calc(var(--space-2) * -1)}@media(prefers-reduced-motion:reduce){.dave-face,.dave-face *{animation:none!important}}.drop-zone{position:relative;display:grid;place-items:center;align-content:center;gap:var(--space-3);padding:var(--space-8) var(--space-6);border:1.5px dashed color-mix(in oklab,var(--ink) 22%,transparent);border-radius:var(--radius-lg);background:var(--drop-bg, var(--paper));text-align:center;cursor:pointer;transition:border-color var(--dur-2) var(--ease-move),background-color var(--dur-2) var(--ease-move)}.drop-zone:hover,.drop-zone.is-over,.is-over .drop-zone,.drop-zone:focus-within{border-color:var(--accent);background:color-mix(in oklab,var(--accent) 5%,var(--drop-bg, var(--paper)))}.drop-zone:focus-within{box-shadow:var(--field-ring)}.drop-zone.is-busy{cursor:progress}@media(max-width:520px){.drop-zone{gap:var(--space-2);padding:var(--space-6) var(--space-4)}.drop-dave .dave-face,.drop-zone.is-wide .drop-dave .dave-face{width:3.75rem;height:3.75rem}}.drop-zone.is-wide{min-height:18rem;padding-block:var(--space-10)}@media(min-width:860px){.drop-zone.is-wide{min-height:22rem}}.drop-title{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;letter-spacing:var(--tracking-tight);line-height:1.15;overflow-wrap:anywhere}.drop-zone.is-wide .drop-title{font-size:var(--text-3xl);line-height:1.1}.drop-text{max-width:34rem;font-size:var(--text-sm);color:var(--ink-3)}.drop-zone .btn{margin-top:var(--space-2);pointer-events:none}.drop-pick{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:.2em}.drop-dave{position:relative;display:grid;margin-bottom:var(--space-1);transition:transform var(--dur-3) var(--ease-out)}.drop-dave .dave-face{width:4.5rem;height:4.5rem}.drop-zone.is-wide .drop-dave .dave-face{width:6rem;height:6rem}.drop-dave-badge{position:absolute;right:-.75rem;bottom:0;display:grid;place-items:center;width:1.75rem;height:1.75rem;border:1px solid var(--line);border-radius:50%;background:var(--paper);box-shadow:var(--shadow-sm);color:var(--accent);font-size:var(--text-sm);transition:opacity var(--dur-2) var(--ease-out),transform var(--dur-2) var(--ease-out)}.drop-zone.is-wide .drop-dave-badge{right:-.85rem;width:2rem;height:2rem;font-size:var(--text-base)}.drop-zone:is(:hover,:focus-within,.is-over) .drop-dave,.is-over .drop-zone .drop-dave{transform:translateY(-4px)}.drop-zone.is-over .drop-dave-badge,.is-over .drop-zone .drop-dave-badge{transform:translateY(3px)}.drop-zone:is(.is-busy,.is-oops) .drop-dave-badge{opacity:0;transform:scale(.6)}.drop-zone:is(:hover,:focus-within,.is-over) .dave-face[data-mood=hello] .m-hello,.is-over .drop-zone .dave-face[data-mood=hello] .m-hello{opacity:0}.drop-zone:is(:hover,:focus-within,.is-over) .dave-face[data-mood=hello] .m-look,.is-over .drop-zone .dave-face[data-mood=hello] .m-look{opacity:1}.drop-zone:is(:hover,:focus-within,.is-over) .dave-face[data-mood=hello] .dave-head,.is-over .drop-zone .dave-face[data-mood=hello] .dave-head{transform:rotate(-6deg) translateY(-1px)}.nav{display:none;gap:var(--space-6);margin:0;padding:0;list-style:none}.nav a{display:inline-flex;align-items:center;min-height:var(--target-min);color:var(--ink-2);font-size:var(--text-sm);font-weight:500}.nav a:hover,.nav a[aria-current]{color:var(--ink)}.header-end{margin-left:auto;display:flex;align-items:center;gap:var(--space-2)}.search-btn{gap:var(--space-3);color:var(--ink-3);font-weight:400;font-size:var(--text-sm);padding-inline:var(--space-3)}.search-btn .label-long{display:none}.menu-btn{display:inline-flex}.theme-icons{position:relative;display:grid;width:1.15em;height:1.15em}.theme-icons .i{grid-area:1 / 1;width:100%;height:100%;transition:transform var(--dur-3) var(--ease-out),opacity var(--dur-2) var(--ease-move)}.theme-icons .moon{opacity:0;transform:rotate(-90deg) scale(.6)}:root[data-theme=light] .theme-icons .sun{opacity:0;transform:rotate(90deg) scale(.6)}:root[data-theme=light] .theme-icons .moon{opacity:1;transform:none}@media(prefers-color-scheme:light){:root:not([data-theme=dark]) .theme-icons .sun{opacity:0;transform:rotate(90deg) scale(.6)}:root:not([data-theme=dark]) .theme-icons .moon{opacity:1;transform:none}}.theme-swap,.theme-swap *,.theme-swap *:before,.theme-swap *:after{transition:background-color var(--dur-3) var(--ease-move),border-color var(--dur-3) var(--ease-move),color var(--dur-3) var(--ease-move),transform var(--dur-3) var(--ease-out),opacity var(--dur-2) var(--ease-move)!important}@media(min-width:860px){.nav{display:flex}.menu-btn{display:none}.search-btn{min-width:15rem;justify-content:flex-start}.search-btn .label-long{display:inline}.search-btn .kbd-k{display:inline-flex;margin-left:auto}}.mobile-nav{position:absolute;inset:var(--space-16) var(--space-3) auto;padding:var(--space-3);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);--origin: top right}.mobile-nav[hidden]{display:none}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;min-height:var(--target-min);padding:0 var(--space-3);color:var(--ink);text-decoration:none;border-radius:var(--radius-md)}.mobile-nav a:hover{background:var(--paper-2)}.section{padding-block:var(--space-12)}@media(min-width:860px){.section{padding-block:var(--space-24)}}.band{background:var(--paper-2);border-block:1px solid var(--line)}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-3)}.eyebrow .i{color:var(--accent);font-size:var(--text-sm)}.sec-head{display:grid;gap:var(--space-3);margin-bottom:var(--space-10)}.sec-head h2{font-size:var(--text-4xl);font-weight:500}.sec-head p{color:var(--ink-2);max-width:var(--measure-lede)}.sec-head-split{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:var(--space-4) var(--space-8)}.sec-head-split>div{display:grid;gap:var(--space-3)}.link-arrow{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);color:var(--ink);font-weight:500;text-decoration:none}.link-arrow .i{transition:transform var(--dur-base) var(--ease-out)}.link-arrow:hover .i{transform:translate(var(--space-1))}.hero{padding-block:var(--space-12) var(--space-16)}.hero-grid{display:grid;gap:var(--space-12);align-items:center}@media(min-width:1000px){.hero{padding-block:var(--space-20) var(--space-24)}.hero-grid{grid-template-columns:1.02fr 1fr;gap:var(--space-16)}}.hero-copy{display:grid;gap:var(--space-6);justify-items:start}.hello{position:relative;margin:0 0 0 calc(var(--space-1) * -1);padding:var(--space-2) var(--space-4);line-height:1.45;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm);font-size:var(--text-sm);color:var(--ink-2)}.hello:before{content:"";position:absolute;top:-7px;left:var(--space-5);width:13px;height:13px;border:solid var(--line);border-width:1px 0 0 1px;border-top-left-radius:3px;background:inherit;transform:rotate(45deg) skew(8deg,8deg)}.hello b{color:var(--ink);font-weight:600}.hero:has(.hello){padding-top:var(--space-4)}.hero h1{font-size:var(--text-5xl);font-weight:500;letter-spacing:var(--tracking-tighter);line-height:1.05;max-width:13ch}.hero h1 em{font-style:italic;font-weight:400;color:var(--accent)}.hero .lede{font-size:var(--text-lg);color:var(--ink-2);max-width:var(--measure-lede)}.hero-search{width:100%;max-width:34rem;display:grid;gap:var(--space-3)}.hero-search .control{--field-height: calc(var(--target-min) + var(--space-3));font-size:var(--text-md);box-shadow:var(--shadow-sm);border-radius:var(--radius-lg)}.hero-search .kbd-k{margin-right:var(--space-2)}.hero-note{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--ink-3)}.hero-note strong{color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}.mock{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);overflow:hidden}.mock-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);font-size:var(--text-sm);font-weight:500}.mock-bar .i{color:var(--ink-3)}.mock-bar .pill-local{margin-left:auto}.mock-body{padding:var(--space-4);display:grid;gap:var(--space-4)}.compare{position:relative;aspect-ratio:16 / 10;border-radius:var(--radius-md);overflow:hidden;background:var(--paper-3)}.compare .half{position:absolute;inset:0}.compare .before{clip-path:inset(0 52% 0 0);background:repeating-conic-gradient(color-mix(in oklab,var(--ink) 16%,var(--paper-3)) 0 25%,color-mix(in oklab,var(--ink) 9%,var(--paper-3)) 0 50%) 0 0 / var(--space-6) var(--space-6)}.compare .after{clip-path:inset(0 0 0 48%);background:linear-gradient(160deg,color-mix(in oklab,var(--accent) 22%,var(--paper-3)),var(--paper-3) 60%)}.compare .shape{position:absolute;border-radius:50%;background:color-mix(in oklab,var(--ink) 14%,transparent)}.compare .s1{width:34%;aspect-ratio:1;left:33%;top:22%}.compare .s2{width:70%;height:30%;left:15%;bottom:-8%;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.compare .handle{position:absolute;top:0;bottom:0;left:48%;width:2px;background:var(--paper)}.compare .handle:after{content:"";position:absolute;top:50%;left:50%;width:var(--space-8);height:var(--space-8);margin:calc(-1 * var(--space-4)) 0 0 calc(-1 * var(--space-4));border-radius:50%;background:var(--paper);box-shadow:var(--shadow-md)}.compare .tag{position:absolute;top:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:color-mix(in oklab,var(--paper) 88%,transparent);font-size:var(--text-xs);font-weight:500}.compare .tag.l{left:var(--space-3)}.compare .tag.r{right:var(--space-3)}.mock-row{display:flex;align-items:center;gap:var(--space-3)}.mock-file{display:flex;align-items:center;gap:var(--space-3);flex:1;min-width:0}.mock-file .thumb{flex:none;width:var(--space-10);height:var(--space-10);border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--paper-3),color-mix(in oklab,var(--accent) 30%,var(--paper-3)))}.mock-name{display:grid;min-width:0;font-size:var(--text-sm);line-height:1.35}.mock-name b{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mock-name span{font-size:var(--text-xs);color:var(--ink-3)}.browse{margin-top:var(--space-8)}.browse .chips-label{display:block;margin-top:0}.browse .chip .i{color:var(--accent)}.seg{display:inline-flex;padding:var(--space-1);gap:var(--space-1);background:var(--paper-2);border:1px solid var(--line);border-radius:var(--radius-md)}.seg span{padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);font-weight:500;color:var(--ink-3)}.seg span.on{background:var(--paper);color:var(--ink);box-shadow:var(--shadow-sm)}.progress{height:var(--space-1);border-radius:var(--radius-pill);background:var(--paper-3);overflow:hidden}.progress>i{display:block;height:100%;width:var(--v, 70%);background:var(--accent);border-radius:inherit;transform-origin:left}@keyframes fill-in{0%{transform:scaleX(0)}}.progress>i{animation:fill-in .9s var(--ease-out) .7s backwards}.mock-status{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border-top:1px solid var(--line);background:var(--paper-2);font-size:var(--text-sm);color:var(--ink-2)}.mock-status span{display:inline-flex;align-items:center;gap:var(--space-2)}.mock-status .i{color:var(--accent)}.promises{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));border-block:1px solid var(--line);margin:0;padding:0;list-style:none}.promises li{display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-3);padding:var(--space-6) var(--space-5);border-bottom:1px solid var(--line)}.promises li:last-child{border-bottom:0}@media(min-width:900px){.promises li{border-bottom:0;border-left:1px solid var(--line)}.promises li:first-child{border-left:0;padding-left:0}}.promises .i{grid-row:span 2;font-size:var(--text-xl);color:var(--accent);margin-top:var(--space-1)}.promises strong{font-weight:600;font-size:var(--text-base)}.promises span{grid-column:2;font-size:var(--text-sm);color:var(--ink-2)}.bento{display:grid;gap:var(--space-4);grid-template-columns:1fr}@media(min-width:700px){.bento{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.bento{grid-template-columns:repeat(6,1fr)}.t-feature{grid-column:span 4;grid-row:span 2}.t-md{grid-column:span 2}.t-wide{grid-column:span 3}}@media(min-width:700px)and (max-width:999px){.t-feature{grid-column:span 2}}.tool{display:grid;align-content:start;gap:var(--space-3);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);color:var(--ink);text-decoration:none}.tool h3{font-size:var(--text-xl);font-weight:500}.tool-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.tool-icon{display:inline-grid;place-items:center;width:var(--space-12);height:var(--space-12);border-radius:var(--radius-md);background:var(--paper-2);border:1px solid var(--line);font-size:var(--text-xl);color:var(--ink)}.tool .go{color:var(--ink-3);font-size:var(--text-lg);transition:transform var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-in-out)}.tool:hover .go,.tool:focus-visible .go{color:var(--accent);transform:translate(var(--space-1))}.tool-desc{color:var(--ink-2);font-size:var(--text-sm);line-height:1.5}.soon-tag{display:inline-flex;align-items:center;min-height:var(--space-6);padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:500;color:var(--ink-3);background:var(--paper-2);border:1px solid var(--line)}.tool.is-soon{cursor:default;border-style:dashed;background:none}.tool.is-soon .tool-icon{color:var(--ink-3);background:none}.tool.is-soon h3{color:var(--ink-2)}.tool .meta{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2)}.tool .meta span{font-size:var(--text-xs);color:var(--ink-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--paper-2)}.t-feature{gap:var(--space-4)}.t-feature h3{font-size:var(--text-3xl)}.t-feature .preview{display:grid;grid-template-columns:1fr auto;gap:var(--space-4);padding:var(--space-4);margin-top:var(--space-2);border-radius:var(--radius-md);background:var(--paper-2);border:1px solid var(--line)}.rec-stage{aspect-ratio:16 / 9;border-radius:var(--radius-sm);background:var(--paper-3);position:relative;overflow:hidden}.rec-stage .win{position:absolute;border-radius:var(--radius-sm);background:var(--paper);box-shadow:var(--shadow-sm)}.rec-stage .w1{inset:12% 30% 18% 8%}.rec-stage .w2{inset:30% 6% 10% 56%}.rec-stage .frame{position:absolute;inset:12% 30% 18% 8%;border:2px solid var(--accent);border-radius:var(--radius-sm)}.rec-time{position:absolute;left:var(--space-3);bottom:var(--space-3);display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--text-xs)}.rec-dot{width:var(--space-2);height:var(--space-2);border-radius:50%;background:var(--danger)}.rec-side{display:grid;align-content:start;gap:var(--space-3);width:9rem}.rec-side .opt{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xs);color:var(--ink-2)}.rec-side .tog{margin-left:auto;width:var(--space-6);height:var(--space-4);border-radius:var(--radius-pill);background:var(--paper-3);position:relative}.rec-side .tog:after{content:"";position:absolute;top:2px;left:2px;width:calc(var(--space-4) - 4px);height:calc(var(--space-4) - 4px);border-radius:50%;background:var(--paper);box-shadow:var(--shadow-sm)}.rec-side .tog.on{background:var(--accent)}.rec-side .tog.on:after{transform:translate(var(--space-2))}@media(max-width:520px){.t-feature .preview{grid-template-columns:1fr}.rec-side{width:auto}}.conv-grid{display:grid;gap:var(--space-12)}@media(min-width:1000px){.conv-grid{grid-template-columns:22rem 1fr;gap:var(--space-16)}.conv-aside{position:sticky;top:var(--space-24);align-self:start}}.conv-aside{display:grid;gap:var(--space-6)}.swap{display:inline-grid;place-items:center;width:var(--target-min);height:var(--target-min);border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);cursor:pointer;transition:transform var(--dur-slow) var(--motion-emphasis),background-color var(--dur-fast) var(--ease-in-out)}.swap:hover{background:var(--paper-2)}.swap .i{transform:rotate(90deg);font-size:var(--text-lg)}.swap.is-turned{transform:rotate(180deg)}.dir{display:grid;gap:var(--space-12);min-width:0}.dir-group{display:grid}.dir-group>.eyebrow{padding-bottom:var(--space-3);border-bottom:1px solid var(--line)}.dir-row{display:grid;gap:var(--space-2) var(--space-6);padding-block:var(--space-4);border-bottom:1px solid var(--line)}@media(min-width:700px){.dir-row{grid-template-columns:9.5rem 1fr;align-items:center}}.dir-row h4{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-text);font-size:var(--text-sm);font-weight:600;letter-spacing:0}.dir-row h4 .i{color:var(--accent);font-size:var(--text-base)}.dir-row .to-list{display:flex;flex-wrap:wrap;gap:var(--space-1);margin:0;padding:0;list-style:none}.to-list .pair-link{font-weight:500}.to-list .pair-link{color:var(--ink);text-decoration:underline;text-decoration-color:color-mix(in oklab,var(--accent) 45%,transparent);text-underline-offset:.25em}.to-list .plain{display:inline-flex;align-items:center;min-height:var(--space-10);padding:0 var(--space-3);color:var(--ink-3);font-size:var(--text-sm)}.dir-row h4 small{margin-left:var(--space-1);font-weight:400;color:var(--ink-3)}.dir-soon{padding-top:var(--space-4);font-size:var(--text-sm);color:var(--ink-3)}.pairs{display:flex;flex-wrap:wrap;gap:var(--space-1) var(--space-1);margin:0;padding:0;list-style:none}.pair-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:var(--space-10);padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--ink-2);text-decoration:none;font-size:var(--text-sm);font-weight:500;transition:background-color var(--dur-1) var(--ease-move),color var(--dur-1) var(--ease-move)}.pair-link .arr{color:var(--ink-3);font-weight:400;transition:transform var(--dur-2) var(--ease-out),color var(--dur-2) var(--ease-move)}.pair-link:hover{background:var(--paper-2);color:var(--ink)}.pair-link:hover .arr{color:var(--accent);transform:translate(2px)}.sentence-mock{display:grid;gap:var(--space-2);padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow-md);color:var(--ink);text-decoration:none;font-family:var(--font-display);font-size:var(--text-2xl);line-height:1.3}.sm-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line);font-family:var(--font-text);font-size:var(--text-sm);color:var(--ink-2)}.sm-foot .link-arrow{min-height:0;font-size:var(--text-sm)}.sentence-mock:hover .link-arrow .i{transform:translate(var(--space-1))}.slot{display:inline-flex;align-items:center;gap:var(--space-2);min-height:1.5em;padding:0 .45em;margin-inline:.1em;border-radius:var(--radius-md);border:1.5px dashed color-mix(in oklab,var(--ink) 25%,transparent);color:var(--ink-3);font-style:italic;vertical-align:baseline}.slot.filled{border-style:solid;border-color:var(--line);background:var(--paper-2);color:var(--ink);font-style:normal}.slot.accent{background:var(--accent-soft);border-color:color-mix(in oklab,var(--accent) 35%,transparent);color:var(--accent)}.ticker{margin-bottom:var(--space-10)}.ticker-track .ext{min-height:var(--space-10);min-width:5rem;font-size:var(--text-sm);background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-md)}.ticker-track{--marquee-gap: var(--space-3)}.tf-grid{display:grid;gap:var(--space-8)}@media(min-width:1000px){.tf-grid{grid-template-columns:1fr 1.1fr;gap:var(--space-12);align-items:start}}.tf-list{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.tf-list a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4);min-height:var(--space-16);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;transition:background-color var(--dur-fast) var(--ease-in-out)}.tf-list a:hover{background:color-mix(in oklab,var(--paper) 60%,transparent)}.tf-list .name{display:grid}.tf-list .name b{font-weight:500}.tf-list .name span{font-size:var(--text-sm);color:var(--ink-3)}.tf-list .n{font-size:var(--text-xs);color:var(--ink-3);display:inline-flex;align-items:center;gap:var(--space-2)}.tf-list .n .i{font-size:var(--text-base);transition:transform var(--dur-base) var(--ease-out)}.tf-list a:hover .n .i{transform:translate(2px);color:var(--accent)}.gen-mock .mock-body{grid-template-columns:1fr}@media(min-width:640px){.gen-mock .mock-body{grid-template-columns:14rem 1fr}}.params{display:grid;align-content:start;gap:var(--space-4)}.param{display:grid;gap:var(--space-2)}.param .lab{font-size:var(--text-xs);font-weight:600;color:var(--ink-2)}.param .box{height:var(--space-10);border:1px solid var(--line);border-radius:var(--radius-md);display:flex;align-items:center;padding-inline:var(--space-3);gap:var(--space-2);font-size:var(--text-sm)}.param .slider{position:relative;height:var(--space-1);border-radius:var(--radius-pill);background:var(--paper-3);margin-block:var(--space-3)}.param .slider:before{content:"";position:absolute;inset:0 40% 0 0;border-radius:inherit;background:var(--accent)}.param .slider:after{content:"";position:absolute;left:60%;top:50%;width:var(--space-4);height:var(--space-4);margin:calc(-1 * var(--space-2)) 0 0 calc(-1 * var(--space-2));border-radius:50%;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow-sm)}.code{margin:0;padding:var(--space-4);border-radius:var(--radius-md);background:var(--paper-2);border:1px solid var(--line);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.9;color:var(--ink-2);overflow:hidden}.code .k{color:var(--accent)}.code .s{color:var(--ink)}.code .ln{display:flex;align-items:center;white-space:pre}.code .ln .sk-inline{margin-inline:.5ch}.code .ln .sk-inline{height:.55em}.priv-grid{display:grid;gap:var(--space-12);align-items:center}@media(min-width:1000px){.priv-grid{grid-template-columns:1fr 1.15fr;gap:var(--space-16)}}.priv-copy{display:grid;gap:var(--space-5)}.priv-copy h2{font-size:var(--text-4xl);font-weight:500}.checklist{display:grid;gap:var(--space-3);margin:0;padding:0;list-style:none}.checklist li{display:grid;grid-template-columns:auto 1fr;gap:var(--space-3);align-items:start}.checklist .i{color:var(--accent);margin-top:var(--space-1)}.flow{display:grid;gap:var(--space-4)}.device{position:relative;display:grid;gap:var(--space-4);padding:var(--space-6);padding-top:var(--space-10);border:1.5px solid var(--ink);border-radius:var(--radius-xl);background:var(--paper)}.device>.eyebrow{position:absolute;top:calc(-1 * var(--space-3));left:var(--space-5);padding:0 var(--space-2);background:var(--paper);color:var(--ink)}.steps-flow{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:var(--space-2)}.node{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-4) var(--space-2);border-radius:var(--radius-md);background:var(--paper-2);border:1px solid var(--line);text-align:center;font-size:var(--text-sm);font-weight:500}.node .i{font-size:var(--text-xl)}.node.hot{background:var(--accent-soft);border-color:color-mix(in oklab,var(--accent) 30%,transparent)}.node.hot .i{color:var(--accent)}.flow-arrow{color:var(--ink-3)}.wall{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);color:var(--ink-3);font-size:var(--text-sm)}.wall .cut{flex:1;height:0;border-top:2px dashed var(--line);position:relative}.wall .cut .x{position:absolute;left:50%;top:50%;display:grid;place-items:center;width:var(--space-8);height:var(--space-8);margin:calc(-1 * var(--space-4)) 0 0 calc(-1 * var(--space-4));border-radius:50%;background:var(--paper);border:1px solid var(--line);color:var(--danger)}.server{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border:1px dashed var(--line);border-radius:var(--radius-lg);color:var(--ink-3);font-size:var(--text-sm)}.server .i{font-size:var(--text-xl)}@media(max-width:520px){.steps-flow{grid-template-columns:1fr}.flow-arrow{transform:rotate(90deg);justify-self:center}}.faq{max-width:52rem;border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-item h3{font-family:var(--font-text);font-size:var(--text-md);font-weight:500;letter-spacing:0}.faq-q{display:flex;width:100%;align-items:center;justify-content:space-between;gap:var(--space-4);min-height:var(--space-16);padding:var(--space-3) 0;background:none;border:0;text-align:left;cursor:pointer;color:var(--ink)}.faq-q:hover{color:var(--accent)}.faq-q .i{--turn: 180deg;color:var(--ink-3);font-size:var(--text-lg)}.faq-a>div{padding-bottom:var(--space-6)}.site-footer{padding-block:var(--space-16) var(--space-8);border-top:1px solid var(--line);background:var(--paper-2);font-size:var(--text-sm)}.foot-grid{display:grid;gap:var(--space-10);grid-template-columns:repeat(2,1fr)}@media(min-width:900px){.foot-grid{grid-template-columns:1.6fr repeat(4,1fr)}}.foot-brand{grid-column:1 / -1;display:grid;gap:var(--space-4);align-content:start}@media(min-width:900px){.foot-brand{grid-column:auto}}.foot-brand p{color:var(--ink-2);max-width:28ch}.foot-col h2{font-family:var(--font-text);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-3);margin-bottom:var(--space-3)}.foot-col ul{margin:0;padding:0;list-style:none}.foot-col a{display:inline-flex;align-items:center;min-height:var(--space-8);color:var(--ink-2);text-decoration:none}.foot-col a:hover{color:var(--ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);margin-top:var(--space-12);padding-top:var(--space-6);border-top:1px solid var(--line);color:var(--ink-3)}.page-head{padding-block:var(--space-8) var(--space-10)}.page-title{display:grid;grid-template-columns:auto 1fr;gap:var(--space-5);align-items:start}.page-title .tool-icon{width:var(--space-16);height:var(--space-16);font-size:var(--text-3xl);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-sm)}.page-title h1{font-size:var(--text-5xl);font-weight:500;letter-spacing:var(--tracking-tighter)}.page-title .lede{margin-top:var(--space-3);font-size:var(--text-lg);color:var(--ink-2);max-width:58ch}@media(max-width:600px){.page-title{grid-template-columns:1fr}}.meta-row{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-5)}.meta-row .pill .i{color:var(--accent)}.studio-head,.fc-head,.u-head{display:grid;gap:var(--space-3);padding-block:var(--space-8) var(--space-6)}.studio-head h1,.fc-head h1,.u-head h1{font-size:var(--text-4xl);font-weight:500;letter-spacing:var(--tracking-tighter)}.studio-head .lede,.fc-head .lede,.u-head .lede{color:var(--ink-2);font-size:var(--text-lg);max-width:58ch}.workspace{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow-md);overflow:hidden}.fs-bar{display:none}@media(min-width:960px){.fs-bar{--fs-bar-h: 3.75rem;display:flex;justify-content:flex-end;align-items:center;height:var(--space-10);margin:calc(-1 * var(--space-10)) 0 0;padding-bottom:var(--space-2);pointer-events:none}.fs-bar .fs-btn{pointer-events:auto;min-height:var(--space-8);padding:0 var(--space-2) 0 var(--space-3);gap:var(--space-2);box-shadow:var(--shadow-sm)}.fs-bar .fs-btn .kbd{height:var(--space-5);min-width:var(--space-5);font-size:.6875rem}.fs-bar:not(.has-file){visibility:hidden}.fs-title{display:none}.fs-bar.is-on{position:fixed;inset:0;z-index:70;display:block;height:auto;margin:0;padding:0;background:var(--paper-2);pointer-events:auto}.fs-bar.is-on:before{content:"";position:absolute;inset:0 0 auto;height:var(--fs-bar-h);border-bottom:1px solid var(--line);background:var(--paper)}.fs-bar.is-on .fs-title{position:absolute;left:var(--space-6);top:0;display:flex;align-items:center;height:var(--fs-bar-h);font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;letter-spacing:var(--tracking-tight)}.fs-bar.is-on .fs-btn{position:absolute;right:var(--space-6);top:calc((var(--fs-bar-h) - var(--space-8)) / 2);background:var(--ink);color:var(--paper);border-color:var(--ink)}.fs-bar.is-on .fs-btn:hover{background:color-mix(in oklab,var(--ink) 86%,var(--accent))}.fs-bar.is-on .fs-btn .kbd{background:transparent;color:inherit;border-color:color-mix(in oklab,var(--paper) 40%,transparent)}.has-fullscreen,.has-fullscreen body{overflow:hidden}.workspace.is-fullscreen{--fs-gap: var(--space-6);position:fixed;z-index:71;inset:calc(3.75rem + var(--fs-gap)) var(--fs-gap) var(--fs-gap);display:flex;flex-direction:column;margin:0;animation:fs-in var(--dur-2) var(--ease-out)}.workspace.is-fullscreen>.ws-foot{display:none}.workspace.is-fullscreen.fs-split{inset:3.75rem 0 0;border:0;border-radius:0;background:transparent;box-shadow:none;overflow:visible}.workspace.is-fullscreen:not(.fs-split)>.ws-main{flex:1 1 0;min-height:0}.workspace.is-fullscreen:not(.fs-split)>.ws-main>:is(.ws-stage,.ws-side){min-height:0;overflow-y:auto;overscroll-behavior:contain}.is-fullscreen.fs-split .ws-main{--fs-fit-w: calc((100cqh - var(--fs-chrome, 0px)) * (var(--ratio, 4 / 3)));flex:1 1 0;min-height:0;container-type:size;display:flex;justify-content:center;align-items:center;gap:var(--fs-gap);padding:var(--fs-gap)}.is-fullscreen.fs-split .ws-stage{flex:none;width:clamp(24rem,var(--fs-fit-w),100cqw - var(--fs-side, 22rem) - var(--fs-gap));max-height:100%;display:flex;flex-direction:column;padding:0;border:0;background:none}.is-fullscreen.fs-split [data-fs-fit]{flex:none;align-self:center;width:min(100%,var(--fs-fit-w));height:auto;min-height:0;max-height:none;aspect-ratio:var(--ratio, 4 / 3)}.is-fullscreen.fs-split .ws-side{flex:none;width:var(--fs-side, 22rem);max-height:100%;overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);box-shadow:var(--shadow-md)}.is-fullscreen.fs-split .ws-side .is-off[inert]{display:none}.is-fullscreen.fs-split .ws-side .btn-primary.btn-lg{position:sticky;bottom:var(--space-4);z-index:2;margin-top:var(--space-4);background:transparent;box-shadow:none}.is-fullscreen.fs-split .ws-side .btn-primary.btn-lg:before{content:"";position:absolute;z-index:-1;inset:calc(-1 * var(--space-4) - 1px) -2rem -3rem;border-top:1px solid var(--line);background:var(--paper);pointer-events:none}.is-fullscreen.fs-split .ws-side .btn-primary.btn-lg:after{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:var(--ink);box-shadow:var(--shadow-sm),inset 0 1px #ffffff1f;pointer-events:none}.is-fullscreen.fs-split .ws-side .btn-primary.btn-lg:hover:after{background:color-mix(in oklab,var(--ink) 86%,var(--accent))}}@keyframes fs-in{0%{opacity:0}}@media(prefers-reduced-motion:reduce){.workspace.is-fullscreen{animation:none}}.ws-main{display:grid}@media(min-width:960px){.ws-main{grid-template-columns:1fr 22rem}}.ws-stage{padding:var(--space-5);background:var(--paper-2)}@media(min-width:960px){.ws-stage{border-right:1px solid var(--line);padding:var(--space-8)}}.drop{position:relative;display:grid;place-items:center;align-content:center;gap:var(--space-4);aspect-ratio:16 / 9;border:1.5px dashed color-mix(in oklab,var(--ink) 22%,transparent);border-radius:var(--radius-lg);background:var(--paper);text-align:center;padding:var(--space-6)}.drop h2{font-size:var(--text-2xl);font-weight:500}.drop p{color:var(--ink-2);font-size:var(--text-sm)}.rec-btn{display:inline-grid;place-items:center;width:var(--space-20);height:var(--space-20);border-radius:50%;border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow-md);cursor:pointer}.rec-btn:before{content:"";width:var(--space-8);height:var(--space-8);border-radius:50%;background:var(--danger);transition:transform var(--dur-base) var(--motion-emphasis),border-radius var(--dur-base) var(--ease-in-out)}.rec-btn:hover:before{transform:scale(1.08)}.ws-side{display:grid;align-content:start;gap:var(--space-6);padding:var(--space-6)}.ws-side .form{gap:var(--space-5);max-width:none}.ws-side .seg-toggle{width:100%}.ws-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-6);border-top:1px solid var(--line);background:var(--paper-2);font-size:var(--text-sm);color:var(--ink-2)}@media(max-width:520px){.ws-foot{padding-inline:var(--space-4);font-size:var(--text-xs)}}.ws-foot span{display:inline-flex;align-items:center;gap:var(--space-2)}.ws-foot .ws-foot-note{display:block;max-width:100%}.ws-foot .ws-foot-note span{display:inline}.ws-foot .ws-foot-note [aria-hidden=true]{margin-inline:var(--space-2)}.ws-foot .i{color:var(--accent)}.ws-foot .ws-foot-note>.i{display:inline-block;margin-right:var(--space-2);vertical-align:-.15em}.ws-foot .ws-manage{white-space:nowrap;color:inherit;text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:3px}.ws-foot .ws-manage:hover{color:var(--ink);text-decoration-color:currentColor}.link-btn{padding:0;border:0;background:none;color:var(--accent);font:inherit;font-size:var(--text-xs);font-weight:500;cursor:pointer}.link-btn:hover{text-decoration:underline}a.many-link{display:inline-flex;align-items:center;justify-self:center;align-self:center;gap:var(--space-2);min-height:var(--space-8);font-size:var(--text-sm);text-decoration:none}a.many-link:hover{text-decoration:underline;text-underline-offset:3px}a.many-link[hidden]{display:none}.article-grid{display:grid;gap:var(--space-12)}@media(min-width:1000px){.article-grid{grid-template-columns:13rem 1fr;gap:var(--space-16)}}.toc{display:none}@media(min-width:1000px){.toc{display:block;position:sticky;top:var(--space-24);align-self:start}}.toc h2{font-family:var(--font-text);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-3);margin-bottom:var(--space-3)}.toc nav{position:relative}.toc-thumb{position:absolute;left:0;top:0;width:2px;height:1px;background:var(--accent);transform-origin:0 0;transform:scaleY(0);transition:transform var(--dur-3) var(--ease-move);pointer-events:none}.toc ul{margin:0;padding:0;list-style:none;border-left:1px solid var(--line)}.toc a{display:block;padding:var(--space-2) var(--space-4);color:var(--ink-2);text-decoration:none;font-size:var(--text-sm)}.toc a:hover,.toc a[aria-current]{color:var(--ink)}.prose{display:grid;gap:var(--space-16);min-width:0}.prose section{display:grid;gap:var(--space-5)}.prose h2{font-size:var(--text-3xl);font-weight:500}.answer{display:grid;gap:var(--space-3);padding:var(--space-6);border-left:3px solid var(--accent);background:var(--paper-2);border-radius:0 var(--radius-md) var(--radius-md) 0}.answer .eyebrow{color:var(--accent)}.howto{counter-reset:step;display:grid;gap:var(--space-6);margin:0;padding:0;list-style:none}.howto li{counter-increment:step;display:grid;grid-template-columns:auto 1fr;gap:var(--space-1) var(--space-5)}.howto li:before{content:counter(step);grid-row:span 2;display:grid;place-items:center;width:var(--space-10);height:var(--space-10);border-radius:50%;border:1px solid var(--line);font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;background:var(--paper)}.howto h3{font-family:var(--font-text);font-size:var(--text-md);font-weight:600;letter-spacing:0;padding-top:var(--space-2)}.spec{width:100%;border-collapse:collapse;font-size:var(--text-base)}.spec th,.spec td{text-align:left;padding:var(--space-3) var(--space-4) var(--space-3) 0;border-bottom:1px solid var(--line);vertical-align:top}.spec th{font-weight:500;color:var(--ink-2);width:38%}.spec thead th{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-3);font-weight:600}.spec td{font-variant-numeric:tabular-nums}.spec tbody tr{transition:background-color var(--dur-fast) var(--ease-in-out)}.spec tbody tr:hover{background:var(--paper-2)}.related{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fill,minmax(15rem,1fr))}.related .tool{padding:var(--space-5);grid-template-columns:auto 1fr auto;align-items:center;gap:var(--space-4)}.related .tool h3{font-size:var(--text-md);font-family:var(--font-text);font-weight:600;letter-spacing:0}.related .tool-icon{width:var(--space-10);height:var(--space-10);font-size:var(--text-lg)}.ws-panels{display:grid;min-width:0}.ws-panel{grid-area:1 / 1;display:grid;align-content:start;gap:var(--space-5);min-width:0;transition:opacity var(--dur-2) var(--ease-move),transform var(--dur-3) var(--ease-out)}.ws-panel.is-off{visibility:hidden;opacity:0;transform:translateY(var(--space-2));transition:none}.ws-panel [hidden]{display:none!important}:is(.up-stage,.co-stage,.bf-stage,.cz-stage,.oc-stage,.rp-stage,.trim-stage,.rec-stage):has(>label:first-child:not([hidden]),>.ws-problem:not([hidden])){overflow:visible}:is(.up-stage,.co-stage,.bf-stage,.cz-stage,.oc-stage,.rp-stage,.trim-stage,.rec-stage)>:is(label:first-child,.ws-problem){min-height:auto}.ws-title{font-size:var(--text-xl);font-weight:500;outline:none}.ws-facts{margin-top:calc(-1 * var(--space-4));font-family:var(--font-mono);font-size:var(--text-sm);color:var(--ink-2);font-variant-numeric:tabular-nums}.ws-summary{display:grid;gap:var(--space-1);font-size:var(--text-sm);color:var(--ink-2)}.ws-summary strong{font-weight:500;color:var(--ink);font-variant-numeric:tabular-nums}.ws-note{font-size:var(--text-sm);color:var(--ink-2)}.ws-note:empty{display:none}.ws-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ws-actions[hidden]{display:none}.ws-progress{display:grid;gap:var(--space-2)}.ws-progress[hidden]{display:none}.ws-progress:has(>.dave-face){grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-3)}.ws-progress>.dave-face{grid-row:span 2;align-self:start;width:2.25rem;height:2.25rem}.ws-progress>:not(.dave-face){grid-column:2}.ws-progress .progress>i{width:var(--v, 0%);animation:none;transition:width var(--dur-2) var(--ease-move)}.ws-progress-text{min-height:2lh;font-size:var(--text-sm);color:var(--ink-2);font-variant-numeric:tabular-nums}.file-row{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper-2)}.file-thumb{flex:none;display:grid;place-items:center;width:var(--space-10);height:var(--space-10);border-radius:var(--radius-sm);overflow:hidden;background:var(--paper-3);color:var(--ink-3)}.file-thumb img{display:block;width:100%;height:100%;object-fit:cover}.file-text{flex:1;min-width:0;display:grid;font-size:var(--text-sm)}.file-text strong{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-text small{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3)}.model-list{display:grid;gap:var(--space-2);min-width:0;margin:0;padding:0;border:0}.model-list legend{padding:0;margin-bottom:var(--space-2)}.model-card{position:relative;display:grid;grid-template-columns:auto 1fr auto;column-gap:var(--space-3);row-gap:var(--space-1);align-items:start;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper);cursor:pointer;transition:border-color var(--dur-2) var(--ease-move),background-color var(--dur-2) var(--ease-move)}.model-card:hover{border-color:color-mix(in oklab,var(--ink) 24%,transparent)}.model-card input{appearance:none;margin:3px 0 0;width:var(--space-4);height:var(--space-4);border:1.5px solid color-mix(in oklab,var(--ink) 30%,transparent);border-radius:50%;background:var(--paper);transition:border-width var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-move)}.model-card input:checked{border:5px solid var(--accent)}.model-card input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.model-card:has(input:checked){border-color:color-mix(in oklab,var(--accent) 45%,transparent);background:var(--accent-soft)}.model-card:has(input:disabled){cursor:default;opacity:.6}.model-name{font-size:var(--text-sm);font-weight:500}.model-real{margin-left:var(--space-1);font-weight:400;color:var(--ink-3)}.model-size{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--ink-3);white-space:nowrap}.model-size.is-kept{color:var(--accent)}.model-hint{grid-column:2 / 4;font-size:var(--text-xs);color:var(--ink-3)}.ws-problem{display:grid;place-items:center;align-content:center;gap:var(--space-4);padding:var(--space-6);text-align:center;background:var(--paper);border:1.5px dashed color-mix(in oklab,var(--danger) 35%,transparent);border-radius:var(--radius-lg);animation:t-pop var(--dur-3) var(--ease-out)}.ws-problem h2{font-size:var(--text-2xl);font-weight:500}.ws-problem p{max-width:34rem;color:var(--ink-2);font-size:var(--text-sm)}.ws-problem>.dave-face{width:4.5rem;height:4.5rem}.notice{display:grid;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in oklab,var(--accent) 30%,var(--line));border-radius:var(--radius-md);background:var(--accent-soft);font-size:var(--text-sm);color:var(--ink);animation:t-pop var(--dur-3) var(--ease-out)}.notice[hidden]{display:none}.notice.is-warn{border-color:color-mix(in oklab,var(--warn) 40%,var(--line));background:color-mix(in oklab,var(--warn) 9%,var(--paper))}.notice.is-error{border-color:color-mix(in oklab,var(--danger) 35%,var(--line));background:color-mix(in oklab,var(--danger) 7%,var(--paper))}.notice .btn{justify-self:start}.notice strong{font-weight:600}.notice.is-error strong{color:var(--danger)}.stage-busy{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:color-mix(in oklab,var(--paper) 35%,transparent)}.stage-scan{position:absolute;top:0;bottom:0;left:0;width:30%;background:linear-gradient(90deg,transparent,color-mix(in oklab,var(--accent) 22%,transparent),transparent);animation:stage-sweep 2.4s var(--ease-in-out) infinite}@keyframes stage-sweep{0%{transform:translate(-100%)}to{transform:translate(340%)}}.stage-tag{position:absolute;top:var(--space-3);padding:2px var(--space-2);border-radius:var(--radius-pill);background:#0000008c;color:#fff;font-size:var(--text-xs);font-weight:500;pointer-events:none}.split-handle{position:absolute;top:0;bottom:0;left:var(--split);width:2px;margin-left:-1px;background:var(--paper);box-shadow:0 0 0 1px #00000040;pointer-events:none}.split-handle span{position:absolute;top:50%;left:50%;width:var(--space-10);height:var(--space-10);translate:-50% -50%;border-radius:50%;background:var(--paper);box-shadow:var(--shadow-md)}.split-handle span:before,.split-handle span:after{content:"";position:absolute;top:50%;width:0;height:0;border-block:5px solid transparent;translate:0 -50%}.split-handle span:before{left:9px;border-right:6px solid var(--ink-2)}.split-handle span:after{right:9px;border-left:6px solid var(--ink-2)}.disclosure{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--paper)}.disclosure>summary{display:flex;align-items:center;gap:var(--space-2);min-height:var(--target-min);padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;cursor:pointer;list-style:none}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.disclosure>summary .i{margin-left:auto;color:var(--ink-3);transition:transform var(--dur-2) var(--ease-out)}.disclosure[open]>summary .i{transform:rotate(180deg)}.group-title{font-family:var(--font-text);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--ink-3)}.range.is-centred::-webkit-slider-runnable-track{background:linear-gradient(to right,var(--paper-3) var(--a, 50%),var(--accent) var(--a, 50%),var(--accent) var(--b, 50%),var(--paper-3) var(--b, 50%))}.range.is-centred::-moz-range-track{background:linear-gradient(to right,var(--paper-3) var(--a, 50%),var(--accent) var(--a, 50%),var(--accent) var(--b, 50%),var(--paper-3) var(--b, 50%))}.range.is-centred::-moz-range-progress{background:transparent}@media(prefers-reduced-motion:reduce){.stage-scan{animation:none;opacity:.6}}.conv-hero{display:grid;gap:var(--space-8)}@media(min-width:1000px){.conv-hero{grid-template-columns:1fr 1fr;align-items:end}}.big-answer{font-family:var(--font-display);font-size:var(--text-5xl);font-weight:500;letter-spacing:var(--tracking-tighter);line-height:1}.big-answer span{color:var(--accent)}.converter{display:grid;gap:var(--space-3);align-items:end;padding:var(--space-6);border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow-md)}@media(min-width:640px){.converter{grid-template-columns:1fr auto 1fr}}.converter .field{gap:var(--space-2)}.unit-field{display:grid;grid-template-columns:1fr auto;align-items:center;min-height:var(--space-20);padding:0 var(--space-4);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--paper);transition:border-color var(--dur-fast) var(--ease-in-out),box-shadow var(--dur-fast) var(--ease-in-out)}.unit-field:focus-within{border-color:var(--accent);box-shadow:var(--field-ring)}.unit-field input{width:100%;min-width:0;border:0;background:none;outline:none;font-family:var(--font-display);font-size:var(--text-3xl);font-weight:500;letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums}.unit-field.out{background:var(--paper-2)}.unit-field .u{font-size:var(--text-sm);font-weight:600;color:var(--ink-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--paper-3)}.converter .swap{justify-self:center;margin-bottom:var(--space-4)}.conv-cols{display:grid;gap:var(--space-12)}@media(min-width:1000px){.conv-cols{grid-template-columns:1.1fr 1fr;gap:var(--space-16)}}.formula{font-family:var(--font-mono);font-size:var(--text-md);padding:var(--space-5);border-radius:var(--radius-md);background:var(--paper-2);border:1px solid var(--line)}.formula b{color:var(--accent);font-weight:600}.gen{display:grid;border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--paper);box-shadow:var(--shadow-md);overflow:hidden}@media(min-width:1000px){.gen{grid-template-columns:26rem 1fr}}.gen-form{padding:var(--space-6);display:grid;gap:var(--space-6);align-content:start}@media(min-width:1000px){.gen-form{padding:var(--space-8);border-right:1px solid var(--line)}}.gen-form .form{max-width:none;gap:var(--space-5)}.gen-form .group-title{font-family:var(--font-text);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--ink-3);padding-top:var(--space-2);border-top:1px solid var(--line)}.gen-form .group-title:first-child{border-top:0;padding-top:0}.gen-out{display:grid;grid-template-rows:auto 1fr auto;background:var(--paper-2);min-width:0}.gen-out-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--line)}.gen-out .code{margin:var(--space-6);background:var(--paper);font-size:var(--text-sm)}.gen-out-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-top:1px solid var(--line)}.size-est{display:grid;font-size:var(--text-sm);color:var(--ink-2)}.size-est b{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;color:var(--ink);line-height:1.1}.gen-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.anatomy{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.anatomy li{display:grid;grid-template-columns:11rem 1fr;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--line)}.anatomy code{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--accent)}@media(max-width:520px){.anatomy li{grid-template-columns:1fr;gap:var(--space-1)}}.credits td:first-child{font-weight:500}.credits td a{color:var(--accent)}.credits .note{display:block;margin-top:var(--space-1);color:var(--ink-3);font-size:var(--text-sm);font-weight:400}.credits th:first-child{width:30%}@media(max-width:640px){.credits thead{display:none}.credits tr{display:grid;padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.credits td{padding:0;border:0}.credits th:first-child{width:auto}}[data-embed] body{background:var(--paper)}[data-embed] .site-header,[data-embed] .site-footer,[data-embed] main>.wrap>:not(.workspace),[data-embed] main>.wrap.section,[data-embed] main>.section,[data-embed] .workspace .ws-foot{display:none!important}[data-embed] main>.wrap:first-child{width:auto;max-width:none;margin:0;padding:0}[data-embed] .workspace{border:0;border-radius:0;box-shadow:none}[data-checkpoint] [data-checkpoint-hide]{display:none!important}
