
/* ==========================================================================
   SORTEX LICENSE MANAGER — APPROVED UI MATCH v4.1.0
   Final presentation layer matched to the approved Command Dashboard,
   License Registry and Server & Security references.
   Backend, DB, API, SDK and server-control behavior are intentionally untouched.
   ========================================================================== */

:root,
html[data-theme="dark"]{
    color-scheme:dark;
    --sx-bg:#06111d;
    --sx-bg-deep:#04101b;
    --sx-sidebar:#061522;
    --sx-topbar:#071521;
    --sx-panel:#0a1a2a;
    --sx-panel-2:#0c1e30;
    --sx-panel-3:#102438;
    --sx-header:#102236;
    --sx-border:#1b3549;
    --sx-border-soft:#152c3d;
    --sx-text:#f3f7fc;
    --sx-text-2:#c7d3df;
    --sx-muted:#9bafc2;
    --sx-muted-2:#748aa0;
    --sx-accent:#1fd5ee;
    --sx-accent-2:#0db6d4;
    --sx-blue:#5e9cf8;
    --sx-violet:#a45cf1;
    --sx-green:#38d993;
    --sx-green-soft:#0c352c;
    --sx-amber:#f2a91f;
    --sx-amber-soft:#3a2a0d;
    --sx-red:#ff5e67;
    --sx-red-soft:#3a171e;
    --sx-shadow:0 16px 42px rgba(0,0,0,.18);
    --sx-shadow-strong:0 24px 70px rgba(0,0,0,.30);
}

html[data-theme="light"]{
    color-scheme:light;
    --sx-bg:#f6f9fc;
    --sx-bg-deep:#eef4f8;
    --sx-sidebar:#ffffff;
    --sx-topbar:#ffffff;
    --sx-panel:#ffffff;
    --sx-panel-2:#fbfdff;
    --sx-panel-3:#f1f6f9;
    --sx-header:#f3f8fb;
    --sx-border:#d3e0e8;
    --sx-border-soft:#e2ebf0;
    --sx-text:#102941;
    --sx-text-2:#2e4a63;
    --sx-muted:#536e86;
    --sx-muted-2:#71899e;
    --sx-accent:#079fbb;
    --sx-accent-2:#087f99;
    --sx-blue:#316fca;
    --sx-violet:#7650c8;
    --sx-green:#07975e;
    --sx-green-soft:#e8f8f1;
    --sx-amber:#b66d00;
    --sx-amber-soft:#fff5df;
    --sx-red:#d6434f;
    --sx-red-soft:#fff0f1;
    --sx-shadow:0 13px 34px rgba(32,73,103,.08);
    --sx-shadow-strong:0 22px 58px rgba(32,73,103,.14);
}

html{
    background:var(--sx-bg) !important;
    font-size:16px;
    scroll-behavior:smooth;
}

html,body,button,input,select,textarea{
    font-family:"Segoe UI Variable Text","Segoe UI Variable","Segoe UI",Inter,system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif !important;
}

body{
    margin:0 !important;
    min-width:320px;
    font-size:14px !important;
    line-height:1.45 !important;
    letter-spacing:0 !important;
    color:var(--sx-text) !important;
    background:
        radial-gradient(circle at 86% -9%,color-mix(in srgb,var(--sx-accent) 6%,transparent),transparent 30%),
        var(--sx-bg) !important;
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

/* ---------- Shell ---------- */

.admin-shell{
    display:grid !important;
    grid-template-columns:242px minmax(0,1fr) !important;
    min-height:100vh !important;
    background:transparent !important;
}

.sidebar{
    position:sticky !important;
    top:0 !important;
    width:242px !important;
    height:100vh !important;
    min-height:100vh !important;
    padding:20px 14px 16px !important;
    display:flex !important;
    flex-direction:column !important;
    background:
        radial-gradient(circle at 15% 2%,color-mix(in srgb,var(--sx-accent) 5%,transparent),transparent 22%),
        var(--sx-sidebar) !important;
    border-right:1px solid var(--sx-border-soft) !important;
    box-shadow:none !important;
    overflow:hidden !important;
    z-index:40 !important;
}

.sidebar-brand{
    min-height:60px !important;
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    padding:0 8px 17px !important;
    margin:0 !important;
}

.premium-brand-mark{
    width:45px !important;
    height:45px !important;
    min-width:45px !important;
    display:grid !important;
    place-items:center !important;
    border:0 !important;
    border-radius:0 !important;
    background:url("/assets/icons/sortex-logo.svg?v=4.1.0") center/contain no-repeat !important;
    box-shadow:none !important;
    color:transparent !important;
    font-size:0 !important;
}

.premium-brand-copy{
    max-width:150px !important;
    color:var(--sx-text) !important;
    font-size:16px !important;
    font-weight:700 !important;
    line-height:1.02 !important;
    letter-spacing:-.018em !important;
    white-space:normal !important;
    overflow:visible !important;
    text-overflow:clip !important;
}

.nav-title{
    margin:2px 0 7px !important;
    padding:5px 11px !important;
    color:var(--sx-muted-2) !important;
    font-size:9.5px !important;
    font-weight:700 !important;
    line-height:1 !important;
    letter-spacing:.14em !important;
}

.nav-title-system{margin-top:14px !important;}

.sidebar-nav{
    min-height:0 !important;
    flex:0 1 auto !important;
}

.sidebar-nav a{
    min-height:47px !important;
    margin:3px 0 !important;
    padding:0 11px !important;
    display:flex !important;
    align-items:center !important;
    gap:11px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    color:var(--sx-text-2) !important;
    background:transparent !important;
    font-size:14px !important;
    font-weight:500 !important;
    line-height:1 !important;
    text-decoration:none !important;
    transition:background-color .14s ease,border-color .14s ease,color .14s ease !important;
}

.sidebar-nav a:hover{
    transform:none !important;
    color:var(--sx-text) !important;
    background:color-mix(in srgb,var(--sx-accent) 6%,var(--sx-panel)) !important;
    border-color:var(--sx-border-soft) !important;
}

.sidebar-nav a.active{
    position:relative;
    color:var(--sx-accent) !important;
    background:linear-gradient(90deg,color-mix(in srgb,var(--sx-accent) 16%,var(--sx-panel)),color-mix(in srgb,var(--sx-accent) 7%,var(--sx-panel))) !important;
    border-color:color-mix(in srgb,var(--sx-accent) 48%,var(--sx-border)) !important;
    box-shadow:inset 3px 0 0 var(--sx-accent),0 8px 22px rgba(0,0,0,.08) !important;
}

.nav-icon.nav-icon-premium{
    width:27px !important;
    height:27px !important;
    min-width:27px !important;
    display:grid !important;
    place-items:center !important;
    color:var(--sx-muted) !important;
    background:transparent !important;
    border:0 !important;
}

.sidebar-nav a.active .nav-icon-premium{color:var(--sx-accent) !important;}
.nav-svg-icon{width:19px !important;height:19px !important;}

.sidebar-footer{
    margin-top:auto !important;
    padding:14px 8px 0 !important;
    border-top:1px solid var(--sx-border-soft) !important;
}

.sidebar-footer-meta{
    display:grid !important;
    gap:5px !important;
    margin:0 0 13px !important;
    color:var(--sx-muted-2) !important;
    font-size:10px !important;
    line-height:1.35 !important;
}

.sidebar-footer-row{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:9px !important;
}

.system-online{
    min-width:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    color:var(--sx-muted) !important;
    font-size:10.5px !important;
    font-weight:500 !important;
}

.online-dot{
    width:8px !important;
    height:8px !important;
    min-width:8px !important;
    border-radius:50% !important;
    background:var(--sx-green) !important;
    box-shadow:0 0 12px color-mix(in srgb,var(--sx-green) 50%,transparent) !important;
}

.sidebar-collapse-button{
    width:32px !important;
    height:32px !important;
    flex:0 0 32px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:50% !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-muted) !important;
    font-size:13px !important;
    box-shadow:none !important;
}

.sidebar-collapse-button:hover{
    transform:none !important;
    color:var(--sx-accent) !important;
    border-color:color-mix(in srgb,var(--sx-accent) 50%,var(--sx-border)) !important;
}

.admin-main{
    min-width:0 !important;
    width:100% !important;
    background:transparent !important;
}

.admin-shell.sidebar-collapsed{grid-template-columns:78px minmax(0,1fr) !important;}
.admin-shell.sidebar-collapsed .sidebar{width:78px !important;padding-left:10px !important;padding-right:10px !important;}
.admin-shell.sidebar-collapsed .premium-brand-copy,
.admin-shell.sidebar-collapsed .nav-title,
.admin-shell.sidebar-collapsed .sidebar-nav a > span:last-child,
.admin-shell.sidebar-collapsed .sidebar-footer-meta,
.admin-shell.sidebar-collapsed .system-online span:last-child{display:none !important;}
.admin-shell.sidebar-collapsed .sidebar-brand,
.admin-shell.sidebar-collapsed .sidebar-nav a{justify-content:center !important;padding-left:0 !important;padding-right:0 !important;}
.admin-shell.sidebar-collapsed .sidebar-footer-row{justify-content:center !important;}
.admin-shell.sidebar-collapsed .system-online{display:none !important;}

/* ---------- Top bar ---------- */

.topbar{
    position:sticky !important;
    top:0 !important;
    z-index:35 !important;
    width:100% !important;
    height:68px !important;
    min-height:68px !important;
    padding:0 27px 0 30px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    background:color-mix(in srgb,var(--sx-topbar) 95%,transparent) !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
    box-shadow:none !important;
    backdrop-filter:blur(18px) saturate(135%) !important;
    -webkit-backdrop-filter:blur(18px) saturate(135%) !important;
}

.topbar-search-wrap{
    position:relative !important;
    width:min(480px,44vw) !important;
    height:39px !important;
    display:flex !important;
    align-items:center !important;
}

.topbar-search{
    width:100% !important;
    height:39px !important;
    padding:0 55px 0 42px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:10px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text) !important;
    font-size:13.5px !important;
    font-weight:400 !important;
    outline:0 !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.015) !important;
}

.topbar-search::placeholder{color:var(--sx-muted) !important;opacity:1 !important;}
.topbar-search:focus{
    border-color:color-mix(in srgb,var(--sx-accent) 65%,var(--sx-border)) !important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--sx-accent) 10%,transparent) !important;
}

.topbar-search-icon{
    position:absolute !important;
    left:14px !important;
    width:18px !important;
    height:18px !important;
    z-index:2 !important;
    fill:none !important;
    stroke:var(--sx-muted) !important;
    stroke-width:1.8 !important;
}

.topbar-shortcut{
    position:absolute !important;
    right:8px !important;
    min-width:40px !important;
    height:25px !important;
    display:grid !important;
    place-items:center !important;
    border:1px solid var(--sx-border-soft) !important;
    border-radius:7px !important;
    background:var(--sx-panel-3) !important;
    color:var(--sx-muted-2) !important;
    font-size:10px !important;
    font-weight:600 !important;
}

.admin-profile{
    display:flex !important;
    align-items:center !important;
    gap:9px !important;
}

.theme-toggle{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    padding:0 !important;
    display:grid !important;
    place-items:center !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    background:transparent !important;
    color:var(--sx-muted) !important;
    box-shadow:none !important;
}

.theme-toggle span{display:none !important;}
.theme-toggle:hover{
    transform:none !important;
    color:var(--sx-accent) !important;
    border-color:var(--sx-border) !important;
    background:var(--sx-panel-2) !important;
}
.theme-toggle-icon{width:19px !important;height:19px !important;}

.topbar-notification{
    width:38px !important;
    height:38px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
    color:var(--sx-muted) !important;
}
.topbar-notification:hover{
    color:var(--sx-accent) !important;
    background:var(--sx-panel-2) !important;
    border-color:var(--sx-border) !important;
}
.topbar-notification svg{width:19px !important;height:19px !important;}

.notification-dot{
    width:7px !important;
    height:7px !important;
    right:8px !important;
    top:7px !important;
    background:var(--sx-accent) !important;
    border:2px solid var(--sx-topbar) !important;
}

.profile-summary{
    min-height:44px !important;
    display:flex !important;
    align-items:center !important;
    gap:10px !important;
    padding:3px 6px !important;
    border:1px solid transparent !important;
    border-radius:10px !important;
}
.profile-summary:hover{
    background:var(--sx-panel-2) !important;
    border-color:var(--sx-border) !important;
}

.avatar{
    width:38px !important;
    height:38px !important;
    flex:0 0 38px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:50% !important;
    border:1px solid color-mix(in srgb,var(--sx-accent) 28%,var(--sx-border)) !important;
    background:color-mix(in srgb,var(--sx-accent) 15%,var(--sx-panel-2)) !important;
    color:var(--sx-accent) !important;
    font-size:12.5px !important;
    font-weight:700 !important;
}

.profile-name{
    color:var(--sx-text) !important;
    font-size:13.5px !important;
    font-weight:650 !important;
    line-height:1.15 !important;
}
.profile-role{
    margin-top:3px !important;
    color:var(--sx-muted) !important;
    font-size:11px !important;
    line-height:1.1 !important;
}
.profile-chevron{color:var(--sx-muted) !important;font-size:14px !important;}

.profile-dropdown{
    min-width:225px !important;
    right:0 !important;
    top:51px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:12px !important;
    background:var(--sx-panel) !important;
    box-shadow:var(--sx-shadow-strong) !important;
}

/* ---------- Main content ---------- */

.page{
    width:100% !important;
    max-width:none !important;
    min-height:calc(100vh - 68px) !important;
    padding:21px 28px 30px !important;
    color:var(--sx-text) !important;
}

.page-heading{
    min-height:56px !important;
    margin:0 0 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:20px !important;
}

.page-heading h1{
    margin:0 0 5px !important;
    color:var(--sx-text) !important;
    font-size:30px !important;
    line-height:1.08 !important;
    font-weight:650 !important;
    letter-spacing:-.025em !important;
}

.page-heading p{
    margin:0 !important;
    max-width:760px !important;
    color:var(--sx-muted) !important;
    font-size:14px !important;
    line-height:1.45 !important;
    font-weight:400 !important;
}

.heading-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
}

.primary-button,
.secondary-button,
.clear-filter,
.compact-button{
    min-height:39px !important;
    height:39px !important;
    padding:0 15px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;
    border-radius:9px !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:600 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}

.primary-button{
    border:1px solid color-mix(in srgb,var(--sx-accent) 70%,transparent) !important;
    background:linear-gradient(180deg,#28d9ef,#13b9d6) !important;
    color:#042431 !important;
    box-shadow:0 8px 22px rgba(19,185,214,.16) !important;
}
.primary-button:hover{filter:brightness(1.04) !important;transform:none !important;}

.secondary-button,.clear-filter{
    border:1px solid var(--sx-border) !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text-2) !important;
    box-shadow:none !important;
}
.secondary-button:hover,.clear-filter:hover{
    color:var(--sx-accent) !important;
    border-color:color-mix(in srgb,var(--sx-accent) 40%,var(--sx-border)) !important;
    transform:none !important;
}

.premium-window-chip{
    min-height:39px !important;
    padding:0 14px !important;
    display:inline-flex !important;
    align-items:center !important;
    gap:8px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:9px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text-2) !important;
    font-size:13px !important;
}
.premium-window-chip svg,.premium-button-icon{width:17px !important;height:17px !important;}

/* ---------- Cards / KPI ---------- */

.kpi-grid,
.registry-stats{
    display:grid !important;
    grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
    gap:16px !important;
    margin:0 0 16px !important;
}

.premium-dashboard-kpis{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}

.kpi,
.mini-stat,
.panel,
.registry-panel,
.settings-section,
.account-card,
.profile-card,
.user-card{
    border:1px solid var(--sx-border) !important;
    background:linear-gradient(180deg,color-mix(in srgb,var(--sx-panel) 96%,var(--sx-panel-3) 4%),var(--sx-panel)) !important;
    color:var(--sx-text) !important;
    box-shadow:var(--sx-shadow) !important;
}

.kpi,
.mini-stat{
    position:relative !important;
    min-height:118px !important;
    padding:18px 19px !important;
    border-radius:11px !important;
    overflow:hidden !important;
}

.kpi:hover,.mini-stat:hover{
    transform:none !important;
    border-color:color-mix(in srgb,var(--sx-accent) 34%,var(--sx-border)) !important;
}

.premium-dashboard-kpis .kpi{
    display:flex !important;
    align-items:center !important;
    gap:16px !important;
}

.premium-kpi-icon,
.premium-stat-icon{
    width:62px !important;
    height:62px !important;
    min-width:62px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:50% !important;
    border:1px solid color-mix(in srgb,var(--sx-accent) 26%,transparent) !important;
    background:color-mix(in srgb,var(--sx-accent) 10%,transparent) !important;
    color:var(--sx-accent) !important;
}

.premium-kpi-icon svg,.premium-stat-icon svg{width:30px !important;height:30px !important;}

.kpi-products .premium-kpi-icon{color:var(--sx-accent) !important;background:rgba(31,213,238,.10) !important;border-color:rgba(31,213,238,.23) !important;}
.kpi-licenses .premium-kpi-icon{color:var(--sx-blue) !important;background:rgba(94,156,248,.11) !important;border-color:rgba(94,156,248,.23) !important;}
.kpi-activations .premium-kpi-icon{color:var(--sx-violet) !important;background:rgba(164,92,241,.12) !important;border-color:rgba(164,92,241,.24) !important;}
.kpi-server .premium-kpi-icon{color:var(--sx-green) !important;background:rgba(56,217,147,.11) !important;border-color:rgba(56,217,147,.23) !important;}

.premium-kpi-copy{min-width:0 !important;display:flex !important;flex-direction:column !important;}

.kpi-label,
.mini-stat > span:not(.premium-stat-icon):first-of-type{
    color:var(--sx-text-2) !important;
    font-size:13.5px !important;
    line-height:1.1 !important;
    font-weight:600 !important;
    letter-spacing:0 !important;
    text-transform:none !important;
}

.kpi-value,
.mini-stat strong{
    margin-top:9px !important;
    color:var(--sx-text) !important;
    font-size:29px !important;
    line-height:1 !important;
    font-weight:650 !important;
    letter-spacing:-.02em !important;
}

.kpi-value.online{color:var(--sx-green) !important;}

.kpi-meta,
.mini-stat small,
.mini-stat > span:not(.premium-stat-icon):not(:first-of-type){
    margin-top:9px !important;
    color:var(--sx-muted) !important;
    font-size:12px !important;
    line-height:1.25 !important;
    font-weight:400 !important;
}

.kpi-meta strong{color:var(--sx-green) !important;font-weight:600 !important;}

.mini-stat{
    padding-left:96px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:center !important;
}
.mini-stat .premium-stat-icon{
    position:absolute !important;
    left:19px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
}
.mini-stat.stat-good .premium-stat-icon{color:var(--sx-green) !important;background:color-mix(in srgb,var(--sx-green) 10%,transparent) !important;border-color:color-mix(in srgb,var(--sx-green) 23%,transparent) !important;}
.mini-stat.stat-warn .premium-stat-icon{color:var(--sx-amber) !important;background:color-mix(in srgb,var(--sx-amber) 10%,transparent) !important;border-color:color-mix(in srgb,var(--sx-amber) 23%,transparent) !important;}
.mini-stat.stat-bad .premium-stat-icon{color:var(--sx-red) !important;background:color-mix(in srgb,var(--sx-red) 10%,transparent) !important;border-color:color-mix(in srgb,var(--sx-red) 23%,transparent) !important;}

.kpi-live-dot{
    position:absolute !important;
    right:15px !important;
    top:15px !important;
    width:9px !important;
    height:9px !important;
    border-radius:50% !important;
    background:var(--sx-green) !important;
    box-shadow:0 0 12px rgba(56,217,147,.55) !important;
}

/* ---------- Panels ---------- */

.panel,
.registry-panel,
.settings-section,
.account-card{
    border-radius:11px !important;
}

.panel-header,
.registry-toolbar,
.settings-section-header,
.account-card-header{
    border-color:var(--sx-border-soft) !important;
}

.panel-header{
    min-height:62px !important;
    padding:15px 18px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
}

.panel-header h3{
    margin:0 !important;
    color:var(--sx-text) !important;
    font-size:16px !important;
    line-height:1.15 !important;
    font-weight:650 !important;
    letter-spacing:-.012em !important;
}
.panel-header p{
    margin:5px 0 0 !important;
    color:var(--sx-muted) !important;
    font-size:11.5px !important;
    line-height:1.3 !important;
}

.dashboard-command-grid{
    display:grid !important;
    grid-template-columns:minmax(0,1.7fr) minmax(330px,.78fr) !important;
    gap:16px !important;
    margin-bottom:16px !important;
}

.activation-activity-panel,
.dashboard-health-panel{
    min-height:344px !important;
    overflow:hidden !important;
}

.activity-total-block{
    display:grid !important;
    grid-template-columns:auto !important;
    justify-items:start !important;
    min-width:145px !important;
}
.activity-total-block span{color:var(--sx-muted) !important;font-size:11.5px !important;}
.activity-total-block strong{margin-top:2px !important;color:var(--sx-text) !important;font-size:25px !important;line-height:1 !important;font-weight:650 !important;}
.activity-total-block small{margin-top:4px !important;color:var(--sx-muted) !important;font-size:10.5px !important;}

.premium-activity-chart{
    display:grid !important;
    grid-template-columns:43px minmax(0,1fr) !important;
    gap:7px !important;
    padding:13px 18px 15px 14px !important;
}

.chart-y-labels{
    height:230px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    padding:4px 0 24px !important;
    color:var(--sx-muted) !important;
    font-size:11px !important;
}

.chart-stage{min-width:0 !important;}
.chart-stage svg{display:block !important;width:100% !important;height:208px !important;overflow:visible !important;}
.chart-grid-line{stroke:var(--sx-border-soft) !important;stroke-width:1 !important;}
.chart-line{fill:none !important;stroke:var(--sx-accent) !important;stroke-width:3 !important;vector-effect:non-scaling-stroke !important;}
.chart-area{fill:url(#activationArea) !important;}
.chart-last-point{fill:var(--sx-accent) !important;stroke:color-mix(in srgb,var(--sx-accent) 45%,transparent) !important;stroke-width:5 !important;}

.chart-x-labels{
    margin-top:4px !important;
    display:grid !important;
    grid-template-columns:repeat(6,1fr) !important;
    color:var(--sx-muted) !important;
    font-size:11px !important;
    line-height:1 !important;
}
.chart-x-labels span{text-align:center !important;}
.chart-x-labels span:first-child{text-align:left !important;}
.chart-x-labels span:last-child{text-align:right !important;}

.premium-health-list{
    padding:10px 14px 4px !important;
}

.premium-health-item{
    min-height:61px !important;
    padding:8px 7px !important;
    display:grid !important;
    grid-template-columns:46px minmax(0,1fr) auto !important;
    align-items:center !important;
    gap:10px !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
    background:transparent !important;
}

.premium-health-item:last-child{border-bottom:0 !important;}
.health-item-icon{
    width:40px !important;
    height:40px !important;
    display:grid !important;
    place-items:center !important;
    border-radius:50% !important;
    background:color-mix(in srgb,var(--sx-accent) 10%,transparent) !important;
    color:var(--sx-accent) !important;
}
.health-item-icon svg{width:21px !important;height:21px !important;}
.premium-health-item strong{
    display:block !important;
    color:var(--sx-text) !important;
    font-size:13px !important;
    line-height:1.1 !important;
    font-weight:620 !important;
}
.premium-health-item small{
    display:block !important;
    margin-top:5px !important;
    color:var(--sx-muted) !important;
    font-size:10.5px !important;
    line-height:1.15 !important;
}
.health-good{
    color:var(--sx-green) !important;
    font-size:11.5px !important;
    font-weight:650 !important;
}
.dashboard-health-footer{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    padding:7px 17px 14px !important;
    color:var(--sx-green) !important;
    font-size:11px !important;
    font-weight:500 !important;
}

.dashboard-security-panel{margin:0 0 10px !important;overflow:hidden !important;}
.dashboard-security-table-wrap{overflow-x:auto !important;}
.dashboard-timezone{
    display:block !important;
    margin-top:3px !important;
    color:var(--sx-muted-2) !important;
    font-size:9.5px !important;
}
.dashboard-event-type{color:var(--sx-text) !important;font-weight:600 !important;}
.dashboard-ip{color:var(--sx-text-2) !important;font-family:ui-monospace,SFMono-Regular,Consolas,monospace !important;font-size:12px !important;}
.dashboard-event-detail{color:var(--sx-text-2) !important;}

.dashboard-severity{
    min-width:64px !important;
    height:26px !important;
    padding:0 9px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    border-radius:6px !important;
    border:1px solid var(--sx-border) !important;
    font-size:11px !important;
    font-weight:600 !important;
}
.dashboard-severity.severity-info{color:var(--sx-green) !important;background:var(--sx-green-soft) !important;border-color:color-mix(in srgb,var(--sx-green) 22%,var(--sx-border)) !important;}
.dashboard-severity.severity-warning{color:var(--sx-amber) !important;background:var(--sx-amber-soft) !important;border-color:color-mix(in srgb,var(--sx-amber) 25%,var(--sx-border)) !important;}
.dashboard-severity.severity-critical{color:var(--sx-red) !important;background:var(--sx-red-soft) !important;border-color:color-mix(in srgb,var(--sx-red) 24%,var(--sx-border)) !important;}

.dashboard-admin-note{
    margin:8px 0 0 !important;
    color:var(--sx-muted-2) !important;
    font-size:10px !important;
}

/* ---------- Registry toolbar / tables ---------- */

.registry-panel{
    overflow:hidden !important;
}

.registry-toolbar{
    min-height:64px !important;
    padding:12px 14px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:10px !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
    background:transparent !important;
}

.registry-search{
    flex:1 1 360px !important;
    min-width:240px !important;
    max-width:none !important;
}

.registry-toolbar input,
.registry-toolbar select,
.settings-field input,
.settings-field select,
.settings-field textarea,
.form-group input,
.form-group select,
.form-group textarea,
.field input{
    border:1px solid var(--sx-border) !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text) !important;
    border-radius:8px !important;
    font-size:13px !important;
    font-weight:400 !important;
    outline:0 !important;
    box-shadow:none !important;
}

.registry-toolbar input,
.registry-toolbar select{
    height:40px !important;
    min-height:40px !important;
}

.registry-toolbar input{width:100% !important;padding:0 13px !important;}
.registry-toolbar select{min-width:145px !important;padding:0 34px 0 12px !important;}
.registry-toolbar input::placeholder,
.settings-field input::placeholder,
.form-group input::placeholder,
.field input::placeholder{color:var(--sx-muted) !important;opacity:1 !important;}

.registry-toolbar input:focus,
.registry-toolbar select:focus,
.settings-field input:focus,
.settings-field select:focus,
.settings-field textarea:focus,
.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus,
.field input:focus{
    border-color:color-mix(in srgb,var(--sx-accent) 60%,var(--sx-border)) !important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--sx-accent) 9%,transparent) !important;
}

.table-wrap{
    width:100% !important;
    overflow-x:auto !important;
}

.registry-table,
.security-table{
    width:100% !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
    color:var(--sx-text) !important;
    font-size:13px !important;
    line-height:1.35 !important;
}

.registry-table thead th,
.security-table thead th{
    height:44px !important;
    padding:0 14px !important;
    vertical-align:middle !important;
    color:var(--sx-muted) !important;
    background:var(--sx-header) !important;
    border-bottom:1px solid var(--sx-border) !important;
    font-size:11.5px !important;
    font-weight:600 !important;
    letter-spacing:.01em !important;
    text-transform:none !important;
    white-space:nowrap !important;
}

.registry-table tbody td,
.security-table tbody td{
    height:55px !important;
    padding:10px 14px !important;
    vertical-align:middle !important;
    color:var(--sx-text-2) !important;
    background:transparent !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
    font-size:12.75px !important;
    font-weight:400 !important;
}

.registry-table tbody tr:last-child td,
.security-table tbody tr:last-child td{border-bottom:0 !important;}

.registry-table tbody tr:hover,
.security-table tbody tr:hover{
    background:color-mix(in srgb,var(--sx-accent) 3.5%,var(--sx-panel)) !important;
}

.registry-main-text,
.product-cell strong,
.server-stack strong{
    color:var(--sx-text) !important;
    font-size:13px !important;
    font-weight:600 !important;
}

.product-cell small,
.server-stack small,
.heartbeat-count{
    margin-top:3px !important;
    color:var(--sx-muted) !important;
    font-size:10.5px !important;
    line-height:1.2 !important;
}

.product-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    border-radius:8px !important;
    background:color-mix(in srgb,var(--sx-accent) 10%,transparent) !important;
    color:var(--sx-accent) !important;
    border:1px solid color-mix(in srgb,var(--sx-accent) 23%,var(--sx-border)) !important;
    font-size:10px !important;
    font-weight:700 !important;
}

.domain-pill,
.code-pill,
.customer-id-pill,
.masked-license{
    min-height:27px !important;
    padding:0 9px !important;
    display:inline-flex !important;
    align-items:center !important;
    border:1px solid var(--sx-border) !important;
    border-radius:6px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text-2) !important;
    font-size:11.5px !important;
    line-height:1 !important;
}

.masked-license{
    color:var(--sx-accent) !important;
    font-family:ui-monospace,SFMono-Regular,Consolas,monospace !important;
    font-weight:600 !important;
}

.status-pill,
.health-badge,
.status-badge,
.server-health-badge,
.server-license-badge,
.role-pill{
    min-height:27px !important;
    height:27px !important;
    padding:0 9px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:6px !important;
    font-size:11px !important;
    line-height:1 !important;
    font-weight:600 !important;
    white-space:nowrap !important;
}

.status-active,
.health-online,
.health-good,
.license-active,
.status-pill{
    color:var(--sx-green) !important;
    background:var(--sx-green-soft) !important;
    border-color:color-mix(in srgb,var(--sx-green) 22%,var(--sx-border)) !important;
}
.status-blocked,
.status-revoked,
.status-expired,
.health-blocked,
.health-offline,
.license-revoked,
.license-expired{
    color:var(--sx-red) !important;
    background:var(--sx-red-soft) !important;
    border-color:color-mix(in srgb,var(--sx-red) 24%,var(--sx-border)) !important;
}
.status-deactivated,
.status-suspended,
.health-grace,
.license-suspended{
    color:var(--sx-amber) !important;
    background:var(--sx-amber-soft) !important;
    border-color:color-mix(in srgb,var(--sx-amber) 24%,var(--sx-border)) !important;
}

.premium-pill-icon{width:13px !important;height:13px !important;}

.actions-cell{
    white-space:nowrap !important;
    text-align:right !important;
}

.icon-action{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    display:inline-grid !important;
    place-items:center !important;
    border:1px solid var(--sx-border) !important;
    border-radius:8px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-muted) !important;
    box-shadow:none !important;
}
.icon-action:hover{
    color:var(--sx-accent) !important;
    border-color:color-mix(in srgb,var(--sx-accent) 40%,var(--sx-border)) !important;
}
.action-svg-icon{width:16px !important;height:16px !important;}

.table-empty{
    min-height:160px !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:7px !important;
    color:var(--sx-muted) !important;
    text-align:center !important;
}
.table-empty strong{color:var(--sx-text) !important;font-size:14px !important;}
.table-empty span{color:var(--sx-muted) !important;font-size:12px !important;}

/* ---------- Alerts ---------- */

.success-banner,.error-banner,.settings-note,.security-helper-warning{
    margin:0 0 16px !important;
    padding:12px 14px !important;
    border-radius:9px !important;
    font-size:12.5px !important;
    line-height:1.4 !important;
}
.success-banner,.settings-note{
    color:var(--sx-green) !important;
    background:var(--sx-green-soft) !important;
    border:1px solid color-mix(in srgb,var(--sx-green) 23%,var(--sx-border)) !important;
}
.error-banner,.security-helper-warning{
    color:var(--sx-red) !important;
    background:var(--sx-red-soft) !important;
    border:1px solid color-mix(in srgb,var(--sx-red) 23%,var(--sx-border)) !important;
}

/* ---------- Settings / server controls ---------- */

.settings-layout{
    display:grid !important;
    gap:16px !important;
}

.settings-section{
    overflow:hidden !important;
}

.settings-section-header{
    min-height:68px !important;
    padding:16px 19px !important;
    background:var(--sx-panel) !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
}
.settings-section-header h2,
.settings-section-header h3{
    margin:0 !important;
    color:var(--sx-text) !important;
    font-size:16px !important;
    font-weight:650 !important;
    letter-spacing:-.01em !important;
}
.settings-section-header p{
    margin:5px 0 0 !important;
    color:var(--sx-muted) !important;
    font-size:11.5px !important;
    line-height:1.35 !important;
}
.settings-section-body{padding:19px !important;}
.settings-form-grid{gap:16px !important;}

.settings-field label,
.form-group label,
.field label{
    margin-bottom:7px !important;
    display:block !important;
    color:var(--sx-text-2) !important;
    font-size:12.5px !important;
    font-weight:600 !important;
}
.settings-field small,
.form-group small{
    margin-top:6px !important;
    color:var(--sx-muted) !important;
    font-size:11px !important;
    line-height:1.45 !important;
}
.settings-field input,
.settings-field select,
.form-group input,
.form-group select,
.field input{
    min-height:42px !important;
    height:42px !important;
    padding:0 12px !important;
}
.settings-field textarea,.form-group textarea{
    min-height:100px !important;
    padding:11px 12px !important;
}

.health-item,
.firewall-control-card,
.server-control-card,
.server-control-stat,
.postboot-summary,
.database-admin-card,
.database-admin-layer,
.server-overview-metric,
.server-overview-fact,
.security-summary-card,
.security-listen-card,
.server-resource-card{
    border:1px solid var(--sx-border-soft) !important;
    border-radius:9px !important;
    background:var(--sx-panel-2) !important;
    box-shadow:none !important;
}

.health-grid,.server-control-grid,.server-overview-summary,.server-resource-grid{gap:12px !important;}
.security-table-wrap{border:1px solid var(--sx-border-soft) !important;border-radius:9px !important;overflow:auto !important;}

/* ---------- Profile / account ---------- */

.account-layout{gap:16px !important;}
.account-card{overflow:hidden !important;}
.account-card-header{padding:17px 19px !important;}
.account-card-title{color:var(--sx-text) !important;font-size:16px !important;font-weight:650 !important;}
.account-detail-row{min-height:50px !important;border-color:var(--sx-border-soft) !important;color:var(--sx-text-2) !important;font-size:12.5px !important;}
.user-avatar-large{
    background:color-mix(in srgb,var(--sx-accent) 12%,var(--sx-panel-2)) !important;
    color:var(--sx-accent) !important;
    border-color:color-mix(in srgb,var(--sx-accent) 24%,var(--sx-border)) !important;
}

/* ---------- Modal system ---------- */

.modal-backdrop{
    background:rgba(2,9,15,.76) !important;
    backdrop-filter:blur(8px) !important;
    -webkit-backdrop-filter:blur(8px) !important;
}
.modal-card,.reveal-card{
    border:1px solid var(--sx-border) !important;
    border-radius:12px !important;
    background:var(--sx-panel) !important;
    color:var(--sx-text) !important;
    box-shadow:var(--sx-shadow-strong) !important;
}
.modal-header{
    padding:18px 20px !important;
    border-bottom:1px solid var(--sx-border-soft) !important;
}
.modal-header h2{margin:0 !important;color:var(--sx-text) !important;font-size:19px !important;font-weight:650 !important;}
.modal-header p{margin:5px 0 0 !important;color:var(--sx-muted) !important;font-size:11.5px !important;}
.modal-body{padding:19px 20px !important;}
.modal-footer{
    padding:13px 20px !important;
    border-top:1px solid var(--sx-border-soft) !important;
    background:var(--sx-panel-2) !important;
}
.modal-close{
    width:35px !important;
    height:35px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:8px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-muted) !important;
}
.modal-close:hover{color:var(--sx-red) !important;border-color:color-mix(in srgb,var(--sx-red) 35%,var(--sx-border)) !important;}

/* ---------- Login ---------- */

.login-page{
    min-height:100vh !important;
    display:grid !important;
    place-items:center !important;
    padding:28px !important;
    background:
        radial-gradient(circle at 77% 13%,color-mix(in srgb,var(--sx-accent) 10%,transparent),transparent 30%),
        radial-gradient(circle at 12% 88%,color-mix(in srgb,var(--sx-blue) 7%,transparent),transparent 31%),
        var(--sx-bg) !important;
}
.login-shell{
    width:min(1040px,95vw) !important;
    min-height:600px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:20px !important;
    background:var(--sx-panel) !important;
    box-shadow:var(--sx-shadow-strong) !important;
    overflow:hidden !important;
}
.login-brand{
    background:
        radial-gradient(circle at 18% 16%,rgba(31,213,238,.12),transparent 34%),
        linear-gradient(145deg,#061520,#091b2b) !important;
}
.login-brand .brand-mark{
    width:48px !important;
    height:48px !important;
    border:0 !important;
    border-radius:0 !important;
    background:url("/assets/icons/sortex-logo.svg?v=4.1.0") center/contain no-repeat !important;
    color:transparent !important;
    font-size:0 !important;
    box-shadow:none !important;
}
.login-form-side{background:var(--sx-panel) !important;}
.login-form h2{color:var(--sx-text) !important;font-size:29px !important;font-weight:650 !important;letter-spacing:-.025em !important;}
.form-subtitle,.brand-copy p,.brand-footer,.login-meta{color:var(--sx-muted) !important;}
.brand-copy h1,.brand-logo{color:var(--sx-text) !important;}
.field input{min-height:47px !important;height:47px !important;border-radius:8px !important;font-size:13.5px !important;}
.login-button{
    height:47px !important;
    border:1px solid rgba(31,213,238,.55) !important;
    border-radius:8px !important;
    background:linear-gradient(180deg,#28d9ef,#13b9d6) !important;
    color:#052733 !important;
    font-size:13.5px !important;
    font-weight:700 !important;
    box-shadow:0 10px 24px rgba(19,185,214,.16) !important;
}

/* ---------- Footer ---------- */

.premium-system-footer{
    margin-top:18px !important;
    padding:13px 2px 2px !important;
    border-top:1px solid var(--sx-border-soft) !important;
    color:var(--sx-muted-2) !important;
    font-size:10px !important;
    line-height:1.3 !important;
}

/* ---------- Light theme contrast corrections ---------- */

html[data-theme="light"] body{
    background:
        radial-gradient(circle at 86% -9%,rgba(7,159,187,.045),transparent 30%),
        var(--sx-bg) !important;
}

html[data-theme="light"] .sidebar{
    box-shadow:5px 0 24px rgba(35,72,101,.04) !important;
}
html[data-theme="light"] .sidebar-nav a{color:#49677f !important;}
html[data-theme="light"] .sidebar-nav a:hover{color:#16344d !important;background:#f4fafc !important;border-color:#dae7ed !important;}
html[data-theme="light"] .sidebar-nav a.active{
    color:#067e94 !important;
    background:linear-gradient(90deg,#e4f9fc,#f5fcfd) !important;
    border-color:#8ddce7 !important;
    box-shadow:inset 3px 0 #08a8c0,0 8px 20px rgba(33,97,120,.08) !important;
}
html[data-theme="light"] .nav-icon.nav-icon-premium{color:#54758d !important;}
html[data-theme="light"] .sidebar-nav a.active .nav-icon-premium{color:#08a8c0 !important;}

html[data-theme="light"] .topbar{
    background:rgba(255,255,255,.96) !important;
    border-bottom-color:#dfe8ed !important;
}
html[data-theme="light"] .topbar-search,
html[data-theme="light"] .registry-toolbar input,
html[data-theme="light"] .registry-toolbar select,
html[data-theme="light"] .settings-field input,
html[data-theme="light"] .settings-field select,
html[data-theme="light"] .settings-field textarea,
html[data-theme="light"] .form-group input,
html[data-theme="light"] .form-group select,
html[data-theme="light"] .form-group textarea,
html[data-theme="light"] .field input{
    background:#ffffff !important;
    color:#102941 !important;
    border-color:#cbdbe4 !important;
}
html[data-theme="light"] .topbar-search::placeholder,
html[data-theme="light"] .registry-toolbar input::placeholder,
html[data-theme="light"] .field input::placeholder{color:#627d94 !important;}

html[data-theme="light"] .kpi,
html[data-theme="light"] .mini-stat,
html[data-theme="light"] .panel,
html[data-theme="light"] .registry-panel,
html[data-theme="light"] .settings-section,
html[data-theme="light"] .account-card{
    background:#ffffff !important;
    border-color:#d4e1e8 !important;
    box-shadow:0 11px 30px rgba(42,77,103,.06) !important;
}

html[data-theme="light"] .registry-table thead th,
html[data-theme="light"] .security-table thead th{
    background:#f2f7fa !important;
    color:#506b82 !important;
    border-bottom-color:#cfdee6 !important;
}

html[data-theme="light"] .registry-table tbody td,
html[data-theme="light"] .security-table tbody td{
    color:#29475f !important;
    border-bottom-color:#e0e9ee !important;
}
html[data-theme="light"] .registry-table tbody tr:hover,
html[data-theme="light"] .security-table tbody tr:hover{background:#f7fcfd !important;}

html[data-theme="light"] .registry-main-text,
html[data-theme="light"] .product-cell strong,
html[data-theme="light"] .server-stack strong,
html[data-theme="light"] .dashboard-event-type{color:#132e45 !important;}
html[data-theme="light"] .domain-pill,
html[data-theme="light"] .code-pill,
html[data-theme="light"] .customer-id-pill,
html[data-theme="light"] .masked-license{
    background:#f7fafc !important;
    color:#355870 !important;
    border-color:#d4e1e8 !important;
}
html[data-theme="light"] .masked-license{color:#078aa4 !important;}

html[data-theme="light"] .panel-header p,
html[data-theme="light"] .page-heading p,
html[data-theme="light"] .kpi-meta,
html[data-theme="light"] .mini-stat small,
html[data-theme="light"] .premium-health-item small{color:#526f87 !important;}

html[data-theme="light"] .dashboard-event-detail{color:#35556d !important;}
html[data-theme="light"] .dashboard-ip{color:#355d75 !important;}

html[data-theme="light"] .status-active,
html[data-theme="light"] .health-online,
html[data-theme="light"] .health-good,
html[data-theme="light"] .license-active,
html[data-theme="light"] .status-pill{background:#e8f8f1 !important;color:#087a50 !important;border-color:#bae9d4 !important;}
html[data-theme="light"] .status-deactivated,
html[data-theme="light"] .status-suspended,
html[data-theme="light"] .health-grace,
html[data-theme="light"] .license-suspended{background:#fff4dc !important;color:#a35e00 !important;border-color:#f4d59d !important;}
html[data-theme="light"] .status-blocked,
html[data-theme="light"] .status-revoked,
html[data-theme="light"] .status-expired,
html[data-theme="light"] .health-blocked,
html[data-theme="light"] .health-offline,
html[data-theme="light"] .license-revoked,
html[data-theme="light"] .license-expired{background:#fff0f1 !important;color:#c83543 !important;border-color:#f0c3c7 !important;}

html[data-theme="light"] .profile-dropdown{box-shadow:0 20px 46px rgba(35,72,101,.15) !important;}
html[data-theme="light"] .modal-backdrop{background:rgba(31,51,68,.44) !important;}

/* ---------- Server registry width / readability ---------- */

.server-registry-table{min-width:1520px !important;}
.server-registry-table .server-os{max-width:185px !important;}
.security-registry-table{min-width:1080px !important;}

/* ---------- Responsive ---------- */

@media (max-width:1320px){
    .premium-dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
    .dashboard-command-grid{grid-template-columns:1fr !important;}
    .dashboard-health-panel{min-height:auto !important;}
    .premium-health-list{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:0 18px !important;}
    .topbar-search-wrap{width:min(430px,42vw) !important;}
}

@media (max-width:1000px){
    .admin-shell{grid-template-columns:78px minmax(0,1fr) !important;}
    .sidebar{width:78px !important;padding-left:10px !important;padding-right:10px !important;}
    .premium-brand-copy,.nav-title,.sidebar-nav a > span:last-child,.sidebar-footer-meta,.system-online{display:none !important;}
    .sidebar-brand,.sidebar-nav a{justify-content:center !important;padding-left:0 !important;padding-right:0 !important;}
    .sidebar-footer-row{justify-content:center !important;}
    .topbar{padding-left:20px !important;padding-right:18px !important;}
    .topbar-search-wrap{width:min(420px,55vw) !important;}
    .profile-copy,.profile-chevron{display:none !important;}
    .page{padding:20px 19px 26px !important;}
    .registry-toolbar{flex-wrap:wrap !important;}
    .registry-search{min-width:100% !important;flex-basis:100% !important;}
}

@media (max-width:720px){
    .admin-shell{display:block !important;}
    .sidebar{position:fixed !important;left:-82px !important;}
    .admin-main{width:100% !important;}
    .mobile-sidebar-button{display:flex !important;}
    .topbar{gap:9px !important;padding:0 11px !important;}
    .topbar-search-wrap{width:calc(100vw - 154px) !important;}
    .topbar-shortcut{display:none !important;}
    .topbar-search{padding-right:12px !important;}
    .theme-toggle{display:none !important;}
    .page{padding:17px 11px 22px !important;}
    .page-heading{align-items:flex-start !important;flex-direction:column !important;}
    .page-heading h1{font-size:26px !important;}
    .heading-actions,.page-heading > .primary-button,.page-heading > .secondary-button{width:100% !important;}
    .heading-actions{justify-content:flex-start !important;flex-wrap:wrap !important;}
    .premium-dashboard-kpis,.registry-stats{grid-template-columns:1fr !important;}
    .premium-dashboard-kpis .kpi{min-height:112px !important;}
    .premium-health-list{grid-template-columns:1fr !important;}
    .registry-toolbar select,.registry-toolbar .secondary-button,.registry-toolbar .clear-filter{flex:1 1 auto !important;}
    .dashboard-security-table{min-width:980px !important;}
    .premium-activity-chart{grid-template-columns:34px minmax(0,1fr) !important;padding-left:8px !important;padding-right:10px !important;}
    .chart-x-labels span:nth-child(even){display:none !important;}
    .admin-shell.mobile-sidebar-open .sidebar{
        left:0 !important;
        width:242px !important;
        padding:20px 14px 16px !important;
        box-shadow:18px 0 48px rgba(0,0,0,.38) !important;
    }
    .admin-shell.mobile-sidebar-open .premium-brand-copy,
    .admin-shell.mobile-sidebar-open .sidebar-nav a > span:last-child,
    .admin-shell.mobile-sidebar-open .sidebar-footer-meta{display:initial !important;}
    .admin-shell.mobile-sidebar-open .system-online{display:flex !important;}
    .admin-shell.mobile-sidebar-open .sidebar-brand,
    .admin-shell.mobile-sidebar-open .sidebar-nav a{justify-content:flex-start !important;}
    .admin-shell.mobile-sidebar-open .sidebar-footer-row{justify-content:space-between !important;}
}


/* ---------- Extended full-system readability ---------- */

.security-toolbar select,
.security-toolbar input[type="date"]{
    min-height:40px !important;
    height:40px !important;
    padding:0 12px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:8px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text) !important;
    font-size:12.5px !important;
    outline:0 !important;
}
.security-toolbar select:focus,
.security-toolbar input[type="date"]:focus{
    border-color:color-mix(in srgb,var(--sx-accent) 60%,var(--sx-border)) !important;
    box-shadow:0 0 0 3px color-mix(in srgb,var(--sx-accent) 9%,transparent) !important;
}
.security-date-label,
.security-filter-summary,
.security-pagination-copy{color:var(--sx-muted) !important;font-size:11.5px !important;}

.security-severity-badge{
    min-height:27px !important;
    padding:0 9px !important;
    gap:6px !important;
    border-radius:6px !important;
    font-size:11px !important;
}
.severity-info{color:var(--sx-blue) !important;background:color-mix(in srgb,var(--sx-blue) 10%,transparent) !important;border-color:color-mix(in srgb,var(--sx-blue) 23%,var(--sx-border)) !important;}
.severity-warning{color:var(--sx-amber) !important;background:var(--sx-amber-soft) !important;border-color:color-mix(in srgb,var(--sx-amber) 25%,var(--sx-border)) !important;}
.severity-critical{color:var(--sx-red) !important;background:var(--sx-red-soft) !important;border-color:color-mix(in srgb,var(--sx-red) 24%,var(--sx-border)) !important;}

.security-event-type{
    min-height:27px !important;
    padding:0 9px !important;
    border:1px solid var(--sx-border-soft) !important;
    border-radius:6px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text-2) !important;
    font-size:11.5px !important;
}
.security-message{color:var(--sx-text-2) !important;font-size:12.5px !important;line-height:1.45 !important;}
.security-subtext{color:var(--sx-muted) !important;font-size:10.5px !important;}
.security-details summary{color:var(--sx-accent) !important;font-size:11.5px !important;}
.security-details summary::before{background:color-mix(in srgb,var(--sx-accent) 9%,transparent) !important;border-color:color-mix(in srgb,var(--sx-accent) 22%,var(--sx-border)) !important;}
.security-details-panel{
    border:1px solid var(--sx-border-soft) !important;
    background:var(--sx-panel-2) !important;
}
.security-details-row strong{color:var(--sx-muted) !important;font-size:9.5px !important;}
.security-details-row span,.security-metadata{color:var(--sx-text-2) !important;font-size:10.5px !important;}
.security-pagination{padding:13px 15px !important;border-top:1px solid var(--sx-border-soft) !important;}
.security-page-link{
    min-width:36px !important;
    height:36px !important;
    padding:0 11px !important;
    border:1px solid var(--sx-border) !important;
    border-radius:8px !important;
    background:var(--sx-panel-2) !important;
    color:var(--sx-text-2) !important;
    font-size:11.5px !important;
}
.security-page-link:hover{color:var(--sx-accent) !important;border-color:color-mix(in srgb,var(--sx-accent) 35%,var(--sx-border)) !important;}

.server-kpi-note{color:var(--sx-muted) !important;font-size:11px !important;}
.server-health-badge::before,.server-license-badge::before{box-shadow:none !important;}
.health-online,.license-active{color:var(--sx-green) !important;}
.health-grace,.license-suspended{color:var(--sx-amber) !important;}
.health-offline,.health-blocked,.license-expired,.license-revoked{color:var(--sx-red) !important;}
.health-deactivated{color:var(--sx-muted) !important;background:var(--sx-panel-3) !important;border-color:var(--sx-border) !important;}

/* Settings internal subcards inherit the approved theme instead of legacy hard-coded dark values. */
.health-copy,.security-metric,.database-admin-security-step,.firewall-control-card,
.server-overview-metric,.server-resource-card,.server-overview-fact,.server-control-card,
.server-control-stat,.postboot-summary,.security-listen-card,.database-admin-card,
.database-admin-layer{
    color:var(--sx-text-2) !important;
}
.health-name,.security-metric strong,.security-subsection-title h3,
.database-admin-security-step strong,.firewall-control-title,.fail2ban-jail-name,
.server-overview-metric strong,.server-resource-head strong,.server-overview-fact strong,
.server-control-card-title,.server-control-stat strong,.postboot-summary strong,
.security-listen-card strong,.database-admin-card strong,.database-admin-layer strong{
    color:var(--sx-text) !important;
}
.health-detail,.security-metric span,.database-admin-security-step span,
.database-admin-security-step small,.firewall-control-copy,.fail2ban-probe-message,
.fail2ban-no-bans,.server-overview-metric span,.server-overview-metric small,
.server-resource-detail,.server-overview-fact span,.server-control-card-copy,
.server-control-stat small,.server-control-stat span{
    color:var(--sx-muted) !important;
}
.security-metric,.database-admin-security-step,.firewall-control-card,.server-overview-metric,
.server-resource-card,.server-overview-fact,.server-control-card,.server-control-stat,
.postboot-summary,.security-listen-card,.database-admin-card,.database-admin-layer{
    background:var(--sx-panel-2) !important;
    border-color:var(--sx-border-soft) !important;
}
.security-helper-warning{color:var(--sx-amber) !important;background:var(--sx-amber-soft) !important;border-color:color-mix(in srgb,var(--sx-amber) 24%,var(--sx-border)) !important;}
.security-helper-warning strong{color:var(--sx-amber) !important;}
.security-command,.fingerprint-box{
    background:var(--sx-bg-deep) !important;
    color:var(--sx-text-2) !important;
    border:1px solid var(--sx-border-soft) !important;
}
.fail2ban-ip-chip{
    background:var(--sx-panel-3) !important;
    color:var(--sx-text-2) !important;
    border-color:var(--sx-border) !important;
}
.fail2ban-unban-button{
    background:var(--sx-amber-soft) !important;
    color:var(--sx-amber) !important;
    border-color:color-mix(in srgb,var(--sx-amber) 28%,var(--sx-border)) !important;
}
.firewall-control-fields input,.firewall-control-fields select,.server-restart-dialog input{
    background:var(--sx-panel-2) !important;
    color:var(--sx-text) !important;
    border-color:var(--sx-border) !important;
}
.server-restart-dialog{
    background:var(--sx-panel) !important;
    color:var(--sx-text) !important;
    border:1px solid var(--sx-border) !important;
}
.server-restart-dialog h3{color:var(--sx-text) !important;}
.server-restart-dialog p,.server-restart-dialog label{color:var(--sx-muted) !important;}
.server-resource-head span{color:var(--sx-text-2) !important;}
.server-resource-track{background:color-mix(in srgb,var(--sx-muted) 17%,transparent) !important;}
.resource-good{background:var(--sx-green) !important;}
.resource-warning{background:var(--sx-amber) !important;}
.resource-danger{background:var(--sx-red) !important;}

html[data-theme="light"] .security-details-panel,
html[data-theme="light"] .security-event-type,
html[data-theme="light"] .security-page-link,
html[data-theme="light"] .security-command,
html[data-theme="light"] .fingerprint-box,
html[data-theme="light"] .fail2ban-ip-chip{
    background:#f7fafc !important;
    color:#2d4d65 !important;
    border-color:#d6e2e9 !important;
}
html[data-theme="light"] .security-details-row span,
html[data-theme="light"] .security-metadata,
html[data-theme="light"] .security-message{color:#294b64 !important;}
html[data-theme="light"] .security-details-row strong,
html[data-theme="light"] .security-subtext,
html[data-theme="light"] .security-filter-summary,
html[data-theme="light"] .security-pagination-copy{color:#5a748a !important;}
html[data-theme="light"] .severity-info{color:#2267b1 !important;background:#edf5ff !important;border-color:#bed5ef !important;}
html[data-theme="light"] .severity-warning{color:#a76200 !important;background:#fff4dc !important;border-color:#efd19a !important;}
html[data-theme="light"] .severity-critical{color:#c63a47 !important;background:#fff0f1 !important;border-color:#edc1c5 !important;}

html[data-theme="light"] .health-item,
html[data-theme="light"] .security-metric,
html[data-theme="light"] .database-admin-security-step,
html[data-theme="light"] .firewall-control-card,
html[data-theme="light"] .server-overview-metric,
html[data-theme="light"] .server-resource-card,
html[data-theme="light"] .server-overview-fact,
html[data-theme="light"] .server-control-card,
html[data-theme="light"] .server-control-stat,
html[data-theme="light"] .postboot-summary,
html[data-theme="light"] .database-admin-card,
html[data-theme="light"] .database-admin-layer,
html[data-theme="light"] .security-listen-card{
    background:#f9fbfd !important;
    border-color:#dbe6ec !important;
}
html[data-theme="light"] .health-name,
html[data-theme="light"] .security-metric strong,
html[data-theme="light"] .security-subsection-title h3,
html[data-theme="light"] .database-admin-security-step strong,
html[data-theme="light"] .firewall-control-title,
html[data-theme="light"] .fail2ban-jail-name,
html[data-theme="light"] .server-overview-metric strong,
html[data-theme="light"] .server-resource-head strong,
html[data-theme="light"] .server-overview-fact strong,
html[data-theme="light"] .server-control-card-title,
html[data-theme="light"] .server-control-stat strong{color:#16344b !important;}
html[data-theme="light"] .health-detail,
html[data-theme="light"] .security-metric span,
html[data-theme="light"] .database-admin-security-step span,
html[data-theme="light"] .database-admin-security-step small,
html[data-theme="light"] .firewall-control-copy,
html[data-theme="light"] .fail2ban-probe-message,
html[data-theme="light"] .fail2ban-no-bans,
html[data-theme="light"] .server-overview-metric span,
html[data-theme="light"] .server-overview-metric small,
html[data-theme="light"] .server-resource-detail,
html[data-theme="light"] .server-overview-fact span,
html[data-theme="light"] .server-control-card-copy,
html[data-theme="light"] .server-control-stat small,
html[data-theme="light"] .server-control-stat span{color:#58738a !important;}
