/* Theme constants with no admin control. */
:root {
    --nx-transition:      0.15s ease;
    --nx-transition-slow: 0.2s ease;
    --nx-transition-fast: 0.12s ease;

    --nx-success-alt:     #12b76a;
    --nx-danger-alt:      #ef4444;
    --nx-warning-alt:     #f79009;
    --nx-violet:          #7c5cff;
}

/* Defaults for the admin-controlled tokens, used only when the Nexum addon is off.
   :where() keeps them at zero specificity so the addon's own :root / .nx-dark always win. */
:where(:root) {
    --nx-primary: #2563eb;
    --nx-primary-rgb: 37, 99, 235;
    --nx-primary-light: #e9effd;
    --nx-primary-light-rgb: 233, 239, 253;
    --nx-primary-hover: #1d4ed8;
    --nx-secondary: #1d4ed8;
    --nx-secondary-rgb: 29, 78, 216;
    --nx-btn-primary: #2563eb;
    --nx-btn-primary-hover: #1d4ed8;
    --nx-btn-primary-text: #ffffff;
    --nx-btn-secondary: var(--nx-card-bg);
    --nx-btn-secondary-hover: var(--nx-card-bg);
    --nx-btn-secondary-text: var(--nx-text);
    --nx-btn-secondary-border: var(--nx-border);
    --nx-footer-cols: 3;
    --nx-footer-total: 4;
    --nx-accent: #2563eb;
    --nx-accent-rgb: 37, 99, 235;
    --nx-success: #0f9d5c;
    --nx-success-rgb: 15, 157, 92;
    --nx-warning: #d17400;
    --nx-warning-rgb: 209, 116, 0;
    --nx-danger: #f04438;
    --nx-danger-rgb: 240, 68, 56;
    --nx-info: #2563eb;
    --nx-info-rgb: 37, 99, 235;
    --nx-on-primary: #ffffff;
    --nx-bg: #eef1f6;
    --nx-card-bg: #ffffff;
    --nx-text: #101828;
    --nx-muted: #667085;
    --nx-muted-rgb: 102, 112, 133;
    --nx-border: #e8edf3;
    --nx-header-bg: #ffffff;
    --nx-sidebar-bg: #ffffff;
    --nx-sidebar-text: #667085;
    --nx-footer-bg: #ffffff;
    --nx-link: #2563eb;
    --nx-shadow: 0 4px 24px rgba(15, 23, 42, 0.06);
    --nx-shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.04);
    --nx-shadow-button: 0 4px 12px rgba(var(--nx-primary-rgb), 0.15);
    --nx-pill-active-bg: #eefdf6;
    --nx-pill-active-text: #067a50;
    --nx-pill-pending-bg: #fffaeb;
    --nx-pill-pending-text: #8a4413;
    --nx-pill-suspended-bg: #ffedd5;
    --nx-pill-suspended-text: #c2410c;
    --nx-pill-cancelled-bg: #fef3f2;
    --nx-pill-cancelled-text: #c0281a;
    --nx-pill-open-bg: #eff4ff;
    --nx-pill-open-text: #2563eb;
    --nx-pill-answered-bg: #eff4ff;
    --nx-pill-answered-text: #2563eb;
    --nx-pill-closed-bg: #f1f5f9;
    --nx-pill-closed-text: #475569;
    --nx-font-family: 'Poppins', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    --nx-heading-font-family: var(--nx-font-family);
    --nx-link-decoration: none;
    --nx-font-size: 14px;
    --nx-font-size-h1: 30px;
    --nx-font-size-h2: 22px;
    --nx-font-size-h3: 18px;
    --nx-font-size-sm: 12px;
    --nx-font-size-xs: calc(var(--nx-font-size) - 3px);
    --nx-font-size-md: calc(var(--nx-font-size) - 0.5px);
    --nx-font-size-lg: calc(var(--nx-font-size) + 1px);
    --nx-font-size-xl: calc(var(--nx-font-size) + 2px);
    --nx-weight-body: 400;
    --nx-weight-heading: 600;
    --nx-weight-button: 400;
    --nx-weight-nav: 400;
    --nx-weight-footer: 400;
    --nx-weight-page-title: 600;
    --nx-weight-card-title: 600;
    --nx-weight-button-secondary: 400;
    --nx-line-height: 1.6;
    --nx-letter-spacing: 0px;
    --nx-heading-transform: none;
    --nx-radius-card: 18px;
    --nx-radius-button: 11px;
    --nx-radius-input: 11px;
    --nx-radius-badge: 999px;
    --nx-radius-sm: calc(var(--nx-radius-card) * 0.45);
    --nx-radius-md: calc(var(--nx-radius-card) * 0.65);
    --nx-nav-icon-size: 19px;
    --nx-nav-icon-size-sm: 18px;
    --nx-nav-icon-size-mobile: 16px;
    --nx-side-icon-size: 15px;
    --nx-fa-scale: 1;
    --nx-space-1: 4px;
    --nx-space-2: 8px;
    --nx-space-3: 12px;
    --nx-space-4: 16px;
    --nx-space-5: 20px;
    --nx-space-6: 24px;
    --nx-space-7: 32px;
    --nx-space-8: 40px;
    --nx-border-width: 1px;
    --nx-sidebar-width: 260px;
    --nx-sidebar-width-compact: 210px;
    --nx-sidebar-width-icons: 72px;
    --nx-container-width: 1280px;
    --nx-content-padding: 32px;
    --nx-card-padding: 20px;
    --nx-card-gap: 22px;
    --nx-header-height: 64px;
    --nx-topbar-utility-height: 48px;
    --nx-topbar-gutter: 20px;
    --nx-logo-height: 36px;
    --nx-btn-transform: none;
}
:where(.nx-dark) {
    --nx-primary: #1d4ed8;
    --nx-primary-rgb: 29, 78, 216;
    --nx-primary-light: #e8edfb;
    --nx-primary-light-rgb: 232, 237, 251;
    --nx-primary-hover: #1d4ed8;
    --nx-secondary: #1d4ed8;
    --nx-secondary-rgb: 29, 78, 216;
    --nx-btn-primary: #1d4ed8;
    --nx-btn-primary-hover: #1d4ed8;
    --nx-btn-primary-text: #ffffff;
    --nx-btn-secondary: var(--nx-card-bg);
    --nx-btn-secondary-hover: var(--nx-card-bg);
    --nx-btn-secondary-text: var(--nx-text);
    --nx-btn-secondary-border: var(--nx-border);
    --nx-footer-cols: 3;
    --nx-footer-total: 4;
    --nx-accent: #1d4ed8;
    --nx-accent-rgb: 29, 78, 216;
    --nx-success: #12b76a;
    --nx-success-rgb: 18, 183, 106;
    --nx-warning: #f79009;
    --nx-warning-rgb: 247, 144, 9;
    --nx-danger: #f04438;
    --nx-danger-rgb: 240, 68, 56;
    --nx-info: #3b82f6;
    --nx-info-rgb: 59, 130, 246;
    --nx-on-primary: #0f1219;
    --nx-bg: #0f1219;
    --nx-card-bg: #171b26;
    --nx-text: #e2e8f0;
    --nx-muted: #8b93a7;
    --nx-muted-rgb: 139, 147, 167;
    --nx-border: #232937;
    --nx-header-bg: #171b26;
    --nx-sidebar-bg: #12151f;
    --nx-sidebar-text: #94a3b8;
    --nx-footer-bg: #12151f;
    --nx-link: #5686ef;
    --nx-shadow: 0 4px 24px rgba(0, 0, 0, 0.35);
    --nx-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.35);
    --nx-shadow-button: 0 4px 12px rgba(var(--nx-primary-rgb), 0.15);
    --nx-pill-active-bg: rgba(34, 197, 94, 0.16);
    --nx-pill-active-text: #4ade80;
    --nx-pill-pending-bg: rgba(245, 158, 11, 0.16);
    --nx-pill-pending-text: #fbbf24;
    --nx-pill-suspended-bg: rgba(249, 115, 22, 0.16);
    --nx-pill-suspended-text: #fb923c;
    --nx-pill-cancelled-bg: rgba(239, 68, 68, 0.16);
    --nx-pill-cancelled-text: #f87171;
    --nx-pill-open-bg: rgba(99, 102, 241, 0.16);
    --nx-pill-open-text: #a5b4fc;
    --nx-pill-answered-bg: rgba(59, 130, 246, 0.16);
    --nx-pill-answered-text: #93c5fd;
    --nx-pill-closed-bg: rgba(148, 163, 184, 0.16);
    --nx-pill-closed-text: #cbd5e1;
}
