:root{--bg:#0c0b0a;--surface:#151311;--surface-2:#1d1a17;--line:#302b26;--text:#f7f2eb;--muted:#9e968e;--orange:#ff5a1f;--orange-soft:#562414;--lime:#c8ff3d;--purple:#a987ff;--radius:22px;--shadow:0 24px 70px rgba(0,0,0,.35)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;min-height:100vh}button,select,input{font:inherit}button{color:inherit}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(100px);opacity:.12;z-index:0}.ambient-a{width:430px;height:430px;background:var(--orange);top:-190px;right:8%}.ambient-b{width:360px;height:360px;background:#6c2d13;bottom:-180px;left:26%}.app-shell{min-height:100vh;position:relative;z-index:1}.sidebar{position:fixed;inset:0 auto 0 0;width:248px;border-right:1px solid var(--line);background:rgba(12,11,10,.94);backdrop-filter:blur(20px);padding:30px 20px;display:flex;flex-direction:column;z-index:20}.brand{display:flex;align-items:center;gap:12px;color:var(--text);text-decoration:none;padding:0 8px;font-size:17px;line-height:.94;letter-spacing:.04em}.brand strong{font-weight:900}.brand small{display:block;font-size:8px;letter-spacing:.34em;color:var(--orange);margin-top:7px}.brand-mark{width:34px;height:38px;display:flex;gap:3px;align-items:center;transform:skew(-8deg)}.brand-mark i{width:7px;background:var(--orange);border-radius:2px}.brand-mark i:nth-child(1){height:20px}.brand-mark i:nth-child(2){height:34px}.brand-mark i:nth-child(3){height:26px}.main-nav{display:grid;gap:8px;margin-top:58px}.nav-item{appearance:none;border:0;background:transparent;display:flex;align-items:center;gap:14px;width:100%;padding:13px 15px;border-radius:13px;color:#8f8881;cursor:pointer;text-align:left;transition:.2s ease}.nav-item:hover{background:#191613;color:#fff}.nav-item.active{background:linear-gradient(90deg,rgba(255,90,31,.16),rgba(255,90,31,.04));color:#fff;box-shadow:inset 3px 0 var(--orange)}.nav-icon{font-size:21px;width:22px;text-align:center}.sidebar-bottom{margin-top:auto}.mini-streak{display:flex;align-items:center;gap:12px;padding:16px 13px;margin-bottom:16px;border:1px solid var(--line);border-radius:15px;background:#151311}.mini-streak .flame{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;background:var(--orange-soft);color:var(--orange)}.mini-streak strong,.mini-streak small,.user-card strong,.user-card small{display:block}.mini-streak strong{font-size:13px}.mini-streak small,.user-card small{font-size:11px;color:var(--muted);margin-top:3px}.user-card{width:100%;border:0;border-top:1px solid var(--line);background:none;padding:18px 4px 0;display:flex;align-items:center;text-align:left;gap:11px;cursor:pointer}.avatar,.mobile-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(145deg,#ff7848,#a8340a);font-size:12px;font-weight:800;border:1px solid #ff8c63}.user-card strong{font-size:13px}.chevron{margin-left:auto;color:var(--muted);font-size:22px}.main-content{margin-left:248px;padding:0 42px 100px;max-width:1680px}.topbar{height:116px;display:flex;justify-content:space-between;align-items:center}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.17em;font-weight:800;color:#817a73}.topbar h1{font-size:30px;margin:7px 0 0;letter-spacing:-.04em}.topbar h1 span{font-size:22px}.top-actions{display:flex;align-items:center;gap:13px}.prototype-badge{border:1px solid var(--line);color:var(--muted);padding:7px 11px;border-radius:30px;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.icon-button,.mobile-avatar{border:1px solid var(--line);background:var(--surface);cursor:pointer}.icon-button{width:42px;height:42px;border-radius:13px;position:relative}.icon-button i{position:absolute;width:7px;height:7px;background:var(--orange);border:2px solid var(--surface);border-radius:50%;right:8px;top:7px}.mobile-avatar{display:none;color:#fff}.view{display:none;animation:fade .32s ease}.view.active{display:block}@keyframes fade{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.hero-grid{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(285px,.75fr);gap:20px}.hero-card,.membership-card,.panel,.goal-hero,.profile-hero{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#1b1714,#12110f);box-shadow:var(--shadow)}.hero-card{min-height:350px;position:relative;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr}.hero-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 72% 15%,rgba(255,90,31,.22),transparent 38%)}.hero-copy{padding:34px 0 32px 36px;position:relative;z-index:2}.section-kicker i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--orange);box-shadow:0 0 16px var(--orange);margin-right:7px}.hero-card h2{font-size:44px;line-height:.93;letter-spacing:-.055em;text-transform:uppercase;margin:17px 0 27px}.hero-card h2 em{font-style:normal;color:var(--orange)}.class-meta{display:flex;gap:30px}.class-meta span{padding-right:28px;border-right:1px solid var(--line)}.class-meta span:last-child{border:0}.class-meta b,.class-meta small{display:block}.class-meta b{font-size:12px}.class-meta small{font-size:10px;margin-top:4px;color:var(--muted)}.hero-actions{display:flex;gap:10px;margin-top:29px}.primary-button,.secondary-button,.book-button,.text-button{border:0;cursor:pointer;font-weight:750;transition:.2s ease}.primary-button{background:var(--orange);color:#fff;border-radius:12px;padding:13px 18px;box-shadow:0 10px 30px rgba(255,90,31,.2)}.primary-button:hover{background:#ff713d;transform:translateY(-1px)}.primary-button span{margin-left:12px}.secondary-button{background:#211d19;border:1px solid #3d3630;border-radius:12px;padding:12px 16px;color:#d7d0ca}.secondary-button:hover{border-color:#5e5149;background:#28231f}.hero-visual{position:relative;min-height:100%;overflow:hidden}.impact-ring{position:absolute;width:128px;height:128px;border-radius:50%;border:1px solid rgba(255,255,255,.19);background:rgba(12,11,10,.6);backdrop-filter:blur(14px);display:grid;place-content:center;text-align:center;right:37px;top:55px;z-index:3;box-shadow:0 0 0 9px rgba(255,255,255,.025)}.impact-ring span{font-size:34px;font-weight:900;color:var(--orange);line-height:1}.impact-ring small{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#c2bab3;margin-top:6px}.weight{position:absolute;background:linear-gradient(90deg,#0a0908,#39312b,#0e0c0b);border:1px solid #443a33;transform:rotate(-22deg);box-shadow:0 30px 55px #000}.weight:before,.weight:after{content:"";position:absolute;top:-27px;width:32px;height:88px;border-radius:9px;background:linear-gradient(90deg,#111,#3e3934,#111);border:1px solid #4d4640}.weight:before{left:12px}.weight:after{right:12px}.weight-a{width:235px;height:36px;right:-26px;bottom:65px}.weight-b{width:180px;height:29px;right:35px;bottom:145px;opacity:.72}.hero-word{position:absolute;right:-18px;bottom:-18px;font-size:72px;font-weight:950;color:rgba(255,255,255,.025);letter-spacing:-.06em;transform:rotate(-90deg);transform-origin:right bottom}.membership-card{padding:29px;display:flex;flex-direction:column}.card-heading,.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.status-dot,.goal-pill{font-size:9px;font-weight:850;letter-spacing:.11em;padding:7px 10px;border-radius:20px;background:rgba(200,255,61,.09);color:var(--lime);border:1px solid rgba(200,255,61,.17)}.membership-card h3{font-size:29px;margin:29px 0 4px;letter-spacing:-.04em}.membership-card>p{color:var(--muted);font-size:12px;margin:0}.renewal{margin-top:32px}.renewal-days{display:flex;align-items:center;gap:11px}.renewal-days strong{font-size:49px;line-height:1;color:var(--orange);letter-spacing:-.06em}.renewal-days span{color:var(--muted);font-size:11px;line-height:1.35}.progress-track,.mini-bar{height:5px;display:block;background:#2c2824;border-radius:9px;overflow:hidden}.progress-track{margin-top:18px}.progress-track i,.mini-bar i,.routine-progress div i,.capacity i{height:100%;display:block;background:var(--orange);border-radius:inherit}.renewal-dates{display:flex;justify-content:space-between;margin-top:7px;font-size:8px;color:#726c66}.text-button{margin-top:auto;background:none;color:#eee;text-align:left;padding:17px 0 0;border-top:1px solid var(--line)}.text-button span{float:right;color:var(--orange)}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:18px}.stat-card{background:#141210;border:1px solid #292521;border-radius:17px;padding:18px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:13px}.stat-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-weight:900}.stat-icon.orange{background:var(--orange-soft);color:var(--orange)}.stat-icon.lime{background:rgba(200,255,61,.09);color:var(--lime)}.stat-icon.purple{background:rgba(169,135,255,.11);color:var(--purple)}.stat-card div span{font-size:8px;letter-spacing:.12em;color:#8d857e;font-weight:800;display:block}.stat-card strong{font-size:26px;display:block;margin-top:4px}.stat-card strong small{font-size:11px;font-weight:500;color:var(--muted)}.trend{font-size:9px;color:#8e8780}.mini-bar{width:70px}.mini-bar i{background:var(--purple)}.content-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-top:18px}.panel{padding:28px}.panel h3{font-size:21px;margin:6px 0 0;letter-spacing:-.03em}.circle-button{width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:#1e1b18;color:var(--orange);cursor:pointer}.routine-progress{display:grid;grid-template-columns:1fr auto;gap:7px;margin:25px 0 10px;color:var(--muted);font-size:10px}.routine-progress b{color:var(--orange)}.routine-progress div{grid-column:1/-1;height:4px;background:#2b2723;border-radius:5px}.routine-progress div i{background:var(--orange);transition:.3s}.exercise-list{display:grid}.exercise{border:0;border-top:1px solid #2b2723;background:transparent;display:grid;grid-template-columns:28px 1fr auto;align-items:center;text-align:left;padding:13px 3px;cursor:pointer;color:var(--text)}.exercise .check{width:18px;height:18px;border:1px solid #4a423c;border-radius:50%;display:grid;place-items:center;font-size:10px}.exercise.done .check{background:var(--orange);border-color:var(--orange)}.exercise b,.exercise small{display:block}.exercise b{font-size:12px}.exercise small{font-size:9px;color:var(--muted);margin-top:4px}.exercise em{font-style:normal;font-size:11px;color:#aba39c}.exercise.done{opacity:.6}.exercise.done b{text-decoration:line-through}.week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin-top:34px}.week-days div{height:92px;background:#1c1916;border:1px solid #2c2824;border-radius:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.week-days span,.week-days small{font-size:8px;color:#827a73}.week-days i{width:26px;height:26px;border-radius:50%;background:#28231f;display:grid;place-items:center;font-style:normal;font-size:10px}.week-days .completed i{background:var(--orange);color:#fff}.week-days .today{border-color:var(--orange);background:#231510}.week-days .today i{border:2px solid var(--orange);background:transparent}.insight{display:flex;gap:12px;padding:15px;border-radius:13px;background:rgba(200,255,61,.055);border:1px solid rgba(200,255,61,.12);margin-top:20px}.insight span{color:var(--lime)}.insight p{font-size:10px;line-height:1.5;margin:0;color:var(--muted)}.insight b{color:#e9e4df}.coach-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:17px;margin-top:18px;padding:19px 23px;border:1px solid var(--line);border-radius:17px;background:linear-gradient(90deg,#1c1713,#141210)}.coach-avatar{width:45px;height:45px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#f36b3a,#6f2b13);font-weight:900}.coach-strip p{margin:5px 0 0;font-size:11px;color:#b3aba4;line-height:1.45}.page-intro{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:15px 0 31px}.page-intro h2{font-size:39px;letter-spacing:-.05em;margin:7px 0 6px}.page-intro p{color:var(--muted);margin:0;font-size:13px}.date-switcher{display:flex;align-items:center;gap:15px;background:var(--surface);border:1px solid var(--line);border-radius:13px;padding:7px}.date-switcher button{border:0;background:#27221e;color:#ccc;width:31px;height:31px;border-radius:9px;cursor:pointer}.date-switcher span{font-size:11px;font-weight:800;letter-spacing:.07em}.filter-chips{display:flex;gap:8px;overflow:auto;padding-bottom:15px}.filter-chips button{white-space:nowrap;border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:30px;padding:9px 14px;cursor:pointer;font-size:11px}.filter-chips button.active{color:#fff;background:var(--orange);border-color:var(--orange)}.classes-list{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#13110f}.class-row{display:grid;grid-template-columns:70px 4px 1fr 180px 110px;align-items:center;gap:18px;padding:22px 24px;border-bottom:1px solid var(--line)}.class-row:last-child{border:0}.class-row time b,.class-row time small{display:block}.class-row time b{font-size:20px}.class-row time small{font-size:9px;color:var(--muted)}.class-color{height:41px;border-radius:4px}.class-color.orange{background:var(--orange)}.class-color.lime{background:var(--lime)}.class-color.purple{background:var(--purple)}.class-info h3{font-size:15px;margin:0}.class-info p{font-size:10px;color:var(--muted);margin:5px 0 0}.capacity{display:flex;align-items:center;gap:10px}.capacity span{width:78px;height:4px;background:#332e29;border-radius:4px}.capacity small{font-size:9px;color:var(--muted)}.book-button{border:1px solid #4d413a;background:#251e1a;border-radius:11px;padding:10px;color:#eee}.book-button:hover,.book-button.booked{border-color:var(--orange);color:var(--orange);background:#29170f}.goal-hero{min-height:270px;padding:38px;display:flex;justify-content:space-between;align-items:center;background:radial-gradient(circle at 90% 20%,rgba(255,90,31,.24),transparent 35%),linear-gradient(145deg,#211713,#12100f)}.goal-hero span{font-size:9px;letter-spacing:.16em;color:var(--orange);font-weight:900}.goal-hero h2{font-size:41px;line-height:1;margin:15px 0;letter-spacing:-.05em}.goal-hero p{font-size:12px;color:var(--muted)}.goal-circle{width:160px;height:160px;border-radius:50%;display:grid;place-content:center;text-align:center;border:11px solid #34251f;outline:3px solid var(--orange);outline-offset:-9px}.goal-circle strong{font-size:37px}.goal-circle small{font-size:9px;color:var(--muted)}.plan-grid,.profile-grid,.progress-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:18px;margin-top:18px}.plan-days{margin-top:20px}.plan-days>div{display:grid;grid-template-columns:48px 1fr auto;gap:6px 13px;padding:17px;border-top:1px solid var(--line);align-items:center}.plan-days span{grid-row:1/3;font-size:9px;color:var(--muted)}.plan-days b{font-size:13px}.plan-days small{font-size:9px;color:var(--muted)}.plan-days i{grid-row:1/3;grid-column:3;font-style:normal;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#2b2724}.plan-days .done{opacity:.65}.plan-days .done i,.plan-days .active i{background:var(--orange)}.plan-days .active{background:rgba(255,90,31,.05)}.coach-note{text-align:center}.coach-note .coach-avatar{margin:29px auto 18px}.coach-note blockquote{margin:0;font-size:14px;line-height:1.6;color:#d3cbc4}.coach-note>small{display:block;margin-top:20px;color:var(--muted);font-size:9px}.period-select{border:1px solid var(--line);background:#181512;color:#ddd;padding:11px 33px 11px 14px;border-radius:12px;font-size:11px}.progress-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.progress-cards article{padding:22px;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.progress-cards span,.progress-cards strong,.progress-cards em{display:block}.progress-cards span{font-size:8px;letter-spacing:.14em;color:var(--muted);font-weight:800}.progress-cards strong{font-size:31px;margin:11px 0 7px}.progress-cards strong small{font-size:12px}.progress-cards em{font-style:normal;color:var(--lime);font-size:9px}.chart-panel{min-height:350px}.trend.big{color:var(--lime);font-weight:800}.bar-chart{height:250px;display:flex;align-items:flex-end;justify-content:space-around;gap:22px;padding-top:35px}.bar-chart div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:10px}.bar-chart i{width:38%;max-width:54px;background:#39332e;border-radius:9px 9px 3px 3px}.bar-chart span{font-size:8px;color:var(--muted)}.bar-chart .current i{background:linear-gradient(var(--orange),#8b2f0e);box-shadow:0 0 30px rgba(255,90,31,.15)}.milestones>div:not(.panel-head){display:flex;align-items:center;gap:13px;padding:17px 0;border-top:1px solid var(--line)}.medal{width:39px;height:39px;border-radius:12px;background:var(--orange-soft);color:var(--orange);display:grid;place-items:center}.medal.muted{color:var(--lime);background:rgba(200,255,61,.09)}.milestones p{margin:0}.milestones b,.milestones small{display:block}.milestones b{font-size:12px}.milestones small{font-size:9px;color:var(--muted);margin-top:4px}.milestones .locked{opacity:.42}.profile-hero{padding:30px;display:flex;align-items:center;gap:20px}.profile-avatar{width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#ff7543,#7d2709);font-size:24px;font-weight:900;border:2px solid #ff9d79}.profile-hero h2{font-size:30px;margin:6px 0 4px}.profile-hero p{color:var(--muted);margin:0;font-size:11px}.profile-hero button{margin-left:auto}.detail-list p{display:flex;justify-content:space-between;gap:20px;padding:15px 0;border-top:1px solid var(--line);margin:0;font-size:11px}.detail-list p:first-of-type{margin-top:20px}.detail-list p span{color:var(--muted)}.bottom-nav{display:none}.ai-fab{position:fixed;right:26px;bottom:25px;border:1px solid #e34912;border-radius:30px;background:linear-gradient(135deg,#ff6c35,#dc3f08);box-shadow:0 18px 50px rgba(255,90,31,.28);padding:12px 17px;color:#fff;z-index:30;cursor:pointer;display:flex;gap:9px;align-items:center}.ai-fab span{font-size:16px}.ai-fab b{font-size:11px}.ai-panel{position:fixed;right:25px;bottom:82px;width:350px;height:480px;background:rgba(23,20,17,.97);border:1px solid #413933;border-radius:22px;box-shadow:0 28px 90px #000;z-index:50;display:flex;flex-direction:column;transform:translateY(25px) scale(.96);opacity:0;pointer-events:none;transition:.25s}.ai-panel.open{transform:none;opacity:1;pointer-events:auto}.ai-head{display:flex;align-items:center;justify-content:space-between;padding:18px;border-bottom:1px solid var(--line)}.ai-head>div{display:flex;align-items:center;gap:10px}.ai-orb{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:var(--orange);box-shadow:0 0 25px rgba(255,90,31,.25)}.ai-head b,.ai-head small{display:block}.ai-head b{font-size:13px}.ai-head small{font-size:9px;color:var(--muted);margin-top:3px}.ai-head>button{border:0;background:none;color:var(--muted);font-size:24px;cursor:pointer}.ai-body{padding:18px;flex:1;overflow:auto}.ai-message{background:#24201c;border:1px solid var(--line);border-radius:4px 14px 14px 14px;padding:14px;font-size:11px;line-height:1.5}.ai-body p{font-size:8px;letter-spacing:.15em;color:var(--muted);margin:25px 0 9px}.ai-body button{width:100%;text-align:left;border:1px solid var(--line);background:transparent;color:#bbb3ac;padding:10px 12px;border-radius:10px;margin-bottom:7px;font-size:10px;cursor:pointer}.ai-input{display:flex;padding:13px;border-top:1px solid var(--line);gap:8px}.ai-input input{flex:1;background:#211d19;border:1px solid var(--line);border-radius:11px;padding:11px;color:#fff;outline:none;font-size:11px}.ai-input button{width:38px;border-radius:11px;border:0;background:var(--orange);color:#fff}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,25px);background:#f4eee8;color:#171311;border-radius:13px;padding:12px 18px;display:flex;align-items:center;gap:11px;z-index:80;box-shadow:0 15px 50px #000;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}.toast>span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#daf5a0;font-weight:900}.toast p{margin:0}.toast b,.toast small{display:block}.toast b{font-size:11px}.toast small{font-size:9px;color:#776f68;margin-top:2px}
@media(max-width:1100px){.main-content{padding-left:26px;padding-right:26px}.hero-grid{grid-template-columns:1fr}.membership-card{min-height:270px}.stats-grid{grid-template-columns:1fr}.content-grid,.plan-grid,.profile-grid,.progress-grid{grid-template-columns:1fr}.progress-cards{grid-template-columns:repeat(2,1fr)}.class-row{grid-template-columns:60px 4px 1fr 100px}.class-row .capacity{display:none}}
@media(max-width:760px){body{padding-bottom:74px}.sidebar{display:none}.main-content{margin-left:0;padding:0 17px 40px}.topbar{height:92px}.topbar h1{font-size:25px}.eyebrow{font-size:8px}.prototype-badge,.icon-button{display:none}.mobile-avatar{display:grid}.hero-card{display:block;min-height:auto}.hero-copy{padding:27px 23px}.hero-card h2{font-size:38px}.hero-visual{display:none}.class-meta{gap:16px}.class-meta span{padding-right:15px}.hero-actions{display:grid;grid-template-columns:1fr 1fr}.primary-button,.secondary-button{font-size:11px}.membership-card{min-height:280px;padding:24px}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{display:flex;align-items:flex-start;min-height:120px;flex-wrap:wrap}.stat-card .trend,.stat-card .mini-bar{width:100%}.stat-card:nth-child(3){grid-column:1/-1}.content-grid{display:block}.week-panel{margin-top:16px}.panel{padding:22px 18px}.week-days{gap:4px}.week-days div{height:82px}.coach-strip{grid-template-columns:auto 1fr}.coach-strip button{grid-column:1/-1}.bottom-nav{display:grid;position:fixed;bottom:0;left:0;right:0;grid-template-columns:repeat(5,1fr);height:68px;background:rgba(15,13,12,.96);border-top:1px solid var(--line);backdrop-filter:blur(20px);z-index:40;padding:7px 6px env(safe-area-inset-bottom)}.bottom-nav .nav-item{padding:4px;display:flex;flex-direction:column;gap:3px;align-items:center;justify-content:center;border-radius:10px}.bottom-nav .nav-item.active{box-shadow:none;background:transparent;color:var(--orange)}.bottom-nav span{font-size:18px}.bottom-nav small{font-size:8px}.ai-fab{right:16px;bottom:84px;padding:12px}.ai-fab b{display:none}.ai-panel{inset:auto 12px 82px;width:auto;height:min(520px,70vh)}.page-intro{align-items:flex-start;flex-direction:column}.page-intro h2{font-size:31px}.date-switcher{align-self:stretch;justify-content:space-between}.class-row{grid-template-columns:49px 3px 1fr;gap:11px;padding:18px 15px}.class-row .book-button{grid-column:3;width:100%}.goal-hero{padding:27px;min-height:310px}.goal-hero h2{font-size:33px}.goal-circle{width:118px;height:118px}.goal-circle strong{font-size:27px}.progress-cards{grid-template-columns:1fr 1fr}.profile-hero{align-items:flex-start;flex-wrap:wrap}.profile-hero button{margin-left:0;width:100%}.toast{bottom:88px;width:calc(100% - 28px)} }
@media(max-width:430px){.class-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.class-meta span{padding:0;border:0}.hero-actions{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.stat-card:nth-child(3){grid-column:auto}.week-days div{height:72px}.week-days span,.week-days small{font-size:7px}.week-days i{width:22px;height:22px}.goal-hero{display:block}.goal-circle{margin-top:25px}.progress-cards{grid-template-columns:1fr}.profile-grid{grid-template-columns:1fr}.page-intro .secondary-button{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* Segunda propuesta: estructura más clara y cuatro bloques en Inicio */
.glass-card{background:linear-gradient(145deg,rgba(31,27,24,.78),rgba(17,15,14,.7));border-color:rgba(255,255,255,.105);box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 24px 70px rgba(0,0,0,.31);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.empty-state{display:none}.hero-card.no-booking .booked-state{display:none}.hero-card.no-booking .empty-state{display:block}.hero-card.no-booking .impact-ring span{color:var(--muted)}.empty-copy{max-width:420px;color:var(--muted);font-size:12px;line-height:1.55;margin:-5px 0 25px}
.plan-timelines{display:grid;gap:18px;margin-top:24px}.timeline-row{display:grid;grid-template-columns:1fr auto;gap:5px 12px}.timeline-row div:first-child span,.timeline-row div:first-child b{display:block}.timeline-row div:first-child span{font-size:8px;letter-spacing:.14em;color:#817a73;font-weight:800}.timeline-row div:first-child b{font-size:11px;margin-top:4px}.timeline-row>small{font-size:9px;color:#a59d96;align-self:end}.timeline-row .progress-track{grid-column:1/-1;margin-top:3px}.timeline-row .lifetime i{background:linear-gradient(90deg,#7d655b,#b99180)}.renewal-row{padding-top:15px;border-top:1px solid rgba(255,255,255,.07)}
.home-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.home-summary-card{min-height:240px;padding:27px 29px;border-radius:var(--radius)}.summary-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.summary-top h3{font-size:24px;letter-spacing:-.04em;margin:7px 0 0}.summary-numbers{display:grid;grid-template-columns:repeat(3,1fr);margin-top:34px}.summary-numbers>div{padding:0 18px;border-right:1px solid rgba(255,255,255,.08)}.summary-numbers>div:first-child{padding-left:0}.summary-numbers>div:last-child{border:0}.summary-numbers strong,.summary-numbers small{display:block}.summary-numbers strong{font-size:30px}.summary-numbers small{font-size:9px;color:var(--muted);margin-top:3px}.home-summary-card .text-button{display:block;width:100%;margin-top:30px}.summary-percent{font-size:34px;color:var(--orange);letter-spacing:-.05em}.objective-bar{height:7px;border-radius:8px;background:#302a26;margin-top:35px;overflow:hidden}.objective-bar i{display:block;height:100%;background:linear-gradient(90deg,#d9430d,#ff7b4b);border-radius:inherit;box-shadow:0 0 24px rgba(255,90,31,.3)}.goal-summary>p{font-size:11px;color:var(--muted);margin:13px 0 0}.training-grid{margin-top:18px}.progress-cards{margin-top:18px}.progress-cards article{background:linear-gradient(145deg,rgba(29,25,22,.74),rgba(18,16,14,.68));border-color:rgba(255,255,255,.095);backdrop-filter:blur(18px)}
.bottom-nav{grid-template-columns:repeat(4,1fr)!important}
@media(max-width:1100px){.home-summary-grid{grid-template-columns:1fr}.membership-card{min-height:auto}.hero-grid{grid-template-columns:1fr}.progress-grid.training-grid{grid-template-columns:1fr}}
@media(max-width:760px){.home-summary-grid{gap:14px;margin-top:14px}.home-summary-card{min-height:auto;padding:23px}.summary-numbers{margin-top:27px}.hero-card.no-booking{min-height:330px}.plan-timelines{margin-top:22px}.membership-card{min-height:auto}.progress-cards{grid-template-columns:1fr 1fr}.goal-hero{gap:16px}}
@media(max-width:430px){.summary-numbers>div{padding:0 9px}.summary-numbers strong{font-size:25px}.summary-top h3{font-size:21px}.progress-cards{grid-template-columns:1fr}.goal-hero{display:block}.goal-circle{margin-top:25px}.timeline-row{grid-template-columns:1fr}.timeline-row>small{grid-row:2}.timeline-row .progress-track{grid-row:3}}

/* Iconografía y calendario de asistencia */
svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.nav-icon{width:21px;height:21px;flex:0 0 21px}.mini-streak .flame svg,.stat-icon svg,.medal svg,.ai-fab svg,.ai-orb svg,.calendar-summary svg{width:20px;height:20px}.stat-icon svg{width:21px;height:21px}.ai-fab span{display:grid;place-items:center}.ai-fab svg{stroke-width:1.7}.ai-orb svg{width:18px;height:18px}.medal svg{width:19px;height:19px}.bottom-nav svg{width:20px;height:20px}.bottom-nav span{font-size:inherit}
.attendance-calendar{margin-top:18px;padding:29px}.calendar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:25px}.calendar-head h3{font-size:24px;margin:7px 0 4px;letter-spacing:-.04em}.calendar-head p{font-size:10px;color:var(--muted);margin:0}.calendar-legend{display:flex;align-items:center;gap:15px;flex-wrap:wrap}.calendar-legend span{display:flex;align-items:center;gap:6px;font-size:9px;color:var(--muted)}.calendar-legend i{width:9px;height:9px;border-radius:3px}.calendar-legend .attended{background:var(--orange)}.calendar-legend .missed{background:#e34b4b}.calendar-legend .neutral{background:#eee9e4}.month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:25px}.month-grid>b{font-size:8px;letter-spacing:.12em;color:#827a73;text-align:center;padding:4px}.month-grid>span{min-height:68px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.025);border-radius:11px;padding:9px;font-size:11px;font-weight:750;color:#c7bfb8;position:relative}.month-grid>span small{display:block;font-size:7px;margin-top:17px;color:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:650}.month-grid>span.attended{background:linear-gradient(145deg,rgba(255,90,31,.3),rgba(255,90,31,.13));border-color:rgba(255,112,60,.6);color:#ffd4c4}.month-grid>span.missed{background:linear-gradient(145deg,rgba(227,75,75,.25),rgba(227,75,75,.1));border-color:rgba(227,75,75,.5);color:#ffc5c5}.month-grid>span.outside{opacity:.3}.month-grid>span.today:after{content:"HOY";position:absolute;right:7px;top:8px;font-size:6px;letter-spacing:.1em;color:#fff}.calendar-summary{display:flex;align-items:center;gap:12px;margin-top:17px;padding:14px 16px;border-radius:13px;background:rgba(255,90,31,.07);border:1px solid rgba(255,90,31,.14);color:var(--orange)}.calendar-summary p{margin:0;color:var(--text)}.calendar-summary b,.calendar-summary small{display:block}.calendar-summary b{font-size:11px}.calendar-summary small{font-size:9px;color:var(--muted);margin-top:3px}.goal-circle small{max-width:78px;line-height:1.25;margin:auto}
@media(max-width:760px){.calendar-head{display:block}.calendar-legend{margin-top:18px}.attendance-calendar{padding:22px 16px}.month-grid{gap:4px}.month-grid>span{min-height:52px;padding:7px;font-size:9px}.month-grid>span small{display:none}.month-grid>span.today:after{font-size:5px;right:4px;top:5px}}

/* Identidad Mi Body Impact */
.brand-official{gap:8px;padding:0 2px;height:64px;overflow:hidden}.mi-word{font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:700;font-style:italic;letter-spacing:-.07em;color:var(--orange);line-height:1;flex:0 0 auto}.official-logo-frame{position:relative;display:block;width:160px;height:58px;overflow:hidden;flex:0 0 auto}.official-logo-frame img{position:absolute;width:215px;height:215px;max-width:none;left:-30px;top:-79px;display:block}.mobile-brand{display:none;align-items:center;gap:6px;height:45px;margin-bottom:9px}.mobile-brand .mi-word{font-size:19px}.mobile-brand .official-logo-frame{width:127px;height:45px}.mobile-brand .official-logo-frame img{width:170px;height:170px;left:-24px;top:-63px}
@media(max-width:760px){.topbar{height:128px}.mobile-brand{display:flex}.topbar h1{font-size:23px;margin-top:5px}}
.official-logo-frame img{mix-blend-mode:screen}

/* Responsive final y barras de desplazamiento integradas */
html,body{width:100%;max-width:100%;overflow-x:hidden}body{scrollbar-width:thin;scrollbar-color:rgba(255,90,31,.78) rgba(255,255,255,.04)}
body::-webkit-scrollbar,.ai-body::-webkit-scrollbar{width:9px;height:9px}body::-webkit-scrollbar-track,.ai-body::-webkit-scrollbar-track{background:rgba(255,255,255,.035);border-radius:20px}body::-webkit-scrollbar-thumb,.ai-body::-webkit-scrollbar-thumb{background:linear-gradient(180deg,rgba(255,122,73,.92),rgba(214,57,8,.88));border:2px solid rgba(14,12,11,.82);border-radius:20px}body::-webkit-scrollbar-thumb:hover,.ai-body::-webkit-scrollbar-thumb:hover{background:var(--orange)}
.app-shell,.main-content,.view,.hero-grid,.hero-card,.membership-card,.home-summary-grid,.home-summary-card,.page-intro,.classes-list,.class-row,.goal-hero,.progress-cards,.progress-grid,.panel,.profile-grid,.profile-hero{min-width:0}.hero-copy,.class-info,.summary-top>div,.panel-head>div,.profile-hero>div{min-width:0}h1,h2,h3,p,b,small,span{overflow-wrap:break-word}.hero-card h2,.goal-hero h2,.page-intro h2{word-break:normal}.primary-button,.secondary-button,.book-button,.text-button{white-space:normal;line-height:1.25}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.summary-numbers{grid-template-columns:repeat(3,minmax(0,1fr))}
.filter-chips{-ms-overflow-style:none;scrollbar-width:none}.filter-chips::-webkit-scrollbar{display:none}.ai-body{scrollbar-width:thin;scrollbar-color:rgba(255,90,31,.72) rgba(255,255,255,.04)}
@media(max-width:760px){.main-content{width:100%;max-width:100%;overflow:hidden}.topbar{gap:10px}.topbar>div:first-child{min-width:0}.hero-card h2{font-size:clamp(30px,10vw,38px);max-width:100%}.page-intro h2{font-size:clamp(27px,8.5vw,31px)}.goal-hero h2{font-size:clamp(28px,9vw,33px)}.class-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.class-meta span{min-width:0}.hero-actions{width:100%}.membership-card h3,.summary-top h3{max-width:100%}.calendar-legend{width:100%}.month-grid{width:100%;min-width:0}.bottom-nav .nav-item{min-width:0}.bottom-nav small{font-size:7.5px;white-space:nowrap}.ai-panel{max-width:calc(100vw - 24px)}.toast{max-width:calc(100vw - 28px)}}
@media(max-width:430px){.main-content{padding-left:13px;padding-right:13px}.hero-copy{padding-left:19px;padding-right:19px}.hero-actions{grid-template-columns:1fr}.summary-numbers small{font-size:8px}.timeline-row b{font-size:10px}.calendar-legend{gap:9px}.calendar-legend span{font-size:8px}.month-grid>span{min-width:0}.profile-hero h2{font-size:26px}.detail-list p{align-items:flex-start}.detail-list p b{text-align:right;max-width:60%}}
.status-dot,.goal-pill,.account-status,.date-switcher span{white-space:nowrap;overflow-wrap:normal}.goal-pill{flex:0 0 auto;text-align:center}.panel-head{min-width:0}.panel-head>div{flex:1 1 auto}@media(max-width:430px){.goal-pill{font-size:7.5px;padding:6px 8px}.training-grid .panel-head{gap:8px}.training-grid .panel-head h3{font-size:18px}}
.account-status{display:flex;align-items:center;gap:7px;border:1px solid rgba(200,255,61,.22);background:rgba(200,255,61,.07);color:#d9ff75;padding:7px 11px;border-radius:30px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.account-status i{width:6px;height:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 10px rgba(200,255,61,.65)}.icon-button svg{width:18px;height:18px;margin:auto}@media(max-width:760px){.account-status{display:none}.icon-button{display:grid;width:38px;height:38px;place-items:center}.top-actions{gap:8px}}
