:root{color-scheme:light;--bg:#f5f6f7;--panel:#fff;--text:#182d38;--muted:#526775;--line:#dce4e8;--accent:#007e87;--soft:#e7f5f4;font:16px/1.6 system-ui,sans-serif;color:var(--text);background:var(--bg)}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select{font:inherit;color:inherit}button,a,select{touch-action:manipulation}button,select,input{min-height:44px}button,a,summary{cursor:pointer}button{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:10px 16px;text-align:start}a{color:var(--accent)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:clamp(26px,4vw,36px);line-height:1.4;letter-spacing:-.025em}h2{font-size:23px}h3{font-size:18px}p+p{margin-top:10px}header{background:white;border-bottom:1px solid var(--line);padding:20px max(20px,calc((100% - 1060px)/2));display:flex;gap:16px;align-items:center;flex-wrap:wrap}.logo{font-size:27px;font-weight:850;letter-spacing:.035em;text-decoration:none;color:var(--text)}.logo b{color:var(--accent)}header label{margin-left:auto}select{max-width:100%;border:1px solid var(--line);border-radius:8px;padding:8px;background:white}main{max-width:1060px;margin:auto;padding:28px 30px 48px;min-height:70vh}footer{border-top:1px solid var(--line);background:white;padding:20px;display:flex;gap:20px;justify-content:center;flex-wrap:wrap;font-size:14px}.muted,small{color:var(--muted)}small{font-size:14px}.eyebrow{color:var(--accent);font-weight:700;letter-spacing:.05em}.filebar,.titleline,.actions,.row{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-bottom:22px}.filebar p,.row>div{min-width:0;overflow-wrap:anywhere}.titleline{margin:16px 0 24px}.actions{justify-content:flex-start;margin:24px 0 0}.primary{background:var(--accent);color:white;border-color:var(--accent);font-weight:650}.textbtn{border:0;background:transparent;color:var(--accent);padding:10px 0}.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:26px;margin:18px 0}.overview,.columns,.guidehero{display:grid;grid-template-columns:1fr 1.2fr;gap:24px}.big{font-size:68px;font-weight:750;line-height:1.2;font-variant-numeric:tabular-nums}.big small{font-size:22px}.recent{margin-top:18px}.weekly{display:flex;gap:12px;align-items:flex-end;min-height:190px}.week{flex:1;min-width:0;text-align:center}.bar{width:65%;max-width:64px;background:var(--accent);border-radius:5px 5px 0 0;margin:8px auto;min-height:2px;opacity:.8}.week small{display:block;font-size:12px;overflow-wrap:anywhere}.exercise-list{display:grid;gap:12px;margin:16px 0}.exercise{width:100%;display:flex;justify-content:space-between;gap:16px;padding:20px;text-align:start;border-radius:12px}.exercise>span{min-width:0;overflow-wrap:anywhere}.exercise strong{display:block;font-size:19px}.exercise small{display:block;margin-top:5px}.exercise .action{color:var(--accent);align-self:center;font-size:14px}.entry{text-align:center;max-width:760px;margin:45px auto}.entry h1{margin:16px 0}.drop{border:1px dashed var(--accent);background:white;border-radius:14px;padding:34px 20px;margin-top:30px}.drop.over{background:var(--soft)}.drop p{margin-top:12px}.help{border-top:1px solid var(--line);margin-top:28px;padding-top:14px;text-align:start}summary{min-height:44px;padding:10px 0;color:var(--accent);font-weight:600}.compare{display:grid;grid-template-columns:1fr 1fr;gap:18px}.compare .panel:last-child{background:var(--soft);border:2px solid var(--accent)}.measure{font-size:36px;font-weight:750;overflow-wrap:anywhere;margin:18px 0 8px}.measure small{font-size:20px}.notice{padding:18px;background:var(--soft);border-radius:10px;margin:18px 0;overflow-wrap:anywhere}.warning{background:#fff5e5}.note{border-left:3px solid var(--accent);padding:10px 18px;margin:20px 0;white-space:pre-wrap;overflow-wrap:anywhere}.set{border-top:1px solid var(--line);padding:14px 0;overflow-wrap:anywhere}.set p{margin-top:5px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;margin:14px 0}.calendar button{padding:8px 0;min-width:0;text-align:center;border:0;position:relative;background:transparent}.calendar .recorded:after{content:'•';display:block;line-height:8px;color:var(--accent)}.calendar [aria-pressed=true]{background:var(--accent);color:white}.calendar [aria-pressed=true]:after{color:white}.calendar span{text-align:center;font-size:13px;overflow:hidden}.trend{display:flex;align-items:flex-end;gap:8px;min-height:240px}.point{padding:10px 5px;flex:1;min-width:0;text-align:center;border-color:transparent}.point[aria-pressed=true]{background:var(--soft)}.point strong,.point small{display:block;overflow-wrap:anywhere}.point .bar{width:85%}.empty{text-align:center;padding:40px 15px}.search{width:100%;padding:10px;border:1px solid var(--line);border-radius:8px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:40px 0}.steps h2{font-size:20px}.steps p{margin-top:12px}.mini{transform:rotate(-1deg)}.mini .measure{font-size:40px}.nowrap{white-space:nowrap}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}progress{width:100%}details>p{margin:10px 0}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}.format{font-size:14px}button:disabled{opacity:.45;cursor:default}svg{max-width:100%}@media(max-width:600px){main{padding:22px 16px 36px}header{padding:16px;gap:10px}header .appname{width:100%;order:2}.overview,.columns,.guidehero,.steps{grid-template-columns:1fr}.panel{padding:20px}.overview{gap:20px}.big{font-size:60px}.exercise{padding:16px;flex-wrap:wrap}.exercise .action{width:100%}.compare{gap:10px}.compare .panel{padding:14px}.measure{font-size:27px}.measure small{font-size:16px}.entry{margin:24px auto}.calendar{gap:0}.calendar button{min-height:44px}.columns>.panel{margin:0}.trend{gap:2px}.point{padding:8px 2px}.point small{font-size:12px}.steps{gap:20px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:600px){.compare{grid-template-columns:1fr}.compare .panel{margin:5px 0;padding:20px}.trend{overflow-x:auto;justify-content:flex-start}.point{min-width:48px;flex:1 0 48px}}
.help,.format{overflow-wrap:anywhere}h1,h2,h3{overflow-wrap:anywhere}.panel,.columns>*{min-width:0}

.measure-sets{display:block;margin-top:8px;font-weight:600;color:var(--text)}
.row{flex-wrap:nowrap;gap:8px}.row>button{width:44px;padding:8px 0;flex:0 0 44px}.row>h2{min-width:0;flex:1;text-align:center}@media(max-width:600px){.row>h2{font-size:20px}}
