/* Shared CumbriaCQ theme toggle. Default dark. Light mode is a calm paper theme. */
html[data-theme="light"] {
  color-scheme: light;
  --bg-primary: #eef3f7;
  --bg-secondary: #ffffff;
  --bg-tertiary: #e7eef4;
  --text-primary: #142230;
  --text-secondary: #4a5d6e;
  --accent: #1b6ea8;
  --border: #c5d3de;
}
html[data-theme="dark"],
html:not([data-theme]) {
  color-scheme: dark;
}

.cq-radio-console .navbar > .container-fluid > .cq-theme-toggle { order: 3; }
.cq-radio-console .navbar > .container-fluid > .cq-view-toggle { order: 4; }
.cq-theme-toggle {
  display: inline-flex;
  border: 1px solid var(--border, #30363d);
  border-radius: 999px;
  overflow: hidden;
  background: #0d1117;
  flex-shrink: 0;
  margin-right: 0.45rem;
}
.cq-theme-toggle button {
  appearance: none;
  border: 0;
  background: transparent;
  color: #e6edf3;
  padding: 0.28rem 0.75rem;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.2;
  cursor: pointer;
}
.cq-theme-toggle button.on {
  color: #0d1117 !important;
  background: #58a6ff !important;
}
html[data-theme="light"] .cq-theme-toggle {
  background: #fff;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-theme-toggle button { color: #142230; }
html[data-theme="light"] .cq-theme-toggle button.on {
  color: #fff !important;
  background: #1b6ea8 !important;
}

html[data-theme="light"] body.cq-radio-console {
  --bg-primary: #eef3f7;
  --bg-secondary: #ffffff;
  --bg-tertiary: #e7eef4;
  --text-primary: #142230;
  --text-secondary: #4a5d6e;
  --accent: #1b6ea8;
  --border: #c5d3de;
  background: #eef3f7 !important;
  color: #142230 !important;
}
html[data-theme="light"] .cq-radio-console .navbar {
  background: #f7fafc !important;
  border-bottom-color: #c5d3de;
  box-shadow: none;
}
html[data-theme="light"] .cq-radio-console .navbar-brand,
html[data-theme="light"] .cq-radio-console .nav-link,
html[data-theme="light"] .cq-radio-console .logo-text,
html[data-theme="light"] .cq-console-title,
html[data-theme="light"] .cq-console-kicker {
  color: #142230 !important;
}
html[data-theme="light"] .cq-radio-console .text-muted,
html[data-theme="light"] .cq-live #stats .stat-label,
html[data-theme="light"] .cq-live #stats .stat-sub {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-radio-console .card,
html[data-theme="light"] .cq-radio-console .card-body,
html[data-theme="light"] .cq-radio-console .modal-content,
html[data-theme="light"] .cq-radio-console .modal-header,
html[data-theme="light"] .cq-radio-console .modal-body {
  background: #fff !important;
  color: #142230 !important;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-radio-console .card-header {
  background: #eef3f7 !important;
  color: #142230 !important;
  border-bottom-color: #c5d3de;
}
html[data-theme="light"] .cq-radio-console .table,
html[data-theme="light"] .cq-radio-console .table-dark,
html[data-theme="light"] .cq-radio-console .table-dark th,
html[data-theme="light"] .cq-radio-console .table-dark td,
html[data-theme="light"] .cq-radio-console .table-dark thead th {
  background: #fff !important;
  color: #142230 !important;
  border-color: #d5e0e8;
}
html[data-theme="light"] .cq-live .stat-card,
html[data-theme="light"] .cq-live #stats .stat-card {
  background: #fff !important;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-live .call-filter-bar,
html[data-theme="light"] .cq-live .conn-nodes-wrap,
html[data-theme="light"] .cq-live .cq-supporter-block .supporter-info-card {
  background: #fff;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-live #traffic > .card > .card-header,
html[data-theme="light"] .cq-live #traffic .traffic-table thead th {
  background: #eef3f7 !important;
  color: #142230 !important;
}
html[data-theme="light"] .cq-radio-console input:not([type=range]),
html[data-theme="light"] .cq-radio-console select {
  background: #fff !important;
  color: #142230 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] .cq-view-toggle {
  background: #fff;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-view-toggle a { color: #142230 !important; }
html[data-theme="light"] .cq-view-toggle a.on {
  color: #fff !important;
  background: #1b6ea8 !important;
}
html[data-theme="light"] .cq-champion .champion-banner,
html[data-theme="light"] .cq-champion .podium-item,
html[data-theme="light"] .cq-champion .champion-tools {
  background: #fff;
  border-color: #c5d3de;
}
html[data-theme="light"] .cq-console-meta {
  background: #fff;
  border-color: #c5d3de;
  color: #4a5d6e !important;
}

html[data-theme="light"] .traffic-pill,
html[data-theme="light"] .allstar-node-pill,
html[data-theme="light"] .conn-node-pill {
  background: #eef3f7 !important;
  color: #142230 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] .mode-sticker,
html[data-theme="light"] .traffic-call-tag,
html[data-theme="light"] .bridge-node-badge {
  color: #fff !important;
}
html[data-theme="light"] .cq-live .conn-nodes-wrap .card-header {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live .cq-conn-tile-grid > .card .card-header,
html[data-theme="light"] .cq-live .cq-conn-tile-grid > .card .card-header .conn-card-label {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live .conn-nodes-wrap .card-header .mode-sticker {
  color: #fff !important;
}
html[data-theme="light"] .cq-live .cq-conn-bell,
html[data-theme="light"] .cq-live .cq-conn-show-all,
html[data-theme="light"] .cq-conn-recent-clear {
  background: #1b6ea8;
  border-color: #1b6ea8;
  color: #fff !important;
}
html[data-theme="light"] .cq-live .cq-conn-bell:hover,
html[data-theme="light"] .cq-live .cq-conn-show-all:hover,
html[data-theme="light"] .cq-conn-recent-clear:hover {
  background: #155a8a;
}
html[data-theme="light"] #traffic-pages .btn-outline-light {
  color: #142230 !important;
  border-color: #c5d3de !important;
  background: #fff !important;
}
html[data-theme="light"] #traffic-pages .btn-primary {
  background: #1b6ea8 !important;
  border-color: #1b6ea8 !important;
  color: #fff !important;
}
html[data-theme="light"] #traffic-pages .text-muted {
  color: #4a5d6e !important;
}

html[data-theme="light"] .cq-live .live-path-bar,
html[data-theme="light"] .cq-live .live-path-bar * {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live .live-path-bar .mode-sticker {
  color: #fff !important;
}
html[data-theme="light"] .cq-live .live-path-chip {
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(20,34,48,.12);
}
html[data-theme="light"] .cq-live .live-path-bar.is-onair {
  background: #d7efe0 !important;
  box-shadow: none;
}
html[data-theme="light"] .cq-live .live-path-bar.live-path-asl,
html[data-theme="light"] .cq-live .live-path-asl { background: #f3dfe2 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-ysf,
html[data-theme="light"] .cq-live .live-path-ysf { background: #d9e6f8 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-dmr,
html[data-theme="light"] .cq-live .live-path-dmr { background: #d7eef4 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-tgif,
html[data-theme="light"] .cq-live .live-path-tgif { background: #eadcf6 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-pnt,
html[data-theme="light"] .cq-live .live-path-pnt { background: #f6dce6 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-gw,
html[data-theme="light"] .cq-live .live-path-gw { background: #e4eaf0 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-bak,
html[data-theme="light"] .cq-live .live-path-bak,
html[data-theme="light"] .cq-live .live-path-bar.live-path-zel,
html[data-theme="light"] .cq-live .live-path-zel { background: #f4e6d4 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-urf,
html[data-theme="light"] .cq-live .live-path-urf { background: #dcefe3 !important; }
html[data-theme="light"] .cq-live .live-path-bar.live-path-sysx,
html[data-theme="light"] .cq-live .live-path-sysx { background: #f6e4d6 !important; }

html[data-theme="light"] .cq-live tr.tx-live-row td,
html[data-theme="light"] .cq-live .stat-card.tx-live-box {
  background: #d7efe0 !important;
  color: #14532d !important;
}
html[data-theme="light"] .cq-live tr.tx-live-row :is(.traffic-pill,.traffic-via,.traffic-call-link,.traffic-duration,.traffic-time-main,.traffic-time-sub,.traffic-call-sub,.traffic-status-badge) {
  color: #14532d !important;
  background: transparent !important;
}
html[data-theme="light"] .traffic-time-sub,
html[data-theme="light"] .traffic-call-sub,
html[data-theme="light"] .traffic-duration,
html[data-theme="light"] .cq-live #traffic .text-muted,
html[data-theme="light"] .cq-live .stat-sub,
html[data-theme="light"] .cq-live .stat-label {
  color: #3d5163 !important;
}
html[data-theme="light"] .cq-live .card-net-ysf,
html[data-theme="light"] .cq-live .card-net-bak,
html[data-theme="light"] .cq-live .card-net-urf,
html[data-theme="light"] .cq-live .card-net-asl,
html[data-theme="light"] .cq-live .card-net-dmr,
html[data-theme="light"] .cq-live .card-net-tgif,
html[data-theme="light"] .cq-live .card-net-sysx,
html[data-theme="light"] .cq-live .card-net-pnt,
html[data-theme="light"] .cq-live .card-net-zel,
html[data-theme="light"] .cq-live #traffic td,
html[data-theme="light"] .cq-live #traffic th,
html[data-theme="light"] .cq-live #traffic .traffic-call-link,
html[data-theme="light"] .cq-live #traffic .traffic-via,
html[data-theme="light"] .cq-live #traffic .traffic-duration,
html[data-theme="light"] .cq-live #traffic .traffic-time-main,
html[data-theme="light"] .cq-live #traffic .traffic-time-sub,
html[data-theme="light"] .cq-live #traffic .traffic-call-sub,
html[data-theme="light"] .cq-live #traffic .traffic-pill,
html[data-theme="light"] .cq-live .stat-number,
html[data-theme="light"] .cq-live .timer-display,
html[data-theme="light"] .cq-live #on-air-call,
html[data-theme="light"] .cq-live #on-air-gw,
html[data-theme="light"] .cq-live #keyups-today,
html[data-theme="light"] .cq-live #tx-today,
html[data-theme="light"] .cq-live #digital-count {
  color: #102030 !important;
}
html[data-theme="light"] .cq-live #traffic .traffic-pill,
html[data-theme="light"] .cq-live #traffic .traffic-via {
  background: #e8eef4 !important;
  border-color: #b7c6d4 !important;
  color: #102030 !important;
}
html[data-theme="light"] .cq-live #traffic .traffic-bridge-tag {
  background: rgba(109,40,217,0.12) !important;
  border-color: #8b6cc9 !important;
  color: #4c2d8a !important;
}
html[data-theme="light"] .cq-live #traffic .traffic-status-badge {
  color: inherit;
}
html[data-theme="light"] .cq-live #traffic .traffic-status-TX { color: #157347 !important; }
html[data-theme="light"] .cq-live #traffic .traffic-status-TO { color: #b42318 !important; }
html[data-theme="light"] .cq-live #traffic .traffic-status-TD { color: #175cd3 !important; }
html[data-theme="light"] .cq-live #traffic .traffic-status-WD { color: #b54708 !important; }
html[data-theme="light"] .cq-live #traffic .traffic-status-TB { color: #344054 !important; }

html[data-theme="light"] .cq-champion .champion-banner {
  background: #fff !important;
  border-color: #c5d3de !important;
  border-top-color: #1b6ea8 !important;
}
html[data-theme="light"] .cq-champion .champion-banner h1 {
  color: #142230 !important;
  -webkit-text-fill-color: #142230 !important;
}
html[data-theme="light"] .cq-champion .champion-banner .subtitle,
html[data-theme="light"] .cq-champion .cq-console-kicker {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-champion .podium-item {
  background: #fff !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] .cq-champion .podium-callsign,
html[data-theme="light"] .cq-champion .podium-score,
html[data-theme="light"] .cq-champion .podium-item,
html[data-theme="light"] .cq-champion .podium-item div,
html[data-theme="light"] .cq-champion .podium-item span {
  color: #142230 !important;
}
html[data-theme="light"] .cq-champion .podium-item .mode-sticker,
html[data-theme="light"] .cq-champion .podium-item .supporter-badge {
  color: #fff !important;
}
html[data-theme="light"] .cq-champion .champion-tools,
html[data-theme="light"] .cq-champion .badge-item,
html[data-theme="light"] .cq-champion .cq-insights-card,
html[data-theme="light"] .cq-champion .cq-replay-frame,
html[data-theme="light"] .cq-champion .cq-replay-event,
html[data-theme="light"] .cq-champion .detail-stat {
  background: #fff !important;
  border-color: #c5d3de !important;
  color: #142230 !important;
}
html[data-theme="light"] .cq-champion .champion-search {
  background: #fff !important;
  color: #142230 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] .cq-champion .table-dark tbody tr:nth-child(even) td {
  background: #f4f7fa !important;
  color: #142230 !important;
}
html[data-theme="light"] .supporter-info-card {
  background: #eef3f7 !important;
  border-color: #c5d3de !important;
  color: #142230 !important;
}
html[data-theme="light"] .supporter-info-card p,
html[data-theme="light"] .supporter-info-title,
html[data-theme="light"] .supporter-info-title span {
  color: #142230 !important;
}
html[data-theme="light"] .cq-champion .stat-number,
html[data-theme="light"] .cq-champion h2,
html[data-theme="light"] .cq-champion h3,
html[data-theme="light"] .cq-champion h4,
html[data-theme="light"] .cq-champion td,
html[data-theme="light"] .cq-champion th,
html[data-theme="light"] .cq-champion .callsign-detail-link {
  color: #142230 !important;
}
html[data-theme="light"] .cq-insights-list span,
html[data-theme="light"] .cq-insights-muted,
html[data-theme="light"] .cq-insights-asof,
html[data-theme="light"] .champion-rules,
html[data-theme="light"] .champion-refresh-status,
html[data-theme="light"] .table-pager-info {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-live .conn-nodes-wrap .card:not(.card-net-map) .card-header .mode-sticker [id$="-count"],
html[data-theme="light"] .cq-live .conn-nodes-wrap .card:not(.card-net-map) .card-header .mode-sticker [id$="-header-count"],
html[data-theme="light"] .cq-live .conn-nodes-wrap .card:not(.card-net-map) .card-header .allstar-type-icon #allstar-echo-count {
  color: inherit !important;
}

/* Light mode: dark ink on paper. White only on coloured stickers/badges. */
html[data-theme="light"] .cq-live #geek1 .card-header,
html[data-theme="light"] .cq-live #geek2 .card-header,
html[data-theme="light"] .cq-live .cq-system-status > .card-header,
html[data-theme="light"] .cq-live #traffic > .card > .card-header,
html[data-theme="light"] .cq-live .call-filter-bar label,
html[data-theme="light"] .cq-live .call-filter-bar,
html[data-theme="light"] .cq-radio-console .supporter-info-title {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live #traffic > .card > .card-header .text-muted,
html[data-theme="light"] .cq-live .call-filter-bar label {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-live .card-header .mode-sticker,
html[data-theme="light"] .cq-live .card-header .mode-sticker *,
html[data-theme="light"] .cq-live .allstar-type-icon,
html[data-theme="light"] .cq-live .allstar-type-icon * {
  color: #fff !important;
}
html[data-theme="light"] .cq-champion .champion-banner h1 {
  color: #142230 !important;
  -webkit-text-fill-color: #142230 !important;
}
html[data-theme="light"] .cq-live #traffic .traffic-call-link {
  color: #0b3b66 !important;
  font-weight: 800;
}
html[data-theme="light"] .cq-live #traffic .traffic-via {
  color: #0b5cab !important;
  font-weight: 800;
  background: none !important;
  border: 0 !important;
}

html[data-theme="light"] .cq-live-insights-card {
  background: #fff !important;
  border-color: #c5d3de !important;
  box-shadow: none;
}
html[data-theme="light"] .cq-live-insights-head,
html[data-theme="light"] .cq-live-insights-foot {
  border-color: #c5d3de !important;
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-live-insights-title,
html[data-theme="light"] .cq-live-insights-tile strong,
html[data-theme="light"] .cq-live-insights-lists h3,
html[data-theme="light"] .cq-live-insights-lists li,
html[data-theme="light"] .cq-live-insights-lists li a,
html[data-theme="light"] .cq-live-insights-lists li strong {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live-insights-kicker,
html[data-theme="light"] .cq-live-insights-label,
html[data-theme="light"] .cq-live-insights-tile small,
html[data-theme="light"] .cq-live-insights-lists li span,
html[data-theme="light"] .cq-live-insights-empty,
html[data-theme="light"] .cq-live-insights-foot,
html[data-theme="light"] .cq-live-insights-foot span {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-live-insights-tile,
html[data-theme="light"] .cq-live-insights-lists section {
  background: #eef3f7 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] .cq-live-insights-links a {
  background: #e8f3fb !important;
  border-color: #1b6ea8 !important;
  color: #0b3b66 !important;
}
html[data-theme="light"] .cq-live-insights-trend.is-up strong { color: #157347 !important; }
html[data-theme="light"] .cq-live-insights-trend.is-down strong { color: #b42318 !important; }
html[data-theme="light"] .cq-live-insights-trend.is-flat strong { color: #0b5cab !important; }
html[data-theme="light"] .cq-live-insights-highlight { color: #157347 !important; }
html[data-theme="light"] #hourly-graph {
  background: #eef3f7 !important;
}
html[data-theme="light"] .cq-live .cq-hour-label,
html[data-theme="light"] .cq-live .cq-hour-count {
  color: #142230 !important;
  text-shadow: none;
}
html[data-theme="light"] .cq-live .cq-hour-track {
  background: #d5e0e8 !important;
}
html[data-theme="light"] .service-active {
  background: #d8f3df !important;
  color: #0d5c2a !important;
  border-color: #7bc99a !important;
}
html[data-theme="light"] .service-inactive {
  background: #fde8e6 !important;
  color: #8a1f18 !important;
  border-color: #e7a29c !important;
}
html[data-theme="light"] #services-status strong {
  color: #142230 !important;
}
html[data-theme="light"] #connDetailModal .modal-content,
html[data-theme="light"] #connDetailModal .modal-header,
html[data-theme="light"] #connDetailModal .modal-body,
html[data-theme="light"] #userDetailModal .modal-content,
html[data-theme="light"] #userDetailModal .modal-header,
html[data-theme="light"] #userDetailModal .modal-body {
  background: #fff !important;
  color: #142230 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] #connDetailModal .modal-title,
html[data-theme="light"] #conn-detail-body,
html[data-theme="light"] #conn-detail-body .cq-recent-empty,
html[data-theme="light"] #conn-detail-body .cq-recent-server,
html[data-theme="light"] #conn-detail-body .cq-recent-time,
html[data-theme="light"] #conn-detail-body .text-muted {
  color: #142230 !important;
}
html[data-theme="light"] .cq-recent-item {
  background: #eef3f7 !important;
}
html[data-theme="light"] .cq-recent-call {
  color: #0b3b66 !important;
}
html[data-theme="light"] #conn-detail-body .conn-node-pill {
  background: #eef3f7 !important;
  color: #142230 !important;
  border-color: #c5d3de !important;
}
html[data-theme="light"] #conn-detail-body .mode-sticker {
  color: #fff !important;
}

html[data-theme="light"] .cq-radio-console .table {
  --bs-table-hover-color: #142230;
  --bs-table-hover-bg: #e4eef5;
}
html[data-theme="light"] .cq-radio-console .table-hover tbody tr:not(.tx-live-row):hover td {
  background: #e4eef5 !important;
  color: #142230 !important;
}
html[data-theme="light"] .cq-live #traffic tr.tx-live-row td {
  background: #c8ebd4 !important;
  color: #14532d !important;
}
html[data-theme="light"] .cq-live #traffic tr.tx-live-row td,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-call-link,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-via,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-duration,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-time-main,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-time-sub,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-status-badge,
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-pill {
  color: #14532d !important;
}
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-pill {
  background: #fff !important;
  border-color: #8fbf9a !important;
}
html[data-theme="light"] .cq-live #traffic tr.tx-live-row .traffic-via {
  background: none !important;
  color: #0b5cab !important;
}
html[data-theme="light"] .cq-live .new-node-popup {
  background: #fff !important;
  color: #142230 !important;
  border-color: #c5d3de;
  box-shadow: 0 12px 28px rgba(20, 34, 48, 0.18);
}
html[data-theme="light"] .cq-live .new-node-popup-title {
  color: #4a5d6e !important;
}
html[data-theme="light"] .cq-live .new-node-popup-call,
html[data-theme="light"] .cq-live .new-node-popup-server {
  color: #142230 !important;
}
html[data-theme="light"] .cq-live .conn-card-count {
  background: #fff !important;
  border-color: #c5d3de !important;
  color: #142230 !important;
}




