@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;600;700&display=swap";
:root{--primary:#ff5722;--primary-coral:#ff6b4a;--primary-container:#fff1ed;--on-primary:#fff;--accent-mint:#10b981;--accent-sky:#0ea5e9;--accent-amber:#f59e0b;--accent-rose:#f43f5e;--accent-purple:#8b5cf6;--accent-cobalt:#2563eb;--success-400:#10b981;--success-500:#059669;--warning-400:#f59e0b;--warning-500:#d97706;--danger-400:#f43f5e;--danger-500:#e11d48;--bg-primary:#f6f7fb;--bg-ground:#f6f7fb;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#fafbfc;--bg-secondary:#f8fafc;--bg-elevated:#fff;--bg-glass:#ffffffeb;--bg-glass-light:#ff6b4a14;--text-main:#111827;--text-primary:#111827;--text-secondary:#6b7280;--text-muted:#9ca3af;--text-accent:#ff6b4a;--border-card:#eaecef;--border-subtle:#f1f3f5;--border-medium:#e2e8f0;--border-active:#ff6b4a;--gradient-primary:linear-gradient(135deg, #ff6b4a 0%, #ff5722 100%);--gradient-card:#fff;--gradient-glow:radial-gradient(circle at 50% 0%, #ff6b4a1f, transparent 70%);--gradient-success:linear-gradient(135deg, #10b981, #34d399);--gradient-danger:linear-gradient(135deg, #f43f5e, #fb7185);--shadow-sm:0 1px 3px #0000000d;--shadow-md:0 4px 12px #1118270f;--shadow-lg:0 10px 25px #11182714;--shadow-soft-card:0 4px 20px -2px #1118270d, 0 2px 6px -1px #11182705;--shadow-dock:0 12px 36px -4px #1118271f, 0 4px 12px -2px #1118270a;--shadow-elevated:0 10px 30px -4px #ff57222e, 0 4px 10px -2px #00000008;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:28px;--radius-full:9999px;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-normal:.25s 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);--font-sans:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", monospace;--max-width:600px;--header-height:64px;--bottom-nav-height:76px;--safe-area-bottom:env(safe-area-inset-bottom,0px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-main);min-height:100dvh;line-height:1.6;overflow-x:hidden}#__next,#app-root,main{max-width:var(--max-width);min-height:100dvh;margin:0 auto;position:relative}::-webkit-scrollbar{display:none}.material-symbols-outlined{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;direction:ltr;font-family:Material Symbols Outlined;font-size:20px;font-style:normal;font-weight:400;line-height:1;display:inline-block}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-card)}.glass-card{background:var(--bg-surface);border:1px solid var(--border-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft-card);transition:all var(--transition-normal)}.glass-card:hover{border-color:#ff6b4a4d;box-shadow:0 8px 24px -2px #11182714}.gradient-text{background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.btn{justify-content:center;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);font-family:var(--font-sans);cursor:pointer;transition:all var(--transition-normal);white-space:nowrap;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:none;padding:12px 20px;font-size:.938rem;font-weight:700;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:var(--shadow-elevated)}.btn-primary:hover{filter:brightness(1.05);box-shadow:0 12px 32px -4px #ff572247}.btn-secondary{color:var(--text-main);border:1px solid var(--border-card);box-shadow:var(--shadow-sm);background:#fff}.btn-secondary:hover{border-color:var(--border-medium);background:#f8fafc}.btn-ghost{color:var(--text-secondary);background:0 0;padding:8px 14px}.btn-ghost:hover{color:var(--text-main);background:#0000000a}.btn-google{color:#111827;border-radius:var(--radius-full);border:1px solid var(--border-card);box-shadow:var(--shadow-sm);background:#fff;padding:14px 24px;font-size:.938rem;font-weight:700}.btn-google:hover{box-shadow:var(--shadow-md);background:#fafbfc}.btn-full{width:100%}.badge{align-items:center;gap:var(--space-xs);border-radius:var(--radius-full);letter-spacing:.02em;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-flex}.badge-rank-1,.badge-bronze{color:#b45309;background:#fffbeb;border:1px solid #fde68a}.badge-rank-2,.badge-silver{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.badge-rank-3,.badge-gold{color:#d97706;background:#fef3c7;border:1px solid #fcd34d;box-shadow:0 0 8px #f59e0b26}.badge-rank-4{color:#c2410c;background:#fff7ed;border:1px solid #ffedd5;box-shadow:0 0 8px #ea580c26}.badge-rank-5{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;box-shadow:0 0 10px #2563eb33}.badge-rank-6,.badge-platinum{color:#7c3aed;background:#ede9fe;border:1px solid #ddd6fe;box-shadow:0 0 12px #7c3aed40}.badge-rank-7{color:#b91c1c;background:linear-gradient(135deg,#fef2f2,#fffbeb);border:1px solid #fecaca;box-shadow:0 0 14px #dc26264d}.badge-active{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0}.badge-closed{color:#e11d48;background:#fff1f2;border:1px solid #fecdd3}.input,.textarea,.select{border:1px solid var(--border-card);border-radius:var(--radius-md);width:100%;color:var(--text-main);font-family:var(--font-sans);transition:all var(--transition-fast);background:#f8fafc;padding:12px 16px;font-size:.875rem}.input:focus,.textarea:focus,.select:focus{border-color:var(--primary-coral);background:#fff;outline:none;box-shadow:0 0 0 3px #ff6b4a26}.input::placeholder,.textarea::placeholder{color:var(--text-muted)}.textarea{resize:vertical;min-height:80px;line-height:1.5}.progress-bar{border-radius:var(--radius-full);background:#f1f5f9;width:100%;overflow:hidden}.progress-bar-fill{background:var(--gradient-primary);border-radius:var(--radius-full);height:100%;transition:width var(--transition-normal)}.toggle{border-radius:var(--radius-full);cursor:pointer;width:48px;height:28px;transition:background var(--transition-normal);background:#cbd5e1;position:relative}.toggle.active{background:var(--primary-coral)}.toggle:after{content:"";width:22px;height:22px;box-shadow:var(--shadow-sm);transition:transform var(--transition-normal);background:#fff;border-radius:50%;position:absolute;top:3px;left:3px}.toggle.active:after{transform:translate(20px)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.animate-slide-up{animation:.5s ease-out forwards slideUp}.animate-float{animation:3s ease-in-out infinite float}.stagger-children>*{opacity:0;animation:.35s ease-out forwards fadeIn}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.page{min-height:100dvh;padding:var(--space-md);padding-bottom:calc(var(--bottom-nav-height) + var(--safe-area-bottom) + var(--space-md))}
