:root{--brand-primary:#ff6b6b;--brand-primary-dark:#e55555;--brand-secondary:#ffe66d;--brand-accent:#a855f7;--bg-base:#0a0a0f;--bg-surface:#13131c;--bg-card:#1a1a27;--bg-overlay:#0a0a0fd9;--bg-glass:#ffffff0d;--bg-glass-strong:#ffffff14;--text-primary:#fff;--text-secondary:#ffffffa6;--text-tertiary:#ffffff59;--text-inverse:#0a0a0f;--border-subtle:#ffffff14;--border-medium:#ffffff26;--border-strong:#ffffff40;--success:#22c55e;--warning:#f59e0b;--error:#ef4444;--info:#3b82f6;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-2xl:32px;--radius-full:9999px;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 20px #0006;--shadow-lg:0 8px 40px #00000080;--shadow-brand:0 4px 20px #ff6b6b59;--shadow-glow:0 0 30px #ff6b6b26;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--font-display:"Dancing Script", cursive;--font-body:"DM Sans", -apple-system, BlinkMacSystemFont, sans-serif;--z-base:1;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background-color:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh;line-height:1.6;overflow-x:hidden}img,video{max-width:100%;height:auto;display:block}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit}a{color:inherit;text-decoration:none}.container{width:100%;max-width:480px;padding:0 var(--space-5);margin:0 auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.gradient-brand{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-accent) 100%)}.gradient-text{background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border-subtle)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn var(--transition-base) both}.animate-slide-up{animation:.3s both slideUp}.animate-scale-in{animation:scaleIn var(--transition-fast) both}.animate-spin{animation:.8s linear infinite spin}.animate-pulse{animation:2s ease-in-out infinite pulse}.skeleton{background:linear-gradient(90deg, var(--bg-card) 25%, var(--bg-glass-strong) 50%, var(--bg-card) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}
