:root{color-scheme:light;--paper: #f6f7f6;--surface: #ffffff;--ink: #242d28;--muted: #69736c;--line: #e0e5e1;--accent: #365e49;--subtle: #f0f4f1}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:16px}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;line-height:1.5;font-variant-numeric:tabular-nums}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button{min-height:36px;padding:7px 12px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);cursor:pointer;font-weight:550;white-space:nowrap}button:hover{background:var(--subtle);border-color:#bec9c1}button:disabled{opacity:.5;cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}h1,h2,h3,p{margin:0}h1{font-size:23px;font-weight:650;letter-spacing:-.6px;line-height:1.3}h2{font-size:14px;font-weight:650;line-height:1.4}h3{font-size:14px;font-weight:600}.site-header,main{max-width:1440px;margin-inline:auto}.site-header{min-height:60px;padding:10px 28px;display:flex;align-items:center;gap:36px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;font-size:17px;font-weight:650;letter-spacing:-.4px}nav{display:flex;align-items:center;gap:24px}nav a{display:flex;align-items:center;min-height:36px;text-decoration:none;color:var(--muted);font-size:12px}nav a:hover{color:var(--ink)}.site-header>button{margin-left:auto}main{padding:0 28px 28px}.dashboard-heading,.page-title,.toolbar{display:flex;align-items:center;gap:12px}.dashboard-heading{justify-content:space-between;padding:22px 0 18px}time,.sync-status{color:var(--muted);font-size:12px}.cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--surface);margin-bottom:16px}.card{min-width:0;padding:15px 18px 9px;border-left:1px solid var(--line);display:flex;flex-direction:column;align-items:start}.card:first-child{border-left:0}.card h2{color:var(--muted);font-size:12px;font-weight:550}.metric{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:6px;margin:8px 0 4px;font-size:30px;font-weight:550;letter-spacing:-1px;line-height:1.3}.metric span{color:var(--muted);font-size:11px;letter-spacing:0;font-weight:400}.metric-detail{color:var(--muted);font-size:10px}.card .text-button{color:var(--accent);margin:auto 0 0 -8px;padding-block:5px}.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.primary:hover{background:#254c3c;border-color:#254c3c}.text-button{border-color:transparent;background:transparent;color:var(--muted);padding:6px 8px;font-size:12px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.dashboard-main,.dashboard-sidebar{display:grid;gap:16px;min-width:0}.panel{min-width:0;padding:16px 18px;border:1px solid var(--line);border-radius:7px;background:var(--surface)}main>.panel{margin-bottom:16px}.section-heading{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:12px}.section-heading>span,.count{color:var(--muted);font-size:11px;font-weight:400}.count{margin-left:6px}.section-heading .toolbar{gap:6px}.section-heading select{width:auto;font-size:12px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}th,td{padding:8px 10px;border-bottom:1px solid var(--line);text-align:right}th:first-child{text-align:left;padding-left:8px}th{font-weight:500}thead th{color:var(--muted);padding-top:0;font-size:11px}.table-unit{display:block;font-size:10px;font-weight:400}.today-row{background:var(--subtle)}.today-row th{color:var(--accent);font-weight:650}tbody time{font-size:12px;color:inherit}tfoot th,tfoot td{font-weight:650;border-bottom:0;padding-top:10px;padding-bottom:0}.week-summary>.hint{margin:10px 0 0;font-size:10px}.hint{color:var(--muted);font-size:12px;margin:6px 0}.empty{padding:20px 0;color:var(--muted);font-size:12px}.entries{list-style:none;padding:0;margin:0}.entries li{border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:500;padding-block:8px;min-height:36px}.entries summary{display:flex;align-items:baseline;gap:10px}.entries summary:before{content:"›";color:var(--muted)}.entries details[open]>summary:before{transform:rotate(90deg)}.entry-title{flex:1;overflow-wrap:anywhere}.entries time{flex-shrink:0;font-size:11px}.entry-detail{padding:6px 0 16px 18px;display:grid;gap:8px}.entry-detail>button{justify-self:start}label{display:flex;flex-direction:column;gap:5px;font-size:12px;font-weight:550}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);padding:8px}textarea{min-height:72px;resize:vertical}select{min-height:36px}.input-row{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:12px 0}.input-row>label{flex:1 1 120px}.input-row>button{flex:0 0 auto}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:12px 0}.checkbox{flex-direction:row;align-items:center;min-height:36px}.checkbox input{width:auto}.editor{display:grid;gap:14px;margin-top:16px}.editor .section-heading,.editor .input-row{margin:0}fieldset{min-width:0;margin:0;border:1px solid var(--line);border-radius:5px;padding:12px}.field-list{display:grid;gap:10px}.field-list>button,.editor>button{justify-self:start}.prescription{background:var(--subtle);padding:14px;border-radius:5px}.prescription article{padding-top:12px;margin-top:12px;border-top:1px solid var(--line)}.next-workout{display:flex;gap:12px;justify-content:space-between;align-items:center}.next-workout h3{font-size:16px;overflow-wrap:anywhere}.next-workout p{font-size:12px;color:var(--muted);margin-top:4px}.next-workout button{flex-shrink:0}.routine-library{border-top:1px solid var(--line);margin-top:14px;padding-top:4px}.routine-library>summary,.reminder-settings>summary{font-size:12px;color:var(--muted)}.routine-list>div{display:flex;align-items:center;gap:4px;border-top:1px solid var(--line);padding-top:6px;margin-top:6px}.routine-list span{margin-right:auto;overflow-wrap:anywhere;min-width:0}.tag{font-size:11px;border:1px solid var(--line);border-radius:4px;padding:2px 6px;color:var(--muted)}.reminders .section-heading{margin-bottom:4px}.reminders .actions button{font-size:12px;white-space:normal}.due{border-color:#8eaf9b;background:var(--subtle)}.error{background:#fff3e9;color:#783b11;border:1px solid #e9c5a3;padding:12px;border-radius:5px;margin-bottom:16px}.auth-page{max-width:440px;padding-top:64px}.auth-page>h1{margin-bottom:20px}.login{display:grid;gap:16px}.login>p{color:var(--muted)}.auth-error{max-width:1384px;margin:16px auto}.skip-link{position:absolute;top:-100px;left:12px;padding:8px;background:#fff;z-index:2}.skip-link:focus{top:10px}.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}@media(max-width:1100px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 280px}.card{padding-inline:12px}.metric{font-size:26px}}@media(max-width:900px){.dashboard-grid{grid-template-columns:minmax(0,1fr)}.dashboard-sidebar{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.cards{grid-template-columns:repeat(3,minmax(0,1fr))}.card:nth-child(4){border-left:0}.card:nth-child(n+4){border-top:1px solid var(--line)}}@media(max-width:600px){body{font-size:14px}button,select,summary{min-height:44px}input,select,textarea{font-size:16px}.site-header{padding:8px 16px;gap:18px;flex-wrap:wrap}nav{order:3;flex-basis:100%;gap:24px;border-top:1px solid var(--line)}nav a{min-height:44px}main{padding:0 16px 20px}.dashboard-heading{flex-wrap:wrap;gap:12px;padding:18px 0 14px}.page-title{gap:10px}.page-title time{font-size:11px}.dashboard-heading .toolbar{gap:6px}.sync-status:empty{display:none}.card{padding:12px 10px 4px}.metric{font-size:26px;column-gap:4px}.metric span,.metric-detail{font-size:10px}.dashboard-sidebar{grid-template-columns:minmax(0,1fr)}.panel{padding:14px 12px}.section-heading{flex-wrap:wrap}.section-heading select{max-width:140px}th,td{padding-inline:8px}.entries summary{flex-wrap:wrap;column-gap:8px;row-gap:0;padding-block:10px}.entry-title{flex-basis:calc(100% - 20px)}.entries time{margin-left:14px}.input-row>label{flex-basis:110px}.auth-page{padding-top:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
