:root{--bg:#101816;--panel:#18221f;--panel2:#1d2925;--line:#2b3732;--text:#eef4ee;--muted:#94a69b;--green:#a6e5bf;--accent:#20b486;--dark:#11271d;--danger:#f4b5a9}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:15px 'DM Sans',sans-serif}body.light{--bg:#f2f5f0;--panel:#fff;--panel2:#e8eee7;--line:#d7e0d6;--text:#172a20;--muted:#5d7063;--green:#20784d;--dark:#dcf1e2}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:1px solid var(--line);border-radius:9px;background:var(--panel2);color:var(--text);padding:12px 17px;min-height:44px}button:hover{filter:brightness(1.12)}a{color:var(--green)}button.primary{background:var(--green);color:var(--bg);border-color:transparent;font-weight:700}button.secondary{background:transparent}button.danger{color:var(--danger)}button:disabled{opacity:.45;cursor:not-allowed}aside{position:fixed;inset:0 auto 0 0;width:236px;border-right:1px solid var(--line);padding:34px 22px;background:var(--bg);display:flex;flex-direction:column}.brand{text-decoration:none;color:var(--text);display:flex;align-items:center;gap:12px;font:800 22px Manrope;letter-spacing:2px}.brand small{display:block;font:600 9px 'DM Sans';letter-spacing:5px;margin-top:3px}.mark{font:bold 36px Manrope;color:var(--green);letter-spacing:-8px;width:40px}.mark span{font-size:26px}.navlabel{font-size:9px;letter-spacing:1.8px;color:var(--muted);margin:52px 12px 17px}nav{display:flex;flex-direction:column;gap:6px}nav a{color:var(--muted);text-decoration:none;padding:13px 15px;border-radius:8px;font-weight:500;display:flex;align-items:center;gap:13px}nav a.active{background:#213a2e;color:#b6eacb}nav a b{width:22px;font-size:20px;font-weight:400}.aside-bottom{margin-top:auto;padding:24px 12px 0;color:var(--muted);font-size:11px}.aside-bottom p{font:500 17px/1.6 Manrope;margin:25px 0}.aside-bottom small{font-size:9px;letter-spacing:1.4px}.status{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:5px}main{margin-left:236px;padding:0 42px;max-width:1700px}header{height:88px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}header>div{display:flex;align-items:center;gap:18px}.icon{padding:5px;border:0;background:none;font-size:23px}.avatar{display:grid;place-items:center;border-radius:50%;height:33px;width:33px;background:#34483c;color:#cae5d0}.intro{display:flex;justify-content:space-between;align-items:end;gap:20px;margin:34px 0 27px}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--green);text-transform:uppercase;font-weight:600}h1,h2,h3{font-family:Manrope,sans-serif}h1{font-size:clamp(28px,3vw,39px);letter-spacing:-1.5px;margin:9px 0 10px;font-weight:650}h2{font-size:20px;letter-spacing:-.5px;margin:0 0 16px}h3{font-size:16px;margin:0 0 9px}p{color:var(--muted);line-height:1.7;margin:8px 0}small,.muted{color:var(--muted)}.date{font-size:12px;text-align:right;white-space:nowrap}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.card{border:1px solid var(--line);background:var(--panel);border-radius:13px;padding:24px;min-width:0}.span2{grid-column:span 2}.span3{grid-column:span 3}.row{display:flex;justify-content:space-between;align-items:center;gap:12px}.stack{display:grid;gap:17px}.pill{display:inline-block;font-size:10px;letter-spacing:.5px;border:1px solid var(--line);border-radius:30px;padding:6px 10px;color:var(--green)}.hero{background:linear-gradient(110deg,#243e2f,#1d3027);position:relative;overflow:hidden;min-height:300px;display:grid;grid-template-columns:1.2fr 1fr;border-color:#3c5442}.hero h2{font-size:31px;line-height:1.25;max-width:330px;margin:19px 0 9px;color:#f1f5ec}.hero p{color:#b4c5b6;max-width:340px;font-size:13px}.hero .primary{margin-top:23px;background:#b4e7bf;color:#14231b}.hero-art{display:flex;align-items:center;justify-content:center;position:relative}.hero-art:before,.hero-art:after{content:'';position:absolute;width:225px;height:225px;border:1px solid #42624b;border-radius:50%}.hero-art:after{width:170px;height:170px}.hero-art svg{z-index:1;width:100%;max-width:250px}.metric{font:600 37px Manrope;letter-spacing:-1.4px;margin:14px 0 3px}.metric small{font:400 14px 'DM Sans';letter-spacing:0}.substats{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:17px;margin-top:18px;font-size:12px}.substats strong{display:block;margin-top:5px;font-size:16px;font-weight:500}.bar{height:5px;border-radius:3px;background:var(--line);overflow:hidden;margin:15px 0}.bar i{height:100%;display:block;background:var(--green)}.section-title{margin:29px 0 17px;display:flex;align-items:center;justify-content:space-between}.section-title h2{margin:0}.week{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.day{padding:15px 5px;text-align:center;background:var(--panel);border:1px solid var(--line);border-radius:10px}.day strong{display:block;font:600 22px Manrope;margin:8px 0}.day small{font-size:10px}.day.selected{border-color:#95cba5;background:#243d2e}.day .dot{height:5px;width:5px;display:block;border-radius:50%;margin:8px auto;background:var(--green)}.actions{display:flex;flex-wrap:wrap;gap:9px}.actions button{font-size:12px}.big-icon{font-size:21px;color:var(--green)}.notice{border-left:2px solid var(--green);padding:11px 16px;background:var(--panel2);font-size:12px;line-height:1.7;color:var(--muted);border-radius:0 6px 6px 0;margin:20px 0}.exercise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.exercise{padding:0;overflow:hidden;cursor:pointer}.demo{background:radial-gradient(ellipse at center,#294437,#15251d);min-height:185px;position:relative;display:grid;place-items:center;overflow:hidden}.demo svg{width:100%;height:190px}.demo .label{position:absolute;bottom:10px;left:14px;font-size:9px;color:#b3cfb9;letter-spacing:1px}.exercise .details{padding:20px}.exercise p{font-size:12px}.exercise .row{margin-top:15px}.links{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:22px}.links button.active{color:var(--green);border-color:var(--green)}.list-row{padding:15px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.list-row:last-child{border-bottom:0}.list-row p{font-size:12px;margin:3px 0}.empty{padding:32px 15px;text-align:center;color:var(--muted);font-size:13px}.chart{width:100%;height:140px;margin-top:13px}.chart text{fill:var(--muted);font-size:10px}.chart line{stroke:var(--line)}.chart polyline{fill:none;stroke:var(--green);stroke-width:2}.chart circle{fill:var(--green)}footer{padding:30px 0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:var(--muted)}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:16px;width:min(620px,94vw);max-height:90dvh;padding:30px}dialog::backdrop{background:#030a07bf;backdrop-filter:blur(5px)}.close{float:right;border:0;background:none;padding:0;font-size:25px;min-width:44px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-size:12px;color:var(--muted)}input,select,textarea{display:block;width:100%;min-height:45px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:var(--text);padding:11px;margin-top:7px}textarea{min-height:70px}input[type=checkbox]{width:20px;display:inline-block;min-height:20px;vertical-align:middle;margin-right:8px}.full{grid-column:1/-1}form button.primary{margin-top:20px;width:100%}.session .demo{min-height:280px;border-radius:10px}.session .demo svg{height:280px}.session-controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.timer{font:500 54px Manrope;letter-spacing:-2px;color:var(--green);text-align:center;margin:20px}.dangerbox{color:var(--danger);background:#542c2530;padding:14px;border-radius:9px;line-height:1.6;font-size:13px}.checkline{display:flex;align-items:center;gap:8px}.checkline input{margin:0}.recipe{background:var(--panel2);padding:18px;border-radius:9px;margin:12px 0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--green);color:var(--bg);padding:14px 24px;border-radius:8px;display:none;z-index:20;box-shadow:0 4px 30px #0004}.pause-motion *{animation-play-state:paused!important}button:focus-visible,a:focus-visible{outline:2px solid var(--green);outline-offset:3px}@media(min-width:1450px){main{padding:0 60px}.hero{min-height:330px}}@media(max-width:1100px){aside{width:195px;padding:30px 14px}main{margin-left:195px;padding:0 25px}.grid{grid-template-columns:1fr 1fr}.span3{grid-column:span 2}.hero{grid-column:span 2}.exercise-grid{grid-template-columns:1fr 1fr}.hero-art svg{max-width:230px}}@media(max-width:700px){aside{inset:auto 0 0;width:auto;height:72px;z-index:10;border-right:0;border-top:1px solid var(--line);padding:5px 4px;display:block}.brand,.navlabel,.aside-bottom{display:none}nav{flex-direction:row;justify-content:space-around;gap:0}nav a{flex-direction:column;gap:4px;padding:7px 4px;font-size:9px;border-radius:7px;min-width:43px}nav a b{font-size:20px;text-align:center}main{margin:0;padding:0 18px 75px}header{height:63px}.intro{margin-top:27px;align-items:start}.intro .date{display:none}h1{font-size:30px}.grid{gap:13px}.card{padding:19px}.hero{grid-template-columns:1.4fr .8fr;min-height:280px}.hero h2{font-size:27px}.hero-art:before{width:150px;height:150px}.hero-art:after{width:110px;height:110px}.hero-art svg{min-width:170px;transform:translateX(10px)}.hero .primary{padding:12px;font-size:12px}.hero p{font-size:12px}.metric{font-size:30px}.grid>.card:not(.hero){grid-column:span 2}.week{gap:5px}.day{padding:12px 2px}.day small{font-size:8px}.day strong{font-size:18px}.exercise-grid{grid-template-columns:1fr}.form-grid{gap:12px}dialog{padding:22px}.section-title h2{font-size:18px}.section-title small{font-size:10px}footer span{display:none}.intro p{font-size:13px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important} .demo svg{--motion:paused}}
:root{--orange:#f2bb64;--red:#f09486}.notice.success{border-color:var(--green);color:var(--green);background:#20b48612}.notice.error{border-color:var(--red);color:var(--red);background:#d95f5312}.notice.warning{border-color:var(--orange);color:var(--orange);background:#d5923212}.alert-text{color:var(--orange)}.diastolic polyline{stroke:var(--orange)}.diastolic circle{fill:var(--orange)}.hero-art .demo{background:none;min-height:0;width:100%;overflow:visible}.hero-art .label{display:none}.hero-art svg{height:230px}.hero-art .demo svg{max-width:100%}ol{padding-left:22px;color:var(--muted);line-height:1.8}ol li{padding:5px 0}body.light{--orange:#935400;--red:#ac3028}.session .span2{min-width:0}.session .grid{grid-template-columns:1.5fr 1fr}.session .span2{grid-column:auto}input[hidden]{display:none} @media(max-width:700px){.session .grid{display:block}.session .grid>div{margin-top:20px}.hero-art svg{height:210px}} 
.nutrition-toolbar{display:flex;align-items:start;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.nutrition-toolbar .links{margin:0}.nutrition-toolbar .links button{font-size:13px}.nutrition-banner{display:flex;justify-content:space-between;align-items:center;gap:28px;background:linear-gradient(110deg,#234536,#1a3028);border:1px solid #365a46;border-radius:14px;padding:28px;margin-bottom:20px}.nutrition-banner h2{color:#edf6ee;font-size:25px;line-height:1.4;max-width:640px;margin:12px 0}.nutrition-banner p{color:#b4cdbd;font-size:13px;max-width:700px}.nutrition-banner button{white-space:nowrap;color:#c1ebcf;border-color:#607c68;background:transparent}.nutrition-date{display:flex;align-items:end;gap:12px;margin:20px 0;flex-wrap:wrap}.nutrition-date input{width:190px}.nutrition-date .pill{margin-left:auto;margin-bottom:8px}.macro-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.macro-tile{padding:20px;background:var(--panel);border:1px solid var(--line);border-radius:12px}.macro-tile .row>span{font-weight:600;font-size:14px}.macro-tile .row>small{font-size:8px;letter-spacing:.7px}.macro-numbers{display:flex;align-items:baseline;gap:8px;margin:18px 0 10px}.macro-numbers strong{font:600 32px Manrope,sans-serif;color:var(--meter);letter-spacing:-1px}.macro-numbers span{font-size:12px;color:var(--muted)}.macro-tile>small{display:block;font-size:10px;line-height:1.5}.nutrition-summary{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:18px 0}.nutrition-summary>small{line-height:1.7;max-width:760px}.nutrition-summary button{font-size:11px;white-space:nowrap}.nutrition-week{display:grid;grid-template-columns:repeat(7,1fr);gap:9px}.nutrition-week button{display:flex;align-items:center;flex-direction:column;gap:8px;padding:15px 5px;background:var(--panel)}.nutrition-week b{font:600 24px Manrope}.nutrition-week span{font-size:10px}.nutrition-week small{font-size:9px}.nutrition-week .selected{border-color:var(--green);background:var(--dark)}.meal-plan-grid,.recipe-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.meal-plan-card{display:flex;flex-direction:column;gap:8px}.meal-plan-card h3,.recipe-card h3{font-size:20px;line-height:1.4}.meal-plan-card p{font-size:12px}.meal-plan-card .actions{margin-top:auto}.meal-plan-card .actions button{font-size:11px;padding:9px 11px}.recipe-time{font-size:10px;color:var(--muted);letter-spacing:1px}.recipe-symbol{font:400 46px Manrope;color:var(--green);display:block;line-height:1.4}.macro-pills{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.macro-pills span{font-size:11px;border:1px solid var(--line);background:var(--panel2);border-radius:5px;padding:7px 9px}.menu-totals{background:var(--dark);border:1px solid var(--line);padding:22px;border-radius:10px;display:grid;gap:12px;margin-top:20px}.menu-totals>span{font-size:14px;color:var(--green)}.menu-totals small{line-height:1.7}.recipe-filters{display:grid;grid-template-columns:2fr 1fr;gap:14px;margin-bottom:22px}.recipe-card{display:flex;flex-direction:column;gap:12px}.recipe-card .recipe-symbol{font-size:42px}.recipe-card button{margin-top:auto}.recipe-card small{font-size:11px;line-height:1.7}.nutrition-sources{margin:28px 0;padding:22px;background:var(--panel);border:1px solid var(--line);border-radius:10px}.nutrition-sources summary{cursor:pointer;color:var(--green)}.nutrition-sources p{font-size:12px}.shopping-list .checkline{font-size:14px;color:var(--text);gap:12px;flex:1}.shopping-list input{flex-shrink:0}.shopping-list .bought span{text-decoration:line-through;color:var(--muted)}.shopping-list .bought strong{color:var(--green)}.shopping-list strong{font-size:13px}.demo-switch{display:flex;gap:6px;align-items:center;justify-content:center;padding:9px;background:var(--panel2);border-top:1px solid var(--line)}.demo-switch button{font-size:10px;min-height:34px;padding:6px 10px}.demo-switch button.active{background:var(--dark);color:var(--green);border-color:var(--green)}.hero-art .demo-switch{display:none}.avatar-demo{background:radial-gradient(ellipse at 50% 65%,#304e3e,#14231d)}.avatar-demo svg{height:230px}.avatar-demo .label{font-size:8px}.exercise .demo-switch{cursor:default}.session .demo-switch{margin-bottom:10px}@media(min-width:1400px){.recipe-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:1100px){.macro-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.nutrition-banner{align-items:start;flex-direction:column;gap:12px}}@media(max-width:700px){.macro-grid{gap:10px}.macro-tile{padding:15px}.macro-tile .row{display:block}.macro-tile .row small{display:block;font-size:7px;margin-top:6px}.macro-numbers strong{font-size:27px}.macro-numbers{gap:5px}.macro-numbers span{font-size:10px}.nutrition-banner{padding:22px}.nutrition-banner h2{font-size:23px}.nutrition-summary{align-items:start;flex-direction:column}.nutrition-date .pill{margin-left:0;width:100%;font-size:9px}.meal-plan-grid,.recipe-catalog{grid-template-columns:1fr}.nutrition-week{gap:4px}.nutrition-week button{padding:12px 2px;gap:6px;min-width:0}.nutrition-week span{font-size:8px}.nutrition-week small{font-size:7px}.nutrition-week b{font-size:20px}.nutrition-toolbar .links{gap:6px}.nutrition-toolbar .links button{padding:9px 11px;font-size:11px}.recipe-filters{grid-template-columns:1fr}.nutrition-week+.row{align-items:start;flex-direction:column}.section-title{gap:15px;flex-wrap:wrap}.section-title>.primary{font-size:11px}.meal-plan-card h3{font-size:19px}}

/* Exercise study panel */
.photo-demo{display:block!important;background:#101817!important;padding:0!important;position:relative;overflow:hidden;min-height:0!important}.photo-stage{position:relative;aspect-ratio:3/2;background:#14231d}.photo-stage img{display:block;width:100%;height:100%;object-fit:contain}.photo-stage .photo-end{position:absolute;inset:0;animation:exercise-frames 6s steps(1,end) infinite}.photo-caption{display:block;padding:12px 14px;font-size:9px;letter-spacing:1.2px;color:#c3ebce;background:#14231d}.at-start .photo-end{opacity:0!important;animation:none!important}.at-end .photo-end{opacity:1!important;animation:none!important}@keyframes exercise-frames{0%,100%{opacity:0}50%{opacity:1}}.visual-controls{display:flex;gap:6px;flex-wrap:wrap;padding:10px;background:var(--panel2)}.visual-controls button{min-height:38px;font-size:11px;padding:7px 10px;flex:1;white-space:nowrap}.visual-controls button:first-child{color:var(--green)}.visual-note{font-size:10px;color:var(--muted);line-height:1.6;padding:10px 13px;border-top:1px solid var(--line)}.avatar-demo{background:radial-gradient(ellipse at 50% 70%,#3b5d50,#111f1b)!important}.avatar-demo svg{height:270px!important;filter:drop-shadow(0 7px 5px #0005)}.hero-art .visual-controls,.hero-art .visual-note{display:none}.session .photo-demo{min-height:0}.session .photo-stage{max-height:440px}.exercise .demo-container{border-radius:10px 10px 0 0;overflow:hidden}@media(prefers-reduced-motion:reduce){.photo-stage .photo-end{animation:none;opacity:0}}
