:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:#e8ecf0;background:#0c1116;font-synthesis:none;-webkit-tap-highlight-color:transparent;--bg:#0c1116;--surface:#171f25;--surface2:#1c252c;--surface3:#242e34;--line:#2a343b;--text:#eff5f1;--muted:#9baaa8;--lime:#b9f587;--green:#74cc98;--blue:#7bbce9;--purple:#b4a1ff;--gold:#f6ce8a;--red:#f5938e;--r:18px;--shadow:0 16px 65px #0004}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;background:radial-gradient(ellipse 65% 50% at 85% -8%,#233d323f,transparent),radial-gradient(ellipse 55% 35% at 0% 20%,#28363d33,transparent),var(--bg)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:3px}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{letter-spacing:-.035em}h1{font-size:clamp(29px,4vw,44px);line-height:1.06}h2{font-size:24px}h3{font-size:17px}h4{font-size:14px}small{font-size:12px}strong{font-weight:760}input,select{border:1px solid var(--line);border-radius:11px;background:#0e151b;color:var(--text);padding:12px 13px;min-width:0;width:100%}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{opacity:.5}select{appearance:auto}a{color:var(--lime)}svg{display:block;flex-shrink:0}button svg{width:17px;height:17px}.muted{color:var(--muted)}.overline{font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--green);font-weight:850}.mono{font-variant-numeric:tabular-nums}.page-content{min-width:0}.app-shell{max-width:1320px;min-height:100vh;margin:auto;display:grid;grid-template-columns:244px 1fr}.sidebar{border-right:1px solid #253037;position:sticky;top:0;height:100vh;padding:30px 19px;display:flex;flex-direction:column;background:#0c1217d8}.brand{display:flex;align-items:center;gap:12px;padding:0 14px 36px}.brand-emblem{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;color:#0d1711;background:linear-gradient(145deg,#e0ffaa,#91de9d);box-shadow:0 8px 23px #90e1a929;font-weight:1000;font-size:23px;font-style:italic;transform:skew(-4deg)}.brand b{font-size:21px;letter-spacing:-.06em}.brand span{display:block;color:#91a99e;font-size:10px;letter-spacing:.12em;text-transform:uppercase;margin-top:3px}.nav-list{display:grid;gap:6px}.nav-link{border:0;background:transparent;color:#a9b9b4;text-align:left;display:flex;gap:13px;align-items:center;padding:14px 15px;border-radius:13px;font-weight:680;font-size:14px}.nav-link:hover,.nav-link.active{background:#25372d;color:#d5ffc6}.nav-link.active{box-shadow:inset 3px 0 var(--lime)}.nav-link svg{width:19px;height:19px}.sidebar-bottom{margin-top:auto;padding:16px;border:1px solid var(--line);border-radius:15px;background:#131d21}.sidebar-bottom .level{color:var(--lime);font-weight:850}.sidebar-bottom .xpbar{margin:11px 0}.header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.main{min-width:0;padding:38px clamp(22px,4.2vw,65px) 55px}.eyebrow{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#8ba69e;font-weight:750;margin-bottom:10px}.section-title{display:flex;align-items:end;justify-content:space-between;gap:15px;margin:25px 0 15px}.section-title p{font-size:13px;color:var(--muted);margin-top:5px}.text-btn{background:none;border:0;color:var(--lime);font-weight:760;font-size:12px;padding:6px}.btn{display:inline-flex;justify-content:center;align-items:center;gap:9px;background:var(--lime);color:#101a15;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:850;padding:12px 16px;min-height:42px;transition:transform .15s,background .15s;text-decoration:none}.btn:hover:not(:disabled){transform:translateY(-1px);background:#ceff9d}.btn.secondary{background:#25332d;color:#ddf7da;border:1px solid #42604a}.btn.secondary:hover{background:#304637}.btn.ghost{background:#1e292d;color:#d4dfdc;border:1px solid var(--line)}.btn.ghost:hover{background:#29373b}.btn.danger{background:#3c292c;color:#ffc2bd;border-color:#644143}.btn.small{min-height:32px;padding:7px 12px;font-size:12px;border-radius:8px}.btn.iconbtn{padding:9px;min-height:37px}.btn.full{width:100%}.action-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.card{background:linear-gradient(144deg,#1b262a,#171e24);border:1px solid #2a383c;border-radius:var(--r);padding:21px;box-shadow:0 7px 25px #0000001a;min-width:0}.card.plain{background:#151e24}.card:hover:not(.nohover){border-color:#40544a}.card p{line-height:1.45}.grid2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.hero{background:radial-gradient(ellipse at 85% 15%,#3f6a4a77,transparent 46%),radial-gradient(ellipse at 70% 100%,#24445b55,transparent 52%),linear-gradient(125deg,#1e302e,#182128 60%);border:1px solid #3b574a;border-radius:24px;padding:clamp(24px,4vw,35px);display:grid;grid-template-columns:1.4fr .75fr;min-height:255px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #8bdba225;border-radius:50%;right:35px;top:22px;box-shadow:0 0 0 28px #8bdba20a,0 0 0 65px #8bdba208;pointer-events:none}.hero h1{margin:14px 0;color:#f0faf0}.hero p{max-width:445px;color:#afc7bb;font-size:14px;line-height:1.6}.hero .btn{margin-top:22px}.hero-art{align-self:center;justify-self:center;z-index:1;position:relative;min-width:175px}.hero-orb{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 35% 28%,#d3ffe7,#8bddad 36%,#336b65 74%,#233a46);box-shadow:0 0 65px #86e9b52c,inset -13px -20px 30px #15262685;color:#122b22;font-size:62px;font-weight:1000;font-style:italic;transform:rotate(-8deg);border:6px solid #d6f7b62c}.hero-art .orbit-tag{background:#253a38;border:1px solid #587f63;position:absolute;border-radius:10px;box-shadow:var(--shadow);padding:8px 11px;font-size:11px;font-weight:850;white-space:nowrap}.hero-art .orbit-tag.t1{right:-25px;top:4px;color:var(--gold)}.hero-art .orbit-tag.t2{bottom:-6px;left:-32px;color:var(--lime)}.statrow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0 24px}.stat{padding:17px 19px;border-radius:15px;border:1px solid #2d3c3f;background:#161f24}.stat .number{font-size:28px;font-weight:850;letter-spacing:-.05em;margin:9px 0 3px}.stat .s-label{font-size:11px;color:var(--muted);letter-spacing:.015em}.stat svg{width:17px;height:17px;color:var(--green)}.xpbar{height:7px;border-radius:40px;background:#33403b;overflow:hidden}.xpbar>div{height:100%;border-radius:40px;background:linear-gradient(90deg,#77d7a0,#d3f988);transition:width .4s}.progressfoot{display:flex;justify-content:space-between;color:var(--muted);font-size:11px;margin:9px 0 0}.workout-feature{display:flex;justify-content:space-between;align-items:center;gap:20px}.workout-feature .feature-left{display:flex;align-items:center;gap:15px}.glyph{height:49px;width:49px;border-radius:14px;display:grid;place-items:center;background:#2f4338;color:#bdf59c;font-size:25px;flex-shrink:0}.glyph.blue{background:#2b3c49;color:var(--blue)}.glyph.purple{background:#343047;color:var(--purple)}.glyph.gold{background:#4b3e2d;color:var(--gold)}.substats{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-top:11px}.substats span{display:flex;align-items:center;gap:5px}.substats svg{height:14px;width:14px}.quest-line{display:grid;grid-template-columns:37px 1fr auto;gap:12px;align-items:center;padding:12px 0;border-top:1px solid #2b393a}.quest-line:first-of-type{border-top:none}.quest-line h4{margin-bottom:5px}.quest-line p{font-size:12px;color:var(--muted)}.quest-mark{width:35px;height:35px;border-radius:11px;background:#303b35;display:grid;place-items:center;color:var(--lime)}.quest-mark.done{background:#31533d}.quest-mark svg{width:18px;height:18px}.quest-line .quest-reward{color:var(--gold);font-size:11px;font-weight:850}.progline{height:5px;background:#34413d;border-radius:9px;overflow:hidden;margin-top:9px;max-width:260px}.progline>div{height:100%;background:#a7e9a0;border-radius:9px}.pill{display:inline-flex;align-items:center;gap:5px;border-radius:40px;padding:5px 10px;font-size:10px;letter-spacing:.025em;font-weight:800;background:#284536;color:var(--lime);white-space:nowrap}.pill.blue{background:#293e4b;color:#a7d6f5}.pill.gold{background:#473b2b;color:var(--gold)}.pill.grey{background:#293136;color:#aeb9b4}.pill.red{background:#4a3034;color:#ffb5af}.program-list{display:grid;gap:13px}.program{display:grid;grid-template-columns:59px 1fr auto;gap:15px;align-items:center}.program h3{margin:5px 0}.program p{color:var(--muted);font-size:12px;line-height:1.5}.program-icon{width:58px;height:58px;display:grid;place-items:center;font-size:26px;background:#2c403a;border-radius:14px}.program-icon.purple{background:#353147}.program-icon.blue{background:#2b4049}.program-icon.gold{background:#473d2b}.chiprow{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.chip{padding:7px 11px;border-radius:99px;border:1px solid #395049;background:#1e2d2a;color:#c8e2d2;font-size:12px;cursor:pointer}.chip.active{background:var(--lime);color:#142017;border-color:var(--lime);font-weight:850}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.skill{background:#192226;border:1px solid #2c3b3e;border-radius:15px;padding:16px;display:flex;flex-direction:column;gap:8px;min-height:164px}.skill.unlocked{background:linear-gradient(150deg,#283b30,#172622);border-color:#689e68}.skill.ready{border-color:#b3f18c;box-shadow:0 0 0 1px #b3f18c3b}.skill.locked{opacity:.67}.skill-top{display:flex;justify-content:space-between;align-items:center}.skill .glyph{height:36px;width:36px;font-size:18px;border-radius:10px}.skill h3{font-size:13px;margin-top:4px}.skill p{color:var(--muted);font-size:11px}.skill .btn{margin-top:auto}.track-head{display:flex;align-items:center;gap:12px;margin:22px 0 13px}.track-head .glyph{height:40px;width:40px;font-size:20px}.track-head h3{font-size:17px}.track-head p{font-size:12px;color:var(--muted);margin-top:4px}.timeline{display:grid;gap:13px}.history-row{display:grid;grid-template-columns:42px 1fr auto;gap:13px;align-items:start}.history-icon{height:38px;width:38px;border-radius:12px;background:#2c4135;display:grid;place-items:center;color:var(--lime)}.history-row h4{margin:2px 0 5px}.history-row p{font-size:12px;color:var(--muted)}.history-row .number{color:var(--lime);font-weight:850;font-size:12px}.empty{border:1px dashed #3c4a47;border-radius:16px;padding:30px;text-align:center;color:var(--muted)}.empty .emoji{font-size:35px;margin-bottom:11px}.empty h3{color:var(--text);margin-bottom:8px}.field{display:grid;gap:6px;min-width:0}.field label{font-size:12px;color:#b3c5bd;font-weight:720}.field-note{color:var(--muted);font-size:11px;margin-top:5px}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.session-overlay{position:fixed;inset:0;z-index:80;background:#09100feb;backdrop-filter:blur(10px);overflow-y:auto}.session-panel{max-width:760px;margin:25px auto;padding:0 16px 70px}.session-banner{border:1px solid #425d4a;background:linear-gradient(110deg,#263e30,#1a2425);border-radius:20px;padding:22px;margin-bottom:15px}.session-banner h2{margin:8px 0 7px}.session-ex{margin-bottom:12px}.session-ex header{display:flex;justify-content:space-between;gap:8px;align-items:start}.session-ex h3{font-size:16px}.session-ex p{color:var(--muted);font-size:12px;margin:6px 0}.sets{display:grid;gap:9px;margin-top:15px}.setrow{display:grid;grid-template-columns:36px 1fr 1fr auto;gap:9px;align-items:end}.set-num{border:1px solid #304039;border-radius:8px;display:grid;place-items:center;height:41px;color:#a8c0ac;font-size:12px;font-weight:800}.setrow .field label{font-size:10px}.setrow input{padding:10px}.setrow .btn{height:41px}.session-footer{position:sticky;bottom:0;background:#121b1af0;backdrop-filter:blur(14px);border:1px solid #34483e;border-radius:15px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:4}.timer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-top:12px;padding:12px;background:#10191b;border:1px solid #31483b;border-radius:12px}.timer-count{font-size:23px;font-weight:850;color:var(--lime);font-variant-numeric:tabular-nums}.divider{height:1px;background:var(--line);margin:20px 0}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:19px 0}.tab{padding:9px 13px;border-radius:10px;color:#adbbb5;border:1px solid var(--line);background:#182329;font-size:12px;font-weight:780}.tab.active{background:#2f4938;border-color:#638e6a;color:#ceffc2}.modal-backdrop{position:fixed;inset:0;z-index:100;background:#060909d9;display:grid;place-items:center;padding:18px;overflow-y:auto}.modal{background:#1b252b;border:1px solid #41504c;border-radius:22px;max-width:490px;width:100%;padding:27px;box-shadow:0 24px 90px #0009}.modal h2{font-size:25px;margin:9px 0}.modal p{font-size:13px;line-height:1.6;color:#bacbc2;margin:10px 0 18px}.modal form{display:grid;gap:15px}.modal .action-row{justify-content:end}.badge-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.award{text-align:center;border:1px solid #35463f;border-radius:14px;padding:19px 11px;background:#1e2a27}.award.locked{opacity:.37}.award .emoji{font-size:29px;margin-bottom:8px}.award h4{font-size:12px}.award p{font-size:11px;color:var(--muted);margin-top:4px}.mobile-nav{display:none}.tip{background:#202d2a;border:1px solid #3c5646;border-radius:11px;color:#acc7b3;padding:11px 13px;font-size:12px;line-height:1.55}.error-msg{color:#ffb5af;font-size:12px}.tip strong{color:#e9fbed}.mini-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.mini-day{display:grid;justify-items:center;gap:8px}.mini-day span{font-size:10px;color:var(--muted)}.mini-day b{display:grid;place-items:center;width:31px;height:31px;background:#293536;border-radius:10px;font-size:12px;color:#b4c8c0}.mini-day b.done{background:#a0e6a2;color:#172519}.mini-day b.today{border:1px solid var(--lime)}.top-profile{display:flex;gap:10px;align-items:center}.top-avatar{height:38px;width:38px;border:1px solid #6d9571;border-radius:12px;background:#294a35;color:var(--lime);display:grid;place-items:center;font-size:16px;font-weight:850}.top-profile p{font-size:11px;color:var(--muted);margin-top:4px}.tiny-icon{width:15px;height:15px;vertical-align:middle;display:inline-block}.flex-between{display:flex;align-items:center;justify-content:space-between;gap:12px}.dot{height:7px;width:7px;border-radius:50%;background:var(--lime);display:inline-block}.note{font-size:12px;line-height:1.55;color:var(--muted)}#toast{position:fixed;left:50%;transform:translateX(-50%) translateY(15px);bottom:26px;z-index:150;opacity:0;pointer-events:none;background:#d8ffc1;color:#17251c;padding:13px 17px;border-radius:13px;font-size:13px;font-weight:850;box-shadow:var(--shadow);transition:.24s;text-align:center;min-width:180px;max-width:90vw}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}.top-actions{display:flex;align-items:center;gap:11px}.session-dock{background:#1e3025;border:1px solid #5a845f;border-radius:13px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:20px}.smallprint{font-size:11px;color:#93a69e;line-height:1.55}.callout-heading{font-size:11px;color:var(--lime);letter-spacing:.14em;text-transform:uppercase;font-weight:850;margin-bottom:7px}
@media(max-width:1080px){.app-shell{grid-template-columns:206px 1fr}.main{padding:30px 27px 45px}.sidebar{padding:24px 10px}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.statrow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.app-shell{display:block}.sidebar{display:none}.main{padding:21px 17px 110px}.mobile-nav{position:fixed;z-index:50;bottom:0;left:0;right:0;display:flex;justify-content:space-around;background:#121b1bf2;border-top:1px solid #304138;backdrop-filter:blur(15px);padding:9px 8px max(11px,env(safe-area-inset-bottom));gap:3px}.mobile-nav .nav-link{display:grid;justify-items:center;gap:4px;border-radius:10px;padding:7px 4px;flex:1;font-size:10px;min-width:0;text-align:center}.mobile-nav .nav-link svg{height:20px;width:20px}.mobile-nav .nav-link.active{box-shadow:none;background:#2a4335}.header{margin-bottom:21px}.header .top-profile p{display:none}.hero{grid-template-columns:1fr auto;min-height:200px;padding:23px}.hero h1{font-size:32px}.hero p{font-size:12px}.hero-art .hero-orb{height:79px;width:79px;font-size:38px}.hero-art{min-width:90px}.hero:after{right:-65px;top:0}.hero-art .orbit-tag{display:none}.grid2,.grid3{grid-template-columns:1fr}.statrow{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.stat{padding:15px}.stat .number{font-size:24px}.workout-feature{align-items:start;flex-wrap:wrap}.skill-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.skill{padding:12px;min-height:167px}.program{grid-template-columns:48px 1fr;gap:11px}.program .action-row{grid-column:2}.program-icon{width:46px;height:46px;font-size:22px}.session-panel{margin:12px auto}.session-footer .muted{font-size:11px}.badge-grid{grid-template-columns:repeat(2,1fr)}.mini-day b{width:30px;height:30px}}
@media(max-width:385px){.hero-art{display:none}.hero{grid-template-columns:1fr}.skill-grid{grid-template-columns:1fr}.setrow{grid-template-columns:30px 1fr 1fr 38px;gap:5px}.stat .number{font-size:22px}.top-actions{gap:5px}.btn{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
