:root{--muted:#aab5c9}body{background:#0a1327}button{position:relative;overflow:hidden}button:disabled{opacity:.5;cursor:wait}.btn{min-height:48px;letter-spacing:.01em}.btn.primary:hover{background:#ffb735;box-shadow:0 8px 32px #fca31135;transform:translateY(-2px)}.btn.primary:active{transform:scale(.97)}.tap-wave{position:absolute;inset:0;background:radial-gradient(circle,#ffffff40,transparent 70%);pointer-events:none;animation:ripple .5s ease-out forwards}@keyframes ripple{from{transform:scale(.15);opacity:1}to{transform:scale(2);opacity:0}}.saving [data-complete-set],.saving [data-next-exercise],.saving [data-start-workout],.saving .set-dot{pointer-events:none;opacity:.6}.app-shell{background:radial-gradient(ellipse at 90% 8%,#28395480,transparent 50%),#101c34}.topbar{background:#14213de8;border-bottom:1px solid #ffffff0c}.topbar-title span{font-size:24px;letter-spacing:.08em}.topbar-title small{font-size:10px}.nav-icon svg{width:25px;height:25px}.bottom-nav small{font-size:10px}.bottom-nav button.active:before{content:'';position:absolute;top:0;width:22px;height:3px;background:#fca311;border-radius:4px}.bottom-nav button.active .nav-icon{filter:drop-shadow(0 0 8px #fca31166)}.card{border-color:#7184a82e;background:linear-gradient(145deg,#223353b3,#192843);animation:cardReveal .45s both;animation-delay:var(--delay,0ms)}@keyframes cardReveal{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.eyebrow{font-size:10px;letter-spacing:.16em}.page-intro{padding:14px 0 24px}.page-intro h1{font-size:54px;line-height:1;margin:0}.page-intro em,.welcome-hero em,.admin-shell em{font-style:normal;color:#fca311}.welcome-hero{position:relative;isolation:isolate;border-radius:28px;padding:26px 24px 22px;overflow:hidden;background:linear-gradient(120deg,#273b60,#15223c);border:1px solid #52648750;margin-bottom:16px}.welcome-hero .hello{font-size:15px;margin-bottom:10px}.welcome-hero h1{font-size:65px;line-height:.95;letter-spacing:-.01em;margin-bottom:18px}.welcome-hero>p:not(.eyebrow):not(.hello){font-size:12px;line-height:1.7;max-width:255px;color:#c2ccdc}.orbit-bg{position:absolute;z-index:-1;right:-155px;top:0;width:360px;height:360px;border:1px solid #fca31145;border-radius:50%;animation:orbitDrift 12s ease-in-out infinite}.orbit-bg:before,.orbit-bg:after{content:'';position:absolute;inset:30px;border:1px solid #fca31135;border-radius:50%}.orbit-bg:after{inset:75px;background:radial-gradient(circle,#fca31118,transparent)}@keyframes orbitDrift{50%{transform:translate(-20px,20px) rotate(12deg) scale(1.12)}}.hero-badges{display:flex;gap:8px;flex-wrap:wrap}.hero-badges span{border:1px solid #ffffff20;background:#ffffff09;border-radius:8px;padding:7px 10px;font-size:10px}.week-strip{display:flex;justify-content:space-between;padding:12px 6px 22px;margin-bottom:10px}.week-day{text-align:center;display:grid;gap:8px;font-size:10px;color:#9ca7ba}.week-day b{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ffffff16;border-radius:50%;font-size:12px;font-weight:600}.week-day.today b{border-color:#fca311;color:#fca311}.week-day.trained b{background:#fca311;color:#14213d;border-color:#fca311;box-shadow:0 0 15px #fca31120}.launch-grid{display:grid;gap:16px}.launch-card{position:relative;overflow:hidden;padding:20px}.launch-number{position:absolute;left:18px;top:9px;font:800 75px 'Barlow Condensed',sans-serif;color:#ffffff0c}.launch-art{width:190px;height:150px;margin:-15px 0 -22px auto;color:#fca311;position:relative;z-index:1}.equipment{width:100%;height:100%;color:#fca311;overflow:visible}.launch-card h2{font-size:31px;margin:10px 0 5px}.launch-card p{font-size:11px;color:#aab5c9;margin-bottom:20px}.launch-card:hover .launch-art{transform:translateY(-5px) rotate(-2deg)}.launch-art{transition:transform .35s ease}.workout-letter{border-radius:15px;background:linear-gradient(140deg,#ffbb44,#fca311);box-shadow:0 6px 20px #fca31122}.workout-summary{cursor:pointer;min-height:92px}.workout-summary h3{font-size:25px}.exercise-row{min-height:88px;cursor:pointer;transition:background .2s}.exercise-row:hover{background:#ffffff06}.exercise-row .row-icon{width:72px;height:65px;flex:none;background:#0c183180}.exercise-row b{font-size:13px}.exercise-row small{font-size:10px;margin-top:3px}.muscle-tag{display:inline-block;color:#fca311;font-size:9px;background:#fca31112;border-radius:5px;padding:3px 6px;margin-top:5px}.session-heading{display:flex;align-items:center;justify-content:space-between;margin:5px 0 24px;gap:10px}.session-heading h2{font-size:32px}.session-heading .eyebrow{margin-bottom:8px}.live-indicator{font-size:10px;white-space:nowrap;color:#c6d0e2;display:flex;gap:6px;align-items:center}.live-indicator i{width:6px;height:6px;background:#fca311;border-radius:50%;box-shadow:0 0 0 5px #fca31110;animation:livePulse 2s infinite}@keyframes livePulse{50%{box-shadow:0 0 0 8px #fca31105}}.training-card{padding:20px}.machine-visual{height:240px;margin:14px 0 20px;border-radius:20px;overflow:hidden;display:flex;align-items:center;padding:10px 15px 24px;background:radial-gradient(ellipse at 40% 50%,#36507155,#0b1730);border:1px solid #52648750}.technical-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px);background-size:22px 22px;mask-image:linear-gradient(0deg,transparent,#000)}.machine-stage{height:210px;flex:1;position:relative;filter:drop-shadow(0 16px 12px #080d1d50)}.muscle-panel{width:67px;border-left:1px solid #7184a850;padding-left:10px;position:relative;display:grid;justify-items:center}.muscle-map{width:60px;height:107px}.muscle-panel span{font-size:8px;text-transform:uppercase;color:#fca311;text-align:center;letter-spacing:.06em}.visual-caption{position:absolute;bottom:12px;left:18px;color:#8598b8;font-size:8px;letter-spacing:.09em}.equipment-live .machine-movement{transform-origin:100px 100px;animation:machineDemo 3.5s ease-in-out infinite}@keyframes machineDemo{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(3deg) translateY(-4px)}}.machine-name{line-height:1.6;margin-top:10px;font-size:11px}.exercise-title{font-size:42px;margin-top:8px}.metrics{gap:9px}.metric{padding:15px 5px;background:#0c173680;border:1px solid #52648730}.metric b{font-size:36px}.metric small{font-size:9px}.metric.weight button{width:30px;height:30px}.set-dot{width:48px;height:48px;border-radius:50%;font-size:15px}.sets-title{font-size:10px;letter-spacing:.04em;margin-bottom:13px}.training-actions .primary{height:56px;font-size:14px}.next-preview .mini-machine{width:65px;height:56px;flex:none}.next-preview span.chip{font-size:9px;flex:none}.session-queue{margin-top:16px}.queue-step{display:flex;gap:12px;align-items:center;padding:15px 0;border-bottom:1px solid #52648730;color:#8090ac}.queue-step>span{width:29px;height:29px;border:1px solid #526487;border-radius:50%;display:grid;place-items:center;font-size:11px;flex:none}.queue-step b{display:block;font-size:12px}.queue-step small{display:block;font-size:10px;margin-top:4px}.queue-step.current{color:#fca311}.queue-step.current>span,.queue-step.finished>span{background:#fca311;color:#14213d;border-color:#fca311}.queue-step.finished{color:#c4cede}.queue-foot{color:#8598b8;font-size:10px;line-height:1.6;margin:20px 0 0}.stat-card{position:relative;overflow:hidden;padding:20px}.stat-card:after{content:'';width:55px;height:55px;border:1px solid #fca31133;border-radius:50%;position:absolute;right:-10px;bottom:-10px}.stat-card b{font-size:44px}.stat-card span{font-size:10px}.ring-grid{max-width:450px;margin:24px auto}.ring{box-shadow:0 8px 30px #070d2140}.ring b{font-size:28px}.ring small{font-size:8px}.badge-list{grid-template-columns:repeat(3,1fr)}.badge{padding:20px 7px;filter:grayscale(1)}.badge.unlocked{filter:none;background:linear-gradient(145deg,#fca31115,#223353)}.badge.unlocked .medal{box-shadow:0 0 28px #fca31114,inset 0 0 0 3px #fca31125;animation:medalShine 5s infinite}@keyframes medalShine{50%{filter:brightness(1.2);transform:rotate(5deg)}}.history-card summary{min-height:50px}.settings-hero{padding:16px 0 24px}.settings-group .card{padding:5px 10px}.setting-row{min-height:70px}.setting-row label,.setting-row .setting-label{font-size:13px}.setting-row small{font-size:10px}.setting-row select{font-size:12px}.admin-entry{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit;padding:22px 15px;margin-top:20px;border:1px solid #7184a850;border-radius:16px}.admin-entry>svg{width:28px;color:#fca311}.admin-entry span{flex:1;font-size:12px}.admin-entry small{display:block;font-size:10px;color:#9ca7ba;margin-top:4px}.modal-card{background:linear-gradient(145deg,#243757,#14213d);padding:12px 24px 28px}.modal-card h2{font-size:34px}.modal-card p{font-size:12px}.form-grid input,.form-grid select{font-size:16px}.form-grid label{font-size:11px}.form-grid select option{background:#14213d;color:#fff}.selected-machine{display:flex;align-items:center;gap:20px;background:#0c1831;border-radius:14px;padding:10px}.selected-machine svg{width:100px;height:90px}.selected-machine small{display:block;margin-top:6px;font-size:9px;color:#99a9c1}.timer-ring{width:215px;height:215px;box-shadow:0 0 50px #fca31112}.timer-ring b{font-size:75px}.timer-ring:after{background:#192b49}.breath-indicator{display:flex;justify-content:center;align-items:center;gap:9px;color:#9ca7ba;font-size:11px;margin:20px}.breath-indicator i{width:8px;height:8px;border-radius:50%;background:#fca311;animation:breathe 4s ease-in-out infinite}@keyframes breathe{50%{transform:scale(1.8);opacity:.4}}.finish-options{display:grid;gap:10px;margin:20px 0}.celebrate{position:relative;overflow:hidden;padding:15px 0}.celebration-particles{position:absolute;inset:0;pointer-events:none}.celebration-particles i{position:absolute;left:var(--x);top:-20px;width:5px;height:12px;background:#fca311;animation:particle 1.4s var(--d) ease-out both}@keyframes particle{0%{transform:translateY(-10px) rotate(0);opacity:1}100%{transform:translateY(320px) rotate(var(--r));opacity:0}}.auth-card h1{font-size:80px}.auth-card{padding:35px 22px}.auth-glow{animation:breathe 8s ease-in-out infinite}.auth-copy{font-size:14px}.auth-form label{font-size:11px}.auth-form input{font-size:16px;height:54px}.brand-mark img{border-radius:12px;object-fit:contain}.brand-mark{overflow:hidden}.modal-layer .btn{min-height:48px}.admin-body{padding:35px 20px;min-height:100vh;background:radial-gradient(ellipse at top right,#293d60,#101b33 65%)}.admin-shell{max-width:1040px;margin:auto}.admin-shell h1{font-size:70px;margin:20px 0 30px}.back-link{color:#e5e5e5;text-decoration:none;font-size:12px;display:inline-block;margin-bottom:24px}.admin-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:20px;margin-bottom:20px}.admin-grid .card+.card{margin-top:0}.brand-preview{text-align:center;display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:360px}.brand-preview img{width:105px;height:105px;object-fit:contain;border-radius:26px;margin:15px;box-shadow:0 15px 40px #0004}.brand-preview h2{font-size:40px;margin-top:20px}.brand-preview p,.brand-preview small{color:#aab5c9;font-size:12px;line-height:1.7;max-width:250px}.preview-bars{display:flex;gap:5px;align-items:end;height:50px;margin:20px}.preview-bars i{width:13px;height:20px;border-radius:4px;background:#fca311;animation:barPulse 2s ease-in-out infinite}.preview-bars i:nth-child(2){height:32px;animation-delay:.2s}.preview-bars i:nth-child(3){height:45px;animation-delay:.4s}.preview-bars i:nth-child(4){height:28px;animation-delay:.6s}.preview-bars i:nth-child(5){height:40px;animation-delay:.8s}@keyframes barPulse{50%{transform:scaleY(.65);opacity:.5}}#password-form{margin-bottom:20px}#admin-login{max-width:460px}.form-grid small{text-transform:none;letter-spacing:0;font-weight:400;line-height:1.5}.form-grid input[type=file]{padding:12px;font-size:12px;height:auto}
body.theme-light{color:#14213d;background:#e5e5e5}body.theme-light .app-shell{background:#f1f3f6}body.theme-light .topbar{background:#fffffff0}body.theme-light .welcome-hero{color:#fff}body.theme-light .card{background:#fff;border-color:#dbe0e8}body.theme-light .muted,body.theme-light .section-head p,body.theme-light .settings-hero p,body.theme-light .setting-row small,body.theme-light .history-title small{color:#586985}body.theme-light .metric{background:#edf0f5}body.theme-light .machine-name{color:#586985}body.theme-light .machine-visual{background:#dfe6f0}body.theme-light .workout-summary p,body.theme-light .exercise-row small{color:#586985}body.theme-light .exercise-row .row-icon{background:#edf0f5}body.theme-light .muscle-tag{color:#805000;background:#fff0d5}body.theme-light .chip{color:#805000}body.theme-light .launch-number{color:#14213d0b}body.theme-light .btn:not(.primary){color:#14213d;border-color:#c8d0de}body.theme-light .modal-card{background:#fff}body.theme-light .timer-ring:after{background:#fff}body.theme-light .modal-card p,body.theme-light .form-grid label{color:#586985}body.theme-light .segmented{background:#dce2ec}body.theme-light .segmented button{color:#526487}body.theme-light .segmented button.active{background:#14213d;color:#fff}body.theme-light .badge.unlocked{background:linear-gradient(145deg,#fff4df,#fff)}body.theme-light .week-day b{border-color:#bac5d8}body.theme-light .week-day.today b{color:#805000;border-color:#bd790c}body.theme-light .btn.danger{color:#a72922}body.theme-light .stat-card b{color:#a36708}body.theme-light .selected-machine{color:#fff}
@media(min-width:900px){body{padding:0}.app-shell{width:100%;max-width:1440px;min-height:100vh;border-radius:0;overflow:visible;padding-left:185px}.topbar{left:185px;transform:none;top:0;width:calc(100% - 185px);max-width:1255px;height:80px;padding:14px 36px;border-radius:0}.view{padding:112px 36px 45px;min-height:100vh}.bottom-nav{top:0;left:max(0px,calc((100vw - 1440px)/2));bottom:0;transform:none;width:185px;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:25px 15px;border-right:1px solid #ffffff0c;border-top:0;border-radius:0}.bottom-nav:before{content:'TRAIN. TRACK. REPEAT.';position:absolute;top:30px;left:20px;right:20px;font-size:9px;letter-spacing:.18em;color:#9ca7ba;line-height:1.8}.bottom-nav button{display:flex;align-items:center;justify-content:start;gap:13px;min-height:56px;padding:13px;border-radius:14px}.bottom-nav small{font-size:11px}.bottom-nav button.active{transform:none;background:#fca31112}.bottom-nav button.active:before{left:0;top:18px;width:3px;height:20px}.welcome-hero{padding:36px 40px}.welcome-hero h1{font-size:85px}.welcome-hero>p:not(.eyebrow):not(.hello){max-width:400px;font-size:14px}.orbit-bg{right:10px;top:-45px;width:450px;height:450px}.launch-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-strip{max-width:550px}.week-day b{width:42px;height:42px}.session-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(240px,.8fr);gap:24px;align-items:start}.session-queue{margin-top:30px;position:sticky;top:105px}.machine-visual{height:280px}.machine-stage{height:260px}.training-card{padding:26px}.session-heading h2{font-size:42px}.stat-grid{grid-template-columns:repeat(4,1fr)}.badge-list{grid-template-columns:repeat(4,1fr)}.workout-card{max-width:900px}.workout-summary{padding:20px 24px}.workout-body{padding:0 24px 24px}.modal-layer{align-items:center}.modal-card{border-radius:26px;max-width:520px;margin:20px}.page-intro h1{font-size:65px}.settings-group,.settings-hero,.admin-entry{max-width:800px}}
@media(min-width:1440px){.topbar{left:calc((100vw - 1440px)/2 + 185px)}}
@media(max-width:600px){.admin-grid{grid-template-columns:1fr}.admin-shell h1{font-size:54px}.admin-body{padding:24px 16px}.admin-shell .form-grid{grid-template-columns:1fr}.badge-list{grid-template-columns:repeat(2,1fr)}.section-head h2{font-size:29px}.session-heading h2{font-size:29px}.session-queue{display:none}.welcome-hero h1{font-size:58px}.launch-art{width:160px}.page-intro h1{font-size:48px}}
.motion-reduced *{animation:none!important;transition:none!important;scroll-behavior:auto!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.admin-login-link{margin:24px 0 0;font-size:11px;color:#aab5c9}.auth-screen .brand-lockup{margin-bottom:30px}.auth-screen .brand-mark img{width:100%;height:100%}.equipment-live:hover .machine-movement{animation-play-state:paused}.motion-reduced .card,.motion-reduced .screen-enter{opacity:1;transform:none}
.topbar-title{min-width:0}.topbar-title span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand-preview h2{overflow-wrap:anywhere;max-width:100%}.brand-preview p{overflow-wrap:anywhere}.session-heading>div{min-width:0}.launch-card h2{overflow-wrap:anywhere}
