:root{color-scheme:dark;--bg:#091514;--panel:#102321;--panel-2:#172a28;--line:#2a4540;--ink:#f6fbf6;--muted:#bdd0c8;--lime:#d0fc8e;--lime-ink:#172c19;--mint:#87d2bc;--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}a{color:inherit}a:hover{text-decoration-color:var(--lime)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--lime);outline-offset:4px}h1,h2,h3,p{overflow-wrap:break-word}h1,h2,h3{line-height:1.12;letter-spacing:-.035em}h1{font-size:clamp(3.05rem,6vw,6.25rem);margin:18px 0 24px;font-weight:800}h1 em{font-style:normal;color:var(--lime)}h2{font-size:clamp(2.1rem,3.8vw,3.8rem);margin:12px 0 20px}h3{font-size:1.34rem;margin:8px 0 13px}p{margin:0 0 16px}.accent{color:var(--lime)}.wrap{width:min(1160px,90%);margin-inline:auto}.skip-link{position:absolute;left:16px;top:-100px;z-index:100;background:var(--lime);color:#152719;padding:10px 15px;border-radius:8px}.skip-link:focus{top:8px}.announcement{background:var(--lime);color:#192c1a;font-size:.8rem;font-weight:750;letter-spacing:.025em}.announcement-inner{display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 0;text-align:center}.live-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#2d6736;flex:none}.site-header{border-bottom:1px solid #233a36;background:rgba(9,21,20,.96)}.nav{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:inline-flex;gap:12px;align-items:center;font-weight:850;font-size:.93rem;white-space:nowrap;letter-spacing:.065em;text-decoration:none}.brand strong{color:var(--lime)}.brand-icon{display:grid;place-items:center;width:35px;height:35px;border-radius:10px;background:var(--lime);color:#1a2d1d;font-size:1.2rem;font-weight:950;transform:rotate(-10deg)}.nav-links{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.nav-links a{font-size:.89rem;font-weight:650;text-decoration:none;color:#dae9df}.nav-links a:hover{color:var(--lime)}.nav-cta{padding:10px 16px;border:1px solid #516653;border-radius:40px;text-decoration:none;font-weight:750;font-size:.9rem}.nav-cta:hover{border-color:var(--lime)}.eyebrow,.kicker{font-size:.76rem;font-weight:850;letter-spacing:.15em;color:var(--lime);text-transform:uppercase}.eyebrow-line{display:inline-block;width:20px;height:2px;background:var(--lime);vertical-align:middle;margin-right:6px}.lede{color:var(--muted);font-size:1.18rem;max-width:670px}.hero{padding:90px 0 92px;overflow:hidden;background:radial-gradient(circle at 85% 14%,#20483d 0,transparent 37%),linear-gradient(145deg,#091514 32%,#112b26)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:70px}.hero-copy h1{max-width:720px}.hero-lede{color:#d2e2d9;font-size:1.17rem;line-height:1.7;max-width:590px}.hero-small{font-size:.83rem;color:#b2cabe;margin:5px 0 0}.actions{display:flex;flex-wrap:wrap;gap:13px;margin:30px 0 20px}.button{display:inline-flex;justify-content:center;align-items:center;gap:16px;min-height:47px;padding:12px 19px;border-radius:50px;text-decoration:none;cursor:pointer;font:inherit;font-weight:800;font-size:.94rem;transition:transform .15s ease,border-color .15s ease;white-space:normal}.button:hover{transform:translateY(-2px)}.button.primary{background:var(--lime);color:var(--lime-ink);border:1px solid var(--lime)}.button.secondary{background:#1b3430;border:1px solid #597268;color:#f6fbf6}.button.subtle{background:#18312c;color:#dcefe4;border:1px solid #4d6a5f}.hero-feature{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(150deg,#213d36,#10221e);border:1px solid #44675b;border-radius:28px;padding:30px;box-shadow:0 30px 85px #0005}.feature-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.feature-chip{border:1px solid #799481;color:#d6eddf;border-radius:20px;padding:4px 10px;font-size:.72rem}.hero-feature-title{font-weight:850;line-height:1.13;letter-spacing:-.04em;font-size:clamp(1.8rem,3vw,2.75rem);margin:24px 0}.session{position:relative;display:flex;align-items:center;gap:14px;border-bottom:1px solid #446259;padding:16px 0}.session div{flex:1}.session div strong,.session div span{display:block}.session div span{font-size:.82rem;color:#b4cdc2}.session-number{display:grid;place-items:center;flex:none;background:#334f43;color:var(--lime);width:38px;height:38px;border-radius:12px;font-weight:850}.session-end{color:#b8ccbf;font-size:.72rem;letter-spacing:.12em}.feature-foot{font-size:.75rem;color:#afc8bd;margin:20px 0 0}.value-strip{background:#0f201d;border-block:1px solid #284039}.value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.value-grid>div{display:flex;flex-direction:column;padding:24px 25px 24px 0;position:relative}.value-grid>div+div{border-left:1px solid #2b443b;padding-left:36px}.value-grid strong{font-weight:800}.value-grid span:last-child{font-size:.85rem;color:var(--muted)}.value-symbol{color:var(--lime);font-size:.75rem;font-weight:900;margin-bottom:6px}.section{padding:98px 0}.section-short{padding:22px 0 95px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:32px;margin-bottom:28px}.section-heading h2{max-width:680px;margin-bottom:0}.section-heading>p{max-width:330px;color:var(--muted);margin:0}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.tile{position:relative;overflow:hidden;background:#132621;border:1px solid #304b41;border-radius:var(--radius);padding:28px;min-height:310px}.tile h3{font-size:1.68rem}.tile p:not(.kicker){color:#bdd1c5}.tile .text-link{position:relative;z-index:1}.tile-highlight{background:#d0fc8e;color:#173122;border-color:#d0fc8e}.tile-highlight .kicker,.tile-highlight .text-link{color:#1b4430}.tile-highlight p:not(.kicker){color:#284b36}.tile-icon{font-size:1.4rem;font-weight:900;display:grid;place-items:center;width:48px;height:48px;border:1px solid #4b6359;border-radius:15px;margin-bottom:34px}.tile-highlight .tile-icon{border-color:#8eae70}.tile-decoration{position:absolute;width:210px;height:210px;right:-125px;bottom:-128px;border:42px solid #b5e978;border-radius:50%}.text-link{color:var(--lime);text-decoration:none;font-weight:800}.text-link:hover{text-decoration:underline}.split-section{background:#10231f;border-block:1px solid #1e4034}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split-grid .lede{margin-bottom:27px}.principle-card{background:#172e28;border:1px solid #34584b;border-radius:var(--radius);padding:30px}.principle-row{display:flex;gap:20px;padding:18px 0;border-bottom:1px solid #395447}.principle-row:last-child{border:0}.principle-row>span{font-weight:900;color:var(--lime)}.principle-row strong{font-size:1.1rem}.principle-row p{font-size:.92rem;color:#b9ccbf;margin:5px 0 0}.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.editorial-card{overflow:hidden;border:1px solid #324b43;border-radius:var(--radius);background:#142621}.editorial-card>div{padding:23px}.editorial-card h3 a{text-decoration:none}.editorial-card h3 a:hover{color:var(--lime)}.editorial-card p:not(.kicker){color:var(--muted);font-size:.94rem}.editorial-pattern{display:block;height:152px;background-color:#2d5041;background-size:cover}.pattern-one{background-image:radial-gradient(ellipse at 25% 25%,#d0fc8e 0 6%,transparent 6.5%),repeating-linear-gradient(125deg,transparent 0 23px,#4d7560 24px 26px,transparent 27px 48px),linear-gradient(135deg,#25493f,#142c27)}.pattern-two{background-image:radial-gradient(circle at 76% 40%,#b9ff79 0 23%,transparent 23.5%),linear-gradient(120deg,transparent 39%,#64876d 39% 46%,transparent 46%),linear-gradient(150deg,#132720,#365b45)}.pattern-three{background-image:repeating-radial-gradient(circle at 20% 75%,transparent 0 19px,#7fac90 20px 21px,transparent 22px 38px),linear-gradient(145deg,#315b46,#17302b)}.pattern-1{background-image:radial-gradient(circle at 25% 22%,#cef990 0 8%,transparent 9%),repeating-linear-gradient(120deg,#1d4235 0 19px,#47735a 20px 22px)}.pattern-2{background-image:radial-gradient(circle at 64% 41%,#d0fc8e 0 22%,transparent 22.5%),linear-gradient(125deg,#2d5843,#153128)}.pattern-3{background-image:repeating-radial-gradient(circle at 44% 50%,transparent 0 19px,#79a68a 20px 22px,transparent 23px 39px),linear-gradient(140deg,#1e4136,#315344)}.trainer-band{background:linear-gradient(125deg,#183c2b,#10261f)}.trainer-band-inner{display:flex;justify-content:space-between;align-items:center;gap:35px}.trainer-band-inner>div{max-width:760px}.trainer-band-inner p:not(.eyebrow){color:#c8d9cc}.footer{padding-top:62px;border-top:1px solid #2c473f;background:#07110f}.footer-layout{display:grid;grid-template-columns:1.35fr .9fr 1fr;gap:45px}.footer-brand{margin-bottom:22px}.footer p{color:#a8beb1;font-size:.9rem}.footer h2{font-size:1rem;letter-spacing:0;margin:0 0 15px}.footer-layout>div:nth-child(2) a{display:block;color:#d8e6dc;margin:8px 0;text-decoration:none;font-size:.92rem}.footer-bottom{border-top:1px solid #243b32;margin-top:48px;padding:18px 0 24px;color:#95b1a3;font-size:.78rem}.page-intro{padding-top:72px;padding-bottom:35px}.page-intro h1{max-width:930px;font-size:clamp(3rem,5.5vw,5.3rem)}.notice{background:#1d382f;border-left:4px solid var(--lime);border-radius:0 13px 13px 0;color:#e2f0e4;padding:15px 19px;margin-top:28px}.panel{border:1px solid #365248;border-radius:var(--radius);background:var(--panel);padding:30px}.panel-heading{display:flex;justify-content:space-between;align-items:start;gap:16px;margin-bottom:25px}.panel-heading h2,.preview-panel h2{font-size:1.9rem;margin:8px 0 0}.panel-icon{border:1px solid #48675b;padding:8px 12px;border-radius:12px;color:var(--lime);font-weight:850}.marketplace-layout{display:grid;grid-template-columns:1.25fr .85fr;gap:20px;align-items:start}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.field label{display:block;font-size:.88rem;font-weight:800;margin-bottom:7px}.field small{display:block;font-size:.75rem;color:#b1c7ba;margin-top:7px}.optional{color:#b4c9be;font-size:.74rem;font-weight:500}.field input,.field select{width:100%;min-width:0;border-radius:11px;background:#0b1b19;color:#f5fbf4;border:1px solid #587366;padding:12px 13px;font:inherit}.field input::placeholder{color:#a5bbb0}.form-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:10px;padding-top:4px}.preview-panel>p:not(.eyebrow){color:#bfd0c5}.summary-list{background:#0a1915;padding:20px;border:1px solid #2c5543;border-radius:14px;margin:20px 0}.summary-list dl{display:grid;grid-template-columns:1fr 1.3fr;gap:12px;margin:0}.summary-list dt{color:#a9c4b3}.summary-list dd{margin:0;font-weight:750;text-align:right;overflow-wrap:anywhere}.empty-results{padding:25px 0 0;text-align:center}.empty-symbol{display:grid;place-items:center;margin:auto;width:55px;height:55px;border:1px solid #64836f;border-radius:50%;color:var(--lime);font-size:1.7rem;font-weight:900}.empty-results h3{margin-top:18px}.fine-print{font-size:.79rem;color:#a9bfb4;margin:18px 0}.workout-filters,.journal-filter{margin-bottom:24px}.result-count{font-size:.9rem;color:var(--lime);font-weight:750;margin:16px 0 0}.workout-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.workout-card{background:#142821;border:1px solid #38594b;border-radius:var(--radius);padding:26px}.workout-card[hidden],.journal-entry[hidden],.empty-state[hidden]{display:none!important}.workout-card-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.routine-index{font-size:2.2rem;font-weight:850;letter-spacing:-.06em;color:#b6e8a1}.routine-category{background:#264d3b;border-radius:25px;padding:4px 12px;font-size:.76rem;font-weight:800}.workout-card h3{font-size:1.5rem}.workout-card p{color:#bad0c2}.routine-tags{display:flex;gap:7px;flex-wrap:wrap;margin:20px 0}.routine-tags span{background:#264237;color:#dcebe0;font-size:.75rem;padding:5px 10px;border-radius:30px}.workout-card details{border-top:1px solid #3d5b4a;margin-top:17px;padding-top:14px}.workout-card summary{cursor:pointer;color:var(--lime);font-weight:800}.workout-card summary span{float:right}.routine-detail{padding-top:14px;color:#d4e6d7;font-size:.91rem}.routine-detail li{margin-bottom:12px}.empty-state{border:1px solid #38594b;border-radius:var(--radius);padding:30px;margin:20px 0}.journal-filter .form-grid{grid-template-columns:1.5fr 1fr auto;align-items:end}.journal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.breadcrumb{display:flex;gap:10px;color:#aac1b3;padding-top:40px;font-size:.9rem}.article{max-width:820px}.article-header{padding:35px 0}.article-header h1{font-size:clamp(2.6rem,5vw,4.75rem)}.article-lede{font-size:1.23rem;color:#d3e5d5}.article-meta{font-size:.84rem;color:#afc3b5}.article-content{padding-bottom:100px}.article-content h2{font-size:1.65rem;margin:38px 0 12px}.article-content p,.article-content li{line-height:1.8;color:#cbdcd0}.article-content a:not(.button){color:var(--lime)}.article-note{border:1px solid #43604b;background:#132821;border-radius:14px;padding:18px 23px;margin:0 0 26px}.article-note p{margin:5px 0 0}.article-next{display:flex;flex-direction:column;gap:14px;align-items:start;border-top:1px solid #395345;margin-top:36px;padding-top:26px}.article-next .eyebrow{margin:0}.article-next .text-link{margin-top:8px}@media(max-width:1000px){.nav-cta{display:none}.nav-links{gap:15px}.hero-grid{gap:35px}.hero-feature{padding:23px}.marketplace-layout{grid-template-columns:1fr}.preview-panel{max-width:none}.footer-layout{gap:20px}}@media(max-width:780px){.hero-grid,.split-grid{grid-template-columns:1fr}.hero{padding:65px 0}.hero-feature{max-width:600px}.value-grid{grid-template-columns:1fr}.value-grid>div+div{border-left:0;border-top:1px solid #2b443b;padding-left:0}.value-grid>div{padding:15px 0}.section{padding:70px 0}.feature-grid{grid-template-columns:1fr 1fr}.editorial-grid{grid-template-columns:1fr 1fr}.section-heading{align-items:start;flex-direction:column}.trainer-band-inner{align-items:start;flex-direction:column}.footer-layout{grid-template-columns:1fr 1fr}.footer-layout>div:first-child{grid-column:1/-1}}@media(max-width:560px){.wrap{width:92%}.nav{align-items:flex-start;flex-direction:column;padding:17px 0;gap:14px}.nav-links{gap:8px 18px}.nav-links a{font-size:.81rem}.hero{padding:50px 0 65px}.hero-copy h1{font-size:clamp(2.8rem,12vw,4rem)}.hero-lede{font-size:1.05rem}.hero-feature{padding:20px}.section{padding:56px 0}.feature-grid,.editorial-grid,.workout-grid,.form-grid,.journal-filter .form-grid{grid-template-columns:1fr}.tile{min-height:0}.page-intro{padding-top:48px}.page-intro h1{font-size:clamp(2.7rem,10vw,4.2rem)}.panel{padding:20px}.form-actions{grid-column:1}.footer-layout{grid-template-columns:1fr}.footer-layout>div:first-child{grid-column:auto}.summary-list dl{grid-template-columns:1fr}.summary-list dd{text-align:left}.article-header{padding-top:22px}.article-content{padding-bottom:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}


/* Phase B - free weekly planner and public information pages */
.planner-layout{display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:22px;align-items:start}
.planner-layout .panel{min-width:0}
.planner-layout h2{font-size:clamp(1.7rem,3vw,2.4rem)}
.plan-results{background:linear-gradient(150deg,#1a3530,#102321)}
.plan-explanation{color:var(--muted);margin-bottom:20px}
.plan-sessions{display:grid;gap:10px;margin-bottom:16px}
.planned-session{display:grid;grid-template-columns:100px 1fr;gap:12px;align-items:center;border:1px solid #426154;border-radius:14px;padding:14px;background:#142e29}
.day-label{font-weight:800;font-size:.82rem;color:var(--lime)}
.session-details{display:grid;gap:3px;min-width:0}
.planned-title{font-weight:780;text-underline-offset:4px}
.session-meta{color:#c0d5ca;font-size:.8rem}
.planner-promo{border:1px solid #406354;border-radius:var(--radius);background:linear-gradient(110deg,#17362d,#10241f);padding:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.planner-promo h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:8px 0 10px}
.planner-promo p{max-width:690px}
.planner-promo .button{flex:none}
.guide-callout{border:1px solid #3a574c;border-radius:var(--radius);padding:26px 30px;display:flex;align-items:center;gap:24px;justify-content:space-between;background:#102b25;margin-bottom:26px}
.guide-callout h2{font-size:clamp(1.6rem,2.4vw,2.3rem);margin:4px 0 8px}
.guide-callout p{margin-bottom:0;max-width:680px;color:#d1e2d8}
.info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:34px}
.info-grid .panel h2{font-size:clamp(1.6rem,2.8vw,2.1rem)}
.info-grid .panel p{color:#d0e2d5}
.plan-print{margin:14px 0}
@media(max-width:850px){.planner-layout,.info-grid{grid-template-columns:1fr}.planner-promo,.guide-callout{align-items:flex-start;flex-direction:column}.planner-promo .button{flex:auto}}
@media(max-width:520px){.planned-session{grid-template-columns:1fr;gap:1px}.planner-promo,.guide-callout{padding:22px}.planner-layout .panel{padding:20px}}
@media print{
  :root{color-scheme:light}
  body{color:#111;background:#fff;font-size:12pt}
  .announcement,.site-header,.footer,.page-intro,.planner-layout>div:first-child,.plan-print,.planner-promo,.skip-link{display:none!important}
  .planner-layout{display:block}
  .planner-layout .panel{background:#fff;color:#111;border:0;padding:0}
  .plan-results h2,.plan-explanation,.day-label,.session-meta,.fine-print,.planned-title{color:#111!important}
  .planned-session{border:1px solid #777;background:#fff;break-inside:avoid}
  .planner-layout a{color:#111;text-decoration:underline}
  .planner-layout a:after{content:none!important}
}

/* Phase C: client-only tracker, benefits guidance */
.page-inline-promo{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:28px;border:1px solid #466456;border-radius:var(--radius);background:#152b27;padding:25px}
.page-inline-promo h2{font-size:clamp(1.6rem,3vw,2.5rem);margin:6px 0 10px}
.page-inline-promo h3{font-size:1.55rem;margin:6px 0 10px}
.page-inline-promo p{color:#d4e5d9;max-width:740px}
.page-inline-promo .button{flex:none}
.question-list{display:grid;gap:14px;padding-left:27px;margin:12px 0 36px}
.question-list li{line-height:1.65;padding-left:7px;font-size:1.08rem}
.tracker-panel{max-width:960px;margin:auto}
.tracker-panel h2{font-size:clamp(1.8rem,3.5vw,2.9rem)}
.tracker-days{display:grid;gap:11px;margin:22px 0}
.tracker-day{display:grid;grid-template-columns:minmax(165px,1.3fr) minmax(145px,1fr) minmax(105px,.65fr);gap:14px;align-items:end;padding:15px;border:1px solid #37584d;border-radius:13px;background:#142e29}
.tracker-check{display:flex;align-items:center;gap:12px;min-height:48px;font-weight:800;cursor:pointer}
.tracker-check input{width:22px;height:22px;accent-color:#d0fc8e}
.tracker-day .field label{font-size:.78rem}
.tracker-day select{width:100%;max-width:100%}
.tracker-summary{display:flex;gap:18px;flex-wrap:wrap;margin:20px 0;padding:18px;border:1px solid #547161;background:#19382f;border-radius:15px}
.tracker-summary div{display:grid;gap:3px;min-width:140px}
.tracker-summary strong{font-size:2.4rem;color:var(--lime);line-height:1.1}
.tracker-summary span{font-size:.88rem;color:var(--muted)}
@media(max-width:760px){.page-inline-promo{flex-direction:column;align-items:flex-start}.page-inline-promo .button{flex:auto}}
@media(max-width:560px){.tracker-day{grid-template-columns:1fr 1fr}.tracker-check{grid-column:1/-1}.page-inline-promo{padding:19px}}
@media print{.announcement,.site-header,.footer,.page-inline-promo,.tracker-panel .form-actions,.skip-link{display:none!important}body{color:#111;background:white}.tracker-panel{max-width:none;border:0;color:#111;background:white}.tracker-day{border:1px solid #aaa;background:white;color:#111;break-inside:avoid}.tracker-summary{border:1px solid #aaa;background:white;color:#111}.tracker-summary strong,.tracker-summary span{color:#111}.tracker-check input{accent-color:#111}}


/* Referral/rewards planning preview (no real balance or transactional functionality). */
.rewards-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;align-items:center}
.rewards-total-panel{text-align:center;background:linear-gradient(155deg,#203b32,#11251f)}
.rewards-total{font-size:clamp(4rem,8vw,6.3rem);font-weight:900;line-height:1.08;letter-spacing:-.065em;color:var(--lime);overflow-wrap:anywhere}
.rewards-unit{font-size:.9rem;color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.09em}
.rewards-total-panel .notice{text-align:left;font-size:.87rem}
.rewards-promo-section{padding-block:30px 80px}
.rewards-promo{display:flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid #3d6a50;background:linear-gradient(120deg,#173c2f,#0f201c);padding:38px;border-radius:var(--radius)}
.rewards-promo h2{font-size:clamp(1.8rem,3vw,2.75rem);margin:10px 0}
.rewards-promo p:not(.eyebrow){max-width:680px;color:var(--muted)}
.rewards-promo .button{flex-shrink:0}
@media(max-width:780px){.rewards-grid{grid-template-columns:1fr}.rewards-promo{flex-direction:column;align-items:flex-start;padding:25px}.rewards-promo .button{width:100%}}

/* Private, session-only Journey Journal preview. */
.journey-dashboard{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.journey-stat{background:linear-gradient(148deg,#1b3b31,#102320);border:1px solid #3a6352;border-radius:17px;padding:22px;display:grid;gap:8px}
.journey-stat span{font-weight:700;color:var(--muted);font-size:.85rem}
.journey-stat strong{font-size:clamp(2rem,4vw,3.5rem);color:var(--lime);line-height:1}
.journey-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:start}
.journey-layout .panel{height:100%}
.journey-layout .field{margin:14px 0}
.journey-layout .field label,.journey-import label{display:block;margin-bottom:7px;font-weight:750}
.journey-layout textarea{display:block;width:100%;min-height:110px;resize:vertical;background:#0f1c1c;color:var(--ink);border:1px solid #4a6960;border-radius:12px;padding:12px;font:inherit}
.journey-layout input[type=date]{display:block;width:100%;min-height:45px;background:#0f1c1c;color:var(--ink);border:1px solid #4a6960;border-radius:12px;padding:12px;font:inherit}
.journey-layout select{width:100%}
.journey-badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:24px 0}
.journey-badge{min-height:95px;background:#12221f;border:1px dashed #426153;border-radius:14px;padding:16px;display:grid;align-content:center;gap:6px;color:#b6c7bd;opacity:.7}
.journey-badge.earned{background:#24402c;border:1px solid #93cf80;color:#f6fff1;opacity:1}
.journey-badge strong{font-size:1rem}.journey-badge span{font-size:.85rem}
.journey-timeline{list-style:none;padding:0;display:grid;gap:13px;margin:22px 0}
.journey-event{border-left:4px solid var(--lime);background:#132b25;padding:14px 18px;border-radius:0 12px 12px 0;overflow-wrap:anywhere}
.journey-event-heading{display:flex;justify-content:space-between;gap:16px;align-items:baseline;flex-wrap:wrap}
.journey-event time,.journey-event-details{color:var(--muted)}
.journey-event p{margin:8px 0 0}
.journey-event-note{white-space:pre-wrap}
.journey-toolbar{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}
.journey-toolbar .button{font-size:.88rem}
.journey-import{margin-top:25px;border-top:1px solid #395749;padding-top:20px}
.journey-import input{max-width:100%;color:var(--ink)}
@media(max-width:900px){.journey-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-layout{grid-template-columns:1fr}}
@media(max-width:560px){.journey-stat{padding:15px}.journey-layout .panel{padding:20px}.journey-badge-grid{grid-template-columns:1fr 1fr}.journey-toolbar .button{width:100%}}
@media print{.announcement,.site-header,.footer,.page-intro,.journey-layout,.journey-toolbar,.journey-import,.page-inline-promo,.skip-link{display:none!important}.journey-dashboard,.journey-stat,.journey-timeline,.journey-event{color:#111!important;background:white!important}.journey-stat strong,.journey-event time{color:#111!important}.journey-event{border:1px solid #555!important;break-inside:avoid}.journey-stat{border:1px solid #777}.section{padding:0}.panel{border:0;background:white;color:#111}}

/* Phase E: trainer-fit worksheet. No persistent personal-data capture. */
.trainer-fit-layout{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:23px;align-items:start}
.trainer-fit-layout .panel{min-width:0}.trainer-fit-layout h2{font-size:clamp(1.8rem,3vw,2.6rem)}
.fit-question{display:grid;gap:8px;padding:16px 0;border-bottom:1px solid #345248}
.fit-question label{font-weight:780;line-height:1.45}.fit-question small,.fit-notes small{color:var(--muted)}
.fit-question select{width:100%;max-width:100%;min-height:46px;background:#0f1e1b;border:1px solid #50756a;color:var(--ink);border-radius:12px;padding:10px;font:inherit}
.fit-notes{margin:22px 0}.fit-notes label{display:block;font-weight:740;margin-bottom:7px}
.fit-notes textarea{width:100%;min-height:100px;background:#0f1e1b;border:1px solid #50756a;color:var(--ink);border-radius:12px;padding:12px;font:inherit;resize:vertical}
.fit-progress{display:flex;gap:20px;align-items:center;padding:16px;border:1px solid #406353;border-radius:15px;background:#193a2d;margin:22px 0}
.fit-progress strong{font-size:4rem;color:var(--lime);line-height:1}.fit-progress span{font-weight:700;color:#d7e8df}
.fit-next-actions{display:grid;gap:12px;padding-left:23px;margin:18px 0 25px}.fit-next-actions li{line-height:1.45}
.fit-note-output{white-space:pre-wrap;overflow-wrap:anywhere}.fit-summary .button{margin-bottom:18px}
@media(max-width:820px){.trainer-fit-layout{grid-template-columns:1fr}}
@media print{.announcement,.site-header,.footer,.page-intro,.page-inline-promo,.form-actions,.fit-summary .button,.skip-link{display:none!important}
.trainer-fit-layout{display:grid;grid-template-columns:1fr 1fr;gap:18px}.trainer-fit-layout .panel{background:#fff!important;color:#111!important;border:0!important;padding:0}
.fit-question label,.fit-progress strong,.fit-progress span,.fit-summary h2,.fit-summary p,.fit-next-actions{color:#111!important}
.fit-question select,.fit-notes textarea{color:#111;background:#fff}.fit-progress{background:#fff;color:#111;border:1px solid #444}
.fit-question,.fit-progress{break-inside:avoid}}

/* Phase F: privacy-safe, public trainer catalog - no customer records */
.trainer-public-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:23px}
.trainer-public-card h3{margin:6px 0 10px;color:var(--lime)}
.trainer-public-meta{color:var(--muted);font-size:.94rem}
@media(max-width:760px){.trainer-public-grid{grid-template-columns:1fr}}

/* Phase G - private, browser-only trainer-readiness planning */
.readiness-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:22px;align-items:start}
.readiness-layout .panel{min-width:0}
.readiness-fieldset{border:1px solid #476458;border-radius:17px;padding:20px;margin:20px 0}
.readiness-fieldset legend{font-weight:780;padding:0 8px}
.readiness-check{display:flex;gap:12px;align-items:flex-start;padding:10px 0;line-height:1.45;border-bottom:1px solid #2b433a;cursor:pointer}
.readiness-check:last-child{border:0}
.readiness-check input{flex:none;width:19px;height:19px;accent-color:#d0fc8e;margin-top:3px}
.readiness-score{background:#17392c;border:1px solid #4d765c;border-radius:14px;color:var(--lime);padding:14px 16px;font-weight:800}
#readiness-details ul{padding-left:24px}
#readiness-details li{margin-bottom:10px}
@media(max-width:830px){.readiness-layout{grid-template-columns:1fr}}
@media print{.announcement,.site-header,.footer,.page-intro,.readiness-layout>div,.page-inline-promo,.skip-link,#readiness-print{display:none!important}.readiness-layout{display:block}.readiness-layout>.panel{background:#fff!important;color:#111!important;border:0!important}.readiness-score{background:#fff!important;color:#111!important;border:1px solid #777!important}}

/* Phase H - temporary, private trainer public-card preview */
.studio-layout{display:grid;grid-template-columns:minmax(0,1.06fr) minmax(0,.94fr);gap:22px;align-items:start}
.studio-layout .panel{min-width:0}.studio-layout .field{margin:0 0 20px}.studio-layout .field label{font-weight:800;display:block;margin-bottom:6px}
.studio-layout .field input,.studio-layout .field select{display:block;width:100%;background:#101e1c;border:1px solid #4b7164;color:var(--ink);padding:12px;border-radius:12px;font:inherit;min-height:47px}
.studio-layout .field small{display:block;margin-top:6px;color:var(--muted)}.studio-layout .studio-card{border:1px solid #66836b;border-radius:19px;background:#172e27;padding:24px;margin:20px 0}
.studio-tag{font-size:.7rem;color:var(--lime);letter-spacing:.08em;font-weight:900}.studio-card h3{font-size:1.75rem;overflow-wrap:anywhere}
.studio-card p{overflow-wrap:anywhere}.studio-error:not(:empty){border-left:3px solid #f1cc79;padding:9px;color:#ffe2a3}
@media(max-width:830px){.studio-layout{grid-template-columns:1fr}}
@media print{.announcement,.site-header,.footer,.page-intro,.studio-layout>div,.page-inline-promo,.skip-link,#studio-print{display:none!important}.studio-layout{display:block}.studio-layout>.panel{background:white!important;border:0;color:black!important}.studio-card{background:white!important;color:black!important;border:1px solid #333!important}.studio-card *{color:black!important}}

/* Phase I: private session service-menu planning preview */
.service-menu-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:24px;align-items:start}
.service-menu-layout .panel{min-width:0}.service-menu-layout .field{margin:12px 0}.service-menu-layout label{display:block;font-weight:760;margin-bottom:7px}
.service-menu-layout .field input,.service-menu-layout .field select{width:100%;border:1px solid #53766a;color:var(--ink);background:#112321;border-radius:12px;padding:12px;min-height:45px;font:inherit}
.service-menu-layout .field small{display:block;color:var(--muted);margin-top:6px}
.service-offer-fieldset{padding:20px;border:1px solid #345b4b;border-radius:16px;margin:22px 0 18px;min-width:0}.service-offer-fieldset legend{color:var(--lime);font-weight:850;padding:0 8px}
.service-split{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-preview-list{display:grid;gap:12px;margin-top:24px}
.service-preview-card{background:#16352a;border:1px solid #47725f;border-radius:16px;padding:20px;overflow-wrap:anywhere}.service-preview-card h3{font-size:1.2rem;margin:0 0 10px}
.service-preview-meta{color:var(--muted)}.service-preview-price{color:var(--lime);font-size:1.4rem;font-weight:850;margin:10px 0}
.service-menu-count{color:var(--muted);font-weight:750}.service-menu-preview .notice{margin-top:24px}.service-menu-preview .notice a{color:var(--lime)}
@media(max-width:850px){.service-menu-layout{grid-template-columns:1fr}}@media(max-width:480px){.service-split{grid-template-columns:1fr}.service-offer-fieldset{padding:14px}}
@media print{.announcement,.site-header,.footer,.page-intro,.service-menu-layout>div,.page-inline-promo,.skip-link,#menu-print{display:none!important}
.service-menu-layout{display:block}.service-menu-layout .panel{border:0;background:white!important;color:black!important;padding:0}.service-preview-card{background:white!important;color:black!important;border:1px solid #333!important;break-inside:avoid}.service-preview-card *{color:black!important}}

/* Phase K: private, accessible exercise technique explorer */
.movement-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.movement-card{padding:23px;border:1px solid #3f6955;border-radius:18px;background:#142b25;min-width:0;display:flex;flex-direction:column;align-items:stretch}
.movement-card[hidden]{display:none!important}
.movement-card h3{font-size:1.35rem;color:var(--lime);margin:10px 0 6px}
.movement-card>p{color:var(--muted);line-height:1.5}
.movement-meta{display:flex;justify-content:space-between;align-items:center;gap:10px}
.movement-meta .routine-index{opacity:.8}
.movement-card details{margin-top:14px;border-top:1px solid #3a5b4e;padding:14px 0;flex:1}
.movement-card details summary{cursor:pointer;font-weight:800;color:#dcf7d0}
.movement-card details li{margin:8px 0;color:#d8e4da}
.movement-card details p{font-size:.91rem}
.movement-card .move-add{margin-top:auto;width:100%}
.movement-selected-list{display:grid;gap:10px;margin:20px 0;padding-left:25px}
.movement-selected-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #3b5b4e;padding:10px}
.movement-selected-list li .button{min-width:86px}
#movement-selection-empty{color:var(--muted)}
#movement-selection-count{font-weight:800;color:var(--lime)}
@media(max-width:1000px){.movement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.movement-grid{grid-template-columns:1fr}.movement-card{padding:19px}.movement-selected-list li{align-items:flex-start;flex-wrap:wrap}}
@media print{.announcement,.site-header,.footer,.page-intro,.movement-grid,#movement-filters,.page-inline-promo,.form-actions,.skip-link,.notice{display:none!important}body,.panel{background:white!important;color:#111!important}.panel{border:0!important}#movement-session{display:block!important}.movement-selected-list li{color:#111!important;border-bottom:1px solid #888}#movement-selection-count{color:#111!important}}

/* Phase M - free rotating coach and session-only progress records */
.coach-intro .lede{max-width:780px}
.coach-highlights{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0 27px}
.coach-highlights span{color:#d7fbb8;border:1px solid #456a52;border-radius:100px;padding:8px 12px;font-size:.87rem;font-weight:760;background:#18352a}
.coach-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:22px;align-items:stretch}
.coach-layout .panel{min-width:0}
.coach-layout .field{margin:12px 0 18px}.coach-layout label{display:block;margin-bottom:7px;font-weight:750}
.coach-layout input[type=date],.coach-layout select{background:#10211d;border:1px solid #537565;border-radius:12px;padding:13px;color:var(--ink);font:inherit;width:100%;max-width:100%;min-height:47px}
.coach-layout small{color:var(--muted);display:block;margin-top:7px}
.coach-actions{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0}.coach-actions .button{min-height:47px}
.coach-how{list-style:none;counter-reset:coach;margin:20px 0;padding:0;display:grid;gap:17px}
.coach-how li{counter-increment:coach;padding:14px 0 14px 57px;position:relative;border-bottom:1px solid #365749}
.coach-how li:before{content:counter(coach);position:absolute;left:0;top:9px;border:1px solid #5c8b63;color:var(--lime);border-radius:12px;font-size:1.2rem;font-weight:900;width:41px;height:41px;display:grid;place-items:center}
.coach-how strong{display:block;color:#e5ffd2;margin-bottom:5px}.coach-how span{color:var(--muted);font-size:.94rem;line-height:1.5}
.coach-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px solid #4b795b;background:#173727;border-radius:18px;padding:18px 22px;margin-bottom:21px}
.coach-banner span:first-child{color:var(--lime);font-weight:850;text-transform:capitalize}.coach-banner strong{font-size:1.16rem}
.coach-exercise-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.coach-exercise-card{border:1px solid #476957;background:#132721;padding:24px;border-radius:19px;min-width:0;display:flex;flex-direction:column;gap:9px}
.coach-exercise-header{display:flex;align-items:center;justify-content:space-between;color:var(--muted)}
.coach-exercise-index{font-size:1.6rem;font-weight:850;color:var(--lime)}.coach-exercise-type{border:1px solid #3b6c50;border-radius:20px;font-size:.75rem;padding:5px 9px;text-transform:uppercase;letter-spacing:.07em}
.coach-exercise-card h3{font-size:1.5rem;line-height:1.2;color:#effad8;margin:4px 0}
.coach-exercise-card p{margin:0;line-height:1.5}.coach-cue{color:#d3e6d8}.coach-alternative{color:var(--muted);font-size:.93rem}
.coach-exercise-card .coach-target{margin:11px 0 5px;color:var(--lime);font-weight:800}
.coach-record-row{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:auto;padding-top:10px}.coach-record-field{flex:1;min-width:120px}
.coach-record-field label{display:block;font-size:.84rem;font-weight:750;margin-bottom:5px}
.coach-record-field input{background:#10201c;border:1px solid #6a9475;border-radius:10px;color:var(--ink);padding:12px;width:100%;min-height:45px;font:inherit}
.coach-record-button{font-size:.88rem;padding:10px 14px;min-height:45px}.coach-logged{color:#bce2b2;font-size:.88rem;font-weight:800}
.coach-status{border-left:3px solid #b6f58b;background:#172b22;padding:14px;margin:22px 0;overflow-wrap:anywhere}
.coach-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:19px 0}
.coach-stat{background:#18362b;border:1px solid #476c50;border-radius:16px;padding:18px;display:grid;gap:8px;min-width:0}
.coach-stat span{color:#d1e5d8;font-size:.85rem}.coach-stat strong{color:var(--lime);font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.15;overflow-wrap:anywhere}
.coach-compare-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin:18px 0}.coach-compare-grid .panel{min-width:0}
.coach-compare-line{padding:14px 0;border-bottom:1px solid #3b5848;display:grid;gap:5px}.coach-compare-line strong{color:#e6f6df}.coach-compare-line span{color:#c5dece;line-height:1.5;font-size:.93rem}.coach-compare-hint{color:var(--lime);margin-top:18px}
.coach-save-toggle{display:flex;align-items:flex-start;gap:13px;font-weight:750;border:1px solid #446b53;border-radius:13px;padding:16px;margin:17px 0;cursor:pointer}.coach-save-toggle input{accent-color:#cffc94;width:21px;height:21px;flex:none}
.coach-file-label{display:inline-flex;align-items:center;cursor:pointer}.coach-history{border-top:1px solid #3c5e4b;margin-top:24px;padding-top:15px}
#coach-history-list{display:grid;gap:9px;margin:12px 0;padding:0;list-style:none}.coach-history-entry{display:grid;grid-template-columns:115px 1fr auto;gap:13px;background:#17362a;border:1px solid #45654f;border-radius:11px;padding:12px;align-items:center}
.coach-history-entry time{font-weight:750;color:var(--lime)}.coach-history-entry span{overflow-wrap:anywhere}.coach-history-entry strong{font-size:.84rem}
@media(max-width:850px){.coach-layout,.coach-compare-grid{grid-template-columns:1fr}.coach-exercise-list{grid-template-columns:1fr}}
@media(max-width:600px){.coach-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.coach-exercise-card{padding:19px}.coach-history-entry{grid-template-columns:1fr;gap:3px}.coach-actions .button{width:100%;justify-content:center}}
@media print{.announcement,.site-header,.footer,.coach-intro,.coach-layout,.coach-save-toggle,.coach-actions,.page-inline-promo,.skip-link,.coach-record-row,.coach-status{display:none!important}body,.panel,.coach-exercise-card,.coach-stat,.coach-banner{background:white!important;color:#111!important;border-color:#666!important}.coach-exercise-card *,.coach-stat *,.coach-banner *{color:#111!important}.coach-exercise-list{grid-template-columns:1fr 1fr}.coach-exercise-card,.coach-history-entry{break-inside:avoid}}

/* Phase N: accessible, client-only progress bars; no external chart library */
.insights-selects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:16px 0}.insights-selects label{display:block;margin-bottom:6px;font-weight:800}
.insights-selects select{color:var(--ink);background:#142c24;border:1px solid #729275;border-radius:11px;padding:13px;width:100%;min-height:48px;font:inherit}
.insights-controls .panel{max-width:960px}.insights-bars{list-style:none;margin:25px 0 0;padding:0;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:10px;min-height:240px;align-items:end}
.insights-column{min-width:0;display:grid;grid-template-rows:auto minmax(100px,160px) auto;gap:6px;text-align:center;color:var(--ink)}
.insights-bar-value{font-weight:850;font-size:.92rem;overflow-wrap:anywhere}.insights-track{border:1px solid #476b57;background:#183529;border-radius:12px 12px 5px 5px;position:relative;overflow:hidden;display:flex;align-items:flex-end}
.insights-fill{width:100%;background:linear-gradient(0deg,#94d667,#d5ffa2);border-radius:8px 8px 0 0;min-height:0}
.insights-bar-label{font-size:.78rem;color:#d1e4d6;overflow-wrap:anywhere}.insights-achievements{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;list-style:none;padding:0}
.insights-badge{border:1px dashed #597063;background:#152a24;border-radius:15px;padding:19px;display:grid;gap:9px;opacity:.76;min-width:0}.insights-badge.earned{border:1px solid #a9eb72;background:#21442d;opacity:1}
.insights-badge strong{color:#e9ffd8}.insights-badge span{font-size:.89rem;color:#c5d9ce}
@media(max-width:750px){.insights-achievements{grid-template-columns:repeat(2,minmax(0,1fr))}.insights-bars{gap:5px}.insights-bar-label{font-size:.66rem}}
@media(max-width:500px){.insights-selects{grid-template-columns:1fr}.insights-achievements{grid-template-columns:1fr}.insights-column{grid-template-rows:auto minmax(85px,140px) auto}}
@media print{.announcement,.site-header,.footer,.insights-controls,.page-inline-promo,.skip-link{display:none!important}.insights-badge,.insights-track{print-color-adjust:exact}}


/* Phase P: complete, printable weekly sessions - no network required. */
.plan-print-brand{display:none}
.planned-session{align-items:start}
.plan-howto-label{font-weight:800;color:#d1f99e;font-size:.8rem;letter-spacing:.035em;margin:10px 0 4px}
.plan-instructions{margin:4px 0 8px;padding-left:21px;display:grid;gap:6px}
.plan-instructions li{line-height:1.48;color:#e0ebe2}
.plan-next{font-size:.85rem;color:#d0ddd2;margin:5px 0 8px}
.plan-workout-log{margin-top:10px;padding:9px 0 0;border-top:1px dashed #577768;display:grid;gap:7px}
.plan-workout-log span{font-size:.76rem;color:#bfd5c5}
@media print {
 @page{margin:12mm}
 body{font-size:10pt!important;color:#111!important;background:#fff!important}
 .plan-print-brand{display:block;color:#111!important;font-weight:800;font-size:12pt;letter-spacing:.05em;margin:0 0 5mm}
 .section-short{padding:0!important;margin:0!important}
 .planner-layout{display:block!important;margin:0!important;width:100%!important}
 .planner-layout .panel{padding:0!important;margin:0!important;box-shadow:none!important}
 .plan-results{background:#fff!important;border:0!important}
 .plan-sessions{display:block!important;margin:5mm 0!important}
 .planned-session{display:block!important;border:1px solid #888!important;background:#fff!important;color:#111!important;break-inside:avoid;page-break-inside:avoid;padding:3mm 4mm!important;margin:0 0 4mm!important}
 .day-label{display:block!important;color:#111!important;font-size:11pt!important;margin:0 0 1mm}
 .session-details{display:block!important}
 .planned-title,.plan-howto-label,.plan-next,.plan-instructions li,.plan-workout-log span{color:#111!important}
 .planned-title{font-size:11pt!important;text-decoration:none!important}
 .session-meta{display:block!important;font-size:9pt!important}
 .plan-howto-label{font-size:9pt!important;margin:2mm 0 0!important}
 .plan-instructions{display:block!important;margin:1mm 0!important;padding-left:5mm!important}
 .plan-instructions li{font-size:9pt!important;line-height:1.28!important;margin-bottom:1.5mm!important}
 .plan-next{font-size:8.5pt!important;margin:1.5mm 0 0!important}
 .plan-workout-log{padding-top:2mm!important;margin-top:2mm!important;border-color:#777!important;gap:1.8mm!important}
 .plan-workout-log span{font-size:8pt!important}
 .plan-explanation,.fine-print{font-size:9pt!important;color:#111!important}
 .page-inline-promo,#main>.section:not(.section-short){display:none!important}
}

/* Phase Q: accessible movement editing and independent print instructions. */
.plan-stage{padding:8px 12px;background:#203c32;border-radius:10px;font-size:.88rem;color:#e3f4e5;margin:10px 0}
.plan-exercise-list{padding-left:24px;display:grid;gap:12px;margin:12px 0}
.plan-exercise{padding:12px 14px;background:#132b24;border:1px solid #426657;border-radius:12px}
.plan-exercise strong{display:block;margin-bottom:5px;color:var(--lime)}
.plan-exercise-cue,.plan-exercise-target,.plan-exercise-actual{font-size:.87rem;line-height:1.5;margin:4px 0;color:#e0ebdf}
.plan-exercise-target{font-weight:750}
.plan-exercise-actual{font-size:.78rem;color:#bbd2c3}
.plan-edit-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;border-top:1px solid #3b584c;padding-top:10px}
.plan-edit-controls label{font-size:.78rem;font-weight:750;display:grid;gap:5px;color:#dcebdd}
.plan-edit-controls select,.plan-edit-controls input{width:100%;min-width:0;background:#0d201b;border:1px solid #6b9983;border-radius:8px;color:#fff;padding:9px;font:inherit;font-size:.86rem}
.plan-edit-message{grid-column:1/-1;color:#d0fc8e;font-size:.78rem}
.plan-reference{margin-top:12px;border:1px solid #426657;border-radius:10px;padding:10px}
.plan-reference summary{cursor:pointer;font-weight:720}
@media(max-width:650px){.plan-edit-controls{grid-template-columns:1fr}}
@media print {
 .plan-edit-controls,.plan-reference,.plan-rewards-promo{display:none!important}
 .plan-exercise-list{display:block!important;padding-left:6mm!important;margin:1mm 0!important}
 .plan-exercise{display:list-item!important;background:white!important;border:0!important;border-bottom:1px dotted #777!important;border-radius:0!important;padding:1.5mm 0!important;margin:0!important;break-inside:avoid;page-break-inside:avoid}
 .plan-exercise strong,.plan-exercise-cue,.plan-exercise-target,.plan-exercise-actual{color:#111!important;font-size:9pt!important;line-height:1.25!important;margin:1mm 0!important}
 .plan-stage{color:#111!important;background:white!important;border:0!important;padding:0!important;font-size:9pt!important;margin:1mm 0!important}
 .planned-session{break-inside:avoid;page-break-inside:avoid}
}
/* Phase R - flexible recipe and meal inspiration page */
.meal-allergens{grid-column:1/-1;border:1px solid rgba(194,214,201,.28);border-radius:16px;padding:16px 18px;margin:0}
.meal-allergens legend{padding:0 8px;font-weight:700}
.meal-check-grid{display:flex;gap:12px 24px;flex-wrap:wrap;margin-top:12px}
.meal-check-grid label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}
.meal-check-grid input{accent-color:#cedfa3;min-width:18px;min-height:18px}
.meal-week{display:grid;gap:22px;margin-top:18px;grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr))}
.meal-day{background:rgba(138,186,181,.065);border:1px solid rgba(183,212,202,.24);border-radius:18px;padding:20px;break-inside:avoid-page}
.meal-day h3{font-size:1.2rem;margin:0 0 14px}
.meal-block{border-top:1px solid rgba(185,206,201,.2);padding:16px 0}
.meal-block h4{margin:0 0 6px;font-size:1.05rem}
.meal-section-label{font-weight:750;margin:10px 0 6px}
.meal-ingredients,.meal-steps{padding-left:23px;margin:6px 0 10px;line-height:1.6}
.meal-steps li{margin-bottom:5px}
.meal-record{font-size:.82rem;overflow-wrap:anywhere}
.meal-swap{margin:12px 0}
.meal-swap select{max-width:100%}
.meal-groceries{margin-top:32px;padding:20px;border:1px solid rgba(183,212,202,.3);border-radius:18px}
.meal-shopping-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:7px 16px;padding:0;list-style:none}
.meal-shopping-list li{padding:5px 0;break-inside:avoid}
.meal-print-actions{margin-top:20px}
@media print{
  body{background:white!important;color:#111!important;font-size:10pt}
  .announcement,.site-header,.footer,.skip-link,.meal-options,.meal-swap,.meal-print-actions,.nutrition-promo,.page-inline-promo{display:none!important}
  .page-intro,.panel,.section-short{padding:0!important;margin:0!important;max-width:none!important;border:0!important;box-shadow:none!important;background:white!important;color:#111!important}
  .page-intro h1{font-size:22pt!important;margin:0 0 5px!important}
  .page-intro .notice{font-size:8pt!important;margin:8px 0!important;padding:8px!important;color:#222!important;background:#fafafa!important;border:1px solid #ddd!important}
  #meal-status{display:none!important}
  .meal-week{grid-template-columns:1fr!important;gap:10px!important}
  .meal-day{background:white!important;color:#111!important;border:1px solid #bbb!important;break-inside:avoid-page!important;padding:10px!important}
  .meal-block{padding:7px 0!important;color:#111!important}
  .meal-block h4,.meal-day h3,.meal-groceries h3{color:#111!important}
  .meal-steps,.meal-ingredients{line-height:1.35!important;margin:4px 0 5px!important}
  .meal-record{font-size:8pt!important}
  .meal-groceries{background:white!important;color:#111!important;break-before:page;padding:0!important;border:0!important}
  .meal-shopping-list{grid-template-columns:repeat(2,1fr)!important;color:#111!important}
  a:after{content:none!important}
}

/* Print meal recipes without the on-screen setup form or a blank cover sheet. */
.meal-print-brand{display:none}
@media print{
 .meal-config-section,.meal-mini-idea{display:none!important}
 .meal-print-brand{display:block!important;font-weight:800;font-size:12pt;color:#111!important;margin-bottom:8px!important}
 .meal-results{display:block!important}
 .meal-results h2{font-size:18pt!important;margin:0 0 5px!important}
 .meal-results .eyebrow{margin:0 0 3px!important}
 .meal-results,.meal-day{font-size:8.5pt!important;line-height:1.2!important}
 .meal-day{padding:8px!important;break-inside:avoid!important}
 .meal-day h3{font-size:12pt!important;margin:0 0 5px!important}
 .meal-block{padding:4px 0!important}
 .meal-block h4{font-size:10pt!important;margin:0!important}
 .meal-block .fine-print{font-size:7.5pt!important;line-height:1.2!important;margin:1px 0!important}
 .meal-section-label{margin:2px 0 1px!important}
 .meal-ingredients,.meal-steps{font-size:8pt!important;line-height:1.2!important;margin:2px 0!important;padding-left:18px!important}
 .meal-record{font-size:7pt!important;margin:3px 0!important}
 .meal-groceries{break-before:page!important;margin-top:0!important}
}

/* Phase S: complete full-session workout studio (distinct from quick-start and 3-move planner). */
.training-results{max-width:1050px;margin:auto}
.training-subtitle{color:#cce4d9;font-weight:700;margin:12px 0}
.training-stage{margin:20px 0;padding:18px;border:1px solid rgba(185,213,200,.24);border-radius:16px;background:rgba(138,186,181,.055);break-inside:avoid-page}
.training-stage h3{font-size:1.3rem;margin:0 0 12px}
.training-list{padding-left:24px;display:grid;gap:15px}
.training-move{padding-bottom:12px;border-bottom:1px solid rgba(185,213,200,.2);break-inside:avoid-page}
.training-move h4{margin:2px 0;font-size:1.08rem}
.training-move p{margin:6px 0}
.training-target{font-weight:700;color:#cdeab9}
.training-record{font-size:.84rem;overflow-wrap:anywhere}
#training-print{margin-top:20px}
#meal-profile-label{margin:15px 0;white-space:normal}
@media print{
  body:has(.training-results) .announcement,body:has(.training-results) .site-header,body:has(.training-results) .footer,body:has(.training-results) .page-intro,body:has(.training-results) #training-options,body:has(.training-results) #training-print,body:has(.training-results) .page-inline-promo,body:has(.training-results) .skip-link{display:none!important}
  body:has(.training-results) .training-results{background:white!important;color:#111!important;border:0!important;padding:0!important}
  body:has(.training-results) .training-results *{color:#111!important}
  body:has(.training-results) .training-results .training-stage{background:white!important;border:1px solid #aaa!important;padding:10px!important;margin:8px 0!important}
  body:has(.training-results) .training-stage h3{font-size:12pt!important}
  body:has(.training-results) .training-move{padding-bottom:5px!important;font-size:9pt!important}
  body:has(.training-results) .training-move p{margin:2px 0!important}
  body:has(.training-results) .training-subtitle{font-size:10pt!important}
  body:has(.training-results) #training-status{display:none!important}
  body:has(.training-results) .section-short:has(.training-results){padding:0!important}
}
@media print{
 body:has(.training-results) .section-short:has(#training-options){display:none!important}
 body:has(.training-results) .training-results .meal-print-brand{display:block!important;color:#111!important;font-weight:800}
}

.print-safety-note{display:none}
@media print{
 body:has(.training-results) .print-safety-note,
 body:has(.meal-results) .print-safety-note{display:block!important;font-size:8pt!important;color:#111!important;margin:2px 0 7px!important}
 body:has(.meal-results) #meal-profile-label{display:block!important;color:#111!important;background:white!important;border:0!important;padding:0!important;margin:3px 0!important;font-size:9pt!important}
}

/* Phase T: inclusive, opt-in 21-day activity and food challenge */
.challenge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0 48px}
.challenge-day{padding:23px;display:flex;flex-direction:column;gap:10px}
.challenge-day h3{font-size:1.22rem;margin:0}
.challenge-day p{margin:0;line-height:1.5}
.challenge-day-head,.challenge-links,.challenge-controls,.challenge-import-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.challenge-day-head{justify-content:space-between}
.challenge-status-pill{border:1px solid rgba(195,226,219,.35);padding:4px 9px;border-radius:100px;font-size:.78rem}
.challenge-food{padding:12px 0;border-top:1px solid rgba(210,230,224,.18)}
.challenge-links{gap:16px}
.challenge-controls{margin-top:auto;padding-top:12px}
.challenge-controls .button{font-size:.82rem;padding:9px 12px}
.challenge-minutes{width:145px;max-width:100%;padding:10px;border-radius:9px;border:1px solid #8fa8a1;background:#182b30;color:#fff}
.challenge-optin{display:flex;align-items:flex-start;gap:12px;margin:20px 0}
.challenge-optin input{width:20px;height:20px;flex:none}
.challenge-import-actions{margin-top:16px}
.challenge-import-label{display:inline-flex;flex-direction:column;gap:5px}
.challenge-import-label input{max-width:245px;font-size:.8rem}
@media(max-width:740px){.challenge-grid{grid-template-columns:1fr}.challenge-day{padding:18px}.challenge-day-head{align-items:flex-start}}

/* Phase U: two source-specific panels and manually selected imports. */
.connected-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem}.connected-inputs{display:flex;flex-wrap:wrap;gap:1rem;align-items:center}.connected-inputs .challenge-import-label{max-width:100%}.connected-grid strong{font-variant-numeric:tabular-nums}@media(max-width:700px){.connected-grid{grid-template-columns:1fr}}@media print{.connected-inputs,.site-header,.announcement,.page-inline-promo{display:none!important}.connected-grid{grid-template-columns:1fr 1fr}}


/* Educational and legal transparency sections; no script or remote assets needed */
.smn-legal-links{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.15rem;padding-top:.85rem;border-top:1px solid rgba(214,232,224,.24);font-size:.9rem}
.smn-legal-links a{color:#b7efdb;text-decoration:underline;text-underline-offset:.2em}
.smn-medical-notice{margin:1.5rem auto 2rem;max-width:1120px;padding:1.15rem 1.4rem;border:1px solid rgba(190,220,205,.45);border-left:5px solid #86cfae;border-radius:.65rem;background:#132a28;color:#f2f7f4;line-height:1.6}
.smn-medical-notice strong{font-weight:750;color:#fff}
.smn-medical-notice a{color:#b7efdb;text-decoration:underline}
.smn-legal-page{max-width:900px;padding:2rem 1rem 4rem}
.smn-legal-page section{margin:1.7rem 0}
.smn-legal-page h2{font-size:1.35rem;margin:1rem 0 .55rem}
.smn-legal-page p,.smn-legal-page li{line-height:1.7}
.smn-legal-page a{color:#b7efdb;text-decoration:underline}
.smn-legal-status{padding:.85rem 1rem;border:1px solid rgba(190,220,205,.45);border-radius:.55rem}

/* Shape Me Up Now private blog refresh / 2026-10-24. Scoped to the seven blog pages.
   Decorative visuals are CSS artwork; original Wix photographs are NOT yet migrated. */
.smn-modern-blog{--blog-glow:#d6ffa5;--blog-soft:#a9d4c5}
.smn-modern-blog .site-header{position:relative;z-index:2;background:#0a1b18;border-bottom:1px solid #2b4e43}
.smn-modern-blog .brand-icon{border-radius:12px;transform:none;box-shadow:0 0 0 3px #d0fc8e16,0 9px 25px #050f0d99}
.smn-modern-blog .nav-links a:focus-visible,.smn-modern-blog a:focus-visible,.smn-modern-blog button:focus-visible{outline:3px solid var(--lime);outline-offset:4px}
.smn-modern-blog .page-intro{position:relative;isolation:isolate;margin-top:34px;padding:64px clamp(24px,5vw,65px) 58px;border:1px solid #426356;border-radius:30px;overflow:hidden;background:radial-gradient(ellipse at 80% 5%,#366c514f 0,transparent 46%),linear-gradient(135deg,#17322b 4%,#0b1c19 70%);box-shadow:0 22px 50px #040d0b55}
.smn-modern-blog .page-intro:after{content:'SMN';position:absolute;right:4%;bottom:-48px;z-index:-1;font-weight:900;letter-spacing:-.1em;color:#b8ebbb0b;font-size:clamp(8rem,25vw,21rem);line-height:1}
.smn-modern-blog .page-intro h1{font-size:clamp(2.5rem,5.8vw,5.4rem);max-width:800px;line-height:1.08}
.smn-modern-blog .journal-filter{border:1px solid #355749;background:linear-gradient(145deg,#132b24,#0d211d);box-shadow:0 12px 25px #06151044}
.smn-modern-blog .journal-grid{gap:22px}
.smn-modern-blog .journal-entry{position:relative;display:flex;flex-direction:column;min-height:340px;border:1px solid #35564a;border-radius:24px;overflow:hidden;background:linear-gradient(140deg,#18342e,#10241f);box-shadow:0 13px 40px #0003;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.smn-modern-blog .journal-entry:hover{transform:translateY(-4px);border-color:#b2df94;box-shadow:0 23px 44px #0006}
.smn-modern-blog .journal-entry>div{flex:1;padding:26px;display:flex;flex-direction:column;align-items:flex-start}
.smn-modern-blog .journal-entry h3{font-size:clamp(1.25rem,2.1vw,1.7rem);line-height:1.23}
.smn-modern-blog .journal-entry .text-link{margin-top:auto;padding-top:15px}
.smn-modern-blog .editorial-pattern{height:180px;position:relative;overflow:hidden;border-bottom:1px solid #ffffff17;background:radial-gradient(ellipse at 80% 20%,#ccff9b63,transparent 42%),repeating-linear-gradient(120deg,#204537 0,#204537 12px,#1a3a30 12px,#1a3a30 24px)}
.smn-modern-blog .editorial-pattern:before{content:'';position:absolute;inset:20px 28px;max-width:170px;border:15px solid #efffce1a;border-radius:50%;filter:drop-shadow(0 0 15px #1bd6a343)}
.smn-modern-blog .editorial-pattern:after{content:'SHAPE ME UP NOW';position:absolute;left:25px;bottom:16px;letter-spacing:.18em;font-size:.63rem;font-weight:800;color:#d1e9db}
.smn-modern-blog [data-topic="Walking"] .editorial-pattern{background:radial-gradient(circle at 72% 34%,#c3fdbb72,transparent 35%),linear-gradient(145deg,#2e5d51,#102b36)}
.smn-modern-blog [data-topic="Mobility"] .editorial-pattern,.smn-modern-blog [data-topic="Yoga"] .editorial-pattern{background:radial-gradient(circle at 78% 45%,#b8e8ef59,transparent 35%),linear-gradient(135deg,#224a4c,#1c2939)}
.smn-modern-blog [data-topic="Strength"] .editorial-pattern{background:radial-gradient(circle at 78% 26%,#ecf5ab50,transparent 42%),linear-gradient(145deg,#2a4c33,#1c2731)}
.smn-modern-blog .article-layout{max-width:890px;padding-bottom:45px}
.smn-modern-blog .article-header{padding:40px clamp(20px,4vw,42px);border:1px solid #35594b;border-radius:26px;margin:28px 0 25px;background:radial-gradient(circle at 90% 8%,#87d2bc38,transparent 35%),linear-gradient(135deg,#1a3930,#102721);box-shadow:0 16px 35px #0003}
.smn-modern-blog .article-header h1{font-size:clamp(2.1rem,5vw,4rem);line-height:1.1;letter-spacing:-.05em;margin-top:14px}
.smn-modern-blog .smn-article-brandline{font-size:.72rem;font-weight:850;letter-spacing:.14em;color:#dbfbbb;margin:0 0 16px}
.smn-modern-blog .article-lede{color:#d8ece0;font-size:1.16rem;line-height:1.65}
.smn-modern-blog .article-content{font-size:1.04rem;line-height:1.8}
.smn-modern-blog .article-content h2{font-size:clamp(1.55rem,3vw,2.15rem);margin-top:30px}
.smn-modern-blog .article-note{border:1px solid #4b7360;background:linear-gradient(135deg,#1b3e33,#122b24);border-radius:20px}
@media(max-width:760px){.smn-modern-blog .page-intro{margin-top:15px;padding:35px 20px}.smn-modern-blog .article-header{padding:26px 20px}.smn-modern-blog .journal-entry{min-height:290px}.smn-modern-blog .editorial-pattern{height:130px}.smn-modern-blog .nav{min-height:70px}}
@media(prefers-reduced-motion:reduce){.smn-modern-blog .journal-entry{transition:none}.smn-modern-blog .journal-entry:hover{transform:none}}
