/* =============================================================================
   Nexus Command — Colour Tokens
   
   System apps: dashboards, ops tools, data views, event monitors.
   Portal shell uses nexus-horizon colours instead.
   
   Usage: link this BEFORE nexus-command.css in _Host.cshtml.
   Set data-theme="dark" or data-theme="light" on <html>.
   Dark is the default when no attribute is present.
   Theme toggled by theme-toggle.js → NexusTheme.toggle()
   ============================================================================= */

/* ── Dark (default) ─────────────────────────────────────────────────────────── */
:root,
[data-theme="dark"] {
    /* Backgrounds */
    --nc-bg:            #071219;
    --nc-bg-raised:     #0b1821;
    --nc-bg-overlay:    #10212d;
    --nc-sidebar-bg:    #060f16;
    --nc-topbar-bg:     rgba(6, 15, 22, 0.94);
    --nc-panel:         rgba(11, 24, 33, 0.84);
    --nc-panel-hover:   rgba(15, 31, 42, 0.94);

    /* Borders */
    --nc-border:        rgba(6, 79, 118, 0.22);
    --nc-border-focus:  rgba(6, 79, 118, 0.52);

    /* Text */
    --nc-text:          #e9eef2;
    --nc-text-muted:    #b7c0c7;
    --nc-text-dim:      #7a8791;
    --nc-text-on-accent: #f7fbfd;

    /* Accent — I161 primary blue */
    --nc-accent:        #064f76;
    --nc-accent-hover:  #0a6a9d;
    --nc-accent-dim:    rgba(6, 79, 118, 0.18);

    /* Signal — I161 secondary gray */
    --nc-signal:        #636466;
    --nc-signal-dim:    rgba(99, 100, 102, 0.16);

    /* Semantic status */
    --nc-ok:            #22d47e;
    --nc-warn:          #f4c340;
    --nc-error:         #f26b6b;
    --nc-info:          #38bdf8;
    --nc-ok-bg:         rgba(34, 212, 126, 0.10);
    --nc-warn-bg:       rgba(244, 195, 64, 0.10);
    --nc-error-bg:      rgba(242, 107, 107, 0.10);
    --nc-info-bg:       rgba(56, 189, 248, 0.10);

    /* Shadows */
    --nc-shadow-sm:     0 2px 8px rgba(2, 8, 18, 0.40);
    --nc-shadow:        0 8px 32px rgba(2, 8, 18, 0.55);
    --nc-shadow-lg:     0 24px 80px rgba(2, 8, 18, 0.65);

    /* Background gradients */
    --nc-body-bg:
        radial-gradient(ellipse at top left,  rgba(6, 79, 118, 0.18) 0%, transparent 36%),
        radial-gradient(ellipse at 88% 10%,   rgba(99, 100, 102, 0.14) 0%, transparent 32%),
        linear-gradient(160deg, #050b10 0%, #081118 45%, #0d1922 100%);
}

/* ── Light ──────────────────────────────────────────────────────────────────── */
[data-theme="light"] {
    --nc-bg:            #f0f4f8;
    --nc-bg-raised:     #ffffff;
    --nc-bg-overlay:    #e6ecef;
    --nc-sidebar-bg:    #ebeff2;
    --nc-topbar-bg:     rgba(242, 245, 247, 0.95);
    --nc-panel:         rgba(255, 255, 255, 0.88);
    --nc-panel-hover:   rgba(255, 255, 255, 0.98);

    --nc-border:        rgba(6, 79, 118, 0.16);
    --nc-border-focus:  rgba(6, 79, 118, 0.42);

    --nc-text:          #152632;
    --nc-text-muted:    #51626e;
    --nc-text-dim:      #8d989f;
    --nc-text-on-accent: #ffffff;

    --nc-accent:        #064f76;
    --nc-accent-hover:  #0a6a9d;
    --nc-accent-dim:    rgba(6, 79, 118, 0.09);

    --nc-signal:        #636466;
    --nc-signal-dim:    rgba(99, 100, 102, 0.10);

    --nc-ok:            #16a34a;
    --nc-warn:          #b45309;
    --nc-error:         #dc2626;
    --nc-info:          #0369a1;
    --nc-ok-bg:         rgba(22, 163, 74, 0.08);
    --nc-warn-bg:       rgba(180, 83, 9, 0.08);
    --nc-error-bg:      rgba(220, 38, 38, 0.08);
    --nc-info-bg:       rgba(3, 105, 161, 0.08);

    --nc-shadow-sm:     0 2px 8px rgba(10, 30, 60, 0.07);
    --nc-shadow:        0 8px 32px rgba(10, 30, 60, 0.11);
    --nc-shadow-lg:     0 24px 80px rgba(10, 30, 60, 0.16);

    --nc-body-bg:       linear-gradient(180deg, #f2f5f7 0%, #eef2f5 100%);
}
