/* FORMA Night: navy, slate and copper. Semantic tokens replace light surfaces. */
:root{color-scheme:dark;--navy:#101e29;--cream:#101b25;--surface:#1b2c39;--soft:#253b48;--ink:#edf2ef;--muted:#b8c8ce;--line:#48606d;--orange:#ffae83;--action:#f6a477;--action-ink:#182532;--body-base:#344d5a;--muscle-idle:#7897a6;--focus-ring:#ffd1b1;--flow-success:#b8e1bd}
body{background:radial-gradient(ellipse at 90% 0,#263b46 0,transparent 50%),var(--cream);color:var(--ink)}
header{background:var(--cream);border-color:var(--line)}
.sidebar{background:#0c1721;border-right:1px solid #304653}.sidebar-coach{background:#1d303e}.sidebar-coach button{background:#d8b89b;color:#17232e}
.icon-button,.date-label,.stat,.exercise-card,.card,.muscle-panel,.search-field,.saved-filter,.week-tabs button,.chips button,.session-tabs button,.library-empty,.focus-choices span,.exercise-open{background:var(--surface);color:var(--ink);border-color:var(--line)}
.card,.stat,.exercise-card,.muscle-panel{box-shadow:0 12px 35px #00000018}
.sub,.muted,.field-hint,.stat small,.stat-label,.row-text p,.exercise-info p,.session-tabs small,.calendar-day,.brand-caption,.nav-label,.filter-label,.catalog-extra-filters label,.date-label,.page-heading .sub,.breadcrumb,.local-status{color:var(--muted)}
h1,h2,h3,h4,.stat strong,.stat strong small,.exercise-info h3,.plan-heading h2,.field,legend{color:var(--ink)}
.eyebrow,.text-button,h1 em,.page-heading h1 em{color:var(--orange)}
.hero h2,.hero .hero-content p,.collection h3,.collection p,.library-hero h1,.library-hero p{color:#fff3e8}
.primary,.bottom-dock>.dock-start{background:var(--action);color:var(--action-ink);border-color:var(--action)}.primary:hover{background:#ffbd98}.primary.navy{background:#354e5d;color:var(--ink)}
.outline,.setup-button,.readiness-grid button,.help-topics button,.coach-answer,.working-set,.banner,.banner.neutral,.coach-intro .coach-symbol{background:var(--soft);color:var(--ink);border-color:var(--line)}
.outline:hover,.muscle-shortcuts button:hover{background:#395364}.coach-card button{background:#36505e;color:var(--ink)}
.banner.warning,.load-advice.warning{background:#47372d;color:#ffe0bf;border-color:#9b775c}
.load-advice,.load-advice .outline,.completed-sets{background:#263f35;color:#d0ead1;border-color:#668871}
input:not([type=checkbox]):not([type=radio]),select,.working-set input{background:#14242f!important;color:var(--ink)!important;border-color:#718b99}input::placeholder{color:#a9bdc8}.field input:focus,.field select:focus{border-color:var(--orange)}
input[type=checkbox],input[type=radio]{accent-color:var(--action)}
.choice,.focus-choices span{border-color:#657e8b}.choice:has(input:checked),.focus-choices input:checked+span{background:#3c4c52;color:#ffe1c9;border-color:var(--action)}
.goal-chip,.badge{background:#36473d;color:#d4e6c9}.calendar-day b{background:#293e4b;color:#cfdee3}.calendar-day.scheduled b{background:#65432e;color:#ffdfc9}.calendar-day.at-house b{box-shadow:inset 0 -4px #8cc4b3}.calendar-day.today b{outline:2px solid #f6a477;background:#38515f;color:#fff3e8}.progress-ring:before,.steps-ring>div{background:var(--surface)}
.session-tabs .selected,.week-tabs .selected,.chips .selected,.map-tabs .selected,.equipment-tabs .selected,.muscle-shortcuts .selected,.saved-filter.selected{background:#43596a;color:#fff3e8;border-color:var(--orange)}
.exercise-photo,.exercise-card .exercise-photo,.flow-photo,.movement-photos figure{background:#263a46}.photo-play,.exercise-card .photo-badge,.favorite-button{background:#152834ed;color:#ffe2cb}.favorite-button.is-saved{background:#68462e;color:#ffe4cf}.movement-photos figcaption{background:#283d49;color:#e0e9e8}
.bottom-dock{background:#14232ff5;border:1px solid #48606d}.bottom-dock>button{color:#c1d1d7}.bottom-dock>button.active{color:#ffbf96}
dialog{background:#1b2c39;color:var(--ink);border:1px solid #66808f}dialog::backdrop{background:#050c14c9}#modal:has(.flow-track) .flow-actions{background:#1b2c39fa}
.inline-error,.danger,.stop-session{color:#ffb9ad}.setup-button span{color:#ffbf96}.health-strip,.install-strip{background:#243e43;color:var(--ink)}.health-strip p,.install-strip p{color:#cadbd8}.coach-tip{color:#bbd2d0}
.schedule-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px;border-left:4px solid var(--action)}.schedule-summary h2{font-size:30px;margin:9px 0}.schedule-summary p{color:var(--muted);line-height:1.7;margin-bottom:0}
.house-section{margin-top:42px}.house-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:20px}.house-card{padding:0;overflow:hidden}.house-cover{height:190px;position:relative;background:var(--soft)}.house-cover img{width:100%;height:100%;object-fit:cover}.house-cover span{position:absolute;left:16px;bottom:14px;background:#12232fea;color:#ffdac0;padding:8px 14px;border-radius:8px;font-weight:700}.house-card-body{padding:24px}.house-card-body h3{font-size:28px;margin:10px 0 16px}.house-card ul{list-style:none;padding:0;margin:0 0 20px}.house-card li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.house-card li small{white-space:nowrap;color:var(--muted)}.house-card li button{text-align:left}.house-card .flow-actions{justify-content:space-between;flex-wrap:wrap}.house-empty{display:flex;align-items:center;gap:24px}.house-empty img{width:35%;max-height:240px;object-fit:cover;border-radius:12px}.house-empty h3{font-size:30px}.home-planning{margin-top:24px}.home-planning h2{font-size:32px}
fieldset{border:1px solid var(--line);border-radius:14px;padding:20px;margin:24px 0}legend{padding:0 8px;font-size:22px;font-weight:600}.day-picker{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0 24px}.day-picker label{position:relative;flex:1;min-width:110px}.day-picker input{position:absolute;opacity:0;width:1px;height:1px}.day-picker span{display:grid;place-items:center;min-height:48px;border:1px solid #718b99;border-radius:9px;background:#14242f;cursor:pointer}.day-picker input:checked+span{border-color:var(--action);background:#65432e;color:#ffdfc9;box-shadow:inset 0 -3px var(--action)}.house-days input:checked+span{border-color:#9bcebb;background:#2b5145;color:#d8f0e5;box-shadow:inset 0 -3px #9bcebb}.day-picker input:focus-visible+span{outline:3px solid var(--focus-ring);outline-offset:3px}
.house-exercise-choices{display:grid;gap:10px;max-height:52dvh;overflow:auto;padding:4px}.house-exercise-choices>div{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:10px}.house-exercise-choices label{display:flex;align-items:center;gap:12px;flex:1;min-height:60px;cursor:pointer}.house-exercise-choices input{width:22px;height:22px;flex-shrink:0}.house-exercise-choices img{width:58px;height:58px;object-fit:cover;border-radius:6px}.house-exercise-choices b,.house-exercise-choices small{display:block}.house-exercise-choices small{font-size:13px;color:var(--muted);margin-top:5px}.house-exercise-choices .text-button{min-height:44px}
.account-trigger{min-height:44px;padding:8px 14px;white-space:nowrap}.account-card{max-width:620px;margin:0 auto}.account-card h2{font-size:36px}.account-card .field{margin-top:18px}.account-modes{display:flex;gap:10px;margin:20px 0}.account-modes button{flex:1;min-height:48px}.account-note{line-height:1.7;color:var(--muted)}
.breadcrumb b,label.field,.summary-list b,.chart-col b,.step-days b,.summary-metrics b{color:var(--ink)}
.page-heading .eyebrow,.coach-card .eyebrow,dialog .eyebrow,.panel-heading .eyebrow,.home-activity .eyebrow,.phase-list small,.muscle-label,.history-row summary{color:var(--orange)}
.coach-card .sub,.week-progress small,.coach-tip p,footer p,footer button,label.field small,.choice small,.summary-list span,.plan-heading p,.exercise-row p,.row-num,.phase-list p,.history-row p,.history-row details,.chart-col small,.health-row p,.faq p,.readiness-grid small,.set-head,.set-row,.filter-label,.body-map-details>summary,.map-tabs button,.map-caption,.secondary-toggle,.muscle-shortcuts button,.priority-callout p,.search-field>span,.equipment-tabs button,.guide-link,.load-more,.library-empty p,.flow-exercise-info p,.load-advice p,.load-advice small,.load-basis,.working-set-label,.summary-metrics span,.steps-ring span,.step-source,.walk-status,.step-days span,.step-days small,.home-activity p,.install-instructions p{color:var(--muted)}
.detail-muscles span,.map-tabs,.muscle-shortcuts button>span,.priority-callout,.saved-filter b,#active-filters>span,.catalog-note,.flow-photo span,.summary-metrics>div,.step-days>div,.home-activity,.install-instructions section{background:var(--soft);color:var(--ink)}
.priority-callout>span,.load-advice .eyebrow,.home-activity>.icon,.home-activity>div>.icon{color:#b8e1bd}.load-advice.warning p{color:#ffe0bf}
.equipment-tabs .selected,.map-tabs .selected,.muscle-shortcuts .selected{color:#fff3e8}.health-strip>.icon,.install-strip>span{color:#ffc39f}
@media(max-width:700px){.schedule-summary{align-items:stretch;flex-direction:column;padding:22px}.schedule-summary h2{font-size:28px}.house-section .section-heading{align-items:start;flex-wrap:wrap;gap:14px}.house-empty{flex-direction:column;align-items:stretch}.house-empty img{width:100%;height:170px}.house-card-body{padding:20px}.day-picker label{min-width:calc(33% - 10px)}fieldset{padding:12px}.house-exercise-choices img{width:44px;height:44px}.house-exercise-choices label{gap:8px}.house-exercise-choices b{font-size:14px}.header-right{gap:8px}.local-status{display:none}.account-trigger{font-size:13px}.schedule-summary .primary{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
