.mobile-menu-toggle{display:none}.training-tools{margin:22px 0}.program-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.recipe-photo{display:block;float:right;width:96px;aspect-ratio:1;border-radius:14px;margin:0 0 14px 16px;background-image:url('recipe-photos.webp');background-size:600% 600%;background-repeat:no-repeat;background-color:#ede8dd;flex-shrink:0}.recipe-result{position:relative;display:block}.recipe-result .pill{max-width:calc(100% - 112px)}.recipe-result .actions{clear:both;padding-top:16px}.main>.recipe-photo{width:140px}.exercise-picture{max-width:420px;margin:14px 0}.exercise-photo{width:100%;aspect-ratio:1;background-image:url('exercise-photos.webp');background-size:400% 200%;background-repeat:no-repeat;background-color:#efe9df;border-radius:16px}.exercise-picture figcaption{font-size:.75rem;color:var(--muted);margin-top:7px}.step-media{display:grid;grid-template-columns:minmax(140px,280px) 1fr;align-items:center;gap:18px}.media-link{display:block;padding:14px 0;font-weight:600}.muscle-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.muscle-option{display:flex;gap:8px;align-items:center;border:1px solid var(--line);padding:13px;border-radius:12px;min-height:48px}.muscle-option:has(input:checked){background:#e7eedc;border-color:#155c4d}.muscle-option input{margin:0;width:20px;height:20px}fieldset{border:1px solid var(--line);border-radius:14px;padding:18px;margin:22px 0;min-width:0}legend{padding:0 8px;font-weight:700}.exercise-choice{padding:14px 0;border-bottom:1px solid var(--line)}.exercise-choice details{margin-left:30px}.exercise-choice input{width:20px;height:20px}.exercise-choice .check{font-weight:400}.nutrition-panel{margin:26px 0}.nutrition-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin:22px 0}.nutrition-metrics>div{padding:16px 10px;border-radius:14px;background:#eef2e7;text-align:center}.nutrition-metrics strong{font-size:1.5rem;white-space:nowrap}.goal-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.goal-card{border:1px solid var(--line);border-radius:14px;padding:18px}.goal-card h3{margin-top:0}.goal-card.chosen{border:2px solid var(--green);background:#f4f7ef}.nutrition-comparison{background:#e8eedc;border-radius:12px;padding:16px}.confirm-dialog{color:#203d36;width:min(92vw,480px);border:1px solid var(--line);border-radius:20px;padding:26px;box-shadow:0 20px 80px #0003}.confirm-dialog::backdrop{background:#162b246b}.confirm-dialog h2{margin-top:0}.confirm-dialog p{overflow-wrap:anywhere}.confirm-dialog .actions button{flex:1}.main,.main>*{min-width:0}.main input,.main select{max-width:100%}
@media(max-width:1000px){.goal-cards{grid-template-columns:1fr}.muscle-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){html{scroll-padding-top:90px}body{overflow-x:clip}.sidebar{position:sticky;top:0;z-index:4;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:10px 16px;background:#fff;border-bottom:1px solid var(--line);height:auto}.sidebar .brand{margin:0}.mobile-menu-toggle{display:block;min-height:44px}.sidebar .nav{display:none;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:48dvh;overflow-y:auto;padding:12px 0}.sidebar.menu-open .nav{display:grid}.sidebar .nav button{min-height:46px;font-size:.95rem;white-space:normal}.sidebar .side-bottom{display:none;grid-column:1/-1;min-width:0}.sidebar.menu-open .side-bottom{display:flex;flex-wrap:wrap}.side-bottom span{max-width:100%;overflow-wrap:anywhere}.main{padding:16px 14px 40px;max-width:100vw}.main .pagehead{margin:24px 0 18px}.pagehead h1{font-size:1.8rem;overflow-wrap:anywhere}.card{padding:20px 16px;border-radius:16px}.card h2,h2{font-size:1.35rem}.topbar{flex-wrap:wrap;gap:8px}.public{margin-top:8px;padding:0 16px}.hero h1{font-size:2rem}.hero p{font-size:1rem}.hero .illustration{padding:18px;gap:12px}.auth-card{padding:22px 16px}.wizard{padding:0 14px;margin-top:20px}button,input,select,textarea{font-size:16px}button,input,select{min-height:46px}input,select{min-width:0}input[type=checkbox]{min-height:22px;width:22px;height:22px}.actions{gap:10px}.actions>button{flex-grow:1;white-space:normal}.formgrid>div{min-width:0}.program-buttons{grid-template-columns:1fr}.nutrition-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.nutrition-metrics strong{font-size:1.15rem}.nutrition-metrics small{font-size:.75rem}.goal-cards{grid-template-columns:1fr}.step-media{grid-template-columns:1fr}.step-media .exercise-picture{max-width:320px;width:100%;margin-inline:auto}.steptext{font-size:1.05rem}.muscle-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.muscle-option{padding:10px;font-size:.95rem}fieldset{padding:12px}.exercise-choice details{margin-left:0}.recipe-photo{width:84px;margin-left:12px}.recipe-result .pill{max-width:calc(100% - 96px)}.recipe-result h3{font-size:1.15rem;line-height:1.3}.main>.recipe-photo{width:100px}.shopping-item strong{white-space:normal;text-align:right}.meal-people{gap:0 10px}.row{overflow-wrap:anywhere}.timer{font-size:3.4rem}.admin-table{font-size:.85rem}.admin-table th,.admin-table td{padding:12px 8px}#message{bottom:max(14px,env(safe-area-inset-bottom));max-width:calc(100vw - 24px);font-size:.9rem}.confirm-dialog{padding:22px 18px}.footnote{padding-bottom:env(safe-area-inset-bottom)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.step-media{grid-template-columns:minmax(200px,420px) minmax(0,1fr);align-items:start}.exercise-instruction{white-space:pre-line}.exercise-instruction h3{margin-bottom:6px}.exercise-choice>.exercise-picture{max-width:280px;margin-left:30px}.exercise-choice details{margin-top:12px}.inline-video{margin:18px 0}.video-stage{aspect-ratio:16/9;width:100%;min-width:0;display:grid;place-items:center;text-align:center;background:#e7eee8;border:1px solid var(--line);border-radius:14px;overflow:hidden}.video-stage>div{padding:18px}.video-stage iframe{display:block;width:100%;height:100%;border:0}.video-privacy,.video-help{font-size:.85rem;color:var(--muted)}.training-video{margin:20px 0}.training-video summary,.illustrated-series summary{cursor:pointer;padding:12px 0;font-weight:600}.training-video .inline-video{max-width:720px}.illustrated-series{border-bottom:1px solid var(--line);padding-bottom:12px}.illustrated-series .exercise-picture{max-width:340px}
@media(max-width:700px){.step-media{grid-template-columns:1fr;gap:4px}.step-media .exercise-picture{max-width:420px}.exercise-choice>.exercise-picture{margin-inline:auto;max-width:320px}.video-stage>div{padding:12px}.video-stage strong{font-size:.95rem}.video-stage p{margin:6px 0}.video-stage button{font-size:.95rem;padding:10px 12px}.exercise-photo{border-radius:12px}}

.training-illustration{max-width:420px;margin:18px auto}.training-illustration .exercise-picture{width:100%}

.meal-energy-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.menu-addition{border-top:1px solid var(--line);margin-top:18px;padding-top:12px}.menu-addition h4{margin:6px 0}.cooking-today{margin-bottom:28px}.today-meal{border-top:1px solid var(--line);padding:16px 0;overflow:auto}.cooking-today details{margin:14px 0}.cooking-today summary{font-weight:600;cursor:pointer;padding:10px 0}.shopping-item span{min-width:0}.shopping-item strong{max-width:45%;text-align:right;white-space:normal}#portion-settings input{width:100%}@media(max-width:700px){.meal-energy-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.shopping-item{align-items:start}.shopping-item strong{font-size:.85rem}.cooking-today .recipe-photo{width:76px}}

.cooking-screen{max-width:900px;margin:auto;padding-bottom:100px}.cook-step{margin:20px 0}.cook-photo{width:100%;max-width:520px;aspect-ratio:312/295;margin:0 auto 22px;border-radius:16px;background-repeat:no-repeat;background-color:#edf0e8}.cook-photo-dish{aspect-ratio:1;background-image:url('recipe-photos.webp');background-size:600% 600%}.cook-instruction{font-size:1.28rem;line-height:1.7;white-space:pre-line}.cook-controls{position:sticky;bottom:0;display:flex;gap:12px;flex-wrap:wrap;padding:16px;background:#f8faf4;border-top:1px solid var(--line);z-index:20}.cook-controls button{min-height:48px;flex:1}.cook-progress{width:100%;height:12px;accent-color:var(--green)}.intake-item{display:flex;align-items:flex-start;gap:14px;padding:18px 0;border-bottom:1px solid var(--line);cursor:pointer}.intake-item input{width:24px;height:24px;margin-top:4px;flex-shrink:0}.intake-item:has(input:checked){color:#155c4d}.shopping-item.is-checked{background:#edf4e9;color:#477154}.shopping-item.is-checked strong,.shopping-item.is-checked>span{text-decoration:line-through}.shopping-item input{width:24px;height:24px;flex-shrink:0}.quick-shopping{min-height:44px;white-space:nowrap}.food-conflict{border:2px solid #b33c30}#manual-kcal-form button,#food-preferences button{margin-top:16px}@media(max-width:700px){.cook-photo{max-width:360px}.cook-instruction{font-size:1.15rem}.cook-controls{position:fixed;bottom:0;left:0;right:0;padding:12px 14px calc(12px + env(safe-area-inset-bottom));gap:8px}.cook-controls .link{flex-basis:100%;min-height:32px;padding:2px}.cooking-screen{padding-bottom:150px}.quick-shopping{position:fixed;right:14px;bottom:18px;z-index:25;background:#155c4d;color:white;border:0;box-shadow:0 4px 18px #0002}.layout:has(.cooking-screen) .quick-shopping{bottom:142px}.main{padding-bottom:100px}#message{bottom:80px}.layout:has(.cooking-screen) #message{bottom:195px}.intake-item{gap:10px}.intake-item small{font-size:.85rem}}

@media(max-width:700px){.layout:has(.cooking-screen) .quick-shopping{display:none}.cook-controls .link{flex-basis:calc(50% - 8px)}}

.recipe-tips{margin:1.2rem 0;padding:1rem 1.1rem;border:1px solid #d5e3d9;border-radius:14px;background:#f0f5ed;overflow-wrap:anywhere}.recipe-tips h3,.recipe-tips h4{margin:0 0 .7rem}.recipe-tips ul{margin:.6rem 0;padding-left:1.15rem}.recipe-tips li+li{margin-top:1rem}.recipe-tips li p{margin:.3rem 0 .65rem}.recipe-tips summary{font-weight:700;cursor:pointer;min-height:28px}.recipe-tips small{display:block}.cooking-screen>.recipe-tips{margin-top:0}
@media(max-width:760px){.main>.recipe-photo{float:none;display:block;margin:0 0 16px}.main>.recipe-photo+.grid{clear:both}}

.flavor-choices{border:1px solid #cedfce;border-radius:14px;padding:14px 16px;margin:18px 0;background:#f5f8f1;min-width:0}.flavor-choices legend{font-weight:700;padding:0 6px}.flavor-choice{display:flex;align-items:flex-start;gap:12px;padding:12px 0;margin:0;border-bottom:1px solid #dce5dd;cursor:pointer}.flavor-choice input{width:24px;height:24px;flex-shrink:0;margin:2px 0 0;accent-color:var(--green)}.flavor-choice span{min-width:0;overflow-wrap:anywhere}.flavor-choice small{display:block;font-weight:400}.flavor-choice:has(input:disabled){opacity:.7}.flavor-choices>small{display:block;margin-top:12px}
:root{--muted:#566c60}.section-nav,.day-tabs,.level-tabs{display:flex;gap:8px;overflow-x:auto;padding:12px 0;margin-bottom:16px}.section-nav button,.day-tabs button,.level-tabs button{flex:0 0 auto;min-height:44px}.section-nav button.active,.day-tabs button.active,.level-tabs button.active{background:var(--green);color:#fff}.more-links{display:grid;gap:12px;margin:20px 0}.draft-banner{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:14px;border:1px solid #af7525;background:#fff5dc;border-radius:12px;margin:14px 0}.draft-banner button{flex-shrink:0}.food-date{max-width:300px;margin:8px 0 20px}.meal-slot-editor>summary{font-size:1.05rem;min-height:44px}.meal-slot-editor{margin:12px 0}.meal-slot-editor>summary+label{margin-top:16px}.program-session{margin:12px 0}.daily-meal .recipe-photo{width:72px}.daily-meal h2{font-size:1.2rem}.daily-meal .actions{clear:both}.compact-exercise .exercise-picture{max-width:300px;margin:8px auto 16px}.compact-exercise h2{font-size:1.2rem}.compact-exercise button{margin-top:12px}.exercise-choice .exercise-picture{max-width:180px}.exercise-choice details{margin-left:0}.section-nav{scrollbar-width:thin}.cook-step h2{margin-top:0}.cook-photo{margin-top:18px}.cooking-screen h1{font-size:1.8rem;margin:10px 0}.cooking-screen .cook-instruction{font-size:1.1rem;line-height:1.55}.quick-shopping{position:static;box-shadow:none}.day-tabs button{padding:10px 12px}.flavor-choices>button{margin-top:14px}.main>.pagehead{margin-top:20px}.sidebar .nav button[aria-current=page]{background:#e9efdf;color:#194f40;font-weight:700}
@media(max-width:760px){.sidebar{display:block;padding:12px 16px}.mobile-menu-toggle{display:none}.sidebar .nav,.sidebar.menu-open .nav{display:grid;position:fixed;bottom:0;left:0;right:0;top:auto;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));margin:0;background:white;border-top:1px solid var(--line);max-height:none;z-index:40}.sidebar .nav button{font-size:.76rem;text-align:center;min-height:50px;padding:8px 2px;border-radius:9px}.sidebar .side-bottom{display:none}.main{padding-bottom:110px}.quick-shopping{position:static;right:auto;bottom:auto;z-index:auto;box-shadow:none;background:#e7eee7;color:#234e41;padding:8px 12px}.topbar{align-items:center;font-size:.76rem}.topbar #save-status{flex-basis:100%}.section-nav{margin-inline:-2px}.section-nav button{font-size:.88rem;padding:9px 13px}.draft-banner{font-size:.85rem;flex-wrap:wrap}.draft-banner button{padding:9px 14px}.day-tabs{gap:5px}.day-tabs button{padding:9px 10px;font-size:.86rem}.level-tabs button{flex:1}.cooking-screen h1{font-size:1.45rem}.cooking-screen>.card,.cooking-screen>.recipe-tips{margin:10px 0;padding:12px 14px}.cook-step{padding:16px}.cook-photo{max-width:300px}.layout:has(.cooking-screen) .sidebar .nav,.layout:has(.timer) .sidebar .nav{display:none}.layout:has(.cooking-screen) .section-nav,.layout:has(.timer) .section-nav{display:none}.cook-controls{z-index:45}.food-date{max-width:none}.compact-exercise .exercise-picture{max-width:290px}}
#save-status:empty{display:none}.week-day{margin:14px 0}.week-day h2{font-size:1.15rem}.week-training{border-bottom:1px solid var(--line);padding:12px 0}.week-training small,.week-food small{display:block}.week-food{padding-top:12px}.today-cards h2{font-size:1.35rem}.today-cards>section .secondary{margin-top:8px}.section-nav button{white-space:nowrap}.more-links button{text-align:left;padding:18px}
@media(max-width:760px){.section-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:visible;gap:7px}.section-nav button{font-size:.84rem;padding:9px 4px}.section-nav[aria-label="Vandaag submenu"]{grid-template-columns:repeat(2,minmax(0,1fr))}.week-switch{display:grid;grid-template-columns:1fr 1fr}.week-switch button:first-child{grid-column:1/-1}.week-switch button{font-size:.85rem}.today-cards{gap:12px}.today-cards .card{padding:18px 16px}}

button:disabled{cursor:not-allowed}.muscle-option:has(input:disabled){opacity:.55}@media(max-width:760px){html{scroll-padding-bottom:90px}}
.today-training-photo{margin:12px 0}.today-training-photo .exercise-picture{max-width:240px;margin:0 auto 6px}.today-training-photo>.muted{display:block;text-align:center;font-size:.85rem}
.training-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px;margin-bottom:20px}.training-mode small{display:block;margin-top:4px}.training-mode .actions{margin:0}.motion-launch{margin:8px 0 16px;min-height:44px}.motion-dialog{box-sizing:border-box;width:min(600px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #d7e3d8;border-radius:20px;padding:24px;background:#fffef9;color:#183d31;box-shadow:0 20px 80px #102d3840}.motion-dialog::backdrop{background:#142f2bd9}.motion-dialog header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.motion-dialog h2{font-size:1.5rem;line-height:1.25;margin:8px 0}.motion-dialog header button{flex-shrink:0;min-width:44px;min-height:44px}.motion-dialog svg{display:block;width:100%;max-height:43dvh;min-height:180px;border-radius:16px;background:#f3f6ed}.motion-dialog .motion-phase{min-height:2.8em;margin:10px 0}.motion-controls{display:flex;gap:10px}.motion-controls button{min-height:48px;flex:1}.motion-instructions{margin:18px 0;padding:14px;background:#f3f6ed;border-radius:12px}.motion-instructions summary{cursor:pointer;font-weight:600;min-height:32px}.motion-instructions p{white-space:pre-line}.motion-dialog small{display:block;font-size:.85rem;line-height:1.5}.motion-dialog button:focus-visible{outline:3px solid #c6a24b;outline-offset:3px}@media(max-width:600px){.training-mode{align-items:stretch;flex-direction:column}.training-mode .actions{display:grid;grid-template-columns:1fr 1fr}.training-mode button{min-height:48px;padding:10px}.motion-dialog{padding:16px}.motion-dialog h2{font-size:1.25rem}.motion-dialog svg{max-height:36dvh}.motion-dialog .motion-phase{min-height:3em}}
.motion-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.motion-head button{flex-shrink:0;min-width:44px;min-height:44px}
