@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-cyrillic-ext-full-normal-DMBRNe17.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-cyrillic-full-normal-B6SGQ0Mc.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-greek-full-normal-DAsRUyfQ.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-vietnamese-full-normal-D3YMrJeG.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-latin-ext-full-normal-DZvLGSEZ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Flex Variable;font-style:oblique 0deg 10deg;font-display:swap;font-weight:100 1000;font-stretch:25% 151%;src:url(/assets/roboto-flex-latin-full-normal-Bs8sFGIT.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#e8e6e1;--dim:#8b8880;--faint:#38363a;--bg:#131215;--panel:#1a181c;--accent:#d8a657;--hot:#e07a5f;--mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-variation-settings:"wght" 350;-webkit-font-smoothing:antialiased;margin:0;padding:2.5rem 1.5rem 4rem;font-family:Roboto Flex Variable,system-ui,sans-serif;line-height:1.55}.head,main,.foot{max-width:1200px;margin-inline:auto}h1{font-variation-settings:"wght" 800, "wdth" 118;letter-spacing:-.015em;margin:0;font-size:clamp(1.9rem,5vw,3rem)}.sub{max-width:62ch;color:var(--dim);margin:.4rem 0 0}.panel{background:var(--panel);border:1px solid var(--faint);border-radius:10px;margin-top:2.5rem;padding:1.5rem}h2{font-size:1.05rem;font-family:var(--mono);color:var(--accent);margin:0 0 .5rem;font-weight:500}h3{font-size:.8rem;font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--dim);margin:0 0 .5rem;font-weight:500}.note{max-width:76ch;color:var(--dim);margin:0 0 1.25rem;font-size:.9rem}code{font-family:var(--mono);color:var(--ink);font-size:.86em}canvas.plot{border:1px solid var(--faint);background:#0e0d10;border-radius:6px;width:100%;height:auto;display:block}.mono{font-family:var(--mono);font-size:.82rem}.dim{color:var(--dim);font-weight:400}.scrub,.lag{align-items:center;gap:.85rem;margin-top:1rem;display:flex}.scrub label,.lag label{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--dim);flex:none;font-size:.75rem}input[type=range]{min-width:8rem;accent-color:var(--accent);flex:1}.scrub output,.lag output{min-width:15ch;color:var(--accent);flex:none}.assert{border:1px solid var(--faint);background:#0e0d10;border-radius:5px;margin:.9rem 0 0;padding:.6rem .8rem}.assert.pass:before{content:"PASS  ";color:#a3c585}.assert.fail:before{content:"FAIL  ";color:var(--hot)}.controls{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.buttons{flex-wrap:wrap;gap:.5rem;display:flex}button{font-family:var(--mono);color:var(--ink);border:1px solid var(--faint);cursor:pointer;background:#232025;border-radius:5px;padding:.45rem .9rem;font-size:.78rem}button:hover{border-color:var(--dim)}button.primary{color:var(--bg);background:var(--accent);border-color:var(--accent);font-weight:600}.queues{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1.5rem;display:grid}.list{border:1px solid var(--faint);background:#0e0d10;border-radius:6px;min-height:11rem;max-height:16rem;margin:0;padding:0;list-style:none;overflow-y:auto}.list li{border-bottom:1px solid var(--faint);white-space:nowrap;justify-content:space-between;gap:1rem;padding:.35rem .7rem;display:flex}.list li:last-child{border-bottom:none}.list .label{color:var(--ink)}.list .meta{color:var(--dim)}.list .empty{color:var(--faint);justify-content:flex-start;padding:.7rem}.vision{grid-template-columns:minmax(min(100%,18rem),26rem) 1fr;align-items:start;gap:1.5rem;display:grid}@media (max-width:46rem){.vision{grid-template-columns:1fr}}.stage{aspect-ratio:4/3;border:1px solid var(--faint);background:#0e0d10;border-radius:6px;position:relative;overflow:hidden;transform:scaleX(-1)}.stage video,.stage canvas{object-fit:cover;background:0 0;border:0;width:100%;height:100%;position:absolute;inset:0}.stage.hide-feed video,.stage.hide-points canvas{visibility:hidden}.toggle{font-family:var(--mono);color:var(--dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex}.toggle input{accent-color:var(--accent);cursor:pointer}.note.warn{color:var(--hot)}.line{border:1px solid var(--faint);background:#0e0d10;border-radius:6px;flex-wrap:wrap;align-items:flex-end;gap:0 .55em;min-height:5rem;margin-bottom:1.5rem;padding:1.4rem 1rem .9rem;font-size:clamp(1.2rem,3vw,1.9rem);display:flex}.word{align-items:flex-end;display:inline-flex}.word:not(.final){color:var(--dim)}.char{padding-bottom:.5em;line-height:1;display:inline-block;position:relative}.char:after{content:"";height:calc(.12em + var(--ap,0) * .85em);background:var(--accent);opacity:calc(.35 + var(--wd,.5) * .65);border-radius:1px;position:absolute;bottom:0;left:8%;right:8%}button.recording{color:var(--bg);background:var(--hot);border-color:var(--hot);font-weight:600}.row-actions{align-items:center;gap:.5rem;display:inline-flex}.row-status{color:var(--dim);font-size:.68rem}.row-status.ok{color:#a3c585}.row-status.bad{color:var(--hot)}.row-actions button{padding:.15rem .5rem;font-size:.68rem}input[type=text]{min-width:8rem;font-family:var(--mono);color:var(--ink);border:1px solid var(--faint);background:#0e0d10;border-radius:5px;flex:1;padding:.4rem .6rem;font-size:.78rem}input[type=text]:focus{outline:1px solid var(--accent);border-color:var(--accent)}.meters{flex-direction:column;gap:.3rem;display:flex}.meter{grid-template-columns:5.5rem 1fr 3.4rem;grid-template-areas:"label track value"".hint.";align-items:center;gap:.1rem .7rem;display:grid}.meter-label{font-family:var(--mono);color:var(--ink);text-align:right;grid-area:label;font-size:.75rem}.meter-track{border:1px solid var(--faint);background:#0e0d10;border-radius:3px;grid-area:track;height:.85rem;position:relative;overflow:hidden}.meter-fill{background:var(--accent);width:0;position:absolute;inset:0 auto 0 0}.meter-mark{background:var(--ink);opacity:.55;width:1px;position:absolute;top:0;bottom:0}.meter-mark:after{content:attr(data-label);font-family:var(--mono);color:var(--dim);font-size:.55rem;position:absolute;top:-.15rem;left:.2rem}.meter-value{font-family:var(--mono);color:var(--accent);text-align:right;font-variant-numeric:tabular-nums;grid-area:value;font-size:.75rem}.meter-hint{font-family:var(--mono);color:var(--faint);grid-area:hint;margin-bottom:.15rem;font-size:.6rem}.foot{color:var(--dim);margin-top:3rem;font-size:.85rem}
