/* BB39 Tabler Color Cleanup
   Keeps Tabler layout, but routes legacy color utilities through the panel theme/state contract. */
:root{
  --nxt-state-success:#34f5a2;
  --nxt-state-danger:#ff6b6b;
  --nxt-state-warning:#ffb347;
  --nxt-state-info:var(--nxt-panel-accent,#36a3ff);
  --nxt-state-accent:var(--nxt-panel-accent,#36a3ff);
  --nxt-state-neutral:var(--nxt-panel-muted,#9fb0c4);
  --nxt-state-bg:var(--nxt-panel-card,rgba(12,28,48,.92));
  --nxt-state-border:color-mix(in srgb,var(--nxt-panel-accent,#36a3ff) 22%,rgba(255,255,255,.10));
}
.theme-text-success{color:var(--nxt-state-success)!important}.theme-text-danger{color:var(--nxt-state-danger)!important}.theme-text-warning{color:var(--nxt-state-warning)!important}.theme-text-info,.theme-text-accent{color:var(--nxt-state-info)!important}
.text-secondary,.text-muted{color:var(--nxt-panel-muted,#9fb0c4)!important}
.theme-state-success,.theme-state-danger,.theme-state-warning,.theme-state-info,.theme-state-accent,
.admin-access-badge{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.32rem .72rem;font-weight:800;font-size:.76rem;letter-spacing:.02em;border:1px solid transparent;background:rgba(255,255,255,.05);white-space:nowrap}
.theme-state-success,.admin-access-badge.enabled{color:var(--nxt-state-success)!important;background:color-mix(in srgb,var(--nxt-state-success) 12%,transparent)!important;border-color:color-mix(in srgb,var(--nxt-state-success) 48%,rgba(255,255,255,.08))!important;box-shadow:0 0 14px color-mix(in srgb,var(--nxt-state-success) 18%,transparent)!important}
.theme-state-danger{color:var(--nxt-state-danger)!important;background:color-mix(in srgb,var(--nxt-state-danger) 10%,transparent)!important;border-color:color-mix(in srgb,var(--nxt-state-danger) 46%,rgba(255,255,255,.08))!important;box-shadow:0 0 12px color-mix(in srgb,var(--nxt-state-danger) 15%,transparent)!important}
.theme-state-warning,.admin-access-badge.disabled{color:var(--nxt-state-warning)!important;background:color-mix(in srgb,var(--nxt-state-warning) 11%,transparent)!important;border-color:color-mix(in srgb,var(--nxt-state-warning) 44%,rgba(255,255,255,.08))!important;box-shadow:0 0 12px color-mix(in srgb,var(--nxt-state-warning) 15%,transparent)!important}
.theme-state-info,.theme-state-accent{color:var(--nxt-state-info)!important;background:color-mix(in srgb,var(--nxt-state-info) 12%,transparent)!important;border-color:color-mix(in srgb,var(--nxt-state-info) 40%,rgba(255,255,255,.08))!important;box-shadow:0 0 12px color-mix(in srgb,var(--nxt-state-info) 15%,transparent)!important}
.theme-btn-primary,.theme-btn-info,.theme-btn-success,.theme-btn-warning,.theme-btn-danger,
.theme-btn-outline-primary,.theme-btn-outline-info,.theme-btn-outline-success,.theme-btn-outline-warning,.theme-btn-outline-danger,.theme-btn-outline-neutral,
.admin-access-btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;border-radius:.65rem;padding:.42rem .86rem;font-weight:800;text-decoration:none;line-height:1.2;border:1px solid var(--nxt-state-border)!important;background:color-mix(in srgb,var(--nxt-panel-card,rgba(12,28,48,.92)) 78%,rgba(0,0,0,.20))!important;color:var(--nxt-panel-text,#eaf4ff)!important;transition:.16s ease;cursor:pointer}
.theme-btn-primary,.theme-btn-info{color:var(--nxt-panel-text,#eaf4ff)!important;background:linear-gradient(135deg,color-mix(in srgb,var(--nxt-state-info) 74%,#000 26%),color-mix(in srgb,var(--nxt-state-info) 48%,#000 52%))!important;border-color:color-mix(in srgb,var(--nxt-state-info) 52%,rgba(255,255,255,.08))!important;box-shadow:0 0 16px color-mix(in srgb,var(--nxt-state-info) 20%,transparent)!important}
.theme-btn-success,.theme-btn-outline-success,.admin-access-btn.enable{color:var(--nxt-state-success)!important;border-color:color-mix(in srgb,var(--nxt-state-success) 52%,rgba(255,255,255,.08))!important;background:color-mix(in srgb,var(--nxt-state-success) 9%,transparent)!important;box-shadow:0 0 13px color-mix(in srgb,var(--nxt-state-success) 16%,transparent)!important}
.theme-btn-danger,.theme-btn-outline-danger,.admin-access-btn.disable{color:var(--nxt-state-danger)!important;border-color:color-mix(in srgb,var(--nxt-state-danger) 52%,rgba(255,255,255,.08))!important;background:color-mix(in srgb,var(--nxt-state-danger) 9%,transparent)!important;box-shadow:0 0 13px color-mix(in srgb,var(--nxt-state-danger) 16%,transparent)!important}
.theme-btn-warning,.theme-btn-outline-warning{color:var(--nxt-state-warning)!important;border-color:color-mix(in srgb,var(--nxt-state-warning) 50%,rgba(255,255,255,.08))!important;background:color-mix(in srgb,var(--nxt-state-warning) 9%,transparent)!important}
.theme-btn-outline-primary,.theme-btn-outline-info{color:var(--nxt-state-info)!important;border-color:color-mix(in srgb,var(--nxt-state-info) 50%,rgba(255,255,255,.08))!important;background:color-mix(in srgb,var(--nxt-state-info) 8%,transparent)!important}
.theme-btn-outline-neutral{color:var(--nxt-panel-muted,#9fb0c4)!important;border-color:color-mix(in srgb,var(--nxt-panel-muted,#9fb0c4) 34%,rgba(255,255,255,.08))!important;background:rgba(255,255,255,.04)!important}
[class*="theme-btn-"]:hover,.admin-access-btn:hover{filter:brightness(1.12);transform:translateY(-1px);text-decoration:none!important}
.alert.theme-alert-success,.theme-alert-success{color:var(--nxt-state-success)!important;background:color-mix(in srgb,var(--nxt-state-success) 10%,var(--nxt-panel-card,rgba(12,28,48,.92)) 90%)!important;border-color:color-mix(in srgb,var(--nxt-state-success) 42%,rgba(255,255,255,.08))!important}
.alert.theme-alert-danger,.theme-alert-danger{color:var(--nxt-state-danger)!important;background:color-mix(in srgb,var(--nxt-state-danger) 10%,var(--nxt-panel-card,rgba(12,28,48,.92)) 90%)!important;border-color:color-mix(in srgb,var(--nxt-state-danger) 42%,rgba(255,255,255,.08))!important}
.alert.theme-alert-warning,.theme-alert-warning{color:var(--nxt-state-warning)!important;background:color-mix(in srgb,var(--nxt-state-warning) 10%,var(--nxt-panel-card,rgba(12,28,48,.92)) 90%)!important;border-color:color-mix(in srgb,var(--nxt-state-warning) 42%,rgba(255,255,255,.08))!important}
.alert.theme-alert-info,.theme-alert-info{color:var(--nxt-state-info)!important;background:color-mix(in srgb,var(--nxt-state-info) 10%,var(--nxt-panel-card,rgba(12,28,48,.92)) 90%)!important;border-color:color-mix(in srgb,var(--nxt-state-info) 42%,rgba(255,255,255,.08))!important}
/* Last safety net: if any old Tabler color utilities remain, make them theme-aware instead of blue/green hardcoded. */
.bg-blue-lt,.text-blue,.btn-outline-primary{--tblr-primary:var(--nxt-state-info)!important;--tblr-blue:var(--nxt-state-info)!important}
.bg-green-lt,.text-green,.btn-outline-success{--tblr-success:var(--nxt-state-success)!important;--tblr-green:var(--nxt-state-success)!important}
.bg-red-lt,.text-red,.btn-outline-danger{--tblr-danger:var(--nxt-state-danger)!important;--tblr-red:var(--nxt-state-danger)!important}
.bg-yellow-lt,.text-yellow,.btn-outline-warning{--tblr-warning:var(--nxt-state-warning)!important;--tblr-yellow:var(--nxt-state-warning)!important}
