/* ========================================================================== 
   CPS Aurora Design System — Enterprise Glass evolution
   Shared visual language for CPS SaaS Desk surfaces and dialogs.
   Keep domain CSS focused on layout; visual primitives live here.
   ========================================================================== */

:is(.cps-saas-scope, [data-cps-saas-scope="1"]),
.cps-saas-modal,
.cps-saas-toast,
.cps-saas-portal,
.cps-site-command-center,
.cps-settings-overview {
    --cps-primary: #4f46e5;
    --cps-primary-strong: #4338ca;
    --cps-accent: #06b6d4;
    --cps-success: #16a34a;
    --cps-warning: #d97706;
    --cps-danger: #dc2626;
    --cps-info: #0284c7;
    --cps-ink: #0f172a;
    --cps-text: #334155;
    --cps-muted: #64748b;
    --cps-canvas: #eef3fb;
    --cps-surface: rgba(255, 255, 255, .62);
    --cps-surface-raised: rgba(255, 255, 255, .82);
    --cps-surface-soft: rgba(248, 250, 252, .68);
    --cps-control-bg: rgba(255, 255, 255, .88);
    --cps-border: rgba(148, 163, 184, .22);
    --cps-border-strong: rgba(100, 116, 139, .30);
    --cps-glass-highlight: rgba(255, 255, 255, .58);
    --cps-glass-blur: 20px;
    --cps-glass-saturate: 140%;
    --cps-primary-soft: rgba(79, 70, 229, .10);
    --cps-accent-soft: rgba(6, 182, 212, .10);
    --cps-success-soft: rgba(22, 163, 74, .10);
    --cps-warning-soft: rgba(217, 119, 6, .11);
    --cps-danger-soft: rgba(220, 38, 38, .09);
    --cps-info-soft: rgba(2, 132, 199, .10);
    --cps-radius-xs: 10px;
    --cps-radius-sm: 12px;
    --cps-radius-md: 16px;
    --cps-radius-lg: 22px;
    --cps-radius-xl: 28px;
    --cps-shadow-sm: 0 8px 24px rgba(15, 23, 42, .07), inset 0 1px 0 var(--cps-glass-highlight);
    --cps-shadow-md: 0 18px 48px rgba(15, 23, 42, .11), inset 0 1px 0 var(--cps-glass-highlight);
    --cps-shadow-lg: 0 34px 90px rgba(15, 23, 42, .20), inset 0 1px 0 var(--cps-glass-highlight);
    --cps-focus: 0 0 0 3px rgba(79, 70, 229, .16);
    --cps-transition: 160ms cubic-bezier(.2, .8, .2, 1);
    --cps-ui-primary: var(--cps-primary);
    --cps-ui-accent: var(--cps-accent);
    --cps-ui-soft: var(--cps-primary-soft);
}

[data-theme="dark"] :is(.cps-saas-scope, [data-cps-saas-scope="1"]),
[data-theme="dark"] .cps-saas-modal,
[data-theme="dark"] .cps-saas-toast,
[data-theme="dark"] .cps-saas-portal,
[data-theme="dark"] .cps-site-command-center,
[data-theme="dark"] .cps-settings-overview,
:is(.cps-saas-scope, [data-cps-saas-scope="1"])[data-theme="dark"],
.cps-saas-modal[data-theme="dark"] {
    --cps-ink: #f8fafc;
    --cps-text: #e2e8f0;
    --cps-muted: #94a3b8;
    --cps-canvas: #07111f;
    --cps-surface: rgba(15, 23, 42, .66);
    --cps-surface-raised: rgba(17, 28, 48, .82);
    --cps-surface-soft: rgba(23, 32, 51, .70);
    --cps-control-bg: rgba(15, 23, 42, .86);
    --cps-border: rgba(148, 163, 184, .18);
    --cps-border-strong: rgba(148, 163, 184, .30);
    --cps-glass-highlight: rgba(255, 255, 255, .07);
    --cps-shadow-sm: 0 10px 28px rgba(0, 0, 0, .22), inset 0 1px 0 var(--cps-glass-highlight);
    --cps-shadow-md: 0 20px 56px rgba(0, 0, 0, .32), inset 0 1px 0 var(--cps-glass-highlight);
    --cps-shadow-lg: 0 36px 100px rgba(0, 0, 0, .46), inset 0 1px 0 var(--cps-glass-highlight);
}

/* Context accents: same product, different operational meaning. */
.cps-saas-modal[data-cps-variant="apps"] { --cps-ui-primary: #0f766e; --cps-ui-accent: #22c55e; --cps-ui-soft: rgba(15, 118, 110, .11); }
.cps-saas-modal[data-cps-variant="transfer"] { --cps-ui-primary: #7c3aed; --cps-ui-accent: #0ea5e9; --cps-ui-soft: rgba(124, 58, 237, .10); }
.cps-saas-modal[data-cps-variant="recovery"] { --cps-ui-primary: #0369a1; --cps-ui-accent: #14b8a6; --cps-ui-soft: rgba(3, 105, 161, .10); }
.cps-saas-modal[data-cps-variant="progress"] { --cps-ui-primary: #4f46e5; --cps-ui-accent: #06b6d4; --cps-ui-soft: rgba(79, 70, 229, .10); }
.cps-saas-modal[data-cps-variant="infrastructure"] { --cps-ui-primary: #334155; --cps-ui-accent: #0ea5e9; --cps-ui-soft: rgba(51, 65, 85, .10); }
.cps-saas-modal[data-cps-variant="security"] { --cps-ui-primary: #0f766e; --cps-ui-accent: #0891b2; --cps-ui-soft: rgba(15, 118, 110, .10); }
.cps-saas-modal[data-cps-variant="support"] { --cps-ui-primary: #2563eb; --cps-ui-accent: #8b5cf6; --cps-ui-soft: rgba(37, 99, 235, .10); }
.cps-saas-modal[data-cps-variant="billing"] { --cps-ui-primary: #047857; --cps-ui-accent: #84cc16; --cps-ui-soft: rgba(4, 120, 87, .10); }
.cps-saas-modal[data-cps-variant="warning"] { --cps-ui-primary: var(--cps-warning); --cps-ui-accent: #f59e0b; --cps-ui-soft: var(--cps-warning-soft); }
.cps-saas-modal[data-cps-variant="danger"],
.cps-saas-modal[data-cps-variant="error"] { --cps-ui-primary: var(--cps-danger); --cps-ui-accent: #f97316; --cps-ui-soft: var(--cps-danger-soft); }
.cps-saas-modal[data-cps-variant="success"] { --cps-ui-primary: var(--cps-success); --cps-ui-accent: #14b8a6; --cps-ui-soft: var(--cps-success-soft); }
.cps-saas-modal[data-cps-variant="info"],
.cps-saas-modal[data-cps-variant="confirm"] { --cps-ui-primary: var(--cps-info); --cps-ui-accent: #6366f1; --cps-ui-soft: var(--cps-info-soft); }

/* --------------------------------------------------------------------------
   Desk page scope
   -------------------------------------------------------------------------- */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .layout-main-section,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .form-dashboard-section,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .form-section {
    --border-color: var(--cps-border);
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head .btn,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-actions .btn,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .form-footer .btn,
.cps-saas-modal .btn,
.cps-saas-portal .btn {
    border-radius: var(--cps-radius-sm);
    font-weight: 650;
    transition: transform var(--cps-transition), box-shadow var(--cps-transition), border-color var(--cps-transition), background var(--cps-transition);
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head .btn:not(.btn-xs):not(.btn-sm),
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-actions .btn:not(.btn-xs):not(.btn-sm),
.cps-saas-modal .modal-footer .btn:not(.btn-xs),
.cps-saas-portal .btn:not(.btn-sm) {
    min-height: 38px;
    padding-inline: 17px;
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-primary,
.cps-saas-modal .btn-primary,
.cps-saas-portal .btn-primary,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-primary-enhanced,
.cps-saas-modal .btn-primary-enhanced {
    color: #fff !important;
    border-color: transparent !important;
    background: linear-gradient(135deg, var(--cps-ui-primary), var(--cps-ui-accent)) !important;
    box-shadow: 0 8px 20px var(--cps-ui-soft);
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-primary:hover,
.cps-saas-modal .btn-primary:hover,
.cps-saas-portal .btn-primary:hover,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-primary-enhanced:hover,
.cps-saas-modal .btn-primary-enhanced:hover {
    transform: translateY(-1px);
    box-shadow: 0 11px 26px var(--cps-ui-soft);
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-default,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-secondary,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-outline-secondary,
.cps-saas-modal .btn-default,
.cps-saas-modal .btn-secondary,
.cps-saas-modal .btn-outline-secondary,
.cps-saas-portal .btn-outline-secondary,
.cps-saas-portal .btn-outline-primary {
    color: var(--cps-text) !important;
    border-color: var(--cps-border-strong) !important;
    background: var(--cps-surface-raised) !important;
    box-shadow: var(--cps-shadow-sm);
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-danger,
.cps-saas-modal .btn-danger,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-danger-enhanced,
.cps-saas-modal .btn-danger-enhanced {
    color: #fff !important;
    border-color: transparent !important;
    background: linear-gradient(135deg, #dc2626, #f97316) !important;
    box-shadow: 0 8px 20px var(--cps-danger-soft);
}

:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-success-enhanced,
.cps-saas-modal .btn-success-enhanced,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-success,
.cps-saas-modal .btn-success {
    color: #fff !important;
    border-color: transparent !important;
    background: linear-gradient(135deg, #15803d, #14b8a6) !important;
}

:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-warning-enhanced,
.cps-saas-modal .btn-warning-enhanced,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-warning,
.cps-saas-modal .btn-warning {
    color: #fff !important;
    border-color: transparent !important;
    background: linear-gradient(135deg, #d97706, #f59e0b) !important;
}

:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-info-enhanced,
.cps-saas-modal .btn-info-enhanced,
:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn-info,
.cps-saas-modal .btn-info {
    color: #fff !important;
    border-color: transparent !important;
    background: linear-gradient(135deg, #0284c7, #06b6d4) !important;
}

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .btn:focus-visible,
.cps-saas-modal .btn:focus-visible,
.cps-saas-portal .btn:focus-visible,
.cps-saas-modal input:focus-visible,
.cps-saas-modal select:focus-visible,
.cps-saas-modal textarea:focus-visible,
.cps-saas-portal input:focus-visible,
.cps-saas-portal select:focus-visible,
.cps-saas-portal textarea:focus-visible {
    outline: none;
    box-shadow: var(--cps-focus) !important;
}

/* --------------------------------------------------------------------------
   Dialog shell + forms
   -------------------------------------------------------------------------- */
.cps-saas-modal .modal-dialog { padding-inline: 8px; }
.cps-saas-modal .modal-content {
    color: var(--cps-text);
    border: 1px solid var(--cps-border) !important;
    border-radius: var(--cps-radius-xl) !important;
    overflow: hidden;
    background: linear-gradient(145deg, var(--cps-surface-raised), var(--cps-surface)) !important;
    box-shadow: var(--cps-shadow-lg) !important;
    -webkit-backdrop-filter: blur(var(--cps-glass-blur)) saturate(var(--cps-glass-saturate));
    backdrop-filter: blur(var(--cps-glass-blur)) saturate(var(--cps-glass-saturate));
}
.cps-saas-modal .modal-content::before {
    content: "";
    display: block;
    height: 4px;
    background: linear-gradient(90deg, var(--cps-ui-primary), var(--cps-ui-accent));
}
.cps-saas-modal .modal-header {
    padding: 20px 24px 15px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--cps-border) !important;
    background: linear-gradient(135deg, var(--cps-ui-soft), rgba(255, 255, 255, .08) 72%, transparent) !important;
}
.cps-saas-modal .modal-title {
    color: var(--cps-ink) !important;
    font-size: 18px !important;
    font-weight: 760 !important;
    letter-spacing: -.015em;
}
.cps-saas-modal .modal-header .close,
.cps-saas-modal .modal-header .btn-modal-close {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    color: var(--cps-muted);
    background: transparent;
    transition: background var(--cps-transition), color var(--cps-transition);
}
.cps-saas-modal .modal-header .close:hover,
.cps-saas-modal .modal-header .btn-modal-close:hover { color: var(--cps-ink); background: var(--cps-ui-soft); }
.cps-saas-modal .modal-body { padding: 18px 24px 24px !important; background: transparent !important; }
.cps-saas-modal .modal-footer {
    gap: 8px;
    padding: 16px 24px 20px !important;
    border-top: 1px solid var(--cps-border) !important;
    background: var(--cps-surface-soft) !important;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}
.cps-saas-modal .form-control,
.cps-saas-modal .control-input,
.cps-saas-modal .awesomplete > input,
.cps-saas-modal select,
.cps-saas-modal textarea {
    color: var(--cps-text);
    border-color: var(--cps-border-strong) !important;
    border-radius: var(--cps-radius-sm) !important;
    background: var(--cps-control-bg) !important;
    transition: border-color var(--cps-transition), box-shadow var(--cps-transition), background var(--cps-transition);
}
.cps-saas-modal .form-control:focus,
.cps-saas-modal .control-input:focus,
.cps-saas-modal .awesomplete > input:focus,
.cps-saas-modal select:focus,
.cps-saas-modal textarea:focus {
    border-color: var(--cps-ui-primary) !important;
    box-shadow: var(--cps-focus) !important;
}
.cps-saas-modal .control-label,
.cps-saas-modal label { color: var(--cps-text); font-weight: 620; }
.cps-saas-modal .help-box,
.cps-saas-modal .description,
.cps-saas-modal .text-muted { color: var(--cps-muted) !important; }
.cps-saas-modal .section-head,
.cps-saas-modal .section-heading { color: var(--cps-ink); font-weight: 720; }
.cps-saas-modal hr { border-color: var(--cps-border); }
.cps-saas-modal .dropdown-menu {
    border: 1px solid var(--cps-border);
    border-radius: var(--cps-radius-md);
    background: var(--cps-surface-raised);
    box-shadow: var(--cps-shadow-md);
}

/* --------------------------------------------------------------------------
   Messages, alerts and confirmations
   -------------------------------------------------------------------------- */
.custom-message-container {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    max-width: 100%;
    padding: 16px;
    margin: 0;
    border: 1px solid transparent;
    border-radius: var(--cps-radius-md, 16px);
    font-family: inherit;
}
.custom-message-icon { flex: 0 0 auto; font-size: 22px; }
.custom-message-content { flex: 1; min-width: 0; }
.custom-message-title { margin-bottom: 5px; font-weight: 760; line-height: 1.4; }
.custom-message-body { line-height: 1.6; overflow-wrap: anywhere; }
.message-list { margin: 12px 0 0; padding: 0; list-style: none; }
.message-list li { display: flex; align-items: flex-start; gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--cps-border, rgba(148,163,184,.22)); }
.message-list li:last-child { border-bottom: 0; }
[dir="rtl"] .custom-message-container { text-align: right; }

.cps-saas-modal .custom-message-container,
.cps-saas-modal .enhanced-alert,
.cps-saas-modal .alert,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .alert,
.cps-saas-portal .alert {
    border-width: 1px !important;
    border-radius: var(--cps-radius-md) !important;
    box-shadow: none !important;
}
.cps-saas-modal .custom-message-container {
    max-width: none;
    margin: 0;
    padding: 16px;
    gap: 13px;
    font-family: inherit;
    border-inline-start-width: 4px !important;
    background-clip: padding-box !important;
}
.cps-saas-modal .custom-message-title { color: inherit; font-size: 15px; font-weight: 760; letter-spacing: -.01em; }
.cps-saas-modal .custom-message-icon {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border-radius: 14px;
    background: rgba(255, 255, 255, .46);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .60);
}
.cps-saas-modal .custom-message-body { line-height: 1.6; }
.cps-saas-modal .message-success,
.cps-saas-modal .alert-success { color: #166534; border-color: rgba(22, 163, 74, .22) !important; background: var(--cps-success-soft) !important; }
.cps-saas-modal .message-error,
.cps-saas-modal .alert-danger,
.cps-saas-modal .alert-error { color: #991b1b; border-color: rgba(220, 38, 38, .22) !important; background: var(--cps-danger-soft) !important; }
.cps-saas-modal .message-warning,
.cps-saas-modal .alert-warning { color: #92400e; border-color: rgba(217, 119, 6, .22) !important; background: var(--cps-warning-soft) !important; }
.cps-saas-modal .message-info,
.cps-saas-modal .message-confirm,
.cps-saas-modal .alert-info { color: #075985; border-color: rgba(2, 132, 199, .22) !important; background: var(--cps-info-soft) !important; }

.cps-saas-toast {
    --cps-toast-color: var(--cps-info);
    --cps-toast-soft: var(--cps-info-soft);
    min-width: min(420px, calc(100vw - 32px));
    color: var(--cps-text) !important;
    border: 1px solid var(--cps-border) !important;
    border-left: 4px solid var(--cps-toast-color) !important;
    border-radius: var(--cps-radius-md) !important;
    background: linear-gradient(145deg, var(--cps-surface-raised), var(--cps-surface)) !important;
    box-shadow: var(--cps-shadow-md) !important;
    -webkit-backdrop-filter: blur(16px) saturate(130%);
    backdrop-filter: blur(16px) saturate(130%);
}
.cps-saas-toast[data-cps-variant="success"] { --cps-toast-color: var(--cps-success); --cps-toast-soft: var(--cps-success-soft); }
.cps-saas-toast[data-cps-variant="warning"] { --cps-toast-color: var(--cps-warning); --cps-toast-soft: var(--cps-warning-soft); }
.cps-saas-toast[data-cps-variant="danger"],
.cps-saas-toast[data-cps-variant="error"] { --cps-toast-color: var(--cps-danger); --cps-toast-soft: var(--cps-danger-soft); }
.cps-saas-toast[data-cps-variant="info"] { --cps-toast-color: var(--cps-info); --cps-toast-soft: var(--cps-info-soft); }
.cps-saas-toast .alert-message-container { padding: 0; margin: 0; border: 0; box-shadow: none; background: transparent; color: inherit; }

/* --------------------------------------------------------------------------
   Cards, metrics, tabs, tables, badges
   -------------------------------------------------------------------------- */
.cps-saas-modal .enhanced-card,
.cps-saas-modal .stat-card,
.cps-saas-modal .metric-card,
.cps-saas-modal .migrate-details-card,
.cps-saas-modal .ssl-details-card,
.cps-saas-modal .maintenance-details-card,
.cps-saas-modal .developer-details-card,
.cps-saas-modal .domain-info-box,
.cps-saas-modal .app-card,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .enhanced-card,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .metric-card {
    color: var(--cps-text);
    border: 1px solid var(--cps-border) !important;
    border-radius: var(--cps-radius-lg) !important;
    background: linear-gradient(145deg, var(--cps-surface-raised), var(--cps-surface)) !important;
    box-shadow: var(--cps-shadow-sm) !important;
    -webkit-backdrop-filter: blur(14px) saturate(125%);
    backdrop-filter: blur(14px) saturate(125%);
}
.cps-saas-modal .enhanced-card:hover,
.cps-saas-modal .app-card:hover,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .enhanced-card:hover {
    transform: translateY(-2px);
    border-color: var(--cps-ui-primary) !important;
    box-shadow: var(--cps-shadow-md) !important;
}
.cps-saas-modal .app-card .app-icon,
.cps-saas-modal .stat-icon,
.cps-saas-modal .metric-icon { color: var(--cps-ui-primary) !important; }
.cps-saas-modal .app-card .app-name,
.cps-saas-modal .stat-title,
.cps-saas-modal .metric-label { color: var(--cps-text) !important; }
.cps-saas-modal .stat-value,
.cps-saas-modal .metric-value { color: var(--cps-ink) !important; }

.cps-saas-modal .nav-tabs,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .nav-tabs { border-bottom-color: var(--cps-border) !important; }
.cps-saas-modal .nav-tabs .nav-link,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .nav-tabs .nav-link {
    color: var(--cps-muted);
    border-radius: var(--cps-radius-sm) var(--cps-radius-sm) 0 0;
}
.cps-saas-modal .nav-tabs .nav-link.active,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .nav-tabs .nav-link.active {
    color: var(--cps-ui-primary) !important;
    border-color: var(--cps-border) var(--cps-border) var(--cps-surface) !important;
    background: var(--cps-surface) !important;
}

.cps-saas-modal .enhanced-table,
.cps-saas-modal .table,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .enhanced-table {
    color: var(--cps-text);
    border-color: var(--cps-border);
    border-radius: var(--cps-radius-md);
}
.cps-saas-modal .enhanced-table thead,
.cps-saas-modal .table thead,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .enhanced-table thead { background: var(--cps-surface-soft) !important; }
.cps-saas-modal .enhanced-table th,
.cps-saas-modal .table th { color: var(--cps-ink); font-weight: 700; border-color: var(--cps-border) !important; }
.cps-saas-modal .enhanced-table td,
.cps-saas-modal .table td { border-color: var(--cps-border) !important; }

.cps-saas-modal .enhanced-badge,
.cps-saas-modal .indicator-pill,
.cps-saas-modal .service-status-badge,
.cps-saas-modal .cps-job-status {
    border-radius: 999px !important;
    font-weight: 700;
    letter-spacing: .01em;
}
.cps-saas-modal .badge-success { color: #166534 !important; border-color: rgba(22, 163, 74, .2) !important; background: var(--cps-success-soft) !important; }
.cps-saas-modal .badge-danger { color: #991b1b !important; border-color: rgba(220, 38, 38, .2) !important; background: var(--cps-danger-soft) !important; }
.cps-saas-modal .badge-warning { color: #92400e !important; border-color: rgba(217, 119, 6, .2) !important; background: var(--cps-warning-soft) !important; }
.cps-saas-modal .badge-info { color: #075985 !important; border-color: rgba(2, 132, 199, .2) !important; background: var(--cps-info-soft) !important; }

/* --------------------------------------------------------------------------
   Progress, loading and operation heroes
   -------------------------------------------------------------------------- */
.cps-saas-modal .progress,
.cps-saas-modal .progress-bar-container,
.cps-saas-modal .cps-job-progress-track,
.cps-saas-modal .cps-progress-container,
.cps-saas-portal .progress {
    overflow: hidden;
    border-radius: 999px !important;
    background: var(--cps-surface-soft) !important;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, .06) !important;
}
.cps-saas-modal .progress-bar,
.cps-saas-modal .progress-dialog-bar,
.cps-saas-modal .cps-job-progress-track .progress-bar,
.cps-saas-modal .cps-progress-bar,
.cps-saas-portal .progress-bar {
    border-radius: inherit;
    background: linear-gradient(90deg, var(--cps-ui-primary), var(--cps-ui-accent)) !important;
}
.cps-saas-modal .loading-spinner,
.cps-saas-modal .migrate-loader,
.cps-saas-modal .ssl-loader { border-color: var(--cps-border); border-top-color: var(--cps-ui-primary) !important; }
.cps-saas-modal .cps-operation-hero {
    border: 1px solid var(--cps-border) !important;
    border-radius: var(--cps-radius-lg) !important;
    background: linear-gradient(135deg, var(--cps-ui-soft), transparent) !important;
}
.cps-saas-modal .cps-operation-hero-icon,
.cps-saas-modal .cps-job-orbit {
    background: linear-gradient(135deg, var(--cps-ui-primary), var(--cps-ui-accent)) !important;
    box-shadow: 0 12px 28px var(--cps-ui-soft) !important;
}
.cps-saas-modal .cps-operation-kicker,
.cps-saas-modal .cps-job-status { color: var(--cps-ui-primary) !important; }
.cps-saas-modal .cps-operation-flow span,
.cps-saas-modal .cps-job-meta code,
.cps-saas-modal .cps-job-status { background: var(--cps-ui-soft) !important; }

/* --------------------------------------------------------------------------
   Legacy dialog mappings: preserve markup, normalize visual language.
   -------------------------------------------------------------------------- */
.cps-saas-modal .migrate-confirm-header,
.cps-saas-modal .ssl-confirm-header,
.cps-saas-modal .maintenance-confirm-header,
.cps-saas-modal .developer-confirm-header,
.cps-saas-modal .warning-header,
.cps-saas-modal .apps-header,
.cps-saas-modal .uninstall-header,
.cps-saas-modal .stats-header {
    color: var(--cps-ink) !important;
    border-color: var(--cps-border) !important;
    background: transparent !important;
}
.cps-saas-modal .migrate-warning-box,
.cps-saas-modal .ssl-warning-box,
.cps-saas-modal .maintenance-warning-box,
.cps-saas-modal .developer-warning-box,
.cps-saas-modal .warning-note {
    color: #92400e !important;
    border: 1px solid rgba(217, 119, 6, .22) !important;
    border-radius: var(--cps-radius-md) !important;
    background: var(--cps-warning-soft) !important;
}
.cps-saas-modal .features-grid,
.cps-saas-modal .apps-grid,
.cps-saas-modal .stats-grid { gap: 14px !important; }

.cps-saas-modal .indicator {
    display: inline-flex;
    align-items: center;
    padding: 4px 8px;
    border: 1px solid var(--cps-border);
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
}
.cps-saas-modal .indicator.green { color: var(--cps-success); background: var(--cps-success-soft); }
.cps-saas-modal .indicator.red { color: var(--cps-danger); background: var(--cps-danger-soft); }
.cps-saas-modal .indicator.orange { color: var(--cps-warning); background: var(--cps-warning-soft); }
.cps-saas-modal .indicator.grey { color: var(--cps-muted); background: var(--cps-surface-soft); }
.cps-saas-modal .indicator.blue { color: var(--cps-info); background: var(--cps-info-soft); }

.cps-saas-modal .cps-operation-hero { display: flex; gap: 16px; align-items: center; padding: 18px; margin-bottom: 16px; }
.cps-saas-modal .cps-operation-hero-icon { width: 52px; height: 52px; flex: 0 0 52px; display: grid; place-items: center; border-radius: 16px; color: #fff; font-size: 20px; }
.cps-saas-modal .cps-operation-hero h3 { margin: 0 0 4px; color: var(--cps-ink); font-size: 18px; font-weight: 760; }
.cps-saas-modal .cps-operation-hero p { margin: 0; color: var(--cps-muted); line-height: 1.55; }
.cps-saas-modal .cps-operation-flow { display: flex; align-items: center; justify-content: center; gap: 7px; flex-wrap: wrap; margin: 6px 0 20px; color: var(--cps-muted); font-size: 11px; }
.cps-saas-modal .cps-operation-flow span { display: inline-flex; align-items: center; gap: 6px; padding: 6px 9px; border-radius: 999px; }
.cps-saas-modal .cps-operation-flow b { width: 18px; height: 18px; display: grid; place-items: center; border-radius: 999px; color: #fff; background: var(--cps-ui-primary); font-size: 10px; }
.cps-saas-modal .cps-saas-job-progress { min-height: 190px; padding: 8px 2px 0; text-align: center; }
.cps-saas-modal .cps-job-orbit { width: 68px; height: 68px; margin: 0 auto 12px; position: relative; display: grid; place-items: center; border-radius: 22px; color: #fff; font-size: 22px; }
.cps-saas-modal .cps-job-orbit-dot { position: absolute; width: 9px; height: 9px; left: 0; top: 29px; border-radius: 50%; background: #fff; transform-origin: 34px 34px; animation: cpsJobOrbit 1.8s linear infinite; }
@keyframes cpsJobOrbit { to { transform: rotate(360deg); } }
.cps-saas-modal .cps-job-meta { display: flex; justify-content: center; align-items: center; gap: 8px; flex-wrap: wrap; color: var(--cps-muted); font-size: 12px; }
.cps-saas-modal .cps-job-progress-track { height: 12px; margin: 18px 0 10px; }
.cps-saas-modal .cps-job-progress-footer { display: flex; align-items: baseline; justify-content: center; gap: 9px; color: var(--cps-muted); }
.cps-saas-modal .cps-job-percent { color: var(--cps-ink); font-size: 24px; }
.cps-saas-modal .cps-job-extra { margin-top: 14px; min-height: 18px; color: var(--cps-muted); font-size: 12px; white-space: pre-wrap; overflow-wrap: anywhere; }

/* --------------------------------------------------------------------------
   Reusable future primitives
   -------------------------------------------------------------------------- */
.cps-ui-card {
    padding: 18px;
    border: 1px solid var(--cps-border);
    border-radius: var(--cps-radius-lg);
    background: var(--cps-surface-raised);
    box-shadow: var(--cps-shadow-sm);
}
.cps-ui-card-title { display: flex; align-items: center; gap: 8px; color: var(--cps-ink); margin-bottom: 8px; }
.cps-ui-card-meta { color: var(--cps-muted); font-size: 12px; margin-bottom: 10px; }
.cps-ui-card-body { color: var(--cps-text); }
.cps-ui-metric { display: grid; gap: 3px; padding: 14px; border: 1px solid var(--cps-border); border-radius: var(--cps-radius-md); background: var(--cps-surface-soft); }
.cps-ui-metric > span, .cps-ui-metric > small { color: var(--cps-muted); }
.cps-ui-metric > strong { color: var(--cps-ink); font-size: 22px; line-height: 1.1; }
.cps-ui-section { display: grid; gap: 12px; }
.cps-ui-section > header { display: flex; align-items: center; gap: 8px; color: var(--cps-ink); }
.cps-ui-section > header h4 { margin: 0; }
.cps-ui-spinner { width: 28px; height: 28px; border: 3px solid var(--cps-border); border-top-color: var(--cps-ui-primary); border-radius: 50%; animation: cps-ui-spin .8s linear infinite; }
@keyframes cps-ui-spin { to { transform: rotate(360deg); } }
.cps-ui-empty,
.cps-ui-loading {
    display: grid;
    place-items: center;
    min-height: 150px;
    padding: 24px;
    text-align: center;
    color: var(--cps-muted);
    border: 1px dashed var(--cps-border-strong);
    border-radius: var(--cps-radius-lg);
    background: var(--cps-surface-soft);
}
.cps-ui-status {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 9px;
    border-radius: 999px;
    font-size: 12px;
    font-weight: 700;
    color: var(--cps-ui-primary);
    background: var(--cps-ui-soft);
}

.cps-ui-status[data-cps-variant="success"] { color: var(--cps-success); background: var(--cps-success-soft); }
.cps-ui-status[data-cps-variant="warning"] { color: var(--cps-warning); background: var(--cps-warning-soft); }
.cps-ui-status[data-cps-variant="danger"] { color: var(--cps-danger); background: var(--cps-danger-soft); }
.cps-connection-result { display: grid; gap: 14px; }
.cps-connection-summary { border-left: 4px solid var(--cps-ui-primary); }
.cps-connection-summary.is-success { border-left-color: var(--cps-success); }
.cps-connection-summary.is-warning { border-left-color: var(--cps-warning); }
.cps-connection-summary.is-danger { border-left-color: var(--cps-danger); }
.cps-connection-summary-title { color: var(--cps-ink); font-weight: 800; margin-bottom: 6px; }
.cps-connection-summary-message, .cps-connection-check-message { color: var(--cps-muted); line-height: 1.55; }
.cps-connection-grid { display: grid; gap: 10px; }
.cps-connection-check { padding: 14px 16px; border: 1px solid var(--cps-border); border-radius: var(--cps-radius-md); background: var(--cps-surface-soft); }
.cps-connection-check.is-success { border-color: rgba(22, 163, 74, .24); }
.cps-connection-check.is-warning { border-color: rgba(217, 119, 6, .26); }
.cps-connection-check.is-danger { border-color: rgba(220, 38, 38, .24); }
.cps-connection-check-head { display: flex; align-items: center; gap: 8px; justify-content: space-between; margin-bottom: 6px; color: var(--cps-ink); }
.cps-connection-optional { margin-inline-start: auto; color: var(--cps-muted); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }

[dir="rtl"] .cps-saas-modal .modal-footer,
[dir="rtl"].cps-saas-modal .modal-footer { direction: rtl; }
[dir="rtl"] .cps-saas-toast { border-left-width: 1px !important; border-right: 4px solid var(--cps-toast-color) !important; }

@media (max-width: 600px) {
    .cps-saas-modal .modal-dialog { margin: 10px; padding: 0; }
    .cps-saas-modal .modal-header,
    .cps-saas-modal .modal-body,
    .cps-saas-modal .modal-footer { padding-inline: 16px !important; }
    .cps-saas-modal .modal-footer { flex-wrap: wrap; }
    .cps-saas-modal .modal-footer .btn { flex: 1 1 auto; }
}

@media (prefers-reduced-motion: reduce) {
    :is(.cps-saas-scope, [data-cps-saas-scope="1"]) *,
    .cps-saas-modal *,
    .cps-saas-toast *,
    .cps-saas-portal * {
        scroll-behavior: auto !important;
        animation-duration: .001ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: .001ms !important;
    }
}

/* Zero-query command-center summaries for large administration forms. */
.cps-site-command-center,
.cps-settings-overview {
    display: grid;
    gap: 16px;
    padding: 20px;
    border: 1px solid var(--cps-border);
    border-radius: var(--cps-radius-xl);
    background: linear-gradient(145deg, var(--cps-surface-raised), var(--cps-surface));
    box-shadow: var(--cps-shadow-sm);
    -webkit-backdrop-filter: blur(16px) saturate(130%);
    backdrop-filter: blur(16px) saturate(130%);
}
.cps-site-command-center > header,
.cps-settings-overview > header { display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.cps-site-command-center header small,
.cps-settings-overview header small { color: var(--cps-ui-primary); font-size: 10px; font-weight: 800; letter-spacing: .09em; }
.cps-site-command-center h3,
.cps-settings-overview h3 { margin: 3px 0 0; color: var(--cps-ink); font-size: 18px; font-weight: 780; }
.cps-command-grid,
.cps-settings-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; }
.cps-command-metric,
.cps-settings-card { display: grid; gap: 7px; min-width: 0; padding: 14px; border: 1px solid var(--cps-border); border-radius: var(--cps-radius-md); background: var(--cps-surface-soft); }
.cps-command-metric > span,
.cps-settings-card small,
.cps-command-detail > span { color: var(--cps-muted); font-size: 11px; }
.cps-command-metric > strong,
.cps-settings-card strong,
.cps-command-detail > strong { min-width: 0; color: var(--cps-ink); overflow-wrap: anywhere; }
.cps-command-metric .cps-ui-status { width: max-content; }
.cps-settings-card { grid-template-columns: minmax(0,1fr) auto; align-items: center; }
.cps-settings-card > div { display: grid; gap: 3px; min-width: 0; }
.cps-command-details { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px,1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--cps-border); border-radius: var(--cps-radius-md); background: var(--cps-border); }
.cps-command-detail { display: grid; gap: 4px; padding: 12px 14px; background: var(--cps-surface-raised); }
.cps-settings-note { margin: 0; color: var(--cps-muted); font-size: 12px; line-height: 1.6; }

#cps-saas-support-notify { position: relative; }
#cps-saas-support-notify.has-cps-support-attention > a { animation: cps-saas-support-pulse 1.25s ease-in-out infinite; color: var(--cps-danger, #ef4444); }
#cps-saas-support-notify .indicator-pill { position: absolute; inset-block-start: 2px; inset-inline-end: 0; min-width: 18px; text-align: center; }
#cps-saas-support-notify .cps-saas-chat-pulse { position: absolute; inset-block-start: 4px; inset-inline-start: 5px; width: 9px; height: 9px; border-radius: 999px; background: var(--cps-warning, #f59e0b); box-shadow: 0 0 0 0 rgba(245,158,11,.5); animation: cpsChatPulse 1.5s infinite; }
@keyframes cps-saas-support-pulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.1); } }
@keyframes cpsChatPulse { 70% { box-shadow: 0 0 0 10px rgba(245,158,11,0); } 100% { box-shadow: 0 0 0 0 rgba(245,158,11,0); } }

/* Desk form/list polish inside CPS routes only. */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .form-control,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .control-input,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .awesomplete > input,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .input-with-feedback {
    border-color: var(--cps-border-strong) !important;
    border-radius: var(--cps-radius-sm) !important;
    transition: border-color var(--cps-transition), box-shadow var(--cps-transition), background var(--cps-transition);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .form-control:focus,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .control-input:focus,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .awesomplete > input:focus,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .input-with-feedback:focus {
    border-color: var(--cps-primary) !important;
    box-shadow: var(--cps-focus) !important;
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .control-label,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .section-head,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .section-heading { color: var(--cps-text); font-weight: 650; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .section-head,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .section-heading { color: var(--cps-ink); letter-spacing: -.01em; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .indicator-pill { border-radius: 999px; font-weight: 700; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .freeze-message {
    padding: 12px 16px;
    color: var(--cps-text);
    border: 1px solid var(--cps-border);
    border-radius: var(--cps-radius-md);
    background: var(--cps-surface-raised);
    box-shadow: var(--cps-shadow-md);
}

[data-theme="dark"] .cps-saas-modal .message-success,
[data-theme="dark"] .cps-saas-modal .alert-success { color: #86efac; }
[data-theme="dark"] .cps-saas-modal .message-error,
[data-theme="dark"] .cps-saas-modal .alert-danger,
[data-theme="dark"] .cps-saas-modal .alert-error { color: #fca5a5; }
[data-theme="dark"] .cps-saas-modal .message-warning,
[data-theme="dark"] .cps-saas-modal .alert-warning { color: #fcd34d; }
[data-theme="dark"] .cps-saas-modal .message-info,
[data-theme="dark"] .cps-saas-modal .message-confirm,
[data-theme="dark"] .cps-saas-modal .alert-info { color: #7dd3fc; }

/* Mobile control center */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .card {
    overflow: hidden;
    color: var(--cps-text);
    border: 1px solid var(--cps-border) !important;
    border-radius: var(--cps-radius-lg) !important;
    background: var(--cps-surface-raised) !important;
    box-shadow: var(--cps-shadow-sm) !important;
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .card-header {
    color: var(--cps-ink);
    border-bottom: 1px solid var(--cps-border);
    background: var(--cps-surface-soft);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .list-group-item {
    color: var(--cps-text);
    border-color: var(--cps-border);
    background: var(--cps-surface-raised);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .list-group-item:hover { background: var(--cps-primary-soft); }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .list-group-item.active {
    color: #fff;
    border-color: transparent;
    background: linear-gradient(135deg, var(--cps-primary), var(--cps-accent));
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .table { margin-bottom: 0; color: var(--cps-text); }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .table th { color: var(--cps-ink); border-color: var(--cps-border); background: var(--cps-surface-soft); }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-mobile-control .table td { border-color: var(--cps-border); vertical-align: middle; }

/* Live support console: blue/purple support accent, same Aurora primitives. */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console {
    --cps-ui-primary: #2563eb;
    --cps-ui-accent: #8b5cf6;
    --cps-ui-soft: rgba(37, 99, 235, .10);
    border-color: var(--cps-border) !important;
    border-radius: var(--cps-radius-xl) !important;
    background: var(--cps-surface) !important;
    box-shadow: var(--cps-shadow-md);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-queue,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-details { border-color: var(--cps-border) !important; background: var(--cps-surface-soft) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-queue-head,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-active > header,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-active > footer { border-color: var(--cps-border) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-queue-head span,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-bubble.is-support {
    color: #fff;
    background: linear-gradient(135deg, var(--cps-ui-primary), var(--cps-ui-accent)) !important;
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-queue-row { color: var(--cps-text); border-color: var(--cps-border) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-queue-row:hover,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-queue-row.is-active { background: var(--cps-ui-soft) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-queue-row.has-unread { box-shadow: inset 3px 0 var(--cps-ui-primary) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-console-active > section {
    background: linear-gradient(180deg, var(--cps-surface), var(--cps-surface-soft)) !important;
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-bubble {
    color: var(--cps-text);
    border-color: var(--cps-border) !important;
    border-radius: var(--cps-radius-md) !important;
    background: var(--cps-surface-raised) !important;
    box-shadow: var(--cps-shadow-sm);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-bubble.is-support { color: #fff; border-end-end-radius: 4px !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-bubble.is-system { color: var(--cps-muted); background: var(--cps-surface-soft) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-status { background: var(--cps-warning) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-status.is-active { background: var(--cps-success) !important; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-status.is-closed,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .cps-chat-status.is-expired { background: var(--cps-muted) !important; }

/* ========================================================================== 
   Enterprise glass surfaces
   ========================================================================== */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head {
    border-bottom: 1px solid var(--cps-border) !important;
    background: linear-gradient(120deg, var(--cps-surface-raised), var(--cps-surface)) !important;
    -webkit-backdrop-filter: blur(18px) saturate(135%);
    backdrop-filter: blur(18px) saturate(135%);
    box-shadow: 0 8px 28px rgba(15, 23, 42, .045);
}
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head .page-title .title-text,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head .title-text { color: var(--cps-ink) !important; font-weight: 760; letter-spacing: -.018em; }
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .page-head .sub-heading { color: var(--cps-muted) !important; }

body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .modal-backdrop.show,
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .modal-backdrop.in {
    opacity: 1 !important;
    background: rgba(15, 23, 42, .34) !important;
    -webkit-backdrop-filter: blur(8px) saturate(112%);
    backdrop-filter: blur(8px) saturate(112%);
}

/* Operational dashboards -------------------------------------------------- */
body:is(.cps-saas-scope, [data-cps-saas-scope="1"]) .layout-main-section:has(.cps-enterprise-dashboard) {
    overflow: visible;
    background: transparent !important;
}
.cps-enterprise-dashboard {
    position: relative;
    isolation: isolate;
    display: grid;
    gap: 20px;
    padding: 8px 2px 34px;
    color: var(--cps-text);
}
.cps-enterprise-dashboard::before,
.cps-enterprise-dashboard::after {
    content: "";
    position: fixed;
    z-index: -1;
    width: 440px;
    height: 440px;
    border-radius: 50%;
    filter: blur(3px);
    opacity: .58;
    pointer-events: none;
}
.cps-enterprise-dashboard::before {
    inset-block-start: 84px;
    inset-inline-end: -150px;
    background: radial-gradient(circle, rgba(79, 70, 229, .13), transparent 68%);
}
.cps-enterprise-dashboard::after {
    inset-block-end: -180px;
    inset-inline-start: 12%;
    background: radial-gradient(circle, rgba(6, 182, 212, .11), transparent 68%);
}

.cps-dashboard-hero,
.cps-dashboard-panel,
.cps-dashboard-card,
.cps-dashboard-link {
    border: 1px solid var(--cps-border);
    background: linear-gradient(145deg, var(--cps-surface-raised), var(--cps-surface));
    -webkit-backdrop-filter: blur(var(--cps-glass-blur)) saturate(var(--cps-glass-saturate));
    backdrop-filter: blur(var(--cps-glass-blur)) saturate(var(--cps-glass-saturate));
    box-shadow: var(--cps-shadow-sm);
}

.cps-dashboard-hero {
    --cps-dashboard-state: var(--cps-info);
    --cps-dashboard-soft: var(--cps-info-soft);
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 150px;
    padding: 26px 30px;
    border-radius: var(--cps-radius-xl);
    background:
        radial-gradient(circle at 88% -25%, var(--cps-dashboard-soft), transparent 42%),
        linear-gradient(135deg, var(--cps-primary-soft), var(--cps-surface-raised) 48%, var(--cps-accent-soft));
    box-shadow: var(--cps-shadow-md);
}
.cps-dashboard-hero::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: 4px;
    background: linear-gradient(180deg, var(--cps-dashboard-state), var(--cps-accent));
}
[dir="rtl"] .cps-dashboard-hero::before { inset: 0 0 0 auto; }
.cps-dashboard-hero[data-cps-variant="success"] { --cps-dashboard-state: var(--cps-success); --cps-dashboard-soft: var(--cps-success-soft); }
.cps-dashboard-hero[data-cps-variant="warning"] { --cps-dashboard-state: var(--cps-warning); --cps-dashboard-soft: var(--cps-warning-soft); }
.cps-dashboard-hero[data-cps-variant="danger"] { --cps-dashboard-state: var(--cps-danger); --cps-dashboard-soft: var(--cps-danger-soft); }
.cps-dashboard-hero[data-cps-variant="info"] { --cps-dashboard-state: var(--cps-info); --cps-dashboard-soft: var(--cps-info-soft); }
.cps-dashboard-hero-copy { position: relative; z-index: 1; max-width: 720px; }
.cps-dashboard-eyebrow,
.cps-dashboard-card-eyebrow {
    color: var(--cps-muted);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.25;
    text-transform: uppercase;
}
.cps-dashboard-hero h2 {
    margin: 6px 0 7px;
    color: var(--cps-ink);
    font-size: clamp(25px, 3vw, 34px);
    font-weight: 790;
    letter-spacing: -.035em;
}
.cps-dashboard-hero p { max-width: 640px; margin: 0; color: var(--cps-muted); font-size: 13px; line-height: 1.65; }
.cps-dashboard-hero-meta { position: relative; z-index: 1; display: grid; justify-items: end; gap: 8px; min-width: 180px; }
[dir="rtl"] .cps-dashboard-hero-meta { justify-items: start; }
.cps-dashboard-hero-meta small { color: var(--cps-muted); font-size: 11px; text-align: end; }
.cps-dashboard-status {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 32px;
    padding: 7px 12px;
    color: var(--cps-info);
    border: 1px solid rgba(2, 132, 199, .18);
    border-radius: 999px;
    background: var(--cps-info-soft);
    font-size: 12px;
    font-weight: 760;
}
.cps-dashboard-status[data-cps-variant="success"] { color: var(--cps-success); border-color: rgba(22, 163, 74, .18); background: var(--cps-success-soft); }
.cps-dashboard-status[data-cps-variant="warning"] { color: var(--cps-warning); border-color: rgba(217, 119, 6, .20); background: var(--cps-warning-soft); }
.cps-dashboard-status[data-cps-variant="danger"] { color: var(--cps-danger); border-color: rgba(220, 38, 38, .18); background: var(--cps-danger-soft); }
.cps-dashboard-state-dot { width: 8px; height: 8px; flex: 0 0 8px; border-radius: 50%; background: currentColor; box-shadow: 0 0 0 4px currentColor; opacity: .78; }
.cps-dashboard-status .cps-dashboard-state-dot { box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 14%, transparent); opacity: 1; }

.cps-dashboard-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.cps-dashboard-grid-primary { margin-top: -2px; }
.cps-dashboard-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.cps-dashboard-panel { padding: 20px; border-radius: var(--cps-radius-lg); }
.cps-dashboard-section-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; margin-bottom: 15px; }
.cps-dashboard-section-head h3 { margin: 3px 0 0; color: var(--cps-ink); font-size: 17px; font-weight: 760; letter-spacing: -.018em; }
.cps-dashboard-section-head > a,
.cps-dashboard-section-note { color: var(--cps-muted); font-size: 11px; font-weight: 650; }
.cps-dashboard-section-head > a { text-decoration: none; }
.cps-dashboard-section-head > a:hover { color: var(--cps-primary); }
.cps-dashboard-grid-compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }

.cps-dashboard-card {
    --cps-card-state: var(--cps-info);
    --cps-card-soft: var(--cps-info-soft);
    position: relative;
    min-width: 0;
    min-height: 132px;
    padding: 17px 18px 16px;
    overflow: hidden;
    border-radius: var(--cps-radius-lg);
    color: var(--cps-text) !important;
    text-decoration: none !important;
    transition: transform var(--cps-transition), border-color var(--cps-transition), box-shadow var(--cps-transition), background var(--cps-transition);
}
.cps-dashboard-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 2px;
    background: linear-gradient(90deg, var(--cps-card-state), transparent 80%);
    opacity: .78;
}
.cps-dashboard-card:hover { transform: translateY(-2px); border-color: color-mix(in srgb, var(--cps-card-state) 30%, var(--cps-border)); box-shadow: var(--cps-shadow-md); }
.cps-dashboard-card[data-cps-variant="success"] { --cps-card-state: var(--cps-success); --cps-card-soft: var(--cps-success-soft); }
.cps-dashboard-card[data-cps-variant="warning"] { --cps-card-state: var(--cps-warning); --cps-card-soft: var(--cps-warning-soft); }
.cps-dashboard-card[data-cps-variant="danger"] { --cps-card-state: var(--cps-danger); --cps-card-soft: var(--cps-danger-soft); }
.cps-dashboard-card[data-cps-variant="info"] { --cps-card-state: var(--cps-info); --cps-card-soft: var(--cps-info-soft); }
.cps-dashboard-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.cps-dashboard-card-head .cps-dashboard-state-dot { margin-top: 5px; color: var(--cps-card-state); box-shadow: 0 0 0 4px var(--cps-card-soft); }
.cps-dashboard-card-label { margin-top: 3px; color: var(--cps-text); font-size: 12px; font-weight: 680; }
.cps-dashboard-card-value { margin-top: 17px; overflow: hidden; color: var(--cps-ink); font-size: clamp(23px, 2.5vw, 31px); font-weight: 790; letter-spacing: -.035em; line-height: 1.08; text-overflow: ellipsis; white-space: nowrap; }
.cps-dashboard-card-meta { margin-top: 6px; overflow: hidden; color: var(--cps-muted); font-size: 11px; line-height: 1.45; text-overflow: ellipsis; white-space: nowrap; }

.cps-dashboard-links { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.cps-dashboard-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 15px;
    border-radius: var(--cps-radius-md);
    color: var(--cps-text) !important;
    text-decoration: none !important;
    transition: transform var(--cps-transition), border-color var(--cps-transition), box-shadow var(--cps-transition);
}
.cps-dashboard-link:hover { transform: translateY(-1px); border-color: rgba(79, 70, 229, .28); box-shadow: var(--cps-shadow-md); }
.cps-dashboard-link span:first-child { display: grid; gap: 2px; min-width: 0; }
.cps-dashboard-link strong { color: var(--cps-ink); font-size: 12px; }
.cps-dashboard-link small { overflow: hidden; color: var(--cps-muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.cps-dashboard-link-arrow { color: var(--cps-primary); font-size: 18px; line-height: 1; }
[dir="rtl"] .cps-dashboard-link-arrow { transform: rotate(180deg); }

.cps-billing-dashboard .cps-dashboard-hero {
    background:
        radial-gradient(circle at 88% -25%, var(--cps-success-soft), transparent 42%),
        linear-gradient(135deg, rgba(4, 120, 87, .10), var(--cps-surface-raised) 48%, var(--cps-accent-soft));
}

@supports not ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
    .cps-saas-modal .modal-content,
    .cps-saas-toast,
    .cps-dashboard-hero,
    .cps-dashboard-panel,
    .cps-dashboard-card,
    .cps-dashboard-link { background: var(--cps-surface-raised) !important; }
}

@media (max-width: 1199px) {
    .cps-dashboard-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .cps-dashboard-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
    .cps-dashboard-columns { grid-template-columns: 1fr; }
    .cps-dashboard-hero { align-items: flex-start; }
}
@media (max-width: 640px) {
    .cps-enterprise-dashboard { gap: 14px; padding-inline: 0; }
    .cps-dashboard-hero { display: grid; min-height: 0; padding: 21px 19px; border-radius: var(--cps-radius-lg); }
    .cps-dashboard-hero-meta { justify-items: start; min-width: 0; }
    .cps-dashboard-grid,
    .cps-dashboard-grid-compact,
    .cps-dashboard-links { grid-template-columns: 1fr; }
    .cps-dashboard-panel { padding: 16px; border-radius: var(--cps-radius-md); }
    .cps-dashboard-section-head { align-items: flex-start; flex-direction: column; gap: 5px; }
    .cps-dashboard-card { min-height: 120px; }
}
