/* SCP Design System — Salmeron Theme. White-label themes override only these tokens. */
:root {
    color-scheme: dark;
    --scp-primary: #175cd3;
    --scp-primary-dark: #0b3b82;
    --scp-primary-light: #60a5fa;
    --scp-primary-contrast: #ffffff;
    --scp-secondary: #f28c28;
    --scp-secondary-dark: #c9660a;
    --scp-secondary-light: #ffb764;
    --scp-secondary-contrast: #241305;
    --scp-success: #34d399;
    --scp-warning: #fbbf24;
    --scp-danger: #fb7185;
    --scp-info: #60a5fa;
    --scp-neutral: #94a3b8;
    --scp-background: #080d17;
    --scp-background-soft: #0c1322;
    --scp-card: #111a2b;
    --scp-card-hover: #162136;
    --scp-panel: #0b1220;
    --scp-border: #26344b;
    --scp-border-hover: #40516a;
    --scp-text: #f1f5f9;
    --scp-text-soft: #cbd5e1;
    --scp-text-muted: #94a3b8;
    --scp-text-inverse: #0f172a;
    --scp-print-paper: #ffffff;
    --scp-print-ink: #0f172a;
    --scp-print-border: #64748b;
    --scp-sidebar: #080d17;
    --scp-sidebar-hover: #162136;
    --scp-header: #0b1220;
    --scp-success-text: #bbf7d0;
    --scp-warning-text: #fde68a;
    --scp-danger-text: #fecdd3;
    --scp-info-text: #bfdbfe;
    --scp-secondary-text: #ffd7ad;
    --scp-fleet: #176b78;
    --scp-legal: #0b3b82;
    --scp-assets: #64748b;
    --scp-water: var(--scp-info);
    --scp-energy: var(--scp-secondary);
    --scp-fuel: var(--scp-secondary);
    --scp-qr: var(--scp-secondary);
    --scp-scout: var(--scp-secondary);
    --scp-primary-08: rgb(23 92 211 / 8%);
    --scp-primary-12: rgb(23 92 211 / 12%);
    --scp-primary-35: rgb(23 92 211 / 35%);
    --scp-secondary-10: rgb(242 140 40 / 10%);
    --scp-secondary-18: rgb(242 140 40 / 18%);
    --interactive-hover-bg: rgb(242 140 40 / 10%);
    --interactive-selected-bg: #7c3508;
    --interactive-selected-border: #f28c28;
    --interactive-selected-text: #fff7ed;
    --interactive-focus: #ff9d3d;
    --scp-warning-28: rgb(251 191 36 / 28%);
    --scp-danger-09: rgb(251 113 133 / 9%);
    --scp-danger-28: rgb(251 113 133 / 28%);
    --scp-neutral-08: rgb(148 163 184 / 8%);
    --scp-neutral-14: rgb(148 163 184 / 14%);
    --scp-overlay: rgb(0 0 0 / 16%);
    --scp-radius-sm: 8px;
    --scp-radius: 12px;
    --scp-radius-lg: 16px;
    --scp-control-height: 44px;
    --scp-card-padding: 20px;
    --scp-shadow: 0 16px 40px var(--scp-overlay);
    --scp-shadow-card: 0 1px 0 rgb(255 255 255 / 2%), 0 12px 30px rgb(0 0 0 / 8%);
    --scp-focus: 0 0 0 3px rgb(96 165 250 / 28%);
    /* compatibility aliases */
    --scp-bg: var(--scp-background);
    --scp-bg-soft: var(--scp-background-soft);
    --scp-surface: var(--scp-card);
    --scp-surface-subtle: var(--scp-background-soft);
    --scp-surface-raised: var(--scp-card-hover);
    --scp-muted: var(--scp-text-muted);
    --scp-brand: var(--scp-primary);
    --scp-brand-light: var(--scp-primary-light);
    --scp-green: var(--scp-success);
    --scp-yellow: var(--scp-warning);
    --scp-red: var(--scp-danger);
    --scp-border-soft: var(--scp-neutral-14);
    /* Public design-token aliases for new components. */
    --bg-primary: var(--scp-background); --bg-secondary: var(--scp-background-soft); --bg-sidebar: var(--scp-sidebar); --bg-card: var(--scp-card);
    --text-primary: var(--scp-text); --text-secondary: var(--scp-text-soft); --border: var(--scp-border); --accent: var(--scp-secondary); --accent-hover: var(--scp-secondary-dark);
    --success: var(--scp-success); --warning: var(--scp-warning); --danger: var(--scp-danger); --shadow: var(--scp-shadow-card); --table-hover: var(--scp-primary-08);
    --input-bg: var(--scp-panel); --input-text: var(--scp-text);
}
[data-scp-theme="light"],[data-scp-theme="corporate-light"] { color-scheme:light; --scp-background:#f5f7fb; --scp-background-soft:#eef2f7; --scp-card:#fff; --scp-card-hover:#fbfcfe; --scp-panel:#fff; --scp-border:#e2e8f0; --scp-border-hover:#cbd5e1; --scp-text:#273449; --scp-text-soft:#475569; --scp-text-muted:#64748b; --scp-text-inverse:#fff; --scp-sidebar:#fff; --scp-sidebar-hover:#f1f5ff; --scp-header:#fff; --scp-primary:#2563eb; --scp-primary-dark:#1d4ed8; --scp-primary-light:#3b82f6; --scp-secondary:#2563eb; --scp-secondary-dark:#1d4ed8; --scp-secondary-contrast:#fff; --scp-success-text:#166534; --scp-warning-text:#854d0e; --scp-danger-text:#9f1239; --scp-info-text:#1e40af; --scp-secondary-text:#1e40af; --scp-neutral:#64748b; --scp-overlay:rgb(15 23 42 / 7%); --scp-shadow-card:0 1px 2px rgb(15 23 42 / 4%),0 4px 12px rgb(15 23 42 / 5%); --bg-primary:var(--scp-background); --bg-secondary:var(--scp-background-soft); --bg-sidebar:var(--scp-sidebar); --bg-card:var(--scp-card); --text-primary:var(--scp-text); --text-secondary:var(--scp-text-soft); --border:var(--scp-border); --accent:var(--scp-secondary); --accent-hover:var(--scp-secondary-dark); --success:var(--scp-success); --warning:var(--scp-warning); --danger:var(--scp-danger); --shadow:var(--scp-shadow-card); --table-hover:var(--scp-primary-08); --input-bg:var(--scp-panel); --input-text:var(--scp-text); }
[data-scp-theme="soft-gray"] { color-scheme:light; --scp-background:#f3f1ee; --scp-background-soft:#ebe9e5; --scp-card:#fffdf9; --scp-card-hover:#fff; --scp-panel:#fffdf9; --scp-border:#e4e0d9; --scp-border-hover:#cfc8bd; --scp-text:#373737; --scp-text-soft:#5b5b5b; --scp-text-muted:#787878; --scp-sidebar:#fffdf9; --scp-header:#fffdf9; --scp-primary:#2457a6; --scp-primary-dark:#1d4789; --scp-primary-light:#4a78bd; --scp-secondary:#2457a6; --scp-secondary-dark:#1d4789; --scp-secondary-contrast:#fff; --scp-neutral:#777; --scp-overlay:rgb(55 55 55 / 7%); --scp-shadow-card:0 1px 2px rgb(55 55 55 / 4%),0 5px 14px rgb(55 55 55 / 5%); }
[data-scp-theme="fluent"] { color-scheme:light; --scp-background:#f5f7fa; --scp-background-soft:#edf1f7; --scp-card:#fff; --scp-card-hover:#fafbfe; --scp-panel:#fff; --scp-border:#d6dbe5; --scp-border-hover:#aeb8c9; --scp-text:#242424; --scp-text-soft:#4a4a4a; --scp-text-muted:#616161; --scp-sidebar:#fff; --scp-header:#fff; --scp-primary:#106ebe; --scp-primary-dark:#005a9e; --scp-primary-light:#2b88d8; --scp-secondary:#106ebe; --scp-secondary-dark:#005a9e; --scp-secondary-contrast:#fff; --scp-neutral:#605e5c; --scp-overlay:rgb(0 0 0 / 7%); --scp-shadow-card:0 1px 2px rgb(0 0 0 / 4%),0 4px 10px rgb(0 0 0 / 6%); }
body[data-scp-theme="fluent"] { background: #eaf2ff; color: var(--scp-text); }
body[data-scp-theme="fluent"] .scp-content { background: #eaf2ff; }
[data-scp-theme="environment"] { color-scheme:dark; overflow-x:clip; --card-bg:var(--scp-card); --border-color:var(--scp-border); --surface-1:var(--scp-card); --surface-2:var(--scp-card-hover); }
[data-scp-environment="dev"] { --scp-environment-accent:#ef4444; --scp-primary:#dc2626; --scp-primary-dark:#991b1b; --scp-primary-light:#f87171; --scp-background:#17090c; --scp-background-soft:#210d12; --scp-card:#291219; --scp-card-hover:#351820; --scp-panel:#210d12; --scp-border:#6c2938; --scp-border-hover:#a13a50; --scp-sidebar:#17090c; --scp-sidebar-hover:#35131c; --scp-header:#210d12; }
[data-scp-environment="hml"] { --scp-environment-accent:#f59e0b; --scp-primary:#d97706; --scp-primary-dark:#92400e; --scp-primary-light:#fbbf24; --scp-background:#171109; --scp-background-soft:#20170b; --scp-card:#291d0e; --scp-card-hover:#342614; --scp-panel:#21170b; --scp-border:#6b4b19; --scp-border-hover:#9a6d23; --scp-sidebar:#171109; --scp-sidebar-hover:#32230e; --scp-header:#21170b; }
[data-scp-environment="prd"] { --scp-environment-accent:#f28c28; --scp-primary:#175cd3; --scp-primary-dark:#0b3b82; --scp-primary-light:#60a5fa; --scp-background:#080d17; --scp-background-soft:#0c1322; --scp-card:#111a2b; --scp-card-hover:#162136; --scp-panel:#0b1220; --scp-border:#26344b; --scp-border-hover:#40516a; --scp-sidebar:#080d17; --scp-sidebar-hover:#162136; --scp-header:#0b1220; }
[data-scp-environment="unknown"] { --scp-environment-accent:#e11d48; --scp-primary:#e11d48; --scp-background:#19080d; --scp-background-soft:#250b13; --scp-card:#30101a; --scp-panel:#250b13; --scp-border:#9f1239; --scp-sidebar:#19080d; --scp-header:#250b13; }
[data-scp-theme="environment"] .scp-header { border-bottom-color:color-mix(in srgb,var(--scp-environment-accent) 68%,var(--scp-border)); box-shadow:0 4px 22px color-mix(in srgb,var(--scp-environment-accent) 14%,transparent); }
[data-scp-theme="environment"] .scp-sidebar { border-right-color:color-mix(in srgb,var(--scp-environment-accent) 45%,var(--scp-border)); }
[data-scp-theme="environment"] .scp-menu-item.active { border-left-color:var(--scp-environment-accent); background:color-mix(in srgb,var(--scp-environment-accent) 16%,transparent); }
[data-scp-theme="environment"] .scp-card,[data-scp-theme="environment"] .scp-section { background:var(--scp-card); border-color:var(--scp-border); }
[data-scp-theme="environment"] .scp-layout,[data-scp-theme="environment"] .scp-main,[data-scp-theme="environment"] .scp-content { min-width:0; max-width:100%; }
[data-scp-theme="pure-white"] { color-scheme:light; --scp-background:#fff; --scp-background-soft:#fff; --scp-card:#fff; --scp-card-hover:#f8fafc; --scp-panel:#fff; --scp-border:#e2e8f0; --scp-border-hover:#cbd5e1; --scp-text:#0f172a; --scp-text-soft:#334155; --scp-text-muted:#475569; --scp-sidebar:#fff; --scp-header:#fff; --scp-primary:#2563eb; --scp-primary-dark:#1d4ed8; --scp-primary-light:#3b82f6; --scp-secondary:#2563eb; --scp-secondary-dark:#1d4ed8; --scp-secondary-contrast:#fff; --scp-neutral:#64748b; --scp-overlay:rgb(15 23 42 / 6%); }
[data-scp-theme="glass"] { color-scheme:light; --scp-background:#f5f7fb; --scp-background-soft:#eef2f8; --scp-card:rgb(255 255 255 / 72%); --scp-card-hover:rgb(255 255 255 / 84%); --scp-panel:rgb(255 255 255 / 65%); --scp-border:rgb(148 163 184 / 36%); --scp-border-hover:rgb(37 99 235 / 48%); --scp-text:#0f172a; --scp-text-soft:#334155; --scp-text-muted:#475569; --scp-sidebar:rgb(255 255 255 / 82%); --scp-header:rgb(255 255 255 / 72%); --scp-primary:#2563eb; --scp-primary-dark:#1d4ed8; --scp-primary-light:#3b82f6; --scp-secondary:#2563eb; --scp-secondary-dark:#1d4ed8; --scp-secondary-contrast:#fff; --scp-neutral:#64748b; --scp-overlay:rgb(15 23 42 / 8%); }
[data-scp-theme="glass"] .scp-card,[data-scp-theme="glass"] .scp-section,[data-scp-theme="glass"] .scp-header { backdrop-filter:blur(14px); }
