/* ═══════════════════════════════════════════════════════════
   THEME: MODERN
   Clean, dark, glassmorphism, smooth gradients
   ═══════════════════════════════════════════════════════════ */

:root, [data-theme="modern"] {
    --bg: #0a0a0f;
    --bg-secondary: #12121a;
    --bg-card: #1a1a2e;
    --bg-card-hover: #1f1f35;
    --bg-glass: rgba(255, 255, 255, 0.05);
    --bg-glass-border: rgba(255, 255, 255, 0.1);
    --bg-input: #1a1a2e;

    --text: #e8e8f0;
    --text-secondary: #9898b0;
    --text-muted: #5a5a78;
    --text-inverse: #0a0a0f;

    --accent: #6366f1;
    --accent-hover: #818cf8;
    --accent-glow: rgba(99, 102, 241, 0.3);
    --accent-gradient: linear-gradient(135deg, #6366f1, #a855f7);

    --success: #10b981;
    --warning: #f59e0b;
    --danger: #ef4444;
    --info: #3b82f6;

    --border: rgba(255, 255, 255, 0.08);
    --border-focus: #6366f1;

    --shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.4);
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.5);
    --shadow-glow: 0 0 20px var(--accent-glow);

    --radius-sm: 8px;
    --radius-md: 12px;
    --radius-lg: 16px;
    --radius-xl: 24px;
    --radius-full: 9999px;

    --font-main: -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
    --font-mono: 'SF Mono', 'Fira Code', monospace;

    --transition: 0.2s ease;
    --header-height: 64px;
    --bottom-nav-height: 64px;
}

/* ═══════════════════════════════════════════════════════════
   THEME: RETRO LAN STYLE
   CRT monitor, green phosphor, scanlines, pixel fonts
   ═══════════════════════════════════════════════════════════ */

[data-theme="retro"] {
    --bg: #0a0e0a;
    --bg-secondary: #0d120d;
    --bg-card: #111a11;
    --bg-card-hover: #152015;
    --bg-glass: rgba(0, 255, 65, 0.03);
    --bg-glass-border: rgba(0, 255, 65, 0.15);
    --bg-input: #0d120d;

    --text: #00ff41;
    --text-secondary: #00cc33;
    --text-muted: #008822;
    --text-inverse: #0a0e0a;

    --accent: #00ff41;
    --accent-hover: #33ff66;
    --accent-glow: rgba(0, 255, 65, 0.4);
    --accent-gradient: linear-gradient(135deg, #00ff41, #00cc33);

    --success: #00ff41;
    --warning: #ffcc00;
    --danger: #ff3333;
    --info: #00aaff;

    --border: rgba(0, 255, 65, 0.2);
    --border-focus: #00ff41;

    --shadow-sm: 0 1px 3px rgba(0,0,0,0.5);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.6);
    --shadow-lg: 0 8px 32px rgba(0,0,0,0.7);
    --shadow-glow: 0 0 15px var(--accent-glow), inset 0 0 8px rgba(0,255,65,0.1);

    --radius-sm: 2px;
    --radius-md: 2px;
    --radius-lg: 4px;
    --radius-xl: 4px;
    --radius-full: 0;

    --font-main: 'Courier New', 'Lucida Console', monospace;
    --font-mono: 'Courier New', monospace;

    --transition: 0.05s step-end;
    --header-height: 64px;
    --bottom-nav-height: 64px;

    /* Retro-specific extras */
    --crt-overlay: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E");
    --scanlines: repeating-linear-gradient(
        0deg,
        transparent,
        transparent 2px,
        rgba(0, 0, 0, 0.15) 2px,
        rgba(0, 0, 0, 0.15) 4px
    );
}

/* Retro CRT effect on body */
[data-theme="retro"] body {
    position: relative;
}

[data-theme="retro"] body::before {
    content: '';
    position: fixed;
    inset: 0;
    background: var(--crt-overlay);
    pointer-events: none;
    z-index: 9999;
    opacity: 0.5;
}

[data-theme="retro"] body::after {
    content: '';
    position: fixed;
    inset: 0;
    background: var(--scanlines);
    pointer-events: none;
    z-index: 9998;
    opacity: 0.3;
}

/* Retro text glow */
[data-theme="retro"] .logo-text,
[data-theme="retro"] h1,
[data-theme="retro"] h2,
[data-theme="retro"] h3 {
    text-shadow: 0 0 10px var(--accent-glow);
}

[data-theme="retro"] .card {
    box-shadow: var(--shadow-glow);
}

/* Retro buttons - pixelated */
[data-theme="retro"] .btn {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-weight: bold;
    border: 2px solid var(--accent);
    image-rendering: pixelated;
}

[data-theme="retro"] .btn-primary {
    background: var(--accent);
    color: var(--text-inverse);
}

[data-theme="retro"] .btn-primary:hover {
    background: var(--accent-hover);
    box-shadow: 0 0 10px var(--accent-glow);
}

/* Retro inputs */
[data-theme="retro"] input,
[data-theme="retro"] select,
[data-theme="retro"] textarea {
    border: 1px solid var(--border);
    font-family: var(--font-mono);
    color: var(--text);
    background: var(--bg-input);
}

[data-theme="retro"] input:focus,
[data-theme="retro"] select:focus,
[data-theme="retro"] textarea:focus {
    border-color: var(--accent);
    box-shadow: 0 0 8px var(--accent-glow);
    outline: none;
}

/* Retro scrollbar */
[data-theme="retro"] ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
[data-theme="retro"] ::-webkit-scrollbar-track {
    background: var(--bg-secondary);
}
[data-theme="retro"] ::-webkit-scrollbar-thumb {
    background: var(--text-muted);
    border: 1px solid var(--border);
}
