:root{--bg-primary: #020617;--bg-secondary: #0f172a;--bg-tertiary: #1e293b;--bg-card: #0f172a;--bg-hover: #1e293b;--bg-overlay: rgba(0, 0, 0, .8);--text-primary: #f8fafc;--text-secondary: #cbd5e1;--text-muted: #64748b;--text-inverse: #020617;--border-primary: #334155;--border-secondary: #1e293b;--border-focus: #3b82f6;--accent-primary: #3b82f6;--accent-secondary: #60a5fa;--accent-hover: #2563eb;--accent-muted: rgba(59, 130, 246, .2);--accent-text: #93c5fd;--success: #22c55e;--success-bg: rgba(34, 197, 94, .1);--success-text: #86efac;--warning: #f59e0b;--warning-bg: rgba(245, 158, 11, .1);--warning-text: #fcd34d;--error: #ef4444;--error-bg: rgba(239, 68, 68, .1);--error-text: #fca5a5;--info: #3b82f6;--info-bg: rgba(59, 130, 246, .1);--info-text: #93c5fd;--gradient-start: #3b82f6;--gradient-end: #1d4ed8;--shadow-color: rgba(0, 0, 0, .5);--transition-fast: .15s;--transition-normal: .2s;--transition-slow: .3s}.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:background-color var(--transition-slow) ease,color var(--transition-slow) ease,border-color var(--transition-slow) ease,box-shadow var(--transition-slow) ease!important}body{font-family:Inter,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);-webkit-tap-highlight-color:transparent;min-height:100vh;transition:background-color var(--transition-slow) ease,color var(--transition-slow) ease}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:3px}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}*:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.btn-primary{background-color:var(--accent-primary);color:var(--text-inverse);transition:background-color var(--transition-fast) ease}.btn-primary:hover{background-color:var(--accent-hover)}.btn-secondary{background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-primary);transition:background-color var(--transition-fast) ease,border-color var(--transition-fast) ease}.btn-secondary:hover{background-color:var(--bg-hover)}.card{background-color:var(--bg-card);border:1px solid var(--border-primary);border-radius:.75rem}.card-hover:hover{background-color:var(--bg-hover)}.input-themed{background-color:var(--bg-secondary);border:1px solid var(--border-primary);color:var(--text-primary);transition:border-color var(--transition-fast) ease,box-shadow var(--transition-fast) ease}.input-themed:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px var(--accent-muted)}.input-themed::placeholder{color:var(--text-muted)}.badge-accent{background-color:var(--accent-muted);color:var(--accent-text);border:1px solid transparent}.badge-success{background-color:var(--success-bg);color:var(--success-text)}.badge-warning{background-color:var(--warning-bg);color:var(--warning-text)}.badge-error{background-color:var(--error-bg);color:var(--error-text)}.text-gradient{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.bg-gradient-accent{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end))}.glass{background:rgba(var(--bg-secondary-rgb, 15, 23, 42),.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse-accent{0%,to{box-shadow:0 0 0 0 var(--accent-muted)}50%{box-shadow:0 0 0 8px transparent}}.animate-fade-in{animation:fadeIn var(--transition-normal) ease}.animate-slide-up{animation:slideUp var(--transition-slow) ease}.animate-pulse-accent{animation:pulse-accent 2s infinite}@media(prefers-reduced-motion:reduce){.theme-transition,.theme-transition *,.theme-transition *:before,.theme-transition *:after{transition:none!important}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--border-primary: currentColor;--text-muted: var(--text-secondary)}}@media print{body{background-color:#fff!important;color:#000!important}}
