@import"https://fonts.googleapis.com/css2?family=Saira:wght@300;400;500;600;700&family=Saira+Condensed:wght@400;500;600;700&family=Saira+Semi+Condensed:wght@500;600;700&family=JetBrains+Mono:wght@400;500;600;700&display=swap";:root{--bg-0: oklch(.9 .004 255);--bg: oklch(.95 .004 255);--surface: oklch(1 .002 255);--surface-2: oklch(.97 .003 255);--line: oklch(.82 .008 255);--line-soft: oklch(.87 .006 255);--text: oklch(.27 .012 260);--text-dim: oklch(.46 .012 260);--text-faint: oklch(.6 .012 260);--amber: oklch(.795 .155 66);--amber-bright: color-mix(in oklab, oklch(.795 .155 66), black 8%);--amber-deep: color-mix(in oklab, oklch(.795 .155 66), black 16%);--amber-glow: color-mix(in oklab, oklch(.795 .155 66), transparent 82%);--redline: oklch(.64 .215 27);--green: oklch(.55 .15 152);--cool: oklch(.45 .08 235);--r-sm: 8px;--r: 13px;--r-lg: 20px;--mono: "JetBrains Mono", ui-monospace, monospace;--sans: "Saira", system-ui, sans-serif;--cond: "Saira Condensed", "Saira", sans-serif;--semi: "Saira Semi Condensed", "Saira", sans-serif;--card-shadow: 0 2px 12px oklch(.55 .02 260 / .1), inset 0 1px 0 oklch(1 0 0 / .7)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;letter-spacing:.1px}.app{height:100%;display:flex;flex-direction:column;background:var(--bg);max-width:430px;margin:0 auto;position:relative;overflow:hidden}.screen{flex:1;display:flex;flex-direction:column;gap:12px;padding:env(safe-area-inset-top,16px) 16px env(safe-area-inset-bottom,24px);padding-top:max(env(safe-area-inset-top,0px),16px);padding-bottom:max(env(safe-area-inset-bottom,0px),24px);overflow-y:auto;overflow-x:hidden}.topbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px}.brand{display:flex;align-items:center;gap:9px}.brand-mark{width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(150deg,var(--amber-bright),var(--amber-deep));box-shadow:0 2px 8px var(--amber-glow),inset 0 1px #fff6;flex-shrink:0}.brand-name{font-family:var(--cond);font-weight:700;font-size:19px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text)}.brand-name b{color:var(--amber-deep)}.kicker{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--text-faint)}.sat{display:flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.5px;color:var(--text-dim);padding:5px 9px;border-radius:999px;background:var(--surface);border:1px solid var(--line-soft);white-space:nowrap}.dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;background:var(--green);box-shadow:0 0 6px var(--green)}.dot.amber{background:var(--amber);box-shadow:0 0 6px var(--amber)}.dot.red{background:var(--redline);box-shadow:0 0 6px var(--redline)}.runchip{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-family:var(--semi);font-weight:600;font-size:14px;letter-spacing:.6px;color:var(--text);cursor:pointer;-webkit-user-select:none;user-select:none}.runchip .arrow{color:var(--text-faint);font-size:11px}.runchip.active{border-color:var(--amber);color:var(--amber-deep);background:var(--amber-glow)}.panel{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r);position:relative;overflow:hidden;box-shadow:var(--card-shadow)}.panel-label{font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint)}.quad{display:grid;grid-template-columns:1fr 1fr;gap:10px;flex:1}.cell{background:var(--surface);border:1px solid var(--line-soft);border-radius:var(--r);padding:13px 14px;display:flex;flex-direction:column;position:relative;overflow:hidden;box-shadow:var(--card-shadow)}.cell-head{display:flex;align-items:center;justify-content:space-between}.cell-readout{display:flex;align-items:baseline;gap:5px;margin-top:auto}.num{font-family:var(--cond);font-weight:600;font-variant-numeric:tabular-nums;line-height:.9;color:var(--text);letter-spacing:.5px}.num.amber{color:var(--amber-deep)}.unit{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--text-faint);letter-spacing:.5px}.cta{display:flex;align-items:center;justify-content:center;gap:12px;height:62px;border-radius:16px;border:none;font-family:var(--semi);font-weight:700;font-size:19px;letter-spacing:2px;text-transform:uppercase;cursor:pointer;width:100%;flex-shrink:0}.cta.go{color:#fff;background:linear-gradient(180deg,var(--amber),var(--amber-deep));box-shadow:0 6px 20px var(--amber-glow),inset 0 1px #ffffff59}.cta.stop{color:var(--text);background:var(--surface);border:1.5px solid var(--redline)}.cta.neutral{color:var(--text-dim);background:var(--surface);border:1px solid var(--line)}.tag{font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:1px;text-transform:uppercase}.badge{display:inline-flex;align-items:center;gap:5px;font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;padding:4px 9px;border-radius:999px}.badge.amber{color:var(--amber-deep);border:1px solid var(--amber);background:var(--amber-glow)}.badge.green{color:var(--green);border:1px solid var(--green);background:color-mix(in oklab,var(--green),transparent 88%)}.badge.red{color:var(--redline);border:1px solid var(--redline);background:color-mix(in oklab,var(--redline),transparent 88%)}.split-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line-soft)}.split-row:last-child{border-bottom:none}.split-k{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.8px;color:var(--text-dim);text-transform:uppercase}.split-v{font-family:var(--cond);font-weight:600;font-size:22px;font-variant-numeric:tabular-nums;color:var(--text)}.split-v .s{font-family:var(--mono);font-size:12px;color:var(--text-faint);margin-left:2px}.back-btn{display:flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);padding:4px 0}.back-btn:hover{color:var(--text)}.pulse-ring{border-radius:50%;border:1px solid var(--amber);animation:pulse 2.4s ease-out infinite}.pulse-ring.d2{animation-delay:1.2s;border-color:var(--amber-deep)}@keyframes pulse{0%{transform:scale(.7);opacity:.6}70%{opacity:0}to{transform:scale(1.05);opacity:0}}@media (prefers-reduced-motion: reduce){.pulse-ring{animation:none;opacity:.3}}.screen-enter{animation:slideUp .28s cubic-bezier(.32,0,.16,1) both}.screen-exit{animation:slideDown .22s cubic-bezier(.32,0,.16,1) both}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(0);opacity:1}to{transform:translateY(20px);opacity:0}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#00000059;display:flex;align-items:flex-end}.modal-sheet{width:100%;max-width:430px;margin:0 auto;background:var(--surface);border-radius:20px 20px 0 0;border-top:1px solid var(--line-soft);padding:12px 0 max(env(safe-area-inset-bottom,0px),24px);box-shadow:0 -8px 32px #0000001f}.modal-handle{width:36px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 16px}.modal-title{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--text-faint);padding:0 20px 12px}.modal-row{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;cursor:pointer;border-top:1px solid var(--line-soft)}.modal-row:first-of-type{border-top:none}.modal-row:hover,.modal-row:active{background:var(--bg)}.modal-row.selected{color:var(--amber-deep)}.modal-row .row-label{font-family:var(--semi);font-weight:600;font-size:16px;color:inherit}.modal-row .row-sub{font-family:var(--mono);font-size:10px;letter-spacing:.8px;color:var(--text-faint);margin-top:2px}.modal-row .check{font-size:14px;color:var(--amber);opacity:0}.modal-row.selected .check{opacity:1}
