:root{--bg:#0b1020;--surface:#151b2d;--surface-2:#1d2439;--border:#262e45;--gold:#d6a84b;--gold-hi:#e4bf70;--text:#f5f1e8;--text-dim:#a7adbd;--text-faint:#6b7286;--success:#4e9e72;--warning:#c9793c;--danger:#c1453b;--radius:12px;--radius-sm:8px;--touch:44px;--font-display:"Bebas Neue", "Arial Narrow", sans-serif;--font-body:"Barlow", system-ui, -apple-system, sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;overscroll-behavior:none;touch-action:manipulation;margin:0}button{font:inherit;color:inherit;cursor:pointer;min-height:var(--touch);background:0 0;border:none}.tabular{font-variant-numeric:tabular-nums}.app{max-width:480px;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;margin:0 auto;display:flex}.scroll{-webkit-overflow-scrolling:touch;flex:1;overflow-y:auto}.pad{padding:0 20px}.col{flex-direction:column;display:flex}.row{align-items:center;display:flex}.grow{flex:1}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.display{font-family:var(--font-display);letter-spacing:1px;line-height:1}.eyebrow{letter-spacing:1.3px;text-transform:uppercase;color:var(--text-dim);font-size:11px;font-weight:600}.dim{color:var(--text-dim)}.faint{color:var(--text-faint)}.gold{color:var(--gold-hi)}.center{text-align:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px}.card.selected{border-color:var(--gold)}.divider{background:var(--border);height:1px}.btn{border-radius:var(--radius);min-height:56px;font-family:var(--font-display);letter-spacing:1.6px;background:var(--gold);color:var(--bg);justify-content:center;align-items:center;gap:8px;width:100%;font-size:24px;display:flex}.btn:disabled{opacity:.45}.btn.ghost{background:var(--surface);border:1px solid var(--border);color:var(--text);font-family:var(--font-body);letter-spacing:0;font-size:16px;font-weight:600}.btn.quiet{color:var(--text-dim);min-height:var(--touch);font-family:var(--font-body);letter-spacing:0;background:0 0;font-size:14px}.btn.small{min-height:44px;font-size:20px}.choices{gap:8px;display:flex}.choice{background:var(--surface);border:1px solid var(--border);min-height:46px;color:var(--text-dim);border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;font-size:14px;font-weight:500;display:flex}.choice.on{background:var(--gold);border-color:var(--gold);color:var(--bg);font-weight:700}.choice.on-outline{background:var(--surface-2);border-color:var(--gold);color:var(--gold-hi);font-weight:600}.choice.on-good{background:var(--surface-2);border-color:var(--success);color:var(--success);font-weight:600}.badge{background:var(--surface-2);border:1px solid var(--border);letter-spacing:.7px;text-transform:uppercase;color:var(--text-dim);border-radius:999px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge.warn{color:var(--warning);border-color:#0000}.badge.good{color:var(--success);border-color:#0000}.notice{background:var(--surface-2);border-radius:var(--radius-sm);align-items:flex-start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.45;display:flex}.notice.warn{border-left:3px solid var(--warning)}.notice.info{border-left:3px solid var(--gold)}.notice svg{flex-shrink:0;margin-top:1px}.steppers{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.stepper{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:6px;padding:11px 8px;display:flex}.stepper .unit{color:var(--text-dim);font-size:13px}.stepper .keys{gap:6px;width:100%;display:flex}.stepper .keys button{background:var(--surface-2);min-height:34px;color:var(--text-dim);border-radius:7px;flex:1;font-size:18px;line-height:1}.stepper input{text-align:center;width:100%;min-width:0;font-family:var(--font-display);color:var(--text);background:0 0;border:none;padding:0;font-size:34px;line-height:1}.stepper input:focus{color:var(--gold-hi);outline:none}.stepper input::placeholder{color:var(--text-faint)}.ring{width:260px;max-width:100%;height:260px;margin:0 auto;position:relative}.ring svg{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.ring .inner{flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring .time{font-family:var(--font-display);font-size:88px;line-height:.95}.progress{background:var(--surface-2);border-radius:2px;height:4px;overflow:hidden}.progress>div{background:var(--gold-hi);border-radius:2px;height:100%;transition:width .24s}.sheet-backdrop{z-index:20;background:#03060fb8;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-top:1px solid var(--border);width:100%;max-width:480px;padding:20px 20px calc(20px + env(safe-area-inset-bottom)) 20px;border-top-left-radius:18px;border-top-right-radius:18px;flex-direction:column;gap:16px;max-height:88dvh;display:flex;overflow-y:auto}.zones{flex-wrap:wrap;gap:8px;display:flex}.zones .choice{flex:none;padding:0 14px}.scale{gap:5px;display:flex}.scale button{background:var(--surface-2);border:1px solid var(--border);min-width:0;min-height:44px;color:var(--text-dim);border-radius:8px;flex:1;font-size:14px;font-weight:600}.scale button.on{background:var(--gold);border-color:var(--gold);color:var(--bg)}textarea.note{resize:vertical;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);width:100%;min-height:76px;color:var(--text);font-family:var(--font-body);padding:12px;font-size:15px}textarea.note:focus{outline:1px solid var(--gold)}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;align-items:center;gap:2px;padding:13px 10px;display:flex}.stat .n{font-family:var(--font-display);font-size:28px;line-height:1}.stat .l{letter-spacing:.9px;text-transform:uppercase;color:var(--text-dim);text-align:center;font-size:10px}.stats3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.clamp2{-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.update-bar{z-index:30;background:var(--gold);color:var(--bg);padding:12px 20px calc(12px + env(safe-area-inset-bottom)) 20px;justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;display:flex;position:fixed;bottom:0;left:0;right:0}
