/* ==========================================================================
   HSA THEME STUDIO — 13 DISTINCTIVE DESIGN MOVEMENTS & AESTHETICS
   Themes:
   1. Glassmorphism
   2. Neumorphism
   3. Skeuomorphism
   4. Claymorphism
   5. Neo-Brutalism
   6. Retro-Futurism
   7. 90s Desktop (Windows 95/Classic OS)
   8. Flat Design 2.0
   9. Minimalism
   10. Monochrome
   11. Aurora UI
   12. Cyberpunk UI
   13. Abstract UI
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. GLASSMORPHISM (Frosted Translucent Glass & Ambient Light)
   -------------------------------------------------------------------------- */
[data-theme="glassmorphism"] {
    --bg-color: #eef2f6;
    --card-bg: rgba(255, 255, 255, 0.72);
    --topbar-bg: rgba(255, 255, 255, 0.78);
    --sidebar-bg: rgba(255, 255, 255, 0.75);
    --text-main: #0f172a;
    --text-sub: #334155;
    --text-muted: #64748b;
    --border-color: rgba(255, 255, 255, 0.85);
    --accent: #2563eb;
    --accent-hover: #1d4ed8;
    --input-bg: rgba(255, 255, 255, 0.65);
    --input-border: rgba(255, 255, 255, 0.9);
    --table-header-bg: rgba(241, 245, 249, 0.6);
    --table-row-hover: rgba(255, 255, 255, 0.8);
    --shadow-soft: 0 8px 32px 0 rgba(31, 38, 135, 0.08);
    --shadow-deep: 0 14px 40px rgba(31, 38, 135, 0.14);
}
[data-theme="glassmorphism"] body {
    background: #eef2f6;
    background-image: 
        radial-gradient(at 0% 0%, rgba(99, 102, 241, 0.18) 0px, transparent 50%),
        radial-gradient(at 100% 0%, rgba(236, 72, 153, 0.15) 0px, transparent 50%),
        radial-gradient(at 50% 100%, rgba(14, 165, 233, 0.15) 0px, transparent 50%);
    background-attachment: fixed;
}
[data-theme="glassmorphism"] .card,
[data-theme="glassmorphism"] .modal-content,
[data-theme="glassmorphism"] .stat-card,
[data-theme="glassmorphism"] .chart-card,
[data-theme="glassmorphism"] .kpi-card,
[data-theme="glassmorphism"] .profit-kpi-card {
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.85) !important;
    box-shadow: 0 8px 24px rgba(31, 38, 135, 0.07) !important;
    border-radius: 14px;
}
[data-theme="glassmorphism"] .topbar,
[data-theme="glassmorphism"] .sidebar {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-color: rgba(255, 255, 255, 0.8) !important;
}

/* --------------------------------------------------------------------------
   2. NEUMORPHISM (Soft Extruded & Inset Tactile Shadows)
   -------------------------------------------------------------------------- */
[data-theme="neumorphism"] {
    --bg-color: #e6ecf4;
    --card-bg: #e6ecf4;
    --topbar-bg: #e6ecf4;
    --sidebar-bg: #e6ecf4;
    --text-main: #1e293b;
    --text-sub: #475569;
    --text-muted: #64748b;
    --border-color: transparent;
    --accent: #3b82f6;
    --accent-hover: #2563eb;
    --input-bg: #e6ecf4;
    --input-border: transparent;
    --table-header-bg: #dde3ec;
    --table-row-hover: #dfe5ee;
    --shadow-soft: 6px 6px 14px #c2c9d2, -6px -6px 14px #ffffff;
    --shadow-deep: 10px 10px 20px #c2c9d2, -10px -10px 20px #ffffff;
}
[data-theme="neumorphism"] body {
    background: #e6ecf4;
}
[data-theme="neumorphism"] .card,
[data-theme="neumorphism"] .modal-content,
[data-theme="neumorphism"] .stat-card,
[data-theme="neumorphism"] .chart-card,
[data-theme="neumorphism"] .kpi-card,
[data-theme="neumorphism"] .profit-kpi-card {
    background: #e6ecf4 !important;
    border: none !important;
    border-radius: 16px;
    box-shadow: 7px 7px 16px #c4cbd4, -7px -7px 16px #ffffff !important;
}
[data-theme="neumorphism"] .sidebar {
    border-right: none !important;
    box-shadow: 4px 0 12px #c4cbd4;
}
[data-theme="neumorphism"] .topbar {
    border-bottom: none !important;
    box-shadow: 0 4px 12px #c4cbd4;
}
[data-theme="neumorphism"] input,
[data-theme="neumorphism"] select,
[data-theme="neumorphism"] textarea {
    background: #e6ecf4 !important;
    border: none !important;
    box-shadow: inset 3px 3px 6px #c4cbd4, inset -3px -3px 6px #ffffff !important;
    border-radius: 10px;
}
[data-theme="neumorphism"] .btn-primary {
    background: #3b82f6 !important;
    box-shadow: 4px 4px 10px #b0b8c4, -4px -4px 10px #ffffff !important;
    border: none !important;
}
[data-theme="neumorphism"] .btn:active {
    box-shadow: inset 2px 2px 5px rgba(0,0,0,0.2) !important;
}

/* --------------------------------------------------------------------------
   3. SKEUOMORPHISM (Rich Realistic Gradients, Bevels & Physical Depth)
   -------------------------------------------------------------------------- */
[data-theme="skeuomorphism"] {
    --bg-color: #edeae4;
    --card-bg: linear-gradient(180deg, #ffffff 0%, #f7f5f0 100%);
    --topbar-bg: linear-gradient(180deg, #334155 0%, #1e293b 100%);
    --sidebar-bg: linear-gradient(180deg, #f8f6f0 0%, #ede7dc 100%);
    --text-main: #1c1917;
    --text-sub: #44403c;
    --text-muted: #78716c;
    --border-color: #d6d0c4;
    --accent: #1e3a8a;
    --accent-hover: #172554;
    --input-bg: #ffffff;
    --input-border: #bbb4a5;
    --table-header-bg: linear-gradient(180deg, #eae5db 0%, #dad3c5 100%);
    --table-row-hover: #f3f0e8;
    --shadow-soft: 0 2px 5px rgba(0,0,0,0.12), inset 0 1px 0 rgba(255,255,255,0.9);
    --shadow-deep: 0 8px 16px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.9);
}
[data-theme="skeuomorphism"] body {
    background: #edeae4;
}
[data-theme="skeuomorphism"] .topbar {
    color: #ffffff;
    box-shadow: 0 3px 8px rgba(0,0,0,0.3);
    border-bottom: 1px solid #0f172a;
}
[data-theme="skeuomorphism"] .topbar a,
[data-theme="skeuomorphism"] .topbar-user {
    color: #ffffff !important;
    text-shadow: 0 -1px 0 rgba(0,0,0,0.5);
}
[data-theme="skeuomorphism"] .card,
[data-theme="skeuomorphism"] .modal-content,
[data-theme="skeuomorphism"] .stat-card,
[data-theme="skeuomorphism"] .chart-card {
    background: linear-gradient(180deg, #ffffff 0%, #f6f4ef 100%) !important;
    border: 1px solid #cfc8ba !important;
    border-bottom-color: #b5ad9e !important;
    box-shadow: 0 3px 6px rgba(0,0,0,0.08), inset 0 1px 0 #ffffff !important;
    border-radius: 8px;
}
[data-theme="skeuomorphism"] .btn {
    border-radius: 6px;
    box-shadow: 0 2px 3px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.4) !important;
}
[data-theme="skeuomorphism"] .btn-primary {
    background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%) !important;
    border: 1px solid #1e40af !important;
    border-bottom-color: #172554 !important;
    text-shadow: 0 -1px 0 rgba(0,0,0,0.4);
}

/* --------------------------------------------------------------------------
   4. CLAYMORPHISM (Plump Inset Highlights & Pillowy 3D Volumes)
   -------------------------------------------------------------------------- */
[data-theme="claymorphism"] {
    --bg-color: #f1f5f9;
    --card-bg: #ffffff;
    --topbar-bg: rgba(255, 255, 255, 0.9);
    --sidebar-bg: #ffffff;
    --text-main: #0f172a;
    --text-sub: #334155;
    --text-muted: #64748b;
    --border-color: rgba(255, 255, 255, 0.8);
    --accent: #4f46e5;
    --accent-hover: #4338ca;
    --input-bg: #f8fafc;
    --input-border: #e2e8f0;
    --table-header-bg: #f1f5f9;
    --table-row-hover: #f8fafc;
    --shadow-soft: 8px 8px 16px rgba(148, 163, 184, 0.25), inset -4px -4px 8px rgba(203, 213, 225, 0.4), inset 4px 4px 8px #ffffff;
    --shadow-deep: 14px 14px 28px rgba(148, 163, 184, 0.3), inset -6px -6px 12px rgba(203, 213, 225, 0.5), inset 6px 6px 12px #ffffff;
}
[data-theme="claymorphism"] .card,
[data-theme="claymorphism"] .modal-content,
[data-theme="claymorphism"] .stat-card,
[data-theme="claymorphism"] .chart-card,
[data-theme="claymorphism"] .kpi-card,
[data-theme="claymorphism"] .profit-kpi-card {
    border-radius: 20px !important;
    border: 1px solid rgba(255, 255, 255, 0.7) !important;
    box-shadow: 10px 10px 20px rgba(148, 163, 184, 0.28), inset -5px -5px 10px rgba(226, 232, 240, 0.8), inset 5px 5px 10px #ffffff !important;
}
[data-theme="claymorphism"] .btn {
    border-radius: 24px;
    box-shadow: 4px 4px 10px rgba(99, 102, 241, 0.25), inset -2px -2px 4px rgba(0,0,0,0.1), inset 2px 2px 4px rgba(255,255,255,0.4) !important;
}
[data-theme="claymorphism"] input,
[data-theme="claymorphism"] select {
    border-radius: 14px;
    box-shadow: inset 3px 3px 6px rgba(148, 163, 184, 0.2), inset -3px -3px 6px #ffffff !important;
}

/* --------------------------------------------------------------------------
   5. NEO-BRUTALISM (Bold 2.5px Black Outlines & Hard Offset Pop Shadows)
   -------------------------------------------------------------------------- */
[data-theme="neo-brutalism"] {
    --bg-color: #fffdf5;
    --card-bg: #ffffff;
    --topbar-bg: #fffdf5;
    --sidebar-bg: #fffdf5;
    --text-main: #000000;
    --text-sub: #18181b;
    --text-muted: #52525b;
    --border-color: #000000;
    --accent: #2563eb;
    --accent-hover: #1d4ed8;
    --input-bg: #ffffff;
    --input-border: #000000;
    --table-header-bg: #fef08a;
    --table-row-hover: #fef9c3;
    --shadow-soft: 4px 4px 0px #000000;
    --shadow-deep: 6px 6px 0px #000000;
}
[data-theme="neo-brutalism"] body {
    background: #fffdf5;
    font-weight: 500;
}
[data-theme="neo-brutalism"] .topbar {
    border-bottom: 2.5px solid #000000 !important;
}
[data-theme="neo-brutalism"] .sidebar {
    border-right: 2.5px solid #000000 !important;
}
[data-theme="neo-brutalism"] .card,
[data-theme="neo-brutalism"] .modal-content,
[data-theme="neo-brutalism"] .stat-card,
[data-theme="neo-brutalism"] .chart-card,
[data-theme="neo-brutalism"] .kpi-card,
[data-theme="neo-brutalism"] .profit-kpi-card {
    border: 2.5px solid #000000 !important;
    border-radius: 6px !important;
    box-shadow: 5px 5px 0px #000000 !important;
}
[data-theme="neo-brutalism"] .btn {
    border: 2px solid #000000 !important;
    border-radius: 4px !important;
    box-shadow: 3px 3px 0px #000000 !important;
    font-weight: 700 !important;
    transition: transform 0.1s, box-shadow 0.1s;
}
[data-theme="neo-brutalism"] .btn:hover {
    transform: translate(-1px, -1px);
    box-shadow: 4px 4px 0px #000000 !important;
}
[data-theme="neo-brutalism"] .btn:active {
    transform: translate(2px, 2px);
    box-shadow: 1px 1px 0px #000000 !important;
}
[data-theme="neo-brutalism"] input,
[data-theme="neo-brutalism"] select {
    border: 2px solid #000000 !important;
    border-radius: 4px !important;
    box-shadow: 2px 2px 0px #000000 !important;
}
[data-theme="neo-brutalism"] table {
    border: 2px solid #000000 !important;
}
[data-theme="neo-brutalism"] th,
[data-theme="neo-brutalism"] td {
    border: 1px solid #000000 !important;
}

/* --------------------------------------------------------------------------
   6. RETRO-FUTURISM (Synthwave 80s Cyber Glow & Neon Chrome)
   -------------------------------------------------------------------------- */
[data-theme="retro-futurism"] {
    --bg-color: #0b0914;
    --card-bg: #131124;
    --topbar-bg: #131124;
    --sidebar-bg: #0f0d1b;
    --text-main: #f8fafc;
    --text-sub: #cbd5e1;
    --text-muted: #94a3b8;
    --border-color: #ff007f;
    --accent: #00ffff;
    --accent-hover: #22d3ee;
    --input-bg: #1c1830;
    --input-border: #00ffff;
    --table-header-bg: #1f1a38;
    --table-row-hover: #262045;
    --shadow-soft: 0 0 12px rgba(255, 0, 127, 0.25);
    --shadow-deep: 0 0 24px rgba(0, 255, 255, 0.3);
}
[data-theme="retro-futurism"] body {
    background: #0b0914;
    background-image: linear-gradient(rgba(255, 0, 127, 0.05) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(0, 255, 255, 0.05) 1px, transparent 1px);
    background-size: 32px 32px;
}
[data-theme="retro-futurism"] .topbar {
    border-bottom: 1.5px solid #ff007f !important;
    box-shadow: 0 2px 14px rgba(255, 0, 127, 0.3);
}
[data-theme="retro-futurism"] .sidebar {
    border-right: 1.5px solid #00ffff !important;
    box-shadow: 2px 0 14px rgba(0, 255, 255, 0.2);
}
[data-theme="retro-futurism"] .card,
[data-theme="retro-futurism"] .modal-content,
[data-theme="retro-futurism"] .stat-card,
[data-theme="retro-futurism"] .chart-card {
    border: 1px solid #ff007f !important;
    box-shadow: 0 0 14px rgba(255, 0, 127, 0.2), inset 0 0 10px rgba(0, 255, 255, 0.05) !important;
}
[data-theme="retro-futurism"] h1,
[data-theme="retro-futurism"] h2,
[data-theme="retro-futurism"] h3 {
    color: #00ffff;
    text-shadow: 0 0 8px rgba(0, 255, 255, 0.5);
}
[data-theme="retro-futurism"] .btn-primary {
    background: linear-gradient(90deg, #ff007f 0%, #d946ef 100%) !important;
    border: 1px solid #ff007f !important;
    box-shadow: 0 0 12px rgba(255, 0, 127, 0.5) !important;
    color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   7. 90s DESKTOP (Windows 95/Classic OS Beveled 3D Outsets)
   -------------------------------------------------------------------------- */
[data-theme="90s-desktop"] {
    --bg-color: #008080;
    --card-bg: #c0c0c0;
    --topbar-bg: #000080;
    --sidebar-bg: #c0c0c0;
    --text-main: #000000;
    --text-sub: #1f2937;
    --text-muted: #4b5563;
    --border-color: #808080;
    --accent: #000080;
    --accent-hover: #1084d0;
    --input-bg: #ffffff;
    --input-border: #808080;
    --table-header-bg: #d4d0c8;
    --table-row-hover: #e5e5e5;
    --shadow-soft: 1px 1px 0 #000000;
    --shadow-deep: 2px 2px 0 #000000;
}
[data-theme="90s-desktop"] body {
    background: #008080;
    font-family: 'Tahoma', 'Segoe UI', sans-serif;
}
[data-theme="90s-desktop"] .topbar {
    background: linear-gradient(90deg, #000080 0%, #1084d0 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #808080 !important;
}
[data-theme="90s-desktop"] .topbar a,
[data-theme="90s-desktop"] .topbar-user {
    color: #ffffff !important;
}
[data-theme="90s-desktop"] .sidebar {
    border-right: 2px solid #808080 !important;
    border-left: 2px solid #ffffff !important;
}
[data-theme="90s-desktop"] .card,
[data-theme="90s-desktop"] .modal-content,
[data-theme="90s-desktop"] .stat-card,
[data-theme="90s-desktop"] .chart-card {
    background: #c0c0c0 !important;
    border: 2px solid !important;
    border-color: #ffffff #808080 #808080 #ffffff !important;
    border-radius: 0 !important;
    box-shadow: 1px 1px 0 #000000 !important;
}
[data-theme="90s-desktop"] .btn {
    background: #c0c0c0 !important;
    color: #000000 !important;
    border: 2px solid !important;
    border-color: #ffffff #808080 #808080 #ffffff !important;
    border-radius: 0 !important;
    box-shadow: 1px 1px 0 #000000 !important;
    font-weight: bold;
}
[data-theme="90s-desktop"] .btn:active {
    border-color: #808080 #ffffff #ffffff #808080 !important;
}
[data-theme="90s-desktop"] input,
[data-theme="90s-desktop"] select {
    border: 2px solid !important;
    border-color: #808080 #ffffff #ffffff #808080 !important;
    border-radius: 0 !important;
}

/* --------------------------------------------------------------------------
   8. FLAT DESIGN 2.0 (Modern Clean Geometry & Saturated Accents)
   -------------------------------------------------------------------------- */
[data-theme="flat-2"] {
    --bg-color: #f1f5f9;
    --card-bg: #ffffff;
    --topbar-bg: #ffffff;
    --sidebar-bg: #ffffff;
    --text-main: #0f172a;
    --text-sub: #334155;
    --text-muted: #64748b;
    --border-color: #e2e8f0;
    --accent: #4f46e5;
    --accent-hover: #4338ca;
    --input-bg: #ffffff;
    --input-border: #cbd5e1;
    --table-header-bg: #f8fafc;
    --table-row-hover: #f1f5f9;
    --shadow-soft: 0 1px 2px rgba(0,0,0,0.05);
    --shadow-deep: 0 4px 6px -1px rgba(0,0,0,0.1);
}
[data-theme="flat-2"] .card,
[data-theme="flat-2"] .modal-content,
[data-theme="flat-2"] .stat-card,
[data-theme="flat-2"] .chart-card {
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important;
}

/* --------------------------------------------------------------------------
   9. MINIMALISM (Gallery White, Hairline Dividers & High Typographic Purity)
   -------------------------------------------------------------------------- */
[data-theme="minimalism"] {
    --bg-color: #ffffff;
    --card-bg: #ffffff;
    --topbar-bg: #ffffff;
    --sidebar-bg: #ffffff;
    --text-main: #000000;
    --text-sub: #27272a;
    --text-muted: #71717a;
    --border-color: #e4e4e7;
    --accent: #09090b;
    --accent-hover: #27272a;
    --input-bg: #ffffff;
    --input-border: #e4e4e7;
    --table-header-bg: #fafafa;
    --table-row-hover: #f4f4f5;
    --shadow-soft: none;
    --shadow-deep: none;
}
[data-theme="minimalism"] .card,
[data-theme="minimalism"] .modal-content,
[data-theme="minimalism"] .stat-card,
[data-theme="minimalism"] .chart-card {
    box-shadow: none !important;
    border: 1px solid #e4e4e7 !important;
    border-radius: 6px;
}
[data-theme="minimalism"] .btn-primary {
    background: #09090b !important;
    color: #ffffff !important;
    border-color: #09090b !important;
}

/* --------------------------------------------------------------------------
   10. MONOCHROME (High-Contrast Editorial Grayscale)
   -------------------------------------------------------------------------- */
[data-theme="monochrome"] {
    --bg-color: #121212;
    --card-bg: #1c1c1c;
    --topbar-bg: #181818;
    --sidebar-bg: #181818;
    --text-main: #ffffff;
    --text-sub: #d4d4d8;
    --text-muted: #a1a1aa;
    --border-color: #2e2e2e;
    --accent: #ffffff;
    --accent-hover: #e4e4e7;
    --input-bg: #262626;
    --input-border: #3f3f46;
    --table-header-bg: #242424;
    --table-row-hover: #2b2b2b;
    --shadow-soft: 0 4px 12px rgba(0,0,0,0.5);
    --shadow-deep: 0 10px 24px rgba(0,0,0,0.7);
}
[data-theme="monochrome"] body {
    background: #121212;
}
[data-theme="monochrome"] .card,
[data-theme="monochrome"] .modal-content,
[data-theme="monochrome"] .stat-card,
[data-theme="monochrome"] .chart-card {
    border: 1px solid #2e2e2e !important;
    background: #1c1c1c !important;
    border-radius: 8px;
}
[data-theme="monochrome"] .btn-primary {
    background: #ffffff !important;
    color: #000000 !important;
    border: 1px solid #ffffff !important;
    font-weight: 700;
}

/* --------------------------------------------------------------------------
   11. AURORA UI (Luminous Ambient Color Mesh & Diffused Glow)
   -------------------------------------------------------------------------- */
[data-theme="aurora"] {
    --bg-color: #090d16;
    --card-bg: rgba(15, 23, 42, 0.75);
    --topbar-bg: rgba(15, 23, 42, 0.85);
    --sidebar-bg: rgba(15, 23, 42, 0.8);
    --text-main: #f8fafc;
    --text-sub: #cbd5e1;
    --text-muted: #94a3b8;
    --border-color: rgba(255, 255, 255, 0.12);
    --accent: #10b981;
    --accent-hover: #059669;
    --input-bg: rgba(30, 41, 59, 0.6);
    --input-border: rgba(255, 255, 255, 0.2);
    --table-header-bg: rgba(30, 41, 59, 0.7);
    --table-row-hover: rgba(51, 65, 85, 0.5);
    --shadow-soft: 0 8px 32px rgba(16, 185, 129, 0.15);
    --shadow-deep: 0 16px 48px rgba(99, 102, 241, 0.25);
}
[data-theme="aurora"] body {
    background: #090d16;
    background-image: 
        radial-gradient(at 0% 0%, rgba(16, 185, 129, 0.3) 0px, transparent 50%),
        radial-gradient(at 100% 0%, rgba(99, 102, 241, 0.3) 0px, transparent 50%),
        radial-gradient(at 50% 100%, rgba(236, 72, 153, 0.2) 0px, transparent 50%);
    background-attachment: fixed;
}
[data-theme="aurora"] .card,
[data-theme="aurora"] .modal-content,
[data-theme="aurora"] .stat-card,
[data-theme="aurora"] .chart-card {
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3) !important;
    border-radius: 16px;
}
[data-theme="aurora"] .btn-primary {
    background: linear-gradient(135deg, #10b981 0%, #3b82f6 100%) !important;
    border: none !important;
    box-shadow: 0 0 16px rgba(16, 185, 129, 0.4) !important;
}

/* --------------------------------------------------------------------------
   12. CYBERPUNK UI (High-Voltage Electric Yellow & Sci-Fi HUD)
   -------------------------------------------------------------------------- */
[data-theme="cyberpunk"] {
    --bg-color: #050608;
    --card-bg: #0d0f14;
    --topbar-bg: #0d0f14;
    --sidebar-bg: #090a0f;
    --text-main: #fcee0a;
    --text-sub: #00f0ff;
    --text-muted: #8892b0;
    --border-color: #fcee0a;
    --accent: #fcee0a;
    --accent-hover: #e5d800;
    --input-bg: #141720;
    --input-border: #00f0ff;
    --table-header-bg: #181c28;
    --table-row-hover: #202636;
    --shadow-soft: 0 0 10px rgba(252, 238, 10, 0.25);
    --shadow-deep: 0 0 20px rgba(0, 240, 255, 0.3);
}
[data-theme="cyberpunk"] body {
    background: #050608;
    font-family: 'Courier New', Courier, monospace;
}
[data-theme="cyberpunk"] .topbar {
    border-bottom: 2px solid #fcee0a !important;
    box-shadow: 0 2px 14px rgba(252, 238, 10, 0.3);
}
[data-theme="cyberpunk"] .sidebar {
    border-right: 2px solid #00f0ff !important;
    box-shadow: 2px 0 14px rgba(0, 240, 255, 0.25);
}
[data-theme="cyberpunk"] .card,
[data-theme="cyberpunk"] .modal-content,
[data-theme="cyberpunk"] .stat-card,
[data-theme="cyberpunk"] .chart-card {
    border: 1.5px solid #fcee0a !important;
    box-shadow: 0 0 12px rgba(252, 238, 10, 0.2) !important;
    border-radius: 4px;
}
[data-theme="cyberpunk"] .btn-primary {
    background: #fcee0a !important;
    color: #000000 !important;
    border: 1px solid #fcee0a !important;
    font-weight: 900 !important;
    text-transform: uppercase;
    box-shadow: 0 0 12px rgba(252, 238, 10, 0.6) !important;
}

/* --------------------------------------------------------------------------
   13. ABSTRACT UI (Memphis Vibrant Art & Playful Offset Shadows)
   -------------------------------------------------------------------------- */
[data-theme="abstract"] {
    --bg-color: #faf5ff;
    --card-bg: #ffffff;
    --topbar-bg: #ffffff;
    --sidebar-bg: #ffffff;
    --text-main: #1e1b4b;
    --text-sub: #3730a3;
    --text-muted: #6366f1;
    --border-color: #6366f1;
    --accent: #ec4899;
    --accent-hover: #db2777;
    --input-bg: #ffffff;
    --input-border: #818cf8;
    --table-header-bg: #f3e8ff;
    --table-row-hover: #fae8ff;
    --shadow-soft: 5px 5px 0px #818cf8;
    --shadow-deep: 7px 7px 0px #ec4899;
}
[data-theme="abstract"] body {
    background: #faf5ff;
}
[data-theme="abstract"] .card,
[data-theme="abstract"] .modal-content,
[data-theme="abstract"] .stat-card,
[data-theme="abstract"] .chart-card {
    border: 2px solid #6366f1 !important;
    border-radius: 14px;
    box-shadow: 5px 5px 0px #ec4899 !important;
}
[data-theme="abstract"] .btn-primary {
    background: #ec4899 !important;
    border: 2px solid #000000 !important;
    box-shadow: 3px 3px 0px #000000 !important;
    border-radius: 12px;
}

/* --------------------------------------------------------------------------
   Theme Studio Modal Styles
   -------------------------------------------------------------------------- */
.theme-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 14px;
    margin-top: 14px;
}
.theme-card {
    background: var(--card-bg, #fff);
    border: 2px solid var(--border-color, #e2e8f0);
    border-radius: 12px;
    padding: 14px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.theme-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-deep);
    border-color: var(--accent);
}
.theme-card.is-active {
    border-color: #059669 !important;
    box-shadow: 0 0 0 2px rgba(5, 150, 105, 0.3) !important;
}
.theme-card-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 8px;
}
.theme-card-title {
    font-size: 14px;
    font-weight: 700;
    color: var(--text-main);
    display: flex;
    align-items: center;
    gap: 8px;
}
.theme-card-desc {
    font-size: 11.5px;
    color: var(--text-muted);
    line-height: 1.4;
    margin-bottom: 12px;
}
.theme-preview-chip {
    padding: 8px;
    border-radius: 8px;
    margin-bottom: 12px;
    display: flex;
    gap: 6px;
    align-items: center;
    justify-content: space-around;
    font-size: 10px;
    font-weight: 700;
}
.theme-card-actions {
    display: flex;
    gap: 6px;
}
.theme-apply-btn {
    flex: 1;
    padding: 6px 10px;
    font-size: 11.5px;
    font-weight: 700;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--accent);
    color: #ffffff;
    cursor: pointer;
    transition: all 0.15s;
    text-align: center;
}
.theme-apply-btn:hover {
    opacity: 0.9;
}
.theme-default-btn {
    padding: 6px 10px;
    font-size: 11px;
    font-weight: 600;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--input-bg);
    color: var(--text-main);
    cursor: pointer;
    transition: all 0.15s;
}
.theme-default-btn:hover {
    background: var(--table-row-hover);
    border-color: var(--accent);
}
