:root{--bg:#101c23;--bg2:#172a34;--card:#f2f0e8;--card2:#e6e2d7;--ink:#13252e;--muted:#718087;--accent:#b8f34a;--accent2:#27b89d;--white:#fff;--line:rgba(19,37,46,.12);--serif:"Instrument Serif",serif;--sans:"DM Sans",sans-serif;--mono:"DM Mono",monospace}*{box-sizing:border-box}html{background:#0b141a}body{margin:0;background:radial-gradient(circle at 50% -20%,#284859,transparent 38%),#0b141a;font-family:var(--sans);color:var(--ink);min-height:100vh}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 15% 10%,rgba(184,243,74,.1),transparent 24%)}button,input{font:inherit}.member-shell{width:min(100%,520px);min-height:100vh;margin:0 auto;background:var(--bg);position:relative;box-shadow:0 0 100px rgba(0,0,0,.45);padding-bottom:86px}.member-header{height:68px;padding:12px 17px;display:flex;justify-content:space-between;align-items:center;color:#fff;position:sticky;top:0;z-index:20;background:rgba(16,28,35,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08)}.gym-brand{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:#fff;text-align:left;cursor:pointer}.gym-mark{width:38px;height:38px;border-radius:12px;background:var(--accent);color:var(--bg);display:grid;place-items:center;font:400 24px var(--serif)}.gym-brand strong,.gym-brand small{display:block}.gym-brand strong{font:600 10px var(--mono);letter-spacing:.08em}.gym-brand small{font-size:10px;color:rgba(255,255,255,.5);margin-top:2px}.gym-brand i{font-style:normal;color:rgba(255,255,255,.45)}.header-actions{display:flex;gap:8px}.header-actions button{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#fff;position:relative}.header-actions b{position:absolute;right:-2px;top:-2px;background:var(--accent);color:var(--bg);font-size:8px;border-radius:50%;width:15px;height:15px;display:grid;place-items:center}.header-actions .avatar{background:#e6c4a7;color:#402819;font-size:11px;font-weight:700}.app-view{display:none;padding:25px 17px 32px}.app-view.active{display:block}.greeting>span,.page-title>span,.label,.section-head span,.intervention-card>div>span,.weekly-plan span,.session-card span,.recovery-card>span,.challenge-card span,.membership-card>span{font:500 8px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}.greeting h1,.page-title h1{font:400 42px/.92 var(--serif);letter-spacing:-.035em;color:#fff;margin:13px 0}.greeting h1 em,.page-title h1 em{color:var(--accent);font-weight:400}.greeting p,.page-title p{color:rgba(255,255,255,.55);font-size:13px;line-height:1.5}.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:10px;margin-top:25px}.readiness-card{background:var(--card);border-radius:24px;padding:18px;display:grid;grid-template-columns:94px 1fr;gap:14px;align-items:center}.readiness-ring{width:88px;height:88px;border-radius:50%;background:conic-gradient(var(--accent2) calc(var(--score)*1%),#d5d8ce 0);display:grid;place-items:center}.readiness-ring:before{content:"";width:69px;height:69px;border-radius:50%;background:var(--card);position:absolute}.readiness-ring div{position:relative;text-align:center}.readiness-ring strong{display:block;font:400 31px var(--serif)}.readiness-ring span{font:500 7px var(--mono);color:var(--muted)}.readiness-card h2{font:400 23px var(--serif);margin:6px 0}.readiness-card p{font-size:10px;color:var(--muted);line-height:1.4}.text-link{padding:0;border:0;background:none;color:var(--accent2);font-size:10px;font-weight:700}.capacity-card{border:0;background:var(--accent);color:var(--bg);border-radius:24px;padding:15px;text-align:left;cursor:pointer}.capacity-top{display:flex;justify-content:space-between;align-items:start}.capacity-top span{font:500 7px var(--mono)}.capacity-top b{font:400 27px var(--serif)}.capacity-bars{height:70px;display:flex;align-items:end;gap:4px;margin:12px 0}.capacity-bars i{display:block;flex:1;background:rgba(16,28,35,.22);border-radius:4px 4px 0 0}.capacity-bars i.now{background:var(--bg)}.capacity-foot strong,.capacity-foot small{display:block}.capacity-foot strong{font-size:10px}.capacity-foot small{font-size:8px;opacity:.6;margin-top:3px}.access-card{width:100%;margin:11px 0 0;border:1px solid rgba(255,255,255,.1);background:var(--bg2);color:#fff;border-radius:18px;padding:15px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer}.access-icon{width:40px;height:40px;border-radius:13px;background:rgba(184,243,74,.12);color:var(--accent);display:grid;place-items:center;font-size:22px}.access-card strong,.access-card small{display:block}.access-card strong{font-size:12px}.access-card small{font-size:9px;color:rgba(255,255,255,.45);margin-top:3px}.access-card>b{margin-left:auto;color:var(--accent);font-size:9px}.intervention-card{margin:14px 0;background:linear-gradient(135deg,#203a45,#172931);border:1px solid rgba(184,243,74,.18);color:#fff;border-radius:24px;padding:19px;display:grid;grid-template-columns:42px 1fr;gap:13px}.coach-avatar{width:42px;height:42px;border-radius:50%;background:#e3b792;color:#4d2b1d;display:grid;place-items:center;font-size:10px;font-weight:700}.intervention-card h2{font:400 24px var(--serif);margin:7px 0}.intervention-card p{font-size:11px;line-height:1.5;color:rgba(255,255,255,.55)}.intervention-card button{border:0;border-radius:99px;padding:10px 12px;font-size:9px;font-weight:700}.accept-button{background:var(--accent);color:var(--bg)}.dismiss-button{background:transparent;color:rgba(255,255,255,.55)}.section-head{display:flex;justify-content:space-between;align-items:end;margin:27px 2px 12px;color:#fff}.section-head h2{font:400 27px var(--serif);margin:5px 0 0}.section-head button{border:0;background:none;color:var(--accent);font-size:10px}.workout-card{width:100%;border:0;border-radius:23px;background:var(--card);padding:12px;display:grid;grid-template-columns:105px 1fr auto;gap:13px;text-align:left;align-items:center;color:var(--ink)}.workout-art{height:105px;background:linear-gradient(135deg,#bdcdc2,#7c9487);border-radius:17px;position:relative;overflow:hidden}.workout-art:before,.workout-art:after{content:"";position:absolute;background:#243b42;border-radius:99px}.workout-art:before{width:24px;height:78px;left:42px;top:15px;transform:rotate(17deg)}.workout-art:after{width:70px;height:9px;left:18px;top:40px}.workout-art span{position:absolute;bottom:8px;left:8px;background:#fff;border-radius:99px;padding:5px 7px;font:500 7px var(--mono)}.workout-copy>span{font:500 7px var(--mono);color:var(--accent2)}.workout-copy h3{font:400 23px var(--serif);margin:6px 0}.workout-copy p{font-size:9px;color:var(--muted);line-height:1.4}.workout-copy div{display:flex;align-items:center;gap:7px;font-size:8px}.workout-copy i{width:3px;height:3px;border-radius:50%;background:var(--muted)}.workout-card>button{border:0;background:none;font-size:20px}.class-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.class-tile{border:0;border-radius:21px;padding:15px;text-align:left;min-height:145px;display:flex;flex-direction:column;color:#fff}.class-tile.strength{background:#284b54}.class-tile.cardio{background:#d3694e}.class-tile span{font:500 7px var(--mono);opacity:.7}.class-tile h3{font:400 25px var(--serif);margin:18px 0 4px}.class-tile p{font-size:9px;opacity:.65}.class-tile b{margin-top:auto;font-size:9px}.streak-card{margin-top:12px;background:var(--card);border-radius:23px;padding:17px}.streak-card>div:first-child{display:flex;align-items:baseline;gap:6px}.streak-card span{font:500 7px var(--mono);margin-right:auto}.streak-card strong{font:400 37px var(--serif)}.streak-card small{color:var(--muted);font-size:9px}.week-dots{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:15px 0}.week-dots i{height:30px;border-radius:9px;background:#ddd9cd;display:grid;place-items:center;font:500 8px var(--mono);font-style:normal}.week-dots i.done{background:var(--bg);color:#fff}.week-dots i.today{background:var(--accent);color:var(--bg)}.streak-card p{font-size:10px;color:var(--muted)}.page-title{margin-bottom:24px}.plan-tabs,.filter-pills{display:flex;gap:7px;overflow:auto;margin-bottom:12px}.plan-tabs button,.filter-pills button{border:1px solid rgba(255,255,255,.12);background:transparent;color:rgba(255,255,255,.55);border-radius:99px;padding:9px 13px;font-size:9px;white-space:nowrap}.plan-tabs button.active,.filter-pills button.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.weekly-plan,.session-card,.recovery-card,.quiet-time,.membership-card,.powered{background:var(--card);border-radius:24px;padding:18px;margin:12px 0}.plan-head{display:flex;justify-content:space-between}.plan-head h2,.session-head h2,.recovery-card h2,.quiet-time h2{font:400 28px var(--serif);margin:7px 0}.plan-head p,.recovery-card p,.quiet-time p{color:var(--muted);font-size:10px}.plan-progress{text-align:right}.plan-progress strong{font:400 26px var(--serif)}.plan-progress i{display:block;width:75px;height:5px;background:#d6d4ca;border-radius:9px;margin-top:6px}.plan-progress b{display:block;width:67%;height:100%;background:var(--accent2);border-radius:9px}.day-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin-top:18px}.day-strip button{border:0;background:#dedbd1;border-radius:12px;padding:8px 2px;color:var(--ink)}.day-strip span,.day-strip b,.day-strip small{display:block}.day-strip span{font:500 7px var(--mono)}.day-strip b{font:400 20px var(--serif);margin:7px}.day-strip small{font-size:7px;color:var(--muted)}.day-strip button.complete{background:#d6eadc}.day-strip button.active{background:var(--bg);color:#fff}.session-head{display:flex;justify-content:space-between;align-items:center}.timer-button{border:0;background:var(--accent);border-radius:99px;padding:10px 12px;font-size:9px;font-weight:700}.exercise{display:grid;grid-template-columns:34px 1fr auto;gap:11px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.exercise-check{width:31px;height:31px;border:1px solid var(--line);background:#fff;border-radius:9px}.exercise.done .exercise-check{background:var(--accent2);color:#fff}.exercise strong,.exercise small{display:block}.exercise strong{font-size:11px}.exercise small{font-size:8px;color:var(--muted);margin-top:3px}.exercise>span{font:500 9px var(--mono)}.finish-session{width:100%;border:0;border-radius:99px;padding:13px;background:var(--bg);color:#fff;font-weight:700}.finish-session:disabled{opacity:.3}.recovery-card{background:#dceddf}.recovery-card button,.quiet-time button{border:0;background:none;color:var(--accent2);font-size:10px;font-weight:700;padding:0}.date-picker{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;margin:12px 0}.date-picker button{border:0;background:rgba(255,255,255,.06);color:#fff;border-radius:13px;padding:9px 2px}.date-picker span,.date-picker b{display:block}.date-picker span{font:500 7px var(--mono);opacity:.45}.date-picker b{font:400 19px var(--serif);margin-top:4px}.date-picker button.active{background:var(--accent);color:var(--bg)}.booking-list{display:grid;gap:9px}.booking-card{background:var(--card);border-radius:20px;padding:14px;display:grid;grid-template-columns:50px 1fr auto;gap:11px;align-items:center}.booking-time{height:54px;border-radius:14px;background:var(--bg);color:#fff;display:grid;place-content:center;text-align:center}.booking-time strong,.booking-time small{display:block}.booking-time strong{font:400 18px var(--serif)}.booking-time small{font:500 6px var(--mono);color:var(--accent)}.booking-card h3{font:400 21px var(--serif);margin:0}.booking-card p{font-size:8px;color:var(--muted)}.booking-card button{border:0;border-radius:99px;background:var(--accent2);color:#fff;padding:9px 11px;font-size:8px;font-weight:700}.booking-card button.booked{background:#d7ddd6;color:var(--ink)}.quiet-time{display:flex;align-items:center;gap:20px}.quiet-time div{flex:1}.challenge-card{background:linear-gradient(145deg,#b8f34a,#5bca89);border-radius:26px;padding:21px;display:grid;grid-template-columns:1fr 105px;align-items:center}.challenge-card span{color:var(--bg)}.challenge-card h2{font:400 35px var(--serif);margin:9px 0}.challenge-card p{font-size:10px;line-height:1.5}.challenge-stats{display:flex;gap:25px}.challenge-stats strong,.challenge-stats small{display:block}.challenge-stats strong{font:400 20px var(--serif)}.challenge-stats small{font-size:7px}.challenge-ring{width:95px;height:95px;border-radius:50%;border:11px solid rgba(16,28,35,.13);border-top-color:var(--bg);display:grid;place-items:center}.challenge-ring strong{font:400 25px var(--serif)}.tribe-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.tribe-grid button{border:0;background:var(--card);border-radius:20px;padding:10px;text-align:left}.tribe-photo{height:95px;border-radius:14px;display:block;margin-bottom:11px}.tribe-photo.runners{background:linear-gradient(140deg,transparent,rgba(0,0,0,.25)),#d46f4c}.tribe-photo.strength{background:linear-gradient(140deg,transparent,rgba(0,0,0,.25)),#416c72}.tribe-grid strong,.tribe-grid small{display:block}.tribe-grid strong{font:400 18px var(--serif)}.tribe-grid small{font-size:8px;color:var(--muted);margin-top:4px}.feed{display:grid;gap:10px}.feed-card{background:var(--card);border-radius:20px;padding:15px}.feed-head{display:flex;align-items:center;gap:9px}.feed-head .avatar{width:33px;height:33px;border-radius:50%;background:#d9b598;display:grid;place-items:center;font-size:8px;font-weight:700}.feed-head strong,.feed-head small{display:block}.feed-head strong{font-size:10px}.feed-head small{font-size:7px;color:var(--muted)}.feed-card p{font-size:11px;line-height:1.5}.feed-card button{border:0;background:none;padding:0;margin-right:16px;color:var(--muted);font-size:9px}.profile-hero{text-align:center;color:#fff;padding:15px 0 23px}.large-avatar{width:80px;height:80px;border-radius:50%;background:#e1b693;color:#4c2c20;display:grid;place-items:center;margin:auto;font:700 17px var(--sans);border:5px solid rgba(255,255,255,.1)}.profile-hero h1{font:400 36px var(--serif);margin:14px 0 2px}.profile-hero p{font-size:9px;color:rgba(255,255,255,.5)}.profile-hero>div:last-child{display:flex;justify-content:center;gap:30px;margin-top:19px}.profile-hero strong,.profile-hero small{display:block}.profile-hero strong{font:400 26px var(--serif);color:var(--accent)}.profile-hero small{font-size:7px;color:rgba(255,255,255,.45)}.profile-menu{background:var(--card);border-radius:22px;padding:3px 15px}.profile-menu button{width:100%;border:0;background:transparent;padding:14px 0;display:grid;grid-template-columns:1fr auto;text-align:left;border-bottom:1px solid var(--line)}.profile-menu span,.profile-menu small{display:block}.profile-menu span{font-size:11px;font-weight:600}.profile-menu small{font-size:8px;color:var(--muted);margin-top:4px}.profile-menu b{grid-row:1/3;grid-column:2}.membership-card{background:var(--accent);color:var(--bg)}.membership-card strong{display:block;font:400 42px var(--serif);margin:13px 0 0}.membership-card strong small{font:500 8px var(--mono)}.membership-card p{font-size:9px}.membership-card button{border:0;border-radius:99px;padding:10px 12px;font-size:8px;font-weight:700;background:var(--bg);color:#fff}.membership-card button+button{background:rgba(16,28,35,.12);color:var(--bg)}.powered{text-align:center;background:transparent;color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.08)}.powered span{font-size:8px}.powered strong{display:block;color:#fff;font:500 12px var(--mono);letter-spacing:.12em;margin:5px}.powered p{font-size:8px}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(100%,520px);height:74px;background:rgba(12,23,29,.96);backdrop-filter:blur(20px);display:grid;grid-template-columns:repeat(5,1fr);padding:7px 9px max(7px,env(safe-area-inset-bottom));z-index:30;border-top:1px solid rgba(255,255,255,.08)}.bottom-nav button{border:0;background:transparent;color:rgba(255,255,255,.4);display:grid;place-content:center;gap:3px}.bottom-nav i{font-style:normal;font-size:18px}.bottom-nav span{font-size:7px}.bottom-nav button.active{color:var(--accent)}.bottom-nav .access-nav i{width:46px;height:46px;border-radius:50%;background:var(--accent);color:var(--bg);display:grid;place-items:center;margin-top:-22px;box-shadow:0 10px 30px rgba(184,243,74,.25)}.sheet-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);display:none;align-items:end;justify-content:center;z-index:60}.sheet-backdrop.open{display:flex}.bottom-sheet{width:min(100%,520px);max-height:88vh;overflow:auto;background:var(--card);border-radius:27px 27px 0 0;padding:24px;position:relative;animation:sheet .3s ease}.sheet-close{position:absolute;right:16px;top:16px;width:34px;height:34px;border:0;border-radius:50%;background:#ddd9cf}.access-sheet{text-align:center}.access-brand{font:600 10px var(--mono);letter-spacing:.1em}.access-sheet h2,.detail-sheet h2{font:400 34px var(--serif);margin:12px}.access-orb{width:190px;height:190px;border-radius:50%;background:var(--bg);margin:25px auto;display:grid;place-items:center;box-shadow:0 0 0 12px #dfe5d6}.access-orb:before{content:"⌁";color:var(--accent);font-size:70px}.access-sheet strong,.access-sheet small{display:block}.access-sheet small{color:var(--muted);margin-top:4px}.access-sheet button,.detail-sheet button{border:0;background:var(--accent2);color:#fff;border-radius:99px;padding:12px 18px;font-weight:700;margin-top:18px}.signal-list{display:grid;gap:8px;margin:20px 0}.signal-list div{display:grid;grid-template-columns:1fr auto;gap:8px;text-align:left;background:#fff;padding:13px;border-radius:13px}.signal-list small{grid-column:1/-1;color:var(--muted)}.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);background:#fff;color:var(--ink);padding:11px 16px;border-radius:99px;font-size:9px;font-weight:700;opacity:0;pointer-events:none;transition:.25s;z-index:80;box-shadow:0 12px 40px rgba(0,0,0,.28)}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes sheet{from{transform:translateY(30px);opacity:0}}@media(min-width:800px){body{padding:24px 0}.member-shell{min-height:calc(100vh - 48px);border-radius:35px;overflow:hidden}.bottom-nav{bottom:24px;border-radius:0 0 35px 35px}.sheet-backdrop{align-items:center}.bottom-sheet{border-radius:28px;max-height:80vh}}@media(max-width:390px){.hero-grid{grid-template-columns:1fr}.capacity-card{min-height:145px}.readiness-card{grid-template-columns:80px 1fr}.intervention-card{grid-template-columns:1fr}.coach-avatar{display:none}.class-row,.tribe-grid{grid-template-columns:1fr}.challenge-card{grid-template-columns:1fr}.challenge-ring{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
