:root{--bg:#000;--panel:#131313;--panel-2:#1b1b1b;--line:#2a2a2a;--text:#d9d9d6;--muted:#8c8c87;--faint:#5f5f5b;--accent:#f0b347;--lcd:#b4ec8c;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;font:13px/1.4 var(--sans);color:var(--text);background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased}html,body,#root{height:100%;margin:0;overflow:hidden}kbd{font:11px var(--mono);color:var(--text);background:#202020;border:1px solid #3a3a3a;border-bottom-width:2px;border-radius:4px;padding:1px 5px}.app{grid-template-columns:minmax(0,1fr) 320px;height:100%;display:grid}.viewport{cursor:crosshair;background:#000;position:relative;overflow:hidden}.viewer-canvas{z-index:0;display:block;position:absolute}.frame-overlay{z-index:1;pointer-events:none;position:absolute}.af-point{border:1.5px solid #ffffffd9;border-radius:2px;width:20px;height:20px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000073,inset 0 0 0 1px #00000073}.infobar{font:500 13px/1.2 var(--mono);color:var(--lcd);white-space:nowrap;font-variant-numeric:tabular-nums;background:#000000b8;justify-content:space-evenly;gap:12px;padding:6px 12px;display:flex;position:absolute;bottom:0;left:0;right:0}.infobar small{opacity:.7;font-size:10px}.refine{font:11px var(--mono);color:#e8e8e8;font-variant-numeric:tabular-nums;background:#0000008c;border-radius:3px;padding:3px 8px;position:absolute;top:10px;right:12px}.frame-lines{border:1.5px solid #ffffffe6;position:absolute;box-shadow:0 0 0 1px #00000080,inset 0 0 0 1px #00000080}.frame-lines-label{font:600 12px var(--mono);color:#fff;text-shadow:0 0 3px #000,0 0 1px #000;position:absolute;top:4px;left:6px}.lock-hint{z-index:2;color:#eee;pointer-events:none;white-space:nowrap;background:#0009;border-radius:999px;padding:5px 12px;font-size:12px;position:absolute;top:14px;left:50%;transform:translate(-50%)}.panel{background:var(--panel);border-left:1px solid var(--line);flex-direction:column;gap:14px;padding:14px 16px 18px;display:flex;overflow-y:auto}.panel-title{letter-spacing:.02em;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;display:flex}.help-button{font:inherit;color:var(--muted);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:3px 4px 3px 8px;font-size:12px;font-weight:400;display:inline-flex}.help-button:hover{color:var(--text)}.field-head{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.field-label{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:600}.field-value{font:500 13px var(--mono);color:#fff;font-variant-numeric:tabular-nums}select{width:100%;font:inherit;color:var(--text);background:var(--panel-2);border:1px solid #333;border-radius:6px;padding:6px 8px}input[type=range]{appearance:none;cursor:pointer;background:0 0;width:100%;height:18px;margin:0;display:block}input[type=range]::-webkit-slider-runnable-track{background:#343432;border-radius:2px;height:4px}input[type=range]::-moz-range-track{background:#343432;border-radius:2px;height:4px}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent);width:16px;height:16px;box-shadow:0 0 0 1px var(--accent);border:2px solid #131313;border-radius:50%;margin-top:-6px}input[type=range]::-moz-range-thumb{background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 1px var(--accent);border:2px solid #131313;border-radius:50%}input[type=range]:focus-visible{outline:1px solid var(--accent);outline-offset:2px;border-radius:4px}.ticks{height:14px;margin-top:2px;position:relative}.ticks span{font:10px var(--mono);color:var(--faint);position:absolute;transform:translate(-50%)}.segmented{background:var(--panel-2);border:1px solid #2f2f2f;border-radius:7px;grid-auto-columns:1fr;grid-auto-flow:column;padding:2px;display:grid}.segmented button{font:inherit;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:5px 0;font-weight:500}.segmented button[aria-pressed=true]{color:#151515;background:var(--accent)}.segmented button:focus-visible{outline:1px solid var(--accent)}.readout{border-top:1px solid var(--line);flex-direction:column;gap:7px;margin:4px 0 0;padding-top:12px;display:flex}.readout-row dt{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);font-size:10.5px}.readout-row dd{font:12.5px var(--mono);color:var(--text);font-variant-numeric:tabular-nums;margin:1px 0 0}.readout-note{color:var(--accent);font-size:11px;display:block}.help{z-index:10;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0000008c;place-items:center;display:grid;position:fixed;inset:0}.help-card{background:#161615f5;border:1px solid #333;border-radius:12px;width:min(540px,100vw - 48px);padding:22px 26px;box-shadow:0 20px 60px #00000080}.help-card h1{margin:0 0 6px;font-size:20px;font-weight:600}.help-card p{color:var(--muted);margin:0 0 16px}.help-card dl{grid-template-columns:max-content 1fr;gap:6px 18px;margin:0 0 18px;display:grid}.help-card dl div{display:contents}.help-card dt{font:12px var(--mono);color:var(--accent)}.help-card dd{margin:0}.help-close{font:inherit;color:#151515;background:var(--accent);cursor:pointer;border:0;border-radius:6px;padding:7px 18px;font-weight:600}.debug{font:11px/1.45 var(--mono);color:#eee;font-variant-numeric:tabular-nums;background:#000000a6;border-radius:4px;padding:6px 8px;position:absolute;top:8px;left:8px}.debug-keys{color:#aaa}.debug-circle{border:1px dashed #ff5c7a;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading{z-index:5;background:#0b0b0a;place-items:center;display:grid;position:absolute;inset:0}.loading-card{text-align:center;width:280px}.loading-card h1{margin:0 0 4px;font-size:16px;font-weight:600}.loading-card p{color:var(--muted);font:12px var(--mono);margin:0 0 12px}.loading-bar{background:#262626;border-radius:2px;height:3px;overflow:hidden}.loading-bar div{background:var(--accent);height:100%;transition:width .2s}.error-screen{max-width:520px;margin:18vh auto 0;padding:0 24px}.error-screen h1{font-size:20px;font-weight:600}.error-screen p{color:var(--muted)}
