*,:before,:after{box-sizing:border-box;margin:0}:root{--bg:#111;--fg:#eee;--dim:#8b8b8b;--line:#2c2c2c;--panel:#1b1b1b;--acc:#35d07f;--on-acc:#08150e;--safe:env(safe-area-inset-bottom,0px)}body{background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow-x:hidden}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;padding:0}button:disabled{opacity:.3}h1{letter-spacing:.01em;padding:4px 4px 16px;font-size:1.1rem;font-weight:600}.big{padding:4px;font-size:2rem;font-weight:700}h2{font-size:1rem;font-weight:600}.muted{color:var(--dim);padding:0 4px;line-height:1.5}.num{font-variant-numeric:tabular-nums;font-size:1.5rem;font-weight:700}.screen{max-width:560px;padding:20px 12px calc(140px + var(--safe));margin:0 auto}.primary{background:var(--acc);width:100%;min-height:60px;color:var(--on-acc);border-radius:12px;margin-top:24px;font-size:1.1rem;font-weight:800;display:block}.slots{padding:0;list-style:none}.slots li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:8px 4px;display:flex}.slot-rx{color:var(--dim);white-space:nowrap}.slot-rx .num{color:var(--fg);font-size:1.25rem}.block{margin-bottom:24px}.block-head{justify-content:space-between;align-items:center;gap:8px;min-height:48px;padding:0 4px 8px;display:flex}.swap{height:48px;color:var(--dim);flex:0 0 48px;font-size:1.4rem}.row{border:1px solid var(--line);border-radius:12px;align-items:stretch;width:100%;min-height:64px;margin-bottom:8px;transition:border-color .15s;display:flex;overflow:hidden}.row-vals,.row--logged{text-align:left;flex:1;align-items:center;gap:8px;min-height:64px;padding:0 14px;display:flex}.row--logged{opacity:.4;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.danger{color:#ff5c5c;font-weight:700}.row--next{border-color:var(--acc)}.idx{color:var(--dim);width:14px;font-size:.85rem}.mul{color:var(--dim)}.rir{color:var(--dim);white-space:nowrap;align-self:stretch;padding:0 12px;font-size:.9rem}.tip{left:12px;right:12px;bottom:calc(88px + var(--safe));z-index:5;border:1px solid var(--line);background:var(--panel);max-width:536px;color:var(--fg);text-align:left;border-radius:12px;margin:0 auto;padding:14px 16px;line-height:1.4;position:fixed}.ok{background:var(--acc);min-height:64px;color:var(--on-acc);flex:0 0 88px;font-size:1.7rem;font-weight:800}.row--edit{border-color:var(--acc);flex-direction:column;gap:10px;padding:12px}.ok--wide{border-radius:10px;flex:none;width:100%;min-height:56px}.stepper{align-items:center;gap:10px;display:flex}.stepper-label{width:46px;color:var(--dim);text-transform:uppercase;font-size:.85rem}.stepper button{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex:0 0 56px;height:56px;font-size:1.6rem;line-height:1}.stepper .num{text-align:center;flex:1;font-size:1.8rem}.rest{min-height:68px;padding:12px 18px calc(12px + var(--safe));background:var(--panel);border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0}.rest--go{background:var(--acc);color:var(--on-acc);justify-content:center}.rest-name{text-overflow:ellipsis;white-space:nowrap;color:var(--dim);overflow:hidden}.rest-go{letter-spacing:.1em;font-size:1.8rem;font-weight:800}.sheet-backdrop{background:#000000a6;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-height:80vh;padding:16px 16px calc(16px + var(--safe));background:var(--panel);border-radius:16px 16px 0 0;overflow-y:auto}.sheet h2{color:var(--dim);padding-bottom:8px}.sheet-opt{text-align:left;border-bottom:1px solid var(--line);width:100%;min-height:60px;display:block}.fb{border-bottom:1px solid var(--line);padding:12px 0 16px}.fb h2{text-transform:capitalize;padding-bottom:10px}.seg-row{align-items:center;gap:10px;padding:4px 0;display:flex}.seg-label{color:var(--dim);flex:0 0 84px;font-size:.85rem}.seg{flex:1;gap:8px;display:flex}.seg-btn{border:1px solid var(--line);border-radius:10px;flex:1;min-height:48px}.seg-btn--on{background:var(--acc);color:var(--on-acc);font-weight:700}
