/*
 * A.R.M.S v205.35
 * Night 01 — Midnight Aviation Gold
 * Day 01   — Executive Pearl Navy
 *
 * Final visual layer only. Operational status/duty source colours are preserved.
 */

:root {
  --arms35-night-ink: #020617;
  --arms35-night-navy: #071a33;
  --arms35-night-panel: #0b1f38;
  --arms35-night-white: #f8fafc;
  --arms35-night-cyan: #38d5ff;
  --arms35-night-gold: #d8b25c;
  --arms35-night-green: #34d399;
  --arms35-day-pearl: #f7f5ef;
  --arms35-day-white: #ffffff;
  --arms35-day-ink: #0b1f33;
  --arms35-day-blue: #1d4ed8;
  --arms35-day-teal: #0f766e;
  --arms35-day-brass: #b88a2f;
  --arms35-day-slate: #64748b;
}

body:not([data-theme]),
body[data-theme="dark"] {
  color-scheme: dark;
  --bg: var(--arms35-night-ink);
  --panel: var(--arms35-night-panel);
  --hdr: var(--arms35-night-navy);
  --input: #07172b;
  --input-text: var(--arms35-night-white);
  --text: var(--arms35-night-white);
  --muted: #9aadc2;
  --border: rgba(216, 178, 92, .22);
  --hover-bg: rgba(56, 213, 255, .075);
  --cyan: var(--arms35-night-cyan);
  --blue: #4f8cff;
  --amber: var(--arms35-night-gold);
  --gold: var(--arms35-night-gold);
  --green: var(--arms35-night-green);
  --shadow: 0 22px 58px rgba(0, 0, 0, .38);
  --arms35-page: var(--arms35-night-ink);
  --arms35-surface: rgba(11, 31, 56, .94);
  --arms35-surface-solid: var(--arms35-night-panel);
  --arms35-surface-soft: rgba(7, 26, 51, .78);
  --arms35-elevated: #102844;
  --arms35-line: rgba(216, 178, 92, .22);
  --arms35-line-strong: rgba(216, 178, 92, .48);
  --arms35-text: var(--arms35-night-white);
  --arms35-muted: #9aadc2;
  --arms35-accent: var(--arms35-night-cyan);
  --arms35-accent-strong: #0bbfe9;
  --arms35-priority: var(--arms35-night-gold);
  --arms35-priority-soft: rgba(216, 178, 92, .12);
  --arms35-success: var(--arms35-night-green);
  --arms35-header: linear-gradient(112deg, #020b18 0%, #071a33 54%, #09213d 100%);
  --arms35-sidebar: linear-gradient(180deg, #030b18 0%, #071a33 48%, #04101f 100%);
  --arms35-card-shadow: 0 22px 58px rgba(0, 0, 0, .34), inset 0 1px rgba(255, 255, 255, .035);
  --arms-v2044-bg: var(--arms35-page);
  --arms-v2044-bg-2: var(--arms35-night-navy);
  --arms-v2044-surface: var(--arms35-surface);
  --arms-v2044-surface-2: var(--arms35-surface-soft);
  --arms-v2044-card: var(--arms35-surface);
  --arms-v2044-card-solid: var(--arms35-surface-solid);
  --arms-v2044-border: var(--arms35-line);
  --arms-v2044-border-strong: var(--arms35-line-strong);
  --arms-v2044-gold: var(--arms35-priority);
  --arms-v2044-gold-2: #e7c879;
  --arms-v2044-blue: var(--arms35-accent);
  --arms-v2044-text: var(--arms35-text);
  --arms-v2044-muted: var(--arms35-muted);
  --arms172-card: var(--arms35-surface);
  --arms172-text: var(--arms35-text);
  --arms172-muted: var(--arms35-muted);
  --arms172-line: var(--arms35-line);
}

body[data-theme="light"] {
  color-scheme: light;
  --bg: var(--arms35-day-pearl);
  --panel: var(--arms35-day-white);
  --hdr: var(--arms35-day-ink);
  --input: #ffffff;
  --input-text: var(--arms35-day-ink);
  --text: var(--arms35-day-ink);
  --muted: var(--arms35-day-slate);
  --border: rgba(11, 31, 51, .14);
  --hover-bg: rgba(29, 78, 216, .055);
  --cyan: var(--arms35-day-blue);
  --blue: var(--arms35-day-blue);
  --amber: var(--arms35-day-brass);
  --gold: var(--arms35-day-brass);
  --green: var(--arms35-day-teal);
  --shadow: 0 18px 45px rgba(11, 31, 51, .09);
  --arms35-page: var(--arms35-day-pearl);
  --arms35-surface: rgba(255, 255, 255, .97);
  --arms35-surface-solid: var(--arms35-day-white);
  --arms35-surface-soft: #f1f3f4;
  --arms35-elevated: #ffffff;
  --arms35-line: rgba(11, 31, 51, .14);
  --arms35-line-strong: rgba(29, 78, 216, .34);
  --arms35-text: var(--arms35-day-ink);
  --arms35-muted: var(--arms35-day-slate);
  --arms35-accent: var(--arms35-day-blue);
  --arms35-accent-strong: #153eaf;
  --arms35-priority: var(--arms35-day-brass);
  --arms35-priority-soft: rgba(184, 138, 47, .1);
  --arms35-success: var(--arms35-day-teal);
  --arms35-header: linear-gradient(112deg, #07182a 0%, #0b1f33 62%, #123451 100%);
  --arms35-sidebar: linear-gradient(180deg, #07182a 0%, #0b1f33 52%, #061625 100%);
  --arms35-card-shadow: 0 16px 38px rgba(11, 31, 51, .085), 0 2px 8px rgba(11, 31, 51, .035);
  --arms-v2044-bg: var(--arms35-page);
  --arms-v2044-bg-2: #f0eee7;
  --arms-v2044-surface: var(--arms35-surface);
  --arms-v2044-surface-2: var(--arms35-surface-soft);
  --arms-v2044-card: var(--arms35-surface);
  --arms-v2044-card-solid: var(--arms35-surface-solid);
  --arms-v2044-border: var(--arms35-line);
  --arms-v2044-border-strong: var(--arms35-line-strong);
  --arms-v2044-gold: var(--arms35-priority);
  --arms-v2044-gold-2: #a87921;
  --arms-v2044-blue: var(--arms35-accent);
  --arms-v2044-text: var(--arms35-text);
  --arms-v2044-muted: var(--arms35-muted);
  --arms172-card: var(--arms35-surface);
  --arms172-text: var(--arms35-text);
  --arms172-muted: var(--arms35-muted);
  --arms172-line: var(--arms35-line);
}

html,
body {
  background: var(--arms35-page) !important;
}

body,
body.arms-v2044-premium-ready {
  color: var(--arms35-text) !important;
  background:
    radial-gradient(circle at 12% -8%, color-mix(in srgb, var(--arms35-accent) 9%, transparent), transparent 31%),
    radial-gradient(circle at 92% 6%, color-mix(in srgb, var(--arms35-priority) 7%, transparent), transparent 25%),
    var(--arms35-page) !important;
}

.bg-grid {
  opacity: .82;
  background-image:
    linear-gradient(color-mix(in srgb, var(--arms35-accent) 4%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--arms35-accent) 4%, transparent) 1px, transparent 1px) !important;
  background-size: 34px 34px !important;
}

body[data-theme="light"] .bg-grid {
  opacity: .6;
  background-image:
    linear-gradient(rgba(11, 31, 51, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(11, 31, 51, .035) 1px, transparent 1px) !important;
}

/* Premium header: navy in both themes, with reserved gold treatment at night. */
#mainApp .site-header {
  min-height: 88px;
  background: var(--arms35-header) !important;
  color: #f8fafc !important;
  border: 0 !important;
  border-bottom: 1px solid var(--arms35-line-strong) !important;
  box-shadow: 0 13px 32px rgba(2, 6, 23, .28), inset 0 -1px rgba(255, 255, 255, .035) !important;
}

#mainApp .site-header,
#mainApp .site-header #headerDate,
#mainApp .site-header .hdr-name,
#mainApp .site-header .mono,
#mainApp .site-header span:not(.badge) {
  color: #f8fafc !important;
}

#mainApp .site-header #dispShift,
#mainApp .site-header #clockLocal,
#mainApp .site-header .wx-pill i {
  color: var(--arms35-accent) !important;
}

body:not([data-theme]) #mainApp .site-header #clockUTC,
body[data-theme="dark"] #mainApp .site-header #clockUTC {
  color: var(--arms35-priority) !important;
}

body[data-theme="light"] #mainApp .site-header #clockUTC {
  color: #f4cf78 !important;
}

#mainApp .site-header .wx-pill {
  color: #d5e1ec !important;
  background: rgba(255, 255, 255, .065) !important;
  border: 1px solid rgba(255, 255, 255, .16) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .045);
}

#mainApp .site-header .hdr-btn {
  color: #dce8f3 !important;
  background: rgba(255, 255, 255, .075) !important;
  border: 1px solid rgba(255, 255, 255, .17) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .055);
}

#mainApp .site-header .hdr-btn:hover {
  color: #ffffff !important;
  background: color-mix(in srgb, var(--arms35-accent) 20%, transparent) !important;
  border-color: color-mix(in srgb, var(--arms35-accent) 66%, white 8%) !important;
}

#mainApp .site-header .hdr-btn.red:hover {
  color: #fff !important;
  background: rgba(220, 38, 38, .24) !important;
  border-color: rgba(248, 113, 113, .62) !important;
}

/* Permission-aware sidebar: intentionally navy for both themes. */
body #sideMenu,
body.arms-v2044-premium-ready #sideMenu,
body[data-theme="light"].arms-v2044-premium-ready #sideMenu {
  color: #e8f1f8 !important;
  background: var(--arms35-sidebar) !important;
  border-right: 1px solid color-mix(in srgb, var(--arms35-accent) 30%, transparent) !important;
  box-shadow: 24px 0 62px rgba(2, 6, 23, .42) !important;
}

#sideMenu .menu-hdr,
#sideMenu .menu-user {
  color: #f8fafc !important;
  background: rgba(2, 9, 20, .28) !important;
  border-color: rgba(255, 255, 255, .095) !important;
}

#sideMenu .menu-hdr h6,
#sideMenu .menu-hdr .mono,
#sideMenu #menuName,
#sideMenu .arms147-source {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
}

#sideMenu #menuShift,
#sideMenu .menu-hdr i {
  color: var(--arms35-accent) !important;
  -webkit-text-fill-color: var(--arms35-accent) !important;
}

#sideMenu .menu-section,
#sideMenu .arms147-group {
  color: #9fb2c7 !important;
  -webkit-text-fill-color: #9fb2c7 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .07) !important;
  border-radius: 0 !important;
  margin: 12px 14px 5px !important;
  padding: 10px 5px 8px !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .17em !important;
  text-transform: uppercase !important;
}

#sideMenu .arms147-section {
  margin-top: 8px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

#sideMenu .menu-item,
#sideMenu .arms147-item,
#sideMenu [data-route] {
  min-height: 44px;
  margin: 3px 10px !important;
  padding: 11px 13px !important;
  color: #d9e5ef !important;
  -webkit-text-fill-color: #d9e5ef !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-left: 3px solid transparent !important;
  border-radius: 12px !important;
  font-weight: 750 !important;
  box-shadow: none !important;
  transform: none !important;
}

#sideMenu .menu-item span,
#sideMenu .arms147-item span,
#sideMenu [data-route] span {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

#sideMenu .menu-item i,
#sideMenu .arms147-item i,
#sideMenu [data-route] i {
  color: #6edcff !important;
  -webkit-text-fill-color: #6edcff !important;
  opacity: .92 !important;
}

#sideMenu .menu-item:hover,
#sideMenu .arms147-item:hover,
#sideMenu [data-route]:hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(56, 213, 255, .095) !important;
  border-color: rgba(56, 213, 255, .18) !important;
  border-left-color: var(--arms35-accent) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .035) !important;
  transform: translateX(2px) !important;
}

#sideMenu .menu-item.active,
#sideMenu .menu-item.arms-v2044-active,
#sideMenu .arms147-item.active,
#sideMenu .arms147-item.arms-v2044-active,
#sideMenu [data-route].active,
#sideMenu [data-route].arms-v2044-active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(90deg, rgba(56, 213, 255, .22), rgba(56, 213, 255, .07)) !important;
  border-color: rgba(56, 213, 255, .25) !important;
  border-left-color: var(--arms35-accent) !important;
  box-shadow: 0 8px 22px rgba(2, 6, 23, .24), inset 3px 0 var(--arms35-accent) !important;
  transform: none !important;
}

body:not([data-theme]) #sideMenu .menu-item.active,
body[data-theme="dark"] #sideMenu .menu-item.active,
body:not([data-theme]) #sideMenu .arms147-item.active,
body[data-theme="dark"] #sideMenu .arms147-item.active {
  border-right-color: rgba(216, 178, 92, .28) !important;
}

#sideMenu .arms147-search-wrap {
  padding: 10px 13px !important;
}

#sideMenu .arms147-search-box {
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  background: rgba(255, 255, 255, .055) !important;
  border: 1px solid rgba(255, 255, 255, .14) !important;
  box-shadow: none !important;
}

#sideMenu .arms147-search-box::placeholder {
  color: #90a5b9 !important;
  -webkit-text-fill-color: #90a5b9 !important;
  opacity: 1;
}

#sideMenu #menuAvatar {
  border-color: var(--arms35-accent) !important;
  background: #071a33 !important;
  box-shadow: 0 0 0 5px rgba(56, 213, 255, .08), 0 12px 28px rgba(0, 0, 0, .28) !important;
}

/* Match the legacy day-mode selector weight so the selected navy sidebar wins. */
body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-section, .arms147-group) {
  color: #9fb2c7 !important;
  -webkit-text-fill-color: #9fb2c7 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .07) !important;
  border-radius: 0 !important;
}

body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-item, .arms147-item, [data-route]) {
  color: #d9e5ef !important;
  -webkit-text-fill-color: #d9e5ef !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-left: 3px solid transparent !important;
  box-shadow: none !important;
  transform: none !important;
}

body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-item, .arms147-item, [data-route]) span {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-item, .arms147-item, [data-route]) i {
  color: #6edcff !important;
  -webkit-text-fill-color: #6edcff !important;
}

body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-item, .arms147-item, [data-route]):hover {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(56, 213, 255, .095) !important;
  border-color: rgba(56, 213, 255, .18) !important;
  border-left-color: var(--arms35-accent) !important;
  transform: translateX(2px) !important;
}

body[data-theme="light"].arms-v2044-premium-ready #sideMenu :is(.menu-item, .arms147-item, [data-route]):is(.active, .arms-v2044-active) {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: linear-gradient(90deg, rgba(56, 213, 255, .22), rgba(56, 213, 255, .07)) !important;
  border-color: rgba(56, 213, 255, .25) !important;
  border-left-color: var(--arms35-accent) !important;
  box-shadow: 0 8px 22px rgba(2, 6, 23, .24), inset 3px 0 var(--arms35-accent) !important;
  transform: none !important;
}

/* Workspace and reusable premium surfaces. */
#mainApp > div,
#mainApp .container-fluid {
  color: var(--arms35-text);
}

body.arms-v2044-premium-ready #mainApp .ctrl-card,
body.arms-v2044-premium-ready #mainApp .card,
body.arms-v2044-premium-ready #mainApp .module-card,
body.arms-v2044-premium-ready #mainApp .dashboard-card,
body.arms-v2044-premium-ready #mainApp .profile-card,
#mainApp .panel-card,
#mainApp .hud-panel,
#mainApp .hud-table-card,
#mainApp .hud-stat-card,
#mainApp .hud-license-card,
#mainApp .arms-hud-frame,
#mainApp .arms-v2044-shell-card,
#mainApp .xg172-card,
#mainApp .xg172-panel,
#mainApp .arms173-audit-card,
#mainApp .arms173-audit-panel {
  color: var(--arms35-text) !important;
  background: var(--arms35-surface) !important;
  border: 1px solid var(--arms35-line) !important;
  box-shadow: var(--arms35-card-shadow) !important;
}

body.arms-v2044-premium-ready #topCard {
  color: var(--arms35-text) !important;
  background: linear-gradient(145deg, var(--arms35-elevated), var(--arms35-surface-solid)) !important;
  border: 1px solid var(--arms35-line-strong) !important;
  border-top: 3px solid var(--arms35-priority) !important;
  box-shadow: var(--arms35-card-shadow) !important;
}

body[data-theme="light"].arms-v2044-premium-ready #topCard {
  background: linear-gradient(145deg, #ffffff, #f7f8f8) !important;
  border-top-color: var(--arms35-accent) !important;
}

#mainApp #topCard h5,
#mainApp #topCard h6,
#mainApp #pageTitle,
#mainApp .hud-module-heading,
#mainApp .hud-main-title,
#mainApp .hud-panel-title,
#mainApp .hud-section-title,
#mainApp .xg172-panel-title {
  color: var(--arms35-text) !important;
  text-shadow: none !important;
}

#mainApp .ctrl-label,
#mainApp .hud-info-label,
#mainApp .hud-stat-label,
#mainApp .hud-license-label,
#mainApp .arms172-label {
  color: var(--arms35-muted) !important;
}

#mainApp #topCard .ctrl-label,
#mainApp .hud-module-sub,
#mainApp .arms172-section-title,
#mainApp .arms-v2044-page-kicker,
#mainApp .arms173-audit-kicker {
  color: var(--arms35-accent) !important;
}

body:not([data-theme]) #mainApp .duty-card,
body[data-theme="dark"] #mainApp .duty-card,
body:not([data-theme]) #mainApp .so-duty-card,
body[data-theme="dark"] #mainApp .so-duty-card {
  border-color: rgba(216, 178, 92, .36) !important;
  box-shadow: 0 18px 48px rgba(0, 0, 0, .32), inset 3px 0 var(--arms35-priority) !important;
}

/* Forms: restrained blue/cyan focus and native option compatibility. */
body.arms-v2044-premium-ready input,
body.arms-v2044-premium-ready textarea,
body.arms-v2044-premium-ready .form-control,
body.arms-v2044-premium-ready .form-select,
#mainApp .arms172-input,
#mainApp .arms172-textarea {
  color: var(--arms35-text) !important;
  -webkit-text-fill-color: var(--arms35-text) !important;
  background: var(--arms35-surface-soft) !important;
  border: 1px solid var(--arms35-line) !important;
  box-shadow: inset 0 1px rgba(255, 255, 255, .025) !important;
}

body[data-theme="light"].arms-v2044-premium-ready input,
body[data-theme="light"].arms-v2044-premium-ready textarea,
body[data-theme="light"].arms-v2044-premium-ready .form-control,
body[data-theme="light"].arms-v2044-premium-ready .form-select {
  background: #ffffff !important;
}

body.arms-v2044-premium-ready input:focus,
body.arms-v2044-premium-ready select:focus,
body.arms-v2044-premium-ready textarea:focus,
body.arms-v2044-premium-ready .form-control:focus,
body.arms-v2044-premium-ready .form-select:focus {
  border-color: var(--arms35-accent) !important;
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--arms35-accent) 15%, transparent) !important;
}

body.arms-v2044-premium-ready input::placeholder,
body.arms-v2044-premium-ready textarea::placeholder {
  color: var(--arms35-muted) !important;
  -webkit-text-fill-color: var(--arms35-muted) !important;
  opacity: .9 !important;
}

/* Buttons: gold is reserved for priority at night; day actions use royal blue. */
body:not([data-theme]) .btn-primary,
body[data-theme="dark"] .btn-primary,
body:not([data-theme]) .arms-btn-primary,
body[data-theme="dark"] .arms-btn-primary,
body:not([data-theme]) .btn-cyan,
body[data-theme="dark"] .btn-cyan,
body:not([data-theme]) .arms-auth-button,
body[data-theme="dark"] .arms-auth-button {
  color: #09111d !important;
  background: linear-gradient(135deg, #e6cc88, var(--arms35-priority)) !important;
  border-color: rgba(255, 225, 151, .48) !important;
  box-shadow: 0 13px 30px rgba(216, 178, 92, .22) !important;
}

body[data-theme="light"] .btn-primary,
body[data-theme="light"] .arms-btn-primary,
body[data-theme="light"] .btn-cyan,
body[data-theme="light"] .arms-auth-button,
body[data-theme="light"] .arms172-btn.primary {
  color: #ffffff !important;
  background: linear-gradient(135deg, #285fdf, var(--arms35-accent-strong)) !important;
  border-color: rgba(29, 78, 216, .52) !important;
  box-shadow: 0 13px 28px rgba(29, 78, 216, .2) !important;
}

body.arms-v2044-premium-ready .btn-secondary,
body.arms-v2044-premium-ready .arms-btn-secondary,
body.arms-v2044-premium-ready .btn-cancel {
  color: var(--arms35-text) !important;
  background: var(--arms35-surface-soft) !important;
  border-color: var(--arms35-line) !important;
}

#mainApp .btn-outline-info {
  color: var(--arms35-accent) !important;
  border-color: color-mix(in srgb, var(--arms35-accent) 48%, transparent) !important;
}

#mainApp .btn-outline-info:hover {
  color: #fff !important;
  background: var(--arms35-accent-strong) !important;
}

/* Tables: container and headers only; source status colours remain authoritative. */
#mainApp .tbl-wrap,
#mainApp .hud-table-card,
#mainApp .arms173-audit-table-wrap {
  background: var(--arms35-surface) !important;
  border-color: var(--arms35-line) !important;
  box-shadow: var(--arms35-card-shadow) !important;
}

body.arms-v2044-premium-ready #mainApp table thead th,
body.arms-v2044-premium-ready #mainApp .table thead th,
#mainApp .fids-table thead th,
#mainApp .xg172-table th,
#mainApp .arms173-audit-table th {
  color: #f8fafc !important;
  background: linear-gradient(180deg, #0c2a48, #071a33) !important;
  border-color: rgba(255, 255, 255, .1) !important;
  border-bottom-color: var(--arms35-accent) !important;
  box-shadow: inset 0 -1px rgba(56, 213, 255, .13);
}

body[data-theme="light"].arms-v2044-premium-ready #mainApp table thead th,
body[data-theme="light"] #mainApp .fids-table thead th,
body[data-theme="light"] #mainApp .xg172-table th,
body[data-theme="light"] #mainApp .arms173-audit-table th {
  color: var(--arms35-day-ink) !important;
  background: linear-gradient(180deg, #eef2f5, #e3e9ed) !important;
  border-color: rgba(11, 31, 51, .13) !important;
  border-bottom-color: var(--arms35-accent) !important;
  box-shadow: inset 0 -1px rgba(29, 78, 216, .08);
}

#mainApp table td,
#mainApp table th {
  border-color: var(--arms35-line) !important;
}

#mainApp .sticky-1,
#mainApp .sticky-2,
#mainApp .row-white td {
  background-color: var(--arms35-surface-solid) !important;
}

#mainApp .row-zebra td {
  background-color: color-mix(in srgb, var(--arms35-muted) 5%, var(--arms35-surface-solid)) !important;
}

#mainApp .sector-header td {
  color: var(--arms35-text) !important;
  background: var(--arms35-surface-soft) !important;
}

/* Modals, command palette, loading and alerts. */
body.arms-v2044-premium-ready .modal-content,
body.arms-v2044-premium-ready .modal-box,
.arms-v2044-command,
.arms172-modal,
.arms-premium-modal {
  color: var(--arms35-text) !important;
  background: var(--arms35-surface-solid) !important;
  border-color: var(--arms35-line-strong) !important;
  box-shadow: 0 32px 84px rgba(2, 6, 23, .42) !important;
}

.menu-overlay,
.modal-overlay,
.arms172-modal-backdrop,
.arms-v2044-command-overlay,
.arms-premium-modal-backdrop {
  background: rgba(2, 6, 23, .7) !important;
  backdrop-filter: blur(10px) saturate(112%) !important;
}

.arms-unified-loading .arms-loading-shell {
  color: var(--arms35-text) !important;
  background: var(--arms35-surface) !important;
  border-color: var(--arms35-line-strong) !important;
  box-shadow: var(--arms35-card-shadow) !important;
}

.arms-unified-loading .arms-loading-spinner {
  border-color: color-mix(in srgb, var(--arms35-accent) 18%, transparent) !important;
  border-top-color: var(--arms35-accent) !important;
}

/* Login form follows the selected pair and keeps the approved A.R.M.S logo. */
#loginScreen,
#forgotPinScreen,
#firstTimeSetup,
#initLoader {
  background:
    radial-gradient(circle at 18% 10%, color-mix(in srgb, var(--arms35-accent) 12%, transparent), transparent 31%),
    radial-gradient(circle at 82% 84%, color-mix(in srgb, var(--arms35-priority) 10%, transparent), transparent 28%),
    var(--arms35-page) !important;
}

#loginScreen::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .55;
  background-image:
    linear-gradient(color-mix(in srgb, var(--arms35-accent) 5%, transparent) 1px, transparent 1px),
    linear-gradient(90deg, color-mix(in srgb, var(--arms35-accent) 5%, transparent) 1px, transparent 1px);
  background-size: 38px 38px;
  mask-image: linear-gradient(to bottom, #000, transparent 85%);
}

#loginScreen .arms-auth-card,
.arms-forgot-card,
.arms-pin-card {
  color: var(--arms35-text) !important;
  background: linear-gradient(150deg, var(--arms35-surface), var(--arms35-surface-solid)) !important;
  border: 1px solid var(--arms35-line-strong) !important;
  border-top: 3px solid var(--arms35-priority) !important;
  box-shadow: 0 32px 90px rgba(2, 6, 23, .4), inset 0 1px rgba(255, 255, 255, .055) !important;
}

body[data-theme="light"] #loginScreen .arms-auth-card,
body[data-theme="light"] .arms-forgot-card,
body[data-theme="light"] .arms-pin-card {
  border-top-color: var(--arms35-accent) !important;
  box-shadow: 0 28px 70px rgba(11, 31, 51, .15), inset 0 1px #fff !important;
}

#loginScreen .arms-auth-logo-stage-v20534 {
  background: linear-gradient(145deg, #020b18, #0b1f38) !important;
  border-color: color-mix(in srgb, var(--arms35-accent) 34%, transparent) !important;
  box-shadow: 0 18px 45px rgba(2, 6, 23, .34), inset 0 1px rgba(255, 255, 255, .06) !important;
}

body:not([data-theme]) #loginScreen .arms-auth-logo-stage-v20534,
body[data-theme="dark"] #loginScreen .arms-auth-logo-stage-v20534 {
  border-color: rgba(216, 178, 92, .34) !important;
  box-shadow: 0 18px 45px rgba(2, 6, 23, .4), 0 0 28px rgba(216, 178, 92, .08) !important;
}

#loginScreen .arms-auth-access-v20534 {
  color: var(--arms35-accent) !important;
  background: color-mix(in srgb, var(--arms35-accent) 9%, transparent) !important;
  border-color: color-mix(in srgb, var(--arms35-accent) 25%, transparent) !important;
}

body:not([data-theme]) #loginScreen .arms-auth-access-v20534,
body[data-theme="dark"] #loginScreen .arms-auth-access-v20534 {
  color: #e7c879 !important;
  background: rgba(216, 178, 92, .08) !important;
  border-color: rgba(216, 178, 92, .25) !important;
}

#loginScreen .arms-auth-label,
#loginScreen .arms-auth-row,
#loginScreen .arms-auth-footer,
.arms-pin-card,
.arms-forgot-card {
  color: var(--arms35-text) !important;
}

#loginScreen .arms-auth-label-icon,
#loginScreen .arms-auth-field-icon-left,
#loginScreen .arms-auth-field-icon-right,
#loginScreen .arms-auth-forgot,
#loginScreen .arms-auth-theme,
.arms-pin-kicker {
  color: var(--arms35-accent) !important;
}

#loginScreen .arms-auth-theme {
  background: var(--arms35-surface) !important;
  border-color: var(--arms35-line-strong) !important;
  box-shadow: var(--arms35-card-shadow) !important;
}

#loginScreen .arms-auth-input-wrap,
.arms-pin-input-wrap {
  background: var(--arms35-surface-soft) !important;
  border-color: var(--arms35-line) !important;
}

body[data-theme="light"] #loginScreen .arms-auth-input-wrap,
body[data-theme="light"] .arms-pin-input-wrap {
  background: #fff !important;
}

#loginScreen .arms-auth-remember,
#loginScreen .arms-auth-footer,
.arms-forgot-sub,
.arms-pin-sub {
  color: var(--arms35-muted) !important;
}

/* Usability and motion. */
:where(button, a, input, select, textarea, [role="button"]):focus-visible {
  outline: 3px solid color-mix(in srgb, var(--arms35-accent) 68%, white 10%) !important;
  outline-offset: 3px !important;
}

::selection {
  color: #fff;
  background: var(--arms35-accent-strong);
}

::-webkit-scrollbar-thumb {
  background: color-mix(in srgb, var(--arms35-accent) 42%, var(--arms35-muted)) !important;
}

@media (max-width: 900px) {
  #mainApp .site-header {
    min-height: 78px;
    padding: 10px 14px !important;
  }

  #mainApp .site-header .hdr-right {
    gap: 7px;
  }

  #mainApp .container-fluid {
    margin-top: 16px !important;
  }
}

@media (max-width: 560px) {
  #mainApp .site-header {
    min-height: 68px;
    border-radius: 0 0 18px 18px;
  }

  #mainApp .site-header .hdr-btn {
    width: 36px;
    height: 36px;
  }

  body.arms-v2044-premium-ready #topCard,
  body.arms-v2044-premium-ready #mainApp .ctrl-card,
  #mainApp .hud-panel,
  #mainApp .hud-table-card,
  #mainApp .arms-hud-frame {
    border-radius: 18px !important;
  }

  #loginScreen .arms-auth-card {
    width: min(94vw, 440px);
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

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