/* Theme tokens loaded after page-level styles so switching themes is deterministic. */
body.mrs-theme-classic {
  --theme-page-bg: #f7fafc;
  --theme-surface: #ffffff;
  --theme-surface-2: #f8fafc;
  --theme-surface-3: #eff6ff;
  --theme-border: #e2e8f0;
  --theme-border-strong: #cbd5e1;
  --theme-primary: #2563eb;
  --theme-primary-2: #0ea5e9;
  --theme-primary-dark: #1d4ed8;
  --theme-primary-deep: #1e3a8a;
  --theme-green: #10b981;
  --theme-green-dark: #047857;
  --theme-warn: #f59e0b;
  --theme-warn-dark: #92400e;
  --theme-danger: #ef4444;
  --theme-danger-dark: #b91c1c;
  --theme-text: #0f172a;
  --theme-muted: #64748b;
  --theme-shadow: 0 14px 34px rgba(15, 23, 42, .075);
  --theme-shadow-strong: 0 16px 38px rgba(37, 99, 235, .22);
  --theme-hero: linear-gradient(135deg, #0ea5e9 0%, #2563eb 52%, #1d4ed8 100%);
  --theme-hero-soft: linear-gradient(135deg, #f7fdff 0%, #e8f8ff 60%, #f8fafc 100%);
}

body.mrs-theme-classic .dash-hero,
body.mrs-theme-classic .report-hero,
body.mrs-theme-classic .management-hero,
body.mrs-theme-classic .stock-hero,
body.mrs-theme-classic .ttn-hero,
body.mrs-theme-classic .qq-hero,
body.mrs-theme-classic .help-hero {
  background: var(--theme-hero, linear-gradient(135deg, #0ea5e9 0%, #2563eb 52%, #1d4ed8 100%)) !important;
  color: #fff !important;
  box-shadow: var(--theme-shadow-strong, 0 16px 38px rgba(37, 99, 235, .22)) !important;
}

body.mrs-theme-classic .dash-hero h1,
body.mrs-theme-classic .dash-hero p,
body.mrs-theme-classic .dash-kicker,
body.mrs-theme-classic .report-hero h1,
body.mrs-theme-classic .report-hero p,
body.mrs-theme-classic .report-kicker,
body.mrs-theme-classic .management-hero h1,
body.mrs-theme-classic .management-hero p,
body.mrs-theme-classic .management-kicker,
body.mrs-theme-classic .stock-hero h1,
body.mrs-theme-classic .stock-hero p,
body.mrs-theme-classic .stock-kicker,
body.mrs-theme-classic .ttn-hero h1,
body.mrs-theme-classic .ttn-hero p,
body.mrs-theme-classic .qq-hero h1,
body.mrs-theme-classic .qq-hero p,
body.mrs-theme-classic .help-hero h1,
body.mrs-theme-classic .help-hero p {
  color: #fff !important;
}

/* Ocean Tech Edu theme. Enabled only when body has .mrs-theme-ocean-tech. */
body.mrs-theme-ocean-tech {
  --bg: #eaf8fd;
  --panel: #ffffff;
  --text: #102235;
  --muted: #587082;
  --line: #cfe5ef;
  --brand: #28A6DE;
  --brand-dark: #0879ad;
  --brand-soft: #dff5fd;
  --brand-pale: #f5fcff;
  --edu-mint: #20c997;
  --edu-ink: #123449;
  --edu-amber: #f5b84b;
  --theme-page-bg: #f6fbfe;
  --theme-surface: rgba(255,255,255,.96);
  --theme-surface-2: #f5fcff;
  --theme-surface-3: #e8f8ff;
  --theme-border: rgba(40,166,222,.22);
  --theme-border-strong: rgba(40,166,222,.38);
  --theme-primary: #28A6DE;
  --theme-primary-2: #28A6DE;
  --theme-primary-dark: #0879ad;
  --theme-primary-deep: #075f88;
  --theme-green: #20c997;
  --theme-green-dark: #087c61;
  --theme-warn: #f5b84b;
  --theme-warn-dark: #9a6500;
  --theme-danger: #ef4444;
  --theme-danger-dark: #b91c1c;
  --theme-text: #102235;
  --theme-muted: #587082;
  --theme-shadow: 0 18px 42px rgba(18,52,73,.08);
  --theme-shadow-strong: 0 24px 58px rgba(18,52,73,.16);
  --theme-hero: linear-gradient(135deg, #28A6DE 0%, #0879ad 58%, #20c997 100%);
  --theme-hero-soft: linear-gradient(135deg, #f7fdff 0%, #e8f8ff 60%, #e9fbf5 100%);
  background:
    linear-gradient(90deg, rgba(40,166,222,.07) 1px, transparent 1px),
    linear-gradient(180deg, rgba(40,166,222,.07) 1px, transparent 1px),
    linear-gradient(180deg, #f7fdff 0, #eaf8fd 280px, #f6fbfe 100%) !important;
  background-size: 34px 34px, 34px 34px, auto !important;
  color: var(--text) !important;
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .container {
  width: min(1320px, calc(100% - 36px)) !important;
}

body.mrs-theme-ocean-tech .mrs-topbar {
  min-height: 82px !important;
  background: rgba(247, 253, 255, .94) !important;
  border-bottom: 1px solid rgba(40, 166, 222, .22) !important;
  box-shadow: 0 12px 34px rgba(18, 52, 73, .09) !important;
  backdrop-filter: blur(18px) saturate(1.25) !important;
}

body.mrs-theme-ocean-tech .mrs-topbar-inner {
  min-height: 82px !important;
}

body.mrs-theme-ocean-tech .mrs-brand {
  color: #0879ad !important;
}

body.mrs-theme-ocean-tech .mrs-brand-logo {
  height: 42px !important;
  filter: drop-shadow(0 8px 16px rgba(40,166,222,.18)) !important;
}

body.mrs-theme-ocean-tech .mrs-brand-name {
  color: #0879ad !important;
  letter-spacing: 0 !important;
  font-weight: 700 !important;
}

body.mrs-theme-ocean-tech .mrs-nav {
  gap: 11px !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item {
  height: 64px !important;
  border-radius: 12px !important;
  color: #38566a !important;
  border-color: transparent !important;
  position: relative !important;
  background: transparent !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item:hover,
body.mrs-theme-ocean-tech .mrs-nav-item:focus,
body.mrs-theme-ocean-tech .mrs-nav-item.is-active {
  background: #f2f5f8 !important;
  border-color: #e5e7eb !important;
  color: #0879ad !important;
  box-shadow: none !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight,
body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight:hover,
body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight:focus,
body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight.is-active {
  background: linear-gradient(135deg,#ef4444 0%,#b91c1c 100%) !important;
  border-color: rgba(185,28,28,.42) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(220,38,38,.24) !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight i {
  background: rgba(255,255,255,.18) !important;
  color: #fff !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.28) !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item.is-active:after {
  content: '' !important;
  position: absolute !important;
  left: 18px !important;
  right: 18px !important;
  bottom: 5px !important;
  height: 3px !important;
  border-radius: 999px !important;
  background: #28A6DE !important;
  box-shadow: 0 0 14px rgba(40,166,222,.40) !important;
}

body.mrs-theme-ocean-tech .mrs-nav-item.mrs-nav-highlight.is-active:after {
  background: rgba(255,255,255,.78) !important;
  box-shadow: 0 0 14px rgba(255,255,255,.35) !important;
}

body.mrs-theme-ocean-tech .mrs-nav-label {
  font-size: 13px !important;
  line-height: 1.08 !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-menu,
body.mrs-theme-ocean-tech .mrs-user-menu {
  background: rgba(255,255,255,.98) !important;
  border-color: #e5e7eb !important;
  box-shadow: 0 18px 42px rgba(15,23,42,.12) !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-menu {
  min-width: 222px !important;
  border-radius: 16px !important;
  padding: 10px !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-item {
  min-height: 48px !important;
  padding: 13px 14px !important;
  border-radius: 11px !important;
  color: #38566a !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-item:hover,
body.mrs-theme-ocean-tech .mrs-user-menu-item:hover {
  background: #f2f5f8 !important;
  color: #0879ad !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-item.mrs-nav-highlight,
body.mrs-theme-ocean-tech .mrs-dropdown-item.mrs-nav-highlight:hover,
body.mrs-theme-ocean-tech .mrs-dropdown-item.mrs-nav-highlight.is-active {
  background: linear-gradient(135deg,#ef4444 0%,#b91c1c 100%) !important;
  color: #fff !important;
  box-shadow: 0 8px 18px rgba(220,38,38,.18) !important;
}

body.mrs-theme-ocean-tech .mrs-menu-attention-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 17px !important;
  padding: 2px 6px !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #b91c1c !important;
  border: 1px solid rgba(255,255,255,.72) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}

@media (min-width: 1200px) and (max-width: 1400px) and (max-height: 820px) {
  body.mrs-theme-ocean-tech .container {
    width: min(1288px, calc(100% - 28px)) !important;
  }

  body.mrs-theme-ocean-tech .mrs-topbar,
  body.mrs-theme-ocean-tech .mrs-topbar-inner {
    min-height: 64px !important;
  }

  body.mrs-theme-ocean-tech .mrs-brand-logo {
    height: 34px !important;
  }

  body.mrs-theme-ocean-tech .mrs-nav {
    gap: 5px !important;
  }

  body.mrs-theme-ocean-tech .mrs-nav-item,
  body.mrs-theme-ocean-tech .mrs-nav-dropdown {
    height: 52px !important;
    min-width: 74px !important;
  }

  body.mrs-theme-ocean-tech .mrs-nav-label {
    font-size: 10.5px !important;
    line-height: 1.06 !important;
  }
}

body.mrs-theme-ocean-tech .mrs-nav-item > .mrs-menu-attention-badge {
  position: absolute !important;
  top: 4px !important;
  right: 5px !important;
  min-height: 15px !important;
  padding: 2px 5px !important;
  font-size: 8px !important;
  box-shadow: 0 2px 7px rgba(15,23,42,.16) !important;
}

body.mrs-theme-ocean-tech .mrs-dropdown-item:not(.mrs-nav-highlight) .mrs-menu-attention-badge {
  background: #fee2e2 !important;
  border-color: #fecaca !important;
  color: #b91c1c !important;
}

body.mrs-theme-ocean-tech .mrs-user-pill {
  background: linear-gradient(180deg, #eefbff 0%, #dff6fe 100%) !important;
  border-color: rgba(40,166,222,.35) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.9), 0 10px 22px rgba(40,166,222,.12) !important;
}

body.mrs-theme-ocean-tech .mrs-user-avatar,
body.mrs-theme-ocean-tech .user-avatar {
  background: linear-gradient(135deg, #28A6DE 0%, #0879ad 100%) !important;
}

body.mrs-theme-ocean-tech .mrs-user-text strong,
body.mrs-theme-ocean-tech .mrs-user-text small {
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .mrs-system-btn {
  color: #0879ad !important;
  background: #edfaff !important;
  border-color: rgba(40,166,222,.28) !important;
}

body.mrs-theme-ocean-tech .mrs-system-btn:hover,
body.mrs-theme-ocean-tech .mrs-system-btn:focus,
body.mrs-theme-ocean-tech .mrs-system-btn.is-active {
  background: linear-gradient(135deg, #28A6DE, #0879ad) !important;
  border-color: transparent !important;
  color: #fff !important;
}

body.mrs-theme-ocean-tech .page-title h1,
body.mrs-theme-ocean-tech h1,
body.mrs-theme-ocean-tech h2,
body.mrs-theme-ocean-tech h3 {
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .page-title h1 {
  color: #0879ad !important;
}

body.mrs-theme-ocean-tech .panel,
body.mrs-theme-ocean-tech .card,
body.mrs-theme-ocean-tech .table-container,
body.mrs-theme-ocean-tech .modal-content {
  border-color: rgba(40,166,222,.20) !important;
  box-shadow: 0 18px 42px rgba(18,52,73,.08) !important;
}

body.mrs-theme-ocean-tech .panel,
body.mrs-theme-ocean-tech .card {
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.94)) !important;
}

body.mrs-theme-ocean-tech table {
  border-color: rgba(40,166,222,.20) !important;
  box-shadow: 0 10px 28px rgba(18,52,73,.06) !important;
}

body.mrs-theme-ocean-tech th {
  background: linear-gradient(180deg, #e8f8ff 0%, #dff5fd 100%) !important;
  color: #0879ad !important;
}

body.mrs-theme-ocean-tech tr:hover td {
  background: #f2fbff !important;
}

body.mrs-theme-ocean-tech input,
body.mrs-theme-ocean-tech select,
body.mrs-theme-ocean-tech textarea {
  border-color: #cfe5ef !important;
  border-radius: 10px !important;
}

body.mrs-theme-ocean-tech input:focus,
body.mrs-theme-ocean-tech select:focus,
body.mrs-theme-ocean-tech textarea:focus {
  border-color: #28A6DE !important;
  box-shadow: 0 0 0 4px rgba(40,166,222,.14) !important;
}

body.mrs-theme-ocean-tech .button,
body.mrs-theme-ocean-tech button {
  border-radius: 10px !important;
}

body.mrs-theme-ocean-tech .button:not(.secondary):not(.danger),
body.mrs-theme-ocean-tech button:not(.secondary):not(.danger):not(.close-modal):not(.btn-text) {
  background: linear-gradient(135deg, #28A6DE, #118ac0) !important;
  border-color: transparent !important;
  box-shadow: 0 10px 24px rgba(40,166,222,.20) !important;
}

body.mrs-theme-ocean-tech .button.secondary,
body.mrs-theme-ocean-tech button.secondary {
  background: #f5fcff !important;
  color: #0879ad !important;
  border-color: #bfe6f5 !important;
}

body.mrs-theme-ocean-tech .status.approved {
  color: #087c61 !important;
  background: #e9fbf5 !important;
  border-color: #9ee8d1 !important;
}

body.mrs-theme-ocean-tech .status.pending {
  color: #9a6500 !important;
  background: #fff8e8 !important;
  border-color: #f8d884 !important;
}

body.mrs-theme-ocean-tech .mobile-bottom-nav {
  background: rgba(247,253,255,.96) !important;
  border-top-color: rgba(40,166,222,.22) !important;
  box-shadow: 0 -10px 28px rgba(18,52,73,.10) !important;
}

body.mrs-theme-ocean-tech .mobile-bottom-nav a:hover,
body.mrs-theme-ocean-tech .mobile-bottom-nav a.active {
  color: #0879ad !important;
}

@media (max-width: 900px) {
  body.mrs-theme-ocean-tech .mrs-topbar,
  body.mrs-theme-ocean-tech .mrs-topbar-inner {
    min-height: 60px !important;
  }
}

/* Page-specific adapters for pages that ship their own inline CSS. */
body.mrs-theme-ocean-tech .dash-hero,
body.mrs-theme-ocean-tech .report-hero,
body.mrs-theme-ocean-tech .management-hero,
body.mrs-theme-ocean-tech .stock-hero,
body.mrs-theme-ocean-tech .ttn-hero {
  background: var(--theme-hero, linear-gradient(135deg, #0ea5e9 0%, #2563eb 52%, #1d4ed8 100%)) !important;
  border: 1px solid rgba(255,255,255,.28) !important;
  box-shadow: var(--theme-shadow-strong) !important;
}

body.mrs-theme-ocean-tech .dash-hero h1,
body.mrs-theme-ocean-tech .report-hero h1,
body.mrs-theme-ocean-tech .management-hero h1,
body.mrs-theme-ocean-tech .stock-hero h1,
body.mrs-theme-ocean-tech .ttn-hero h1 {
  color: #fff !important;
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .dash-kicker,
body.mrs-theme-ocean-tech .report-kicker,
body.mrs-theme-ocean-tech .management-kicker,
body.mrs-theme-ocean-tech .stock-kicker {
  color: rgba(255,255,255,.94) !important;
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .report-mobile-page,
body.mrs-theme-ocean-tech .management-page,
body.mrs-theme-ocean-tech .approved-stock-page,
body.mrs-theme-ocean-tech .ttn-page,
body.mrs-theme-ocean-tech .stock-page,
body.mrs-theme-ocean-tech .qq-wrap,
body.mrs-theme-ocean-tech .qzr-page {
  color: var(--theme-text) !important;
}

body.mrs-theme-ocean-tech #reportForm.report-form-card,
body.mrs-theme-ocean-tech .report-form-card,
body.mrs-theme-ocean-tech .summary-card,
body.mrs-theme-ocean-tech .filter-card,
body.mrs-theme-ocean-tech .approval-table-wrap,
body.mrs-theme-ocean-tech .approved-stock-card,
body.mrs-theme-ocean-tech .approved-stock-panel,
body.mrs-theme-ocean-tech .sr-card,
body.mrs-theme-ocean-tech .stock-card,
body.mrs-theme-ocean-tech .stock-filter,
body.mrs-theme-ocean-tech .stock-table-card,
body.mrs-theme-ocean-tech .stock-modal-card,
body.mrs-theme-ocean-tech .ttn-panel,
body.mrs-theme-ocean-tech .mgmt-card,
body.mrs-theme-ocean-tech .qq-panel,
body.mrs-theme-ocean-tech .qq-tab-panel,
body.mrs-theme-ocean-tech .player-card,
body.mrs-theme-ocean-tech .qq-success-dialog,
body.mrs-theme-ocean-tech .qzr-card,
body.mrs-theme-ocean-tech .qzr-panel {
  background: var(--theme-surface) !important;
  border-color: var(--theme-border) !important;
  box-shadow: var(--theme-shadow) !important;
}

body.mrs-theme-ocean-tech .summary-card:before,
body.mrs-theme-ocean-tech .mgmt-card:before,
body.mrs-theme-ocean-tech .stock-card:before {
  background: linear-gradient(180deg, var(--theme-primary), var(--theme-green)) !important;
}

body.mrs-theme-ocean-tech .mgmt-card:hover,
body.mrs-theme-ocean-tech .summary-card:hover,
body.mrs-theme-ocean-tech .stock-card:hover,
body.mrs-theme-ocean-tech .qzr-card:hover {
  border-color: var(--theme-border-strong) !important;
  box-shadow: var(--theme-shadow-strong) !important;
}

body.mrs-theme-ocean-tech .summary-card i,
body.mrs-theme-ocean-tech .mgmt-card i,
body.mrs-theme-ocean-tech .stock-card .card-icon,
body.mrs-theme-ocean-tech .report-hero-chip,
body.mrs-theme-ocean-tech .management-hero-badge,
body.mrs-theme-ocean-tech .branch-pill,
body.mrs-theme-ocean-tech .qq-group-meta-primary {
  background: var(--theme-surface-3) !important;
  color: var(--theme-primary-dark) !important;
  border-color: var(--theme-border) !important;
}

body.mrs-theme-ocean-tech .summary-card h3,
body.mrs-theme-ocean-tech .mgmt-card h3,
body.mrs-theme-ocean-tech .stock-table-head h2,
body.mrs-theme-ocean-tech .ttn-panel h2,
body.mrs-theme-ocean-tech .qq-approval-preview h4,
body.mrs-theme-ocean-tech .qq-preview-head strong,
body.mrs-theme-ocean-tech .stock-mobile-name strong,
body.mrs-theme-ocean-tech .selected-gift-box strong,
body.mrs-theme-ocean-tech .modal-gift-name {
  color: var(--theme-text) !important;
  letter-spacing: 0 !important;
}

body.mrs-theme-ocean-tech .summary-card p,
body.mrs-theme-ocean-tech .mgmt-card p,
body.mrs-theme-ocean-tech .stock-table-head p,
body.mrs-theme-ocean-tech .ttn-map,
body.mrs-theme-ocean-tech .ttn-start-help,
body.mrs-theme-ocean-tech .stock-card .label,
body.mrs-theme-ocean-tech .stock-card .sub,
body.mrs-theme-ocean-tech .muted-small,
body.mrs-theme-ocean-tech .qq-group-meta,
body.mrs-theme-ocean-tech .qq-group-metric small,
body.mrs-theme-ocean-tech .qq-preview-total span {
  color: var(--theme-muted) !important;
}

body.mrs-theme-ocean-tech .customer-name,
body.mrs-theme-ocean-tech .modal-gift-code,
body.mrs-theme-ocean-tech .qq-branch-link,
body.mrs-theme-ocean-tech .qq-share-cell a,
body.mrs-theme-ocean-tech .stock-row-edit,
body.mrs-theme-ocean-tech .stock-mobile-edit,
body.mrs-theme-ocean-tech .modal-select-btn,
body.mrs-theme-ocean-tech .btn-text,
body.mrs-theme-ocean-tech .qzr-link {
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .filter-submit,
body.mrs-theme-ocean-tech .dash-hero-btn,
body.mrs-theme-ocean-tech .stock-row-edit:hover,
body.mrs-theme-ocean-tech .stock-mobile-edit:hover,
body.mrs-theme-ocean-tech .modal-select-btn:hover,
body.mrs-theme-ocean-tech .page-link.active,
body.mrs-theme-ocean-tech .page-link:hover,
body.mrs-theme-ocean-tech .page-btn.active,
body.mrs-theme-ocean-tech .ttn-button,
body.mrs-theme-ocean-tech .stock-adjust-submit,
body.mrs-theme-ocean-tech .qq-mini-btn.approve,
body.mrs-theme-ocean-tech .qq-preview-bulk-actions .qq-bulk-approve,
body.mrs-theme-ocean-tech .qq-btn,
body.mrs-theme-ocean-tech .qzr-btn-primary {
  background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-dark)) !important;
  border-color: transparent !important;
  color: #fff !important;
}

body.mrs-theme-ocean-tech .ttn-button.secondary,
body.mrs-theme-ocean-tech .stock-secondary-btn,
body.mrs-theme-ocean-tech .filter-reset,
body.mrs-theme-ocean-tech .page-link,
body.mrs-theme-ocean-tech .page-btn,
body.mrs-theme-ocean-tech .modal-pager-btn,
body.mrs-theme-ocean-tech .qzr-btn-secondary {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-border) !important;
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .stock-primary-btn,
body.mrs-theme-ocean-tech .dash-hero .button,
body.mrs-theme-ocean-tech .report-hero .button {
  background: #fff !important;
  color: var(--theme-primary-dark) !important;
  border-color: rgba(255,255,255,.8) !important;
}

body.mrs-theme-ocean-tech .branch-autocomplete-input,
body.mrs-theme-ocean-tech .branch-autocomplete-list,
body.mrs-theme-ocean-tech .autocomplete-list,
body.mrs-theme-ocean-tech .stock-filter input,
body.mrs-theme-ocean-tech .stock-filter select,
body.mrs-theme-ocean-tech .ttn-start-form select,
body.mrs-theme-ocean-tech .ttn-start-form input,
body.mrs-theme-ocean-tech .stock-adjust-field input,
body.mrs-theme-ocean-tech .stock-adjust-field select,
body.mrs-theme-ocean-tech .modal-search-row input,
body.mrs-theme-ocean-tech .qq-input,
body.mrs-theme-ocean-tech .qq-select,
body.mrs-theme-ocean-tech .qzr-input,
body.mrs-theme-ocean-tech .qzr-select {
  background: #fff !important;
  border-color: var(--theme-border) !important;
  color: var(--theme-text) !important;
}

body.mrs-theme-ocean-tech .branch-autocomplete-input:focus,
body.mrs-theme-ocean-tech .stock-filter input:focus,
body.mrs-theme-ocean-tech .stock-filter select:focus,
body.mrs-theme-ocean-tech .qq-input:focus,
body.mrs-theme-ocean-tech .qq-select:focus,
body.mrs-theme-ocean-tech .qzr-input:focus,
body.mrs-theme-ocean-tech .qzr-select:focus {
  border-color: var(--theme-primary) !important;
  box-shadow: 0 0 0 4px rgba(40,166,222,.14) !important;
}

body.mrs-theme-ocean-tech .branch-autocomplete-item:hover,
body.mrs-theme-ocean-tech .branch-autocomplete-item.active,
body.mrs-theme-ocean-tech .autocomplete-item:hover {
  background: var(--theme-surface-3) !important;
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .loading-box,
body.mrs-theme-ocean-tech .stock-num,
body.mrs-theme-ocean-tech .stock-mobile-qty,
body.mrs-theme-ocean-tech .modal-stock-num,
body.mrs-theme-ocean-tech .ttn-stat strong,
body.mrs-theme-ocean-tech .ttn-state strong,
body.mrs-theme-ocean-tech .qq-group-metric strong,
body.mrs-theme-ocean-tech .qq-preview-total strong {
  color: var(--theme-text) !important;
}

body.mrs-theme-ocean-tech .loading-spinner {
  border-color: #dff5fd !important;
  border-top-color: var(--theme-primary) !important;
}

body.mrs-theme-ocean-tech .stock-modal-header,
body.mrs-theme-ocean-tech #listModal .modal-header,
body.mrs-theme-ocean-tech #formModal .modal-header {
  background: var(--theme-hero, linear-gradient(135deg, #0ea5e9 0%, #2563eb 52%, #1d4ed8 100%)) !important;
  box-shadow: inset 0 -1px 0 rgba(255,255,255,.18) !important;
}

body.mrs-theme-ocean-tech .stock-table th,
body.mrs-theme-ocean-tech .modal-gift-table th,
body.mrs-theme-ocean-tech .compact-table th,
body.mrs-theme-ocean-tech .qq-preview-table th,
body.mrs-theme-ocean-tech .responsive-table th {
  background: linear-gradient(180deg, #e8f8ff 0%, #dff5fd 100%) !important;
  color: var(--theme-primary-dark) !important;
  border-color: var(--theme-border) !important;
}

body.mrs-theme-ocean-tech .stock-table td,
body.mrs-theme-ocean-tech .modal-gift-table td,
body.mrs-theme-ocean-tech .compact-table td,
body.mrs-theme-ocean-tech .qq-preview-table td,
body.mrs-theme-ocean-tech .responsive-table td {
  border-color: rgba(40,166,222,.14) !important;
}

body.mrs-theme-ocean-tech .stock-table tbody tr:hover,
body.mrs-theme-ocean-tech .compact-table tbody tr:hover td,
body.mrs-theme-ocean-tech .responsive-table tbody tr:hover td {
  background: #f2fbff !important;
}

body.mrs-theme-ocean-tech .ttn-start-form,
body.mrs-theme-ocean-tech .ttn-stat,
body.mrs-theme-ocean-tech .ttn-state div,
body.mrs-theme-ocean-tech .ttn-note,
body.mrs-theme-ocean-tech .stock-adjust-panel,
body.mrs-theme-ocean-tech .selected-gift-box,
body.mrs-theme-ocean-tech .qq-approval-preview,
body.mrs-theme-ocean-tech .qq-preview-table-wrap,
body.mrs-theme-ocean-tech .qq-preview-total span,
body.mrs-theme-ocean-tech .qq-detail-row > td {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-border) !important;
}

body.mrs-theme-ocean-tech .ttn-progress {
  background: #dff5fd !important;
}

body.mrs-theme-ocean-tech .ttn-progress div {
  background: linear-gradient(90deg, var(--theme-primary), var(--theme-green)) !important;
}

body.mrs-theme-ocean-tech .stock-badge.ok,
body.mrs-theme-ocean-tech .qq-preview-table tr.qq-line-status-approved > td:first-child,
body.mrs-theme-ocean-tech .status.approved {
  border-color: #9ee8d1 !important;
}

body.mrs-theme-ocean-tech .stock-badge.ok,
body.mrs-theme-ocean-tech .qq-mini-btn.approve,
body.mrs-theme-ocean-tech .qq-preview-bulk-actions .qq-bulk-approve {
  background: linear-gradient(135deg, var(--theme-green), #0ea77d) !important;
}

body.mrs-theme-ocean-tech .stock-card.ok:before,
body.mrs-theme-ocean-tech .stock-card.total-stock:before,
body.mrs-theme-ocean-tech .qq-group-metric.export-highlight,
body.mrs-theme-ocean-tech .qq-group-amount.export {
  border-color: #9ee8d1 !important;
  background: #e9fbf5 !important;
  color: var(--theme-green-dark) !important;
}

body.mrs-theme-ocean-tech .stock-badge.low,
body.mrs-theme-ocean-tech .qq-line-actions button.warn {
  background: var(--theme-warn) !important;
  color: #4b3410 !important;
}

body.mrs-theme-ocean-tech .stock-badge.out,
body.mrs-theme-ocean-tech .qq-mini-btn.reject,
body.mrs-theme-ocean-tech .qq-preview-bulk-actions .qq-bulk-reject,
body.mrs-theme-ocean-tech .qq-line-actions button.danger,
body.mrs-theme-ocean-tech .warning-confirm {
  background: var(--theme-danger) !important;
  color: #fff !important;
}

body.mrs-theme-ocean-tech .status-partial_approval,
body.mrs-theme-ocean-tech .responsive-table .record-row.status-partial_approval,
body.mrs-theme-ocean-tech .qq-preview-table tr.qq-line-status-partial > td {
  background: #fff8e8 !important;
}

body.mrs-theme-ocean-tech .qq-preview-table tr.qq-line-status-approved > td,
body.mrs-theme-ocean-tech .qq-detail-approved .qq-approval-preview {
  background: #e9fbf5 !important;
  border-color: #9ee8d1 !important;
}

body.mrs-theme-ocean-tech .qq-preview-table tr.qq-line-status-rejected > td,
body.mrs-theme-ocean-tech .qq-detail-rejected .qq-approval-preview,
body.mrs-theme-ocean-tech .stock-warning-head {
  background: #fff1f2 !important;
  border-color: #fecdd3 !important;
  color: var(--theme-danger-dark) !important;
}

body.mrs-theme-ocean-tech .row-customer-unreported,
body.mrs-theme-ocean-tech .stock-mobile-card {
  background: #fff !important;
}

body.mrs-theme-ocean-tech .badge-unreported,
body.mrs-theme-ocean-tech .theme-chip,
body.mrs-theme-ocean-tech .modal-pager,
body.mrs-theme-ocean-tech .pagination-bar {
  background: var(--theme-surface-2) !important;
  color: var(--theme-muted) !important;
  border-color: var(--theme-border) !important;
}

body.mrs-theme-ocean-tech .qq-success-head {
  background: #e9fbf5 !important;
  color: var(--theme-green-dark) !important;
}

body.mrs-theme-ocean-tech .qq-import-warning-dialog .qq-success-head {
  background: #fff8e8 !important;
  color: var(--theme-warn-dark) !important;
}

body.mrs-theme-ocean-tech .qq-warning-list {
  color: #7c4a03 !important;
}

body.mrs-theme-ocean-tech .report-hero-side,
body.mrs-theme-ocean-tech .stock-hero-actions {
  color: #fff !important;
}

body.mrs-theme-ocean-tech .report-hero-chip,
body.mrs-theme-ocean-tech .management-hero-badge {
  background: rgba(255,255,255,.16) !important;
  color: #fff !important;
  border-color: rgba(255,255,255,.26) !important;
}

body.mrs-theme-ocean-tech .mgmt-section-head i,
body.mrs-theme-ocean-tech .theme-icon {
  background: var(--theme-surface-3) !important;
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .theme-hero {
  background: var(--theme-hero-soft) !important;
  border-color: var(--theme-border) !important;
  box-shadow: var(--theme-shadow) !important;
}

body.mrs-theme-ocean-tech .theme-hero h1,
body.mrs-theme-ocean-tech .theme-card h2 {
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .theme-card.is-active {
  border-color: var(--theme-primary) !important;
  box-shadow: var(--theme-shadow-strong) !important;
}

/* Dashboard/report legacy adapters using theme tokens without touching Chart.js colors. */
body.mrs-theme-ocean-tech .metric-card,
body.mrs-theme-ocean-tech .dash-panel,
body.mrs-theme-ocean-tech .quick-card,
body.mrs-theme-ocean-tech .campaign-eval-card,
body.mrs-theme-ocean-tech .campaign-stat,
body.mrs-theme-ocean-tech .todo-item,
body.mrs-theme-ocean-tech .recent-mobile-card,
body.mrs-theme-ocean-tech .unreported-mobile-card,
body.mrs-theme-ocean-tech .report-card,
body.mrs-theme-ocean-tech .reports-table-card,
body.mrs-theme-ocean-tech .table-toolbar,
body.mrs-theme-ocean-tech .custom-modal-content,
body.mrs-theme-ocean-tech .report-detail-item {
  background: var(--theme-surface) !important;
  border-color: var(--theme-border) !important;
  color: var(--theme-text) !important;
  box-shadow: var(--theme-shadow) !important;
}

body.mrs-theme-ocean-tech .metric-card:hover,
body.mrs-theme-ocean-tech .quick-card:hover,
body.mrs-theme-ocean-tech .campaign-stat:hover,
body.mrs-theme-ocean-tech .todo-item:hover {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-border-strong) !important;
}

body.mrs-theme-ocean-tech .metric-card:before,
body.mrs-theme-ocean-tech .report-card:before {
  background: linear-gradient(180deg, var(--theme-primary), var(--theme-green)) !important;
}

body.mrs-theme-ocean-tech .metric-card.green:before,
body.mrs-theme-ocean-tech .report-card.approved:before {
  background: var(--theme-green) !important;
}

body.mrs-theme-ocean-tech .metric-card.amber:before,
body.mrs-theme-ocean-tech .report-card.pending:before {
  background: var(--theme-warn) !important;
}

body.mrs-theme-ocean-tech .metric-card.red:before,
body.mrs-theme-ocean-tech .report-card.rejected:before {
  background: var(--theme-danger) !important;
}

body.mrs-theme-ocean-tech .metric-card .icon,
body.mrs-theme-ocean-tech .quick-card i,
body.mrs-theme-ocean-tech .report-card .card-icon,
body.mrs-theme-ocean-tech .quote-icon,
body.mrs-theme-ocean-tech .todo-icon {
  background: var(--theme-surface-3) !important;
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .dash-panel-head,
body.mrs-theme-ocean-tech .reports-table-head,
body.mrs-theme-ocean-tech .custom-modal-footer {
  background: var(--theme-surface-2) !important;
  border-color: var(--theme-border) !important;
}

body.mrs-theme-ocean-tech .dash-panel-head h2,
body.mrs-theme-ocean-tech .campaign-eval-name h3,
body.mrs-theme-ocean-tech .campaign-stat strong,
body.mrs-theme-ocean-tech .metric-card .value,
body.mrs-theme-ocean-tech .report-card .value,
body.mrs-theme-ocean-tech .report-detail-item .detail-value,
body.mrs-theme-ocean-tech .quote-title,
body.mrs-theme-ocean-tech .recent-mobile-top strong,
body.mrs-theme-ocean-tech .unreported-mobile-top strong {
  color: var(--theme-text) !important;
}

body.mrs-theme-ocean-tech .metric-card .sub,
body.mrs-theme-ocean-tech .report-card .sub,
body.mrs-theme-ocean-tech .campaign-stat span,
body.mrs-theme-ocean-tech .campaign-stat small,
body.mrs-theme-ocean-tech .campaign-select-label,
body.mrs-theme-ocean-tech .campaign-date-pill,
body.mrs-theme-ocean-tech .quote-text,
body.mrs-theme-ocean-tech .quote-date,
body.mrs-theme-ocean-tech .quote-postcard-author,
body.mrs-theme-ocean-tech .report-detail-item .detail-label {
  color: var(--theme-muted) !important;
}

body.mrs-theme-ocean-tech .dash-panel-link,
body.mrs-theme-ocean-tech .link-strong,
body.mrs-theme-ocean-tech .campaign-eval-badge,
body.mrs-theme-ocean-tech .campaign-select-shell:after,
body.mrs-theme-ocean-tech .chart-value,
body.mrs-theme-ocean-tech .report-primary-btn,
body.mrs-theme-ocean-tech .action-icons a:hover.btn-edit,
body.mrs-theme-ocean-tech .report-detail-item .primary-value {
  color: var(--theme-primary-dark) !important;
}

body.mrs-theme-ocean-tech .campaign-eval-select,
body.mrs-theme-ocean-tech .cache-search input,
body.mrs-theme-ocean-tech .search-bar input,
body.mrs-theme-ocean-tech .modern-select {
  background: var(--theme-surface) !important;
  border-color: var(--theme-border) !important;
  color: var(--theme-text) !important;
}

body.mrs-theme-ocean-tech .campaign-eval-select:focus,
body.mrs-theme-ocean-tech .cache-search input:focus,
body.mrs-theme-ocean-tech .search-bar input:focus,
body.mrs-theme-ocean-tech .modern-select:focus {
  border-color: var(--theme-primary) !important;
  box-shadow: 0 0 0 4px rgba(40,166,222,.14) !important;
}

body.mrs-theme-ocean-tech .bar span,
body.mrs-theme-ocean-tech .chart-bar .bar-col,
body.mrs-theme-ocean-tech .cache-search button,
body.mrs-theme-ocean-tech .custom-modal-header {
  background: var(--theme-hero, linear-gradient(135deg, #0ea5e9 0%, #2563eb 52%, #1d4ed8 100%)) !important;
}

body.mrs-theme-ocean-tech .status-pill.pending,
body.mrs-theme-ocean-tech .status-pill.low,
body.mrs-theme-ocean-tech .row-status-pending,
body.mrs-theme-ocean-tech .row-customer-pending {
  background: #fff8e8 !important;
  color: var(--theme-warn-dark) !important;
}

body.mrs-theme-ocean-tech .status-pill.approved,
body.mrs-theme-ocean-tech .status-pill.ok,
body.mrs-theme-ocean-tech .row-status-approved,
body.mrs-theme-ocean-tech .row-customer-approved {
  background: #e9fbf5 !important;
  color: var(--theme-green-dark) !important;
}

body.mrs-theme-ocean-tech .status-pill.rejected,
body.mrs-theme-ocean-tech .status-pill.out,
body.mrs-theme-ocean-tech .row-status-rejected,
body.mrs-theme-ocean-tech .row-customer-rejected {
  background: #fff1f2 !important;
  color: var(--theme-danger-dark) !important;
}
