@import url('https://fonts.googleapis.com/css2?family=Rajdhani:wght@500;600;700&family=Inter:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#080910;--panel:#10121d;--panel2:#141727;--line:#292d43;--purple:#a78bfa;--blue:#69c8ff;--text:#f1f1fb;--muted:#888da7;--green:#65e6bd;--red:#ff7795;--radius:18px}*{box-sizing:border-box}html{min-height:100%;background:var(--bg)}body{margin:0;background:radial-gradient(ellipse at 85% -10%,#33215b55,transparent 42%),radial-gradient(ellipse at 0 35%,#14284a33,transparent 36%),var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;min-height:100vh;padding-bottom:env(safe-area-inset-bottom)}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}.scanlines{position:fixed;inset:0;pointer-events:none;z-index:5;opacity:.08;background:repeating-linear-gradient(0deg,transparent 0 3px,#9a8bff 4px)}.topbar{height:68px;max-width:980px;margin:auto;padding:0 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0d}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;color:var(--text);font:700 21px Rajdhani,sans-serif;letter-spacing:2px}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--purple);color:var(--purple);clip-path:polygon(0 0,100% 0,100% 78%,78% 100%,0 100%);font-size:25px}.brand-sub{display:block;color:var(--muted);font:600 8px Inter,sans-serif;letter-spacing:2px;margin-top:1px}.shell{width:min(100% - 28px,760px);margin:20px auto 0}.panel{background:linear-gradient(135deg,#141626f2,#0d1019f5);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 14px 45px #0003}.hero{padding:22px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:170px;height:170px;border:1px solid #a78bfa24;transform:rotate(45deg);right:-100px;top:30px;box-shadow:0 0 0 20px #a78bfa08,0 0 0 40px #a78bfa05;pointer-events:none}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;color:var(--blue);display:flex;align-items:center;gap:8px}.hero .eyebrow{justify-content:space-between}.pulse{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);box-shadow:0 0 10px var(--green);flex-shrink:0}.hero-row{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:26px 0 22px}.small{font-size:10px;letter-spacing:1.5px}.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1,h2,h3,.level-orb strong,.stat strong{font-family:Rajdhani,Inter,sans-serif}h1{font-size:clamp(25px,6vw,37px);line-height:1;margin:6px 0 10px;letter-spacing:1px}h2{font-size:26px;margin:4px 0 0}h3{font-size:19px;margin-bottom:0}.dot{color:var(--purple);margin:0 6px}.hero-row p{font-size:12px;margin-bottom:0}.level-orb{width:76px;height:76px;flex-shrink:0;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #a78bfa88;background:radial-gradient(circle,#7b4ad833,transparent 70%);box-shadow:inset 0 0 18px #a78bfa19,0 0 22px #7655ff1c}.level-orb span{font-size:9px;color:var(--purple);letter-spacing:2px}.level-orb strong{font-size:28px}.xp-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1px;color:var(--muted);margin-bottom:9px}.xp-track{height:7px;background:#25283b;border-radius:9px;overflow:hidden}.xp-track div{height:100%;width:0;background:linear-gradient(90deg,#7860fa,var(--blue));box-shadow:0 0 12px #7d75ff66;transition:width .4s}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:22px;border-top:1px solid var(--line);padding-top:17px}.stat{display:flex;flex-direction:column;gap:3px}.stat+ .stat{padding-left:17px;border-left:1px solid var(--line)}.stat span{font-size:9px;color:var(--muted);letter-spacing:1px}.stat strong{font-size:26px;line-height:1.1}.stat small{font-size:10px;color:var(--muted)}.tabs{display:flex;gap:5px;margin:20px 0 26px;padding:4px;border:1px solid var(--line);border-radius:12px;background:#0c0e17}.tab{flex:1;border:0;background:transparent;color:var(--muted);padding:12px 6px;border-radius:8px;font-size:12px;font-weight:600}.tab.active{background:linear-gradient(100deg,#6e48c733,#4b8cbd22);color:#e5d9ff;box-shadow:inset 0 0 0 1px #a78bfa35}.view{animation:appear .22s ease}@keyframes appear{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px}.section-heading .eyebrow{margin-bottom:5px}.primary,.secondary,.danger,.icon-button{border-radius:10px;padding:12px 15px;border:1px solid transparent;font-weight:700;font-size:12px}.primary{background:linear-gradient(115deg,#8c65ed,#4d8fd5);color:white;box-shadow:0 5px 18px #7254d52c}.primary:active{transform:scale(.98)}.compact{padding:11px 12px;white-space:nowrap}.full{width:100%;margin-top:8px}.secondary,.import-label{background:#171a2a;border-color:var(--line);color:#d7d9eb}.danger{background:#351523;border-color:#70334a;color:#ff9eb4}.icon-button{background:#171a2a;border-color:var(--line);padding:8px 12px;font-size:20px}.filters{display:flex;gap:7px;margin-bottom:13px}.filter{border:1px solid var(--line);border-radius:30px;background:#11131e;padding:8px 13px;font-size:11px;color:var(--muted)}.filter.active{color:var(--blue);border-color:#4c9bc466;background:#132337}.mission-list{display:grid;gap:10px}.mission-card{padding:15px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(115deg,#131625,#0d1019);display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:12px}.mission-card.done{opacity:.64}.mission-card.done .mission-title{text-decoration:line-through}.check-mission{width:23px;height:23px;border:1px solid #5e6684;border-radius:7px;background:#141727;color:var(--green);display:grid;place-items:center;font-size:14px;margin-top:2px}.done .check-mission{background:#15362f;border-color:#3f9e83}.mission-title{font-size:14px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}.mission-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px;color:var(--muted);font-size:10px}.tag{border:1px solid #3e4260;border-radius:5px;padding:3px 6px;color:#b9b6d8}.tag.xp{border-color:#5b4d92;color:#c5b4ff}.tag.due{border-color:#395a70;color:#8ed7ff}.mission-actions{display:flex;gap:5px}.mini-button{border:0;background:transparent;color:var(--muted);font-size:17px;padding:3px}.empty{padding:30px 18px;text-align:center;border-style:dashed;margin-top:10px}.empty-symbol{font-size:35px;color:var(--purple);margin-bottom:8px}.empty p{font-size:12px;color:var(--muted);line-height:1.6}.form-panel{padding:17px;margin-bottom:15px}.form-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}label{display:block;font-size:11px;color:#b8bdd4;margin:13px 0 7px}input,select,textarea{width:100%;border:1px solid #343951;background:#0a0c14;border-radius:9px;padding:12px;color:var(--text);outline:none;font-size:13px}input:focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #a78bfa18}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid label{margin-top:13px}.attribute-list{padding:18px;display:grid;gap:19px}.attribute-head{display:flex;justify-content:space-between;font-size:12px;margin-bottom:8px}.attribute-head span:last-child{color:var(--blue);font-family:Rajdhani,sans-serif;font-size:16px}.attribute-track{height:5px;background:#292d40;border-radius:8px;overflow:hidden}.attribute-track div{height:100%;background:linear-gradient(90deg,var(--purple),var(--blue));border-radius:8px}.history-panel{margin-top:14px;padding:18px}.history-panel h3{margin-bottom:14px}.history-item{padding:10px 0;border-top:1px solid #25293a;font-size:12px;display:flex;justify-content:space-between;gap:12px}.history-item:first-of-type{border-top:0}.history-item small{display:block;color:var(--muted);margin-top:4px}.history-xp{color:var(--green);white-space:nowrap}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.actions .danger{grid-column:1/-1}.import-label{display:flex;justify-content:center;align-items:center;text-align:center;cursor:pointer}.planner-panel{padding:18px}.ai-tag{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:10px;letter-spacing:1px;border:1px solid #3e7c6b66;background:#10241f;padding:7px 9px;border-radius:8px;margin-bottom:14px}.planner-panel p{font-size:12px;line-height:1.7}.planner-panel textarea{resize:vertical}.plan-result{margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;display:flex;align-items:center;gap:9px;font-size:12px}.plan-result span{flex:1}.plan-result button{border:1px solid #6555a2;color:#cbbaff;background:#211b35;border-radius:7px;padding:7px;font-size:10px}.note{font-size:11px;color:var(--muted);line-height:1.7;padding:15px 3px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff12;padding:18px 2px 25px;margin-top:25px;font-size:10px;letter-spacing:1px;color:#c5c8da}.footer-status{display:flex;align-items:center;gap:7px;color:var(--green)}.toast{position:fixed;z-index:10;bottom:calc(20px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#202338;border:1px solid #555b7e;border-radius:10px;padding:12px 16px;font-size:12px;box-shadow:0 10px 35px #0008;transition:.25s;max-width:calc(100% - 30px)}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}@media(min-width:650px){.shell{margin-top:28px}.hero{padding:27px}.mission-card{padding:18px}.stat strong{font-size:30px}}@media(max-width:420px){.shell{width:calc(100% - 20px);margin-top:12px}.topbar{padding:0 12px}.hero{padding:17px}.hero-row{margin:22px 0 18px}.level-orb{width:64px;height:64px}.section-heading{align-items:flex-start}.section-heading h2{font-size:23px}.compact{font-size:10px;padding:10px}.tab{font-size:11px}.mission-card{grid-template-columns:auto 1fr auto;padding:12px;gap:9px}.mission-title{font-size:13px}.form-grid{grid-template-columns:1fr;gap:0}.stat+ .stat{padding-left:10px}.stat span{font-size:8px}.stat strong{font-size:23px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.workout-presets{border:1px solid #34304c;background:linear-gradient(130deg,#171526,#10131d);border-radius:14px;padding:14px;margin:0 0 15px}.preset-heading{display:flex;justify-content:space-between;gap:8px;margin-bottom:11px}.preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.preset{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:left;background:#0c0f19;border:1px solid #33354e;border-radius:10px;padding:11px;font-size:12px;color:#e9e6ff}.preset strong{font-size:10px;color:var(--blue);font-weight:600}.preset:active{border-color:var(--purple);transform:scale(.99)}.preset-note{font-size:10px;color:var(--muted);line-height:1.6;margin:11px 0 0}.mission-cta{margin-top:10px;padding:7px 10px;border:1px solid #6555a2;border-radius:7px;background:#211b35;color:#d4c7ff;font-size:10px;font-weight:700}.mission-cta:disabled{opacity:.5}.timer-track{height:4px;background:#292d40;border-radius:6px;overflow:hidden;margin-top:10px}.timer-track div{height:100%;background:linear-gradient(90deg,var(--purple),var(--blue));transition:width .5s}.training-check{color:var(--blue)}@media(max-width:360px){.preset-grid{grid-template-columns:1fr}.preset-heading .muted{font-size:8px}}

.account-panel{padding:18px;margin:0 0 18px}.account-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.account-head .eyebrow{margin-bottom:6px}.account-head h2{font-size:23px}.account-mark{display:grid;place-items:center;width:44px;height:44px;border:1px solid #a78bfa77;color:var(--purple);font:700 20px Rajdhani,sans-serif;transform:rotate(45deg)}.account-mark::first-letter{transform:rotate(-45deg)}.account-intro{font-size:12px;line-height:1.6;margin:12px 0}.account-switch{margin-top:8px;width:100%}.account-hint{display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:7px}.account-status{font-size:11px;line-height:1.6;overflow-wrap:anywhere;margin:12px 0 0;min-height:0}.account-player{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:#0c0f19}.account-avatar{display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--purple);border-radius:12px;color:var(--purple);font:700 25px Rajdhani,sans-serif}.account-player strong,.account-player small{display:block}.account-player strong{font-size:14px}.account-player small{color:var(--muted);font-size:10px;margin-top:4px;overflow-wrap:anywhere}#accountForm input{margin-bottom:2px}#accountSubmit:disabled,#accountLogout:disabled{opacity:.6;cursor:wait}

.friends-panel{padding:18px;margin:0 0 18px}.friends-panel .section-heading{align-items:center;margin-bottom:8px}.friends-intro{font-size:12px;line-height:1.7;margin:10px 0 14px}.friend-search{padding:13px;border:1px solid var(--line);border-radius:12px;background:#0c0f19}.friend-search label{margin-top:0}.friend-search-row{display:flex;gap:8px}.friend-search-row input{min-width:0;flex:1}.friend-search-row button{white-space:nowrap}.friend-list{display:grid;gap:8px;margin-top:10px}.friend-card{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--line);border-radius:11px;background:linear-gradient(120deg,#141626,#0c0f19);min-width:0}.friend-avatar{width:36px;height:36px;flex-shrink:0;border-radius:10px;font-size:20px}.friend-info{flex:1;min-width:0}.friend-info strong,.friend-info small{display:block;overflow-wrap:anywhere}.friend-info strong{font-size:12px}.friend-info small{font-size:10px;color:var(--muted);margin-top:4px}.friend-action{padding:8px 9px;font-size:10px;white-space:nowrap;flex-shrink:0}.friend-actions{display:flex;flex-direction:column;gap:5px}.friend-actions .danger{padding:8px 9px;font-size:10px}.friend-empty{font-size:11px;color:var(--muted);line-height:1.6;margin:4px 0;padding:10px 2px}.friend-subheading{font-size:10px;color:var(--blue);letter-spacing:1px;margin:8px 0 0}.friends-divider{height:1px;background:var(--line);margin:18px 0}.friends-panel>.eyebrow{margin-bottom:7px}.friend-card .secondary{border-color:var(--line)}
@media(min-width:500px){.friend-actions{flex-direction:row}.friend-actions .danger{white-space:nowrap}}@media(max-width:360px){.friends-panel{padding:13px}.friend-card{gap:7px;padding:9px}.friend-action{padding:7px;font-size:9px}.friend-search-row{gap:5px}.friend-search-row button{padding:10px}}
