/* StealthRDP Cobalt child theme for Nexus.
 * This file overrides Nexus CSS variables and shared client-area surfaces.
 * Nexus SPA layout remains vendor-owned, as required by WHMCS 9.0.
 */
:root {
    --white: #eaeef5;
    --neutral-50: #08090c;
    --neutral-100: #0c0e13;
    --neutral-200: #10131a;
    --neutral-300: #151a23;
    --neutral-400: #758195;
    --neutral-500: #98a3b4;
    --neutral-600: #2b3547;
    --neutral-700: #1d2430;
    --neutral-800: #151a23;
    --neutral-900: #08090c;
    --neutral-950: #08090c;
    --primary-50: #dce7ff;
    --primary-100: #c5d6ff;
    --primary-200: #a9c2ff;
    --primary-300: #8eafff;
    --primary-400: #7aa5ff;
    --primary-500: #5b8cff;
    --primary-600: #5b8cff;
    --primary-700: #3f6fe0;
    --primary-800: #2d52ad;
    --primary-900: #193575;
    --primary-950: #07111f;
    --primary: #5b8cff;
    --primary-lifted: #7aa5ff;
    --primary-accented: #3f6fe0;
    --secondary: #98a3b4;
    --secondary-lifted: #b7c0ce;
    --secondary-accented: #2b3547;
    --success: #2fd47c;
    --success-lifted: #57e195;
    --success-accented: #1d9c5a;
    --info: #5b8cff;
    --info-lifted: #7aa5ff;
    --info-accented: #3f6fe0;
    --notice: #a78bfa;
    --notice-lifted: #c4b5fd;
    --notice-accented: #7956d8;
    --warning: #f5b93b;
    --warning-lifted: #ffc94d;
    --warning-accented: #d99a24;
    --error: #e5484d;
    --error-lifted: #f06a6f;
    --error-accented: #b73237;
    --grayscale: #08090c;
    --grayscale-lifted: #151a23;
    --grayscale-accented: #2b3547;
    --neutral: #98a3b4;
    --neutral-lifted: #b7c0ce;
    --neutral-accented: #2b3547;
    --text-inverted: #07111f;
    --text-muted: #98a3b4;
    --text-lifted: #b7c0ce;
    --text-accented: #eaeef5;
    --text: #eaeef5;
    --border-muted: #1d2430;
    --border: #1d2430;
    --border-lifted: #2b3547;
    --border-accented: #5b8cff;
    --bg: #08090c;
    --bg-muted: #0c0e13;
    --bg-lifted: #10131a;
    --bg-accented: #151a23;
    --bg-inverted: #eaeef5;
    --rounding-sm: .5rem;
    --rounding-md: .75rem;
    --rounding-lg: 1.125rem;
    --disabled-opacity: 35%;
    --cobalt-accent-rgb: 91, 140, 255;
    --cobalt-bg: #08090c;
    --cobalt-bg-elevated: #0c0e13;
    --cobalt-surface-1: #10131a;
    --cobalt-surface-2: #151a23;
    --cobalt-surface-3: #1c2330;
    --cobalt-border: #1d2430;
    --cobalt-border-strong: #2b3547;
    --cobalt-text: #eaeef5;
    --cobalt-muted: #98a3b4;
    --cobalt-dim: #758195;
    --cobalt-accent: #5b8cff;
    --cobalt-accent-hover: #7aa5ff;
    --cobalt-accent-deep: #3f6fe0;
    --cobalt-accent-ink: #07111f;
    --cobalt-accent-soft: rgba(91,140,255,.10);
    --cobalt-green: #2fd47c;
    --cobalt-red: #e5484d;

html[data-palette="cobalt"] { --primary: #5b8cff; --primary-lifted: #7aa5ff; --primary-accented: #3f6fe0; --primary-950: #07111f; --cobalt-accent-rgb: 91, 140, 255; }
html[data-palette="gold"] { --primary: #f5b93b; --primary-lifted: #ffc94d; --primary-accented: #d99a24; --primary-950: #171204; --cobalt-accent-rgb: 245, 185, 59; }
html[data-palette="cyan"] { --primary: #3dd6d0; --primary-lifted: #67e5df; --primary-accented: #1da9a5; --primary-950: #062426; --cobalt-accent-rgb: 61, 214, 208; }
html[data-palette="violet"] { --primary: #a78bfa; --primary-lifted: #c4b5fd; --primary-accented: #7956d8; --primary-950: #160b2d; --cobalt-accent-rgb: 167, 139, 250; }
html[data-palette="coral"] { --primary: #ff7a66; --primary-lifted: #ff9a8a; --primary-accented: #db4d3d; --primary-950: #2a0c08; --cobalt-accent-rgb: 255, 122, 102; }
html[data-palette="mint"] { --primary: #4ade80; --primary-lifted: #72f0a0; --primary-accented: #22a85a; --primary-950: #062313; --cobalt-accent-rgb: 74, 222, 128; }
html[data-palette="rose"] { --primary: #f472b6; --primary-lifted: #fb8ec4; --primary-accented: #d1428d; --primary-950: #2a0a1b; --cobalt-accent-rgb: 244, 114, 182; }
html[data-palette="orange"] { --primary: #ff9f43; --primary-lifted: #ffb86b; --primary-accented: #d87720; --primary-950: #2a1304; --cobalt-accent-rgb: 255, 159, 67; }
html[data-palette="indigo"] { --primary: #818cf8; --primary-lifted: #a5b4fc; --primary-accented: #5864d2; --primary-950: #0d102d; --cobalt-accent-rgb: 129, 140, 248; }
html[data-palette="ice"] { --primary: #7dd3fc; --primary-lifted: #a5e3ff; --primary-accented: #43a8da; --primary-950: #062034; --cobalt-accent-rgb: 125, 211, 252; }
html[data-palette] {
    --primary-50: var(--primary-lifted);
    --primary-100: var(--primary-lifted);
    --primary-200: var(--primary-lifted);
    --primary-300: var(--primary-lifted);
    --primary-400: var(--primary-lifted);
    --primary-500: var(--primary);
    --primary-600: var(--primary);
    --primary-700: var(--primary-accented);
    --primary-800: var(--primary-accented);
    --primary-900: var(--primary-950);
    --cobalt-accent: var(--primary);
    --cobalt-accent-hover: var(--primary-lifted);
    --cobalt-accent-deep: var(--primary-accented);
    --cobalt-accent-ink: var(--primary-950);
    --cobalt-accent-soft: rgba(var(--cobalt-accent-rgb),.10);
}

html, body { background: #08090c !important; color: #eaeef5; }
body { font-family: Inter, system-ui, sans-serif; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-family: "Space Grotesk", Inter, system-ui, sans-serif; letter-spacing: -.025em; }
#header, .header, .topbar, .navbar, .main-navbar-wrapper, #footer, .footer { background: #08090c !important; border-color: #1d2430 !important; }
#header .navbar-brand, #header .navbar-brand a, #header .nav-link, #header .btn { color: #eaeef5; }
#header .nav-link:hover, #header .nav-link:focus, #header .navbar-brand:hover { color: var(--primary-lifted); }
#main-body, .primary-content, .sidebar, .card, .panel, .modal-content, .dropdown-menu { color: #eaeef5; }
.card, .panel, .sidebar .list-group, .sidebar .list-group-item, .table, .table td, .table th { background: #10131a; border-color: #1d2430; }
.card-header, .panel-heading, .table thead th { background: #151a23; border-color: #1d2430; }
.text-muted, .help-block, .form-text, .breadcrumb, .breadcrumb-item { color: #98a3b4 !important; }
.form-control, .custom-select, select, textarea, input { background: #0c0e13; border-color: #2b3547; color: #eaeef5; }
a { color: var(--primary-lifted); }
.form-control:focus, .custom-select:focus, select:focus, textarea:focus, input:focus { background: #10131a; border-color: var(--primary); color: #eaeef5; box-shadow: 0 0 0 .2rem rgba(var(--cobalt-accent-rgb),.16); }
.btn-primary, .btn-success, .btn-info { background: var(--primary); border-color: var(--primary); color: var(--primary-950); font-weight: 700; }
.btn-primary:hover, .btn-success:hover, .btn-info:hover { background: var(--primary-lifted); border-color: var(--primary-lifted); color: var(--primary-950); }
.btn-default, .btn-secondary, .btn-outline-light { background: transparent; border-color: #2b3547; color: #eaeef5; }
.btn-default:hover, .btn-secondary:hover, .btn-outline-light:hover { background: rgba(var(--cobalt-accent-rgb),.10); border-color: var(--primary); color: var(--primary-lifted); }
a:hover { color: var(--primary-lifted); }
.alert-success { background: rgba(47,212,124,.12); border-color: #2fd47c; color: #b8f4d2; }
.alert-danger { background: rgba(229,72,77,.12); border-color: #e5484d; color: #ffc4c6; }
.alert-info { background: rgba(var(--cobalt-accent-rgb),.10); border-color: var(--primary-accented); color: #c5d6ff; }
:focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }

.cobalt-palette-lab { position: relative; }
.cobalt-palette-trigger { display: inline-flex; align-items: center; gap: 7px; }
.cobalt-palette-current-swatch, .cobalt-palette-option > span { display: inline-block; width: 10px; height: 10px; flex: 0 0 auto; border-radius: 50%; background: var(--swatch, var(--primary)); box-shadow: 0 0 0 2px rgba(255,255,255,.10); }
.cobalt-palette-panel { position: absolute; z-index: 1100; top: calc(100% + 12px); right: 0; width: 250px; padding: 16px; border: 1px solid #2b3547; border-radius: 12px; background: #0c0e13; box-shadow: 0 18px 50px rgba(0,0,0,.40); }
.cobalt-palette-panel-head { display: grid; gap: 4px; margin-bottom: 12px; }
.cobalt-palette-kicker, .cobalt-palette-note { color: #758195; font: 10px "JetBrains Mono", monospace; letter-spacing: .08em; text-transform: uppercase; }
.cobalt-palette-panel-head strong { color: #eaeef5; font: 700 15px "Space Grotesk", system-ui, sans-serif; }
.cobalt-palette-options { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; }
.cobalt-palette-option { display: inline-flex; align-items: center; gap: 8px; min-width: 0; padding: 8px 7px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: #98a3b4; font: 12px Inter, system-ui, sans-serif; text-align: left; }
.cobalt-palette-option:hover, .cobalt-palette-option:focus-visible, .cobalt-palette-option.is-active { border-color: var(--primary-accented); background: rgba(var(--cobalt-accent-rgb),.10); color: #eaeef5; }
.cobalt-palette-note { margin: 12px 0 0; letter-spacing: 0; text-transform: none; }
@media (max-width: 767px) { .cobalt-palette-panel { position: fixed; top: 68px; right: 16px; left: 16px; width: auto; } }
.cobalt-auth-page { width: min(100% - 32px, 860px); margin: 34px auto 72px; }
.cobalt-auth-intro { max-width: 650px; margin: 0 auto 24px; text-align: center; }
.cobalt-auth-kicker { color: var(--primary); font: 600 10px "JetBrains Mono", monospace; letter-spacing: .14em; text-transform: uppercase; }
.cobalt-auth-intro h1 { margin: 10px 0; color: #eaeef5; font: 700 clamp(34px, 5vw, 56px)/1.02 "Space Grotesk", system-ui, sans-serif; letter-spacing: -.045em; }
.cobalt-auth-intro p { margin: 0; color: #98a3b4; font-size: 16px; }
.cobalt-auth-page .card { border: 1px solid #1d2430; border-radius: 14px; background: #10131a; box-shadow: 0 18px 48px rgba(0,0,0,.20); }
.cobalt-auth-page .card-body { padding: clamp(22px, 4vw, 40px) !important; }
.cobalt-auth-page .card-footer { border-color: #1d2430; background: #0c0e13; color: #98a3b4; }
.cobalt-auth-page .card-title, .cobalt-auth-page h6.h3 { color: #eaeef5; font-family: "Space Grotesk", system-ui, sans-serif; }
.cobalt-auth-page .form-control, .cobalt-auth-page .field, .cobalt-auth-page select, .cobalt-auth-page textarea { min-height: 44px; border: 1px solid #2b3547; border-radius: 8px; background: #0c0e13; color: #eaeef5; }
.cobalt-auth-page .form-control:focus, .cobalt-auth-page .field:focus, .cobalt-auth-page select:focus, .cobalt-auth-page textarea:focus { border-color: var(--primary); box-shadow: 0 0 0 .2rem rgba(var(--cobalt-accent-rgb),.16); }
.cobalt-auth-page .input-group-text, .cobalt-auth-page .input-group-prepend .input-group-text { border-color: #2b3547; background: #151a23; color: #98a3b4; }
.cobalt-auth-page .input-group-merge .form-control { border-left: 0; }
.cobalt-auth-page label, .cobalt-auth-page .form-control-label { color: #b7c0ce; font-size: 13px; font-weight: 600; }
.cobalt-auth-page .field-icon { color: #758195; }
.cobalt-auth-page .btn-primary { min-height: 44px; border-radius: 8px; background: var(--primary); border-color: var(--primary); color: var(--primary-950); font-weight: 700; }
.cobalt-auth-page .btn-primary:hover { background: var(--primary-lifted); border-color: var(--primary-lifted); color: var(--primary-950); }
.cobalt-auth-page .btn-default { border-color: #2b3547; background: transparent; color: #eaeef5; }
.cobalt-auth-page .btn-default:hover { border-color: var(--primary); background: rgba(var(--cobalt-accent-rgb),.10); color: var(--primary-lifted); }
.cobalt-auth-page .alert { border-radius: 8px; }
.cobalt-auth-page .text-muted, .cobalt-auth-page small { color: #98a3b4 !important; }
.cobalt-auth-page a { color: var(--primary-lifted); }
.cobalt-auth-page .row { row-gap: 2px; }
@media (max-width: 767px) { .cobalt-auth-page { margin-top: 22px; } .cobalt-auth-page .card-body { padding: 20px !important; } .cobalt-auth-intro h1 { font-size: 38px; } }

.cobalt-page-surface { width: min(100% - 32px, 1180px); margin: 30px auto 72px; }
.cobalt-page-intro { margin: 0 0 24px; }
.cobalt-page-intro h1 { margin: 8px 0; color: #eaeef5; font: 700 clamp(30px, 4vw, 48px)/1.05 "Space Grotesk", system-ui, sans-serif; letter-spacing: -.04em; }
.cobalt-page-intro p { margin: 0; color: #98a3b4; }
.cobalt-dashboard-page .tiles { margin: 0 0 22px; }
.cobalt-dashboard-page .tiles .tile { display: block; min-height: 142px; padding: 22px; border: 1px solid #1d2430; border-radius: 12px; background: #10131a; color: #eaeef5; box-shadow: 0 12px 30px rgba(0,0,0,.16); }
.cobalt-dashboard-page .tiles .tile:hover { border-color: var(--primary-accented); background: #151a23; }
.cobalt-dashboard-page .tiles .tile > i { color: var(--primary); }
.cobalt-dashboard-page .tiles .stat { margin-top: 16px; color: #eaeef5; font: 700 30px/1 "Space Grotesk", system-ui, sans-serif; }
.cobalt-dashboard-page .tiles .title { margin-top: 7px; color: #98a3b4; font: 12px "JetBrains Mono", monospace; text-transform: uppercase; }
.cobalt-dashboard-page .tiles .highlight { height: 2px; margin-top: 16px; background: var(--primary) !important; }
.cobalt-dashboard-page .card, .cobalt-section-page .card { border: 1px solid #1d2430; border-radius: 12px; background: #10131a; color: #eaeef5; }
.cobalt-dashboard-page .card-header, .cobalt-section-page .card-header { border-color: #1d2430; background: #151a23; }
.cobalt-dashboard-page .card-title, .cobalt-section-page .card-title { color: #eaeef5; font-family: "Space Grotesk", system-ui, sans-serif; }
.cobalt-page-surface .table-container, .cobalt-page-surface .table-responsive { overflow-x: auto; border: 1px solid #1d2430; border-radius: 12px; background: #10131a; }
.cobalt-page-surface table { margin-bottom: 0; color: #eaeef5; }
.cobalt-page-surface table thead th { border-color: #1d2430; background: #151a23; color: #98a3b4; font: 600 11px "JetBrains Mono", monospace; letter-spacing: .05em; text-transform: uppercase; }
.cobalt-page-surface table tbody td { border-color: #1d2430; color: #b7c0ce; vertical-align: middle; }
.cobalt-page-surface table tbody tr:hover { background: rgba(var(--cobalt-accent-rgb),.06); }
.cobalt-page-surface .label.status { border: 1px solid #2b3547; border-radius: 999px; background: #151a23; color: #b7c0ce; font-size: 10px; }
.cobalt-page-surface .status-active, .cobalt-page-surface .status-paid { border-color: rgba(47,212,124,.35) !important; background: rgba(47,212,124,.12) !important; color: #9deabd !important; }
.cobalt-page-surface .status-pending, .cobalt-page-surface .status-unpaid { border-color: rgba(245,185,59,.35) !important; background: rgba(245,185,59,.12) !important; color: #f8d987 !important; }
.cobalt-page-surface .status-terminated, .cobalt-page-surface .status-cancelled, .cobalt-page-surface .status-fraud { border-color: rgba(229,72,77,.35) !important; background: rgba(229,72,77,.12) !important; color: #ffb0b3 !important; }
.cobalt-section-page .product-status { border: 1px solid #1d2430; border-radius: 12px; background: #10131a; }
.cobalt-section-page .product-status-text { color: #b7c0ce; }
.cobalt-section-page .product-status-active .product-status-text { color: #9deabd; }
.cobalt-section-page .nav-tabs { border-color: #1d2430; }
.cobalt-section-page .nav-tabs .nav-link { border-color: transparent; color: #98a3b4; }
.cobalt-section-page .nav-tabs .nav-link.active, .cobalt-section-page .nav-tabs .nav-link:hover { border-color: #1d2430 #1d2430 #10131a; background: #10131a; color: var(--primary-lifted); }
@media (max-width: 767px) { .cobalt-page-surface { margin-top: 20px; } .cobalt-dashboard-page .tiles .tile { min-height: 126px; padding: 17px; } .cobalt-page-intro h1 { font-size: 36px; } }

@media (prefers-reduced-motion: reduce) { *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; } }

/* Both approved modes use every palette. The palette accent remains semantic. */
html[data-mode="light"] {
    color-scheme: light;
    --white: #111827;
    --neutral-50: #f8fafc;
    --neutral-100: #f1f5f9;
    --neutral-200: #e8eef6;
    --neutral-300: #dbe4ef;
    --neutral-400: #64748b;
    --neutral-500: #526174;
    --neutral-600: #c1ccda;
    --neutral-700: #d4deea;
    --neutral-800: #e7edf5;
    --neutral-900: #f8fafc;
    --neutral-950: #ffffff;
    --text-inverted: #f8fafc;
    --text-muted: #526174;
    --text-lifted: #334155;
    --text-accented: #0f172a;
    --text: #172033;
    --border-muted: #dbe4ef;
    --border: #cbd7e5;
    --border-lifted: #aebed0;
    --border-accented: var(--primary);
    --bg: #f8fafc;
    --bg-muted: #f1f5f9;
    --bg-lifted: #ffffff;
    --bg-accented: #e8eef6;
    --bg-inverted: #172033;
    --cobalt-bg: #f8fafc;
    --cobalt-bg-elevated: #f1f5f9;
    --cobalt-surface-1: #ffffff;
    --cobalt-surface-2: #f1f5f9;
    --cobalt-surface-3: #e8eef6;
    --cobalt-border: #dbe4ef;
    --cobalt-border-strong: #b9c7d8;
    --cobalt-text: #172033;
    --cobalt-muted: #526174;
    --cobalt-dim: #64748b;
    --cobalt-accent-ink: #ffffff;
    --cobalt-green: #16834d;
    --cobalt-red: #c9363d;
}
html[data-mode="light"], html[data-mode="light"] body { background: #f8fafc !important; color: #172033 !important; }
html[data-mode="light"] #header, html[data-mode="light"] .header, html[data-mode="light"] .topbar, html[data-mode="light"] .navbar, html[data-mode="light"] .main-navbar-wrapper, html[data-mode="light"] #footer, html[data-mode="light"] .footer { background: #ffffff !important; border-color: #dbe4ef !important; }
html[data-mode="light"] #header .navbar-brand, html[data-mode="light"] #header .navbar-brand a, html[data-mode="light"] #header .nav-link, html[data-mode="light"] #header .btn { color: #172033 !important; }
html[data-mode="light"] #main-body, html[data-mode="light"] .primary-content, html[data-mode="light"] .sidebar, html[data-mode="light"] .card, html[data-mode="light"] .panel, html[data-mode="light"] .modal-content, html[data-mode="light"] .dropdown-menu { color: #172033 !important; }
html[data-mode="light"] .card, html[data-mode="light"] .panel, html[data-mode="light"] .sidebar .list-group, html[data-mode="light"] .sidebar .list-group-item, html[data-mode="light"] .table, html[data-mode="light"] .table td, html[data-mode="light"] .table th { background: #ffffff !important; border-color: #dbe4ef !important; }
html[data-mode="light"] .card-header, html[data-mode="light"] .panel-heading, html[data-mode="light"] .table thead th { background: #f1f5f9 !important; border-color: #dbe4ef !important; }
html[data-mode="light"] .text-muted, html[data-mode="light"] .help-block, html[data-mode="light"] .form-text, html[data-mode="light"] .breadcrumb, html[data-mode="light"] .breadcrumb-item { color: #526174 !important; }
html[data-mode="light"] .form-control, html[data-mode="light"] .custom-select, html[data-mode="light"] select, html[data-mode="light"] textarea, html[data-mode="light"] input { background: #ffffff !important; border-color: #b9c7d8 !important; color: #172033 !important; }
html[data-mode="light"] .form-control:focus, html[data-mode="light"] .custom-select:focus, html[data-mode="light"] select:focus, html[data-mode="light"] textarea:focus, html[data-mode="light"] input:focus { background: #ffffff !important; color: #172033 !important; }
html[data-mode="light"] .btn-default, html[data-mode="light"] .btn-secondary, html[data-mode="light"] .btn-outline-light { border-color: #b9c7d8 !important; color: #172033 !important; }
html[data-mode="light"] .cobalt-palette-panel { background: #ffffff !important; border-color: #b9c7d8 !important; box-shadow: 0 18px 50px rgba(15,23,42,.14); }
html[data-mode="light"] .cobalt-palette-panel-head strong, html[data-mode="light"] .cobalt-palette-option { color: #172033; }
html[data-mode="light"] .cobalt-palette-kicker, html[data-mode="light"] .cobalt-palette-note { color: #64748b; }
html[data-mode="light"] .cobalt-palette-option:hover, html[data-mode="light"] .cobalt-palette-option:focus-visible, html[data-mode="light"] .cobalt-palette-option.is-active { color: #172033; }
html[data-mode="light"] .cobalt-auth-intro h1, html[data-mode="light"] .cobalt-page-intro h1, html[data-mode="light"] .cobalt-dashboard-page .tiles .stat, html[data-mode="light"] .cobalt-dashboard-page .tiles .tile, html[data-mode="light"] .cobalt-section-page .card-title { color: #172033 !important; }
html[data-mode="light"] .cobalt-auth-intro p, html[data-mode="light"] .cobalt-page-intro p, html[data-mode="light"] .cobalt-dashboard-page .tiles .title { color: #526174 !important; }
html[data-mode="light"] .cobalt-auth-page .card, html[data-mode="light"] .cobalt-auth-page .card-footer, html[data-mode="light"] .cobalt-dashboard-page .tiles .tile, html[data-mode="light"] .cobalt-dashboard-page .card, html[data-mode="light"] .cobalt-section-page .card { background: #ffffff !important; border-color: #dbe4ef !important; }
html[data-mode="light"] .cobalt-auth-page .card-footer, html[data-mode="light"] .cobalt-dashboard-page .card-header, html[data-mode="light"] .cobalt-section-page .card-header { background: #f1f5f9 !important; color: #172033 !important; }
html[data-mode="light"] .cobalt-page-surface table thead th { background: #f1f5f9 !important; color: #526174 !important; }
html[data-mode="light"] .cobalt-page-surface table tbody td { color: #334155 !important; border-color: #dbe4ef !important; }
.cobalt-theme-trigger { min-width: 40px; }
