@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Space+Grotesk:wght@400;500;600;700&display=swap";:root{--bg-primary: #07060e;--bg-secondary: #0e0d1b;--bg-tertiary: #141326;--bg-card: rgba(18, 17, 35, .65);--bg-card-hover: rgba(24, 23, 48, .8);--bg-glass: rgba(255, 255, 255, .04);--bg-glass-hover: rgba(255, 255, 255, .08);--text-primary: #f0eef8;--text-secondary: #a8a4c0;--text-muted: #6b6788;--text-inverse: #07060e;--accent-primary: #8b5cf6;--accent-primary-hover: #7c3aed;--accent-primary-light: rgba(139, 92, 246, .15);--accent-secondary: #06d6a0;--accent-secondary-light: rgba(6, 214, 160, .12);--accent-pink: #f472b6;--accent-cyan: #22d3ee;--accent-orange: #fb923c;--success: #10b981;--success-light: rgba(16, 185, 129, .15);--warning: #f59e0b;--warning-light: rgba(245, 158, 11, .15);--danger: #ef4444;--danger-light: rgba(239, 68, 68, .15);--info: #3b82f6;--info-light: rgba(59, 130, 246, .15);--border-color: rgba(139, 92, 246, .08);--border-color-hover: rgba(139, 92, 246, .2);--gradient-border: linear-gradient(135deg, #8b5cf6, #06d6a0, #f472b6, #8b5cf6);--gradient-glow: linear-gradient(135deg, rgba(139,92,246,.4), rgba(6,214,160,.3), rgba(244,114,182,.3));--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3);--shadow-md: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--shadow-glow: 0 0 30px rgba(139, 92, 246, .25), 0 0 60px rgba(139, 92, 246, .1);--shadow-glow-lg: 0 0 40px rgba(139, 92, 246, .35), 0 0 80px rgba(6, 214, 160, .15);--shadow-neon: 0 0 15px rgba(139, 92, 246, .5), 0 0 45px rgba(139, 92, 246, .2);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Space Grotesk", "Inter", sans-serif;--font-size-xs: .7rem;--font-size-sm: .8125rem;--font-size-base: .9375rem;--font-size-lg: 1.0625rem;--font-size-xl: 1.3rem;--font-size-2xl: 1.75rem;--font-size-3xl: 2.5rem;--font-size-4xl: 3.25rem;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 20px;--radius-xl: 28px;--radius-full: 9999px;--transition-fast: .18s cubic-bezier(.4, 0, .2, 1);--transition-base: .28s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--transition-spring: .5s cubic-bezier(.34, 1.56, .64, 1);--z-modal: 100;--z-overlay: 90;--z-navbar: 50}[data-theme=light]{--bg-primary: #f3f0fa;--bg-secondary: #ffffff;--bg-tertiary: #e8e0f7;--bg-card: rgba(255, 255, 255, .92);--bg-card-hover: rgba(255, 255, 255, 1);--bg-glass: rgba(139, 92, 246, .06);--bg-glass-hover: rgba(139, 92, 246, .1);--text-primary: #1a1033;--text-secondary: #4a3f6b;--text-muted: #7a6f9a;--text-inverse: #ffffff;--border-color: rgba(139, 92, 246, .18);--border-color-hover: rgba(139, 92, 246, .35);--shadow-sm: 0 2px 8px rgba(100, 60, 180, .1), 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(100, 60, 180, .14), 0 2px 6px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 32px rgba(100, 60, 180, .18), 0 4px 12px rgba(0, 0, 0, .06);--shadow-glow: 0 0 20px rgba(139, 92, 246, .2);--shadow-glow-lg: 0 0 30px rgba(139, 92, 246, .25), 0 0 60px rgba(6, 214, 160, .1);--shadow-neon: 0 0 12px rgba(139, 92, 246, .3), 0 0 30px rgba(139, 92, 246, .12);--header-gradient: linear-gradient(135deg, #7c3aed, #a855f7, #ec4899, #f472b6)}[data-theme=light] body:before{background:radial-gradient(ellipse 80% 50% at 20% 80%,rgba(139,92,246,.1) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 20%,rgba(6,214,160,.07) 0%,transparent 50%),radial-gradient(ellipse 70% 60% at 50% 50%,rgba(244,114,182,.05) 0%,transparent 50%)}[data-theme=light] .card{border:1px solid rgba(139,92,246,.15);box-shadow:0 2px 12px #643cb41a,0 1px 4px #0000000d}[data-theme=light] .card:hover{border-color:#8b5cf640;box-shadow:0 6px 24px #643cb429,0 2px 8px #0000000f}[data-theme=light] .card-glow{box-shadow:0 4px 20px #643cb424,0 2px 6px #0000000d;border:1px solid rgba(139,92,246,.12)}[data-theme=light] .form-input{background:#fffc;border:1.5px solid rgba(139,92,246,.2)}[data-theme=light] .form-input:focus{background:#fff;border-color:var(--accent-primary)}[data-theme=light] .pin-digit{background:#fffc;border:2px solid rgba(139,92,246,.2)}[data-theme=light] .pin-digit:focus{background:#fff;border-color:var(--accent-primary)}[data-theme=light] .bottom-nav{background:#ffffffeb;border-top:1px solid rgba(139,92,246,.12);box-shadow:0 -2px 16px #643cb414}[data-theme=light] .btn-secondary{background:#ffffffe6;border:1px solid rgba(139,92,246,.18)}[data-theme=light] .stat-card{background:#ffffffe6;border:1px solid rgba(139,92,246,.12);box-shadow:0 2px 8px #643cb414}:root{--header-gradient: linear-gradient(135deg, #6d28d9, #8b5cf6, #06d6a0);--header-text: #fff;--theme-particles: none}[data-theme=ocean]{--bg-primary: #020e1a;--bg-secondary: #071e30;--bg-tertiary: #0a2940;--bg-card: rgba(7, 30, 48, .65);--bg-card-hover: rgba(10, 41, 64, .8);--bg-glass: rgba(14, 165, 233, .06);--bg-glass-hover: rgba(14, 165, 233, .12);--text-primary: #e0f2fe;--text-secondary: #7dd3fc;--text-muted: #38bdf8;--accent-primary: #0ea5e9;--accent-primary-hover: #0284c7;--accent-primary-light: rgba(14, 165, 233, .18);--accent-secondary: #22d3ee;--accent-secondary-light: rgba(34, 211, 238, .12);--border-color: rgba(14, 165, 233, .08);--border-color-hover: rgba(14, 165, 233, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(0, 10, 30, .5);--shadow-lg: 0 8px 40px rgba(0, 10, 30, .6);--shadow-glow: 0 0 30px rgba(14, 165, 233, .25), 0 0 60px rgba(14, 165, 233, .1);--shadow-neon: 0 0 15px rgba(14, 165, 233, .5), 0 0 45px rgba(14, 165, 233, .2);--gradient-border: linear-gradient(135deg, #0ea5e9, #22d3ee, #06b6d4, #0ea5e9);--header-gradient: linear-gradient(135deg, #082f49, #0c4a6e, #0369a1, #0ea5e9)}[data-theme=sakura]{--bg-primary: #0d0511;--bg-secondary: #1a0c1e;--bg-tertiary: #2a1230;--bg-card: rgba(26, 12, 30, .65);--bg-card-hover: rgba(42, 18, 48, .8);--bg-glass: rgba(236, 72, 153, .06);--bg-glass-hover: rgba(236, 72, 153, .12);--text-primary: #fdf2f8;--text-secondary: #f9a8d4;--text-muted: #f472b6;--accent-primary: #ec4899;--accent-primary-hover: #db2777;--accent-primary-light: rgba(236, 72, 153, .18);--accent-secondary: #c084fc;--accent-secondary-light: rgba(192, 132, 252, .12);--border-color: rgba(236, 72, 153, .08);--border-color-hover: rgba(236, 72, 153, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .4);--shadow-md: 0 4px 20px rgba(13, 5, 17, .5);--shadow-lg: 0 8px 40px rgba(13, 5, 17, .6);--shadow-glow: 0 0 30px rgba(236, 72, 153, .25), 0 0 60px rgba(236, 72, 153, .1);--shadow-neon: 0 0 15px rgba(236, 72, 153, .5), 0 0 45px rgba(236, 72, 153, .2);--gradient-border: linear-gradient(135deg, #ec4899, #c084fc, #f472b6, #ec4899);--header-gradient: linear-gradient(135deg, #4a044e, #831843, #be185d, #ec4899)}[data-theme=cosmos]{--bg-primary: #05001a;--bg-secondary: #0c0028;--bg-tertiary: #150040;--bg-card: rgba(12, 0, 40, .65);--bg-card-hover: rgba(21, 0, 64, .8);--bg-glass: rgba(139, 92, 246, .06);--bg-glass-hover: rgba(139, 92, 246, .12);--text-primary: #f5f3ff;--text-secondary: #c4b5fd;--text-muted: #a78bfa;--accent-primary: #8b5cf6;--accent-primary-hover: #7c3aed;--accent-primary-light: rgba(139, 92, 246, .18);--accent-secondary: #e879f9;--accent-secondary-light: rgba(232, 121, 249, .12);--border-color: rgba(139, 92, 246, .08);--border-color-hover: rgba(139, 92, 246, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .5);--shadow-md: 0 4px 20px rgba(5, 0, 26, .6);--shadow-lg: 0 8px 40px rgba(5, 0, 26, .7);--shadow-glow: 0 0 40px rgba(139, 92, 246, .3), 0 0 80px rgba(232, 121, 249, .15);--shadow-neon: 0 0 20px rgba(139, 92, 246, .5), 0 0 50px rgba(139, 92, 246, .25);--gradient-border: linear-gradient(135deg, #8b5cf6, #e879f9, #a78bfa, #8b5cf6);--header-gradient: linear-gradient(135deg, #1e1065, #4c1d95, #7c3aed, #a78bfa)}[data-theme=rainbow]{--bg-primary: #faf5ff;--bg-secondary: #ffffff;--bg-tertiary: #f5f0ff;--bg-card: rgba(255, 255, 255, .75);--bg-card-hover: rgba(255, 255, 255, .9);--bg-glass: rgba(168, 85, 247, .04);--bg-glass-hover: rgba(168, 85, 247, .08);--text-primary: #1e1b4b;--text-secondary: #5b21b6;--text-muted: #7c3aed;--text-inverse: #ffffff;--accent-primary: #8b5cf6;--accent-primary-hover: #7c3aed;--accent-primary-light: rgba(139, 92, 246, .12);--accent-secondary: #ec4899;--accent-secondary-light: rgba(236, 72, 153, .1);--border-color: rgba(139, 92, 246, .1);--border-color-hover: rgba(139, 92, 246, .2);--shadow-sm: 0 2px 8px rgba(139, 92, 246, .06);--shadow-md: 0 4px 20px rgba(139, 92, 246, .1);--shadow-lg: 0 8px 40px rgba(139, 92, 246, .14);--shadow-glow: 0 0 30px rgba(139, 92, 246, .15);--shadow-neon: 0 0 15px rgba(139, 92, 246, .2), 0 0 30px rgba(139, 92, 246, .1);--gradient-border: linear-gradient(135deg, #8b5cf6, #ec4899, #f472b6, #8b5cf6);--header-gradient: linear-gradient(135deg, #7c3aed, #a855f7, #ec4899, #f472b6)}[data-theme=gamer]{--bg-primary: #020a02;--bg-secondary: #041204;--bg-tertiary: #081c08;--bg-card: rgba(4, 18, 4, .65);--bg-card-hover: rgba(8, 28, 8, .8);--bg-glass: rgba(34, 197, 94, .05);--bg-glass-hover: rgba(34, 197, 94, .1);--text-primary: #dcfce7;--text-secondary: #86efac;--text-muted: #4ade80;--accent-primary: #22c55e;--accent-primary-hover: #16a34a;--accent-primary-light: rgba(34, 197, 94, .15);--accent-secondary: #a3e635;--accent-secondary-light: rgba(163, 230, 53, .1);--border-color: rgba(34, 197, 94, .08);--border-color-hover: rgba(34, 197, 94, .2);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .5);--shadow-md: 0 4px 20px rgba(0, 5, 0, .6);--shadow-lg: 0 8px 40px rgba(0, 5, 0, .7);--shadow-glow: 0 0 30px rgba(34, 197, 94, .3), 0 0 60px rgba(34, 197, 94, .15);--shadow-neon: 0 0 15px rgba(34, 197, 94, .5), 0 0 45px rgba(34, 197, 94, .25);--gradient-border: linear-gradient(135deg, #22c55e, #a3e635, #4ade80, #22c55e);--header-gradient: linear-gradient(135deg, #052e16, #065f46, #059669, #34d399)}body:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:-2;background:radial-gradient(ellipse 80% 50% at 20% 80%,rgba(139,92,246,.12) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 20%,rgba(6,214,160,.08) 0%,transparent 50%),radial-gradient(ellipse 70% 60% at 50% 50%,rgba(244,114,182,.06) 0%,transparent 50%);animation:meshFloat 15s ease-in-out infinite alternate}@keyframes meshFloat{0%{transform:translate(0) scale(1);opacity:1}50%{transform:translate(-20px,-15px) scale(1.05);opacity:.8}to{transform:translate(10px,-30px) scale(1.03);opacity:1}}[data-theme=ocean] body:before{background:radial-gradient(ellipse 80% 50% at 20% 80%,rgba(14,165,233,.15) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 80% 20%,rgba(6,182,212,.1) 0%,transparent 50%),radial-gradient(ellipse 70% 60% at 50% 50%,rgba(3,105,161,.08) 0%,transparent 50%)}[data-theme=sakura] body:before{background:radial-gradient(ellipse 80% 50% at 80% 85%,rgba(236,72,153,.12) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 15% 25%,rgba(192,132,252,.08) 0%,transparent 50%),radial-gradient(ellipse 70% 60% at 50% 50%,rgba(157,23,77,.06) 0%,transparent 50%)}[data-theme=cosmos] body:before{background:radial-gradient(ellipse 60% 50% at 75% 80%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(ellipse 50% 40% at 20% 30%,rgba(232,121,249,.1) 0%,transparent 50%),radial-gradient(ellipse 70% 55% at 50% 50%,rgba(76,29,149,.1) 0%,transparent 50%)}[data-theme=rainbow] body:before{background:radial-gradient(ellipse 70% 50% at 85% 15%,rgba(236,72,153,.08) 0%,transparent 50%),radial-gradient(ellipse 60% 40% at 10% 80%,rgba(139,92,246,.06) 0%,transparent 50%),radial-gradient(ellipse 80% 60% at 50% 50%,rgba(168,85,247,.04) 0%,transparent 50%)}[data-theme=gamer] body:before{background:radial-gradient(ellipse 60% 50% at 85% 85%,rgba(34,197,94,.12) 0%,transparent 50%),radial-gradient(ellipse 50% 40% at 15% 20%,rgba(163,230,53,.08) 0%,transparent 50%),radial-gradient(ellipse 70% 55% at 50% 50%,rgba(5,46,22,.15) 0%,transparent 50%)}[data-theme=ocean] .app-layout:before,[data-theme=sakura] .app-layout:before,[data-theme=cosmos] .app-layout:before,[data-theme=gamer] .app-layout:before{content:"";position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;opacity:.5;animation:ambientShift 20s ease-in-out infinite alternate}[data-theme=ocean] .app-layout:before{background:radial-gradient(circle 300px at 20% 80%,rgba(14,165,233,.15),transparent),radial-gradient(circle 250px at 80% 20%,rgba(6,182,212,.1),transparent)}[data-theme=sakura] .app-layout:before{background:radial-gradient(circle 300px at 75% 75%,rgba(236,72,153,.12),transparent),radial-gradient(circle 200px at 20% 30%,rgba(192,132,252,.08),transparent)}[data-theme=cosmos] .app-layout:before{background:radial-gradient(circle 350px at 70% 70%,rgba(139,92,246,.15),transparent),radial-gradient(circle 200px at 25% 25%,rgba(232,121,249,.1),transparent)}[data-theme=gamer] .app-layout:before{background:radial-gradient(circle 300px at 80% 80%,rgba(34,197,94,.12),transparent),radial-gradient(circle 200px at 15% 25%,rgba(163,230,53,.06),transparent)}@keyframes ambientShift{0%{transform:translate(0) scale(1)}to{transform:translate(-30px,-20px) scale(1.08)}}.theme-particles{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:0;overflow:hidden}.theme-particles .particle{position:absolute;font-size:1rem;opacity:.04;animation:floatParticle 28s linear infinite;will-change:transform;filter:blur(.8px)}.theme-particles .particle:nth-child(2n){animation-duration:35s;font-size:.85rem;opacity:.03}.theme-particles .particle:nth-child(3n){animation-duration:40s;font-size:1.2rem;opacity:.035}.theme-particles .particle:nth-child(4n){animation-duration:30s;font-size:.75rem;opacity:.04}.theme-particles .particle:nth-child(5n){animation-duration:38s;font-size:.9rem;opacity:.03}@keyframes floatParticle{0%{transform:translateY(105vh) rotate(0) scale(1)}50%{transform:translateY(50vh) rotate(180deg) scale(1.05)}to{transform:translateY(-10vh) rotate(360deg) scale(1)}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}body{font-family:var(--font-family);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;min-height:100dvh;overflow-x:hidden;line-height:1.6;letter-spacing:.01em}#root{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}a{color:var(--accent-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{opacity:.85}.app-layout{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;position:relative}.app-content{flex:1;padding:var(--spacing-lg);padding-bottom:calc(80px + var(--spacing-lg));max-width:600px;margin:0 auto;width:100%}@media(min-width:860px){.app-content{max-width:1100px;padding:24px 32px 112px}}.page-header{margin-bottom:var(--spacing-lg)}.page-title{font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:800;letter-spacing:-.04em;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.2}.page-subtitle{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-xs);letter-spacing:.01em}.card{background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;opacity:0;transition:opacity var(--transition-base);background:radial-gradient(600px circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(139,92,246,.06),transparent 40%);pointer-events:none}.card:hover{border-color:var(--border-color-hover);box-shadow:var(--shadow-md)}.card:hover:before{opacity:1}.card-interactive{cursor:pointer}.card-interactive:hover{transform:translateY(-3px) scale(1.005);box-shadow:var(--shadow-lg),var(--shadow-glow),inset 0 1px #ffffff0f}.card-interactive:active{transform:translateY(0) scale(.99);transition-duration:80ms}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.card-title{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.02em}.card-body{display:flex;flex-direction:column;gap:var(--spacing-sm)}.card-glow{position:relative;background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border:none;border-radius:var(--radius-lg);padding:var(--spacing-lg);overflow:hidden;isolation:isolate}.card-glow:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--gradient-border);background-size:300% 300%;animation:borderRotate 6s linear infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.4;transition:opacity var(--transition-base)}.card-glow:hover:before{opacity:1}.card-glow:after{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;border-radius:inherit;background:conic-gradient(from 0deg,transparent 0%,var(--accent-primary) 10%,transparent 20%);animation:borderRotate 4s linear infinite;z-index:-1;opacity:0;transition:opacity var(--transition-base);filter:blur(30px)}.card-glow:hover:after{opacity:.15}@keyframes borderRotate{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:14px 28px;font-family:var(--font-display);font-size:var(--font-size-base);font-weight:600;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);min-height:48px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;letter-spacing:.01em;position:relative;overflow:hidden;isolation:isolate}.btn:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.1) 45%,rgba(255,255,255,.2) 50%,rgba(255,255,255,.1) 55%,transparent 70%);transform:translate(-100%);transition:none;pointer-events:none;z-index:1}.btn:hover:after{transform:translate(100%);transition:transform .6s ease}.btn:active{transform:scale(.96)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn:disabled:after{display:none}.btn-primary{background:linear-gradient(135deg,var(--accent-primary),#a855f7,var(--accent-primary));background-size:200% 200%;animation:btnGradient 4s ease infinite;color:#fff;box-shadow:var(--shadow-sm),var(--shadow-neon)}@keyframes btnGradient{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.btn-primary:hover:not(:disabled){box-shadow:var(--shadow-md),var(--shadow-glow-lg);filter:brightness(1.12);transform:translateY(-1px)}.btn-secondary{background:var(--bg-glass);color:var(--text-primary);border:1px solid var(--border-color);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.btn-secondary:hover:not(:disabled){background:var(--bg-glass-hover);border-color:var(--accent-primary);box-shadow:0 0 20px #8b5cf626}.btn-success{background:linear-gradient(135deg,var(--success),#059669);color:#fff;box-shadow:0 0 15px #10b9814d}.btn-success:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 30px #10b98166}.btn-danger{background:linear-gradient(135deg,var(--danger),#dc2626);color:#fff;box-shadow:0 0 15px #ef44444d}.btn-danger:hover:not(:disabled){filter:brightness(1.1);box-shadow:0 0 30px #ef444466}.btn-ghost{background:transparent;color:var(--text-secondary);padding:8px 16px;min-height:36px}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-glass)}.btn-block{width:100%}.btn-lg{padding:18px 36px;font-size:var(--font-size-lg);min-height:56px;border-radius:var(--radius-lg)}.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 14px;font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.badge-planned{background:var(--info-light);color:var(--info)}.badge-completed{background:var(--success-light);color:var(--success)}.badge-missed{background:var(--danger-light);color:var(--danger)}.badge-cancelled,.badge-pending{background:var(--warning-light);color:var(--warning)}.badge-checked{background:var(--success-light);color:var(--success)}.badge:before{content:"";width:0;height:0;display:none}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.stat-card{background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);text-align:center;transition:all var(--transition-base);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--gradient-border);background-size:300% 100%;animation:borderRotate 6s linear infinite;opacity:.5}.stat-card:hover{border-color:var(--border-color-hover);box-shadow:var(--shadow-md),0 0 20px #8b5cf61a;transform:translateY(-2px)}.stat-card:hover:before{opacity:1}.stat-value{font-family:var(--font-display);font-size:var(--font-size-3xl);font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:6px}.stat-value.gradient{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-weight:600}.lesson-card{background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border:1px solid var(--border-color);border-left:3px solid var(--accent-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-lg) calc(var(--spacing-lg) + 2px);margin-bottom:var(--spacing-md);transition:all var(--transition-base);position:relative;overflow:hidden}.lesson-card:after{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--accent-primary-light),transparent);opacity:0;transition:opacity var(--transition-base)}.lesson-card:hover{border-color:var(--accent-primary);border-left-color:var(--accent-secondary);box-shadow:var(--shadow-md),0 0 25px #8b5cf61a;transform:translate(3px) translateY(-1px)}.lesson-card:hover:after{opacity:1}.lesson-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.lesson-time{font-family:var(--font-display);font-size:var(--font-size-xl);font-weight:700;letter-spacing:-.02em}.lesson-date{font-size:var(--font-size-sm);color:var(--text-secondary)}.lesson-info{display:flex;flex-direction:column;gap:6px;margin-top:var(--spacing-sm)}.lesson-info-row{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary)}.lesson-info-row .icon{width:16px;text-align:center;flex-shrink:0}.timer{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);padding:var(--spacing-xl) var(--spacing-lg);border-radius:var(--radius-xl);background:linear-gradient(135deg,#8b5cf614,#06d6a00d);border:1px solid rgba(139,92,246,.12);margin-bottom:var(--spacing-lg);position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff08}.timer:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;padding:1px;background:var(--gradient-border);background-size:300% 300%;animation:borderRotate 6s linear infinite;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;opacity:.3}.timer-segment{display:flex;flex-direction:column;align-items:center}.timer-value{font-family:var(--font-display);font-size:2.75rem;font-weight:800;letter-spacing:-.03em;line-height:1;background:linear-gradient(180deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:none;filter:drop-shadow(0 0 15px rgba(139,92,246,.3))}.timer-label{font-size:var(--font-size-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-weight:500}.timer-separator{font-family:var(--font-display);font-size:2rem;font-weight:700;color:var(--accent-primary);opacity:.6;animation:timerPulse 1.2s ease-in-out infinite;align-self:flex-start;margin-top:4px}@keyframes timerPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.15)}}.bottom-nav{position:fixed;bottom:8px;left:8px;right:8px;height:64px;background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.8);-webkit-backdrop-filter:blur(30px) saturate(1.8);border:1px solid var(--border-color);border-radius:var(--radius-xl);display:flex;justify-content:space-around;align-items:center;padding:0 8px env(safe-area-inset-bottom);z-index:var(--z-navbar);box-shadow:0 -8px 40px #0000004d,var(--shadow-glow)}.bottom-nav:before{content:"";position:absolute;top:0;left:15%;right:15%;height:1px;background:linear-gradient(90deg,transparent,var(--accent-primary),var(--accent-secondary),transparent);pointer-events:none;border-radius:1px}.nav-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px 16px;color:var(--text-muted);font-size:var(--font-size-xs);font-weight:500;text-decoration:none;transition:all var(--transition-fast);-webkit-tap-highlight-color:transparent;cursor:pointer;border:none;background:none;border-radius:var(--radius-md);position:relative}.nav-item.active{color:var(--accent-primary);background:var(--accent-primary-light);font-weight:620}.nav-item.active:after{content:"";position:absolute;bottom:2px;width:4px;height:4px;border-radius:50%;background:var(--accent-primary);box-shadow:0 0 8px var(--accent-primary),0 0 16px var(--accent-primary)}.nav-item:hover{color:var(--text-primary)}.nav-icon{font-size:22px;line-height:1;transition:transform var(--transition-spring)}.nav-item.active .nav-icon{transform:scale(1.15)}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;font-size:var(--font-size-sm);font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs);letter-spacing:.02em;text-transform:uppercase;font-family:var(--font-display)}.form-input{width:100%;height:52px;padding:0 18px;font-family:var(--font-family);font-size:var(--font-size-base);color:var(--text-primary);background:var(--bg-glass);border:1.5px solid var(--border-color);border-radius:var(--radius-md);transition:all var(--transition-fast);outline:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.form-input:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-primary-light),var(--shadow-neon);background:var(--bg-glass-hover)}.form-input::placeholder{color:var(--text-muted)}.pin-input-container{display:flex;gap:var(--spacing-md);justify-content:center;margin:var(--spacing-xl) 0}.pin-digit{width:64px;height:80px;text-align:center;font-family:var(--font-display);font-size:var(--font-size-2xl);font-weight:800;background:var(--bg-glass);border:2px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);transition:all var(--transition-fast);outline:none;caret-color:var(--accent-primary)}.pin-digit:focus{border-color:var(--accent-primary);box-shadow:0 0 0 4px var(--accent-primary-light),var(--shadow-neon);background:var(--bg-glass-hover);transform:scale(1.05)}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl)}.spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;animation:spin .75s linear infinite;box-shadow:0 0 15px #8b5cf633}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;padding:var(--spacing-2xl)}.empty-state-icon{font-size:52px;margin-bottom:var(--spacing-md);filter:saturate(.8)}.empty-state-title{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;margin-bottom:var(--spacing-sm);letter-spacing:-.01em}.empty-state-text{font-size:var(--font-size-sm);color:var(--text-muted);line-height:1.6}.transaction-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) 0;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.transaction-item:last-child{border-bottom:none}.transaction-item:hover{background:var(--bg-glass);margin:0 calc(-1 * var(--spacing-md));padding-left:var(--spacing-md);padding-right:var(--spacing-md);border-radius:var(--radius-sm)}.transaction-info{display:flex;flex-direction:column;gap:2px}.transaction-desc{font-size:var(--font-size-sm);font-weight:500}.transaction-date{font-size:var(--font-size-xs);color:var(--text-muted)}.transaction-amount{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.01em}.transaction-amount.positive{color:var(--success)}.transaction-amount.negative{color:var(--danger)}.section{margin-bottom:var(--spacing-xl)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-title{font-family:var(--font-display);font-size:var(--font-size-lg);font-weight:700;letter-spacing:-.01em}.section-action{font-size:var(--font-size-sm);color:var(--accent-primary);font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.section-action:hover{opacity:.8;text-shadow:0 0 10px rgba(139,92,246,.3)}.auth-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--spacing-xl);text-align:center;position:relative;overflow:hidden}.auth-page:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle 400px at 30% 30%,rgba(139,92,246,.15),transparent),radial-gradient(circle 300px at 70% 70%,rgba(6,214,160,.1),transparent),radial-gradient(circle 350px at 50% 50%,rgba(244,114,182,.08),transparent);animation:authOrbFloat 12s ease-in-out infinite alternate;pointer-events:none;z-index:0}@keyframes authOrbFloat{0%{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(5deg)}66%{transform:translate(-20px,20px) rotate(-3deg)}to{transform:translate(10px,-10px) rotate(2deg)}}.auth-page>*{position:relative;z-index:1}.auth-logo{font-size:80px;margin-bottom:var(--spacing-xl);filter:drop-shadow(0 8px 30px rgba(139,92,246,.4));animation:logoFloat 4s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.auth-title{font-family:var(--font-display);font-size:var(--font-size-4xl);font-weight:800;margin-bottom:var(--spacing-sm);background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary),var(--accent-pink),var(--accent-primary));background-size:300% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:gradientShift 5s ease-in-out infinite;letter-spacing:-.04em;line-height:1.15}@keyframes gradientShift{0%,to{background-position:0% center}50%{background-position:100% center}}.auth-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin-bottom:var(--spacing-xl);line-height:1.5;letter-spacing:.01em}.auth-error{color:var(--danger);font-size:var(--font-size-sm);margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--danger-light);border-radius:var(--radius-md);border:1px solid rgba(239,68,68,.15);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes pageEnter{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes glowPulse{0%,to{box-shadow:var(--shadow-glow)}50%{box-shadow:var(--shadow-glow-lg)}}.animate-fade-in{animation:fadeIn .35s ease forwards}.animate-slide-up{animation:slideUp .45s ease forwards}.page-enter{animation:pageEnter .4s cubic-bezier(.4,0,.2,1) forwards}.animate-scale-in{animation:scaleIn .4s var(--transition-spring) forwards}.animate-glow-pulse{animation:glowPulse 3s ease-in-out infinite}.stagger-1{animation-delay:.06s}.stagger-2{animation-delay:.12s}.stagger-3{animation-delay:.18s}.stagger-4{animation-delay:.24s}.stagger-5{animation-delay:.3s}.stagger-6{animation-delay:.36s}.text-gradient{background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-neon{color:var(--accent-primary);text-shadow:0 0 10px var(--accent-primary),0 0 20px rgba(139,92,246,.3)}.glow-card{position:relative;overflow:hidden}.glow-card:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:linear-gradient(135deg,var(--accent-primary),var(--accent-secondary));opacity:0;transition:opacity var(--transition-base);z-index:-1;filter:blur(16px)}.glow-card:hover:after{opacity:.2}.shimmer{position:relative;overflow:hidden}.shimmer:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(105deg,transparent 30%,rgba(255,255,255,.06) 45%,rgba(255,255,255,.12) 50%,rgba(255,255,255,.06) 55%,transparent 70%);animation:shimmerMove 3s ease-in-out infinite;pointer-events:none}@keyframes shimmerMove{0%{left:-100%}to{left:200%}}.glass-panel{background:var(--bg-card);backdrop-filter:blur(30px) saturate(1.3);-webkit-backdrop-filter:blur(30px) saturate(1.3);border:1px solid var(--border-color);border-radius:var(--radius-lg)}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--accent-primary-light),var(--accent-secondary-light));border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--accent-primary)}*{scrollbar-width:thin;scrollbar-color:var(--accent-primary-light) transparent}@media(min-width:640px){.stat-grid{grid-template-columns:repeat(4,1fr)}}@media(min-width:860px){.lesson-card{padding:22px 26px 22px 28px}.lesson-time{font-size:1.5rem;font-weight:800}.lesson-date,.lesson-info-row{font-size:.88rem}.timer{padding:28px 24px;gap:20px}.timer-value{font-size:3.2rem}.timer-separator{font-size:2.4rem}.timer-label{font-size:.78rem;margin-top:6px}}@media(max-width:480px){.bottom-nav{bottom:0;left:0;right:0;border-radius:0;border-left:none;border-right:none;border-bottom:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
