:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0d0f;--surface:#17171a;--surface-2:#202024;--line:#2c2c31;--text:#ebebee;--muted:#9b9ba4;--accent:#e0573f;--accent-text:#120604;--ok:#6fbf73;--warn:#e8a33a;--radius:4px;--tap:48px;--gutter:16px;-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:16px;line-height:1.45}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);margin:0}body{-webkit-tap-highlight-color:transparent;min-height:100dvh}button,input{font:inherit;color:inherit}h1{letter-spacing:.01em;margin:0;font-size:1.05rem;font-weight:650}h2{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 10px;font-size:.8rem;font-weight:650}p{margin:0}.count{color:var(--muted);letter-spacing:0;margin-left:4px;font-weight:500}.muted{color:var(--muted);margin-top:10px;font-size:.9rem}.small{font-size:.8rem}.bar{z-index:5;min-height:56px;padding:env(safe-area-inset-top) calc(var(--gutter) + env(safe-area-inset-right)) 0 calc(var(--gutter) + env(safe-area-inset-left));background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:10px;display:flex;position:sticky;top:0}.bar h1{flex:1}.bar .icon{margin-left:-10px}.screen{padding:0 calc(var(--gutter) + env(safe-area-inset-right)) 24px calc(var(--gutter) + env(safe-area-inset-left));max-width:560px;margin:0 auto}section{border-bottom:1px solid var(--line);padding:20px 0}section:last-child{border-bottom:0}.note{border:1px solid var(--line);border-left:3px solid var(--warn);border-radius:var(--radius);background:var(--surface);margin-top:16px;padding:12px 14px;font-size:.92rem}.actionbar{z-index:5;background:var(--surface);border-top:1px solid var(--line);padding:10px calc(var(--gutter) + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(var(--gutter) + env(safe-area-inset-left));position:sticky;bottom:0}.actionbar>*{max-width:560px;margin-left:auto;margin-right:auto}.reminder{color:var(--muted);margin-bottom:10px;font-size:.8rem}.reminder strong{color:var(--warn);font-weight:600}.actions{align-items:center;gap:12px;display:flex}.summary{color:var(--muted);font-variant-numeric:tabular-nums;flex:1;font-size:.88rem}button{min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line);background:var(--surface-2);cursor:pointer;touch-action:manipulation;padding:0 16px}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);min-width:120px;font-weight:700}.secondary{background:var(--surface-2)}.wide{justify-content:center;align-items:center;gap:8px;width:100%;margin-top:12px;display:flex}.icon{width:var(--tap);color:var(--muted);background:0 0;border-color:#0000;place-items:center;padding:0;display:inline-grid}.icon:not(:disabled):active{color:var(--text);background:var(--surface-2)}.link{min-height:0;color:var(--accent);font-size:inherit;background:0 0;border:0;padding:0;text-decoration:underline}.chip{background:0 0;min-height:36px;padding:0 10px;font-size:.8rem;font-weight:600}.chip.ok{color:var(--ok);border-color:color-mix(in srgb, var(--ok) 45%, transparent)}.chip.warn{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.seg{border:1px solid var(--line);border-radius:var(--radius);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;overflow:hidden}.seg button{background:var(--surface);color:var(--muted);border:0;border-radius:0}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-checked=true]{background:var(--surface-2);color:var(--text);box-shadow:inset 0 -3px 0 var(--accent);font-weight:650}input[type=text],input[type=number]{min-height:var(--tap);border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);font-variant-numeric:tabular-nums;min-width:0;padding:0 10px}input[aria-invalid=true]{border-color:var(--warn)}.picker{width:var(--tap);height:var(--tap);border:1px solid var(--line);border-radius:var(--radius);cursor:pointer;background:0 0;flex:none;padding:0}.picker::-webkit-color-swatch-wrapper{padding:3px}.picker::-webkit-color-swatch{border:0;border-radius:2px}.picker::-moz-color-swatch{border:0;border-radius:2px}.hex{text-transform:lowercase;width:6.5em;font-family:ui-monospace,SF Mono,Menlo,monospace}.field{margin-top:12px}.num{align-items:center;gap:8px;display:flex}.num span:first-child{color:var(--muted);flex:1;font-size:.92rem}.num input{text-align:right;width:6em}.num .unit{color:var(--muted);width:1.2em}.color-row{align-items:center;gap:10px;display:flex}.color-row .lum{margin-left:auto}.switch-row{justify-content:space-between;align-items:center;display:flex}.switch-row h2{margin:0}.switch{border-radius:var(--radius);background:var(--surface);width:64px;min-height:34px;padding:3px;display:flex}.switch span{background:var(--muted);border-radius:2px;width:26px;height:26px;transition:transform .15s}.switch[aria-checked=true]{background:var(--accent);border-color:var(--accent)}.switch[aria-checked=true] span{background:var(--accent-text);transform:translate(30px)}.seq{margin:0;padding:0;list-style:none}.seq li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 0;display:flex}.seq li:first-child{padding-top:0}.idx{width:1.4em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.9rem}.seq .num{flex-basis:100%;order:5;padding-left:calc(1.4em + 8px)}.row-actions{margin-left:auto;display:flex}.preview{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:14px}.preview th{text-align:left;color:var(--muted);padding:0 0 6px;font-size:.75rem;font-weight:600}.preview td{border-top:1px solid var(--line);vertical-align:middle;padding:6px 0}.preview td:not(.idx){white-space:nowrap}.sw{vertical-align:middle;border:1px solid var(--line);border-radius:2px;width:36px;height:36px;margin-right:8px;display:inline-block}.lum{vertical-align:middle;font-variant-numeric:tabular-nums;flex-direction:column;font-size:.9rem;line-height:1.2;display:inline-flex}.lum small{color:var(--muted);font-size:.75rem}.preset-save{gap:8px;display:flex}.preset-save input{flex:1}.presets{margin:12px 0 0;padding:0;list-style:none}.presets li{border-top:1px solid var(--line);align-items:center;gap:6px;padding:6px 0;display:flex}.preset-meta{flex-direction:column;flex:1;min-width:0;display:flex}.preset-meta strong{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.preset-meta small{color:var(--muted);font-size:.8rem}.msg{margin-top:10px;font-size:.9rem}.msg.warn{color:var(--warn)}.msg.ok{color:var(--ok)}.readings{margin:0;padding:0;list-style:none}.readings li{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:6px 0;display:flex}.readings .sw{flex:none;margin-right:0}.sw-label{flex:1;min-width:0}.readings .ev{text-align:right;width:4.5em}.pred{width:3.8em;color:var(--muted);font-variant-numeric:tabular-nums;font-size:.75rem}.stats{gap:0;margin:0;display:grid}.stats div{border-bottom:1px solid var(--line);justify-content:space-between;padding:8px 0;display:flex}.stats dt{color:var(--muted)}.stats dd{font-variant-numeric:tabular-nums;margin:0}#fit>button{margin-top:14px}#stage,#meter{z-index:100;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;position:fixed;inset:0}#stage{cursor:none;background:#000}#stage[hidden]{display:none}html.running,html.running body{cursor:none;background:#000;overflow:hidden}html.running #app,html.metering #app{display:none}html.metering,html.metering body{overflow:hidden}#meter{align-items:flex-end;display:flex}.sheet{background:var(--bg);border-top:1px solid var(--line);width:100%;padding:16px calc(var(--gutter) + env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) calc(var(--gutter) + env(safe-area-inset-left));-webkit-user-select:text;user-select:text}.sheet-title{margin-bottom:10px;font-weight:650}.num.big input{width:7em;font-size:1.25rem}.num.big .unit{width:1.8em}.sheet-actions{gap:8px;margin-top:14px;display:flex}.sheet-actions .primary{margin-left:auto}.check-actions{gap:8px;margin-top:12px;display:flex}.check-actions button:first-child{flex:1}.preview td.metered,.preview th.metered{text-align:right}.muted.top{margin:0 0 12px}.ramp-strip{border:1px solid var(--line);border-radius:2px;height:40px;margin-top:14px;position:relative}.ramp-strip span{background:var(--text);opacity:.6;width:1px;position:absolute;top:-1px;bottom:-1px}.ramp-scale{color:var(--muted);font-variant-numeric:tabular-nums;justify-content:space-between;margin-top:4px;font-size:.75rem;display:flex}.list-actions{gap:8px;margin-top:12px;display:flex}.list-actions button{flex:1;justify-content:center;align-items:center;gap:8px;display:flex}
