@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#edf1ed;background:#101715;font-size:16px;color-scheme:dark;--accent:#c8f36b;--muted:#a5b0a9;--line:#334039}*{box-sizing:border-box}body{margin:0;padding-bottom:140px}button,input,select,textarea{font:inherit}button,select,input,textarea{border:1px solid var(--line);border-radius:9px;background:#1b2520;color:inherit}button{cursor:pointer;min-height:44px;padding:10px 16px;font-weight:600}button:hover{border-color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}header{max-width:1340px;margin:auto;display:flex;justify-content:space-between;align-items:center;padding:25px 36px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;font-size:14px;letter-spacing:2px;font-weight:700}.mark{font-family:system-ui;font-size:24px;background:var(--accent);color:#101715;border-radius:6px;padding:2px 10px;letter-spacing:-4px}.mark span{font-weight:400}main{max-width:1240px;margin:44px auto;display:grid;grid-template-columns:290px 1fr;gap:64px;padding:0 28px}aside{align-self:start;position:sticky;top:30px}.eyebrow{font-size:12px;letter-spacing:2px;color:var(--accent);font-weight:700;margin:0 0 12px}h1,h2,h3{font-family:'Barlow Condensed','Arial Narrow',system-ui,sans-serif;line-height:1.08;margin:0}h1{font-size:60px;font-weight:700;letter-spacing:-1px}h2{font-size:38px}h3{font-size:25px}.muted,.source{color:var(--muted)}.muted{font-size:14px}.weeklabel{display:block;font-size:14px;margin:32px 0 10px}select{min-height:46px;padding:10px 12px}#week{width:100%}nav{display:grid;gap:8px;margin:18px 0 30px}.day{display:flex;text-align:left;gap:14px;align-items:center;padding:16px 12px;background:transparent;border-color:transparent;width:100%}.day.active{background:#283525;border-color:#50603e}.day .num{color:var(--muted);font-size:14px}.day.active .num{color:var(--accent)}.day small{display:block;margin-top:6px;color:var(--muted);font-size:12px}.day b{font-weight:500}.source{font-size:12px;line-height:1.8}.heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.unit{padding:7px 10px;border:1px solid var(--line);border-radius:6px;font-size:12px;letter-spacing:2px}.progressbox{margin-bottom:24px}.progressbox>div{display:flex;justify-content:space-between;font-size:14px;margin-bottom:12px}.progressbox strong{font-weight:500}#progressPercent{color:var(--accent)}progress{display:block;width:100%;height:5px;border:0;background:#2b362e;border-radius:3px;overflow:hidden}progress::-webkit-progress-bar{background:#2b362e}progress::-webkit-progress-value{background:var(--accent)}progress::-moz-progress-bar{background:var(--accent)}.exercise{border:1px solid var(--line);border-radius:14px;background:#17201b;margin-bottom:14px;overflow:hidden}.exercisehead{padding:21px 22px 14px}.exercisehead .topline{display:flex;gap:14px;align-items:baseline}.index{color:#83927f;font-size:12px;font-weight:600}.prescription{display:flex;gap:9px;flex-wrap:wrap;margin:13px 0 0 28px;color:var(--muted);font-size:14px}.prescription b{color:var(--accent);font-weight:600}.setgrid{display:grid;grid-template-columns:40px 1fr 1fr 50px;gap:10px;align-items:center;margin:0 22px}.sethead{font-size:12px;color:var(--muted);padding:12px 0 8px;border-top:1px solid var(--line)}.setrow{padding-bottom:9px}.setrow>span{font-size:14px;color:var(--muted)}.setrow input{width:100%;min-width:0;min-height:44px;padding:10px;background:#101914;text-align:center}.check{width:44px;height:44px;padding:0;font-size:20px;background:#243128}.check[aria-pressed=true]{background:var(--accent);color:#101715;border-color:var(--accent)}.done input{opacity:.7}.tip{padding:10px 22px 16px;color:var(--muted);font-size:14px}.tip summary{cursor:pointer;min-height:28px}.tip p{line-height:1.6;margin:8px 0;white-space:pre-line}.restbutton{font-size:14px;min-height:36px;padding:6px 10px;margin:0 22px 8px}.restnote{color:var(--muted);line-height:1.6;margin:20px 0}.noteslabel{display:block;margin:24px 0 10px;font-size:14px}textarea{width:100%;padding:14px;resize:vertical;min-height:90px}.timer{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:12px;align-items:center;padding:14px 20px;background:#253126;border:1px solid #516346;border-radius:15px;box-shadow:0 8px 40px #0008;z-index:5}.timer .eyebrow{display:block;margin:0 0 4px;font-size:10px;white-space:nowrap}.timer strong{font-size:27px;font-variant-numeric:tabular-nums;letter-spacing:1px;line-height:1}.primary{background:var(--accent);color:#142010;border-color:var(--accent)}.quiet{background:transparent}.sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}dialog{max-width:480px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:16px;background:#18221b;color:inherit;padding:26px}dialog::backdrop{background:#000a}dialog p{line-height:1.6;color:var(--muted)}.maxlabel{display:grid;grid-template-columns:1fr 130px;align-items:center;margin:14px 0}.maxlabel input{width:100%;padding:12px}.notice{padding:16px;background:#283525;border-left:3px solid var(--accent);border-radius:6px;font-size:14px;line-height:1.6;margin-bottom:20px}.notice details{margin-top:10px}.notice p{white-space:pre-line}
@media(max-width:800px){header{padding:18px 18px}.brand{font-size:12px;letter-spacing:1px}main{display:block;padding:0 16px;margin:24px auto;max-width:620px}aside{position:static}h1{font-size:38px}h1 br{display:none}h1 br:after{content:' '}aside>.eyebrow{display:none}.muted{margin:10px 0}.weeklabel{margin:22px 0 8px}nav{display:flex;overflow-x:auto;gap:8px;margin:12px 0 24px;padding-bottom:4px}.day{flex:0 0 165px;align-items:flex-start;padding:12px 10px}.day b{font-size:14px}aside>.source{display:none}h2{font-size:32px}.heading{margin-bottom:22px}.exercisehead{padding:18px 16px 12px}.setgrid{margin:0 16px;gap:8px;grid-template-columns:28px 1fr 1fr 44px}.prescription{margin-left:0;font-size:13px}.tip{padding:10px 16px 14px}.restbutton{margin-left:16px}.timer{bottom:max(10px,env(safe-area-inset-bottom));width:calc(100% - 20px);max-width:480px;padding:12px;gap:8px;justify-content:space-between}.timer select{max-width:98px;font-size:14px;padding:8px}.timer button{padding:9px 12px}.timer strong{font-size:25px}.timer .eyebrow{font-size:9px;letter-spacing:1px}.unit{display:none}}

.syncbar{max-width:1240px;margin:16px auto 0;padding:0 28px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px;color:var(--muted)}.syncbar>div{display:flex;gap:8px;align-items:center}.syncbar button{font-size:14px;padding:8px 10px}.syncbar a{color:var(--accent)}[data-kind=offline],[data-kind=error],[data-kind=login]{color:#ffd28c}.loginpage{min-height:100dvh;display:grid;place-items:center;padding:32px 20px}.logincard{width:100%;max-width:440px}.logincard h1{font-size:52px}.logincard p{line-height:1.7;color:var(--muted)}.logincard label{display:block;margin:26px 0 10px}.logincard input{width:100%;padding:14px}.logincard button{width:100%;margin-top:18px}.logincard #loginStatus{color:#ffd28c;font-size:14px}.logincard button:disabled{opacity:.6}@media(max-width:800px){.syncbar{padding:0 16px;align-items:flex-start;flex-direction:column;gap:6px}.syncbar button{min-height:44px}.logincard h1{font-size:42px}}
