:root{--bg:#0a0c10;--panel:#13161c;--panel-2:#1a1e25;--line:#2b303a;--text:#f4f5f7;--muted:#969da8;--accent:#c8ff31;--blue:#668cff;--danger:#ff6b61;--radius:24px}*{box-sizing:border-box}html{background:var(--bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.45}button,input{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.app-shell{width:min(100%,980px);min-height:100dvh;padding:28px 20px calc(104px + env(safe-area-inset-bottom));margin:0 auto}.topbar{justify-content:space-between;align-items:center;margin-bottom:26px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:11px;font-weight:850;display:flex}.brand-mark{background:var(--accent);color:#0a0c10;border-radius:12px 12px 12px 4px;place-items:center;width:38px;height:38px;display:grid}.topbar-actions{align-items:center;gap:8px;display:flex}.mini-rank{width:108px;height:42px;color:var(--text);text-align:left;cursor:pointer;background:#c8ff3114;border:0;border-radius:15px;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:7px;padding:5px 9px 5px 7px;display:grid}.mini-rank-emoji{background:var(--accent);border-radius:9px;place-items:center;width:27px;height:27px;font-size:1rem;display:grid}.mini-rank-copy{min-width:0}.mini-rank-copy strong{color:#edf5da;white-space:nowrap;text-overflow:ellipsis;font-size:.68rem;line-height:1.1;display:block;overflow:hidden}.mini-rank-copy i{background:#30372d;border-radius:99px;height:4px;margin-top:5px;display:block;overflow:hidden}.mini-rank-copy b{border-radius:inherit;background:var(--accent);height:100%;display:block}.profile-button{background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;font-size:.78rem;font-weight:800}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.055em;max-width:750px;margin-bottom:16px;font-size:clamp(2.25rem,9vw,4.4rem);line-height:.98}h2{letter-spacing:-.035em;font-size:clamp(1.55rem,4vw,2.1rem);line-height:1.08}h3{margin-bottom:8px;font-size:1.06rem}.muted{color:var(--muted)}.hero-copy{color:#b8bec8;max-width:610px;margin-bottom:24px;font-size:1.02rem}.mission-card{background:var(--accent);color:#0b0d10;border-radius:30px;margin-bottom:18px;padding:26px;position:relative;overflow:hidden}.mission-card:after{content:"";border:32px solid #0a0c101a;border-radius:50%;width:180px;height:180px;position:absolute;top:-80px;right:-70px}.mission-meta{z-index:1;flex-wrap:wrap;gap:8px;margin-bottom:42px;display:flex;position:relative}.pill{border:1px solid;border-radius:999px;align-items:center;gap:6px;padding:7px 11px;font-size:.78rem;font-weight:750;display:inline-flex}.mission-card h2{z-index:1;max-width:450px;margin-bottom:10px;font-size:clamp(1.8rem,6vw,2.8rem);position:relative}.mission-card p{color:#363b2f;z-index:1;max-width:550px;position:relative}.mission-card.recovery{color:var(--text);border:1px solid var(--line);background:#1b2028}.mission-card.recovery:after{border-color:#ffffff09}.mission-card.recovery p{color:var(--muted)}.mission-card.completed{color:var(--text);background:linear-gradient(145deg,#192417,#111811);border:1px solid #c8ff3161}.mission-card.completed:after{border-color:#c8ff3112}.mission-card.completed p{color:#b8c2ad}.rest-day-message{z-index:1;border:1px solid var(--line);background:var(--panel-2);border-radius:18px;grid-template-columns:44px 1fr;align-items:center;gap:12px;min-height:64px;padding:10px 14px;display:grid;position:relative}.rest-day-message>svg{color:var(--blue)}.rest-day-message strong,.rest-day-message small{display:block}.rest-day-message small{color:var(--muted);margin-top:2px;font-size:.78rem}.completion-message{z-index:1;background:#c8ff3117;border:1px solid #c8ff314d;border-radius:18px;grid-template-columns:44px 1fr;align-items:center;gap:12px;min-height:68px;padding:11px 14px;display:grid;position:relative}.completion-message>svg{background:var(--accent);color:#0a0c10;border-radius:13px;width:40px;height:40px;padding:9px}.completion-message strong,.completion-message small{display:block}.completion-message strong{color:var(--accent)}.completion-message small{color:#b8c2ad;margin-top:2px;font-size:.78rem}.next-workout-teaser{z-index:1;background:#00000024;border:1px solid #ffffff17;border-radius:16px;gap:3px;margin-top:10px;padding:13px 14px;display:grid;position:relative}.next-workout-teaser>span{color:var(--accent);letter-spacing:.09em;text-transform:uppercase;font-size:.67rem;font-weight:850}.next-workout-teaser>strong{font-size:.91rem}.next-workout-teaser>small{color:#9fa99a;font-size:.75rem;line-height:1.4}.mission-calendar-button{z-index:1;color:currentColor;text-align:left;cursor:pointer;background:#0a0c101a;border:1px solid #0a0c1047;border-radius:15px;grid-template-columns:22px 1fr 20px;align-items:center;width:100%;min-height:48px;margin-top:10px;padding:0 14px;font-weight:850;display:grid;position:relative}.mission-card.recovery .mission-calendar-button{border-color:var(--line);background:var(--panel-2)}.mission-card.completed .mission-calendar-button{background:#00000029;border-color:#c8ff3138}.primary-button{color:#fff;cursor:pointer;z-index:1;background:#0a0c10;border:0;border-radius:18px;justify-content:space-between;align-items:center;width:100%;min-height:58px;padding:0 20px;font-weight:850;display:flex;position:relative}.primary-button .button-icon{background:var(--accent);color:#0a0c10;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.primary-button.accent{background:var(--accent);color:#0a0c10}.primary-button.accent .button-icon{color:var(--accent);background:#0a0c10}.primary-button:disabled{opacity:.45;cursor:not-allowed}.quick-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.quick-card{text-align:left;background:var(--panel);border:1px solid var(--line);cursor:pointer;border-radius:22px;flex-direction:column;justify-content:space-between;gap:14px;min-height:160px;padding:18px;display:flex}.quick-card.wide{flex-direction:row;grid-column:1/-1;align-items:center;min-height:108px}.quick-card:hover{background:var(--panel-2)}.quick-card strong{font-size:1rem}.quick-card>span:not(.metric){flex-direction:column;min-width:0;display:flex}.quick-card small{color:var(--muted);font-size:.8rem;line-height:1.3;display:block}.metric{letter-spacing:-.05em;font-size:2rem;font-weight:900}.metric em{color:var(--blue);font-size:1rem;font-style:normal}.section-head{justify-content:space-between;align-items:end;gap:16px;margin:26px 0 18px;display:flex}.section-head h1,.section-head h2{margin-bottom:0}.text-button{color:var(--accent);cursor:pointer;background:0 0;border:0;padding:8px;font-weight:750}.path-card{background:var(--panel);border:1px solid var(--line);border-radius:28px;padding:22px}.boss-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding-bottom:20px;display:flex}.boss-icon{background:var(--accent);color:#0a0c10;border-radius:18px;flex:none;place-items:center;width:64px;height:64px;display:grid;transform:rotate(-3deg)}.overall-progress{margin-top:18px}.progress-label{color:var(--muted);justify-content:space-between;gap:16px;margin-bottom:8px;font-size:.85rem;display:flex}.progress-track{background:#282d35;border-radius:99px;height:9px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:inherit;height:100%;transition:width .4s}.path-list{margin-top:24px;position:relative}.path-list:before{content:"";background:var(--line);width:2px;position:absolute;top:26px;bottom:34px;left:21px}.path-item{grid-template-columns:44px 1fr auto;align-items:center;gap:14px;padding:12px 0;display:grid;position:relative}.path-dot{background:var(--panel-2);border:2px solid var(--line);z-index:1;border-radius:15px;place-items:center;width:44px;height:44px;display:grid}.path-item.done .path-dot{background:var(--accent);border-color:var(--accent);color:#0a0c10}.path-item.current .path-dot{border-color:var(--blue);color:var(--blue);box-shadow:0 0 0 5px #668cff1f}.path-copy strong{display:block}.path-copy span{color:var(--muted);font-size:.82rem}.path-value{color:var(--muted);font-size:.83rem;font-weight:750}.roadmap-heading{margin-top:42px}.roadmap-grid{gap:13px;display:grid}.stage-card{background:var(--panel);border:1px solid var(--line);border-radius:24px;overflow:hidden}.stage-card.current{border-color:#c8ff318c}.stage-card.next{border-color:#668cff8c}.stage-card.boss{background:#171b12;border-color:#c8ff3147}.stage-summary{cursor:pointer;grid-template-columns:54px 1fr 20px 20px;align-items:center;gap:10px;padding:18px 20px;list-style:none;display:grid}.stage-summary::-webkit-details-marker{display:none}.stage-summary>span:nth-child(2){min-width:0}.stage-summary small,.stage-summary strong{display:block}.stage-summary small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:2px;font-size:.7rem;font-weight:850}.stage-summary strong{font-size:1rem;line-height:1.18}.stage-summary>svg{color:var(--muted)}.stage-chevron{transition:transform .2s}.stage-card[open] .stage-chevron{transform:rotate(90deg)}.stage-details{border-top:1px solid var(--line);padding:18px 20px 20px}.stage-details>p{color:var(--muted)}.stage-number{color:var(--text);letter-spacing:-.05em;font-size:1.45rem;font-weight:900}.stage-label{border:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:4px 9px;font-size:.72rem;font-weight:800}.stage-card.current .stage-label{color:var(--accent);border-color:#c8ff3166}.stage-card.next .stage-label{color:#9eb3ff;border-color:#668cff66}.stage-columns{gap:18px;margin:22px 0;display:grid}.mini-label{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px;font-size:.72rem;font-weight:850;display:block}.stage-columns ul{gap:7px;margin:0;padding:0;list-style:none;display:grid}.stage-columns li{padding-left:18px;font-size:.9rem;position:relative}.stage-columns li:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.55em;left:0}.stage-card.locked .stage-columns li:before{background:var(--muted)}.future-mission{border-top:1px solid var(--line);margin:0 -20px -20px}.future-mission summary{cursor:pointer;justify-content:space-between;align-items:center;padding:16px 20px;font-weight:800;list-style:none;display:flex}.future-mission summary::-webkit-details-marker{display:none}.future-mission summary span{align-items:center;gap:9px;display:inline-flex}.future-mission summary>svg{transition:transform .2s}.future-mission[open] summary>svg{transform:rotate(90deg)}.future-body{padding:2px 20px 20px}.future-title{justify-content:space-between;align-items:center;gap:14px;margin-bottom:12px;display:flex}.future-title span{color:var(--muted);font-size:.8rem}.future-row{border-bottom:1px solid #2b303aa6;align-items:center;gap:9px;padding:8px 0;font-size:.88rem;display:flex}.future-row svg{color:var(--accent)}.future-body p{color:var(--muted);margin:14px 0 0;font-size:.78rem}.rotation-card{background:var(--accent);color:#0a0c10;border-radius:28px;padding:22px}.rotation-top{text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:center;gap:12px;font-size:.78rem;font-weight:850;display:flex}.rotation-top span{align-items:center;gap:7px;display:inline-flex}.rotation-card h2{margin:34px 0 7px;font-size:2rem}.rotation-card>p{color:#3a412b}.rotation-pair{gap:8px;margin:20px 0;display:grid}.rotation-pair>div{background:#0a0c1017;border-radius:15px;grid-template-columns:34px 1fr;align-items:center;gap:11px;padding:10px;display:grid}.rotation-pair>div>span{width:34px;height:34px;color:var(--accent);background:#0a0c10;border-radius:11px;place-items:center;font-weight:900;display:grid}.rotation-pair p{margin:0}.rotation-pair strong,.rotation-pair small{display:block}.rotation-pair small{color:#414832}.schedule-heading{margin-top:4px}.upcoming-list{gap:9px;margin-bottom:12px;display:grid}.upcoming-day{background:var(--panel);border:1px solid var(--line);border-radius:19px;overflow:hidden}.upcoming-day.today{background:#171b12;border-color:#c8ff318c}.upcoming-day.strength{box-shadow:inset 3px 0 0 var(--accent)}.upcoming-day.prep{box-shadow:inset 3px 0 0 var(--blue)}.upcoming-day.recovery{box-shadow:inset 3px 0 #6d7480}.upcoming-day summary{cursor:pointer;grid-template-columns:64px 1fr 20px;align-items:center;gap:12px;padding:13px 14px;list-style:none;display:grid}.upcoming-day summary::-webkit-details-marker{display:none}.upcoming-day summary>svg{color:var(--muted);transition:transform .2s}.upcoming-day[open] summary>svg{transform:rotate(90deg)}.upcoming-date{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-height:46px;display:flex}.upcoming-date strong,.upcoming-date small,.upcoming-copy strong,.upcoming-copy small{display:block}.upcoming-date strong{color:var(--accent);text-transform:capitalize;font-size:.78rem}.upcoming-date small,.upcoming-copy small{color:var(--muted);font-size:.75rem}.upcoming-copy strong{font-size:.92rem}.upcoming-body{border-top:1px solid var(--line);padding:12px 15px 15px 91px}.upcoming-body>div{color:#d6dae0;align-items:start;gap:8px;padding:5px 0;font-size:.82rem;display:flex}.upcoming-body>div svg{color:var(--accent);flex:none;margin-top:2px}.upcoming-body p{color:var(--muted);margin:10px 0 0;font-size:.76rem}.logic-card{background:#668cff1a;border:1px solid #668cff4d;border-radius:19px;margin:12px 0 36px;overflow:hidden}.logic-card summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:15px;font-weight:850;list-style:none;display:flex}.logic-card summary::-webkit-details-marker{display:none}.logic-card summary span{align-items:center;gap:9px;display:inline-flex}.logic-card summary span svg{color:var(--blue)}.logic-card summary>svg{color:var(--muted);transition:transform .2s}.logic-card[open] summary>svg{transform:rotate(90deg)}.logic-card>div{border-top:1px solid #668cff33;padding:14px 16px 5px}.logic-card p{color:#cbd2e6;margin-bottom:11px;font-size:.82rem}.library-heading{margin-top:34px}.library-tabs{background:var(--panel);border:1px solid var(--line);border-radius:18px;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;padding:7px;display:grid}.library-tabs button{min-height:50px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:13px;justify-content:center;align-items:center;gap:7px;font-weight:850;display:flex}.library-tabs button span{background:var(--panel-2);border-radius:999px;padding:2px 7px;font-size:.7rem}.library-tabs button.active{background:var(--accent);color:#0a0c10}.library-tabs button.active span{background:#0a0c101f}.goal-library{gap:10px;display:grid}.goal-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;overflow:hidden}.goal-card summary{cursor:pointer;grid-template-columns:116px 1fr 20px;align-items:center;gap:13px;padding:11px;list-style:none;display:grid}.goal-card summary::-webkit-details-marker{display:none}.goal-card summary>svg{color:var(--muted);transition:transform .2s}.goal-card[open] summary>svg{transform:rotate(90deg)}.media-preview{background:#050608;border-radius:13px;width:116px;height:78px;position:relative;overflow:hidden}.media-preview img{object-fit:cover;width:100%;height:100%;display:block}.media-preview span{color:var(--accent);background:#0a0c10d6;border-radius:999px;padding:3px 7px;font-size:.62rem;font-weight:850;position:absolute;bottom:7px;left:7px}.goal-card-title{min-width:0}.goal-card-title .mini-label{color:var(--blue);margin-bottom:3px}.goal-card-title strong,.goal-card-title small{display:block}.goal-card-title strong{line-height:1.15}.goal-card-title small{color:var(--muted);margin-top:4px;font-size:.76rem}.goal-card-body{border-top:1px solid var(--line);padding:17px}.goal-card-body p{color:#c3c8d0;margin-bottom:16px;font-size:.88rem}.video-link{background:var(--accent);color:#0a0c10;cursor:pointer;border:0;border-radius:14px;justify-content:center;align-items:center;gap:9px;width:100%;min-height:46px;font-weight:900;text-decoration:none;display:flex}.video-overlay{z-index:260;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#050608eb;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.video-modal{border:1px solid var(--line);background:var(--panel);border-radius:24px;width:min(100%,760px);overflow:hidden;box-shadow:0 24px 90px #0000008c}.video-modal header{justify-content:space-between;align-items:start;gap:16px;padding:17px;display:flex}.video-modal h2{margin:4px 0 0;font-size:1.25rem}.video-stage{aspect-ratio:16/9;background:#050608;width:100%;position:relative;overflow:hidden}.video-modal iframe{background:#050608;border:0;width:100%;height:100%;display:block}.video-poster{cursor:pointer;background:#050608;border:0;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.video-poster:after{content:"";background:linear-gradient(#05060814,#0506089e);position:absolute;inset:0}.video-poster img{object-fit:cover;opacity:.86;width:100%;height:100%;display:block}.video-poster>span{z-index:1;background:var(--accent);color:#0a0c10;border-radius:18px;justify-content:center;align-items:center;gap:10px;min-width:170px;min-height:56px;padding:0 18px;font-weight:900;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 14px 42px #0000007a}.video-playing-note{z-index:2;color:#fff;pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#050608cc;border-radius:999px;padding:6px 9px;font-size:.68rem;font-weight:800;position:absolute;top:10px;left:10px}.medical-note{color:#d4dcff;background:#668cff1a;border:1px solid #668cff40;border-radius:20px;grid-template-columns:28px 1fr;gap:12px;margin:14px 0 36px;padding:16px;display:grid}.medical-note svg{color:var(--blue)}.medical-note p{margin:0;font-size:.84rem}.filter-row{gap:8px;margin-bottom:15px;display:flex;overflow-x:auto}.filter-row button{border:1px solid var(--line);background:var(--panel);color:var(--muted);white-space:nowrap;cursor:pointer;border-radius:999px;padding:9px 13px;font-weight:750}.filter-row button.active{background:var(--accent);border-color:var(--accent);color:#0a0c10}.exercise-library{gap:9px;display:grid}.library-card{background:var(--panel);border:1px solid var(--line);border-radius:19px;overflow:hidden}.library-card.directional{border-color:#ff6b614d}.library-card summary{cursor:pointer;grid-template-columns:40px 1fr 20px;align-items:center;gap:12px;padding:13px;list-style:none;display:grid}.library-card summary::-webkit-details-marker{display:none}.library-card summary>span:nth-child(2){min-width:0}.library-card summary strong,.library-card summary small{display:block}.library-card summary small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:.78rem;overflow:hidden}.library-card summary>svg{color:var(--muted);transition:transform .2s}.library-card[open] summary>svg{transform:rotate(90deg)}.library-index{background:var(--panel-2);width:40px;height:40px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.library-card.directional .library-index{color:var(--danger)}.library-body{border-top:1px solid var(--line);padding:17px}.library-body p{color:#c3c8d0;margin-bottom:17px;font-size:.9rem}.library-media{aspect-ratio:16/9;object-fit:contain;background:#fff;border-radius:14px;width:100%;margin-bottom:18px;display:block}.technique-key{border-left:3px solid var(--blue);background:#668cff1c;border-radius:14px;margin:4px 0 16px;padding:13px 14px}.technique-key span,.technique-key strong{display:block}.technique-key strong{color:#dbe3ff;margin-top:5px;font-size:.88rem;line-height:1.5}.technique-guide{gap:10px;margin:14px 0 18px;display:grid}.technique-block{border:1px solid var(--line);background:var(--panel-2);border-radius:15px;padding:14px}.technique-block>strong{color:var(--text);margin-bottom:7px;font-size:.82rem;display:block}.technique-block p{color:#c3c8d0;margin:0;font-size:.85rem;line-height:1.55}.technique-block ol,.technique-block ul{color:#c3c8d0;margin:0;padding-left:20px;font-size:.85rem;line-height:1.55}.technique-block li+li{margin-top:6px}.technique-block li::marker{color:var(--accent);font-weight:850}.technique-block.mistakes{background:#ff6b610e;border-color:#ff6b613d}.technique-block.mistakes li::marker{color:var(--danger)}.technique-safety{color:#d9e9a7;background:#c8ff3112;border-radius:15px;grid-template-columns:22px 1fr;align-items:start;gap:9px;padding:13px 14px;font-size:.82rem;line-height:1.48;display:grid}.technique-safety>svg{color:var(--accent);margin-top:1px}.technique-safety strong{color:var(--accent);margin-bottom:2px;display:block}.source-badge{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:5px 9px;font-size:.72rem;display:inline-block}.stats-grid{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:22px;display:grid}.rank-hero{background:linear-gradient(135deg,#c8ff311f,#668cff14);border:1px solid #c8ff3159;border-radius:24px;grid-template-columns:72px 1fr;align-items:center;gap:16px;margin-bottom:14px;padding:20px;display:grid}.rank-hero-emoji{background:var(--accent);border-radius:22px;place-items:center;width:72px;height:72px;font-size:2.6rem;display:grid}.rank-hero h2{margin:3px 0 4px}.rank-hero p{color:var(--muted);margin:0;font-size:.8rem}.rank-hero-progress{background:var(--line);border-radius:99px;grid-column:1/-1;height:8px;overflow:hidden}.rank-hero-progress span{border-radius:inherit;background:var(--accent);height:100%;display:block}.rank-ladder{border:1px solid var(--line);background:var(--panel);border-radius:20px;margin:18px 0 30px;overflow:hidden}.rank-ladder summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:56px;padding:0 16px;font-weight:850;list-style:none;display:flex}.rank-ladder summary::-webkit-details-marker{display:none}.rank-ladder summary span{align-items:center;gap:9px;display:inline-flex}.rank-ladder summary>svg{color:var(--muted);transition:transform .2s}.rank-ladder[open] summary>svg{transform:rotate(90deg)}.rank-ladder>div{border-top:1px solid var(--line);padding:8px 14px 14px}.rank-level{border-bottom:1px solid #2b303ab3;grid-template-columns:36px 1fr 20px;align-items:center;gap:10px;min-height:58px;display:grid}.rank-level:last-child{border-bottom:0}.rank-level>span{font-size:1.35rem}.rank-level strong,.rank-level small{display:block}.rank-level small{color:var(--muted);margin-top:2px;font-size:.71rem;line-height:1.35}.rank-level svg{color:var(--accent)}.rank-level.future{opacity:.74}.rank-level.current strong{color:var(--accent)}.stat-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;padding:16px}.stat-card strong{letter-spacing:-.04em;font-size:clamp(1.45rem,4vw,2rem);display:block}.stat-card span{color:var(--muted);font-size:.75rem}.history-list{gap:10px;display:grid}.history-item{background:var(--panel);border:1px solid var(--line);border-radius:20px;grid-template-columns:48px 1fr auto;align-items:center;gap:14px;padding:17px;display:grid}.history-date{background:var(--panel-2);text-align:center;border-radius:14px;place-items:center;width:48px;height:48px;font-size:.76rem;font-weight:850;line-height:1.05;display:grid}.history-item strong{display:block}.history-item span{color:var(--muted);font-size:.8rem}.empty-state{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:22px;padding:30px}.bottom-nav{z-index:20;border:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#13161cf0;border-radius:22px;grid-template-columns:repeat(4,1fr);width:min(100% - 24px,580px);padding:7px;display:grid;position:fixed;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 20px 60px #00000059}.nav-button{min-height:54px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:.7rem;font-weight:750;display:flex}.nav-button.active{background:var(--accent);color:#0a0c10}.overlay{z-index:50;background:#000000ad;justify-content:center;align-items:end;padding-top:24px;display:flex;position:fixed;inset:0}.sheet{background:var(--panel);border:1px solid var(--line);width:min(100%,620px);max-height:94dvh;padding:10px 20px calc(24px + env(safe-area-inset-bottom));border-bottom:0;border-radius:30px 30px 0 0;animation:.24s both rise;overflow:auto}@keyframes rise{0%{opacity:.5;transform:translateY(30px)}}.sheet-handle{background:#404650;border-radius:99px;width:44px;height:5px;margin:4px auto 22px}.sheet-head{justify-content:space-between;align-items:start;gap:16px;display:flex}.schedule-sheet{min-height:min(90dvh,760px)}.schedule-legend{color:var(--muted);flex-wrap:wrap;gap:12px;margin:16px 0 18px;font-size:.74rem;font-weight:750;display:flex}.schedule-legend span{align-items:center;gap:6px;display:inline-flex}.schedule-legend i{background:var(--accent);border-radius:50%;width:9px;height:9px}.schedule-legend i.prep{background:var(--blue)}.schedule-legend i.recovery{background:#6d7480}.icon-button{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:14px;flex:none;place-items:center;width:42px;height:42px;display:grid}.readiness-grid{gap:10px;margin:18px 0;display:grid}.readiness-option{text-align:left;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:20px;grid-template-columns:42px 1fr;align-items:center;gap:13px;padding:16px;display:grid}.readiness-option.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.readiness-option strong,.readiness-option span{display:block}.readiness-option span{color:var(--muted);margin-top:2px;font-size:.82rem}.readiness-icon{background:#252a33;border-radius:13px;place-items:center;width:42px;height:42px;display:grid}.readiness-option.selected .readiness-icon{background:var(--accent);color:#0a0c10}.workout{width:min(100%,700px);min-height:100dvh;margin:0 auto;padding:24px 20px 38px}.workout-top{justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.workout-step{color:var(--muted);font-size:.85rem;font-weight:750}.workout-progress{background:var(--line);border-radius:99px;flex:1;height:5px;margin:0 18px;overflow:hidden}.workout-progress span{background:var(--accent);height:100%;transition:width .3s;display:block}.exercise-visual{background:var(--panel);border:1px solid var(--line);border-radius:28px;place-items:center;height:190px;margin-bottom:24px;display:grid;position:relative;overflow:hidden}.exercise-visual:before,.exercise-visual:after{content:"";background:var(--line);width:56%;height:2px;position:absolute;transform:rotate(-14deg)}.exercise-visual:after{transform:rotate(14deg)}.exercise-visual svg{color:var(--accent);z-index:1;position:relative}.exercise-visual.has-media:before,.exercise-visual.has-media:after{display:none}.exercise-visual.has-media img{object-fit:contain;width:100%;height:100%;display:block}.visual-video{z-index:2;background:var(--accent);color:#0a0c10;cursor:pointer;border:0;border-radius:12px;align-items:center;gap:7px;min-height:38px;padding:0 12px;font-size:.78rem;font-weight:900;text-decoration:none;display:inline-flex;position:absolute;bottom:12px;right:12px;box-shadow:0 8px 30px #0006}.visual-video svg{color:currentColor}.exercise-kicker{color:var(--blue);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:850}.exercise-title{margin:8px 0 14px;font-size:clamp(2rem,8vw,3.5rem);line-height:1}.why-card{border-left:3px solid var(--blue);color:#cbd6ff;background:#668cff1c;border-radius:4px 16px 16px 4px;margin:20px 0;padding:15px 16px}.workout-technique{border:1px solid var(--line);background:var(--panel);border-radius:20px;margin:20px 0;overflow:hidden}.workout-technique>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:0 15px;font-size:.88rem;font-weight:850;list-style:none;display:flex}.workout-technique>summary::-webkit-details-marker{display:none}.workout-technique>summary span{align-items:center;gap:9px;display:inline-flex}.workout-technique>summary span svg{color:var(--accent)}.workout-technique>summary>svg{color:var(--muted);transition:transform .2s}.workout-technique[open]>summary>svg{transform:rotate(90deg)}.workout-technique-body{border-top:1px solid var(--line);padding:15px}.workout-technique-body .technique-guide{margin-bottom:0}.assist-card{background:var(--panel);border:1px solid var(--line);border-radius:20px;margin:20px 0;padding:16px}.assist-head{justify-content:space-between;align-items:center;gap:14px;display:flex}.assist-head strong{margin-top:3px;font-size:1.05rem;display:block}.assist-status{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:.7rem;font-weight:850}.assist-status.active{color:var(--accent);background:#c8ff311a;border-color:#c8ff3159}.assist-options{grid-template-columns:repeat(3,1fr);gap:7px;margin:15px 0 12px;display:grid}.assist-options button{border:1px solid var(--line);background:var(--panel-2);min-height:43px;color:var(--muted);cursor:pointer;border-radius:13px;padding:6px;font-size:.76rem;font-weight:800}.assist-options button.active{background:var(--accent);border-color:var(--accent);color:#0a0c10}.assist-card>p{color:var(--muted);margin:0;font-size:.79rem;line-height:1.45}.rest-settings{background:var(--panel);border:1px solid var(--line);border-radius:20px;margin:20px 0 12px;padding:15px}.rest-settings-title{align-items:center;gap:11px;display:flex}.rest-settings-title>svg{color:var(--accent);flex:none}.rest-settings-title strong,.rest-settings-title small{display:block}.rest-settings-title small{color:var(--muted);margin-top:1px;font-size:.76rem}.rest-options{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:14px;display:grid}.rest-options button{border:1px solid var(--line);background:var(--panel-2);min-height:42px;color:var(--muted);cursor:pointer;border-radius:13px;font-size:.78rem;font-weight:850}.rest-options button.active{background:var(--accent);border-color:var(--accent);color:#0a0c10}.rest-timer{background:#668cff1f;border:1px solid #668cff6b;border-radius:20px;margin:12px 0 20px;padding:15px}.rest-timer.finished{background:#c8ff311a;border-color:#c8ff316b}.rest-timer-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.rest-timer-top span{color:#cbd6ff;align-items:center;gap:8px;font-size:.84rem;font-weight:800;display:inline-flex}.rest-timer.finished .rest-timer-top span{color:var(--accent)}.rest-timer-top strong{letter-spacing:-.04em;font-variant-numeric:tabular-nums;font-size:1.8rem}.rest-progress{background:#ffffff1a;border-radius:99px;height:6px;margin:12px 0;overflow:hidden}.rest-progress span{background:var(--blue);border-radius:inherit;height:100%;transition:width 1s linear;display:block}.rest-timer.finished .rest-progress span{background:var(--accent)}.rest-timer-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.rest-timer-actions button{border:1px solid var(--line);background:var(--panel-2);min-height:38px;color:var(--text);cursor:pointer;border-radius:12px;font-size:.78rem;font-weight:800}.rest-timer-actions button:last-child{background:var(--text);border-color:var(--text);color:var(--bg)}.timer-overlay{z-index:200;background:#050608fa;place-items:center;display:grid;position:fixed;inset:0;overflow:auto}.timer-screen{width:min(100%,620px);min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 22px calc(24px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;display:flex}.timer-screen-head{grid-template-columns:44px 1fr 44px;align-items:center;gap:12px;width:100%;display:grid}.timer-screen-head>span{text-align:center;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;font-weight:850}.timer-icon-button{border:1px solid var(--line);background:var(--panel);cursor:pointer;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.timer-context{text-align:center;margin:clamp(34px,8dvh,72px) 0 24px}.timer-context h2{margin:8px 0;font-size:clamp(2rem,9vw,3.2rem)}.timer-context p{color:var(--muted);margin:0}.timer-dial{--timer-progress:360deg;aspect-ratio:1;background:conic-gradient(var(--accent) var(--timer-progress), #252a33 0);border-radius:50%;place-items:center;width:min(72vw,300px);display:grid;position:relative;box-shadow:0 0 80px #c8ff3117}.timer-overlay.work .timer-dial{background:conic-gradient(var(--blue) var(--timer-progress), #252a33 0);box-shadow:0 0 80px #668cff1f}.timer-dial:before{content:"";background:#0a0c10;border-radius:50%;position:absolute;inset:13px}.timer-dial>div{z-index:1;text-align:center;width:100%;padding:0 18px;position:relative}.timer-dial strong,.timer-dial span{display:block}.timer-dial strong{letter-spacing:-.05em;font-variant-numeric:tabular-nums;white-space:nowrap;width:100%;font-size:clamp(4.1rem,19vw,6.4rem);line-height:1}.timer-dial span{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;margin-top:9px;font-size:.78rem;font-weight:850}.timer-overlay.finished .timer-dial{background:var(--accent);animation:.5s both timer-finish}@keyframes timer-finish{50%{transform:scale(1.035);box-shadow:0 0 90px #c8ff3138}}.timer-warning{color:var(--accent);background:#c8ff3114;border:1px solid #c8ff3159;border-radius:999px;margin-top:20px;padding:8px 13px;font-size:.82rem;font-weight:850}.timer-screen-actions{grid-template-columns:1fr 1.35fr;gap:9px;width:100%;margin-top:auto;padding-top:30px;display:grid}.timer-screen-actions:has(>:only-child){grid-template-columns:1fr}.timer-screen-actions button{border:1px solid var(--line);background:var(--panel);min-height:56px;color:var(--text);cursor:pointer;border-radius:17px;font-weight:850}.timer-screen-actions .timer-primary{background:var(--accent);border-color:var(--accent);color:#0a0c10}.timer-sound-note{color:var(--muted);text-align:center;margin-top:13px;font-size:.72rem}.sets{gap:9px;margin:22px 0;display:grid}.set-row{background:var(--panel);border:1px solid var(--line);border-radius:17px;grid-template-columns:1fr 72px 44px;align-items:center;gap:10px;padding:10px 12px 10px 16px;display:grid}.set-row.timed{grid-template-columns:1fr 82px 100px}.set-value{display:block;position:relative}.set-row input{border:1px solid var(--line);background:var(--bg);width:100%;height:42px;color:var(--text);text-align:center;border-radius:12px}.set-value span{color:var(--muted);pointer-events:none;font-size:.66rem;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.set-row.timed .set-value input{padding-right:27px}.check-button{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:12px;place-items:center;width:42px;height:42px;display:grid}.check-button.checked{background:var(--accent);color:#0a0c10;border-color:var(--accent)}.start-set-button{border:1px solid var(--accent);min-height:42px;color:var(--accent);cursor:pointer;background:#c8ff3114;border-radius:12px;justify-content:center;align-items:center;gap:6px;font-size:.76rem;font-weight:900;display:flex}.start-set-button.completed{background:var(--accent);color:#0a0c10}.workout-actions{grid-template-columns:54px 1fr;gap:10px;margin-top:24px;display:grid}.danger-link{color:var(--danger)}.success-screen{text-align:center;place-items:center;min-height:100dvh;padding:24px;display:grid}.success-content{width:min(100%,520px)}.success-icon{background:var(--accent);color:#0a0c10;border-radius:30px 30px 30px 8px;place-items:center;width:92px;height:92px;margin:0 auto 24px;display:grid;transform:rotate(-4deg)}.success-icon svg{transform:rotate(4deg)}.success-icon span{font-size:3rem;transform:rotate(4deg)}.success-content h1{font-size:clamp(2.6rem,11vw,4.6rem)}.impact-card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:22px;margin:26px 0;padding:18px}.impact-card span{color:var(--accent);font-size:.8rem;font-weight:800}.toast{z-index:100;background:var(--text);color:var(--bg);border-radius:14px;padding:12px 16px;font-weight:750;animation:.25s both toast;position:fixed;top:16px;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #0006}@keyframes toast{0%{opacity:0;transform:translate(-50%,-10px)}}.login-screen{place-items:center;min-height:100dvh;padding:24px;display:grid}.login-card{width:min(100%,470px)}.login-card .brand{margin-bottom:70px}.login-card h1{margin-top:12px;font-size:clamp(2.4rem,10vw,4rem)}.login-icon{background:var(--panel);border:1px solid var(--line);width:70px;height:70px;color:var(--accent);border-radius:22px;place-items:center;margin-bottom:28px;display:grid}.login-card form{margin-top:28px}.field-label{margin-bottom:8px;font-size:.85rem;font-weight:800;display:block}.password-input{border:1px solid var(--line);background:var(--panel);width:100%;height:58px;color:var(--text);border-radius:17px;margin-bottom:12px;padding:0 16px;font-size:1.05rem}.password-input:focus{border-color:var(--accent)}.login-card .primary-button{margin-top:12px}.settings-sheet{padding-bottom:calc(36px + env(safe-area-inset-bottom))}.settings-sheet .sheet-head{z-index:5;background:linear-gradient(var(--panel) 82%, #13161cf0);border-bottom:1px solid var(--line);margin:0 -2px;padding:10px 2px 13px;position:sticky;top:-10px}.schedule-settings{margin-top:20px}.week-plan-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0;display:grid}.week-plan-row{border:1px solid var(--line);background:var(--panel-2);border-radius:16px;grid-template-columns:32px 1fr;align-items:center;gap:8px;padding:9px;display:grid}.week-plan-row>strong{background:var(--panel);width:32px;height:32px;color:var(--accent);border-radius:10px;place-items:center;font-size:.72rem;display:grid}.week-plan-row>span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:750;overflow:hidden}.week-plan-row>div{grid-column:1/-1;grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.week-plan-row button{border:1px solid var(--line);background:var(--panel);min-height:35px;color:var(--muted);cursor:pointer;border-radius:10px;place-items:center;padding:0;display:grid}.week-plan-row button.active.strength{background:var(--accent);border-color:var(--accent);color:#0a0c10}.week-plan-row button.active.prep{background:var(--blue);border-color:var(--blue);color:#fff}.week-plan-row button.active.recovery{color:#fff;background:#59616e;border-color:#6d7480}.settings-status{min-height:20px;color:var(--accent);text-align:center;margin:8px 0 0;font-size:.78rem;font-weight:750}.reminder-card{color:var(--text);background:#c8ff3114;border:1px solid #c8ff3159;border-radius:19px;grid-template-columns:44px 1fr auto;align-items:center;gap:13px;margin:18px 0 30px;padding:15px;text-decoration:none;display:grid}.reminder-card span{min-width:0}.reminder-card strong,.reminder-card small{display:block}.reminder-card small{color:var(--muted);margin-top:2px;font-size:.78rem}.reminder-icon{background:var(--accent);color:#0a0c10;border-radius:13px;place-items:center;width:44px;height:44px;display:grid}.settings-section{border-top:1px solid var(--line);padding-top:26px}.settings-section h3{margin:7px 0;font-size:1.4rem}.ortho-list{gap:8px;margin:18px 0;display:grid}.ortho-item{background:var(--panel-2);border:1px solid var(--line);border-radius:16px;grid-template-columns:1fr 42px;align-items:center;gap:10px;padding:11px 11px 11px 15px;display:grid}.ortho-item strong,.ortho-item small{display:block}.ortho-item small{color:var(--muted);margin-top:2px}.ortho-form{margin-top:22px}.loading-shell{padding-top:38px}.skeleton{background:var(--panel);border-radius:18px;animation:1.2s infinite alternate pulse}.skeleton-head{width:180px;height:42px;margin-bottom:80px}.skeleton-card{height:360px;margin-bottom:16px}.skeleton-row{height:130px}@keyframes pulse{to{opacity:.55}}@media (max-width:350px){.brand>span:last-child{display:none}}@media (min-width:760px){.app-shell{padding:42px 34px 120px}.home-layout{grid-template-columns:1.45fr .8fr;align-items:stretch;gap:18px;display:grid}.mission-card{flex-direction:column;min-height:440px;margin-bottom:0;display:flex}.mission-card .primary-button{margin-top:auto}.quick-grid{grid-template-columns:1fr}.quick-card.wide{flex-direction:column;grid-column:auto;align-items:start}.stats-grid{gap:16px}.roadmap-grid,.stage-columns,.goal-library,.exercise-library{grid-template-columns:1fr 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
