/* Aimlock Hzz Auth. Each workspace has a recognizable accent; actions and
   states retain their own meaning. Kept at this path for existing deployments. */
:root, .hzz-manager {
  --bg-base:#171819; --bg-main:#171819; --bg:#171819;
  --bg-sidebar:#1b1d1f; --bg-input:#1b1d1f; --bg3:#1b1d1f;
  --bg-surface:#202224; --bg-card:#202224; --bg-card-elevated:#242628;
  --bg-card-hover:#292c2f; --bg-secondary:#202224; --bg2:#202224; --bg4:#242628;
  --surface:#202224; --surface2:#242628; --card:#202224;
  --border:#383b3f; --border2:#4b4f55; --line:#383b3f;
  --border-subtle:#383b3f; --border-medium:#45494e;
  --border-focus:var(--section-accent); --border-highlight:rgba(var(--section-rgb),.46);
  --text:#e6e7e9; --text-main:#e6e7e9; --text-primary:#e6e7e9; --ink:#e6e7e9;
  --text-secondary:#aaadb3; --text2:#aaadb3; --text-muted:#989da5;
  --text-dim:#989da5; --text3:#989da5; --muted:#aaadb3;
  --primary:var(--section-accent); --primary-hover:var(--section-accent);
  --accent:var(--section-accent); --accent2:#c8d9ec;
  --accent-cyan:#55cfed; --accent-blue:#66b2ff; --accent-violet:#b699ff;
  --blue:#66b2ff; --blue-primary:#66b2ff; --blue-electric:#66b2ff;
  --telemetry-blue:#66b2ff; --telemetry-cyan:#a7c8e8; --cyan:#55cfed; --cyan2:#a6e8f6;
  --spider-red:var(--section-accent); --spider-red-hover:var(--section-accent);
  --primary-subtle:rgba(var(--section-rgb),.10); --spider-red-subtle:rgba(var(--section-rgb),.10);
  --blue-subtle:#66b2ff14; --primary-glow:transparent; --accent-glow:transparent;
  --spider-red-glow:transparent; --blue-glow-subtle:transparent; --cyan-glow:transparent; --shadow-glow:none;
  --success:#48d4b0; --success-bg:#48d4b014; --green:#48d4b0; --green-bg:#48d4b014;
  --danger:#ff8d9f; --danger-bg:#ff8d9f14; --red:#ff8d9f; --red-bg:#ff8d9f14;
  --warning:#f4c56a; --warning-bg:#f4c56a14; --yellow:#f4c56a; --yellow-bg:#f4c56a14;
  --pending:#7ba9dc; --pending-bg:#7ba9dc14; --purple:#b699ff; --purple-bg:#b699ff14;
  --radius:6px; --radius-xs:3px; --radius-sm:4px; --radius-md:4px; --radius-lg:6px; --radius-xl:8px;
}
:root { --section-accent:#66b2ff; --section-rgb:102,178,255; }

/* Navigation identity also sets the active workspace, dialogs and focus. */
:root:has(#sec-dashboard.active), #sec-dashboard { --section-accent:#66b2ff; --section-rgb:102,178,255; }
:root:has(#sec-keys.active), #sec-keys { --section-accent:#f4c56a; --section-rgb:244,197,106; }
:root:has(#sec-create.active), #sec-create { --section-accent:#48d4b0; --section-rgb:72,212,176; }
:root:has(#sec-products.active), #sec-products { --section-accent:#b699ff; --section-rgb:182,153,255; }
:root:has(#sec-patches.active), #sec-patches { --section-accent:#55cfed; --section-rgb:85,207,237; }
:root:has(#sec-guides.active), #sec-guides { --section-accent:#ffb16d; --section-rgb:255,177,109; }
:root:has(#sec-online.active), #sec-online { --section-accent:#83d49c; --section-rgb:131,212,156; }
:root:has(#sec-logs.active), #sec-logs { --section-accent:#93abc9; --section-rgb:147,171,201; }
:root:has(#sec-anticrack.active), #sec-anticrack { --section-accent:#ff8d9f; --section-rgb:255,141,159; }
:root:has(#sec-subadmins.active), #sec-subadmins { --section-accent:#c7a6f7; --section-rgb:199,166,247; }
:root:has(#sec-settings.active), #sec-settings { --section-accent:#b7c7dc; --section-rgb:183,199,220; }
.tab-item[data-section="dashboard"] { --nav-accent:#66b2ff; --nav-rgb:102,178,255; }
.tab-item[data-section="keys"] { --nav-accent:#f4c56a; --nav-rgb:244,197,106; }
.tab-item[data-section="create"] { --nav-accent:#48d4b0; --nav-rgb:72,212,176; }
.tab-item[data-section="products"] { --nav-accent:#b699ff; --nav-rgb:182,153,255; }
.tab-item[data-section="patches"] { --nav-accent:#55cfed; --nav-rgb:85,207,237; }
.tab-item[data-section="guides"] { --nav-accent:#ffb16d; --nav-rgb:255,177,109; }
.tab-item[data-section="online"] { --nav-accent:#83d49c; --nav-rgb:131,212,156; }
.tab-item[data-section="logs"] { --nav-accent:#93abc9; --nav-rgb:147,171,201; }
.tab-item[data-section="anticrack"] { --nav-accent:#ff8d9f; --nav-rgb:255,141,159; }
.tab-item[data-section="subadmins"] { --nav-accent:#c7a6f7; --nav-rgb:199,166,247; }
.tab-item[data-section="settings"] { --nav-accent:#b7c7dc; --nav-rgb:183,199,220; }

/* Dark surfaces stay calm; color is concentrated at useful landmarks. */
body, .app-workspace, .main-wrapper { background-color:#171819; background-image:none; }
.app-sidebar, .workspace-header { background:#1b1d1f; border-color:#383b3f; box-shadow:none; }
.card, .kpi-card, .system-status-panel, .holo-preview-card, .output-console,
.hzz-manager .stat, .hzz-manager .manager-section {
  background:#202224; border-color:#383b3f; border-radius:6px!important; box-shadow:none;
}
.card:hover, .kpi-card:hover { border-color:#4b4f55; box-shadow:none; }
.kpi-card:hover { transform:none; }
.kpi-card::before, .holo-preview-card::before, .login-box::before { content:none; }
.table-container, .builder-preview, .hzz-manager .builder-preview, .holo-key-display, #bulkActions { border-radius:4px!important; }
.brand-emblem, .user-avatar, .header-user-avatar, .sidebar-user-card,
.hzz-manager .patch-img, .hzz-manager .patch-img-placeholder,
.hzz-manager #guideMediaPreviewBox, .hzz-manager #guideMediaPreviewBox img, .hzz-manager #guideMediaPreviewBox video {
  border-radius:4px!important; box-shadow:none; border-color:#383b3f;
}
.section > .section-header .section-title, .hzz-manager .content-admin-heading h2 { color:#edf0f4; }
.card-title svg, .card-title i, .hzz-manager .section-title svg, .hzz-manager .content-admin-heading h2 svg,
.holo-header > svg, .holo-header > i { color:var(--section-accent); }
.hzz-manager .content-admin-heading p, .bc-current { color:var(--section-accent); }
.section > .card > .card-header-bar, .hzz-manager .manager-section > .section-header {
  border-bottom-color:rgba(var(--section-rgb),.22);
}
.section > .card, .section > .holo-preview-card, .hzz-manager .manager-section {
  border-top-color:rgba(var(--section-rgb),.40);
}

.tab-item { --nav-accent:#66b2ff; --nav-rgb:102,178,255; color:#b2b7bf; border-radius:4px!important; }
.tab-item svg, .tab-item i { color:var(--nav-accent); opacity:.88; }
.tab-item:hover { background:rgba(var(--nav-rgb),.08); color:#edf0f4; border-color:rgba(var(--nav-rgb),.22); }
.tab-item.active {
  background:rgba(var(--nav-rgb),.14); border-color:rgba(var(--nav-rgb),.48);
  color:#f0f3f8; box-shadow:inset 2px 0 var(--nav-accent);
}
.tab-item.active svg, .tab-item.active i { color:var(--nav-accent); opacity:1; }
.nav-section-label, .brand-tag, .bc-root, .bc-group { color:#989da5; }
.search-bar, .search-shortcut, .header-user-badge, .status-chip {
  background:#202224; border-color:#383b3f; border-radius:4px!important; box-shadow:none;
}
.search-bar:focus-within { border-color:var(--section-accent); box-shadow:none; }

/* Primary = this workspace; the fixed create shortcut always remains mint. */
.btn, .btn-icon, .btn-logout, .btn-create-quick, .btn-sidebar-toggle,
input:not([type="checkbox"]):not([type="radio"]), select, textarea,
.hzz-manager .btn, .hzz-manager button, .hzz-manager input:not([type="checkbox"]):not([type="radio"]),
.hzz-manager select, .hzz-manager textarea { border-radius:4px!important; }
.btn-primary, .hzz-manager .btn-primary {
  background:var(--section-accent)!important; border-color:var(--section-accent)!important; color:#101923!important;
  box-shadow:none!important; text-shadow:none!important;
}
.btn-primary:hover, .hzz-manager .btn-primary:hover { filter:brightness(1.09); box-shadow:none!important; }
.btn-primary:active, .hzz-manager .btn-primary:active { filter:brightness(.97); }
.btn-create-quick {
  background:#48d4b0!important; border-color:#48d4b0!important; color:#101923!important; box-shadow:none!important;
}
.btn-create-quick:hover { background:#6bdfc1!important; border-color:#6bdfc1!important; }
.btn-primary svg, .btn-primary i, .btn-create-quick svg { color:inherit!important; }
.btn-secondary, .btn-ghost, .hzz-manager .btn-secondary, .hzz-manager .btn-ghost {
  background:#242628; color:#d8dce1; border-color:#45494e; box-shadow:none;
}
.btn-secondary:hover, .btn-ghost:hover, .hzz-manager .btn-secondary:hover, .hzz-manager .btn-ghost:hover {
  background:rgba(var(--section-rgb),.08); border-color:rgba(var(--section-rgb),.50); color:#f0f3f8;
}
.btn-success, .btn-warning, .btn-danger, .hzz-manager .btn-danger {
  background:#292c2f!important; border:1px solid #4b4f55!important; box-shadow:none!important;
}
.btn-success { color:#48d4b0!important; border-color:#3b806e!important; }
.btn-warning, .text-warning { color:#f4c56a!important; }
.btn-danger, .text-danger, .hzz-manager .btn-danger { color:#ff8d9f!important; }
.btn-danger:hover, .btn-icon.text-danger:hover, .hzz-manager .btn-danger:hover { background:#3b2931!important; border-color:#ad6273!important; }
.btn-success:hover { background:#213a32!important; border-color:#48b397!important; }
.btn-warning:hover { background:#3d3425!important; border-color:#aa864a!important; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible,
a:focus-visible, [tabindex]:focus-visible { outline:2px solid var(--section-accent)!important; outline-offset:3px; box-shadow:none!important; }
input:focus, select:focus, textarea:focus { border-color:var(--section-accent)!important; box-shadow:none!important; }
input[type="checkbox"], input[type="radio"] { accent-color:var(--section-accent); }

/* Action colors have the same meaning on every table and dialog. */
[data-admin-action="copy"], .hzz-manager .copyable { color:#a7c8e8!important; }
[data-admin-action="copy"]:hover, .hzz-manager .copyable:hover { color:#e0efff!important; }
button[data-admin-action="edit-key"], button[data-admin-action="edit-subadmin"],
button[data-admin-action="crack-details"], .hzz-manager button[onclick*=".edit"] {
  color:#66b2ff!important; border-color:#3f5a72; background:#66b2ff0b;
}
button[data-admin-action="edit-key"]:hover, button[data-admin-action="edit-subadmin"]:hover,
.hzz-manager button[onclick*=".edit"]:hover { color:#a5d0ff!important; border-color:#66b2ff; background:#66b2ff17; }
button[data-admin-action^="delete"], button[data-admin-action="remove-device"], .hzz-manager button[onclick*=".delete"] {
  color:#ff8d9f!important; border-color:#6c4852; background:#ff8d9f09;
}
button[data-admin-action^="delete"]:hover, button[data-admin-action="remove-device"]:hover,
.hzz-manager button[onclick*=".delete"]:hover { color:#ffb1bd!important; border-color:#ba6c7d; background:#ff8d9f18; }
button[data-admin-action^="reset"], button[data-admin-action="delete-product-keys"] { color:#f4c56a!important; }

/* Numbers stay quiet; small icon blocks show the metric's meaning. */
.kpi-value, .hzz-manager .stat .num { color:#e3e7ed!important; text-shadow:none!important; }
.kpi-icon-wrap, .hzz-manager .stat-icon {
  color:var(--section-accent); background:rgba(var(--section-rgb),.07)!important; border-color:#45494e!important;
  border-radius:4px!important; text-shadow:none!important; box-shadow:none!important;
}
#sec-dashboard .kpi-card:nth-child(1) .kpi-icon-wrap, .hzz-manager .stat-icon.blue { color:#55cfed!important; background:#55cfed10!important; }
#sec-dashboard .kpi-card:nth-child(2) .kpi-icon-wrap, .hzz-manager .stat-icon.green { color:#48d4b0!important; background:#48d4b010!important; }
#sec-dashboard .kpi-card:nth-child(3) .kpi-icon-wrap { color:#66b2ff!important; background:#66b2ff10!important; }
#sec-dashboard .kpi-card:nth-child(4) .kpi-icon-wrap, .hzz-manager .stat-icon.yellow { color:#f4c56a!important; background:#f4c56a10!important; }
.hzz-manager .stat-icon.purple { color:#b699ff!important; background:#b699ff10!important; }
.kpi-footer, .hzz-manager .stat .label { color:#989da5; }
.sys-stat-val, .status-pill, .status-chip, .status-pill-label, .status-pill-proto { text-shadow:none!important; }
.status-pill, .status-pill-proto { background:#202224; border-color:#383b3f; border-radius:4px!important; box-shadow:none; }
.system-status-panel .sys-stat:nth-child(1) .sys-stat-val, .dbStatusVal { color:#48d4b0!important; }
.system-status-panel .sys-stat:nth-child(2) .sys-stat-val { color:#55cfed!important; }
.status-pulse, .status-pulse-dot, .status-pulse-dot.operational, .status-pulse-dot.db-connected {
  background:#48d4b0; box-shadow:none!important; animation:none!important;
}
.sync-hud-badge, .sync-hud-badge.syncing, .sync-hud-badge.synced,
.toast, .hzz-manager .toast, .hzz-manager .toast-ok, .hzz-manager .toast-err {
  background:#242628; border-color:#4b4f55!important; border-radius:4px!important;
  color:#d8dce1; box-shadow:0 6px 18px #0003; text-shadow:none;
}
.sync-hud-badge i, .sync-hud-badge svg { color:var(--section-accent)!important; }
.sync-hud-badge span { color:#d8dce1!important; }
.toast.success i, .toast.success svg, .hzz-manager .toast-ok svg { color:#48d4b0; }
.toast.error i, .toast.error svg, .hzz-manager .toast-err svg { color:#ff8d9f; }
.toast.warning i, .toast.warning svg { color:#f4c56a; }
.sync-progress-bar { background:var(--section-accent); box-shadow:none; }

/* Status and license tier never change meaning when switching workspaces. */
.badge, .role-badge, .holo-badge, .holo-product-pill, .hzz-manager .badge { border-radius:3px!important; box-shadow:none; }
.badge-active, .hzz-manager .badge-green { background:#48d4b014!important; color:#48d4b0!important; border-color:#3b806e!important; }
.badge-pending { background:#7ba9dc14!important; color:#7ba9dc!important; border-color:#4c6c91!important; }
.hzz-manager .badge-gray, .badge-disabled { background:#ffffff06!important; color:#a7b0bd!important; border-color:#4b515a!important; }
.badge-tier-basic { background:#ffffff07!important; color:#b8c2cf!important; border-color:#4b515a!important; }
.badge-tier-pro, .hzz-manager .badge-blue { background:#66b2ff14!important; color:#66b2ff!important; border-color:#486887!important; }
.badge-tier-vip, .hzz-manager .badge-purple { background:#b699ff14!important; color:#b699ff!important; border-color:#6d5b96!important; }
.role-badge { background:#c7a6f711!important; color:#c7a6f7!important; border-color:#6b587e!important; }
.badge-banned, .badge-danger, .hzz-manager .badge-red { background:#ff8d9f14!important; color:#ff8d9f!important; border-color:#9a5c6b!important; }
.badge-warn, .badge-expired, .hzz-manager .badge-yellow { background:#f4c56a14!important; color:#f4c56a!important; border-color:#8d7448!important; }

.mode-switch-bar, .mode-switch-btn, .tier-option, .preset-chip, .hzz-manager .tab-bar, .hzz-manager .tab-bar .tab { border-radius:4px!important; }
.mode-switch-btn.active, .preset-chip.active, .hzz-manager .tab-bar .tab.active {
  background:rgba(var(--section-rgb),.13); border-color:rgba(var(--section-rgb),.55); color:#eef3f7; box-shadow:none;
}
.mode-switch-btn.active i, .mode-switch-btn.active svg, .preset-chip.active { color:var(--section-accent)!important; }
.tier-option { --tier-accent:#b8c2cf; --tier-rgb:184,194,207; }
.tier-option[onclick*="'pro'"] { --tier-accent:#66b2ff; --tier-rgb:102,178,255; }
.tier-option[onclick*="'vip'"] { --tier-accent:#b699ff; --tier-rgb:182,153,255; }
.tier-title, .holo-badge, .holo-key-display, .holo-product-pill, .holo-meta-val { color:#d8dce1!important; text-shadow:none; }
.tier-option .tier-title i, .tier-option .tier-title svg { color:var(--tier-accent); }
.tier-option.active { background:rgba(var(--tier-rgb),.12); border-color:rgba(var(--tier-rgb),.55); box-shadow:none; }
.tier-option.active .tier-title, .tier-option.active i, .tier-option.active svg { color:var(--tier-accent)!important; }
#holoTypeBadge { color:var(--section-accent)!important; }
.holo-preview-card { background:#202224; }
.holo-key-display, .output-console, #bulkActions { background:#1b1d1f; border-color:#45494e; box-shadow:none; }
.holo-product-pill { background:rgba(var(--section-rgb),.08); border-color:rgba(var(--section-rgb),.30); color:var(--section-accent)!important; }
.hzz-manager .toggle input:checked + .slider { background:#48d4b0; border-color:#48d4b0; }
.hzz-manager .toggle input:checked + .slider::before { background:#101923; }

.login-overlay { --section-accent:#66b2ff; --section-rgb:102,178,255; background:#171819!important; background-image:none!important; }
.login-box, .modal, .hzz-manager .modal { background:#202224; border-color:#45494e; border-radius:8px!important; box-shadow:0 16px 40px #0004; }
.login-logo { border-radius:6px!important; box-shadow:none; border-color:#4b4f55; }
.login-title { text-shadow:none; }
.modal-header, .modal-footer { border-color:#383b3f; }
.modal-header h3 > svg, .hzz-manager .modal h3 > svg { color:var(--section-accent); }
.hzz-manager { background-image:none; }
.hzz-manager .loading { animation:none; }

@media(prefers-reduced-motion:reduce) {
  .tab-item, .btn, .hzz-manager .btn, .card, .kpi-card { transition:none; }
}
