:root{--o:#FF6A3D;--m:#D6246E;--ink:#2A1430;--bg:#FFF4EC;--card:#fff;--tx:#2A1430;--mut:#7a6070;--line:#F3DCCB;--good:#2EC4A6;--bad:#E5384F;--track:#F3DCCB}
@media (prefers-color-scheme:dark){:root{--bg:#1E1024;--card:#2B1834;--tx:#FFF4EC;--mut:#c7aebb;--line:#443052;--track:#443052}}
*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--tx);font:16px/1.4 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;-webkit-tap-highlight-color:transparent}
#app{max-width:520px;margin:0 auto;padding:0 16px 96px;min-height:100vh}
.screen{padding:16px 0;display:flex;flex-direction:column;gap:12px}.center{text-align:center;align-items:center}
h2{margin:4px 0;font-size:22px}h3{margin:8px 0 0;font-size:16px}.note{color:var(--mut);font-size:14px;margin:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:14px;display:flex;flex-direction:column;gap:8px}
.guard.ok{border-color:var(--good)}.guard.bad{border-color:var(--bad)}
.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.grow{flex:1;min-width:0}.small{font-size:14px}
.btn{font:inherit;border-radius:14px;padding:12px 16px;background:var(--card);color:var(--tx);border:1px solid var(--line);cursor:pointer;min-height:48px;display:inline-flex;align-items:center;justify-content:center;text-align:center}
.btn.small{min-height:44px;min-width:44px;padding:8px 12px}
.btn.primary{background:linear-gradient(135deg,var(--o),var(--m));color:#fff;border:0;font-weight:700}
.btn.ghost{background:transparent}.btn.good,.btn.on{background:var(--good);color:#06241e;border-color:var(--good)}
.btn.opt{justify-content:flex-start;text-align:left}
.input{font:inherit;width:100%;min-height:48px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--tx)}
label{font-size:14px;color:var(--mut)}.hidden{display:none}
.pill{background:var(--bg);border:1px solid var(--line);border-radius:99px;padding:2px 10px;font-size:13px;display:inline-flex;gap:4px;align-items:center}
.ringbox{display:flex;justify-content:center}.ring{width:min(78vw,300px);height:auto}
.ring .track{stroke:var(--track)}.ring .seg.past{stroke:var(--line)}.ring .seg.busy{stroke:#8c7a96}
.ring .e-deep{stroke:#7A5AF8}.ring .e-light{stroke:#FF8A3D}.ring .e-admin{stroke:#2EC4A6}
.ring .over{stroke:var(--bad)}.ring text{fill:var(--tx)}.rt1{font-size:22px;font-weight:700}.rt2{font-size:13px;fill:var(--mut)!important}.overt{fill:var(--bad)!important}
.task{display:flex;gap:8px;align-items:center;background:var(--card);border:1px solid var(--line);border-left:6px solid var(--o);border-radius:14px;padding:8px}
.task.e-deep{border-left-color:#7A5AF8}.task.e-light{border-left-color:#FF8A3D}.task.e-admin{border-left-color:#2EC4A6}
.task.donet{opacity:.6;border-left-color:var(--good)}
.chk{width:44px;height:44px;border-radius:50%;border:2px solid var(--mut);background:transparent;cursor:pointer;flex:none}
.tabs{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);max-width:520px;margin:0 auto}
.tab{flex:1;font:inherit;background:none;border:0;color:var(--mut);padding:8px 0;min-height:56px;display:flex;flex-direction:column;align-items:center;cursor:pointer}.tab small{font-size:12px}.tab.on{color:var(--o);font-weight:700}
.toast{position:fixed;left:50%;bottom:90px;transform:translateX(-50%);background:var(--ink);color:#fff;padding:10px 16px;border-radius:12px;z-index:9}
.bigtime{font-size:64px;font-weight:800;font-variant-numeric:tabular-nums}
.progress{height:6px;background:var(--track);border-radius:9px;overflow:hidden}.progress i{display:block;height:100%;background:var(--o)}
.sunset{min-height:70vh;justify-content:center}.sun{width:120px;height:120px;border-radius:50%;background:linear-gradient(135deg,#FFB547,#D6246E)}
.why{margin:0;font-size:14px}.top3{font-size:15px}
.tier.on{background:var(--good)}
.p0{width:0%}.p1{width:1%}.p2{width:2%}.p3{width:3%}.p4{width:4%}.p5{width:5%}.p6{width:6%}.p7{width:7%}.p8{width:8%}.p9{width:9%}.p10{width:10%}.p11{width:11%}.p12{width:12%}.p13{width:13%}.p14{width:14%}.p15{width:15%}.p16{width:16%}.p17{width:17%}.p18{width:18%}.p19{width:19%}.p20{width:20%}.p21{width:21%}.p22{width:22%}.p23{width:23%}.p24{width:24%}.p25{width:25%}.p26{width:26%}.p27{width:27%}.p28{width:28%}.p29{width:29%}.p30{width:30%}.p31{width:31%}.p32{width:32%}.p33{width:33%}.p34{width:34%}.p35{width:35%}.p36{width:36%}.p37{width:37%}.p38{width:38%}.p39{width:39%}.p40{width:40%}.p41{width:41%}.p42{width:42%}.p43{width:43%}.p44{width:44%}.p45{width:45%}.p46{width:46%}.p47{width:47%}.p48{width:48%}.p49{width:49%}.p50{width:50%}.p51{width:51%}.p52{width:52%}.p53{width:53%}.p54{width:54%}.p55{width:55%}.p56{width:56%}.p57{width:57%}.p58{width:58%}.p59{width:59%}.p60{width:60%}.p61{width:61%}.p62{width:62%}.p63{width:63%}.p64{width:64%}.p65{width:65%}.p66{width:66%}.p67{width:67%}.p68{width:68%}.p69{width:69%}.p70{width:70%}.p71{width:71%}.p72{width:72%}.p73{width:73%}.p74{width:74%}.p75{width:75%}.p76{width:76%}.p77{width:77%}.p78{width:78%}.p79{width:79%}.p80{width:80%}.p81{width:81%}.p82{width:82%}.p83{width:83%}.p84{width:84%}.p85{width:85%}.p86{width:86%}.p87{width:87%}.p88{width:88%}.p89{width:89%}.p90{width:90%}.p91{width:91%}.p92{width:92%}.p93{width:93%}.p94{width:94%}.p95{width:95%}.p96{width:96%}.p97{width:97%}.p98{width:98%}.p99{width:99%}.p100{width:100%}
