:root{--glass-thin: rgba(255, 255, 255, .03);--glass-regular: rgba(255, 255, 255, .05);--glass-thick: rgba(255, 255, 255, .08);--glass-elevated: rgba(255, 255, 255, .1);--border-subtle: rgba(255, 255, 255, .06);--border-default: rgba(255, 255, 255, .1);--border-emphasized: rgba(255, 255, 255, .18);--border-glow: rgba(255, 255, 255, .28);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 16px rgba(0, 0, 0, .25), 0 1px 2px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .35), 0 2px 4px rgba(0, 0, 0, .2);--shadow-xl: 0 16px 64px rgba(0, 0, 0, .4), 0 4px 8px rgba(0, 0, 0, .25);--shadow-inset-top: inset 0 1px 0 rgba(255, 255, 255, .08);--shadow-inset-bottom: inset 0 -1px 0 rgba(0, 0, 0, .2);--glow-primary: 0 0 24px rgba(99, 102, 241, .28);--glow-secondary: 0 0 24px rgba(6, 182, 212, .22);--glow-success: 0 0 24px rgba(16, 185, 129, .22);--glow-warm: 0 0 24px rgba(251, 191, 36, .22);--glow-cool: 0 0 24px rgba(6, 182, 212, .22);--blur-thin: blur(8px) saturate(140%);--blur-regular: blur(20px) saturate(180%);--blur-thick: blur(32px) saturate(200%);--ease-premium: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-quick: cubic-bezier(.2, 0, 0, 1);--bg-base: #14171f;--bg-surface-1: #1c2030;--bg-surface-2: #222738;--bg-elevated: #1c2030;--bg-recessed: #0d1018;--text-strong: #f8fafc;--text-default:#e2e8f0;--text-muted: #94a3b8;--text-subtle: #64748b;--font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", "Plus Jakarta Sans", system-ui, sans-serif;--font-text: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", "Plus Jakarta Sans", system-ui, sans-serif;--font-mono: "SF Mono", "JetBrains Mono", ui-monospace, "Cascadia Code", monospace}.glass-thin{background:var(--glass-thin);border:1px solid var(--border-subtle);box-shadow:var(--shadow-sm),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-thin);backdrop-filter:var(--blur-thin);position:relative;isolation:isolate}.glass-regular{background:var(--glass-regular);border:1px solid var(--border-default);box-shadow:var(--shadow-md),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-regular);backdrop-filter:var(--blur-regular);position:relative;isolation:isolate}.glass-thick{background:var(--glass-thick);border:1px solid var(--border-emphasized);box-shadow:var(--shadow-lg),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-thick);backdrop-filter:var(--blur-thick);position:relative;isolation:isolate}.glass-elevated{background:var(--glass-elevated);border:1px solid var(--border-glow);box-shadow:var(--shadow-xl),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-thick);backdrop-filter:var(--blur-thick);position:relative;isolation:isolate}.glass-card{background:var(--glass-regular);border:1px solid var(--border-default);border-radius:16px;padding:24px;box-shadow:var(--shadow-lg),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-regular);backdrop-filter:var(--blur-regular);position:relative;isolation:isolate}.glass-card-elevated{background:var(--glass-elevated);border:1px solid var(--border-emphasized);border-radius:16px;padding:32px;box-shadow:var(--shadow-xl),var(--shadow-inset-top);-webkit-backdrop-filter:var(--blur-thick);backdrop-filter:var(--blur-thick);position:relative;isolation:isolate}.lift-on-hover{transition:transform .3s var(--ease-premium),box-shadow .3s var(--ease-premium),background .3s var(--ease-premium),border-color .3s var(--ease-premium)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.lift-on-hover:hover{transform:translateY(-2px);background:var(--glass-elevated);border-color:var(--border-emphasized);box-shadow:var(--shadow-xl),var(--shadow-inset-top)}}@media(prefers-reduced-motion:reduce){.lift-on-hover{transition:none}}.scale-on-press{transition:transform .18s var(--ease-spring)}.scale-on-press:active{transform:scale(.98);transition:transform .1s var(--ease-quick)}@media(prefers-reduced-motion:reduce){.scale-on-press,.scale-on-press:active{transition:none;transform:none}}.glow-on-hover{transition:box-shadow .3s var(--ease-premium),border-color .3s var(--ease-premium)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.glow-on-hover:hover{box-shadow:var(--shadow-lg),var(--glow-primary),var(--shadow-inset-top);border-color:var(--border-glow)}}.cursor-glow{position:relative;overflow:hidden}.cursor-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:radial-gradient(600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,255,255,.06),transparent 40%);opacity:0;pointer-events:none;transition:opacity .3s var(--ease-premium);z-index:0}@media(hover:hover)and (prefers-reduced-motion:no-preference){.cursor-glow:hover:after{opacity:1}}@media(hover:none){.cursor-glow:after{display:none}}.text-display{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:600;letter-spacing:-.03em;line-height:1.1}.text-h1{font-family:var(--font-display);font-size:clamp(1.75rem,3.5vw,2.25rem);font-weight:700;letter-spacing:-.02em;line-height:1.15}.text-h2{font-family:var(--font-display);font-size:clamp(1.375rem,2.8vw,1.625rem);font-weight:700;letter-spacing:-.018em;line-height:1.2}.text-h3{font-family:var(--font-display);font-size:clamp(1.125rem,2.2vw,1.25rem);font-weight:700;letter-spacing:-.014em;line-height:1.25}.text-h4{font-family:var(--font-display);font-size:1rem;font-weight:700;letter-spacing:-.01em;line-height:1.3}.text-body{font-family:var(--font-text);font-size:1rem;font-weight:400;line-height:1.6;letter-spacing:-.005em}.text-caption{font-family:var(--font-text);font-size:.8125rem;font-weight:500;line-height:1.5;letter-spacing:0;color:#94a3b8}.text-mono{font-family:var(--font-mono);font-size:.875rem;font-variant-numeric:tabular-nums;letter-spacing:0}.text-stat{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-.02em}.text-muted{color:var(--text-muted, #94a3b8)}.text-subtle{color:var(--text-subtle, #64748b)}.text-strong{color:var(--text-strong, #f8fafc);font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:10px;border:1px solid transparent;background:transparent;color:inherit;font-family:var(--font-display);font-size:13px;font-weight:600;letter-spacing:-.1px;cursor:pointer;white-space:nowrap;transition:background .2s var(--ease-premium),border-color .2s var(--ease-premium),color .2s var(--ease-premium),transform .18s var(--ease-spring),box-shadow .25s var(--ease-premium)}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px #6366f173,var(--shadow-md)}.btn:active{transform:scale(.97);transition:transform .1s var(--ease-quick)}@media(prefers-reduced-motion:reduce){.btn{transition:none}.btn:active{transform:none}}.btn:disabled,.btn[disabled]{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none}.btn:disabled:active,.btn[disabled]:active{transform:none}.btn-sm{padding:7px 11px;font-size:12px;border-radius:8px}.btn-lg{padding:13px 22px;font-size:14px;border-radius:12px}.btn-primary{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border-color:#6366f161;box-shadow:0 1px #ffffff38 inset,0 0 0 1px #6366f147,var(--shadow-md)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.btn-primary:hover{background:linear-gradient(135deg,#7176f6,#8d97fa);box-shadow:0 1px #ffffff42 inset,0 0 0 1px #6366f173,var(--glow-primary),var(--shadow-lg);transform:translateY(-1px)}}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#10b98161;box-shadow:0 1px #ffffff38 inset,0 0 0 1px #10b98147,var(--shadow-md)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.btn-success:hover{background:linear-gradient(135deg,#14c393,#06aa78);box-shadow:0 1px #ffffff42 inset,0 0 0 1px #10b98173,var(--glow-success),var(--shadow-lg);transform:translateY(-1px)}}.btn-secondary{background:var(--glass-thin);color:#e2e8f0;border-color:var(--border-default);-webkit-backdrop-filter:var(--blur-thin);backdrop-filter:var(--blur-thin);box-shadow:var(--shadow-sm),var(--shadow-inset-top)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.btn-secondary:hover{background:var(--glass-thick);border-color:var(--border-emphasized);transform:translateY(-1px);box-shadow:var(--shadow-md),var(--shadow-inset-top)}}.btn-tertiary{background:transparent;color:#94a3b8;border-color:transparent}@media(hover:hover)and (prefers-reduced-motion:no-preference){.btn-tertiary:hover{background:var(--glass-regular);color:#e2e8f0}}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#ef444459;box-shadow:0 1px #ffffff2e inset,0 0 0 1px #ef444440,var(--shadow-md)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.btn-danger:hover{box-shadow:0 1px #ffffff38 inset,0 0 0 1px #ef444466,0 0 24px #ef444440,var(--shadow-lg);transform:translateY(-1px)}}@keyframes menuPop{0%{opacity:0;transform:scale(.94) translateY(-4px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modalPop{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes toastSlideIn{0%{opacity:0;transform:translate(40px) translateY(4px)}to{opacity:1;transform:translate(0) translateY(0)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:pageEnter .22s var(--ease-premium, ease-out)}@media(prefers-reduced-motion:reduce){.page-enter{animation:none}}@keyframes mcqPick{0%{transform:scale(1)}40%{transform:scale(1.03)}to{transform:scale(1)}}@keyframes mcqCorrectPulse{0%{transform:scale(1);box-shadow:0 0 #10b98180}40%{transform:scale(1.025);box-shadow:0 0 24px 4px #10b98166}to{transform:scale(1);box-shadow:0 0 #10b98100}}@keyframes mcqWrongShake{0%,to{transform:translate(0)}12%,36%,60%,84%{transform:translate(-5px)}24%,48%,72%{transform:translate(5px)}}@keyframes checkDraw{0%{stroke-dashoffset:30;opacity:0}to{stroke-dashoffset:0;opacity:1}}.mcq-option-pick{animation:mcqPick .28s var(--ease-spring, ease-out)}.mcq-option-correct{position:relative;overflow:hidden;animation:mcqCorrectPulse .7s var(--ease-premium, ease-out)}.mcq-option-correct:after{content:"";position:absolute;top:0;bottom:0;left:-60%;width:45%;background:linear-gradient(105deg,transparent,rgba(134,239,172,.26),transparent);animation:mcqGlowSweep .8s ease-out .15s both;pointer-events:none}@keyframes mcqGlowSweep{0%{left:-60%}to{left:110%}}.mcq-option-wrong{animation:mcqWrongShake .45s var(--ease-quick, ease-out),mcqWrongPulse .6s ease-out}@keyframes mcqWrongPulse{0%{box-shadow:0 0 #ef444473}50%{box-shadow:0 0 20px 3px #ef444459}to{box-shadow:0 0 #ef444400}}.mcq-option-reveal{animation:mcqRevealBreathe .9s ease-in-out .35s both}@keyframes mcqRevealBreathe{0%{transform:scale(1);box-shadow:0 0 #22c55e00}35%{transform:scale(1.02);box-shadow:0 0 18px 2px #22c55e47}to{transform:scale(1);box-shadow:0 0 #22c55e00}}.mcq-card-enter{animation:mcqCardIn .32s var(--ease-premium, ease-out)}@keyframes mcqCardIn{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}.mcq-check-draw{stroke-dasharray:30;animation:checkDraw .4s var(--ease-premium, ease-out) forwards}@media(prefers-reduced-motion:reduce){.mcq-option-pick,.mcq-option-correct,.mcq-option-wrong,.mcq-option-correct:after,.mcq-option-reveal,.mcq-card-enter{animation:none}.mcq-check-draw{animation:none;stroke-dashoffset:0;opacity:1}}@keyframes streakHypeIn{0%{opacity:0;transform:scale(.6) translateY(8px)}60%{opacity:1;transform:scale(1.12) translateY(-2px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes streakHypeShine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes onFirePulse{0%,to{box-shadow:0 0 8px #ef444473,0 0 16px #f9731633}50%{box-shadow:0 0 16px #ef4444bf,0 0 32px #f9731666}}@keyframes beastGlow{0%,to{box-shadow:0 0 12px #ef444459,0 0 32px #f9731633,inset 0 0 0 1px #ef444459}50%{box-shadow:0 0 28px #ef44448c,0 0 64px #f973164d,inset 0 0 0 1px #ef44448c}}@keyframes godVignette{0%,to{opacity:.55}50%{opacity:.85}}@keyframes godTextShimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes streakOuch{0%{transform:translate(0)}20%{transform:translate(-6px)}40%{transform:translate(5px)}60%{transform:translate(-4px)}80%{transform:translate(3px)}to{transform:translate(0)}}@keyframes neonDuePulse{0%,to{box-shadow:0 0 5px 1px #fb923c8c,0 0 12px 3px #ef44444d}50%{box-shadow:0 0 10px 2px #fb923cf2,0 0 22px 6px #ef44448c}}.neon-due-badge{font-family:JetBrains Mono,monospace;font-size:10px;font-weight:800;line-height:1.4;color:#fff5f0;padding:1px 7px;border-radius:8px;background:linear-gradient(135deg,#ef4444,#f97316);border:1px solid rgba(255,200,150,.55);text-shadow:0 0 6px rgba(255,180,120,.9),0 0 2px rgba(255,255,255,.85);animation:neonDuePulse 1.8s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.neon-due-badge{animation:none;box-shadow:0 0 6px 1px #fb923c99,0 0 14px 3px #ef444459}}.streak-pill-fire{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,#ef44442e,#f973161f);border:1px solid rgba(239,68,68,.45);color:#fca5a5;font-weight:800;font-size:10px;letter-spacing:.6px;animation:onFirePulse 1.6s ease-in-out infinite,streakHypeIn .35s var(--ease-spring, ease-out)}.beast-mode-card{animation:beastGlow 2.2s ease-in-out infinite;border-color:#ef444473!important}.god-mode-card{border:1.5px solid transparent!important;background-image:linear-gradient(#0f172aeb,#0f172aeb),linear-gradient(135deg,#fbbf24,#f59e0b,#ef4444,#a855f7,#fbbf24);background-origin:border-box;background-clip:padding-box,border-box;background-size:100% 100%,300% 300%;animation:streakHypeShine 6s ease-in-out infinite;box-shadow:0 0 40px #fbbf244d,0 0 80px #ef44442e,inset 0 0 0 1px #fbbf2440}.god-mode-vignette{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;background:radial-gradient(ellipse at center,transparent 35%,rgba(251,191,36,.06) 65%,rgba(239,68,68,.1) 90%,rgba(168,85,247,.16) 100%);animation:godVignette 3.5s ease-in-out infinite}.tier-banner{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;font-weight:900;font-size:11px;letter-spacing:1.5px;animation:streakHypeIn .5s var(--ease-spring, ease-out);white-space:nowrap}.tier-banner.tier-on-fire{background:linear-gradient(135deg,#ef444438,#f973161f);border:1px solid rgba(239,68,68,.55);color:#fca5a5}.tier-banner.tier-beast{background:linear-gradient(135deg,#ef44444d,#f973162e);border:1px solid rgba(239,68,68,.65);color:#fecaca;text-shadow:0 0 12px rgba(239,68,68,.5)}.tier-banner.tier-unstoppable{background:linear-gradient(135deg,#a855f74d,#8b5cf62e);border:1px solid rgba(168,85,247,.65);color:#e9d5ff;text-shadow:0 0 12px rgba(168,85,247,.5)}.tier-banner.tier-god{background:linear-gradient(135deg,#fbbf24,#f59e0b,#ef4444,#a855f7);background-size:300% 300%;border:1px solid rgba(251,191,36,.85);color:#0f172a;text-shadow:0 0 6px rgba(255,255,255,.3);animation:streakHypeIn .5s var(--ease-spring, ease-out),godTextShimmer 4s ease-in-out infinite .5s}.streak-ouch{animation:streakOuch .45s ease-out}.timer-vignette{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.timer-vignette-amber{box-shadow:inset 0 0 90px 12px #f59e0b29;animation:timerEdgePulse 2.4s ease-in-out infinite}.timer-vignette-red{box-shadow:inset 0 0 110px 18px #ef444438;animation:timerEdgePulse 1.1s ease-in-out infinite}@keyframes timerEdgePulse{0%,to{opacity:.5}50%{opacity:1}}.ecg-trace{animation:ecgScroll 3.4s linear infinite;will-change:transform}.ecg-strip.ecg-alarm .ecg-trace{animation-duration:.85s}.ecg-strip.ecg-alarm{animation:ecgJitter .28s linear infinite}@keyframes ecgScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes ecgJitter{0%,to{transform:translateY(0)}25%{transform:translateY(-1.5px)}50%{transform:translateY(1.5px)}75%{transform:translateY(-1px)}}@keyframes hotkeysFade{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}}.hotkeys-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#020617b8;-webkit-backdrop-filter:blur(6px) saturate(140%);backdrop-filter:blur(6px) saturate(140%);animation:hotkeysFade .18s ease-out;display:flex;align-items:center;justify-content:center;padding:20px}.hotkeys-modal{max-width:460px;width:100%;background:linear-gradient(135deg,#1e293bf2,#0f172af2);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:24px 26px;box-shadow:0 24px 64px #00000080;animation:streakHypeIn .28s var(--ease-spring, ease-out)}.hotkeys-kbd{display:inline-block;min-width:22px;text-align:center;padding:2px 8px;border-radius:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);box-shadow:0 1px #ffffff0d inset,0 1px #0000004d;font-family:JetBrains Mono,monospace;font-size:11px;color:#cbd5e1}.podium-rise{animation:podiumRise .55s cubic-bezier(.34,1.56,.64,1) both}@keyframes podiumRise{0%{opacity:0;transform:translateY(28px) scale(.88)}to{opacity:1;transform:translateY(0) scale(1)}}.podium-stamp{animation:podiumStamp .32s ease-out both}@keyframes podiumStamp{0%{opacity:0;transform:rotate(-18deg) scale(2.4)}60%{opacity:1;transform:rotate(-8deg) scale(.94)}to{opacity:1;transform:rotate(-8deg) scale(1)}}@media(prefers-reduced-motion:reduce){.streak-pill-fire,.beast-mode-card,.god-mode-card,.god-mode-vignette,.tier-banner,.tier-banner.tier-god,.streak-ouch,.ecg-trace,.ecg-strip.ecg-alarm,.timer-vignette-amber,.timer-vignette-red,.podium-rise,.podium-stamp,.hotkeys-overlay,.hotkeys-modal{animation:none!important}.timer-vignette-amber,.timer-vignette-red{opacity:.6}.god-mode-card{background-image:none;border:1px solid rgba(251,191,36,.6)!important}.god-mode-vignette{opacity:.5}}@keyframes ambientBreathe1{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@keyframes ambientBreathe2{0%,to{opacity:1;transform:scale(1)}50%{opacity:.78;transform:scale(.96)}}@media(prefers-reduced-motion:reduce){@keyframes ambientBreathe1{0%,to{opacity:1;transform:none}}@keyframes ambientBreathe2{0%,to{opacity:1;transform:none}}}@keyframes miniEkg{0%{stroke-dashoffset:60}50%{stroke-dashoffset:0}to{stroke-dashoffset:-60}}.brand-sub-neon{background:linear-gradient(90deg,#65a30d,#a3e635,#ecfccb,#a3e635,#65a30d);background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;animation:brandNeonSweep 6s linear infinite,brandNeonGlow 2.8s ease-in-out infinite}@keyframes brandNeonSweep{0%{background-position:0% 50%}to{background-position:300% 50%}}@keyframes brandNeonGlow{0%,to{filter:drop-shadow(0 0 2px rgba(163,230,53,.4)) drop-shadow(0 0 5px rgba(163,230,53,.22))}50%{filter:drop-shadow(0 0 4px rgba(163,230,53,.85)) drop-shadow(0 0 11px rgba(163,230,53,.5))}}@media(prefers-reduced-motion:reduce){.brand-sub-neon{animation:none;background:none;color:#84cc16;-webkit-text-fill-color:#84cc16;filter:none}}@keyframes comboPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes staggerIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes viewMorph{0%{opacity:0;transform:translateY(7px) scale(.995);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}@keyframes ivBagDrop{0%{cy:43;opacity:.8}50%{opacity:.5}to{cy:49;opacity:0}}@keyframes flowPulse{0%{left:0%;opacity:0}50%{opacity:.5}to{left:calc(100% - 8px);opacity:0}}@keyframes flowFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes bellowsBreathe{0%,to{transform:scaleY(1)}45%{transform:scaleY(.58)}}@keyframes flowBubble{0%{transform:translateY(0);opacity:0}18%{opacity:.55}82%{opacity:.4}to{transform:translateY(-34px);opacity:0}}@keyframes statusBlink{0%,to{opacity:1}50%{opacity:.25}}@keyframes shimmerBar{0%{left:-40%}to{left:140%}}.xp-shimmer{position:relative;overflow:hidden}.xp-shimmer:after{content:"";position:absolute;top:0;left:-40%;width:40%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);animation:shimmerBar 2.5s ease-in-out infinite}@keyframes fireGlow{0%{transform:scale(1);opacity:.7;filter:brightness(1)}to{transform:scale(1.15);opacity:1;filter:brightness(1.3)}}@keyframes fillBar{0%{width:0%}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes streakGlow{0%,to{text-shadow:0 0 8px rgba(251,191,36,.4)}50%{text-shadow:0 0 20px rgba(251,191,36,.8),0 0 40px rgba(251,191,36,.3)}}@keyframes streakPulse{0%,to{box-shadow:0 4px 16px #f59e0b26}50%{box-shadow:0 4px 24px #f59e0b59,0 0 0 6px #fbbf2414}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.08)}70%{transform:scale(.95)}to{transform:scale(1)}}@keyframes pearlGlow{0%,to{box-shadow:0 0 8px #f59e0b1a,inset 0 0 8px #f59e0b05}50%{box-shadow:0 0 20px #f59e0b40,inset 0 0 12px #f59e0b0d}}@keyframes boardTagGlow{0%,to{box-shadow:0 0 6px #fbbf2433,inset 0 0 6px #fbbf240a}50%{box-shadow:0 0 16px #fbbf248c,inset 0 0 10px #fbbf241a}}@keyframes objectiveTagGlow{0%,to{box-shadow:0 0 6px #05966933,inset 0 0 6px #0596690a}50%{box-shadow:0 0 16px #10b98180,inset 0 0 10px #0596691a}}@keyframes pearlBounce{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(-5deg)}75%{transform:translateY(-1px) rotate(5deg)}}@keyframes brainFloat{0%,to{transform:translateY(0) scale(1)}25%{transform:translateY(-4px) scale(1.05)}50%{transform:translateY(-2px) scale(1.02)}75%{transform:translateY(-5px) scale(1.04)}}@keyframes slideIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes glowText{0%,to{text-shadow:0 0 10px rgba(99,102,241,.3)}50%{text-shadow:0 0 25px rgba(99,102,241,.6),0 0 50px rgba(99,102,241,.2)}}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes heartbeat{0%,to{transform:scale(1)}14%{transform:scale(1.15)}28%{transform:scale(1)}42%{transform:scale(1.1)}56%{transform:scale(1)}}@keyframes cardBackGlow{0%,to{box-shadow:0 0 15px #6366f126,inset 0 0 20px #6366f108}50%{box-shadow:0 0 30px #6366f14d,inset 0 0 30px #6366f10f}}@keyframes cardReveal{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.card-back-glow{animation:cardBackGlow 3s ease-in-out infinite,cardReveal .5s ease-out}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes folderGlow{0%,to{box-shadow:0 0 15px var(--fg, rgba(99,102,241,.1)),0 0 40px var(--fg2, rgba(99,102,241,.03))}50%{box-shadow:0 0 30px var(--fg, rgba(99,102,241,.22)),0 0 80px var(--fg2, rgba(99,102,241,.06))}}@keyframes progressFill{0%{width:0%}to{width:var(--pw, 0%)}}@keyframes progressGlow{0%,to{filter:brightness(1) drop-shadow(0 0 3px currentColor)}50%{filter:brightness(1.4) drop-shadow(0 0 8px currentColor)}}@keyframes duePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}@keyframes qbPendingPulse{0%,to{box-shadow:0 0 0 1px rgba(var(--pending-rgb),.3),0 0 10px rgba(var(--pending-rgb),.14),var(--shadow-sm),var(--shadow-inset-top)}50%{box-shadow:0 0 0 1px rgba(var(--pending-rgb),.7),0 0 24px 2px rgba(var(--pending-rgb),.4),var(--shadow-sm),var(--shadow-inset-top)}}@media(prefers-reduced-motion:reduce){.qb-card-pending{animation:none!important;box-shadow:0 0 0 1px rgba(var(--pending-rgb),.55),var(--shadow-sm),var(--shadow-inset-top)!important}}@keyframes iconBreathe{0%,to{transform:scale(1);box-shadow:0 0 12px var(--ig, rgba(99,102,241,.1))}50%{transform:scale(1.06);box-shadow:0 0 24px var(--ig, rgba(99,102,241,.2))}}@keyframes orbFloat1{0%{transform:translate(0) scale(1);opacity:.15}25%{transform:translate(30px,-20px) scale(1.2);opacity:.25}50%{transform:translate(-10px,-35px) scale(.9);opacity:.1}75%{transform:translate(-25px,-10px) scale(1.1);opacity:.2}to{transform:translate(0) scale(1);opacity:.15}}@keyframes orbFloat2{0%{transform:translate(0) scale(1);opacity:.1}33%{transform:translate(-20px,15px) scale(1.3);opacity:.2}66%{transform:translate(15px,25px) scale(.8);opacity:.08}to{transform:translate(0) scale(1);opacity:.1}}@keyframes cardBreathe{0%,to{transform:translateY(0)}50%{transform:translateY(-1.5px)}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.qb-card{transition:all .3s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden;animation:cardBreathe 6s ease-in-out infinite}.qb-card:nth-child(odd){animation-delay:-2s}.qb-card:nth-child(3n){animation-delay:-4s}.qb-card:hover{transform:translateY(-5px) scale(1.015);box-shadow:0 12px 40px #0006,0 0 30px var(--fg, rgba(99,102,241,.15)),0 0 60px var(--fg2, rgba(99,102,241,.05))}.qb-card:active{transform:translateY(-2px) scale(.98);transition:all .1s}.qb-card:before{content:"";position:absolute;top:0;left:-150%;width:80%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.03) 45%,rgba(255,255,255,.05) 50%,rgba(255,255,255,.03) 55%,transparent 70%);transition:left .7s ease}.qb-card:hover:before{left:150%}.qb-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--fg, rgba(99,102,241,.2)),transparent);opacity:0;transition:opacity .3s}.qb-card:hover:after{opacity:1}.qb-due{animation:duePulse 1.5s ease-in-out infinite}.qb-orb{position:absolute;border-radius:50%;pointer-events:none;filter:blur(20px)}.qb-progress{animation:progressGlow 3s ease-in-out infinite}@keyframes lobbyOrb{0%{transform:translate(0) scale(1);opacity:.06}33%{transform:translate(40px,-30px) scale(1.4);opacity:.12}66%{transform:translate(-20px,-50px) scale(.8);opacity:.04}to{transform:translate(0) scale(1);opacity:.06}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.6}}@keyframes indeterminate{0%{transform:translate(-100%)}to{transform:translate(280%)}}@keyframes feedbackPulse{0%,to{box-shadow:0 4px 18px #00000059,0 0 #6366f173}50%{box-shadow:0 4px 18px #00000059,0 0 0 12px #6366f100}}@keyframes correctPulse{0%{box-shadow:0 0 #22c55e66}70%{box-shadow:0 0 0 12px #22c55e00}to{box-shadow:0 0 #22c55e00}}@keyframes urgentPulse{0%,to{box-shadow:inset 0 0 #ef444400}50%{box-shadow:inset 0 0 30px 5px #ef44440f}}@keyframes wrongShake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-3px)}20%,40%,60%,80%{transform:translate(3px)}}@keyframes streakFire{0%{text-shadow:0 0 4px rgba(251,191,36,.5)}50%{text-shadow:0 0 16px rgba(251,191,36,.8),0 0 32px rgba(245,158,11,.4)}to{text-shadow:0 0 4px rgba(251,191,36,.5)}}@keyframes xpFloat{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}15%{opacity:1;transform:translate(-50%,-55%) scale(1.1)}30%{transform:translate(-50%,-60%) scale(1)}80%{opacity:1;transform:translate(-50%,-80%)}to{opacity:0;transform:translate(-50%,-100%) scale(.8)}}@keyframes spin{to{transform:rotate(360deg)}}.ghst:hover{background:#ffffff0a!important}.ghst:hover .folder-menu-btn{opacity:1!important}@keyframes fdHeroRise{0%{opacity:0;transform:translateY(20px) scale(.975);filter:blur(7px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}@keyframes fdRise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fdCellPop{0%{opacity:0;transform:translateY(12px) scale(.88)}62%{opacity:1;transform:translateY(-3px) scale(1.03)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fdSheen{0%{transform:translate(-130%) skew(-18deg);opacity:0}35%{opacity:.7}to{transform:translate(240%) skew(-18deg);opacity:0}}@keyframes fdRingSettle{0%{filter:drop-shadow(0 0 0 var(--fd-ring-glow, rgba(99,102,241,0)))}55%{filter:drop-shadow(0 0 12px var(--fd-ring-glow, rgba(99,102,241,.55)))}to{filter:drop-shadow(0 0 4px var(--fd-ring-glow, rgba(99,102,241,.25)))}}.fd-hero{position:relative;animation:fdHeroRise .72s var(--ease-premium) both}.fd-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;background:linear-gradient(105deg,transparent 32%,rgba(255,255,255,.12) 48%,rgba(255,255,255,.04) 56%,transparent 70%);transform:translate(-130%) skew(-18deg);animation:fdSheen 1.35s var(--ease-premium) .28s both}.fd-ring{animation:fdRingSettle 1.5s var(--ease-premium) .2s both}.fd-stat{animation:fdCellPop .55s var(--ease-spring) both}.fd-rise{animation:fdRise .6s var(--ease-premium) both}@keyframes fdBarGrow{0%{width:0}to{width:var(--fd-bar-w, 0%)}}.fd-bar{animation:fdBarGrow .9s var(--ease-premium) .62s both}@media(prefers-reduced-motion:reduce){.fd-hero,.fd-hero:after,.fd-ring,.fd-stat,.fd-rise{animation:none!important;filter:none!important;transform:none!important;opacity:1!important}.fd-bar{animation:none!important;width:var(--fd-bar-w, 0%)!important}}.sb-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;line-height:1.6;border:1px solid rgba(var(--sb-rgb),.32);background:rgba(var(--sb-rgb),.12);color:var(--sb-color);white-space:nowrap}.sb-dot{width:6px;height:6px;border-radius:50%;background:var(--sb-color);box-shadow:0 0 rgba(var(--sb-rgb),.55)}.sb-anim-breathe{animation:sbBreatheBox 3.2s var(--ease-premium, ease-in-out) infinite}.sb-anim-breathe .sb-dot{animation:sbDotRipple 3.2s var(--ease-premium, ease-out) infinite}@keyframes sbBreatheBox{0%,to{border-color:rgba(var(--sb-rgb),.32);background:rgba(var(--sb-rgb),.1)}50%{border-color:rgba(var(--sb-rgb),.55);background:rgba(var(--sb-rgb),.18)}}@keyframes sbDotRipple{0%{box-shadow:0 0 rgba(var(--sb-rgb),.55)}70%{box-shadow:0 0 0 6px rgba(var(--sb-rgb),0)}to{box-shadow:0 0 rgba(var(--sb-rgb),0)}}.sb-anim-pulseRed{animation:sbPulseRed 1.5s ease-in-out infinite}.sb-anim-pulseRed .sb-dot{animation:sbDotRipple 1.5s ease-out infinite}@keyframes sbPulseRed{0%,to{border-color:rgba(var(--sb-rgb),.4);background:rgba(var(--sb-rgb),.12);transform:translateZ(0) scale(1)}50%{border-color:rgba(var(--sb-rgb),.75);background:rgba(var(--sb-rgb),.24);transform:translateZ(0) scale(1.04)}}.sb-anim-shimmer{position:relative;overflow:hidden}.sb-anim-shimmer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 30%,rgba(var(--sb-rgb),.28) 50%,transparent 70%);transform:translate(-120%);animation:sbSheen 4.5s ease-in-out infinite}@keyframes sbSheen{0%,60%{transform:translate(-120%)}to{transform:translate(120%)}}.sb-anim-glow{animation:sbGlow 4s ease-in-out infinite}@keyframes sbGlow{0%,to{box-shadow:0 0 rgba(var(--sb-rgb),0)}50%{box-shadow:0 0 10px rgba(var(--sb-rgb),.35)}}.sb-anim-frozen{opacity:.7;filter:saturate(.6)}@media(prefers-reduced-motion:reduce){.sb-anim-breathe,.sb-anim-breathe .sb-dot,.sb-anim-pulseRed,.sb-anim-pulseRed .sb-dot,.sb-anim-glow{animation:none!important}.sb-anim-shimmer:after{animation:none!important;opacity:0}}.toast-anim{animation:fadeIn .25s ease-out}html,body{margin:0;padding:0;background:var(--bg-base, #0a0a0a);color:#e2e8f0;font-family:var(--font-text, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);-webkit-font-smoothing:antialiased;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}@media(pointer:coarse){.btn-sm{min-height:40px}.btn{min-height:44px}.btn-lg{min-height:48px}}@media(max-width:480px){.glass-card{padding:16px!important;border-radius:12px!important}.glass-card-elevated{padding:22px!important}}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;opacity:.4;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0 0.5 0 0 0 0.35 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");background-size:180px 180px}#root{position:relative;z-index:1}#root{min-height:100vh}@keyframes scrollWave{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes vitalGlow{0%,to{box-shadow:0 0 15px var(--vital-glow, rgba(99,102,241,.2)),0 0 30px var(--vital-glow-soft, rgba(99,102,241,.1)),var(--shadow-md, 0 8px 24px rgba(0,0,0,.32)),var(--shadow-inset-top, inset 0 1px 0 rgba(255,255,255,.05))}50%{box-shadow:0 0 25px var(--vital-glow, rgba(99,102,241,.34)),0 0 60px var(--vital-glow-soft, rgba(99,102,241,.18)),var(--shadow-md, 0 8px 24px rgba(0,0,0,.32)),var(--shadow-inset-top, inset 0 1px 0 rgba(255,255,255,.05))}}@keyframes vitalNumeralGlow{0%,to{text-shadow:0 0 10px var(--vital-glow, rgba(99,102,241,.6)),0 0 24px var(--vital-glow-soft, rgba(99,102,241,.3))}50%{text-shadow:0 0 20px var(--vital-glow, rgba(99,102,241,.78)),0 0 44px var(--vital-glow-soft, rgba(99,102,241,.4))}}@media(prefers-reduced-motion:reduce){.vital-card,.vital-card .vital-numeral{animation:none!important}.vital-card .vital-wave-track{animation:none!important;transform:none!important}}@media(max-width:900px){.hero-grid{grid-template-columns:1fr!important;text-align:center}.hero-grid h1{text-align:center!important}}@media(max-width:560px){.vital-card{padding:14px 14px 10px}.vital-card .vital-numeral{letter-spacing:-1px}}@media(max-width:380px){.hero-grid>div:last-child{grid-template-columns:1fr!important}}@media(prefers-reduced-motion:reduce){.hero-grid *{animation:none!important;transition:none!important}}::view-transition-old(root){animation-duration:.18s;animation-timing-function:ease-out}::view-transition-new(root){animation-duration:.18s;animation-timing-function:ease-out}@media(prefers-reduced-motion:reduce){::view-transition-old(root),::view-transition-new(root){animation:none}}
