/* =============================================================
   ACXA Modern Command Surface
   Industrial IoT visual language — Acxa blue, opaque chrome,
   status-first cards, intentional motion only.
   Loaded after premium-luxury.css.
   ============================================================= */

:root {
  --acxa-cyan: #0075de;
  --acxa-cyan-soft: #62aef0;
  --lux-accent: #0075de;
  --lux-accent-2: #62aef0;
  --brand: #0075de;
  --brand-light: #62aef0;
  --brand-glow: rgba(0, 117, 222, 0.16);

  /* Enforced radius scale: 6 / 8 / 12 / 16 / 24 */
  --radius-xs: 6px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --lux-radius: 12px;

  --status-running: #2a9d99;
  --status-stopped: #dd5b00;
  --status-fault: #e03e3e;
  --status-offline: #8a8f98;
  --status-disconnected: #615d59;
}

/* ── Opaque command chrome (no glass) ── */
.topbar.premium-header {
  background: var(--acxa-bg-1, #1e1e1c) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: 1px solid var(--acxa-line) !important;
  box-shadow: none !important;
}

html:not(.dark) .topbar.premium-header {
  background: #ffffff !important;
  border-bottom-color: rgba(0, 0, 0, 0.08) !important;
}

#desktopNav {
  background: var(--acxa-bg-2, #232320) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--acxa-line) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18) !important;
}

html:not(.dark) #desktopNav {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06) !important;
}

#desktopNav::before,
#desktopNav::after {
  display: none !important;
}

#desktopNav .nav-btn.active {
  background: rgba(0, 117, 222, 0.16) !important;
  color: var(--acxa-cyan-soft) !important;
  border-color: rgba(0, 117, 222, 0.28) !important;
}

html:not(.dark) #desktopNav .nav-btn {
  color: #4b4b4b !important;
}

html:not(.dark) #desktopNav .nav-btn svg {
  color: inherit !important;
  stroke: currentColor !important;
  opacity: 0.8 !important;
}

html:not(.dark) #desktopNav .nav-btn.active {
  background: #0075de !important;
  color: #ffffff !important;
  border-color: transparent !important;
}

html:not(.dark) #desktopNav .nav-btn.active svg,
html:not(.dark) #desktopNav .nav-btn.active span {
  color: #ffffff !important;
  opacity: 1 !important;
  stroke: currentColor !important;
}

html:not(.dark) #desktopNav .nav-btn.active::before {
  display: none !important;
}

/* Kill Tailwind hover:text-white — icons must stay dark on light hover wash */
html:not(.dark) #desktopNav .nav-btn:hover:not(.active),
html:not(.dark) #desktopNav .nav-btn:hover:not(.active) span {
  background: #efefef !important;
  color: #191a1b !important;
}

html:not(.dark) #desktopNav .nav-btn:hover:not(.active) svg {
  color: #191a1b !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  filter: none !important;
}

.mobile-bottom-nav .mob-nav-inner {
  background: var(--acxa-bg-1, #1e1e1c) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border: 1px solid var(--acxa-line) !important;
  border-radius: var(--radius-xl) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28) !important;
}

html:not(.dark) .mobile-bottom-nav .mob-nav-inner {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
}

.glass {
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ── Type contract ── */
body.acxa-command-shell,
.command-topbar,
.premium-footer,
.premium-footer .pf-brand,
.premium-footer .pf-tagline,
.premium-footer .pf-legal {
  font-family: var(--font-ui, 'Inter', system-ui, sans-serif) !important;
}

.premium-footer .pf-version,
#page-live .live-machine-stat-value,
#page-live .live-machine-card-id,
#page-live .live-kpi-value,
.nc-data-value,
.font-mono {
  font-family: var(--font-data, 'Fira Code', ui-monospace, monospace) !important;
}

/* ── Live KPI strip ── */
#page-live .live-kpi-card {
  border-radius: var(--radius-md) !important;
  background: var(--acxa-bg-2, #232320) !important;
  border: 1px solid var(--acxa-line) !important;
  box-shadow: none !important;
}

#page-live .live-kpi-label {
  opacity: 0.55 !important;
  font-size: 10px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
}

#page-live .live-kpi-value {
  font-size: clamp(1.75rem, 2.4vw, 2.15rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
  font-variant-numeric: tabular-nums;
}

#page-live .kpi-active-tile {
  border-color: rgba(0, 117, 222, 0.45) !important;
  box-shadow: inset 0 0 0 1px rgba(0, 117, 222, 0.18) !important;
  background: linear-gradient(180deg, rgba(0, 117, 222, 0.1), rgba(35, 35, 32, 0.95)) !important;
}

#page-live .kpi-active-tile::before {
  background: #0075de !important;
}

#page-live .live-kpi-icon-all,
#page-live .live-kpi-icon-gw {
  color: #62aef0 !important;
  background: rgba(0, 117, 222, 0.16) !important;
  border-color: rgba(0, 117, 222, 0.28) !important;
}

html:not(.dark) #page-live .live-kpi-card {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
}

html:not(.dark) #page-live .kpi-active-tile {
  background: linear-gradient(180deg, rgba(0, 117, 222, 0.08), #ffffff) !important;
}

/* Live rhythm */
#page-live .live-cockpit-header {
  margin-bottom: 18px !important;
}

#page-live .kpi-rail {
  margin-bottom: 8px !important;
}

#page-live .live-machine-grid-shell {
  margin-top: 18px !important;
}

/* ── Machine cards: soft left status accent (border, not inset shadow) ── */
#page-live .node-card.live-machine-card {
  position: relative !important;
  overflow: hidden !important;
  border-radius: var(--radius-md) !important;
  border: 1px solid var(--acxa-line) !important;
  border-left: 3px solid var(--status-offline) !important;
  background: var(--acxa-bg-2, #232320) !important;
  filter: none !important;
  opacity: 1 !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12) !important;
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease !important;
}

#page-live .node-card.live-machine-card::before,
#page-live .live-machine-card::before {
  display: none !important;
}

#page-live .node-card.live-machine-card.live-status-running {
  border-left-color: var(--status-running) !important;
}
#page-live .node-card.live-machine-card.live-status-stopped {
  border-left-color: var(--status-stopped) !important;
}
#page-live .node-card.live-machine-card.live-status-faulted,
#page-live .node-card.live-machine-card.live-status-has-fault {
  border-left-color: var(--status-fault) !important;
}
#page-live .node-card.live-machine-card.live-status-offline {
  border-left-color: var(--status-offline) !important;
}
#page-live .node-card.live-machine-card.live-status-disconnected {
  border-left-color: var(--status-disconnected) !important;
}

#page-live .node-card.live-machine-card.nc-offline-dim,
#page-live .node-card.live-machine-card.nc-disconnected {
  filter: none !important;
  opacity: 1 !important;
}

#page-live .live-machine-stat-value {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  font-variant-numeric: tabular-nums;
}

#page-live .live-machine-stat-label {
  font-size: 9.5px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  opacity: 0.5 !important;
  font-weight: 600 !important;
}

#page-live .live-machine-stat {
  border-radius: var(--radius-sm) !important;
  background: rgba(0, 0, 0, 0.18) !important;
  border: 1px solid rgba(255, 255, 255, 0.04) !important;
}

html:not(.dark) #page-live .node-card.live-machine-card {
  background: #ffffff !important;
  border-top-color: rgba(0, 0, 0, 0.08) !important;
  border-right-color: rgba(0, 0, 0, 0.08) !important;
  border-bottom-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}

html:not(.dark) #page-live .live-machine-stat {
  background: rgba(0, 0, 0, 0.03) !important;
  border-color: rgba(0, 0, 0, 0.06) !important;
}

/* Waiting gateway cards */
#page-live #nodeGrid > .premium-card {
  border-radius: var(--radius-md) !important;
  border: 1px solid var(--acxa-line) !important;
  background: var(--acxa-bg-2, #232320) !important;
}

/* ── Phase 3: Alerts ── */
#page-alerts .notif-cat-pill,
.notif-category-pills .notif-cat-pill {
  border-radius: 999px !important;
  border: 1px solid var(--acxa-line) !important;
  font-weight: 600 !important;
}
html.dark #page-alerts .notif-cat-pill,
html.dark .notif-category-pills .notif-cat-pill {
  background: var(--acxa-bg-2, #232320) !important;
}

#page-alerts .alerts-feed-list > *,
#page-alerts .notif-card,
#page-alerts [class*="alert-card"] {
  border-radius: var(--radius-md) !important;
}

/* ── Phase 3: Workers ── */
#page-operators .bg-surface-800\/60,
#page-operators .bg-surface-800\/40,
#page-operators [class*="operator-card"],
#operatorsGrid > div {
  border-radius: var(--radius-md) !important;
}

#page-operators #operatorStats > div {
  border-radius: var(--radius-md) !important;
  border: 1px solid var(--acxa-line);
}

/* ── Phase 3: Machines details ── */
#page-nodes .machine-picker-btn,
#page-nodes .rounded-2xl,
#page-nodes .rounded-xl {
  border-radius: var(--radius-md) !important;
}

#page-nodes .nc-fault-badge,
#page-live .nc-fault-badge {
  border-radius: var(--radius-sm) !important;
  font-family: var(--font-ui) !important;
}

/* ── Phase 3: Reports ── */
#page-reports .rpt-card,
#page-reports [onclick*="openReport"],
#page-reports .rounded-2xl {
  border-radius: var(--radius-md) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ── Phase 3: Account / Settings ── */
#page-account .rounded-2xl,
#page-settings .rounded-2xl,
#page-account .bg-surface-800\/60,
#page-settings .bg-surface-800\/60 {
  border-radius: var(--radius-md) !important;
  border-color: var(--acxa-line) !important;
}

#page-account .bg-brand-600,
#page-settings .bg-brand-600,
button.bg-brand-600 {
  background: #0075de !important;
  color: #ffffff !important;
}

#page-account .bg-brand-600:hover,
#page-settings .bg-brand-600:hover,
button.bg-brand-600:hover {
  background: #005bab !important;
}

/* ── Light mode: unify primary CTAs + active chips to Acxa blue ──
   Beats Uber-black overrides in premium-luxury.css */
html:not(.dark) button[class*="bg-brand"]:not([class*="brand-500/"]):not([class*="brand-600/"]):not([class*="brand-400/"]),
html:not(.dark) .btn-primary,
html:not(.dark) button[class*="from-brand"],
html:not(.dark) #page-settings .bg-brand-600,
html:not(.dark) #page-settings .bg-brand-500,
html:not(.dark) #page-settings button[class*="bg-brand"]:not([class*="brand-500/"]):not([class*="brand-600/"]),
html:not(.dark) #page-account button[class*="bg-brand"]:not([class*="brand-500/"]):not([class*="brand-600/"]),
html:not(.dark) #page-account .bg-brand-600,
html:not(.dark) #page-settings .bg-brand-600,
html:not(.dark) #factoryNameSaveBtn,
html:not(.dark) #shiftSaveBtn,
html:not(.dark) #claimGwBtn,
html:not(.dark) #saveRecoveryEmailBtn,
html:not(.dark) #subscriptionPageContent button[class*="from-brand"],
html:not(.dark) #subscriptionPageContent button[class*="from-emerald"],
html:not(.dark) #subscriptionPageContent button.bg-gradient-to-r.from-brand-500,
html:not(.dark) #subscriptionPageContent #subPayBtn,
html:not(.dark) #subscriptionPageContent #billSaveBtn {
  background: #0075de !important;
  background-image: none !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: none !important;
  filter: none !important;
}

html:not(.dark) button[class*="bg-brand"]:not([class*="brand-500/"]):not([class*="brand-600/"]):hover,
html:not(.dark) .btn-primary:hover,
html:not(.dark) button[class*="from-brand"]:hover,
html:not(.dark) #page-settings button[class*="bg-brand"]:not([class*="brand-500/"]):not([class*="brand-600/"]):hover,
html:not(.dark) #page-settings .bg-brand-600:hover,
html:not(.dark) #page-account .bg-brand-600:hover,
html:not(.dark) #factoryNameSaveBtn:hover,
html:not(.dark) #shiftSaveBtn:hover,
html:not(.dark) #claimGwBtn:hover,
html:not(.dark) #saveRecoveryEmailBtn:hover,
html:not(.dark) #subscriptionPageContent button[class*="from-brand"]:hover,
html:not(.dark) #subscriptionPageContent button[class*="from-emerald"]:hover,
html:not(.dark) #subscriptionPageContent #subPayBtn:hover {
  background: #005bab !important;
  background-image: none !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(0, 117, 222, 0.28) !important;
}

/* Alerts scope Active / Archived / All */
html:not(.dark) .alerts-scope-btn--active,
html:not(.dark) #page-alerts .alerts-scope-btn--active {
  background: #0075de !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
html:not(.dark) .alerts-scope-btn--active:hover,
html:not(.dark) #page-alerts .alerts-scope-btn--active:hover {
  background: #005bab !important;
  color: #ffffff !important;
}
html:not(.dark) .alerts-scope-btn--active svg,
html:not(.dark) #page-alerts .alerts-scope-btn--active svg {
  stroke: #ffffff !important;
  color: #ffffff !important;
}

/* Workers primary actions */
html:not(.dark) #page-operators .operators-add-btn,
html:not(.dark) #page-operators #operatorAddBtn,
html:not(.dark) #page-operators #operatorBulkBtn {
  background: #0075de !important;
  border-color: #0075de !important;
  color: #ffffff !important;
}
html:not(.dark) #page-operators .operators-add-btn:hover,
html:not(.dark) #page-operators #operatorAddBtn:hover,
html:not(.dark) #page-operators #operatorBulkBtn:hover {
  background: #005bab !important;
  border-color: #005bab !important;
  color: #ffffff !important;
}
html:not(.dark) #page-operators .operators-add-btn svg,
html:not(.dark) #page-operators #operatorAddBtn svg,
html:not(.dark) #page-operators #operatorBulkBtn svg {
  stroke: currentColor !important;
  color: #ffffff !important;
}

/* Active tabs / range chips */
html:not(.dark) .tab-btn.active,
html:not(.dark) #page-nodes .chart-range-btn.active {
  background: #0075de !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

/* Toggles on */
html:not(.dark) .ios-toggle.active,
html:not(.dark) .notif-source-toggle.active {
  background: #0075de !important;
  border-color: #0075de !important;
}

/* Subscription brand pills / progress (not alert orange) */
html:not(.dark) #subscriptionPageContent .bg-gradient-to-r:not([class*="amber"]):not([class*="orange"]):not([class*="red"]),
html:not(.dark) #subscriptionPageContent .bg-gradient-to-r.from-brand-500,
html:not(.dark) #subscriptionPageContent .sub-header-pill .bg-gradient-to-r,
html:not(.dark) #subscriptionPageContent [class*="from-brand-500"].bg-gradient-to-r {
  background: #0075de !important;
  background-image: none !important;
  color: #ffffff !important;
  box-shadow: none !important;
}
html:not(.dark) #subscriptionPageContent .sub-header-pill .w-2.h-2.rounded-full {
  background: #0075de !important;
}
html:not(.dark) #subscriptionPageContent button.bg-gradient-to-r,
html:not(.dark) #subscriptionPageContent button.bg-gradient-to-r .text-white,
html:not(.dark) #subscriptionPageContent button[class*="from-brand"],
html:not(.dark) #subscriptionPageContent button[class*="from-brand"] *,
html:not(.dark) #subscriptionPageContent #subPayBtn,
html:not(.dark) #subscriptionPageContent #subPayBtn * {
  color: #ffffff !important;
}
html:not(.dark) #subscriptionPageContent .bg-gradient-to-r:not([class*="amber"]):not(button) {
  color: #ffffff !important;
}

/* Soft brand tints stay tints — restore blue wash Uber turned black */
html:not(.dark) [class*="from-brand"]:not(button):not(a),
html:not(.dark) [class*="bg-brand"]:not(button):not(a) {
  --tw-gradient-from: #0075de !important;
  --tw-gradient-to: #62aef0 !important;
}

.notif-source-toggle.active {
  background: #0075de !important;
}

/* Footer — no purple radial */
.premium-footer {
  background: var(--acxa-bg-0, #191918) !important;
  border-top: 1px solid var(--acxa-line) !important;
  box-shadow: none !important;
}

html:not(.dark) .premium-footer {
  background: #f8f8f7 !important;
}

/* ── Phase 4: motion — card hover lift restored; nav stays flat ── */
.mob-nav-btn.active {
  transform: none !important;
}

#page-live .node-card.live-machine-card:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(0, 117, 222, 0.35) !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16) !important;
}

#page-live .live-kpi-card:hover,
#page-live .kpi-active-tile:hover {
  transform: translateY(-2px) !important;
}

.nav-btn:hover,
.tab-btn:hover {
  transform: none !important;
}

/* Keep purposeful motion */
.page.page-visible {
  transition: opacity var(--lux-page, 220ms) var(--lux-ease, ease) !important;
}

/* ── Phase 3: Alerts denser feed ── */
.notif-cat-pill {
  border-radius: 999px !important;
  transform: none !important;
}
.notif-cat-pill:hover,
.notif-cat-pill--active {
  transform: none !important;
}
.notif-source-row {
  border-radius: var(--radius-md) !important;
  border: 1px solid var(--acxa-line) !important;
}
#page-alerts .alerts-feed-list > div,
#page-alerts .alerts-activity-feed .alerts-feed-list > div {
  border-radius: var(--radius-md) !important;
  border: 1px solid var(--acxa-line);
  background: var(--acxa-bg-2, #232320);
}

/* Workers cards */
#operatorsGrid > div,
#page-operators .operators-stat-card,
#page-operators #operatorStats > * {
  border-radius: var(--radius-md) !important;
}

/* Reports tiles */
#page-reports .grid > button,
#page-reports .grid > div,
#page-reports [data-report-id] {
  border-radius: var(--radius-md) !important;
  backdrop-filter: none !important;
}

/* =============================================================
   LIGHT MODE — contrast, hovers, report modal, alerts pills
   ============================================================= */

html:not(.dark) #page-alerts .alerts-feed-list > div,
html:not(.dark) #page-alerts .alerts-activity-feed .alerts-feed-list > div {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  color: #191a1b !important;
}

html:not(.dark) #page-alerts .notif-cat-pill,
html:not(.dark) .notif-category-pills .notif-cat-pill,
html:not(.dark) .notif-cat-pill {
  background: #f3f3f2 !important;
  color: #3f3f3c !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: none !important;
}
html:not(.dark) #page-alerts .notif-cat-pill:hover,
html:not(.dark) .notif-cat-pill:hover {
  background: #e8e8e6 !important;
  color: #111111 !important;
  border-color: rgba(0, 117, 222, 0.28) !important;
}
/* Must beat #page-alerts .notif-cat-pill and Uber active white-on-white */
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active,
html:not(.dark) .notif-category-pills .notif-cat-pill.notif-cat-pill--active,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active {
  background: #0075de !important;
  color: #ffffff !important;
  border: 1px solid #0075de !important;
  box-shadow: none !important;
}
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active:hover,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active:hover {
  background: #005bab !important;
  color: #ffffff !important;
  border-color: #005bab !important;
}
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active,
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active span,
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-icon,
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-icon svg,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active span,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-icon,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-icon svg {
  color: #ffffff !important;
  stroke: currentColor !important;
  opacity: 1 !important;
}
html:not(.dark) .notif-cat-pill-count {
  background: rgba(0, 0, 0, 0.08) !important;
  color: inherit !important;
}
html:not(.dark) #page-alerts .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-count,
html:not(.dark) .notif-cat-pill.notif-cat-pill--active .notif-cat-pill-count {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
}
html:not(.dark) .notif-cat-pill-icon,
html:not(.dark) .notif-cat-pill-icon svg {
  color: inherit !important;
  stroke: currentColor !important;
  opacity: 1 !important;
}

html:not(.dark) #page-live .node-card.live-machine-card {
  background: #ffffff !important;
  border-top-color: rgba(0, 0, 0, 0.1) !important;
  border-right-color: rgba(0, 0, 0, 0.1) !important;
  border-bottom-color: rgba(0, 0, 0, 0.1) !important;
  border-left-width: 3px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-running {
  border-left-color: var(--status-running) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-stopped {
  border-left-color: var(--status-stopped) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-faulted,
html:not(.dark) #page-live .node-card.live-machine-card.live-status-has-fault {
  border-left-color: var(--status-fault) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-disconnected {
  border-left-color: #c4bfb8 !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-offline {
  border-left-color: #b0b4ba !important;
}
html:not(.dark) #page-live .node-card.live-machine-card:hover {
  border-top-color: rgba(0, 117, 222, 0.35) !important;
  border-right-color: rgba(0, 117, 222, 0.35) !important;
  border-bottom-color: rgba(0, 117, 222, 0.35) !important;
  background: #ffffff !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.1) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-disconnected:hover {
  border-left-color: #c4bfb8 !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-offline:hover {
  border-left-color: #b0b4ba !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-running:hover {
  border-left-color: var(--status-running) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-stopped:hover {
  border-left-color: var(--status-stopped) !important;
}
html:not(.dark) #page-live .node-card.live-machine-card.live-status-faulted:hover,
html:not(.dark) #page-live .node-card.live-machine-card.live-status-has-fault:hover {
  border-left-color: var(--status-fault) !important;
}
html:not(.dark) #page-live .live-machine-stat-label {
  color: #6b6762 !important;
  opacity: 1 !important;
}
html:not(.dark) #page-live .live-machine-stat-value {
  color: #191a1b !important;
}
html:not(.dark) #page-live .live-machine-card-id {
  color: #6b6762 !important;
}
html:not(.dark) #page-live .live-machine-card .nc-name,
html:not(.dark) #page-live .live-machine-card .text-brand-400 {
  color: #005bab !important;
}
html:not(.dark) #page-live .live-machine-card-actions button,
html:not(.dark) #page-live .live-machine-card-actions svg {
  color: #4b4b4b !important;
  stroke: currentColor !important;
  opacity: 0.85 !important;
}
html:not(.dark) #page-live .live-machine-card-actions button:hover,
html:not(.dark) #page-live .live-machine-card-actions button:hover svg {
  color: #191a1b !important;
  stroke: currentColor !important;
  background: rgba(0, 0, 0, 0.06) !important;
  opacity: 1 !important;
  filter: none !important;
}
html:not(.dark) #page-live .nc-chip.is-disconnected {
  background: #efefef !important;
  color: #3f3f3c !important;
  border-color: rgba(0, 0, 0, 0.12) !important;
}
html:not(.dark) #page-live .live-kpi-card:hover {
  border-color: rgba(0, 117, 222, 0.35) !important;
  background: #f8fafc !important;
}

html:not(.dark) #rptFilterModal .rpt-ms-btn,
html:not(.dark) .rpt-ms-btn {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.14) !important;
  color: #191a1b !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-btn:hover,
html:not(.dark) .rpt-ms-btn:hover {
  border-color: rgba(0, 117, 222, 0.45) !important;
  background: #f5f9fc !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-label.placeholder {
  color: #7a756f !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-label:not(.placeholder) {
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-drop {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.12) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12) !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-item {
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-item-name {
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-item-sub {
  color: #4b5563 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-group {
  border-color: rgba(0, 0, 0, 0.08) !important;
  background: #ffffff !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-group-head {
  background: #f3f4f6 !important;
  border-bottom-color: rgba(0, 0, 0, 0.06) !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-group-head:hover {
  background: #eef2f7 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-group-title {
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-group-meta {
  color: #6b7280 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-item-nested:hover {
  background: rgba(0, 117, 222, 0.05) !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-empty {
  color: #6b7280 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-clear {
  background: rgba(0, 0, 0, 0.06) !important;
  color: #4b5563 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-chevron {
  color: #6b7280 !important;
  opacity: 1 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-item:hover {
  background: rgba(0, 117, 222, 0.06) !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-search {
  background: #f5f5f4 !important;
  border-color: rgba(0, 0, 0, 0.12) !important;
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal .rpt-ms-search::placeholder {
  color: #9ca3af !important;
}
html:not(.dark) #rptFilterModal select,
html:not(.dark) #rptFilterModal input[type="date"],
html:not(.dark) #rptFilterModal input[type="time"],
html:not(.dark) #rptFilterModal input[type="number"],
html:not(.dark) #rptFilterModal .bg-surface-900\/80 {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.14) !important;
  color: #191a1b !important;
  color-scheme: light !important;
}
html:not(.dark) #rptFilterModal select:hover,
html:not(.dark) #rptFilterModal input:hover {
  border-color: rgba(0, 117, 222, 0.35) !important;
}
html:not(.dark) #rptFilterModal select:focus,
html:not(.dark) #rptFilterModal input:focus {
  border-color: #0075de !important;
  outline: 2px solid rgba(0, 117, 222, 0.2) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}
html:not(.dark) #rptFilterModal button[onclick*="rptSelect"],
html:not(.dark) #rptFilterModal button[onclick*="rptMSetRange"] {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  color: #3f3f3c !important;
}
html:not(.dark) #rptFilterModal button[onclick*="rptSelect"]:hover,
html:not(.dark) #rptFilterModal button[onclick*="rptMSetRange"]:hover {
  border-color: rgba(0, 117, 222, 0.4) !important;
  color: #0075de !important;
  background: rgba(0, 117, 222, 0.05) !important;
}
html:not(.dark) #rptFilterModal #rptMBtnPdf,
html:not(.dark) #rptFilterModal #rptMBtnExcel,
html:not(.dark) #rptFilterModal #rptMBtnCsv {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
}
html:not(.dark) #rptFilterModal #rptMBtnPdf span,
html:not(.dark) #rptFilterModal #rptMBtnExcel span,
html:not(.dark) #rptFilterModal #rptMBtnCsv span,
html:not(.dark) #rptFilterModal #rptMBtnPdf .text-gray-300,
html:not(.dark) #rptFilterModal #rptMBtnExcel .text-gray-300,
html:not(.dark) #rptFilterModal #rptMBtnCsv .text-gray-300 {
  color: #191a1b !important;
}
html:not(.dark) #rptFilterModal #rptMBtnPdf:hover {
  border-color: rgba(220, 38, 38, 0.45) !important;
  background: rgba(239, 68, 68, 0.06) !important;
}
html:not(.dark) #rptFilterModal #rptMBtnPdf:hover span {
  color: #dc2626 !important;
}
html:not(.dark) #rptFilterModal #rptMBtnExcel:hover {
  border-color: rgba(5, 150, 105, 0.45) !important;
  background: rgba(16, 185, 129, 0.06) !important;
}
html:not(.dark) #rptFilterModal #rptMBtnCsv:hover {
  border-color: rgba(0, 117, 222, 0.45) !important;
  background: rgba(0, 117, 222, 0.06) !important;
}

html:not(.dark) .export-format-btn {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
}
html:not(.dark) .export-format-btn .format-label {
  color: #191a1b !important;
}
html:not(.dark) .export-format-btn .format-desc {
  color: #6b6762 !important;
}
html:not(.dark) .export-format-btn:hover {
  transform: none !important;
  border-color: rgba(0, 117, 222, 0.4) !important;
  background: #f5f9fc !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
}

html:not(.dark) #page-account .rounded-2xl:hover,
html:not(.dark) #page-settings .rounded-2xl:hover,
html:not(.dark) #page-reports .rpt-card:hover {
  border-color: rgba(0, 117, 222, 0.28) !important;
}

/* Live Inspector — light table rows (sticky first col was stuck on #1e1e1c) */
html:not(.dark) #inspectorHistoryScroll {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
}
html:not(.dark) .inspector-table,
html:not(.dark) .inspector-table tbody,
html:not(.dark) .inspector-table tr {
  background: #ffffff !important;
}
html:not(.dark) .inspector-table th,
html:not(.dark) .inspector-table th:first-child {
  background: #f3f3f2 !important;
  color: #4b4b4b !important;
  box-shadow: none !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
}
html:not(.dark) .inspector-table td,
html:not(.dark) .inspector-table td:first-child {
  background: #ffffff !important;
  color: #191a1b !important;
  box-shadow: none !important;
  border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}
html:not(.dark) .inspector-table tr:hover td,
html:not(.dark) .inspector-table tr:hover td:first-child {
  background: #f5f9fc !important;
}
html:not(.dark) .inspector-table tr.is-backlog td,
html:not(.dark) .inspector-table tr.is-backlog td:first-child {
  background: rgba(245, 158, 11, 0.06) !important;
}
html:not(.dark) .inspector-table .text-gray-500,
html:not(.dark) .inspector-table .text-gray-600 {
  color: #6b6762 !important;
}
html:not(.dark) .inspector-range-static {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  color: #4b4b4b !important;
  background: #efefef !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
}
.inspector-range-static {
  display: inline-flex;
  align-items: center;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  color: rgba(233, 232, 230, 0.85);
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* ── Remaining Uber-black CTAs → Acxa blue ── */
html:not(.dark) #opModalSaveBtn,
html:not(.dark) #manualAssignBtn,
html:not(.dark) #opBulkSubmitBtn,
html:not(.dark) #operatorBulkModal button[class*="from-brand"],
html:not(.dark) #operatorModal button[class*="from-brand"],
html:not(.dark) #manualAssignModal button[class*="from-brand"],
html:not(.dark) #setupModal button[class*="from-brand"],
html:not(.dark) #setupModal button[class*="bg-brand"],
html:not(.dark) #kbdModal button[class*="from-brand"],
html:not(.dark) #faultDetailModal button[class*="from-brand"],
html:not(.dark) #faultDetailModal button.fm-preset.bg-brand-600\/30,
html:not(.dark) #slaveInspectorPopup button.bg-gradient-to-r,
html:not(.dark) #slaveInspectorPopup .bg-gradient-to-r,
html:not(.dark) #onboardOverlay button[class*="from-brand"],
html:not(.dark) #onboardOverlay .ob-btn-primary,
html:not(.dark) #onboardOverlay .ob-btn-accent,
html:not(.dark) #obSubscriptionCta,
html:not(.dark) #obMachineSaveBtn,
html:not(.dark) #obShiftSaveBtn,
html:not(.dark) #obBillSaveBtn,
html:not(.dark) #billSaveBtn,
html:not(.dark) #trialOfferBtn,
html:not(.dark) button#changePasswordBtn,
html:not(.dark) #page-account button[onclick*="changeFactoryPassword"],
html:not(.dark) #notifTabBtnActive.active,
html:not(.dark) #notifTabBtnArchived.active,
html:not(.dark) #notifTabBtnAll.active,
html:not(.dark) .chart-range-btn.active,
html:not(.dark) .chart-range-btn[aria-selected="true"],
html:not(.dark) .ob-btn-primary,
html:not(.dark) .ob-btn-accent {
  background: #0075de !important;
  background-image: none !important;
  border: none !important;
  color: #ffffff !important;
  box-shadow: none !important;
  filter: none !important;
}

html:not(.dark) #opModalSaveBtn:hover,
html:not(.dark) #manualAssignBtn:hover,
html:not(.dark) #opBulkSubmitBtn:hover,
html:not(.dark) #operatorBulkModal button[class*="from-brand"]:hover,
html:not(.dark) #operatorModal button[class*="from-brand"]:hover,
html:not(.dark) #manualAssignModal button[class*="from-brand"]:hover,
html:not(.dark) #slaveInspectorPopup button.bg-gradient-to-r:hover,
html:not(.dark) #obSubscriptionCta:hover,
html:not(.dark) .ob-btn-primary:hover,
html:not(.dark) .ob-btn-accent:hover {
  background: #005bab !important;
  background-image: none !important;
  color: #ffffff !important;
  box-shadow: 0 4px 14px rgba(0, 117, 222, 0.28) !important;
}

/* Modal inputs: Acxa focus ring instead of thick black Uber outline */
html:not(.dark) #operatorModal input,
html:not(.dark) #manualAssignModal input,
html:not(.dark) #manualAssignModal select,
html:not(.dark) #operatorBulkModal input {
  border: 1px solid rgba(0, 0, 0, 0.14) !important;
  outline: none !important;
  box-shadow: none !important;
}
html:not(.dark) #operatorModal input:focus,
html:not(.dark) #manualAssignModal input:focus,
html:not(.dark) #manualAssignModal select:focus,
html:not(.dark) #operatorBulkModal input:focus {
  border-color: #0075de !important;
  outline: 2px solid rgba(0, 117, 222, 0.22) !important;
  outline-offset: 0 !important;
  box-shadow: none !important;
}

/* Modal close (X) — light wash, not dark surface chip */
.modal-close-btn {
  background: rgba(255, 255, 255, 0.06);
  color: #a39e98;
  border: none;
}
.modal-close-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  color: #e9e8e6;
}
html:not(.dark) #operatorModal button[onclick*="closeOperatorModal"]:first-of-type,
html:not(.dark) #manualAssignModal button[onclick*="closeManualAssign"]:first-of-type,
html:not(.dark) #operatorBulkModal button[onclick*="closeOperatorBulkModal"],
html:not(.dark) button[onclick*="closeWorkerCalendar"],
html:not(.dark) #rptFilterModal button[onclick*="closeRptModal"]:first-of-type,
html:not(.dark) #faultDetailModal button[onclick*="close"]:first-of-type,
html:not(.dark) #kbdModal button[onclick*="close"]:first-of-type,
html:not(.dark) #setupModal button[onclick*="close"]:first-of-type,
html:not(.dark) #nodeExportModal button[onclick*="close"]:first-of-type,
html:not(.dark) .modal-close-btn {
  background: #efefef !important;
  background-image: none !important;
  color: #4b4b4b !important;
  border: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
}
html:not(.dark) #operatorModal button[onclick*="closeOperatorModal"]:first-of-type:hover,
html:not(.dark) #manualAssignModal button[onclick*="closeManualAssign"]:first-of-type:hover,
html:not(.dark) #operatorBulkModal button[onclick*="closeOperatorBulkModal"]:hover,
html:not(.dark) button[onclick*="closeWorkerCalendar"]:hover,
html:not(.dark) #rptFilterModal button[onclick*="closeRptModal"]:first-of-type:hover,
html:not(.dark) .modal-close-btn:hover {
  background: #e2e2e2 !important;
  color: #111111 !important;
}
html:not(.dark) #operatorModal button[onclick*="closeOperatorModal"]:first-of-type svg,
html:not(.dark) #manualAssignModal button[onclick*="closeManualAssign"]:first-of-type svg,
html:not(.dark) #operatorBulkModal button[onclick*="closeOperatorBulkModal"] svg,
html:not(.dark) button[onclick*="closeWorkerCalendar"] svg,
html:not(.dark) .modal-close-btn svg {
  stroke: currentColor !important;
  color: inherit !important;
  opacity: 1 !important;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ── Report filter modal — modern chrome (light + dark) ── */
.rpt-modal-overlay {
  background: rgba(15, 23, 42, 0.55);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  display: flex;
  align-items: center;
  justify-content: center;
}
.rpt-modal-card {
  animation: rptModalIn 0.22s cubic-bezier(0.22, 1, 0.36, 1);
  border-radius: 1.15rem !important;
}
@keyframes rptModalIn {
  from { opacity: 0; transform: translateY(10px) scale(0.98); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}
.rpt-modal-header {
  border-bottom-color: rgba(148, 163, 184, 0.18) !important;
}
.rpt-modal-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 117, 222, 0.12);
  color: #0075de;
}
.rpt-modal-icon svg {
  width: 1.25rem;
  height: 1.25rem;
  stroke: currentColor;
}
.rpt-section-label {
  color: #94a3b8;
  letter-spacing: 0.08em;
}
.rpt-chip-btn {
  padding: 0.2rem 0.55rem;
  border-radius: 0.45rem;
  border: 1px solid rgba(148, 163, 184, 0.28);
  font-size: 10px;
  line-height: 1.4;
  color: #94a3b8;
  background: transparent;
  transition: border-color 0.15s, color 0.15s, background 0.15s;
}
.rpt-chip-btn:hover {
  border-color: rgba(0, 117, 222, 0.45);
  color: #0075de;
  background: rgba(0, 117, 222, 0.06);
}
.rpt-field {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.rpt-field-label {
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: #94a3b8;
}
.rpt-field-input {
  width: 100%;
  background: rgba(15, 23, 42, 0.55);
  border: 1px solid rgba(148, 163, 184, 0.22);
  color: #e2e8f0;
  font-size: 0.8rem;
  border-radius: 0.75rem;
  padding: 0.6rem 0.85rem;
  transition: border-color 0.15s, box-shadow 0.15s, background 0.15s;
  color-scheme: dark;
}
.rpt-field-input:hover {
  border-color: rgba(0, 117, 222, 0.4);
}
.rpt-field-input:focus {
  outline: none;
  border-color: #0075de;
  box-shadow: 0 0 0 3px rgba(0, 117, 222, 0.18);
}
.rpt-filter-hint {
  font-size: 0.75rem;
  color: #94a3b8;
  padding: 0.75rem 0.9rem;
  border-radius: 0.75rem;
  background: rgba(148, 163, 184, 0.08);
  border: 1px dashed rgba(148, 163, 184, 0.25);
}
.rpt-export-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  padding: 0.9rem 0.65rem;
  border-radius: 0.9rem;
  background: rgba(15, 23, 42, 0.45);
  border: 1px solid rgba(148, 163, 184, 0.2);
  transition: border-color 0.15s, background 0.15s, transform 0.15s;
}
.rpt-export-btn:hover:not(:disabled) {
  transform: translateY(-1px);
}
.rpt-export-btn:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}
.rpt-export-icon {
  width: 2.35rem;
  height: 2.35rem;
  border-radius: 0.65rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.rpt-export-icon-pdf { background: rgba(239, 68, 68, 0.12); color: #f87171; }
.rpt-export-icon-excel { background: rgba(52, 211, 153, 0.12); color: #34d399; }
.rpt-export-icon-csv { background: rgba(0, 117, 222, 0.12); color: #38bdf8; }
.rpt-export-label {
  font-size: 10px;
  font-weight: 600;
  color: #cbd5e1;
  transition: color 0.15s;
}
.rpt-export-pdf:hover:not(:disabled) {
  border-color: rgba(248, 113, 113, 0.45);
  background: rgba(239, 68, 68, 0.06);
}
.rpt-export-pdf:hover:not(:disabled) .rpt-export-label { color: #f87171; }
.rpt-export-excel:hover:not(:disabled) {
  border-color: rgba(52, 211, 153, 0.45);
  background: rgba(52, 211, 153, 0.06);
}
.rpt-export-excel:hover:not(:disabled) .rpt-export-label { color: #34d399; }
.rpt-export-csv:hover:not(:disabled) {
  border-color: rgba(0, 117, 222, 0.45);
  background: rgba(0, 117, 222, 0.06);
}
.rpt-export-csv:hover:not(:disabled) .rpt-export-label { color: #38bdf8; }

/* Light theme overrides */
html:not(.dark) .rpt-modal-overlay {
  background: rgba(15, 23, 42, 0.28);
}
html:not(.dark) .rpt-modal-card {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  box-shadow:
    0 0 0 1px rgba(0, 0, 0, 0.04),
    0 24px 48px rgba(15, 23, 42, 0.14) !important;
}
html:not(.dark) .rpt-modal-header {
  background: rgba(255, 255, 255, 0.92) !important;
  border-bottom-color: rgba(0, 0, 0, 0.06) !important;
}
html:not(.dark) #rptFilterModal #rptModalTitle,
html:not(.dark) .rpt-modal-header .text-gray-200 {
  color: #111827 !important;
}
html:not(.dark) #rptFilterModal #rptModalDesc,
html:not(.dark) .rpt-modal-header .text-gray-500 {
  color: #6b7280 !important;
}
html:not(.dark) .rpt-modal-icon {
  background: #eff6ff;
  color: #0075de;
}
html:not(.dark) .rpt-section-label,
html:not(.dark) .rpt-field-label {
  color: #6b7280 !important;
}
html:not(.dark) .rpt-chip-btn {
  background: #f8fafc;
  border-color: rgba(0, 0, 0, 0.1);
  color: #4b5563;
}
html:not(.dark) .rpt-chip-btn:hover {
  border-color: rgba(0, 117, 222, 0.4);
  color: #0075de;
  background: rgba(0, 117, 222, 0.05);
}
html:not(.dark) .rpt-field-input {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  color: #111827 !important;
  color-scheme: light !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
html:not(.dark) .rpt-field-input:hover {
  border-color: rgba(0, 117, 222, 0.35) !important;
}
html:not(.dark) .rpt-field-input:focus {
  border-color: #0075de !important;
  box-shadow: 0 0 0 3px rgba(0, 117, 222, 0.15) !important;
}
html:not(.dark) .rpt-filter-hint {
  background: #f8fafc;
  border-color: rgba(0, 0, 0, 0.08);
  color: #6b7280;
}
html:not(.dark) .rpt-export-btn {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.1);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
html:not(.dark) .rpt-export-label {
  color: #1f2937 !important;
}
html:not(.dark) .rpt-export-pdf:hover:not(:disabled) {
  border-color: rgba(220, 38, 38, 0.4);
  background: rgba(239, 68, 68, 0.05);
}
html:not(.dark) .rpt-export-pdf:hover:not(:disabled) .rpt-export-label { color: #dc2626 !important; }
html:not(.dark) .rpt-export-excel:hover:not(:disabled) {
  border-color: rgba(5, 150, 105, 0.4);
  background: rgba(16, 185, 129, 0.05);
}
html:not(.dark) .rpt-export-excel:hover:not(:disabled) .rpt-export-label { color: #059669 !important; }
html:not(.dark) .rpt-export-csv:hover:not(:disabled) {
  border-color: rgba(0, 117, 222, 0.4);
  background: rgba(0, 117, 222, 0.05);
}
html:not(.dark) .rpt-export-csv:hover:not(:disabled) .rpt-export-label { color: #0075de !important; }
html:not(.dark) #rptFilterModal .rpt-ms-root .rpt-ms-btn {
  border-radius: 0.75rem !important;
  min-height: 2.5rem;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.03);
}
@media (prefers-reduced-motion: reduce) {
  .rpt-modal-card { animation: none; }
  .rpt-export-btn:hover:not(:disabled) { transform: none; }
}
