*{box-sizing:border-box}:root{--bg:#070a12;--bg-soft:#0b1020;--card:#101827;--card2:#172235;--card3:#1d2940;--text:#f7fbff;--muted:#95a3bb;--muted-strong:#c9d3e4;--accent:#27f0d2;--accent2:#7c5cff;--brand-primary:var(--accent2);--brand-accent:var(--accent);--accent3:var(--brand-accent);--orange:var(--brand-accent);--orange2:var(--brand-accent);--green:#2af6b8;--red:#ff5c7a;--line:#d5e2ff1f;--line-strong:#d5e2ff33;--shadow:0 22px 58px #00000057;--shadow-soft:0 14px 34px #00000038;--radius-xl:28px;--radius-lg:22px;--radius-md:16px;--radius-sm:12px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--ease:cubic-bezier(.2, .8, .2, 1)}html{background:var(--bg)}body{min-height:100vh;color:var(--text);text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;background:radial-gradient(circle at 18% -8%,#7c5cff47,#0000 31%),radial-gradient(circle at 92% 4%,#27f0d229,#0000 28%),linear-gradient(#080b14 0%,#060811 58%,#05070d 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline-offset:3px;outline:2px solid #27f0d2d1}h1,h2,h3{letter-spacing:0;color:var(--text);margin:0}h1{font-size:clamp(2rem,7vw,2.75rem);font-weight:950;line-height:.98}h2{font-size:clamp(1.24rem,4.8vw,1.65rem);font-weight:900;line-height:1.06}h3{font-size:1rem;font-weight:850;line-height:1.15}p{color:var(--muted);line-height:1.45}strong{color:var(--text)}.shell{width:100%;max-width:520px;min-height:100vh;padding:18px max(18px, env(safe-area-inset-left)) calc(104px + env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-right));margin:auto;overflow-x:hidden}.top{justify-content:space-between;align-items:center;margin:6px 0 18px;display:flex}.fitflow-logo{color:var(--text);vertical-align:middle;align-items:center;gap:10px;display:inline-flex}.fitflow-logo-mark{width:100%;height:100%;display:block;overflow:visible}.fitflow-logo-tile{fill:var(--card);filter:drop-shadow(0 12px 22px color-mix(in srgb, var(--brand-primary) 24%, transparent))}.fitflow-logo-stroke{filter:drop-shadow(0 0 16px color-mix(in srgb, var(--brand-accent) 26%, transparent))}.fitflow-logo-word{letter-spacing:0;font-weight:950;line-height:1}.fitflow-logo-sm{--fitflow-logo-size:34px;font-size:1.02rem}.fitflow-logo-md{--fitflow-logo-size:44px;font-size:1.18rem}.fitflow-logo-lg{--fitflow-logo-size:58px;font-size:1.55rem}.fitflow-logo-mark{width:var(--fitflow-logo-size);height:var(--fitflow-logo-size)}.fitflow-logo-lockup .fitflow-logo-mark{flex:0 0 var(--fitflow-logo-size)}.brand-kicker{color:var(--muted-strong);text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:10px;margin:0 0 10px;font-size:.78rem;font-weight:900;display:flex}.card{background:linear-gradient(180deg, #fff1, #ffffff05), var(--card);border:1px solid var(--line);border-radius:var(--radius-xl);padding:var(--space-5);margin-bottom:var(--space-4);box-shadow:var(--shadow);position:relative}.hero{background:linear-gradient(135deg, #7c5cff70, #27f0d22b), var(--card);border-color:#9780ff57;flex-direction:column;justify-content:space-between;min-height:190px;display:flex;overflow:hidden}.hero:before{content:"";pointer-events:none;background:linear-gradient(#ffffff14,#0000 58%);position:absolute;inset:0}.hero>*{position:relative}.hero p:first-child,.card>p:first-child{margin-top:0}.hero h1{font-size:clamp(2.25rem,8.4vw,3.15rem);line-height:.97}.btn{background:linear-gradient(135deg, var(--brand-primary), var(--brand-accent));min-height:46px;color:var(--bg);cursor:pointer;text-align:center;transition:transform .16s var(--ease), box-shadow .16s var(--ease), filter .16s var(--ease), background .16s var(--ease);border:0;border-radius:18px;justify-content:center;align-items:center;gap:8px;padding:13px 16px;font-weight:950;display:inline-flex;box-shadow:0 14px 28px #27f0d22e}.btn.secondary{color:var(--text);border:1px solid var(--line);box-shadow:none;background:#ffffff12}.btn.green{background:linear-gradient(135deg, var(--brand-accent), var(--brand-primary));color:var(--bg)}.btn.red{background:linear-gradient(135deg, var(--red), #ff8aa0);color:#21060c}.btn.full{width:100%}.btn:disabled{opacity:.52;cursor:not-allowed;transform:none}@media (hover:hover){.btn:not(:disabled):hover,.program:hover,.exercise:hover,.tag:hover,.nav-item:hover{transform:translateY(-1px)}.btn:not(:disabled):hover{filter:brightness(1.04);box-shadow:0 18px 36px #27f0d238}.btn.secondary:not(:disabled):hover,.program:hover,.exercise:hover{border-color:var(--line-strong);background-color:#ffffff0d}}.btn:not(:disabled):active,.program:active,.tag:active,.nav-item:active{transform:translateY(1px)scale(.99)}.row{align-items:center;gap:10px;display:flex}.row>*{flex:1;min-width:0}.split{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.tags{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.tag{appearance:none;min-height:32px;color:var(--muted-strong);border:1px solid var(--line);transition:transform .16s var(--ease), border-color .16s var(--ease), background .16s var(--ease), color .16s var(--ease);background:#ffffff10;border-radius:999px;justify-content:center;align-items:center;padding:7px 10px;font-size:.76rem;line-height:1.1;display:inline-flex}button.tag{cursor:pointer}.tag.selected,.tag.brand-active{color:var(--brand-accent);border-color:color-mix(in srgb, var(--brand-accent) 48%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--brand-accent) 13%, transparent), color-mix(in srgb, var(--brand-primary) 15%, transparent))}.tag:has(a){color:inherit}.stats{margin-bottom:var(--space-4);grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.stat{background:linear-gradient(180deg, #ffffff0b, #ffffff04), var(--card2);border:1px solid var(--line);border-radius:var(--radius-lg);text-align:center;padding:14px 10px}.stat strong{font-size:clamp(1.45rem,6vw,1.9rem);line-height:1;display:block}.stat span{color:var(--muted);margin-top:5px;font-size:.76rem;display:block}.program,.exercise,.coach{background:linear-gradient(180deg, #ffffff0a, #ffffff03), var(--card2);border:1px solid var(--line);border-radius:var(--radius-lg);color:inherit;transition:transform .16s var(--ease), border-color .16s var(--ease), background-color .16s var(--ease);margin-bottom:13px;padding:16px}.program{width:100%;display:block}.flow-card-media{aspect-ratio:16/9;background:#0000003d;border:1px solid #ffffff14;border-radius:14px;width:100%;margin-bottom:12px;overflow:hidden}.flow-card-media img{object-fit:cover;width:100%;height:100%;display:block}button.program{cursor:pointer;text-align:left}.program.featured{background:linear-gradient(135deg, #7c5cff47, #27f0d21c), var(--card2);outline:1px solid #27f0d25c}.program.brand-highlight{border-color:color-mix(in srgb, var(--brand-accent) 48%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--brand-primary) 18%, transparent), color-mix(in srgb, var(--brand-accent) 9%, transparent)), var(--card2)}.brand-icon-tile,.gym-preset-badge{border:1px solid var(--line);background:linear-gradient(135deg, color-mix(in srgb, var(--brand-primary) 22%, transparent), color-mix(in srgb, var(--brand-accent) 12%, transparent)), #ffffff0b;color:var(--text);place-items:center;font-weight:1000;display:grid}.gym-preset-badge{border-radius:12px;width:36px;height:36px;font-size:.78rem}.exercise{border-radius:20px;padding:15px}.coach{border-radius:18px;margin-bottom:10px;padding:14px}.me{background:#27f0d21a;border-color:#27f0d247}.progressbar{background:#ffffff14;border-radius:999px;height:9px;margin-top:12px;overflow:hidden}.progressbar div{background:linear-gradient(90deg, var(--brand-primary), var(--brand-accent));height:100%;transition:width .24s var(--ease);border-radius:999px}.active-workout-header{margin:0 0 10px;padding:4px 2px 0}.active-workout-location,.active-workout-progress-label{justify-content:space-between;align-items:center;gap:12px;display:flex}.active-workout-location p{overflow-wrap:anywhere;min-width:0;color:var(--muted-strong);margin:0;font-size:.9rem;font-weight:800}.active-workout-location a{min-width:64px;min-height:44px;color:var(--brand-accent);flex:none;justify-content:center;align-items:center;font-size:.82rem;font-weight:900;display:inline-flex}.active-workout-header h1{overflow-wrap:anywhere;margin:7px 0 3px;font-size:clamp(1.9rem,8vw,2.55rem);line-height:1.02}.active-workout-meta{color:var(--muted);margin:0;font-size:.88rem;line-height:1.3}.active-workout-meta span{color:var(--muted-strong);margin:0 4px}.active-workout-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.active-workout-actions .btn{min-height:46px}.active-workout-progress{margin:0 2px 10px}.active-workout-progress-label{color:var(--muted-strong);margin-bottom:6px;font-size:.78rem;font-weight:850}.active-workout-progress-label span:last-child{color:var(--brand-accent)}.active-workout-progress-track{background:#ffffff17;border-radius:999px;height:5px;overflow:hidden}.active-workout-progress-track div{border-radius:inherit;background:linear-gradient(90deg, var(--brand-primary), var(--brand-accent));height:100%;transition:width .24s var(--ease)}.planning-brief-card{margin-bottom:var(--space-3);padding:0;overflow:hidden}.card.planning-brief-card{padding:0}.planning-brief-toggle{width:100%;min-height:92px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:14px 15px}.planning-brief-toggle-row{align-items:flex-start;gap:10px}.planning-brief-toggle[aria-expanded=false]{min-height:64px;padding:8px 14px}.planning-brief-toggle[aria-expanded=false] .planning-brief-toggle-row{align-items:center}.planning-brief-toggle[aria-expanded=false] h2{font-size:1.08rem;line-height:1.05}.planning-brief-toggle[aria-expanded=false] .planning-brief-meta{margin-top:3px;font-size:.8rem;line-height:1.12}.planning-brief-meta{color:var(--muted-strong);margin:6px 0 0;font-size:.88rem;font-weight:800;line-height:1.22}.planning-brief-action{min-height:32px;color:var(--brand-accent);background:#ffffff0e;border:1px solid #ffffff1f;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 10px;font-size:.75rem;font-weight:900;line-height:1;display:inline-flex}.planning-brief-summary{color:#dee2f0d1;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:7px 0 0;font-size:.92rem;line-height:1.25;display:-webkit-box;overflow:hidden}.planning-brief-details{padding:0 15px 15px}.planning-detail-label{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.planning-detail-copy{color:var(--muted-strong);margin:6px 0 12px;line-height:1.35}.planning-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:2px 0 13px;display:grid}.planning-detail-grid div{background:#00000024;border:1px solid #ffffff1a;border-radius:14px;min-width:0;padding:9px 10px}.planning-detail-grid span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:850;display:block;overflow:hidden}.planning-detail-grid strong{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:4px;font-size:.8rem;line-height:1.18;display:-webkit-box;overflow:hidden}.planning-exercise-card{animation:workoutModeIn .22s var(--ease);gap:10px;padding:14px;display:grid}.planning-exercise-topline{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.planning-exercise-topline p{color:var(--muted-strong);margin:0;font-size:.84rem;font-weight:900}.planning-return-current{color:var(--brand-accent);text-align:left;cursor:pointer;background:0 0;border:0;margin-top:4px;padding:0;font-size:.74rem;font-weight:900}.planning-exercise-title{overflow-wrap:anywhere;margin:0;font-size:clamp(1.42rem,6vw,2rem);line-height:1.04}.planning-poster{isolation:isolate;aspect-ratio:2;border-radius:var(--radius-lg);width:100%;min-height:112px;max-height:168px;box-shadow:var(--shadow-soft);cursor:pointer;background:#ffffff0e;border:1px solid #5ce0b033;padding:0;display:block;position:relative;overflow:hidden}.planning-poster img{animation:workoutMediaIn .24s var(--ease)}.planning-poster-fallback{color:var(--text);text-align:center;background:radial-gradient(circle at 28% 22%, #27f0d229, transparent 32%), linear-gradient(135deg, #7c5cff38, #27f0d21a), var(--card2);place-items:center;gap:5px;display:grid}.planning-poster-fallback span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:900}.planning-poster-fallback strong{overflow-wrap:anywhere;max-width:min(92%,360px);font-size:clamp(1.05rem,4.2vw,1.35rem);line-height:1.08}.planning-poster-play{pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.planning-poster-play span{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#080c1670;border:1px solid #ffffff42;border-radius:999px;width:38px;height:38px;position:relative}.planning-poster-play span:after{content:"";border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:10px solid #ffffffe6;width:0;height:0;position:absolute;top:50%;left:53%;transform:translate(-50%,-50%)}.planning-exercise-cue{color:#dee2f0b3;text-align:left;cursor:pointer;overflow-wrap:break-word;-webkit-line-clamp:2;background:0 0;border:0;-webkit-box-orient:vertical;width:100%;margin:0;padding:0;font-size:.91rem;line-height:1.28;display:-webkit-box;overflow:hidden}.planning-exercise-cue:focus-visible{outline-offset:3px;border-radius:8px;outline:2px solid #27f0d2b8}.planning-equipment-label{color:var(--muted);margin:-2px 0 0;font-size:.78rem;font-weight:850;line-height:1.2}.planning-prescription{border-radius:var(--radius-md);background:#00000029;border:1px solid #ffffff1c;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:9px 11px;display:flex}.planning-prescription strong{color:var(--text);font-size:1.02rem;font-weight:950}.planning-sets-toggle{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:inline-flex}.planning-sets-toggle>span{color:var(--brand-accent);white-space:nowrap;font-size:.72rem;font-weight:900}.planning-prescription>span{color:var(--muted-strong);flex:none;font-size:.86rem;font-weight:850}.planning-set-list{min-width:0;color:var(--text);flex:1 0 100%;gap:3px;font-size:.9rem;font-weight:850;line-height:1.2;display:grid}.planning-start-button{min-height:48px;margin-top:0;font-size:1rem}.planning-inline-tools{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:8px;margin-left:auto;display:inline-flex}.planning-swap-inline{min-height:40px;color:var(--brand-accent);white-space:nowrap;cursor:pointer;background:#ffffff0e;border:1px solid #ffffff1f;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:.76rem;font-weight:950;display:inline-flex}.planning-edit-inline{min-height:40px;color:var(--muted-strong);white-space:nowrap;cursor:pointer;background:#ffffff0b;border:1px solid #ffffff1f;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:.76rem;font-weight:950;display:inline-flex}@media (max-width:360px){.planning-exercise-topline{order:1}.planning-exercise-title{order:2}.planning-prescription{order:3}.planning-start-button{order:4}.planning-poster{order:5}.planning-exercise-cue{order:6}.planning-equipment-label{order:7}.planning-swap-inline,.planning-edit-inline{min-height:36px;padding:0 9px;font-size:.7rem}.workout-icon-menu-button{width:38px;height:38px}}@media (max-width:390px){.active-workout-header{margin-bottom:7px}.active-workout-header h1{margin-top:5px;font-size:clamp(1.55rem,8vw,1.95rem)}.active-workout-meta{font-size:.82rem}.planning-brief-toggle{min-height:72px;padding:11px 12px}.planning-brief-toggle[aria-expanded=false]{min-height:56px;padding:8px 11px}.planning-brief-toggle[aria-expanded=false] h2{font-size:1.02rem}.planning-brief-meta{margin-top:4px;font-size:.8rem}.planning-brief-summary{-webkit-line-clamp:1;margin-top:5px;font-size:.84rem}.planning-brief-action{min-height:30px;padding:0 9px;font-size:.7rem}.planning-detail-grid{grid-template-columns:1fr}.planning-exercise-card{gap:7px;padding:12px}.planning-exercise-title{font-size:clamp(1.24rem,5.8vw,1.55rem)}.planning-poster{aspect-ratio:2.45;border-radius:var(--radius-md);min-height:90px;max-height:116px}.planning-exercise-cue{-webkit-line-clamp:1;font-size:.84rem;line-height:1.22}.planning-prescription{min-height:36px;padding:7px 9px}.planning-prescription strong,.planning-set-list{font-size:.86rem}.planning-sets-toggle>span{font-size:.68rem}.planning-prescription>span{font-size:.78rem}.planning-start-button{min-height:44px}}.planning-upcoming{margin:4px 0 var(--space-4);animation:workoutFadeIn .2s var(--ease)}.planning-upcoming>.split{padding-inline:2px}.upcoming-exercise-strip{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch;grid-auto-columns:minmax(132px,40%);grid-auto-flow:column;gap:10px;padding:1px 0 10px;scroll-padding:0;display:grid;overflow:auto hidden}.upcoming-exercise-strip::-webkit-scrollbar{display:none}.upcoming-exercise-item{min-width:0;position:relative}.upcoming-exercise-card{border-radius:var(--radius-md);width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;scroll-snap-align:start;transition:border-color .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease);background:#ffffff0b;border:1px solid #ffffff1a;grid-template-rows:70px auto auto auto;gap:7px;padding:8px;display:grid;box-shadow:0 10px 22px #00000029}.upcoming-action-menu{z-index:14;min-width:108px;box-shadow:var(--shadow-soft);background:#0a101cfa;border:1px solid #ffffff24;border-radius:14px;display:grid;position:absolute;top:8px;right:8px;overflow:hidden}.upcoming-action-menu button{min-height:36px;color:var(--text);text-align:left;background:0 0;border:0;border-bottom:1px solid #ffffff14;padding:0 11px;font-size:.78rem;font-weight:850}.upcoming-action-menu button:last-child{border-bottom:0}.upcoming-action-menu button:hover,.upcoming-action-menu button:focus-visible{background:#27f0d21f}.upcoming-exercise-card.is-current{border-color:#27f0d2b8;box-shadow:0 0 0 1px #27f0d22e,0 12px 24px #00000038}.upcoming-exercise-card.is-preview{background:#7c5cff14;border-color:#7c5cffb3;box-shadow:0 0 0 1px #7c5cff29,0 12px 24px #0003}.upcoming-exercise-card img,.upcoming-exercise-fallback{object-fit:cover;background:#00000038;border-radius:12px;width:100%;height:70px;display:block}.upcoming-exercise-card img{animation:workoutMediaIn .2s var(--ease)}.upcoming-exercise-fallback{color:var(--brand-accent);place-items:center;font-weight:950;display:grid}.upcoming-exercise-order{width:24px;height:24px;color:var(--text);background:#080c16a3;border:1px solid #fff3;border-radius:999px;place-items:center;margin-top:-31px;margin-left:6px;font-size:.74rem;font-weight:950;display:inline-grid}.upcoming-exercise-card strong{min-height:34px;color:var(--text);overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.86rem;line-height:1.16;display:-webkit-box;overflow:hidden}.upcoming-exercise-card span:last-child{color:var(--muted-strong);font-size:.77rem;font-weight:850}.workout-overflow{z-index:12;flex:none;position:relative}.workout-icon-menu-button{width:40px;height:40px;color:var(--brand-accent);cursor:pointer;transition:border-color .18s var(--ease), background .18s var(--ease), transform .18s var(--ease);background:#ffffff0e;border:1px solid #ffffff1f;border-radius:999px;place-items:center;font-size:1.32rem;font-weight:950;line-height:1;display:inline-grid}.workout-overflow-menu{border-radius:var(--radius-md);min-width:196px;box-shadow:var(--shadow);background:#101827fa;border:1px solid #ffffff21;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden}.workout-overflow-menu button{min-height:44px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #ffffff14;padding:0 13px}.workout-overflow-menu button:last-child{border-bottom:0}.workout-overflow-menu button:hover,.workout-overflow-menu button:focus-visible{background:#27f0d21a}.active-movement-guide{flex:150px;gap:4px;min-width:0;display:grid}.active-movement-guide span,.active-next-preview span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:950}.active-movement-guide p{color:#dee2f0ad;overflow-wrap:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:clamp(14px,3.7vw,17px);line-height:1.25;display:-webkit-box;overflow:hidden}.active-next-preview{background:#27f0d20e;border:1px solid #27f0d22e;border-radius:16px;gap:3px;margin-top:10px;padding:10px 11px;display:grid}.active-next-preview strong{overflow-wrap:anywhere;color:var(--text);font-size:.95rem;line-height:1.16}.active-next-preview small{color:var(--muted-strong);font-size:.78rem;font-weight:850}@keyframes workoutFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes workoutModeIn{0%{opacity:.82;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes workoutMediaIn{0%{opacity:0;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}.replacement-assistant{border-radius:var(--radius-lg);background:radial-gradient(circle at 100% 0, #27f0d217, transparent 42%), linear-gradient(180deg, #ffffff0b, #ffffff03), var(--card2);border:1px solid #5ce0b03d;margin-bottom:13px;padding:16px;box-shadow:0 18px 38px #0003}.replacement-assistant-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.replacement-assistant-heading p{color:var(--brand-accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.75rem;font-weight:900}.replacement-assistant-heading h2{overflow-wrap:anywhere;margin:0}.replacement-assistant-heading>button{border:1px solid var(--line);min-width:58px;min-height:44px;color:var(--muted-strong);background:#ffffff0a;border-radius:14px;flex:none;justify-content:center;align-items:center;font-weight:850;display:inline-flex}.replacement-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;display:grid}.replacement-category-grid button,.replacement-equipment button{border:1px solid var(--line);min-height:44px;color:var(--muted-strong);background:#ffffff09;border-radius:14px;font-size:.8rem;font-weight:850;line-height:1.15}.replacement-category-grid button:first-child{grid-column:1/-1}.replacement-category-grid button.selected,.replacement-equipment button.selected{color:var(--text);background:#27f0d21f;border-color:#5ce0b094;box-shadow:inset 0 0 0 1px #27f0d21a}.replacement-equipment{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.replacement-equipment button{flex:105px;padding:8px 10px}.replacement-result-count{color:var(--muted);margin:13px 0 8px;font-size:.78rem;font-weight:750}.replacement-results{gap:8px;display:grid}.replacement-card{border:1px solid var(--line);width:100%;min-height:102px;color:inherit;text-align:left;background:#00000029;border-radius:18px;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;display:grid}.replacement-card:hover{background:#27f0d20e;border-color:#5ce0b061}.replacement-card-media{width:78px;height:78px;color:var(--brand-accent);background:#ffffff0b;border:1px solid #5ce0b02e;border-radius:15px;place-items:center;font-size:1.65rem;font-weight:950;display:grid;overflow:hidden}.replacement-card-media img{object-fit:cover;width:100%;height:100%}.replacement-card-copy{gap:2px;min-width:0;display:grid}.replacement-card-copy strong{overflow-wrap:anywhere;font-size:.96rem;line-height:1.14}.replacement-card-copy>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;line-height:1.25;overflow:hidden}.replacement-card-copy small{color:var(--muted-strong);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:.72rem;line-height:1.25;display:-webkit-box;overflow:hidden}.replacement-card-action{color:var(--brand-accent);font-size:.76rem;font-weight:900}.replacement-empty{margin:0}.num{width:32px;height:32px;color:var(--accent);background:#27f0d221;border:1px solid #27f0d23d;border-radius:50%;place-items:center;font-weight:950;display:grid}.bottom-nav{left:50%;bottom:calc(14px + env(safe-area-inset-bottom));z-index:50;-webkit-backdrop-filter:blur(20px)saturate(145%);background:#0c121ee0;border:1px solid #d5e2ff29;border-radius:24px;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;width:min(500px,100% - 24px);min-height:60px;padding:6px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 18px 44px #00000061}.nav-item{min-width:0;color:var(--muted);text-align:center;white-space:nowrap;transition:transform .16s var(--ease), background .16s var(--ease), color .16s var(--ease);border-radius:16px;place-items:center;gap:2px;padding:6px 2px;font-size:.58rem;line-height:1.08;display:grid;overflow:hidden}.nav-item.active{color:var(--brand-accent);background:linear-gradient(135deg,#7c5cff2e,#27f0d229)}.nav-icon,.nav-item svg{width:18px;height:18px;font-size:17px;line-height:1;display:block}.timer{text-align:center;background:conic-gradient(var(--accent) var(--progress), #ffffff14 0), radial-gradient(circle, var(--card) 62%, transparent 63%);width:190px;height:190px;box-shadow:inset 0 0 0 1px #ffffff0d, var(--shadow-soft);border-radius:50%;place-items:center;margin:18px auto;display:grid}.timer strong{font-size:2.05rem;display:block}.timer span{color:var(--muted)}.performance-timer-card,.performance-plan-card,.performance-notes-card{padding:16px}.performance-timer-grid{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;margin-top:12px;display:grid}.performance-session-timer{width:132px;height:132px;margin:0}.performance-session-timer strong{font-size:1.58rem}.performance-session-timer span{padding:0 12px;font-size:.72rem;font-weight:850;line-height:1.1;display:block}.performance-timer-copy{min-width:0}.performance-timer-copy p{color:var(--brand-accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.72rem;font-weight:950}.performance-timer-copy h2{overflow-wrap:anywhere;margin:0;font-size:clamp(1.25rem,5.2vw,1.8rem);line-height:1.08}.performance-timer-controls{grid-template-columns:1fr 1fr 1fr;margin-top:12px}.performance-timer-controls .btn{min-width:0;min-height:44px}.performance-plan-list{gap:8px;margin-top:12px;display:grid}.performance-plan-row{background:#ffffff09;border:1px solid #ffffff14;border-radius:16px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:8px 10px;display:grid}.performance-plan-row.active{background:#27f0d217;border-color:#27f0d27a}.performance-plan-number{width:32px;height:32px;color:var(--text);background:#ffffff12;border-radius:999px;place-items:center;font-size:.82rem;font-weight:950;display:grid}.performance-plan-row strong{overflow-wrap:anywhere;color:var(--text);font-size:.96rem;line-height:1.15;display:block}.performance-plan-row small{color:var(--muted);margin-top:2px;font-size:.74rem;font-weight:800;display:block}.performance-notes-card{padding:12px 16px}.performance-notes-toggle{width:100%;min-height:38px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.performance-notes-toggle:focus-visible{outline:2px solid var(--brand-accent);outline-offset:4px}.performance-notes-toggle span{font-size:1rem;font-weight:950}.performance-notes-toggle strong{color:var(--brand-accent);font-size:.82rem}.performance-notes-list{gap:8px;margin-top:10px;display:grid}.performance-notes-list p{color:var(--muted-strong);background:#ffffff09;border:1px solid #ffffff14;border-radius:14px;margin:0;padding:9px 10px;font-size:.88rem;line-height:1.35}.performance-player-shell{max-width:520px;min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(22px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));margin:0 auto}.performance-player-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px;display:grid}.performance-player-header p,.performance-player-kicker,.performance-elapsed{color:var(--brand-accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:950}.performance-player-header h1{overflow-wrap:anywhere;margin:2px 0 0;font-size:clamp(1.18rem,5vw,1.62rem);line-height:1.05}.performance-exit{min-height:40px;color:var(--text);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:999px;padding:0 14px;font-weight:900}.performance-progress-bar{background:#ffffff14;border-radius:999px;height:8px;margin-bottom:12px;overflow:hidden}.performance-progress-bar span{border-radius:inherit;background:linear-gradient(90deg, var(--brand-primary), var(--brand-accent));height:100%;transition:width .42s var(--ease);display:block}.performance-player-main,.performance-complete-card{box-shadow:var(--shadow-card);background:linear-gradient(#1f2839f5,#111827f5);border:1px solid #ffffff1a;border-radius:30px;padding:18px}.performance-player-main{text-align:center}.performance-player-main h2,.performance-complete-card h1{overflow-wrap:anywhere;max-width:100%;margin:6px auto 14px;font-size:clamp(1.7rem,8vw,2.55rem);line-height:.98}.performance-player-ring{width:min(72vw,268px);height:min(72vw,268px);margin:10px auto 16px}.performance-player-ring strong{font-size:clamp(2.1rem,12vw,3.75rem);line-height:.95}.performance-player-ring span{max-width:160px;color:var(--muted);margin:6px auto 0;font-size:.78rem;font-weight:900;line-height:1.1;display:block}.performance-metric-grid{grid-template-columns:repeat(2,minmax(0,auto));justify-content:center;gap:clamp(10px,3vw,16px);margin:8px auto 14px;display:grid}.performance-metric-circle{--metric-progress:100%;--metric-color:var(--brand-accent);text-align:center;background:conic-gradient(var(--metric-color) var(--metric-progress), #ffffff14 0), radial-gradient(circle, #111827fa 60%, transparent 61%);width:clamp(118px,38vw,158px);height:clamp(118px,38vw,158px);box-shadow:inset 0 0 0 1px #ffffff0e, 0 18px 46px color-mix(in srgb, var(--metric-color) 18%, transparent);border-radius:999px;place-items:center;padding:10px;display:grid}.performance-metric-circle-target{--metric-color:var(--brand-primary)}.performance-metric-circle-time{background:radial-gradient(circle, #111827fa 0 59%, transparent 60%), conic-gradient(var(--brand-accent) var(--metric-progress), #ffffff14 0);position:relative;box-shadow:inset 0 0 0 1px #27f0d224,0 18px 46px #27f0d21f}.performance-metric-circle-time span{color:var(--text);font-weight:980}.performance-metric-circle strong,.performance-metric-circle span{display:block}.performance-metric-circle strong{overflow-wrap:anywhere;max-width:100%;color:var(--text);font-size:clamp(1.42rem,7.5vw,2.2rem);line-height:.92}.performance-metric-circle span{max-width:96px;color:var(--muted-strong);letter-spacing:.07em;text-transform:uppercase;margin:7px auto 0;font-size:clamp(.58rem,2.4vw,.72rem);font-weight:950;line-height:1.05}.performance-player-meta,.performance-player-controls,.performance-secondary-controls{gap:10px;margin-top:14px;display:grid}.performance-player-meta{flex-wrap:wrap;justify-content:center;display:flex}.performance-preview-grid{text-align:left;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.performance-preview-grid div{background:#ffffff0a;border:1px solid #ffffff14;border-radius:18px;min-width:0;padding:11px}.performance-preview-grid span{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:900;display:block}.performance-preview-grid strong{overflow-wrap:anywhere;color:var(--text);font-size:.95rem;line-height:1.1;display:block}.performance-player-controls{grid-template-columns:.74fr 1.25fr .74fr;align-items:stretch}.performance-player-controls .btn,.performance-secondary-controls .btn{min-width:0}.performance-primary-action{min-height:58px;font-size:1.05rem}.performance-secondary-controls{grid-template-columns:1fr 1fr}.performance-up-next-list{text-align:left;gap:8px;margin:12px 0 16px;display:grid}.performance-up-next-list span{color:var(--muted-strong);background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;padding:10px 12px;font-weight:850}.performance-transition-card{min-height:470px;animation:performance-card-in .42s var(--ease) both;align-content:center;display:grid}.performance-transition-check,.performance-success-mark{width:64px;height:64px;color:var(--green);animation:performance-check-pop .44s var(--ease) both;background:radial-gradient(circle,#2af6b847,#2af6b81a);border:1px solid #2af6b86b;border-radius:999px;place-items:center;margin:0 auto 12px;font-size:2rem;font-weight:950;display:grid;box-shadow:0 18px 46px #2af6b829}.performance-transition-stack{text-align:left;gap:10px;margin-top:10px;display:grid}.performance-transition-row{background:#ffffff0a;border:1px solid #ffffff14;border-radius:18px;padding:12px}.performance-transition-row span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;font-weight:900;display:block}.performance-transition-row strong{overflow-wrap:anywhere;color:var(--text);font-size:1rem;line-height:1.1;display:block}.performance-transition-done{animation:performance-exercise-out .42s var(--ease) both}.performance-transition-next{animation:performance-exercise-in .42s var(--ease) both;background:linear-gradient(135deg,#2af6b81a,#7c5cff14);border-color:#2af6b847}.performance-elapsed{color:var(--muted);letter-spacing:0;text-transform:none;margin-top:12px}.performance-complete-card{gap:12px;display:grid}.performance-complete-card-success{animation:performance-card-in .48s var(--ease) both}.performance-complete-card p{margin:0}.performance-complete-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.performance-complete-grid div{background:#ffffff0a;border:1px solid #ffffff14;border-radius:18px;padding:12px}.performance-complete-grid strong,.performance-complete-grid span{display:block}.performance-complete-grid strong{color:var(--text);font-size:1.1rem}.performance-complete-grid span{color:var(--muted);margin-top:3px;font-size:.76rem;font-weight:800}.performance-field{color:var(--muted-strong);gap:8px;font-weight:850;display:grid}@keyframes performance-card-in{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes performance-check-pop{0%{opacity:0;transform:scale(.76)}70%{opacity:1;transform:scale(1.07)}to{opacity:1;transform:scale(1)}}@keyframes performance-exercise-out{0%{opacity:1;transform:translateY(0)}to{opacity:.62;transform:translateY(-6px)}}@keyframes performance-exercise-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.flow-session-shell{padding-bottom:112px}.flow-session-hero{min-height:168px}.flow-guide-card{overflow:hidden}.flow-current-link{display:inline-block}.flow-current-link h2{margin-top:2px}.flow-timer{width:218px;height:218px}.flow-timer strong{font-size:2.65rem}.flow-progress-copy{margin:8px 0 0;font-size:.86rem}.flow-controls{margin-top:var(--space-4);grid-template-columns:1.25fr .85fr .85fr;gap:8px;display:grid}.flow-path{gap:8px;margin-top:12px;display:grid}.flow-path-item{border:1px solid var(--line);border-radius:var(--radius-md);min-height:52px;transition:transform .16s var(--ease), border-color .16s var(--ease), background .16s var(--ease);background:#ffffff0a;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px;display:grid}.flow-path-item span{width:28px;height:28px;color:var(--accent);background:#27f0d21c;border-radius:50%;place-items:center;font-size:.78rem;font-weight:950;display:grid}.flow-path-item strong{min-width:0}.flow-path-item small{color:var(--muted);font-weight:800}.flow-path-item.active{background:linear-gradient(135deg,#27f0d221,#7c5cff1f);border-color:#27f0d270}.flow-path-item.done{opacity:.76}.flow-complete-hero{gap:var(--space-5)}.flow-player-shell{min-height:100svh;padding:max(14px, env(safe-area-inset-top)) 14px max(18px, env(safe-area-inset-bottom));overflow-x:hidden}.flow-player{align-content:start;gap:12px;width:min(100%,520px);min-height:calc(100svh - 28px);margin:0 auto;display:grid}.flow-player-top,.flow-now-panel,.flow-next-card,.flow-completion-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:radial-gradient(circle at 100% 0, #27f0d214, transparent 34%), linear-gradient(180deg, #ffffff0e, #ffffff04), var(--card);box-shadow:var(--shadow-soft)}.flow-player-top{justify-content:space-between;align-items:flex-start;gap:12px;padding:14px;display:flex}.flow-player-top p,.flow-now-panel p,.flow-next-card p,.flow-completion-card p{color:var(--brand-accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 5px;font-size:.72rem;font-weight:900}.flow-player-top h1{font-size:clamp(1.62rem,7vw,2.35rem)}.flow-session-progress{padding:0 2px}.flow-session-progress .split{color:var(--muted-strong);margin-bottom:7px;font-size:.78rem;font-weight:850}.flow-session-media-block{gap:10px;display:grid;position:relative}.flow-guide-stage{width:100%;animation:flowMediaEnter .28s var(--ease) both;transition:min-height .28s var(--ease), box-shadow .28s var(--ease);background:radial-gradient(circle at 50% 12%,#7c5cff3d,#0000 38%),linear-gradient(145deg,#27f0d21f,#7c5cff17),#0c1220;border:1px solid #5ce0b038;border-radius:26px;position:relative;overflow:hidden;box-shadow:0 18px 46px #00000047}.flow-guide-stage.expanded{min-height:clamp(320px,78vw,430px)}.flow-guide-stage.collapsed{min-height:86px}.flow-media-stage{width:100%;animation:flowMediaEnter .28s var(--ease) both;isolation:isolate;background:#0b0f18;border:1px solid #5ce0b038;border-radius:24px;position:relative;overflow:hidden;box-shadow:0 18px 46px #0000003d}.flow-media-carousel{overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;width:100%;display:grid;overflow-x:auto}.flow-media-carousel::-webkit-scrollbar{display:none}.flow-media-frame{aspect-ratio:16/9;scroll-snap-align:center;background:#0b0f18;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.flow-media-image{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.flow-media-pair,.flow-media-steps{z-index:1;transition:opacity .28s var(--ease);background:#05070c;gap:2px;display:grid;position:absolute;inset:0}.flow-media-pair{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-media-steps{grid-template-columns:repeat(var(--flow-step-count,3), minmax(0, 1fr))}.flow-media-pair img,.flow-media-steps img{object-fit:contain;border-radius:0;width:100%;min-width:0;height:100%;position:static}.flow-media-pager{background:#080c16c7;border-top:1px solid #ffffff14;justify-content:center;gap:6px;padding:8px;display:flex}.flow-media-pager span{min-height:30px;color:var(--muted-strong);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:.72rem;font-weight:900;display:inline-flex}.flow-media-instruction{background:radial-gradient(circle at 100% 0,#27f0d229,#0000 30%),radial-gradient(circle at 0 100%,#7c5cff33,#0000 34%),linear-gradient(145deg,#111827eb,#060a18fa);flex-direction:column;justify-content:space-between;gap:12px;padding:clamp(14px,3.8vw,22px);display:flex;position:absolute;inset:0}.flow-guide-stage>.flow-media-instruction{min-height:inherit;position:relative}.flow-media-instruction-head{min-width:0}.flow-guide-toggle{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.flow-guide-toggle:focus-visible{outline:2px solid var(--brand-accent);outline-offset:4px}.flow-media-instruction-head.flow-guide-toggle,.flow-guide-toggle.collapsed{justify-content:space-between;align-items:center;gap:12px;display:flex}.flow-guide-toggle.collapsed{background:radial-gradient(circle at 100% 0,#27f0d224,#0000 34%),linear-gradient(145deg,#111827c7,#060a18f0);min-height:86px;padding:15px 16px}.flow-guide-toggle.collapsed div{min-width:0}.flow-guide-toggle.collapsed strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:1.08rem;font-weight:950;line-height:1.1;display:block;overflow:hidden}.flow-guide-toggle.collapsed small{min-width:fit-content;color:var(--muted);font-size:.74rem;font-weight:850}.flow-guide-toggle b{width:30px;height:30px;color:var(--text);background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;flex:0 0 30px;place-items:center;font-size:1.02rem;line-height:1;display:grid}.flow-media-instruction-head span,.flow-guide-toggle.collapsed span,.flow-media-instruction-grid span,.flow-media-instruction-foot span{color:var(--brand-accent);letter-spacing:.08em;text-transform:uppercase;font-size:.64rem;font-weight:950;display:block}.flow-media-instruction-head h2{color:var(--text);letter-spacing:0;text-wrap:balance;margin:0;font-size:clamp(1.22rem,5.3vw,1.9rem);font-weight:950;line-height:1.02}.flow-media-instruction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0;display:grid}.flow-media-instruction-grid div{background:#060a1875;border:1px solid #ffffff1a;border-radius:16px;min-width:0;padding:10px}.flow-media-instruction-grid p{-webkit-line-clamp:3;color:var(--muted-strong);-webkit-box-orient:vertical;margin:4px 0 0;font-size:.78rem;font-weight:760;line-height:1.28;display:-webkit-box;overflow:hidden}.flow-media-instruction-grid .flow-media-instruction-tip{grid-column:1/-1}.flow-media-instruction-grid .flow-media-instruction-tip p{-webkit-line-clamp:2}.flow-media-instruction-foot{background:#27f0d214;border:1px solid #27f0d233;border-radius:999px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;display:flex}.flow-media-instruction-foot strong{color:var(--text);font-size:.94rem;font-weight:950}.flow-media-badge{z-index:2;color:var(--muted-strong);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080c169e;border:1px solid #ffffff29;border-radius:999px;padding:7px 10px;font-size:.74rem;font-weight:900;position:absolute;top:12px;right:12px}.flow-media-preload{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.flow-tutorial-media{aspect-ratio:16/9;object-fit:contain;background:#05070c;border-radius:18px;width:100%;display:block;overflow:hidden}.flow-tutorial-media.flow-media-pair,.flow-tutorial-media.flow-media-steps{height:auto;position:relative;inset:auto}@keyframes flowMediaEnter{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:scale(1)}}.flow-now-panel{padding:14px}.flow-now-panel a h2{overflow-wrap:anywhere;margin-top:2px}.flow-timer-grid{grid-template-columns:152px minmax(0,1fr);align-items:center;gap:14px;margin-top:13px;display:grid}.flow-timer-grid .flow-timer{width:152px;height:152px;margin:0}.flow-timer-grid .flow-timer strong{font-size:2.05rem}.flow-next-card h2{overflow-wrap:anywhere;display:block}.flow-playback-card{align-content:center;gap:8px;min-width:0;display:grid}.flow-playback-button{border-radius:20px;min-height:66px;font-size:clamp(1.02rem,4.4vw,1.28rem);line-height:1}.flow-playback-card span,.flow-next-card span,.flow-completion-card>span{color:var(--muted);font-size:.85rem;line-height:1.3;display:block}.flow-playback-card span{text-align:center;font-weight:860}.flow-next-card{padding:14px}.flow-now-panel .flow-controls{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.flow-now-panel .flow-controls .btn{min-width:0;min-height:44px}.flow-previous-button{appearance:none;min-height:34px;color:var(--muted-strong);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin:7px auto 0;padding:4px 10px;font-size:.8rem;font-weight:900;display:inline-flex}.flow-previous-button:disabled{opacity:.42;cursor:not-allowed}.flow-movement-strip{grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:7px;padding:4px 2px;display:grid}.flow-movement-dot{border:1px solid var(--line);min-height:34px;color:var(--muted);background:#ffffff0a;border-radius:999px;place-items:center;font-size:.78rem;font-weight:950;display:grid}.flow-movement-dot.active{color:var(--text);background:#27f0d224;border-color:#27f0d2a8}.flow-movement-dot.done{color:var(--brand-accent)}.flow-completion-shell{place-items:center;display:grid}.flow-completion-card{width:min(100%,520px);padding:18px}.flow-completion-card h1{margin-bottom:6px}.flow-completion-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px;display:grid}.input,.card input:not([type=checkbox]):not([type=radio]),.card textarea,.card select{border:1px solid var(--line);border-radius:var(--radius-md);width:100%;color:var(--text);transition:border-color .16s var(--ease), box-shadow .16s var(--ease), background .16s var(--ease);background:#080d18bd;padding:13px;box-shadow:inset 0 1px #ffffff0a}.card textarea{resize:vertical}.input::placeholder,.card input::placeholder,.card textarea::placeholder{color:#c9d3e47a}.input:focus,.card input:focus,.card textarea:focus,.card select:focus{border-color:#27f0d2a8;box-shadow:0 0 0 4px #27f0d21a,inset 0 1px #ffffff0a}.setgrid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.setbox{border:1px solid var(--line);border-radius:var(--radius-md);text-align:center;background:#080d18d1;padding:10px}.setbox small{color:var(--muted)}.setbox.done{outline:2px solid var(--green);border-color:#2af6b873}.notice{border-radius:var(--radius-md);color:var(--text);background:#27f0d21f;border:1px solid #27f0d257;padding:12px}.tutorial-shell{padding-bottom:112px}.tutorial-hero{gap:var(--space-5);min-height:168px}.tutorial-hero-top,.tutorial-media-header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.tutorial-media-header{margin-bottom:var(--space-3)}.tutorial-media-header p{text-transform:uppercase;letter-spacing:.08em;color:var(--muted-strong);margin:0 0 4px;font-size:.78rem}.tutorial-media-card{padding:14px}.tutorial-media-frame{aspect-ratio:4/3;background:linear-gradient(135deg,#7c5cff38,#27f0d21a),#080d18d1;border:1px solid #d5e2ff29;border-radius:24px;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0f}.tutorial-media-frame video,.tutorial-media-frame img{object-fit:cover;width:100%;height:100%;display:block}.tutorial-before-after-strip{scroll-snap-type:x mandatory;scrollbar-width:none;grid-auto-columns:100%;grid-auto-flow:column;width:100%;height:100%;display:grid;overflow-x:auto}.tutorial-before-after-strip::-webkit-scrollbar{display:none}.tutorial-before-after-strip figure{scroll-snap-align:center;width:100%;height:100%;margin:0;position:relative}.tutorial-before-after-strip figcaption{min-height:28px;color:var(--text);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#080d18b8;border:1px solid #d5e2ff2e;border-radius:999px;align-items:center;padding:6px 10px;font-size:.74rem;font-weight:900;display:inline-flex;position:absolute;bottom:12px;left:12px}.tutorial-visual-placeholder{place-items:center;gap:var(--space-4);padding:var(--space-5);text-align:center;display:grid}.tutorial-visual-placeholder strong{font-size:1.35rem;line-height:1.05;display:block}.tutorial-visual-placeholder p{max-width:28rem;margin:8px auto 0}.tutorial-motion-figure{width:126px;height:96px;position:relative}.tutorial-motion-figure span{background:linear-gradient(135deg, var(--brand-primary), var(--brand-accent));border-radius:999px;display:block;position:absolute;box-shadow:0 0 34px #27f0d247}.tutorial-motion-figure span:first-child{width:44px;height:44px;top:0;left:42px}.tutorial-motion-figure span:nth-child(2){width:92px;height:18px;top:48px;left:18px;transform:rotate(-12deg)}.tutorial-motion-figure span:nth-child(3){opacity:.74;width:118px;height:18px;top:74px;left:4px;transform:rotate(9deg)}.tutorial-tabs-card{padding:var(--space-3)}.tutorial-tabs{margin-bottom:var(--space-4);border:1px solid var(--line);background:#080d18b8;border-radius:22px;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;padding:4px;display:grid}.tutorial-tab{appearance:none;min-height:42px;color:var(--muted);cursor:pointer;transition:transform .16s var(--ease), background .16s var(--ease), color .16s var(--ease);background:0 0;border:0;border-radius:18px;font-size:.8rem;font-weight:900}.tutorial-tab.active{color:var(--bg);background:linear-gradient(135deg, var(--brand-primary), var(--brand-accent));box-shadow:0 10px 24px #27f0d229}.tutorial-tab:active{transform:scale(.98)}.tutorial-tab-panel{gap:var(--space-4);display:grid}.tutorial-tab-intro p{color:var(--muted-strong);margin:0}.tutorial-position-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tutorial-position-card{border:1px solid var(--line);background:#ffffff0b;border-radius:22px;min-width:0;padding:10px}.tutorial-position-media{aspect-ratio:1;background:#080d18c7;border-radius:16px;margin-bottom:10px;overflow:hidden}.tutorial-position-media img{object-fit:cover;width:100%;height:100%;display:block}.tutorial-position-placeholder{width:100%;height:100%;color:var(--accent);background:linear-gradient(135deg,#7c5cff3d,#27f0d21f),#080d18db;place-items:center;font-weight:950;display:grid}.tutorial-position-card strong{font-size:.95rem;display:block}.tutorial-position-card p{margin:5px 0 0;font-size:.75rem;line-height:1.3}.tutorial-cue-grid{gap:var(--space-4);display:grid}.tutorial-cue-list,.tutorial-guidance-list{gap:var(--space-2);color:var(--muted-strong);margin:10px 0 0;padding-left:20px;display:grid}.tutorial-cue-list li,.tutorial-guidance-list li{padding-left:2px;line-height:1.38}.tutorial-muscle-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tutorial-muscle-card{border:1px solid var(--line);background:#ffffff0b;border-radius:20px;min-width:0;padding:14px}.tutorial-muscle-card.primary{background:#27f0d21a;border-color:#27f0d261}.tutorial-muscle-card span{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;font-size:.72rem;display:block}.tutorial-muscle-card strong{font-size:1.05rem;line-height:1.05;display:block}.tutorial-equipment-strip,.tutorial-link-grid{gap:var(--space-2);flex-wrap:wrap;display:flex}.tutorial-accordion{border:1px solid var(--line);background:#ffffff0a;border-radius:18px;overflow:hidden}.tutorial-accordion summary{justify-content:space-between;align-items:center;gap:var(--space-3);cursor:pointer;min-height:48px;color:var(--text);padding:12px 14px;font-weight:900;list-style:none;display:flex}.tutorial-accordion summary::-webkit-details-marker{display:none}.tutorial-accordion summary span:last-child{color:var(--accent);font-size:1.2rem;line-height:1}.tutorial-accordion[open] summary{border-bottom:1px solid var(--line)}.tutorial-accordion[open] summary span:last-child{transform:rotate(45deg)}.tutorial-accordion>div{padding:2px 14px 14px}.empty-state,.loading-state{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);padding:var(--space-5);color:var(--muted);background:#ffffff08}.loading-state,.empty-state{gap:10px;display:grid}.skeleton{border-radius:var(--radius-sm);background:#fff1;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);animation:1.4s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}@keyframes shimmer{to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (min-width:800px){.shell{max-width:760px}.program-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.program{margin-bottom:0}.tutorial-media-frame{aspect-ratio:16/9}}@media (max-width:600px){.replacement-assistant{padding:14px}.replacement-card{grid-template-columns:68px minmax(0,1fr);gap:10px;min-height:94px;padding:9px}.replacement-card-media{grid-row:1/span 2;width:68px;height:68px}.replacement-card-action{grid-column:2}.shell{max-width:100%;padding:12px max(12px, env(safe-area-inset-left)) calc(92px + env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-right))}.row{flex-wrap:wrap}.row>*{min-width:min(140px,100%)}.card{border-radius:22px;margin-bottom:11px;padding:14px}.performance-timer-card,.performance-plan-card{padding:13px}.performance-timer-grid{grid-template-columns:110px minmax(0,1fr);gap:10px}.performance-session-timer{width:110px;height:110px}.performance-session-timer strong{font-size:1.32rem}.performance-session-timer span{font-size:.66rem}.performance-timer-copy h2{font-size:clamp(1.08rem,5vw,1.4rem)}.performance-timer-controls{grid-template-columns:1fr}.performance-timer-controls .btn{min-height:42px}.performance-plan-row{border-radius:14px;grid-template-columns:28px minmax(0,1fr) auto;gap:8px;min-height:48px;padding:7px 8px}.performance-plan-number{width:28px;height:28px;font-size:.76rem}.performance-plan-row strong{font-size:.9rem}.performance-player-shell{padding:max(12px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left))}.performance-player-header{grid-template-columns:auto minmax(0,1fr)}.performance-player-header>.tag{grid-column:1/-1;justify-self:start}.performance-player-main,.performance-complete-card{border-radius:24px;padding:14px}.performance-player-ring{width:min(68vw,226px);height:min(68vw,226px)}.performance-transition-card{min-height:420px}.performance-player-controls{grid-template-columns:1fr}.performance-primary-action{min-height:54px}.performance-preview-grid,.performance-secondary-controls,.performance-complete-grid{grid-template-columns:1fr}.hero{min-height:138px}.tutorial-hero{min-height:150px}.tutorial-media-card,.tutorial-tabs-card{padding:10px}.tutorial-media-frame{border-radius:20px}.tutorial-tabs{border-radius:19px;margin-bottom:12px}.tutorial-tab{border-radius:15px;min-height:40px;font-size:.74rem}.tutorial-position-grid{gap:8px}.tutorial-position-card{border-radius:18px;padding:8px}.tutorial-position-card p{font-size:.7rem}.flow-session-hero{min-height:150px}.flow-timer{width:190px;height:190px;margin:14px auto}.flow-timer strong{font-size:2.25rem}.flow-controls{grid-template-columns:1fr;gap:7px}.flow-path-item{border-radius:15px;grid-template-columns:30px 1fr auto;min-height:48px;padding:9px}.flow-player-shell{padding:10px max(10px, env(safe-area-inset-left)) max(14px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-right))}.flow-player{gap:9px;min-height:calc(100svh - 20px)}.flow-player-top,.flow-now-panel,.flow-next-card{border-radius:20px;padding:12px}.flow-player-top h1{font-size:clamp(1.45rem,7vw,2rem)}.flow-media-stage,.flow-guide-stage{border-radius:22px}.flow-guide-stage.expanded{min-height:340px}.flow-guide-stage.collapsed,.flow-guide-toggle.collapsed{min-height:78px}.flow-guide-toggle.collapsed{padding:13px 14px}.flow-guide-toggle.collapsed small{display:none}.flow-media-instruction{gap:9px;padding:12px}.flow-media-instruction-grid{gap:7px}.flow-media-instruction-grid div{border-radius:14px;padding:8px}.flow-media-instruction-grid p{font-size:.72rem;line-height:1.22}.flow-timer-grid{grid-template-columns:126px minmax(0,1fr);gap:10px}.flow-timer-grid .flow-timer{width:126px;height:126px}.flow-timer-grid .flow-timer strong{font-size:1.68rem}.flow-playback-button{border-radius:18px;min-height:58px}.flow-playback-card span,.flow-next-card span{font-size:.78rem}.flow-now-panel .flow-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-movement-strip{grid-template-columns:repeat(auto-fit,minmax(30px,1fr));gap:6px}.flow-movement-dot{min-height:30px;font-size:.72rem}.hero h1,h1{font-size:clamp(2.08rem,8.2vw,2.75rem);line-height:1.03}h2{font-size:clamp(1.35rem,5.4vw,1.9rem);line-height:1.06}p{font-size:.98rem;line-height:1.34}.btn{border-radius:16px;min-height:44px;padding:10px 13px;font-size:.95rem}.tag{min-height:30px;padding:6px 9px;font-size:.72rem}.tags{gap:6px;margin-top:8px}.program,.exercise{border-radius:18px;margin-bottom:8px;padding:12px}.program h2{font-size:1.35rem;line-height:1.06}.program p{margin:7px 0;font-size:.9rem;line-height:1.28}.program .row{border-top:1px solid #ffffff14;gap:8px;padding-top:8px;margin-top:8px!important}.program .btn{border-radius:12px;min-height:36px;padding:7px 10px;font-size:.84rem}.program .btn.secondary{background:0 0}.program .btn.full{width:100%}.split{gap:8px}.bottom-nav{border-radius:22px;gap:1px;width:calc(100% - 16px);min-height:56px;padding:5px;bottom:10px;left:8px;right:8px;transform:none}.nav-item{border-radius:14px;padding:5px 1px;font-size:.56rem;line-height:1.1}.nav-icon,.nav-item svg{width:17px;height:17px;font-size:16px}}@media (max-width:600px) and (max-height:740px){.flow-player-shell{padding-top:8px}.flow-player{gap:7px}.flow-player-top{padding:10px 12px}.flow-player-top h1{font-size:clamp(1.36rem,6.4vw,1.82rem)}.flow-session-progress .split{margin-bottom:5px}.flow-media-stage,.flow-guide-stage{border-radius:20px}.flow-guide-stage.expanded{min-height:292px}.flow-guide-stage.collapsed,.flow-guide-toggle.collapsed{min-height:70px}.flow-guide-toggle.collapsed{padding:11px 12px}.flow-guide-toggle.collapsed small{display:none}.flow-guide-toggle.collapsed strong{font-size:.98rem}.flow-media-instruction{gap:7px;padding:10px}.flow-media-instruction-head h2{font-size:clamp(1.05rem,5vw,1.34rem)}.flow-media-instruction-grid{gap:6px}.flow-media-instruction-grid div{border-radius:13px;padding:7px}.flow-media-instruction-grid p{-webkit-line-clamp:2;margin-top:3px;font-size:.67rem;line-height:1.18}.flow-media-instruction-foot{padding:7px 10px}.flow-now-panel{padding:11px}.flow-timer-grid{grid-template-columns:104px minmax(0,1fr);gap:9px;margin-top:9px}.flow-timer-grid .flow-timer{width:104px;height:104px}.flow-timer-grid .flow-timer strong{font-size:1.46rem}.flow-playback-card span{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.flow-now-panel .flow-controls{margin-top:10px}.flow-now-panel .flow-controls .btn{min-height:40px}}
