:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--text-primary: #f8fafc;--text-secondary: #94a3b8;--accent-primary: #3b82f6;--accent-hover: #2563eb;--success: #10b981;--error: #ef4444;--glass-bg: rgba(30, 41, 59, .7);--glass-border: rgba(148, 163, 184, .1);--header-bg: rgba(15, 23, 42, .8)}[data-theme=light]{--bg-primary: #f8fafc;--bg-secondary: #ffffff;--text-primary: #0f172a;--text-secondary: #64748b;--accent-primary: #3b82f6;--accent-hover: #2563eb;--success: #10b981;--error: #ef4444;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(0, 0, 0, .1);--header-bg: rgba(248, 250, 252, .8)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--text-primary: #f8fafc;--text-secondary: #94a3b8;--accent-primary: #3b82f6;--accent-hover: #2563eb;--success: #10b981;--error: #ef4444;--glass-bg: rgba(30, 41, 59, .7);--glass-border: rgba(148, 163, 184, .1);--header-bg: rgba(15, 23, 42, .8)}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;transition:background-color .3s ease,color .3s ease}*{box-sizing:border-box}a{color:var(--accent-primary);text-decoration:none;transition:color .2s}a:hover{color:var(--accent-hover)}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;border:none;outline:none}.btn-primary{background:var(--accent-primary);color:#fff}.btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.input-group{margin-bottom:1rem}.label{display:block;margin-bottom:.5rem;color:var(--text-secondary);font-size:.875rem}.input{width:100%;padding:.75rem;border-radius:8px;background:var(--bg-primary);border:1px solid var(--glass-border);color:var(--text-primary);transition:border-color .2s}.input:focus{border-color:var(--accent-primary);outline:none}
