:root { --ink:#11211c; --muted:#698079; --line:#dce6df; --paper:#f7faf7; --white:#fff; --lime:#b8e63d; --lime-dark:#7fac00; --orange:#f5a44d; --blue:#8ad8e3; --pink:#edb9cc; --red:#e77d69; --radius:18px; }
* { box-sizing:border-box; } body { margin:0; background:var(--paper); color:var(--ink); font-family:Manrope,ui-sans-serif,system-ui,sans-serif; font-size:14px; } button,input,textarea,select { font:inherit; } button { cursor:pointer; } .app-shell { min-height:100vh; display:grid; grid-template-columns:244px minmax(0,1fr); } .sidebar { background:#10211b; color:#edf8ed; display:flex; flex-direction:column; padding:28px 17px 20px; position:sticky; top:0; height:100vh; }.brand { color:inherit; text-decoration:none; font-weight:800; font-size:17px; display:flex; align-items:center; gap:9px; padding:0 10px 34px; letter-spacing:.3px; }.brand i { font-style:normal; color:#9fc82d; }.brand-mark { display:grid; place-items:center; width:26px; height:26px; border-radius:8px; background:var(--lime); color:#142419; font-size:16px; }.nav { display:grid; gap:5px; }.nav-item { padding:11px 12px; border-radius:10px; color:#aec0b2; text-decoration:none; transition:.16s ease; font-size:13px; font-weight:700; }.nav-item span { display:inline-block; width:27px; color:#9dbaac; font-size:16px; }.nav-item:hover,.nav-item.active { color:#fff; background:rgba(255,255,255,.09); }.nav-item.active span { color:var(--lime); }.sidebar-bottom { margin-top:auto; padding:17px 12px; background:rgba(255,255,255,.07); border-radius:14px; display:grid; gap:6px; }.sidebar-bottom strong { font-size:17px; }.eyebrow { margin:0; color:var(--muted); letter-spacing:.13em; font:500 10px 'DM Mono',monospace; }.sidebar .eyebrow { color:#93aa9a; }.muted { color:var(--muted); font-size:12px; } main { overflow:hidden; max-width:1500px; width:100%; margin:0 auto; padding:0 38px 50px; }.topbar { min-height:105px; display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); }.topbar h1 { margin:5px 0 0; font-size:24px; letter-spacing:-.8px; }.topbar-actions { display:flex; gap:10px; align-items:center; }.date-chip { padding:9px 12px; background:#fff; border:1px solid var(--line); border-radius:10px; font:500 11px 'DM Mono',monospace; color:#385047; }.icon-button,.menu-button { width:36px; height:36px; border:1px solid var(--line); border-radius:10px; color:var(--ink); background:#fff; }.menu-button { display:none; }.view { display:none; padding-top:29px; animation:fade .22s ease; }.view.active { display:block; } @keyframes fade { from{opacity:.2;transform:translateY(5px)} to{opacity:1;transform:translateY(0)} }
.hero-card { background:#18332a; color:#f7fff7; min-height:270px; border-radius:var(--radius); padding:36px 42px; display:flex; justify-content:space-between; gap:35px; overflow:hidden; position:relative; }.hero-card:after { content:''; position:absolute; width:340px; height:340px; border-radius:50%; background:linear-gradient(135deg,transparent 36%,rgba(184,230,61,.13)); right:-110px; bottom:-190px; }.hero-copy { max-width:650px; position:relative; z-index:1; }.hero-card .eyebrow { color:#b8d3be; }.hero-card h2 { font-size:33px; letter-spacing:-1.5px; margin:12px 0 9px; line-height:1.13; }.hero-card p:not(.eyebrow) { color:#cce0d2; max-width:490px; line-height:1.7; margin:0 0 24px; }.hero-stat { z-index:1; align-self:center; width:190px; padding-left:28px; border-left:1px solid rgba(255,255,255,.17); display:grid; gap:6px; }.hero-stat strong { font-size:29px; letter-spacing:-1px; }.hero-stat .muted { color:#b9ccbe; }.mini-bars { height:33px; display:flex; align-items:end; gap:5px; margin-top:8px; }.mini-bars i { width:12px; background:#4a6558; border-radius:2px 2px 0 0; height:30%; }.mini-bars i:nth-child(2){height:38%}.mini-bars i:nth-child(3){height:47%}.mini-bars i:nth-child(4){height:56%}.mini-bars i:nth-child(5){height:62%}.mini-bars i:nth-child(6){height:77%;background:#91b627}.mini-bars i:nth-child(7){height:86%;background:#a9d133}
.button { border:0; border-radius:10px; padding:12px 16px; font-weight:800; font-size:12px; transition:transform .15s ease,box-shadow .15s ease; }.button:hover { transform:translateY(-1px); box-shadow:0 7px 16px rgba(8,30,20,.14); }.button span { margin-left:10px; font-size:15px; }.primary { background:var(--lime); color:#15251a; }.ghost { background:#fff; color:var(--ink); border:1px solid var(--line); }.dark { background:#18332a; color:#fff; }.hero-actions { display:flex; gap:9px; flex-wrap:wrap; }.summary-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin:19px 0; }.summary-card,.panel { background:var(--white); border:1px solid var(--line); border-radius:var(--radius); }.summary-card { min-height:145px; padding:18px; position:relative; display:grid; align-content:start; gap:5px; }.summary-icon { width:27px; height:27px; display:grid; place-items:center; border-radius:8px; margin-bottom:4px; font-weight:800; }.lime{background:#ebf7be;color:#648700}.orange{background:#ffedd8;color:#b16516}.blue{background:#d8f5f6;color:#287d89}.pink{background:#fbe7ef;color:#a7486c}.summary-card p { color:var(--muted); margin:0; font-size:12px; }.summary-card strong { font-size:22px; letter-spacing:-1px; }.summary-card small { color:var(--muted); font-size:11px; letter-spacing:0; }.progress-track { background:#edf2ee; height:5px; border-radius:5px; overflow:hidden; margin-top:5px; }.progress-track i { display:block; height:100%; width:0%; background:var(--orange); transition:width .25s ease; }.dashboard-grid { display:grid; grid-template-columns:1.04fr .96fr; gap:17px; }.panel { padding:23px; }.panel-heading { display:flex; justify-content:space-between; gap:15px; align-items:flex-start; margin-bottom:17px; }.panel h3 { margin:6px 0 0; font-size:17px; letter-spacing:-.5px; }.status-dot,.session-tag,.pill { font:500 10px 'DM Mono',monospace; border-radius:20px; padding:6px 8px; background:#eff6d3; color:#607b00; white-space:nowrap; }.status-dot:before { content:'•'; font-size:15px; vertical-align:-1px; margin-right:4px; }.task-list { display:grid; gap:1px; margin-bottom:10px; }.task { padding:13px 4px; display:flex; gap:12px; align-items:flex-start; border-bottom:1px solid #edf1ee; }.task input { margin:2px 0 0; accent-color:#749e00; width:16px; height:16px; }.task label { cursor:pointer; display:grid; gap:2px; flex:1; }.task label strong { font-size:12px; }.task label span { color:var(--muted); font-size:11px; }.task.done strong { color:var(--muted); text-decoration:line-through; }.text-button { padding:7px 0; border:0; background:none; color:#658700; font-weight:800; font-size:11px; }.session-description { color:var(--muted); font-size:12px; line-height:1.7; margin:-4px 0 16px; }.exercise-preview { display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-bottom:18px; }.exercise-preview div { padding:10px; background:#f6f9f6; border-radius:9px; font-size:11px; font-weight:700; }.exercise-preview small { display:block; color:var(--muted); font-weight:500; margin-top:3px; }.workout-preview .button { width:100%; }.coach-note { border-left:3px solid var(--lime-dark); margin-top:18px; padding:13px 16px; display:flex; gap:12px; align-items:flex-start; background:#f0f7ed; border-radius:0 11px 11px 0; color:#45604f; font-size:12px; line-height:1.65; }.coach-note p{margin:0}.coach-note strong{color:var(--ink)}.coach-note>span{color:#789d00;font-size:18px;}
.section-heading { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin:4px 0 23px; }.section-heading h2 { font-size:29px; letter-spacing:-1.2px; margin:8px 0 7px; }.section-heading p:not(.eyebrow) { margin:0; color:var(--muted); max-width:630px; line-height:1.6; }.goal-badge { background:#18332a; padding:15px 18px; color:#fff; border-radius:11px; font:500 14px 'DM Mono',monospace; white-space:nowrap; }.goal-badge span { color:var(--lime); padding:0 6px; }.phase-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:13px; margin-bottom:18px; }.phase-card { padding:20px; min-height:182px; border:1px solid var(--line); border-radius:var(--radius); background:#fff; }.phase-card:nth-child(2) { background:#f2f7df; border-color:#dbe9a9; }.phase-card:nth-child(3) { background:#19342b; color:#f5fff6; border-color:#19342b; }.phase-card .eyebrow { margin-bottom:13px; }.phase-card:nth-child(3) .eyebrow,.phase-card:nth-child(3) p { color:#a9c0b0; }.phase-card h3 { font-size:17px; margin:0 0 7px; }.phase-card p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }.phase-card .phase-target { display:block; font:500 11px 'DM Mono',monospace; margin-top:16px; }.weekly-panel { margin-bottom:13px; }.weekly-days { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }.weekly-day { border:1px solid var(--line); border-radius:11px; padding:13px; min-height:120px; }.weekly-day.today { border:2px solid #a5ce2d; background:#f9fdef; }.weekly-day .day { color:var(--muted); font:500 10px 'DM Mono',monospace; }.weekly-day h4 { margin:9px 0 4px; font-size:13px; }.weekly-day p { margin:0; font-size:11px; color:var(--muted); line-height:1.5; }.disclaimer { color:#7a8f83; font-size:11px; line-height:1.65; padding:0 4px; }.workout-heading { margin-bottom:15px; }.workout-controls { display:flex; gap:8px; align-items:center; }.workout-controls select { border:1px solid var(--line); background:#fff; border-radius:10px; padding:10px; color:var(--ink); font-size:12px; }.workout-banner { display:flex; justify-content:space-between; gap:25px; align-items:center; border-radius:13px; background:#ecf4df; padding:16px 19px; margin-bottom:15px; }.workout-banner div { display:flex; align-items:center; gap:10px; }.workout-banner strong { font-size:13px; }.workout-banner p { color:#506555; font-size:11px; line-height:1.6; max-width:500px; margin:0; }.exercise-editor { display:grid; gap:11px; }.exercise-card { background:#fff; border:1px solid var(--line); border-radius:14px; padding:17px; }.exercise-top { display:flex; gap:9px; align-items:center; justify-content:space-between; margin-bottom:12px; }.exercise-title { display:flex; align-items:center; gap:10px; }.exercise-number { width:23px; height:23px; display:grid; place-items:center; background:#eaf3c9; border-radius:7px; color:#587500; font:500 10px 'DM Mono',monospace; }.exercise-top input { border:0; font-weight:800; font-size:13px; color:var(--ink); width:min(430px,50vw); outline:none; }.icon-text-button { background:transparent; border:0; color:#87978d; font-size:16px; }.set-head,.set-row { display:grid; grid-template-columns:42px 1.05fr 1.05fr 1fr 1.2fr 33px; gap:8px; align-items:center; }.set-head { color:var(--muted); font:500 9px 'DM Mono',monospace; padding:0 0 5px; }.set-row { margin:4px 0; }.set-row span { text-align:center; font:500 11px 'DM Mono',monospace; }.set-row input { min-width:0; width:100%; border:1px solid #e4ebe6; border-radius:7px; padding:8px; background:#fbfcfb; font-size:12px; }.set-row input:focus,.form-grid input:focus,textarea:focus,.full-label input:focus { outline:2px solid #d9eca2; border-color:#99b83c; }.set-complete { accent-color:#77a000; width:15px; height:15px; }.add-set,.add-exercise { margin-top:11px; padding:9px 11px; font-size:11px; }.add-exercise { margin-top:14px; }.session-notes { display:grid; gap:8px; margin:21px 0; }.session-notes label,.full-label { font-size:12px; font-weight:800; }.session-notes label span { color:var(--muted); font-weight:500; }.session-notes textarea { resize:vertical; border:1px solid var(--line); border-radius:10px; padding:12px; background:#fff; }.recent-log { margin-top:10px; }.log-row { padding:10px 0; display:flex; justify-content:space-between; gap:15px; border-top:1px solid #edf1ee; font-size:12px; }.log-row div { display:grid; gap:3px; }.log-row small { color:var(--muted); }.log-row time { color:var(--muted); font:500 10px 'DM Mono',monospace; }.empty { color:var(--muted); font-size:12px; margin:0; }.metrics-form { display:grid; gap:18px; margin-bottom:18px; }.form-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; }.form-grid label,.full-label { display:grid; gap:7px; }.form-grid input,.full-label input { border:1px solid var(--line); border-radius:9px; background:#fff; padding:11px; color:var(--ink); }.metrics-form .button { width:max-content; }.table-panel { overflow:hidden; }.table-wrap { overflow:auto; margin:0 -23px -23px; }.table-wrap table { width:100%; border-collapse:collapse; min-width:580px; }.table-wrap th { text-align:left; padding:12px 23px; color:var(--muted); background:#fbfcfb; font:500 10px 'DM Mono',monospace; }.table-wrap td { padding:12px 23px; border-top:1px solid #edf1ee; font-size:12px; }.delete-entry { background:transparent; border:0; color:#a2ada6; font-size:15px; }.progress-layout { display:grid; grid-template-columns:1.35fr .65fr; gap:16px; margin-bottom:16px; }.progress-summary { margin-top:0; }.chart { min-height:220px; display:flex; align-items:stretch; gap:7px; padding:10px 0 0; }.chart-col { flex:1; display:flex; flex-direction:column; justify-content:end; gap:6px; min-width:23px; }.chart-bar-wrap { height:164px; display:flex; align-items:end; background:linear-gradient(to bottom, transparent 32%, #f4f7f4 33%, transparent 34%, transparent 65%, #f4f7f4 66%, transparent 67%); }.chart-bar { width:100%; border-radius:5px 5px 2px 2px; background:#b6dd3d; min-height:4px; }.chart-col:last-child .chart-bar { background:#739e00; }.chart-col strong { font:500 10px 'DM Mono',monospace; text-align:center; color:#54705e; }.chart-col span { font-size:9px; text-align:center; color:#99aaa1; white-space:nowrap; }.coach-decision { background:#19342b; color:#f5fff6; }.coach-decision .eyebrow { color:#a2c2ad; }.decision-status { color:#bce746; font:500 10px 'DM Mono',monospace; }.coach-decision h3 { font-size:21px; letter-spacing:-.8px; margin:10px 0; }.coach-decision p:not(.eyebrow) { color:#c0d4c5; font-size:12px; line-height:1.75; }.rule-panel { display:grid; grid-template-columns:.6fr 1.4fr; gap:28px; align-items:start; }.rule-panel ol { list-style:none; padding:0; margin:0; display:grid; gap:13px; }.rule-panel li { display:flex; gap:12px; color:#53685e; font-size:12px; line-height:1.55; }.rule-panel li>span { width:23px; height:23px; border-radius:50%; background:#ecf4d5; color:#668500; display:grid; flex:none; place-items:center; font:500 10px 'DM Mono',monospace; }.rule-panel li p { margin:2px 0 0; }.rule-panel em { font-style:normal; color:#9a6200; }.coach-grid { display:grid; grid-template-columns:1.25fr .75fr; gap:16px; }.principles { list-style:none; padding:0; margin:15px 0 0; display:grid; gap:6px; }.principles li { padding:13px 0; border-top:1px solid #edf1ee; display:flex; gap:12px; font-size:12px; line-height:1.6; color:var(--muted); }.principles b { font:500 10px 'DM Mono',monospace; color:#77a000; }.principles strong { color:var(--ink); }.alert-panel { background:#fff6f2; border-color:#f4d8c9; }.alert-panel h3 { font-size:20px; margin-top:6px; }.alert-panel>p:not(.eyebrow) { color:#76584a; font-size:12px; line-height:1.7; }.toast { position:fixed; left:50%; bottom:22px; transform:translate(-50%,120px); background:#11251d; color:#fff; padding:12px 16px; border-radius:10px; font-size:12px; box-shadow:0 10px 25px rgba(10,20,15,.25); transition:transform .25s ease; z-index:10; }.toast.show { transform:translate(-50%,0); }
.sync-badge { align-self:center; border-radius:20px; padding:8px 10px; background:#e7edf1; color:#46606d; font:500 10px 'DM Mono',monospace; }.sync-badge.connected { background:#edf6c9; color:#648200; }.sync-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.install-panel h3,.sync-panel h3 { font-size:21px; margin:7px 0 11px; }.install-steps { list-style:none; padding:0; margin:16px 0 19px; display:grid; gap:12px; }.install-steps li { display:flex; gap:11px; color:#53685e; font-size:12px; line-height:1.55; }.install-steps li>span { width:23px; height:23px; flex:none; display:grid; place-items:center; border-radius:50%; background:#eaf3c9; color:#608000; font:500 10px 'DM Mono',monospace; }.install-steps p { margin:2px 0 0; }.sync-panel { background:#19342b; border-color:#19342b; color:#f5fff6; }.sync-panel .eyebrow { color:#a2c2ad; }.sync-copy,.sync-meta { color:#c0d4c5; font-size:12px; line-height:1.7; }.sync-form { display:grid; gap:13px; margin-top:19px; }.sync-form label { display:grid; gap:7px; color:#e6f2e8; font-size:12px; font-weight:800; }.sync-form input { width:100%; border:1px solid #486256; background:#fff; color:#16261d; border-radius:9px; padding:11px; }.sync-actions { display:flex; align-items:center; gap:12px; margin-top:19px; flex-wrap:wrap; }.danger { color:#f3b59f; }.sync-meta { margin:17px 0 0; color:#a9c0b0; }
.password-details { margin-top:17px; border-top:1px solid #3f5c4d; padding-top:13px; }.password-details summary { cursor:pointer; color:#cde5d2; font-size:12px; font-weight:800; }.password-details .sync-form { margin-top:13px; }.password-details .ghost { width:max-content; }
.rest-timer { min-width:96px; display:grid; gap:2px; padding:8px 10px; border:1px solid #d7e4b8; background:#f8fced; border-radius:9px; color:#637d18; text-align:center; }.rest-timer span { font:500 9px 'DM Mono',monospace; }.rest-timer strong { font:700 15px 'DM Mono',monospace; }.rest-timer.active { background:#19342b; border-color:#19342b; color:#dff18e; }.exercise-prescription { display:grid; grid-template-columns:116px 1fr; gap:14px; padding:12px; background:#f8faf5; border:1px solid #e4ebdb; border-radius:11px; margin-bottom:12px; }.exercise-media { min-height:94px; overflow:hidden; border-radius:8px; background:#e8eee4; }.exercise-image { width:100%; height:100%; min-height:94px; display:block; object-fit:cover; object-position:center; }.exercise-image.placeholder { display:grid; place-items:center; color:#6d8d09; font-size:28px; }.exercise-brief { display:grid; align-content:start; gap:5px; }.exercise-brief strong { font:700 11px 'DM Mono',monospace; color:#668500; }.exercise-brief p { margin:0; color:#52675a; font-size:11px; line-height:1.55; }.prescription-pills { display:flex; flex-wrap:wrap; gap:6px; align-items:center; }.prescription-pills>span,.rest-button { border:0; border-radius:20px; padding:5px 7px; background:#e8f2cd; color:#587300; font:500 9px 'DM Mono',monospace; }.rest-button { background:#e8eff0; color:#287580; }.apply-load { text-align:left; margin-top:2px; }.technique { margin:0 0 13px; border:1px solid #e6ece7; border-radius:10px; background:#fff; overflow:hidden; }.technique summary { cursor:pointer; padding:11px 12px; font-size:11px; font-weight:800; color:#385047; }.technique-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; border-top:1px solid #e8eee9; padding:12px; }.technique-grid b { color:#628100; font:500 9px 'DM Mono',monospace; text-transform:uppercase; letter-spacing:.07em; }.technique-grid p,.technique-grid ul { margin:5px 0 12px; color:#556a5e; font-size:11px; line-height:1.55; }.technique-grid ul { padding-left:16px; }.technique-grid p:last-child,.technique-grid ul:last-child { margin-bottom:0; }
.nutrition-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:16px; }.nutrition-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:16px; }.nutrition-form h3,.meal-panel h3,.micronutrient-panel h3,.checkin-panel h3 { font-size:20px; margin:7px 0 9px; }.form-copy { color:#5b7064; line-height:1.65; font-size:12px; margin:0 0 18px; }.nutrition-inputs { margin-bottom:17px; }.meal-list,.micronutrient-list { list-style:none; padding:0; margin:16px 0 0; display:grid; gap:10px; }.meal-list li { display:flex; gap:10px; color:#53685e; font-size:12px; line-height:1.55; }.meal-list b { width:22px; height:22px; flex:none; display:grid; place-items:center; border-radius:50%; background:#ecf4d5; color:#668500; font:500 10px 'DM Mono',monospace; }.meal-list strong,.micronutrient-list strong { color:var(--ink); }.micronutrient-list li { border-top:1px solid #edf1ee; padding-top:11px; color:#53685e; font-size:12px; line-height:1.6; }.micronutrient-list li:first-child { border-top:0; padding-top:0; }.tiny-note { color:#7a8d83; font-size:11px; line-height:1.6; margin:15px 0 0; }.lower-grid { margin-top:16px; }.checkin-panel { background:#19342b; border-color:#19342b; color:#f5fff6; }.checkin-panel .decision-status { display:inline-block; }.checkin-panel h4 { font-size:17px; margin:10px 0 7px; }.checkin-panel p:not(.tiny-note) { margin:0; color:#c0d4c5; line-height:1.65; font-size:12px; }.checkin-panel .tiny-note { color:#a9c0b0; }.checkin-panel .ghost { margin-top:16px; }.decision-status.keep { color:#c7ed55; }.decision-status.adjust { color:#ffd98f; }.decision-status.slow { color:#ffba9f; }
.week-explorer { margin-top:14px; }.week-picker { display:grid; grid-template-columns:repeat(12,1fr); gap:6px; margin-bottom:15px; }.week-button { min-height:34px; border:1px solid var(--line); border-radius:8px; background:#fbfdfb; color:#61756a; font:500 10px 'DM Mono',monospace; }.week-button.active { background:#19342b; border-color:#19342b; color:#d7f167; }.week-theme { padding:15px 17px; background:#f0f7ed; border-radius:11px; margin-bottom:11px; display:grid; gap:5px; }.week-theme strong { font-size:16px; }.week-theme p { margin:0; color:#53685e; font-size:12px; line-height:1.6; }.agenda-grid { display:grid; grid-template-columns:repeat(7,1fr); gap:8px; }.agenda-day { border:1px solid #e2ebe4; border-radius:10px; padding:12px; min-height:145px; display:flex; flex-direction:column; align-items:flex-start; }.agenda-day>span { color:#6b8174; font:500 9px 'DM Mono',monospace; }.agenda-day h4 { font-size:12px; margin:9px 0 5px; }.agenda-day p { color:#61766a; font-size:11px; line-height:1.55; margin:0; }.agenda-day .text-button { margin-top:auto; }.agenda-day small { margin-top:auto; color:#92a297; font:500 9px 'DM Mono',monospace; }.agenda-day.recovery { background:#fbfcfb; }.agenda-day.recovery h4 { color:#607d22; }
@media(max-width:1020px){.summary-grid{grid-template-columns:repeat(2,1fr)}.phase-grid{grid-template-columns:1fr}.weekly-days{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.progress-layout,.coach-grid,.sync-grid{grid-template-columns:1fr}.rule-panel{grid-template-columns:1fr}.sidebar{width:244px;position:fixed;left:-260px;z-index:5;box-shadow:8px 0 25px rgba(0,0,0,.16);transition:left .2s ease}.sidebar.open{left:0}.app-shell{display:block}.menu-button{display:grid;place-items:center;margin-right:13px}.topbar{justify-content:flex-start}.topbar-actions{margin-left:auto}}
@media(max-width:650px){main{padding:0 15px 30px}.topbar{min-height:78px}.topbar h1{font-size:20px}.date-chip{display:none}.view{padding-top:18px}.hero-card{padding:25px;min-height:0;display:block}.hero-card h2{font-size:26px}.hero-stat{width:auto;border-left:0;border-top:1px solid rgba(255,255,255,.17);padding:15px 0 0;margin-top:20px}.summary-grid,.nutrition-summary{gap:9px;margin:12px 0;grid-template-columns:1fr 1fr}.summary-card{min-height:130px;padding:14px}.summary-card strong{font-size:18px}.dashboard-grid,.nutrition-grid{gap:10px}.panel{padding:18px;border-radius:14px}.section-heading{display:block;margin-bottom:17px}.section-heading h2{font-size:25px}.goal-badge{display:inline-block;margin-top:15px}.workout-heading{display:block}.workout-controls{margin-top:14px;display:grid;grid-template-columns:1fr}.workout-controls .button{width:100%}.workout-banner{display:block}.workout-banner p{margin-top:9px}.rest-timer{margin-top:10px;width:max-content}.exercise-top input{width:53vw}.exercise-prescription{grid-template-columns:84px 1fr;gap:10px;padding:9px}.exercise-media,.exercise-image{min-height:84px}.technique-grid{grid-template-columns:1fr;gap:5px}.set-head,.set-row{grid-template-columns:30px 1fr 1fr .8fr .9fr 23px;gap:4px}.set-row input{padding:7px 3px;text-align:center}.set-head{font-size:8px}.form-grid{grid-template-columns:1fr 1fr;gap:12px}.metrics-form .button,.nutrition-form .button{width:100%}.weekly-days{grid-template-columns:1fr 1fr}.week-picker{grid-template-columns:repeat(6,1fr)}.agenda-grid{grid-template-columns:1fr 1fr}.agenda-day{min-height:126px}.phase-card{min-height:0}.coach-note{margin-top:12px}.topbar .eyebrow{font-size:9px}.topbar-actions{gap:5px}}

/* Czytelny dziennik serii i nawigacja dotykowa */
.mobile-nav,.mobile-save-workout{display:none}.exercise-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.exercise-stats>span,.exercise-stats>.rest-button{min-width:0;border:1px solid #dfe9d6;border-radius:9px;padding:7px 8px;background:#fff;color:var(--ink);display:grid;gap:2px;text-align:left}.exercise-stats small,.load-advice>small,.set-field>small,.set-index small,.set-done small{font:500 8px 'DM Mono',monospace;letter-spacing:.06em;color:#789087}.exercise-stats b{font-size:12px}.exercise-stats .rest-button{color:#236d77;background:#edf8f8;border-color:#d8ecee}.load-advice{display:grid;gap:5px;margin-top:7px}.load-advice strong{font-size:12px;line-height:1.35}.load-advice p{margin:0;color:#60736a;font-size:10px;line-height:1.45}.apply-load{width:max-content;border:0;border-radius:8px;background:#19342b;color:#fff;padding:8px 10px;font-size:10px;font-weight:800;text-align:left}.technique summary{display:flex;justify-content:space-between;align-items:center;gap:12px}.technique summary small{color:#82958a;font-weight:500;font-size:9px}.set-head{display:none}.set-list{display:grid;gap:7px}.set-row{display:grid;grid-template-columns:54px repeat(3,minmax(72px,1fr)) minmax(84px,1fr) 66px;gap:7px;align-items:stretch;margin:0;padding:7px;border:1px solid #e5ece7;border-radius:10px;background:#fbfdfb;transition:.18s ease}.set-row.completed{background:#f1f8de;border-color:#cfe29a}.set-index,.set-field,.set-done{min-width:0;display:grid;align-content:center;gap:4px}.set-index{text-align:center}.set-index strong{font:700 15px 'DM Mono',monospace}.set-field input{min-height:39px!important;width:100%;border:1px solid #dfe7e1!important;border-radius:8px!important;padding:8px!important;background:#fff!important;font-weight:700;font-size:14px!important;text-align:center}.set-field span{position:relative}.set-field span input{padding-right:25px!important}.set-field span i{position:absolute;right:7px;top:50%;transform:translateY(-50%);color:#91a198;font-size:9px;font-style:normal}.set-done{cursor:pointer;place-items:center;border-radius:8px;background:#edf1ee}.set-done input{position:absolute;opacity:0;pointer-events:none}.set-done span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#dce5df;color:#7c8d83;font-weight:900}.set-done input:checked+span{background:#7fac00;color:#fff}.set-done small{color:#73867b}.mobile-more{font:inherit}

@media(max-width:650px){
  html{scroll-behavior:smooth}body{overflow-x:hidden;background:#f3f6f3;font-size:15px;padding-bottom:env(safe-area-inset-bottom)}main{width:100%;padding:0 12px calc(94px + env(safe-area-inset-bottom));overflow:visible}.view{padding-top:14px}.topbar{position:sticky;top:0;z-index:12;min-height:66px;margin:0 -12px;padding:env(safe-area-inset-top) 12px 0;background:rgba(247,250,247,.94);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:#d7e1da}.topbar h1{font-size:19px;letter-spacing:-.5px}.menu-button{width:42px;height:42px;border-radius:12px;margin-right:10px}.icon-button{width:42px;height:42px}.sidebar{z-index:50;width:min(84vw,320px);left:-340px;padding-top:calc(24px + env(safe-area-inset-top))}.brand{padding-bottom:22px}.nav-item{min-height:46px;display:flex;align-items:center}.mobile-nav{position:fixed;left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;display:grid;grid-template-columns:repeat(5,1fr);align-items:end;padding:7px 5px;background:rgba(16,33,27,.96);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 15px 40px rgba(8,24,17,.28)}.mobile-nav .nav-item,.mobile-more{min-width:0;min-height:52px;padding:5px 2px;border:0;border-radius:13px;background:transparent;color:#aebdb3;text-decoration:none;display:grid;place-items:center;align-content:center;gap:3px;font-size:9px;font-weight:700;line-height:1}.mobile-nav .nav-item span,.mobile-more span{width:auto;color:inherit;font-size:19px;line-height:1}.mobile-nav .nav-item.active,.mobile-more.active{color:#d6f06a;background:rgba(255,255,255,.08)}.mobile-nav .mobile-nav-main{width:58px;min-height:58px;margin:-15px auto 0;border-radius:18px;background:#b8e63d;color:#15251a;box-shadow:0 8px 20px rgba(109,147,0,.35)}.mobile-nav .mobile-nav-main.active{background:#d1f469;color:#10211b}.mobile-nav .mobile-nav-main span{font-size:25px}.hero-card{padding:22px;border-radius:20px}.hero-card h2{font-size:27px}.hero-card p:not(.eyebrow){line-height:1.55}.button{min-height:46px;border-radius:12px;font-size:13px}.panel{padding:16px;border-radius:16px}.summary-card{min-height:118px;border-radius:16px}.section-heading h2{font-size:26px;line-height:1.08}.workout-heading{margin-bottom:11px}.workout-heading>div>p:not(.eyebrow){font-size:12px;line-height:1.5}.workout-controls{margin-top:12px;gap:7px}.workout-controls select{min-height:46px;font-size:16px;padding:10px 12px}.workout-banner{position:sticky;top:66px;z-index:11;display:grid;grid-template-columns:1fr auto;gap:8px;margin:0 -12px 10px;padding:10px 12px;border-radius:0;background:rgba(232,241,218,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-top:1px solid #d9e6c6;border-bottom:1px solid #d3e0c0}.workout-banner>div{display:grid;gap:3px}.workout-banner .session-tag{width:max-content;padding:4px 7px;font-size:8px}.workout-banner p{display:none}.workout-banner .rest-timer{grid-column:2;grid-row:1;margin:0;min-width:86px;padding:7px 9px}.exercise-editor{gap:12px}.exercise-card{overflow:hidden;border-radius:18px;padding:14px;box-shadow:0 4px 14px rgba(25,52,43,.05)}.exercise-top{align-items:flex-start;margin-bottom:11px}.exercise-title{min-width:0;flex:1;gap:8px}.exercise-number{width:30px;height:30px;flex:none;border-radius:9px;font-size:11px}.exercise-top input{width:100%;min-width:0;min-height:30px;padding:2px 0;font-size:16px;line-height:1.25;background:transparent}.icon-text-button{width:34px;height:34px;flex:none}.exercise-prescription{grid-template-columns:96px minmax(0,1fr);align-items:start;gap:10px;padding:9px;margin-bottom:10px;border-radius:13px}.exercise-media{width:96px;height:96px;min-height:0!important;border-radius:11px}.exercise-image{display:block;width:96px!important;height:96px!important;min-height:0!important;max-width:96px;object-fit:cover}.exercise-brief{min-width:0}.exercise-stats{grid-template-columns:1fr 1fr;gap:5px}.exercise-stats>span,.exercise-stats>.rest-button{padding:6px;min-height:43px}.exercise-stats>.rest-button{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between}.exercise-stats b{font-size:11px}.load-advice{grid-column:1/-1;margin-top:6px}.load-advice>small{color:#6b820e}.load-advice strong{font-size:12px}.load-advice p{display:none}.apply-load{width:100%;min-height:40px;padding:8px;font-size:10px;text-align:center;background:#19342b}.technique{margin-bottom:11px;border-radius:12px}.technique summary{min-height:50px;padding:10px 12px;display:grid;gap:2px}.technique summary span{font-size:12px}.technique summary small{font-size:8px}.technique-grid{grid-template-columns:1fr;gap:4px;padding:13px}.technique-grid p,.technique-grid ul{font-size:12px;line-height:1.55}.set-list{gap:8px}.set-row{grid-template-columns:38px repeat(3,minmax(0,1fr)) 43px;gap:5px;padding:6px;border-radius:12px}.set-target-field{display:none}.set-field input{min-height:46px!important;padding:7px 3px!important;font-size:16px!important}.set-field span input{padding-right:20px!important}.set-field span i{right:4px}.set-field>small,.set-index small,.set-done small{font-size:7px;letter-spacing:0}.set-index strong{font-size:15px}.set-done{min-height:58px}.set-done span{width:30px;height:30px}.set-done small{font-size:6px}.add-set{width:100%;min-height:42px;margin-top:9px;border:1px dashed #cddbcf;border-radius:10px}.add-exercise{width:100%}.mobile-save-workout{display:block;width:100%;margin:0 0 12px;min-height:52px}.session-notes{margin:18px 0 10px}.session-notes textarea{min-height:92px;font-size:16px}.recent-log{margin-top:0}.week-picker{display:flex;overflow-x:auto;gap:7px;margin-right:-16px;padding-right:16px;scrollbar-width:none}.week-picker::-webkit-scrollbar{display:none}.week-button{width:44px;min-width:44px;height:42px}.agenda-grid{grid-template-columns:1fr}.agenda-day{min-height:0;padding:14px}.agenda-day .text-button,.agenda-day small{margin-top:10px}.weekly-days{grid-template-columns:1fr 1fr}.form-grid{gap:10px}.form-grid input,.full-label input{min-height:46px;font-size:16px}.toast{bottom:calc(88px + env(safe-area-inset-bottom));width:calc(100% - 32px);text-align:center}.table-wrap{margin:0 -16px -16px}.coach-note{line-height:1.55}
}

@media(max-width:390px){.summary-grid,.nutrition-summary{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.exercise-prescription{grid-template-columns:84px minmax(0,1fr)}.exercise-media,.exercise-image{width:84px!important;height:84px!important;max-width:84px}.exercise-stats small{font-size:7px}.set-row{grid-template-columns:34px repeat(3,minmax(0,1fr)) 40px}.mobile-nav{left:5px;right:5px}.mobile-nav .nav-item,.mobile-more{font-size:8px}}

.set-field span{display:block}
