:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060913;--panel:#0c1222;--panel-2:#111a2e;--panel-3:#16213a;--line:#94a3c429;--line-2:#94a3c44d;--ink:#f1f5ff;--ink-2:#aab4cf;--ink-3:#8c97b3;--cyan:#22d3ee;--cyan-soft:#22d3ee1f;--cyan-glow:#22d3ee47;--violet:#a78bfa;--violet-soft:#8b5cf629;--purple-deep:#2e1065;--good:#4ade80;--good-soft:#4ade801f;--warn:#fab219;--bad:#f87171;--bad-soft:#f871711f;--series-1:#3987e5;--chart-axis:#2c3a5c;--chart-grid:#1b2640;--radius:16px;--radius-sm:10px;--gutter:clamp(16px, 2.6vw, 28px);--topbar:64px;--sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "JetBrains Mono", "Cascadia Code", Menlo, Consolas, monospace}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-padding-top:calc(var(--topbar) + 16px)}body{background:var(--bg);min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:1.5;overflow-x:hidden}body:before{content:"";z-index:-1;background:radial-gradient(900px 520px at 8% -8%, #4c1d956b, transparent 62%), radial-gradient(760px 460px at 100% 0%, #22d3ee1a, transparent 60%), radial-gradient(1000px 600px at 50% 110%, #2e106559, transparent 60%), var(--bg);position:fixed;inset:0}h1,h2,h3,h4{margin:0;line-height:1.25}p{margin:0}a{color:var(--cyan)}code,.mono{font-family:var(--mono);overflow-wrap:anywhere;font-size:.86em}button,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}canvas{display:block}.pixelated{image-rendering:crisp-edges;image-rendering:pixelated}.muted{color:var(--ink-3)}.fine{color:var(--ink-3);font-size:12.5px}.note{color:var(--ink-2);font-size:13.5px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:50;background:var(--cyan);color:#04111c;border-radius:8px;padding:8px 12px;font-weight:600;position:absolute;top:-48px;left:12px}.skip-link:focus{top:12px}.icon{flex:none;display:inline-flex}.icon svg{display:block}.topbar{z-index:20;min-height:var(--topbar);padding:10px var(--gutter);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);background:#060913c7;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:12px;min-width:0;display:flex}.brand-mark{filter:drop-shadow(0 0 12px #22d3ee40);display:flex}.brand-text{flex-direction:column;min-width:0;display:flex}.brand-text strong{letter-spacing:.01em;font-size:16px}.brand-text span{color:var(--ink-3);font-size:12.5px}.stepper{gap:6px;margin:0;padding:0;list-style:none;display:flex}.stepper li{border:1px solid var(--line);color:var(--ink-3);background:#111a2e99;border-radius:999px;align-items:center;gap:7px;padding:5px 10px 5px 5px;font-size:13px;transition:border-color .2s,color .2s,background .2s;display:flex}.step-dot{background:var(--panel-3);width:22px;height:22px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:12px;font-weight:700;display:grid}.stepper li[data-status=current]{color:var(--ink);background:var(--cyan-soft);border-color:#22d3ee8c}.stepper li[data-status=current] .step-dot{background:var(--cyan);color:#04111c}.stepper li[data-status=available],.stepper li[data-status=done]{color:var(--ink-2)}.stepper li[data-status=done] .step-dot{background:var(--good-soft);color:var(--good);box-shadow:inset 0 0 0 1px #4ade8080}.stepper li[data-status=locked]{opacity:.55}main{max-width:1520px;padding:var(--gutter);margin:0 auto}.panel{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(#111a2ef0,#0c1222f0);min-width:0;padding:clamp(14px,2vw,22px)}.setup{gap:18px;display:grid}.step-head{align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.step-badge{color:#04111c;background:linear-gradient(135deg, var(--cyan), var(--violet));border-radius:12px;flex:none;place-items:center;width:38px;height:38px;font-weight:800;display:grid;box-shadow:0 0 22px #22d3ee38}.step[data-locked=true] .step-badge{background:var(--panel-3);color:var(--ink-3);box-shadow:none}.step h1{letter-spacing:-.01em;font-size:clamp(22px,3vw,30px)}.step h2{font-size:clamp(19px,2.4vw,24px)}.lead{color:var(--ink-2);max-width:72ch;margin-top:6px}.step[data-locked=true] .image-row,.step[data-locked=true] .samples-block,.step[data-locked=true] .actions{opacity:.45}.notice{border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:flex}.notice[data-tone=info]{background:var(--cyan-soft);color:var(--ink);border-color:#22d3ee4d}.notice[data-tone=ok]{background:var(--good-soft);color:var(--ink);border-color:#4ade8059}.notice[data-tone=ok]>.icon{color:var(--good)}.notice[data-tone=error]{background:var(--bad-soft);color:var(--ink);border-color:#f8717166}.notice[data-tone=error]>.icon{color:var(--bad)}.notice[data-tone=info]>.icon{color:var(--cyan)}.notice .ghost-button{margin-left:auto}.notice strong{color:var(--ink)}.primary-button,.secondary-button,.ghost-button,.control,.chip-button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;transition:transform .15s,box-shadow .2s,background .2s,border-color .2s,opacity .2s;display:inline-flex}.primary-button{color:#050814;background:linear-gradient(120deg, var(--cyan), #7dd3fc 45%, var(--violet));padding:12px 20px;font-weight:700;box-shadow:0 8px 28px #22d3ee38}.primary-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 34px #22d3ee52}.primary-button.small{padding:8px 14px;font-size:14px}.secondary-button{background:var(--panel-3);border-color:var(--line-2);padding:12px 18px;font-weight:600}.secondary-button:hover:not(:disabled){border-color:#a78bfa99}.ghost-button{border-color:var(--line);color:var(--ink-2);background:#16213ab3;padding:9px 14px;font-size:14px}.ghost-button:hover:not(:disabled){color:var(--ink);border-color:var(--line-2)}.ghost-button.small{border-radius:10px;padding:6px 11px;font-size:13px}.primary-button:disabled,.secondary-button:disabled,.ghost-button:disabled,.control:disabled,.chip-button:disabled{opacity:.4;box-shadow:none;transform:none}.chip-button{background:var(--panel-3);border-color:var(--line);width:30px;height:30px;color:var(--ink-2)}.actions{flex-wrap:wrap;gap:12px;display:flex}.select{border:1px solid var(--line-2);background-color:var(--panel-3);appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--ink-3) 50%), linear-gradient(135deg, var(--ink-3) 50%, transparent 50%);background-position:calc(100% - 15px) 55%,calc(100% - 10px) 55%;background-repeat:no-repeat;background-size:5px 5px;border-radius:10px;max-width:100%;padding:7px 30px 7px 10px;font-size:13.5px}.model-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:14px;display:grid}.model-card{border:1px solid var(--line);cursor:pointer;background:#111a2ed9;border-radius:14px;flex-direction:column;gap:8px;padding:16px;transition:transform .18s,border-color .2s,box-shadow .25s;display:flex;position:relative}.model-card:hover{border-color:var(--line-2);transform:translateY(-2px)}.model-card[data-selected=true]{background:linear-gradient(#22d3ee17,#111a2ee6 42%);border-color:#22d3eeb3;box-shadow:0 0 0 1px #22d3ee59,0 12px 40px #22d3ee24}.model-card[data-status=error]{cursor:not-allowed;opacity:.6}.mc-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.mc-glyph{background:var(--panel-3);border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.mc-status{color:var(--ink-3);text-align:right;align-items:center;gap:6px;font-size:12px;display:inline-flex}.mc-status:before{content:"";background:var(--ink-3);border-radius:50%;flex:none;width:7px;height:7px}.mc-status[data-status=ready]{color:var(--good)}.mc-status[data-status=ready]:before{background:var(--good);box-shadow:0 0 8px var(--good)}.mc-status[data-status=parsed]:before{background:var(--violet)}.mc-status[data-status=downloading]:before,.mc-status[data-status=loading]:before{background:var(--cyan);animation:1s infinite blink}.mc-status[data-status=error]{color:var(--bad)}.mc-status[data-status=error]:before{background:var(--bad)}.mc-name{font-size:19px}.mc-code{color:var(--ink-3);font-size:12px}.mc-question{color:var(--violet);font-size:14px;font-weight:600}.mc-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:4px 0 8px;font-size:13px;display:grid}.mc-facts div{gap:1px;min-width:0;display:grid}.mc-facts div:first-child,.mc-facts div:last-child{grid-column:1/-1}.mc-facts dt{color:var(--ink-3);font-size:11.5px}.mc-facts dd{color:var(--ink-2);overflow-wrap:anywhere;margin:0}.mc-select{border:1px solid var(--line-2);background:var(--panel-3);color:var(--ink);border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:9px 12px;font-size:14px;font-weight:600;display:inline-flex}.mc-select[aria-pressed=true]{background:linear-gradient(120deg, var(--cyan), var(--violet));color:#050814;border-color:#0000}.available{border:1px solid var(--line);background:#0c1222b3;border-radius:14px;margin-top:16px}.available>summary,.tech-details>summary{cursor:pointer;color:var(--ink-2);padding:12px 16px;font-weight:600;list-style-position:inside}.available[open]>summary{border-bottom:1px solid var(--line)}.available>div{gap:10px;padding:14px 16px 16px;display:grid}.table-scroll{border:1px solid var(--line);border-radius:10px;max-width:100%;overflow-x:auto}.compare-table,.data-table table{border-collapse:collapse;width:100%;font-size:13px}.compare-table caption,.data-table caption{text-align:left;color:var(--ink-3);padding:8px 10px;font-size:12px}.compare-table th,.compare-table td,.data-table th,.data-table td{border-top:1px solid var(--line);text-align:left;white-space:nowrap;padding:8px 10px}.compare-table thead th,.data-table thead th{color:var(--ink-3);background:#16213a99;font-weight:600}.compare-table tbody th{color:var(--ink);font-weight:600}.compare-table td{color:var(--ink-2);font-variant-numeric:tabular-nums}.image-row{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;display:grid}.dropzone{text-align:center;cursor:pointer;background:radial-gradient(120% 120% at 50% 0,#22d3ee14,#0000 60%),#0c1222cc;border:1.5px dashed #22d3ee73;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:8px;min-height:190px;padding:22px;transition:border-color .2s,box-shadow .2s,background .2s;display:flex}.dropzone:hover,.dropzone[data-drag=true]{border-color:var(--cyan);box-shadow:0 0 0 4px var(--cyan-soft)}.dropzone[aria-disabled=true]{cursor:not-allowed;border-color:var(--line-2);box-shadow:none}.dropzone-icon{color:var(--cyan)}.preview{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;grid-template-columns:minmax(0,auto) minmax(0,1fr);align-items:center;gap:14px;padding:12px;display:grid}.preview canvas{border-radius:10px;max-width:min(100%,260px);height:auto}.preview-info{gap:8px;min-width:0;display:grid}.preview-meta{overflow-wrap:anywhere;gap:2px;font-size:14px;display:grid}.preview-model{background:var(--cyan-soft);border:1px solid #22d3ee4d;border-radius:10px;padding:8px 10px;font-size:14px}.samples-block{margin-top:16px}.samples-block h3{color:var(--ink-2);margin-bottom:10px;font-size:14px;font-weight:600}.samples{grid-template-columns:repeat(auto-fill,minmax(min(100%,118px),1fr));gap:10px;display:grid}.sample{border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);text-align:left;border-radius:12px;gap:6px;padding:6px;font-size:12.5px;display:grid}.sample:hover:not(:disabled){color:var(--ink);border-color:#a78bfa99}.sample:disabled{opacity:.5}.sample img{aspect-ratio:4/3;object-fit:cover;background:var(--panel-3);border-radius:8px;width:100%}.sample-label{align-items:center;gap:6px;display:flex}.sample-glyph svg{width:18px;height:18px;display:block}.notice[data-busy=true]{background:var(--violet-soft);border-color:#a78bfa73}.spinner{border:2px solid #a78bfa59;border-top-color:var(--violet);border-radius:50%;flex:none;width:16px;height:16px;animation:.8s linear infinite spin}.workspace{gap:16px;display:grid}.summary-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.summary-items{flex-wrap:wrap;align-items:center;gap:10px 18px;min-width:0;display:flex}.summary-actions{flex-wrap:wrap;gap:8px;display:flex}.summary-image{color:var(--ink-2);overflow-wrap:anywhere;font-size:14px}.model-chip{flex-wrap:wrap;align-items:center;gap:8px;display:inline-flex}.chip-glyph svg{display:block}.workspace-grid{grid-template-columns:minmax(250px,292px) minmax(0,1fr) minmax(340px,460px);align-items:start;gap:16px;display:grid}.col{gap:14px;min-width:0;display:grid}.col-left,.col-right{top:calc(var(--topbar) + 12px);max-height:calc(100vh - var(--topbar) - 24px);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--panel-3) transparent;position:sticky;overflow-y:auto}.panel-title{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);margin-bottom:10px;font-size:13px;font-weight:700}.left-photo-frame{background:var(--panel-3);border-radius:12px;place-items:center;display:grid;overflow:hidden}.left-photo-frame canvas{max-width:100%;height:auto}.player-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.journey-status{background:var(--panel-3);color:var(--ink-2);border-radius:999px;padding:2px 9px;font-size:12px}.journey-status[data-phase=PLAYING]{background:var(--cyan-soft);color:var(--cyan)}.journey-status[data-phase=COMPLETED]{background:var(--good-soft);color:var(--good)}.progress-headline{font-size:18px;font-weight:700}.progress-sub{color:var(--ink-3);overflow-wrap:anywhere;margin-top:2px;font-size:13px}.progress-track{background:var(--panel-3);border-radius:999px;height:6px;margin:12px 0;overflow:hidden}.progress-fill{transform-origin:0;background:linear-gradient(90deg, var(--cyan), var(--violet));width:100%;height:100%;display:block;transform:scaleX(0)}.player-buttons{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-areas:"play play""prev next";gap:8px;display:grid}.player-buttons #play{grid-area:play}.player-buttons #prev{grid-area:prev}.player-buttons #next{grid-area:next}.control{background:var(--panel-3);border-color:var(--line-2);padding:10px 8px;font-size:14px;font-weight:600}.control:hover:not(:disabled){border-color:#22d3ee8c}.control-main{background:linear-gradient(120deg, var(--cyan), var(--violet));color:#050814;border-color:#0000}.control-main[aria-pressed=true]{background:var(--panel-3);color:var(--ink);border-color:#22d3ee99}.player-extra{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.speed{color:var(--ink-3);align-items:center;gap:8px;margin-left:auto;font-size:13px;display:inline-flex}.player .fine{margin-top:10px}.timing{gap:10px;display:grid}.timing-row{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;gap:1px;padding:10px 12px;display:grid}.timing-row span{color:var(--ink-2);font-size:12.5px}.timing-row strong{font-variant-numeric:tabular-nums;font-size:20px}.timing-row small{color:var(--ink-3);font-size:12px}.timing-row.is-real{border-color:#22d3ee66}.timing-row.is-real strong{color:var(--cyan)}.timing-row.is-edu strong{color:var(--violet)}.result-card{gap:10px;display:grid}.result-card h3{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:13px}.result-card[data-revealed=true]{border-color:#22d3ee73;box-shadow:0 0 36px #22d3ee14}.result-question{color:var(--violet);font-weight:600}.result-value{letter-spacing:-.02em;font-size:40px;font-weight:800;line-height:1.05}.result-actions{flex-wrap:wrap;gap:8px;display:flex}.stack-buttons{gap:8px;display:grid}.decision{color:var(--ink-2);align-items:center;gap:8px;font-weight:600;display:flex}.decision[data-passes=true]{color:var(--good)}.meter{background:var(--panel-3);border-radius:999px;height:12px;position:relative}.meter-fill{background:var(--ink-3);border-radius:999px;position:absolute;inset:0 auto 0 0}.meter-fill[data-passes=true]{background:linear-gradient(90deg, #4ade80b3, var(--good))}.meter-tick{background:var(--ink);border-radius:2px;width:2px;margin-left:-1px;position:absolute;top:-4px;bottom:-4px}.arch-head{margin-bottom:12px}.shape-strip-wrap{margin-bottom:14px}.strip-frame{background:var(--panel-2);border:1px solid var(--line);cursor:pointer;border-radius:12px;padding:10px}.shape-strip{width:100%;height:86px;display:block}.shape-box{fill:#3987e54d;stroke:#3987e5d9;stroke-width:1px;transition:fill .25s}.shape-box.is-done{fill:#3987e580}.shape-box.is-active{fill:var(--cyan);stroke:#cffafe;filter:drop-shadow(0 0 6px #22d3eeb3)}.shape-strip-wrap .fine{margin-top:6px}.pipeline-scroll{max-height:calc(100vh - var(--topbar) - 250px);scrollbar-width:thin;scrollbar-color:var(--panel-3) transparent;min-height:360px;padding:2px 6px 2px 2px;position:relative;overflow-y:auto}.pipeline{margin:0;padding:0;list-style:none}.station{position:relative}.st-branch{color:var(--violet);margin:0 0 6px 40px;font-size:12px;display:block}.station[data-branch=side]{margin-left:26px}.station[data-branch=side] .st-button{border-style:dashed;border-color:#a78bfa73}.st-button{text-align:left;border:1px solid var(--line);background:#111a2ee6;border-radius:12px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;padding:10px 12px;transition:border-color .2s,box-shadow .25s,background .25s;display:grid}.st-button:hover{border-color:var(--line-2)}.st-index{background:var(--panel-3);width:32px;height:32px;color:var(--ink-3);font-family:var(--mono);border-radius:10px;place-items:center;font-size:12.5px;font-weight:700;display:grid}.st-body{gap:1px;min-width:0;display:grid}.st-title{font-weight:650}.st-sub{color:var(--ink-3);overflow-wrap:anywhere;font-size:12.5px}.st-meta{flex-wrap:wrap;align-items:center;gap:4px 8px;display:flex}.st-block{color:var(--violet);font-size:11.5px}.st-code{color:var(--ink-3);font-size:11.5px}.st-side{justify-items:end;gap:4px;display:grid}.st-thumb{background:var(--panel-3);object-fit:cover;border-radius:7px;width:46px;height:46px}.st-thumb.is-strip{height:12px}.st-shape{font-family:var(--mono);color:var(--ink-2);white-space:nowrap;font-size:11px}.st-link{background:var(--line-2);width:2px;height:16px;margin-left:28px;display:block;position:relative}.station:last-child .st-link{display:none}.st-pulse{background:var(--cyan);width:8px;height:8px;box-shadow:0 0 10px var(--cyan);opacity:0;transform:translateY(calc(var(--flow,0) * 16px));border-radius:50%;position:absolute;top:-4px;left:-3px}body[data-phase=PLAYING] .station[data-state=active] .st-pulse{opacity:1}.station[data-state=active] .st-button{background:linear-gradient(90deg,#22d3ee24,#111a2ef2 60%);border-color:#22d3eebf;box-shadow:0 0 0 1px #22d3ee40,0 0 26px #22d3ee24}.station[data-state=active] .st-index{background:var(--cyan);color:#04111c}.station[data-state=done] .st-index{background:var(--good-soft);color:var(--good)}.station[data-state=done] .st-link{background:linear-gradient(var(--good), #4ade8059)}.inspector{gap:14px;min-height:320px;display:grid}.inspector:focus{outline:none}.placeholder{color:var(--ink-3)}.insp-head{gap:4px;display:grid}.eyebrow{color:var(--cyan);letter-spacing:.1em;text-transform:uppercase;font-size:11.5px;font-weight:700}.insp-head h2{outline:none;font-size:22px}.insp-sub{color:var(--ink-3);font-size:13px}.insp-text{color:var(--ink-2);font-size:14px}.insp-block{border-top:1px solid var(--line);gap:10px;padding-top:14px;display:grid}.insp-block h4{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-3);font-size:12px}.facts{border:1px solid var(--line);border-radius:12px;gap:0;margin:0;font-size:13.5px;display:grid;overflow:hidden}.fact{border-top:1px solid var(--line);grid-template-columns:minmax(96px,40%) minmax(0,1fr);gap:10px;padding:7px 12px;display:grid}.fact:first-child{border-top:0}.fact dt{color:var(--ink-3)}.fact dd{color:var(--ink);overflow-wrap:anywhere;margin:0}.tech .fact{grid-template-columns:minmax(120px,28%) minmax(0,1fr)}.step-tabs{flex-wrap:wrap;gap:6px;display:flex}.step-tab{border:1px solid var(--line);background:var(--panel-2);color:var(--ink-2);border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:13px;display:inline-flex}.step-tab-index{background:var(--panel-3);border-radius:50%;place-items:center;width:18px;height:18px;font-size:11px;display:grid}.step-tab[aria-selected=true]{color:var(--ink);background:var(--cyan-soft);border-color:#22d3eeb3}.step-tab[aria-selected=true] .step-tab-index{background:var(--cyan);color:#04111c}.step-panel{gap:12px;display:grid}.step-title{font-size:17px}.data-origin{background:var(--panel-2);border:1px solid var(--line);color:var(--ink-2);border-radius:10px;align-items:flex-start;gap:8px;padding:9px 11px;font-size:12.5px;display:flex}.data-origin .icon{color:var(--cyan);margin-top:1px}.segmented{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;justify-self:start;gap:4px;padding:4px;display:inline-flex}.segment{color:var(--ink-3);background:0 0;border:0;border-radius:8px;padding:6px 10px;font-size:13px}.segment[aria-pressed=true]{background:var(--panel-3);color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}.block-actions{flex-wrap:wrap;gap:8px;display:flex}.fm{gap:10px;display:grid}.fm-controls{flex-wrap:wrap;gap:8px;display:flex}.fm-grid{grid-template-columns:repeat(auto-fill,minmax(58px,1fr));gap:6px;display:grid}.fm-tile{aspect-ratio:var(--tile-aspect,1 / 1);border:1px solid var(--line);background:var(--panel-3);border-radius:6px;padding:0;transition:opacity .25s,border-color .2s,transform .2s;position:relative;overflow:hidden}.fm-tile:hover{border-color:var(--line-2);transform:scale(1.03)}.fm-tile[aria-pressed=true]{border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}.fm-tile.is-pending{opacity:.06}.fm-canvas{width:100%;height:100%}.fm-index{color:var(--ink-2);font-family:var(--mono);pointer-events:none;background:#060913b8;border-radius:4px;padding:0 4px;font-size:10px;position:absolute;bottom:2px;left:3px}.fm-footer{color:var(--ink-3);justify-content:space-between;align-items:center;gap:8px;font-size:12.5px;display:flex}.fm-pager{gap:6px;display:inline-flex}.colorbar{gap:4px;display:grid}.cb-gradient{border-radius:999px;height:10px;display:block}.cb-labels{font-family:var(--mono);color:var(--ink-3);justify-content:space-between;font-size:11px;display:flex}.cb-caption{color:var(--ink-3);font-size:12px}.channel-view{gap:8px;display:grid}.cv-head{color:var(--ink-3);justify-content:space-between;gap:8px;font-size:13px;display:flex}.cv-head strong{color:var(--ink)}.cv-frame{border:1px solid var(--line);background:var(--panel-3);border-radius:12px;max-width:380px;overflow:hidden}.cv-canvas{aspect-ratio:1;cursor:crosshair;width:100%;height:auto}.mini-stats{flex-wrap:wrap;gap:6px 16px;margin:0;font-size:12.5px;display:flex}.mini-stats div{gap:6px;display:flex}.mini-stats dt{color:var(--ink-3)}.mini-stats dd{font-family:var(--mono);margin:0}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;display:grid}.stats-grid div{background:var(--panel-2);border:1px solid var(--line);border-radius:10px;min-width:0;padding:8px 10px}.stats-grid dt{color:var(--ink-3);font-size:11.5px}.stats-grid dd{font-family:var(--mono);overflow-wrap:anywhere;margin:0;font-size:13px}.chart{gap:6px;margin:0;display:grid}.chart figcaption{color:var(--ink-3);font-size:12.5px}.chart-frame{position:relative}.histogram{width:100%;height:96px;display:block}.columns{width:100%;height:90px;display:block}.line-frame{grid-template-columns:auto minmax(0,1fr);gap:8px;display:grid}.line-axis{font-family:var(--mono);color:var(--ink-3);text-align:right;flex-direction:column;justify-content:space-between;font-size:11px;display:flex}.line-plot{height:150px;position:relative}.line-chart{width:100%;height:100%;display:block}.line-dot{background:var(--series-1);width:10px;height:10px;box-shadow:0 0 0 2px var(--panel);pointer-events:none;border-radius:50%;margin:-5px 0 0 -5px;position:absolute}.line-labels{padding-left:34px}.chart-bar{fill:var(--series-1)}.chart-baseline{stroke:var(--chart-axis);stroke-width:1px}.chart-zero{stroke:#f1f5ff59;stroke-width:1px;vector-effect:non-scaling-stroke}.chart-grid{stroke:var(--chart-grid);stroke-width:1px;vector-effect:non-scaling-stroke}.chart-line{fill:none;stroke:var(--series-1);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.axis-row{color:var(--ink-3);font-family:var(--mono);justify-content:space-between;gap:8px;font-size:11px;display:flex}.axis-abs{margin-top:4px;position:relative}.axis-zero{position:absolute;top:0;transform:translate(-50%)}.data-table summary{cursor:pointer;color:var(--ink-3);font-size:12px}.data-table .table-scroll{max-height:260px;margin-top:6px;overflow:auto}.bars{gap:6px;display:grid}.bar-row{grid-template-columns:minmax(70px,34%) minmax(0,1fr) auto;align-items:center;gap:10px;font-size:13px;display:grid}.bar-label{color:var(--ink-2);overflow-wrap:anywhere}.bar-track{background:#16213ab3;border-radius:0 4px 4px 0;height:14px;position:relative}.bar-fill{background:var(--series-1);opacity:.55;border-radius:0 4px 4px 0;position:absolute;inset:0 auto 0 0}.bar-row[data-emphasis=true] .bar-fill{opacity:1}.bar-row[data-emphasis=true] .bar-label{color:var(--ink);font-weight:600}.bar-value{font-family:var(--mono);color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:12px}.strip{border:1px solid var(--line);border-radius:8px;overflow:hidden}.strip-canvas{cursor:crosshair;width:100%;height:44px}.matrix{grid-template-columns:auto minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.matrix-rows{grid-template-rows:repeat(var(--rows), 1fr);color:var(--ink-3);font-size:11px;display:grid}.matrix-rows span{white-space:nowrap;align-items:center;display:flex}.matrix-rows:empty{display:none}.matrix-frame{border:1px solid var(--line);border-radius:8px;overflow:hidden}.matrix-canvas{width:100%;height:calc(var(--rows) * 14px);cursor:crosshair;min-height:60px;max-height:420px}.big-value{font-size:32px;font-weight:800;font-family:var(--mono)}.filters{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px;display:grid}.filter-tile{font-family:var(--mono);color:var(--ink-3);justify-items:center;gap:2px;font-size:10px;display:grid;position:relative}.filter-canvas{aspect-ratio:1;border:1px solid var(--line);border-radius:6px;width:100%}.weights-slot{gap:10px;display:grid}.photo-frame{background:var(--panel-3);border-radius:12px;place-items:center;display:grid;overflow:hidden}.insp-photo{max-width:100%;height:auto}.prep-steps{counter-reset:prep;gap:10px;margin:0;padding:0;list-style:none;display:grid}.prep-step{border:1px solid var(--line);background:var(--panel-2);border-radius:12px;grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;padding:10px;transition:opacity .35s,transform .35s;display:grid}.prep-step.is-pending{opacity:.12;transform:translateY(4px)}.prep-visual{background:var(--panel-3);width:76px;height:60px;color:var(--violet);border-radius:8px;place-items:center;display:grid;overflow:hidden}.prep-thumb{width:auto;max-width:76px;height:auto;max-height:60px}.prep-thumb.pixelated{width:60px;height:60px}.prep-body{gap:1px;min-width:0;display:grid}.prep-value{font-family:var(--mono);color:var(--cyan);font-size:12.5px}.prep-detail{color:var(--ink-3);overflow-wrap:anywhere;font-size:12.5px}.planes{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.plane{gap:4px;margin:0;transition:opacity .35s;display:grid}.plane.is-pending{opacity:.1}.plane-canvas{aspect-ratio:1;border:1px solid var(--line);border-radius:8px;width:100%}.plane figcaption{color:var(--ink-3);text-align:center;font-size:12px}.output-hero{background:radial-gradient(120% 140% at 0% 0%, #22d3ee24, transparent 60%), var(--panel-2);border:1px solid #22d3ee59;border-radius:14px;gap:2px;padding:16px;display:grid}.hero-number{letter-spacing:-.02em;font-size:48px;font-weight:800;line-height:1}.hero-label{color:var(--ink-2)}.chain{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.chain li{background:var(--panel-2);border:1px solid var(--line);border-radius:12px;gap:2px;padding:10px;display:grid}.chain span{color:var(--ink-3);font-size:12px}.chain strong{font-family:var(--mono);font-size:16px}.chain small{color:var(--ink-3);font-size:11.5px}.approx{background:var(--violet-soft);border:1px dashed #a78bfa99;border-radius:12px;gap:10px;padding:14px;display:grid}.badge{border-radius:999px;justify-self:start;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.badge-approx{color:var(--violet);background:#a78bfa33}.approx-scheme{grid-template-columns:repeat(6,18px);gap:3px;display:grid}.approx-scheme span{background:var(--panel-3);border-radius:3px;width:18px;height:18px}.approx-scheme span.on{background:#a78bfa99}.extra{gap:14px;display:grid}.extra-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.extra-head h2{font-size:20px}.compare-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.compare-controls label,.inline-label{color:var(--ink-3);gap:4px;min-width:0;max-width:100%;font-size:12.5px;display:grid}.fixed-select{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);border-radius:10px;padding:7px 10px;font-size:13.5px}.compare-output{gap:14px;display:grid}.compare-summary{background:var(--cyan-soft);border:1px solid #22d3ee4d;border-radius:12px;padding:12px 14px}.compare-summary h4{margin-bottom:6px;font-size:13px}.compare-summary ul{color:var(--ink-2);margin:0;padding-left:18px;font-size:14px}.compare-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px;display:grid}.compare-side{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;align-content:start;gap:10px;min-width:0;padding:14px;display:grid}.compare-name{font-weight:600}.tech-details>summary h2{font-size:18px;display:inline}.tech-details[open]>summary{margin-bottom:12px}.channels-dialog{border:1px solid var(--line-2);background:var(--panel);width:min(1120px,100vw - 24px);max-height:88vh;color:var(--ink);border-radius:18px;padding:0}.channels-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#03060ebd}.dialog-head{z-index:1;background:var(--panel);border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px;display:flex;position:sticky;top:0}.dialog-head h2{font-size:18px}.dialog-body{grid-template-columns:minmax(0,1fr) minmax(220px,320px);align-items:start;gap:16px;padding:16px 18px 20px;display:grid}.tooltip{z-index:1000;pointer-events:none;border:1px solid var(--line-2);background:#090e1cf5;border-radius:10px;max-width:280px;padding:8px 10px;font-size:12px;position:fixed;top:0;left:0;box-shadow:0 10px 30px #00000073}.tip-row{color:var(--ink-3);align-items:baseline;gap:8px;display:flex}.tip-row strong{color:var(--ink-2);font-family:var(--mono);font-weight:600}.tip-lead strong{color:var(--ink);font-size:14px}.footer{max-width:1520px;padding:0 var(--gutter);color:var(--ink-3);margin:8px auto 28px;font-size:12.5px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{50%{opacity:.3}}@media (max-width:1180px){.workspace-grid{grid-template-columns:minmax(0,1fr) minmax(320px,420px)}.col-left{grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));align-items:start;max-height:none;position:static;overflow:visible}}@media (max-width:860px){:root{--topbar:56px}.topbar{flex-wrap:wrap}.workspace-grid{grid-template-columns:minmax(0,1fr)}.col-left,.col-right{max-height:none;position:static;overflow:visible}.pipeline-scroll{min-height:0;max-height:none;overflow:visible}.dialog-body{grid-template-columns:minmax(0,1fr)}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){body{font-size:14.5px}.brand-text span{display:none}.stepper li{padding:4px}.stepper li .step-name{display:none}.stepper li[data-status=current] .step-name{padding-right:6px;display:inline}.preview,.chain{grid-template-columns:minmax(0,1fr)}.fact{grid-template-columns:minmax(0,1fr);gap:0}.bar-row{grid-template-columns:minmax(0,1fr) auto}.bar-row .bar-track{grid-area:2/1/auto/-1}.hero-number{font-size:40px}.station[data-branch=side]{margin-left:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.st-pulse{display:none}}.setup,.workspace,.col,.inspector,.step-panel,.insp-block,.fm,.channel-view,.chart,.compare-output,.compare-side,.result-card,.timing,.extra,.weights-slot,.available>div{grid-template-columns:minmax(0,1fr);min-width:0}.compare-controls label{flex:240px}.compare-controls .select{width:100%}.compare-controls .primary-button{flex:0 auto}.notice>span:not(.icon):not(.spinner){flex:220px;min-width:0}
