*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;-webkit-text-size-adjust:100%;overscroll-behavior:none}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer;-webkit-appearance:none}.app{--bg: #f4f7f5;--fg: #10231d;--muted: #5c6f68;--card: #ffffff;--accent: #0f766e;--accent2: #14b8a6;--rest: #f59e0b;--line: #dfe7e3;min-height:100vh;background:var(--bg);color:var(--fg);padding-bottom:76px;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.app.evening{--bg: #141a2b;--fg: #eef1fb;--muted: #a3abc4;--card: #1f2740;--accent: #6366f1;--accent2: #a5b4fc;--rest: #f59e0b;--line: #2d3756}.screen{padding:20px 18px 16px;padding-top:calc(20px + env(safe-area-inset-top));max-width:520px;margin:0 auto}h1{font-size:26px;margin:4px 0 14px}h2{font-size:22px;margin:4px 0 14px}h3{font-size:16px;margin:18px 0 8px;text-transform:capitalize}.muted,.mode-hint{color:var(--muted);font-size:14px}.mode-hint{margin:8px 2px 14px}.seg{display:flex;background:var(--card);border-radius:14px;padding:4px;border:1px solid var(--line)}.seg button{flex:1;padding:12px 0;border-radius:10px;font-weight:600;font-size:16px;color:var(--muted)}.seg button.on{background:var(--accent);color:#fff}.card{display:block;width:100%;text-align:left;background:var(--card);border-radius:18px;padding:16px;border:1px solid var(--line);margin-bottom:16px}.card-title{font-size:19px;font-weight:700}.card-sub{color:var(--muted);font-size:14px;margin-top:4px}.card-icons{font-size:22px;margin-top:10px;line-height:1.5;letter-spacing:2px}.card-link{color:var(--accent);font-weight:600;margin-top:8px;font-size:15px}.btn{display:inline-block;padding:14px 18px;border-radius:14px;background:var(--card);border:1px solid var(--line);font-weight:600;font-size:16px}.btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.huge{display:block;width:100%;padding:20px;font-size:21px;border-radius:18px;box-shadow:0 6px 18px #0f766e40}.row2{display:flex;margin-top:16px}.row2 .btn{flex:1}.row2 .btn+.btn{margin-left:10px}.streak-row{display:flex;margin-top:16px}.pill{display:inline-block;background:var(--card);border:1px solid var(--line);border-radius:999px;padding:9px 14px;font-weight:600;font-size:15px}.streak-row .pill{flex:1;text-align:center}.streak-row .pill+.pill{margin-left:10px}.pill.wide{display:block;text-align:center;margin-top:12px}.week-dots{display:flex;justify-content:space-between;margin-top:12px}.wd{width:13%;text-align:center;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:6px 0;font-size:12px;color:var(--muted)}.wd span,.wd b{display:block}.wd b{font-size:15px;margin-top:2px;color:var(--fg)}.wd.on{background:var(--accent);border-color:var(--accent);color:#fff}.wd.on b{color:#fff}.head{display:flex;align-items:center}.head h2{margin:0 0 0 8px}.back{color:var(--accent);font-weight:600;padding:6px 4px}.overview .head{margin-bottom:12px}.toggle{display:flex;width:100%;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:13px 14px;margin-bottom:10px;text-align:left;font-size:16px;font-weight:600}.toggle-track{position:relative;width:50px;height:30px;border-radius:15px;background:#c7d2cd;-webkit-transition:background .2s;transition:background .2s;flex-shrink:0}.toggle-knob{position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:12px;background:#fff;box-shadow:0 1px 3px #0000004d;-webkit-transition:-webkit-transform .2s;transition:transform .2s}.toggle.on .toggle-track{background:var(--accent)}.toggle.on .toggle-knob{-webkit-transform:translateX(20px);transform:translate(20px)}.exlist{list-style:none;margin:0;padding:0}.exlist li{display:flex;align-items:center;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 12px;margin-bottom:8px}.exlist li.easy{border-color:var(--accent2)}.ex-n{width:22px;color:var(--muted);font-size:13px}.ex-i{font-size:26px;width:40px;text-align:center}.ex-t{flex:1;padding:0 8px;min-width:0}.ex-t b,.ex-t small{display:block}.ex-t small{color:var(--muted);font-size:13px;margin-top:2px}.ex-s{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600;font-size:14px}.set-row{display:flex;align-items:center;justify-content:space-between;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px 14px;margin-bottom:10px;font-weight:600}.chips{display:flex}.chips button{padding:8px 11px;border-radius:10px;margin-left:6px;background:var(--bg);font-weight:600;font-size:15px}.chips button.on{background:var(--accent);color:#fff}.done{text-align:center;padding-top:48px}.done-emoji{font-size:84px}.done-sub{color:var(--muted)}.big-streak{font-size:24px;font-weight:800;margin:18px 0 12px}.stats3{display:flex}.stats3 div{flex:1;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:12px 6px;text-align:center}.stats3 div+div{margin-left:8px}.stats3 b{display:block;font-size:24px}.stats3 span{color:var(--muted);font-size:12px}.cal{display:grid;margin:0 -3px;grid-template-columns:repeat(7,1fr)}.cal-h{margin:3px;text-align:center;color:var(--muted);font-size:12px}.cal-d{margin:3px;text-align:center;padding:8px 0;border-radius:10px;background:var(--card);border:1px solid var(--line);font-size:14px}.cal-d.on{background:var(--accent);color:#fff;border-color:var(--accent);font-weight:800}.cal-d.today{border:2px solid var(--accent2)}.nav{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--card);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);z-index:5}.nav button{flex:1;padding:8px 0 10px;font-size:20px;color:var(--muted)}.nav button span{display:block;font-size:11px;margin-top:2px}.nav button.on{color:var(--accent)}.player{display:flex;flex-direction:column;align-items:center;min-height:100vh;padding:14px 18px 20px;padding-top:calc(14px + env(safe-area-inset-top));padding-bottom:calc(20px + env(safe-area-inset-bottom));text-align:center;background:var(--bg)}.app .player{margin-bottom:-76px}.player.rest{background:#fff7e6}.evening .player.rest{background:#2a2416}.player.ready{background:#e7f6f3}.evening .player.ready{background:#1b2340}.p-top{display:flex;align-items:center;width:100%;max-width:480px}.p-count{font-weight:800;font-variant-numeric:tabular-nums;margin-right:10px;min-width:44px;text-align:left}.bar{flex:1;height:8px;border-radius:4px;background:var(--line);overflow:hidden}.bar-fill{height:100%;background:var(--accent)}.rest .bar-fill{background:var(--rest)}.p-state{margin-top:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--accent);min-height:20px;font-size:15px}.rest .p-state{color:#b45309}.evening .rest .p-state{color:var(--rest)}.paused .p-state{color:var(--muted)}.p-icon{font-size:72px;line-height:1.1;margin-top:4px}.p-name{font-size:28px;font-weight:800;margin-top:4px}.p-cue{color:var(--muted);font-size:16px;margin-top:4px;min-height:22px;padding:0 6px}.ring{position:relative;width:62vw;height:62vw;max-width:260px;max-height:260px;margin:12px 0 4px}.ring-bg{fill:none;stroke:var(--line);stroke-width:14}.ring-fg{fill:none;stroke:var(--accent);stroke-width:14;stroke-linecap:round}.rest .ring-fg{stroke:var(--rest)}.ready .ring-fg{stroke:var(--accent2)}.ring-num{position:absolute;left:0;right:0;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);font-size:56px;font-weight:800;font-variant-numeric:tabular-nums}.p-next{color:var(--muted);font-weight:600;min-height:22px}.p-buttons{display:flex;justify-content:center;margin-top:auto;padding-top:12px;width:100%}.btn.round{width:86px;height:86px;border-radius:43px;padding:0;font-size:28px;margin:0 9px;display:flex;flex-direction:column;align-items:center;justify-content:center}.btn.round span{font-size:12px;margin-top:2px}.btn.round.big{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.round.danger{color:#dc2626}@media (max-height: 700px){.p-icon{font-size:56px}.p-name{font-size:24px}.ring{width:52vw;height:52vw;margin:6px 0 2px}.ring-num{font-size:46px}.btn.round{width:76px;height:76px}h1{font-size:23px;margin-bottom:10px}.card-icons{font-size:19px}.btn.huge{padding:16px}}
