@font-face{font-family:FitInter;src:url('assets/fitness/v2/InterVariable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
.case-fitness{--ink:var(--fit-text-primary);--muted:var(--fit-text-secondary);--accent:var(--fit-accent-yellow)}
.fit-guide-feature{background:var(--fit-bg-focus);color:white;padding:90px 6%;display:grid;grid-template-columns:.8fr 1.2fr;gap:8%;align-items:center}.fit-guide-feature .micro{color:var(--fit-accent-mint)}.fit-guide-feature h2{font-size:clamp(44px,5.4vw,78px)}.fit-guide-feature p{max-width:470px;color:#d8e8e2;font-size:18px}.fit-guide-feature .fit-blueprint{background:var(--fit-accent-mint);border-radius:40px;position:relative;aspect-ratio:1.3;display:grid;place-items:center;overflow:hidden}.fit-blueprint:before{content:'';width:85%;aspect-ratio:1;border:1px solid #182f332b;border-radius:50%;position:absolute;left:7.5%;top:6%}.fit-blueprint>img{position:relative;width:85%;height:auto}.fit-plate-label{position:absolute;top:25px;left:28px;font-family:var(--mono);font-size:11px;letter-spacing:.09em;color:var(--fit-text-primary)}.fit-blueprint .fit-plate-foot{position:absolute;bottom:24px;left:28px;right:28px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--fit-text-primary)}.fit-guide-feature .text-link{color:var(--fit-accent-yellow)}
.case-fitness .prototype-section{background:#e7efe9}.case-fitness .prototype-grid{grid-template-columns:1fr 1fr;gap:8%;align-items:start}.case-fitness .prototype-copy{position:sticky;top:120px}.fit-jumps{display:flex;flex-direction:column;gap:4px;margin:30px 0}.fit-jumps button{text-align:left;padding:17px 0;border-bottom:1px solid var(--line);font-size:17px;display:flex;align-items:center;gap:25px;transition:padding .2s}.fit-jumps button:hover{padding-left:8px}.fit-jumps b{font-family:var(--mono);font-size:12px;color:var(--fit-bg-brand)}.fit-jumps span{margin-left:auto}.fit-source-link{display:block;font-size:13px;margin-top:26px;text-decoration:underline;text-underline-offset:5px}.case-fitness .screen-gallery figure{flex-basis:270px}.fit-ds-link{margin-top:35px}.fit-system{background:var(--fit-bg-focus);color:var(--fit-bg-subtle);--line:#f3f8f63b}.fit-system .chapter-heading p{color:#d9e5df}.fit-colour-roles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:45px 0}.fit-colour-roles>div{padding:24px;border-radius:12px;min-height:170px;display:flex;flex-direction:column;justify-content:space-between;font-size:16px;color:var(--fit-text-primary)}.fit-colour-roles small{font-family:var(--mono);font-size:11px;margin-top:30px}.fit-type-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;margin-top:60px;padding-top:32px;border-top:1px solid var(--line)}.fit-type-specimen{font-family:FitInter,sans-serif}.fit-type-specimen h3{font-size:32px;line-height:36px;font-weight:700;letter-spacing:0;margin:20px 0}.fit-type-specimen p{font-size:16px;line-height:24px}.fit-type-specimen small{font-size:14px;line-height:20px}.fit-type-meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px;font-family:var(--mono);font-size:11px;color:var(--fit-accent-mint)}.fit-system ul{padding-left:18px;font-size:17px;line-height:1.6}.fit-system li{margin-bottom:18px}.fit-system .micro{color:var(--fit-accent-mint)}.fit-evolution{padding:25px 0 0;border-top:1px solid var(--line);margin-top:35px;font-size:15px;color:var(--muted)}
/* The live first-visit UI uses the Figma semantic palette and readable type. */
.case-fitness .live-app{width:393px;max-width:100%;height:852px;border:0;border-radius:32px;box-shadow:0 0 0 1px var(--fit-border-default),18px 28px 60px #182f3324;background:var(--fit-bg-subtle);color:var(--fit-text-primary);font-family:FitInter,sans-serif;font-size:16px;line-height:24px}
.case-fitness .app-status{height:54px;padding:18px 24px 16px;font-size:14px;line-height:20px;align-items:center}.case-fitness .app-status:after{top:10px;left:calc(50% - 57.5px);width:115px;height:30px;background:var(--fit-text-primary)}.case-fitness .app-status img{width:66px;height:18px}
.case-fitness #app-body{padding:0 24px 14px;overflow-y:auto;scrollbar-width:thin}.fv-header{display:flex;gap:12px;align-items:center;height:44px;font-size:14px;line-height:20px;color:var(--fit-text-secondary)}.fv-header button{width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;padding:0}.fv-header button img{width:20px;height:20px}.fv-header>span{flex:1}.fv-header>img{width:36px;height:24px;flex-shrink:0}.fv-progress{display:flex;gap:8px;margin:6px 0 14px;height:6px;flex-shrink:0}.fv-progress span{flex:1;background:var(--fit-bg-brand);opacity:.16;border-radius:999px}.fv-progress .active{opacity:1}.fv-content{display:flex;flex-direction:column;gap:12px}.case-fitness #app-body h3{font-size:32px;line-height:36px;font-weight:700;letter-spacing:0;margin:0}.case-fitness #app-body h4{font-size:22px;line-height:28px;font-weight:700;letter-spacing:0;margin:0}.case-fitness #app-body p{margin:0;font-size:16px;line-height:24px}.case-fitness #app-body strong{font-size:16px;line-height:22px;font-weight:600}.case-fitness #app-body .fv-small{font-size:14px;line-height:20px;display:block}.fv-muted{color:var(--fit-text-secondary)}.fv-heading{display:flex;flex-direction:column;gap:8px}.fv-map{position:relative;background:var(--fit-accent-mint);border-radius:24px;aspect-ratio:345/232;overflow:hidden;flex-shrink:0}.fv-equipment{position:absolute;left:4.49%;top:0;width:91.02%;height:auto;max-width:none}.fv-leader{position:absolute;inset:0;width:100%;height:auto;pointer-events:none}.fv-highlight{position:absolute;width:16.81%;aspect-ratio:1;border-radius:50%;background:var(--fit-accent-yellow)}.fv-hotspot{position:absolute;width:44px;height:44px;border-radius:50%;border:1.5px solid var(--fit-text-primary);background:white;color:var(--fit-text-primary);transform:translate(-50%,-50%);font:600 16px/22px FitInter,sans-serif;display:grid;place-items:center}.fv-hotspot[aria-pressed=true]{background:var(--fit-text-primary);color:var(--fit-accent-yellow)}.fv-segments{display:flex;gap:6px}.fv-segments button{flex:1;min-width:0;min-height:48px;border:1px solid var(--fit-border-strong);border-radius:12px;background:white;color:var(--fit-text-primary);font:600 14px/20px FitInter,sans-serif;padding:8px 2px}.fv-segments button[aria-pressed=true]{background:var(--fit-text-primary);color:white;border-color:var(--fit-text-primary)}.fv-part-detail{display:grid;grid-template-columns:64px 1fr;gap:16px;padding:16px;border-radius:16px;background:white;align-items:center}.fv-part-detail p{color:var(--fit-text-secondary);margin-top:4px!important}.fv-crop{width:64px;height:78px;position:relative;overflow:hidden;border-radius:12px;background:var(--fit-bg-subtle)}.fv-crop img{position:absolute;width:552px;height:408px;max-width:none}
.case-fitness #app-actions{padding:10px 24px 14px;border:0;display:flex;flex-direction:column;gap:6px;background:inherit}.fv-button{display:flex;align-items:center;justify-content:center;min-height:54px;flex-shrink:0;width:100%;padding:12px 16px;border-radius:16px;background:var(--fit-action-primary);color:white;font:600 16px/24px FitInter,sans-serif}.fv-button:hover{filter:brightness(.95)}.fv-button:active{background:var(--fit-action-pressed)}.fv-button.quiet{min-height:44px;padding:8px;background:none;color:var(--fit-text-secondary);font:600 16px/22px FitInter,sans-serif}.fv-button:disabled{background:var(--fit-border-default);color:var(--fit-text-secondary);opacity:.65}.fv-home-line{display:block;background:currentColor;width:120px;height:4px;margin:4px auto 0;border-radius:2px}.fv-content .fv-eyebrow{font:600 12px/18px FitInter,sans-serif;color:var(--fit-bg-brand);display:block}.fv-card{padding:16px;border-radius:16px;background:white;display:flex;flex-direction:column;gap:6px;color:var(--fit-text-primary)}.fv-card p{color:var(--fit-text-secondary)}.fv-illustration{height:230px;border-radius:24px;display:flex;align-items:center;justify-content:center;overflow:hidden}.fv-illustration img{width:91%;height:auto;max-height:100%;object-fit:contain}.fv-illustration.yellow{background:var(--fit-accent-yellow)}.fv-illustration.mint{background:var(--fit-accent-mint)}.fv-illustration.pink{background:var(--fit-bg-canvas)}.fv-illustration.cyan{background:var(--fit-accent-cyan)}.fv-illustration.setup-art{height:190px}.fv-illustration.small-art{height:146px}.fv-checklist{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}.fv-checklist li{display:flex;gap:12px;align-items:center}.fv-checklist li>span{width:36px;height:36px;flex-shrink:0;border-radius:12px;background:white;color:var(--fit-bg-brand);font-size:14px;display:grid;place-items:center}.fv-checklist p{color:var(--fit-text-secondary);margin-top:4px!important}.fv-movement{position:relative;background:var(--fit-accent-yellow);aspect-ratio:345/284;border-radius:24px;overflow:hidden;flex-shrink:0}.fv-movement .fv-equipment{top:4.23%}.fv-motion-line{position:absolute;left:0;top:0;width:100%;height:auto;pointer-events:none}.fv-play{position:absolute;top:12px;left:12px;width:112px;min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;background:white;color:var(--fit-text-primary);font-size:14px;line-height:20px}.fv-play img{width:18px;height:18px}.case-fitness #app-body .fv-movement>p{position:absolute;bottom:12px;left:16px;right:16px;color:var(--fit-text-primary);font-size:14px;line-height:20px}.fv-cue{display:flex;flex-direction:column;gap:8px}.fv-context{display:flex;align-items:center;gap:12px}.fv-context>div{position:relative;width:64px;height:64px;flex-shrink:0;background:var(--fit-accent-mint);border-radius:16px;overflow:hidden}.fv-context>div>img{width:72px;height:auto;max-width:none;position:absolute;left:-4px;top:6px}.fv-context>p{display:flex;flex-direction:column;gap:2px}.fv-choices{display:flex;flex-direction:column;gap:12px}.fv-choice{min-height:80px;display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--fit-border-default);background:white;border-radius:16px;text-align:left;color:var(--fit-text-primary)}.fv-choice>span:last-child{display:flex;flex-direction:column}.fv-choice[aria-checked=true]{background:var(--fit-accent-yellow);border-color:var(--fit-text-primary)}.fv-radio{width:24px;height:24px;flex-shrink:0;border:1.5px solid var(--fit-border-strong);border-radius:50%;background:var(--fit-bg-subtle);display:grid;place-items:center}.fv-radio img{width:16px;height:16px}.fv-choice[aria-checked=true] .fv-radio{background:var(--fit-text-primary);border-color:var(--fit-text-primary)}.fv-preview{padding:16px;border-radius:16px;background:var(--fit-bg-canvas);display:flex;flex-direction:column;gap:6px}.fv-record{width:44px;height:44px;background:var(--fit-accent-mint);border-radius:12px;display:grid;place-items:center;flex-shrink:0}.fv-brand{font-size:22px;font-weight:700;padding:16px 0;color:var(--fit-bg-brand)}
.case-fitness .fv-dark{background:var(--fit-bg-focus);color:white}.fv-dark .app-status:after{background:#050808}.fv-dark .fv-header,.fv-dark .fv-button.quiet{color:white}.fv-dark .fv-progress span{background:var(--fit-action-on-dark)}.fv-dark .fv-segments button{background:var(--fit-bg-brand);color:white;border-color:var(--fit-accent-mint)}.fv-dark .fv-segments button[aria-pressed=true],.fv-dark .fv-button:not(.quiet){background:var(--fit-action-on-dark);color:var(--fit-text-on-accent);border-color:var(--fit-action-on-dark)}.case-fitness #app-body:focus-visible{outline-offset:-3px}.fitness-app.fv-root .app-nav{flex-shrink:0}.case-fitness .fv-dark :focus-visible{outline-color:var(--fit-accent-mint)}
@media(max-width:1050px){.case-fitness .prototype-grid{grid-template-columns:1fr 1fr;gap:5%}.fit-colour-roles{grid-template-columns:1fr 1fr}.fit-guide-feature{gap:5%;padding:70px 6%}}
@media(max-width:760px){.fit-guide-feature{display:flex;flex-direction:column;padding:65px 6%;align-items:stretch;gap:38px}.fit-guide-feature h2{font-size:43px}.fit-guide-feature p{font-size:16px}.fit-guide-feature .fit-blueprint{border-radius:24px}.fit-plate-label,.fit-blueprint .fit-plate-foot{font-size:9px;left:18px}.fit-plate-label{top:18px}.fit-blueprint .fit-plate-foot{right:18px;bottom:15px}.case-fitness .prototype-copy{position:static}.case-fitness .prototype-grid{display:flex;gap:40px}.case-fitness .live-app{width:393px;height:852px;max-width:100%;border:0}.case-fitness #app-body{padding:0 18px 14px}.case-fitness #app-actions{padding:10px 18px 14px}.case-fitness .app-status{padding-left:18px;padding-right:18px}.fv-header{gap:8px;font-size:12px;line-height:18px}.fv-header>img{width:30px}.case-fitness #app-body h3{font-size:29px;line-height:34px}.fv-movement{aspect-ratio:345/304}.fv-movement .fv-equipment{top:8%}.fv-motion-line{top:4%}.case-fitness #app-body .fv-movement>p{font-size:13px}.fv-play{top:9px;left:9px}.fv-crop{height:78px}.fv-part-detail{gap:12px;padding:14px}.fit-type-grid{grid-template-columns:1fr;gap:36px;margin-top:38px}.fit-colour-roles{gap:8px}.fit-colour-roles>div{padding:18px;min-height:155px;font-size:14px}.fit-colour-roles small{font-size:10px}.case-fitness .screen-gallery figure{flex-basis:240px}}
@media(prefers-reduced-motion:reduce){.fit-jumps button{transition:none}}

/* Material 3 reconciliation: keep FitStart's equipment illustrations and palette. */
.case-fitness .fv-header{min-height:48px;height:48px}.fv-header button{width:48px;height:48px}.fv-hotspot{width:48px;height:48px}.fv-play{min-height:48px}.fv-button.quiet{min-height:48px;padding:12px 8px}.fv-choice{border-color:var(--fit-border-strong)}.fv-choice[aria-checked=true]{box-shadow:inset 0 0 0 1px var(--fit-text-primary)}.fv-hotspot[aria-pressed=true]{border-width:3px}.fv-segments button[aria-pressed=true]{font-weight:750;box-shadow:inset 0 -3px var(--fit-accent-mint)}
.case-fitness #app-body input,.case-fitness #app-body select,.case-fitness #app-body textarea{min-height:56px;font-size:16px;line-height:24px;border-color:var(--fit-border-strong)}.case-fitness .app-nav button{min-height:56px;font-size:12px;line-height:16px;gap:4px}.case-fitness .app-nav button[aria-pressed=true]{font-weight:700;box-shadow:inset 0 -3px var(--fit-bg-brand)}
.case-fitness :focus-visible{outline:3px solid var(--fit-bg-brand);outline-offset:3px}.case-fitness .fv-dark :focus-visible{outline-color:var(--fit-accent-yellow)}.case-fitness .app-nav :focus-visible,.fit-system :focus-visible,.fit-guide-feature :focus-visible{outline-color:var(--fit-accent-yellow);outline-offset:-3px}.fv-button.quiet:hover{background:#182f330a}.fv-dark .fv-button.quiet:hover{background:#ffffff14}.fv-segments button:hover:not([aria-pressed=true]),.fv-choice:hover:not([aria-checked=true]){background:var(--fit-bg-canvas)}
.case-fitness .topbar a,.case-fitness #index-toggle,.case-fitness .text-link,.case-fitness .source-note summary,.case-fitness footer a,.case-fitness [data-restart]{min-height:48px;display:inline-flex;align-items:center}.case-fitness .motion-toggle,.case-fitness .gallery-controls button,.case-fitness #close-lightbox{min-width:48px;min-height:48px}.case-fitness .source-note summary{display:flex}.fv-button:disabled{opacity:1;color:var(--fit-text-secondary);background:var(--fit-border-default)}
