:root{--bg:#f6f8fc;--card:#fff;--text:#17233b;--muted:#52627a;--line:#e2e8f0;--blue:#1d4ed8;--light:#eff6ff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body.dark{--bg:#111827;--card:#1b2638;--text:#eef3ff;--muted:#b4c2d8;--line:#36445a;--blue:#2563eb;--light:#223963}button,input,select,textarea{font:inherit}button{min-height:46px;cursor:pointer;border:1px solid var(--line);border-radius:10px;padding:11px 18px;background:var(--card);color:var(--text);font-weight:600}button:hover{border-color:var(--blue)}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #3b82f6;outline-offset:3px}a{color:var(--blue)}.app-header{background:var(--card);border-bottom:1px solid var(--line)}.header-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 24px}.brand{display:flex;align-items:center;gap:9px;text-decoration:none;color:var(--text);font-size:24px;font-weight:750;letter-spacing:-1px}.brand>span{display:grid;place-items:center;background:var(--blue);color:white;width:34px;height:34px;border-radius:10px}nav{display:flex;gap:6px}nav button{border:0;background:transparent;min-width:88px;color:var(--muted)}nav button.active{background:var(--light);color:var(--blue)}body.dark nav button.active{color:#dbeafe}#theme{border:0;border-radius:50%;padding:0;width:42px;min-height:42px;font-size:24px;background:var(--bg)}main{max-width:1180px;margin:auto;padding:0 24px}.heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:38px 0 28px}h1{font-size:clamp(28px,3vw,38px);line-height:1.2;letter-spacing:-1.2px;margin:9px 0 12px}h2{font-size:22px;letter-spacing:-.5px;margin:0 0 12px}h3{font-size:17px;margin:0 0 12px}h4{font-size:16px;margin:0 0 7px}p{color:var(--muted);line-height:1.7;margin:10px 0}.eyebrow{color:var(--blue);font-size:11px;font-weight:750;letter-spacing:1.5px;text-transform:uppercase}.heading p{margin:4px 0}body.dark .eyebrow{color:#a9c9ff}.primary{background:var(--blue);border-color:var(--blue);color:white}.secondary{background:var(--card);color:var(--text)}.ghost{background:transparent;border-color:transparent;color:var(--blue)}body.dark .ghost{color:#b6d0ff}.card{background:var(--card);border:1px solid var(--line);padding:26px;border-radius:16px}.overview-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}.hero{background:var(--blue);border-radius:16px;color:white;padding:30px}.hero p,.hero .eyebrow{color:#dbeafe}.hero h2{font-size:29px;letter-spacing:-.8px;margin:19px 0 12px}.hero button{background:white;border-color:white;color:#1d4ed8;margin-top:15px}.overview-grid .card h2{margin-top:21px}.overview-grid .card button{margin-top:15px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:24px 0;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:22px 0}.stats article{padding:0 25px;border-right:1px solid var(--line)}.stats article:last-child{border:0}.stats span{font-size:10px;font-weight:650;letter-spacing:.7px;color:var(--muted)}.stats h2{margin:10px 0 5px;font-size:25px}.stats small{color:var(--muted);font-size:12px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:30px 0 18px}.section-title h2{margin:0}.section-title span{font-size:12px;color:var(--muted)}footer{padding:40px 0;font-size:12px;text-align:center;color:var(--muted)}.form-row{display:flex;gap:18px;margin:18px 0}.form-row>label{flex:1;min-width:0}label{display:block;font-size:13px;font-weight:600}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--text);padding:12px;margin-top:7px;min-height:46px}textarea{min-height:100px;resize:vertical}fieldset{border:0;padding:0;margin:22px 0}legend{font-size:13px;font-weight:600;margin-bottom:12px}.days,.group-chips{display:flex;gap:8px;flex-wrap:wrap}.days label,.group-chips label{position:relative;cursor:pointer}.days input,.group-chips input{position:absolute;opacity:0;width:1px;min-height:1px}.days span,.group-chips span{display:block;border:1px solid var(--line);border-radius:9px;padding:12px 17px;font-weight:500}.days input:checked+span,.group-chips input:checked+span{background:var(--blue);color:white;border-color:var(--blue)}.days input:focus-visible+span,.group-chips input:focus-visible+span{outline:3px solid #3b82f6;outline-offset:2px}.muscle-day{padding:18px 0;border-top:1px solid var(--line)}.muscle-day legend{padding-top:10px}.session{margin-top:18px}.session summary{cursor:pointer;display:flex;justify-content:space-between;gap:16px;font-weight:650}.session summary small{font-weight:400;color:var(--muted)}.session-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:24px 0 10px}.badge{display:inline-block;background:var(--light);color:var(--blue);padding:8px 13px;border-radius:8px;font-size:12px;font-weight:650}body.dark .badge{color:#dbeafe}.exercise{padding:22px 0;border-top:1px solid var(--line);margin-top:18px}.exercise-head{display:flex;justify-content:space-between;gap:18px}.exercise small{color:var(--muted);font-size:12px}.suggestion{font-size:12px;background:var(--bg);border-radius:8px;padding:12px 15px}.set-row{display:grid;grid-template-columns:25px 75px 65px 65px minmax(90px,1fr) 80px 85px;gap:9px;align-items:center;margin-top:13px}.set-row input{margin:0}.set-row button{padding:10px 6px;font-size:12px}.set-row .check{font-size:11px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.saved-row,.food-row{border-bottom:1px solid var(--line);padding:15px 0;display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap}.saved-row:last-child,.food-row:last-child{border:0}.saved-row small,.food-row small{color:var(--muted)}.food-row>span{font-size:13px}.block{display:block;font-size:11px;color:var(--muted);margin-top:5px}.empty{padding:16px 0;color:var(--muted)}.hint{font-size:12px;color:var(--muted)}#message:not(:empty){padding:14px 18px;background:var(--light);color:var(--text);border-left:3px solid var(--blue);border-radius:8px;margin-top:20px;overflow-wrap:anywhere}.warning{border-left:3px solid #a76915;padding:12px 16px;background:var(--card);color:var(--text);font-size:13px}.checks{display:flex;flex-wrap:wrap;gap:6px 18px}.check{display:flex;align-items:center;gap:8px;font-weight:400;margin:12px 0}.check input,.shopping-row input{width:auto;min-height:20px;margin:0;accent-color:var(--blue)}.history{margin-top:25px;max-width:650px}.ingredient{align-items:end}.ingredient button{margin-bottom:1px}.recipe-entry{padding:16px 0;border-bottom:1px solid var(--line)}.recipe-entry summary{cursor:pointer;font-weight:600}.recipe-entry small{color:var(--muted)}.meal{padding:20px 0;border-bottom:1px solid var(--line)}.meal h3{margin:8px 0}.meal p,.meal li{font-size:13px}.meal ul{color:var(--muted);line-height:1.9}.shopping-row{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-weight:400}.shopping-row strong{margin-left:auto}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 monospace;color:var(--muted);max-height:400px;overflow:auto}.import-note{margin:18px 0}#recipe-list{margin-top:20px}#recipe-form textarea{margin-bottom:15px}#food-form .primary{margin-top:15px}.more-links{display:grid;gap:14px;max-width:650px}.more-links button{text-align:left;padding:20px}.search-row{display:flex;gap:12px;margin:12px 0}.search-row input{margin:0}.search-row button{white-space:nowrap}.recognition-card{margin:18px 0}.recognition-card>label{margin-top:18px}.search-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.external-product{padding:20px 0;border-top:1px solid var(--line)}.external-product a{font-size:12px}.external-product button{display:block;margin-top:12px}.preference-row{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding:16px 0}.preference-row span{font-size:12px;color:var(--muted);flex:1}#food-preferences{margin-top:20px}#custom-groups{margin:22px 0}[hidden]{display:none!important}@media(max-width:1000px){.set-row{grid-template-columns:25px 1fr 1fr 1fr}.set-row .set-note{grid-column:2/5}.set-row .check{grid-column:2/4}.set-row button{grid-column:4}.exercise-head{flex-direction:column}}@media(max-width:700px){.header-inner{padding:14px 18px}.brand{font-size:22px}nav{position:fixed;inset:auto 0 0 0;background:var(--card);border-top:1px solid var(--line);padding:9px 12px calc(9px + env(safe-area-inset-bottom));z-index:20;gap:4px}nav button{flex:1;min-width:0;font-size:13px;padding:10px 5px}main{padding:0 18px 80px}.heading{display:block;margin:27px 0 24px}.heading>.badge{margin-top:12px}.heading>button{margin-top:15px}.overview-grid{grid-template-columns:1fr;gap:16px}.hero{padding:25px}.hero h2{font-size:27px}.card{padding:20px}.stats{padding:18px 0}.stats article{padding:0 11px}.stats h2{font-size:19px}.stats span{font-size:9px;letter-spacing:0}.stats small{font-size:10px}.form-row{flex-wrap:wrap}.form-row>label{flex-basis:130px}.days{gap:5px}.days span{padding:11px}.section-title{flex-wrap:wrap}.section-title span{font-size:11px}.session summary{flex-wrap:wrap}.session summary small{font-size:11px}.search-row{flex-direction:column}.preference-row{gap:10px}.preference-row strong{width:100%}.group-chips span{padding:10px 13px}.food-row{overflow-wrap:anywhere}.shopping-row{flex-wrap:wrap}.ingredient button{margin-top:8px}footer{padding:30px 0}}

/* v0.5: navigation rail, compact planner and readable program */
:root{--bg:#f3f5f9;--text:#14223b;--muted:#617089;--blue:#2057df;--line:#e3e8f1;--light:#edf3ff}
body{font-size:14px}.app-header{position:fixed;inset:0 auto 0 0;width:210px;border-right:1px solid var(--line);border-bottom:0;z-index:20}.header-inner{height:100%;padding:34px 22px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:45px}.brand{font-size:25px}.brand>span{border-radius:12px;height:38px;width:38px}nav{flex-direction:column;gap:10px}nav button{text-align:left;padding:15px 20px;border-radius:12px}nav button.active{background:var(--blue);color:white;box-shadow:0 6px 14px #2057df20}#theme{margin-top:auto}main{margin-left:210px;max-width:1600px;padding:0 44px}.heading{margin:45px 0 30px}h1{font-size:clamp(28px,3vw,42px);font-weight:750;letter-spacing:-1.6px}h2{font-size:22px}.card{border-radius:18px;padding:25px;box-shadow:0 3px 12px #14223b03}.hero{background:linear-gradient(115deg,#1746bd,#2868ec);padding:36px;border-radius:20px}.hero h2{font-size:34px}.hero button{border-radius:11px}.stats{border:0;border-radius:18px;padding:25px 0}.training-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:30px;align-items:start}.planner-panel{position:sticky;top:25px}.planner-panel>.eyebrow{margin:0 0 8px}.planner-panel h2{font-size:21px;margin-bottom:24px}.planner-panel .form-row{flex-direction:column;gap:18px}.planner-panel .form-row>label{flex:auto}.planner-panel .days{gap:5px}.planner-panel .days span{padding:9px 7px;font-size:12px}.planner-panel .primary{width:100%;margin-top:10px}.count-control select{font-size:20px;font-weight:750;background:var(--light);color:var(--blue);border-color:#cdddfc}.planner-options{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.planner-options>summary{font-size:13px;font-weight:650;cursor:pointer}.planner-panel .hint{font-size:11px;line-height:1.6}.history{margin:0 0 16px;max-width:none;align-items:end}.history select{margin-top:8px}.program-column{min-width:0}.program-column>.danger{float:right;margin-top:0;min-height:36px;padding:7px 12px;font-size:12px}.danger{color:#b33546;background:var(--card);border-color:#edcbd1}.program-column #plan>.section-title{margin-top:28px;clear:both;padding-top:12px}#plan>.section-title h2{font-size:28px}.session{padding:23px}.session summary{align-items:center;list-style:none}.session summary:after{content:'＋';color:var(--blue);font-size:18px}.session[open]>summary:after{content:'−'}.session summary>span{font-size:16px}.session summary small{font-size:11px;margin-left:auto}.session-actions{margin:24px 0}.exercise{margin-top:12px;padding:22px 0 12px}.exercise-head h4{display:flex;align-items:center;font-size:17px;gap:12px}.exercise-number{font-size:12px;color:var(--muted);font-weight:500}.exercise-head{gap:12px}.exercise-head>small{max-width:150px;text-align:right}.guide-button{border:0;background:transparent;color:var(--blue);font-size:12px;padding:0;min-height:32px;display:block;font-weight:650}.rir-help{background:var(--light);border:0;color:var(--blue);font-size:12px;min-height:28px;padding:3px 7px;border-radius:6px}.suggestion{background:var(--bg);font-size:11px}.volume-card{margin:20px 0;padding:19px 22px}.volume-card>summary{display:flex;justify-content:space-between;gap:10px;cursor:pointer;font-size:12px}.volume-card>summary span{color:var(--blue);white-space:nowrap}.volume-group{border-top:1px solid var(--line);padding:14px 0}.volume-group summary{display:flex;justify-content:space-between;gap:12px;cursor:pointer;font-size:13px}.volume-group summary strong{font-size:12px;color:var(--blue)}.volume-group .saved-row{font-size:12px}.empty-state{background:var(--card);border:1px dashed #cbd6e8;border-radius:20px;padding:65px 35px;text-align:center;margin-top:60px}.empty-state>span{display:inline-block;color:var(--blue);font-size:42px;margin-bottom:20px}.empty-state h2{font-size:25px}dialog{border:1px solid var(--line);border-radius:22px;padding:30px;width:min(760px,calc(100% - 28px));max-height:90dvh;overflow-y:auto;background:var(--card);color:var(--text);box-shadow:0 30px 100px #10244638}dialog::backdrop{background:#0f1d39a8;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.dialog-top button{border:0;background:var(--bg);border-radius:50%;width:42px;padding:0;min-height:42px}.dialog-top p{margin:0}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:28px}#delete-dialog{max-width:480px}.movement-figure{margin:24px 0;background:#f2f6fd;border-radius:14px;overflow:hidden}.movement-figure img{display:block;width:100%;height:auto}.movement-figure figcaption{color:#617089;padding:12px 16px;font-size:11px}.muscle-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:25px 0}.muscle-grid h3{font-size:13px}.muscle-tag{display:inline-block;padding:7px 10px;border-radius:7px;background:var(--light);color:var(--text);font-size:12px;margin:0 5px 5px 0}.guide-steps{padding-left:25px}.guide-steps li{padding:8px 0 8px 10px;line-height:1.8;color:var(--muted)}.guide-steps li::marker{color:var(--blue);font-weight:750}.rir-example{background:var(--light);border-radius:12px;padding:18px 22px;margin:20px 0}.rir-example p{margin-bottom:0}.rir-scale{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0}.lead{font-size:17px}.more-links{max-width:none;grid-template-columns:repeat(3,1fr)}#deleted-plans{max-width:900px}.set-row{grid-template-columns:22px 1fr 1fr 1fr}.set-row .set-note{grid-column:2/5}.set-row .check{grid-column:2/4}.set-row button{grid-column:4}.search-row input::placeholder{font-size:12px}#diet>.card,#diet>form{margin-bottom:22px}
@media(min-width:1600px){main{margin-left:240px}.app-header{width:240px}.training-layout{grid-template-columns:330px minmax(0,1fr)}}
@media(max-width:1200px){main{padding:0 28px}.app-header{width:175px}.header-inner{padding:30px 16px}.brand{font-size:21px}main{margin-left:175px}.training-layout{grid-template-columns:270px minmax(0,1fr);gap:22px}.planner-panel{padding:20px}.exercise-head{flex-direction:column}.exercise-head>small{text-align:left;max-width:none}.overview-grid{grid-template-columns:1fr 1fr}.more-links{grid-template-columns:1fr}}
@media(max-width:900px){.training-layout{grid-template-columns:1fr}.planner-panel{position:static}.planner-panel .form-row{flex-direction:row;flex-wrap:wrap}.planner-panel .form-row>label{flex:1;min-width:150px}.planner-panel .days span{padding:11px 14px}.planner-panel .primary{width:auto}.planner-options{margin:20px 0}.planner-panel .hint{max-width:600px}.empty-state{margin-top:20px}.overview-grid{grid-template-columns:1fr}.hero h2{font-size:29px}}
@media(max-width:700px){.app-header{position:static;width:auto;border-right:0;border-bottom:1px solid var(--line)}.header-inner{padding:15px 20px;flex-direction:row;gap:15px;align-items:center}.brand{font-size:23px}#theme{margin:0 0 0 auto}nav{flex-direction:row;padding:8px 12px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -6px 30px #14223b08}nav button{text-align:center;padding:12px 5px;font-size:12px}nav button.active{box-shadow:none}main{margin:0;padding:0 18px 85px}.heading{margin:28px 0}.heading p{font-size:13px}h1{font-size:31px;letter-spacing:-1px}.card{padding:20px}.planner-panel .form-row{flex-direction:column}.planner-panel .form-row>label{min-width:0;flex:auto}.planner-panel .days{justify-content:space-between;gap:4px}.planner-panel .days span{padding:10px 8px}.planner-panel .primary{width:100%}.hero{padding:27px}.stats{padding:20px 0}.stats article{padding:0 10px}.volume-group summary{flex-direction:column;gap:4px}.volume-card>summary{flex-direction:column}.session summary{gap:8px}.session summary small{margin-left:0}.session summary:after{margin-left:auto}.session summary>span{font-size:15px}.exercise-head h4{font-size:16px}.muscle-grid{grid-template-columns:1fr}.movement-figure{margin-left:-10px;margin-right:-10px}dialog{padding:22px;max-height:92dvh;border-radius:18px}.history{flex-direction:column;align-items:stretch}.program-column>.danger{margin-bottom:12px}.more-links{grid-template-columns:1fr}.stats h2{font-size:18px}.set-row{gap:6px}.set-row input{padding:10px 8px}.set-row button{padding:8px 4px}.session{padding:18px}}

.planner-panel .days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.planner-panel .days span{text-align:center;padding:10px 0;font-size:11px}.program-reason{font-size:12px;margin:12px 0 20px;color:var(--muted)}.program-reason summary,.load-advice summary{cursor:pointer}.load-advice{font-size:11px;color:var(--muted);margin-top:12px}.load-advice .suggestion{margin-top:8px}.load-advice summary{padding:5px 0}.guide-button{min-height:40px}.rir-help{min-height:32px}

/* v0.6: week-first training workspace; planning is a separate focused dialog. */
body.dark{--bg:#0a1220;--card:#111e30;--text:#eef4ff;--muted:#9aaec8;--line:#24354b;--blue:#5289ff;--light:#182e50}body.dark .primary{background:#2765ed;color:#fff;border-color:#2765ed}body.dark .eyebrow{color:#75a4ff}body.dark .hero{background:linear-gradient(110deg,#133b91,#245ee3)}.app-header{position:static;width:auto;border-right:0;border-bottom:1px solid var(--line);background:var(--bg)}.header-inner{max-width:1380px;height:90px;padding:20px 42px;margin:auto;flex-direction:row;align-items:center;gap:55px}.brand{font-size:23px}.brand>span{background:#2765ed}nav{flex-direction:row;gap:8px;margin-left:auto}nav button{padding:12px 20px;min-width:82px;text-align:center;border-radius:9px}nav button.active{box-shadow:none;background:var(--light);color:var(--blue)}#theme{margin:0;background:var(--card)}main{max-width:1380px;margin:auto;padding:0 42px 30px}.heading{margin:42px 0 32px;align-items:flex-end}.heading h1{font-weight:700;font-size:39px;letter-spacing:-1.6px}.heading p{font-size:13px}.heading>.primary{white-space:nowrap}.training-layout{display:block}.program-column{display:flex;flex-direction:column}.history{max-width:470px;margin-bottom:10px}.program-column>.danger{float:none;align-self:flex-end;min-height:32px;margin-top:-48px;margin-bottom:24px}.program-column #plan>.section-title{margin:16px 0 10px;padding:0}.program-column #plan>.section-title h2{font-size:23px}#plan .program-reason{display:inline-block;margin:0 20px 18px 0;font-size:12px}#plan>.volume-card{padding:0;border:0;box-shadow:none;background:none;margin:5px 0 25px;max-width:100%}.volume-card>summary{justify-content:flex-start;gap:20px}.volume-card>summary span{font-size:11px}.volume-card[open]{padding:18px 22px!important;background:var(--card)!important;border:1px solid var(--line)!important;border-radius:12px}.plan-alerts{display:inline-block;font-size:12px;margin-bottom:18px;color:#dbab68}.plan-alerts>summary{cursor:pointer}.plan-alerts[open]{display:block}.warning{background:var(--card);border-left-color:#b68646}.week-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin:0 0 25px}.week-strip button{display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:13px;text-align:left;min-height:150px}.week-strip button>span{color:var(--muted);font-size:12px;font-weight:500}.week-strip strong{font-size:31px;font-weight:700;line-height:1.3}.week-strip small{font-size:12px;line-height:1.4;margin-top:4px}.week-strip em{font-size:10px;color:var(--muted);font-style:normal}.week-strip button.selected{border-color:#5289ff;background:var(--light);box-shadow:inset 0 3px 0 #5289ff}.week-strip button.selected>span{color:var(--blue)}#plan .session{border:1px solid var(--line);box-shadow:none;padding:25px 30px;margin:0;border-radius:15px}#plan .session>summary{font-size:20px}#plan .session>summary:after{display:none}#plan .session>summary>span{font-size:20px}.session-actions{justify-content:flex-end;margin:18px 0 0}.exercise-head{flex-direction:row;align-items:center;justify-content:space-between}.exercise-head>div{flex:1}.exercise-head>small{max-width:160px;text-align:right}.exercise{margin:0;padding:25px 0}.exercise-head h4{font-size:18px;font-weight:650;gap:16px}.exercise-number{color:var(--blue);font-variant-numeric:tabular-nums}.guide-button{font-size:11px;min-height:32px;margin-left:34px}.prescription{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 0 34px;font-size:12px;color:var(--muted)}.prescription>span{border-right:1px solid var(--line);padding-right:12px}.prescription b{font-size:15px;color:var(--text);font-weight:650}.prescription .rir-help{font-size:11px}.set-adjustment{font-size:11px;color:#dbab68;margin-left:34px}.load-advice{margin-left:34px;max-width:750px}.set-row{grid-template-columns:22px 100px 90px 90px minmax(100px,1fr) 90px 90px;margin-left:34px}.set-row .set-note,.set-row .check,.set-row button{grid-column:auto}.card{box-shadow:none}.empty-state{margin-top:15px;padding:55px 20px;background:var(--card);border-color:var(--line)}.empty-state h2{font-size:26px}#planner-dialog{width:min(740px,calc(100% - 24px));padding:30px}.dialog-close{float:right;border:0;background:var(--bg);padding:0;width:38px;min-height:38px;border-radius:50%;position:relative;z-index:1}#planner-dialog .planner-panel{position:static;border:0;box-shadow:none;padding:0;background:none}#planner-dialog .form-row{flex-direction:row;gap:20px;flex-wrap:wrap}#planner-dialog .form-row>label{flex:1;min-width:180px}#planner-dialog .days{gap:8px}#planner-dialog .days span{font-size:13px;padding:12px 0}#planner-dialog .planner-panel .primary{width:100%}#planner-dialog .count-control select{font-size:16px}.planner-options{margin:20px 0}.count-control select{background:var(--light);border-color:var(--line)}.rir-help{color:var(--blue)}body.dark .ghost{color:#84adff}body.dark .movement-figure{background:#eaf1fb}.danger{background:transparent;color:#e28b98;border-color:#653c4a}.dialog-actions .danger{background:#962f47;color:white;border-color:#962f47}.more-links button{background:var(--card)}.stats{background:var(--card);border:1px solid var(--line)}footer{border-top:1px solid var(--line);margin-top:35px;padding:25px 0}.dialog-top{position:sticky;top:-30px;z-index:3;background:var(--card);padding:8px 0}body:not(.dark) .danger{color:#ad334a;border-color:#e9bfc7}
@media(max-width:1000px){.header-inner{padding:18px 26px;gap:25px}main{padding:0 26px 25px}.set-row{grid-template-columns:22px 1fr 1fr 1fr;margin-left:0}.set-row .set-note{grid-column:2/5}.set-row .check{grid-column:2/4}.set-row button{grid-column:4}.week-strip{grid-template-columns:repeat(auto-fit,minmax(105px,1fr))}.week-strip button{padding:14px 13px}.exercise-head{align-items:flex-start}.heading h1{font-size:34px}.week-strip small{font-size:11px}}
@media(max-width:700px){.header-inner{height:72px;padding:15px 18px;gap:15px}.brand{font-size:22px}.header-inner nav{position:fixed;inset:auto 0 0;margin:0;flex-direction:row;padding:9px 12px calc(9px + env(safe-area-inset-bottom));background:var(--card)}nav button{min-width:0;padding:10px 5px;font-size:12px}#theme{margin-left:auto}main{padding:0 18px 80px}.heading{margin:25px 0 23px;display:block}.heading h1{font-size:30px}.heading>.primary{margin-top:15px;min-height:42px}.history{max-width:100%;margin:0}.program-column>.danger{margin:12px 0 18px;min-height:34px}.program-column #plan>.section-title{margin-top:10px}#plan .session{padding:20px 16px}#plan .session>summary>span{font-size:17px}.session-actions{justify-content:flex-start}.week-strip{display:flex;gap:8px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:6px}.week-strip button{flex:0 0 125px;min-height:137px;scroll-snap-align:start;padding:14px}.week-strip strong{font-size:28px}.week-strip small{font-size:11px}.exercise-head{flex-direction:column;gap:8px}.exercise-head>small{text-align:left;margin-left:30px}.exercise-head h4{font-size:16px;gap:10px}.guide-button{margin-left:30px}.prescription{margin-left:30px;gap:6px;font-size:10px}.prescription>span{padding-right:8px}.prescription b{font-size:13px}.load-advice,.set-adjustment{margin-left:30px}.set-row{margin-top:16px}.volume-card>summary{gap:8px}#planner-dialog{padding:22px}#planner-dialog .form-row{flex-direction:column;gap:15px}#planner-dialog .form-row>label{min-width:0}#planner-dialog .days{gap:4px}#planner-dialog .days span{font-size:11px;padding:11px 0}.dialog-top{top:-22px}.overview-grid .hero h2{font-size:28px}.stats h2{font-size:17px}}

.journal-entry{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:16px 0}.journal-entry h3{margin:14px 0 4px}.journal-entry p{font-size:12px}#workout-editor{width:min(850px,calc(100% - 24px))}.editor-exercise{border-top:1px solid var(--line);margin-top:30px;padding-top:25px}.correction-row{border-bottom:1px solid var(--line);padding:20px 0}.correction-row .form-row{margin:12px 0}.correction-status{padding:0 12px;color:var(--blue)}#workout-note-form button{margin-top:12px}@media(max-width:700px){.journal-entry{align-items:stretch;flex-direction:column}.correction-row .form-row{gap:10px}.correction-row .form-row>label{flex-basis:75px}}

.auth-screen{max-width:1300px;margin:auto;padding:35px 40px 60px}.auth-brand{font-size:26px;font-weight:750;text-decoration:none;color:var(--text);display:inline-flex;align-items:center;gap:14px}.auth-brand span{display:block;font-size:12px;color:var(--muted);font-weight:400}.auth-layout{display:grid;grid-template-columns:1fr 480px;gap:90px;align-items:start;margin-top:65px}.auth-intro{padding-top:35px}.auth-intro h1{font-size:clamp(35px,4.4vw,62px);line-height:1.15;letter-spacing:-2px}.auth-intro>p{max-width:470px;font-size:16px}.auth-intro>.hint{font-size:12px;margin-top:30px}.auth-card{padding:30px}.auth-card form>label{margin-top:18px}.auth-card form>.primary{width:100%;margin-top:25px}.auth-tabs{position:static;display:flex;flex-direction:row;gap:4px;margin:0 0 30px;padding:0;border:0;box-shadow:none;background:none}.auth-tabs button{min-width:0;padding:9px 10px;font-size:12px;flex:1}#auth-status:not(:empty){padding:14px 0;color:#f3bc7a;font-size:13px}#recovery-code{display:block;overflow-wrap:anywhere;padding:22px;background:var(--light);margin:20px 0;border-radius:9px;font-size:17px}.account-actions{display:grid;gap:12px;margin:20px 0}.public-footer{text-align:center;font-size:12px;max-width:1200px;margin:30px auto;padding:20px}#account-dialog .danger{margin-top:20px}#account-dialog details{margin-top:25px}.header-inner{gap:22px}.brand{font-size:21px;white-space:nowrap}@media(max-width:1000px){.auth-layout{gap:35px;grid-template-columns:1fr 440px}.auth-intro h1{font-size:42px}.brand{font-size:18px}.header-inner nav button{min-width:65px;padding:10px 12px}}@media(max-width:760px){.auth-screen{padding:22px 18px 35px}.auth-layout{grid-template-columns:1fr;gap:25px;margin-top:20px}.auth-intro{padding-top:0}.auth-intro h1{font-size:36px}.auth-intro>p{font-size:14px}.auth-intro>.hint{margin-top:15px}.auth-card{padding:23px}.auth-tabs{position:static!important}.auth-brand{font-size:23px;gap:10px}.auth-brand span{font-size:10px}#open-account{font-size:11px;padding:8px 9px;min-height:36px}.header-inner{gap:10px}.header-inner .brand{font-size:17px}.brand>span{width:30px;height:30px}.header-inner #theme{width:34px;min-height:34px}.public-footer{padding-bottom:85px}}
.privacy-page{max-width:1050px;padding-top:35px}.legal-content{padding:35px}.legal-content h2{font-size:21px;margin-top:34px}.legal-content h2:first-child{margin-top:0}.legal-content p{font-size:14px}.legal-content dl{display:grid;grid-template-columns:210px 1fr;gap:13px}.legal-content dt{font-weight:650}.legal-content dd{margin:0;overflow-wrap:anywhere;color:var(--muted)}@media(max-width:700px){.privacy-page{padding-top:25px}.legal-content{padding:22px}.legal-content dl{grid-template-columns:1fr;gap:5px}.legal-content dd{margin-bottom:12px}}

/* Local, ready-made instructional media. No automatic playback or generated animation. */
.guide-media{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin:22px 0;background:var(--card)}
.guide-variant{padding:18px 20px;margin:0;border-bottom:1px solid var(--line)}
.guide-variant span{display:block;color:var(--muted);font-size:11px;letter-spacing:.04em;margin-bottom:5px}
.guide-variant strong{font-size:16px}.guide-frame-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line)}
.guide-frame-grid figure{margin:0;min-width:0;background:#fff;padding:16px 12px 10px}
.guide-frame-grid img{display:block;width:100%;height:245px;object-fit:contain;background:#fff}
.guide-frame-grid figcaption{color:#42546b;text-align:center;font-size:12px;padding-top:10px}
.guide-variant-note{margin:0;padding:16px 20px;color:var(--muted);font-size:13px;line-height:1.65}
.guide-credits,.guide-video{padding:16px 20px;border-top:1px solid var(--line)}
.guide-credits summary,.guide-video summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:12px;font-weight:650;font-size:13px;color:var(--blue)}
.guide-credits summary:before,.guide-video summary:before{content:'＋';font-size:18px}.guide-credits[open] summary:before,.guide-video[open] summary:before{content:'−'}
.guide-credits p,.guide-video-credit,.guide-video-status{font-size:12px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere}
.guide-video video{display:block;width:100%;max-height:440px;background:#101723;border-radius:10px}
.guide-video-variant{font-size:13px}.guide-asset-error{font-size:13px;color:var(--text);padding:12px;background:var(--light);border-radius:8px}
.guide-media-empty{margin:22px 0;padding:20px;border:1px dashed var(--line);border-radius:14px;background:var(--light)}
.guide-media-empty p{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:0}
@media(max-width:500px){.guide-frame-grid figure{padding:12px 8px}.guide-frame-grid img{height:170px}.guide-variant,.guide-variant-note,.guide-credits,.guide-video{padding:14px}.guide-variant strong{font-size:14px}}

@media(max-width:500px){.guide-frame-grid{grid-template-columns:1fr}.guide-frame-grid img{height:235px}.guide-frame-grid figcaption a{font-size:12px}}

.swap-button{margin:4px 0 4px 34px;min-height:44px;padding:8px 12px;border:1px solid var(--line);background:var(--light);color:var(--blue);font-size:12px;border-radius:9px}.swap-button:disabled{opacity:.5;cursor:not-allowed}
#swap-dialog{max-width:620px}#swap-form{display:grid;gap:16px}#swap-form p{margin:0;line-height:1.6}#schedule-form{margin-top:24px}.meal-current{border-left:3px solid var(--blue);padding:12px 16px;background:var(--light);border-radius:8px}.meal-current .eyebrow{color:var(--blue)}
@media(max-width:700px){.swap-button{margin-left:30px}#schedule-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}}

#schedule-form .form-row>label{min-width:0}#schedule-form input{min-width:0;width:100%}@media(max-width:360px){#schedule-form .form-row{grid-template-columns:1fr}}

.source-text{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;max-width:100%}.source-template summary{overflow-wrap:anywhere}.source-template small{font-weight:400;margin-top:.4rem}#source-preview{overflow-wrap:anywhere}

.source-day-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:16px 0}.source-day-strip button{min-width:0;padding:10px 3px;display:flex;flex-direction:column;gap:5px;align-items:center;overflow-wrap:anywhere}.source-day-strip [aria-pressed="true"]{background:var(--primary,#2563eb);color:white}.source-day-strip small{font-size:.7rem}.source-day-strip strong{font-size:.8rem}.source-program-session h3 small{display:block;font-size:.85rem;font-weight:400}.source-log{margin-top:20px}#today-source-program{margin:20px 0}#source-program-form .source-week-preview{max-height:400px;overflow:auto}
.source-day-strip{grid-template-columns:repeat(7,minmax(64px,1fr));overflow-x:auto;padding-bottom:5px}.source-day-strip small,.source-day-strip strong{white-space:nowrap}
