:root{--bg: #0a0712;--bg-2: #120b20;--surface: rgba(30, 20, 48, .62);--surface-solid: #1a1229;--surface-2: rgba(46, 32, 72, .55);--surface-3: #241837;--border: rgba(167, 139, 250, .14);--border-strong: rgba(167, 139, 250, .32);--border-glow: rgba(139, 92, 246, .55);--accent: #8b5cf6;--accent-2: #a78bfa;--accent-deep: #5b21b6;--neon-purple: #a78bfa;--neon-green: #4ade80;--neon-blue: #60a5fa;--warn: #fb923c;--danger: #fb7185;--text: #f1edfa;--muted: #a49bbd;--faint: #6f6787;--radius: 22px;--radius-sm: 16px;--font-display: "Outfit", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--grad: linear-gradient(90deg, #7c3aed, #a78bfa 60%, #c4b5fd);--grad-btn: linear-gradient(135deg, #8b5cf6, #6d28d9);--glass-blur: blur(18px);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.55;background-image:radial-gradient(120% 55% at 50% -12%,rgba(124,58,237,.45),transparent 60%),radial-gradient(60% 40% at 100% 30%,rgba(91,33,182,.18),transparent 70%),radial-gradient(50% 40% at 0% 80%,rgba(76,29,149,.16),transparent 70%);background-attachment:fixed;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--accent-2);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{font-family:var(--font-display);line-height:1.15;margin:0 0 .5em;font-weight:600;letter-spacing:-.01em}h1{font-size:clamp(2rem,5vw,3.2rem)}h2{font-size:clamp(1.3rem,3vw,1.75rem)}h3{font-size:1.1rem}p{margin:0 0 1em}.muted{color:var(--muted)}.small{font-size:.85rem}.mono,.num{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:600}.grad-text{background:linear-gradient(90deg,#c4b5fd,#a78bfa 40%,#8b5cf6);-webkit-background-clip:text;background-clip:text;color:transparent}:focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:10px}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 16px}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.grid{display:grid;gap:16px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr))}.section{padding:64px 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);box-shadow:inset 0 1px #ffffff0a}.card.glow{border-color:var(--border-strong);box-shadow:inset 0 1px #ffffff0d,0 0 0 1px #8b5cf61f,0 18px 50px -24px #8b5cf6bf}.card.purple{border-color:#a78bfa59;background:linear-gradient(145deg,#6d28d96b,#2e106559 55%,#1e143099);box-shadow:inset 0 1px #ffffff14,0 20px 60px -28px #8b5cf6e6}.card.green{border-color:#4ade8047;background:linear-gradient(145deg,#16653447,#1e143099 60%)}.card h3{margin-bottom:.35em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-display);font-weight:600;font-size:.98rem;border-radius:999px;padding:11px 20px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);cursor:pointer;min-height:46px;transition:transform .12s,box-shadow .18s,border-color .18s,background .18s;text-decoration:none!important;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.btn:hover{border-color:var(--border-strong);background:#3c286099}.btn:active{transform:translateY(1px) scale(.99)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--grad-btn);color:#fff;border-color:#c4b5fd59;box-shadow:inset 0 1px #ffffff40,0 10px 28px -10px #8b5cf6e6}.btn-primary:hover{background:linear-gradient(135deg,#9d74ff,#7c3aed);border-color:#c4b5fd80;box-shadow:inset 0 1px #ffffff4d,0 12px 34px -8px #8b5cf6}.btn-purple{background:#8b5cf638;color:#ddd6fe;border-color:#a78bfa73}.btn-ghost{background:transparent;backdrop-filter:none}.btn-danger{background:#fb718514;color:var(--danger);border-color:#fb718566}.btn-sm{padding:6px 14px;min-height:36px;font-size:.86rem}.btn-block{width:100%}.icon-btn{width:48px;height:48px;min-height:48px;padding:0;border-radius:50%;font-size:1.15rem;position:relative}.icon-btn .badge-count{position:absolute;top:-2px;right:-2px;margin:0}label{display:block;font-weight:500;font-size:.88rem;margin-bottom:6px;color:#d9d2ea}input,select,textarea{width:100%;font:inherit;color:var(--text);background:#140d22b3;border:1px solid var(--border);border-radius:16px;padding:12px 14px;min-height:46px}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px #8b5cf62e}input[type=checkbox],input[type=radio]{width:auto;min-height:0;accent-color:var(--accent)}input[type=range]{padding:0;min-height:28px;background:transparent;border:none;accent-color:var(--accent);box-shadow:none}.field{margin-bottom:14px}.check{display:flex;gap:10px;align-items:flex-start;font-weight:400}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{border:1px solid var(--border);border-radius:999px;padding:8px 15px;cursor:pointer;background:var(--surface-2);color:var(--text);font:500 .9rem var(--font-body);user-select:none}.chip:hover{border-color:var(--border-strong)}.chip.on{border-color:#a78bfa99;color:#ede9fe;background:#8b5cf647}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 11px;border-radius:999px;font-size:.76rem;font-weight:600;border:1px solid transparent;background:#a78bfa1f;color:#c4b5fd}.pill-green{color:#86efac;background:#4ade8024}.pill-purple{color:#d8b4fe;background:#a855f733}.pill-blue{color:#93c5fd;background:#60a5fa29}.pill-warn{color:#fdba74;background:#fb923c29}.pill-red{color:#fda4af;background:#fb718529}.alert{border-radius:16px;padding:12px 14px;border:1px solid var(--border);background:var(--surface-2);font-size:.93rem}.alert-error{border-color:#fb718566;background:#fb718514;color:#fecdd3}.alert-info{border-color:#60a5fa59;background:#60a5fa12}.alert-warn{border-color:#fb923c61;background:#fb923c14;color:#fed7aa}.alert-ok{border-color:#4ade8061;background:#4ade8014}.xpbar{height:10px;border-radius:999px;background:#140d22cc;border:1px solid var(--border);overflow:hidden}.xpbar>span{display:block;height:100%;border-radius:999px;background:var(--grad);box-shadow:0 0 14px #8b5cf6bf;transition:width .6s ease}.topnav{position:sticky;top:0;z-index:30;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);background:#0a0712b3;border-bottom:1px solid var(--border)}.topnav .container{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:1.2rem;color:var(--text)!important;letter-spacing:.08em;text-decoration:none!important}.brand img{width:34px;height:34px;border-radius:10px}.navlinks{display:flex;gap:18px;align-items:center}.navlinks a{color:var(--muted);font-weight:500}.navlinks a:hover,.navlinks a.active{color:var(--text);text-decoration:none}@media (max-width: 720px){.navlinks .hide-sm{display:none}}.app-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column;gap:4px;background:#100a1c8c;backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur)}.sidebar a{display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:999px;color:var(--muted);font-weight:500;text-decoration:none}.sidebar a:hover{background:var(--surface-2);color:var(--text)}.sidebar a.active{background:linear-gradient(135deg,#8b5cf659,#6d28d940);color:#fff;box-shadow:inset 0 0 0 1px #a78bfa59}.main{padding:24px 16px 104px;min-width:0}.main-inner{max-width:980px;margin:0 auto}.bottomnav{display:none}.badge-count{margin-left:auto;background:var(--accent);color:#fff;border-radius:999px;font-size:.7rem;font-weight:700;padding:1px 7px;box-shadow:0 0 10px #8b5cf6cc}@media (max-width: 860px){.app-shell{grid-template-columns:1fr}.sidebar{display:none}.bottomnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;z-index:40;left:12px;right:12px;bottom:calc(10px + env(safe-area-inset-bottom));background:#181028d1;border:1px solid var(--border-strong);border-radius:28px;padding:6px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 16px 40px -12px #000000b3}.bottomnav a{display:flex;flex-direction:column;align-items:center;gap:2px;font-size:.68rem;color:var(--muted);padding:6px 0;text-decoration:none;min-height:50px;justify-content:center;border-radius:22px}.bottomnav a.active{color:#fff;background:#8b5cf64d}.bottomnav .ico{font-size:1.2rem}.mobile-top{display:flex!important}}.mobile-top{display:none;align-items:center;justify-content:space-between;margin-bottom:16px}.hello{display:flex;align-items:center;gap:14px}.avatar{width:56px;height:56px;border-radius:50%;flex:none;display:grid;place-items:center;font:600 1.3rem var(--font-display);color:#fff;background:linear-gradient(135deg,#8b5cf6,#4c1d95);border:2px solid rgba(196,181,253,.45);box-shadow:0 0 22px -4px #8b5cf6cc;overflow:hidden}.avatar img{width:100%;height:100%;object-fit:cover}.hello .greet{color:var(--muted);font-size:.95rem}.hello .greet strong{color:var(--text);font-weight:600}.coachbar{display:flex;gap:10px;align-items:center}.coachbar .askbox{flex:1;display:flex;align-items:center;gap:10px;padding:0 6px 0 18px;border-radius:999px;min-height:54px;background:#140d22b3;border:1px solid var(--border)}.coachbar .askbox:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #8b5cf62e}.coachbar .askbox input{border:none;background:transparent;padding:0;min-height:50px;box-shadow:none}.coachbar .askbox input:focus{box-shadow:none}.agent-card{position:relative;overflow:hidden;display:flex;align-items:center;gap:16px}.agent-card h2{margin:0 0 6px;background:linear-gradient(90deg,#ddd6fe,#a78bfa);-webkit-background-clip:text;background-clip:text;color:transparent}.agent-orb{flex:none;width:104px;height:104px;border-radius:50%;display:grid;place-items:center;font-size:3rem;position:relative;background:radial-gradient(circle at 50% 40%,rgba(196,181,253,.35),rgba(91,33,182,.35) 55%,transparent 70%)}.agent-orb:after{content:"";position:absolute;inset:6px;border-radius:50%;border:1px dashed rgba(196,181,253,.4);animation:spin 18s linear infinite}.agent-card .sparkle{position:absolute;color:#ddd6fe;opacity:.8;font-size:.9rem}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--neon-green);box-shadow:0 0 8px var(--neon-green);display:inline-block}.tile{width:50px;height:50px;border-radius:16px;flex:none;display:grid;place-items:center;font-size:1.4rem;border:1px solid transparent}.tile-walking{background:#a78bfa2e;border-color:#a78bfa4d}.tile-recreation{background:#fb923c29;border-color:#fb923c4d}.tile-mobility{background:#60a5fa29;border-color:#60a5fa4d}.tile-study_breaks{background:#818cf82e;border-color:#818cf852}.tile-healthy_habits{background:#4ade8026;border-color:#4ade804d}.quest{display:flex;flex-direction:column;gap:12px;position:relative;overflow:hidden}.quest .q-head{display:flex;gap:14px;align-items:flex-start}.quest .q-icon{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;font-size:1.4rem;flex:none}.quest .q-xp{margin-left:auto;font-family:var(--font-display);white-space:nowrap}.quest.done{border-color:#4ade8052;background:linear-gradient(145deg,rgba(22,101,52,.22),var(--surface) 55%)}.quest.done .q-xp{visibility:hidden}.quest.skipped,.quest.expired{opacity:.55}.stat .v{font-family:var(--font-display);font-size:1.8rem;font-weight:600}.stat .l{color:var(--muted);font-size:.85rem}.stats3{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.stats3 .card{padding:14px 16px}.stats3 .v{font-size:clamp(1.15rem,5vw,1.8rem)}.stats3 .l{font-size:.75rem}.world{position:relative;min-height:170px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}.world .emblem{font-size:2.6rem;position:absolute;top:14px;right:16px;filter:drop-shadow(0 6px 16px rgba(0,0,0,.5))}.world.locked{filter:grayscale(.85);opacity:.55}.world.locked .emblem:after{content:"🔒";font-size:1.1rem;position:absolute;bottom:-4px;right:-8px}.timeline{position:relative;display:flex;flex-direction:column;gap:14px;padding-left:30px}.timeline:before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;background:linear-gradient(var(--accent),rgba(74,222,128,.6),rgba(251,146,60,.5));opacity:.5}.timeline .node{position:absolute;left:-30px;top:22px;width:20px;height:20px;border-radius:50%;border:3px solid var(--bg);background:var(--accent);box-shadow:0 0 0 2px #8b5cf680,0 0 12px #8b5cf6cc}.timeline .node.done{background:var(--neon-green);box-shadow:0 0 0 2px #4ade8066,0 0 12px #4ade80b3}.timeline .node.off{background:var(--faint);box-shadow:0 0 0 2px #6f678766}.timeline>*{position:relative}.badge{text-align:center;padding:16px 10px}.badge .icon{font-size:2rem;width:64px;height:64px;margin:0 auto 8px;display:grid;place-items:center;border-radius:22px;background:var(--surface-2);border:1px solid var(--border)}.badge.unlocked .icon{background:linear-gradient(135deg,#8b5cf68c,#4c1d9580);border-color:#c4b5fd73;box-shadow:0 0 22px -6px #8b5cf6e6}.badge.locked{opacity:.45}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface)}table{width:100%;border-collapse:collapse;font-size:.9rem}th,td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--muted);font-weight:500;background:#1a1229f2;position:sticky;top:0}tr:last-child td{border-bottom:none}.tabs{display:flex;gap:6px;overflow-x:auto;padding:4px;margin-bottom:16px;scrollbar-width:thin;background:var(--surface);border:1px solid var(--border);border-radius:999px;width:fit-content;max-width:100%}.tab{white-space:nowrap;padding:8px 16px;border-radius:999px;border:none;background:transparent;color:var(--muted);cursor:pointer;font:500 .9rem var(--font-body)}.tab.on{color:#fff;background:#8b5cf659;box-shadow:inset 0 0 0 1px #a78bfa66}.toasts{position:fixed;top:16px;right:16px;left:16px;z-index:100;display:flex;flex-direction:column;align-items:flex-end;gap:8px;pointer-events:none}.toast{pointer-events:auto;max-width:360px;width:100%;background:#1e1430eb;backdrop-filter:blur(16px);border:1px solid var(--border-strong);border-radius:18px;padding:12px 16px;display:flex;flex-direction:column;gap:2px;animation:pop .25s ease-out;box-shadow:0 16px 40px -12px #0009}.toast-xp{border-color:#4ade8080}.toast-level{border-color:#fb923c80}.toast-badge{border-color:#a78bfa99}.toast-world{border-color:#60a5fa80}.toast-error{border-color:#fb71858c}.toast span{color:var(--muted);font-size:.9rem}@keyframes pop{0%{transform:translateY(-8px) scale(.97);opacity:0}to{transform:none;opacity:1}}.chat-head{display:flex;align-items:center;gap:10px}.chat-pill{flex:1;display:flex;align-items:center;gap:12px;padding:8px 18px 8px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border-strong)}.chat-pill .bot{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#8b5cf659;font-size:1.2rem}.chat{display:flex;flex-direction:column;gap:12px;min-height:320px;max-height:60vh;overflow-y:auto;padding:4px}.msg{max-width:85%;padding:12px 16px;border-radius:20px;white-space:pre-wrap;font-size:.95rem}.msg.me{align-self:flex-end;background:linear-gradient(135deg,#7c3aedb3,#5b21b699);border:1px solid rgba(196,181,253,.35);border-bottom-right-radius:6px}.msg.bot{align-self:flex-start;background:#1a1229d9;border:1px solid var(--border);border-bottom-left-radius:6px}.msg-meta{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted);margin-bottom:-4px}.spinner{display:flex;align-items:center;gap:10px;color:var(--muted);padding:24px 0}.spinner-dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--accent-2);border-top-color:transparent;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.hero{padding:72px 0 40px}.price{font-family:var(--font-display);font-size:2.4rem;font-weight:700}.price small{font-size:1rem;color:var(--muted);font-weight:500}ul.ticks{list-style:none;padding:0;margin:0 0 1em}ul.ticks li{padding:5px 0 5px 28px;position:relative}ul.ticks li:before{content:"✓";position:absolute;left:0;top:7px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:.7rem;font-weight:700;color:#ddd6fe;background:#8b5cf659}ul.ticks li.no{color:var(--faint)}ul.ticks li.no:before{content:"–";color:var(--faint);background:#6f678733}.bars{display:flex;align-items:flex-end;gap:5px;height:140px;padding-top:8px}.bars .bar{flex:1;min-width:4px;background:linear-gradient(180deg,#a78bfa,#6d28d9);border-radius:8px 8px 3px 3px;position:relative}footer.site{border-top:1px solid var(--border);padding:32px 0 48px;margin-top:48px;color:var(--muted);font-size:.9rem}.legal h2{margin-top:1.5em;font-size:1.25rem}.legal{max-width:760px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
