/* BLUE color theme. Layout/shape rules live in interrogation-layout.css. */
:root[data-theme="concept_art"] {
  --interrogation-html-bg: #03070e;
  --interrogation-html-text: #d8ecff;
  --interrogation-wrap-bg: radial-gradient(circle at 18% 16%, rgba(0, 160, 255, 0.14), transparent 27%), radial-gradient(circle at 76% 20%, rgba(255, 45, 90, 0.12), transparent 26%), linear-gradient(180deg, #08111c 0%, #03070e 100%);
  --interrogation-canvas-bg: #03070e;
  --interrogation-canvas-shadow: 0 0 80px rgba(0,20,40,0.82);

  --c-bg: #03070e;
  --c-panel: #07111b;
  --c-panel2: #0a1826;
  --c-panel3: #102234;
  --c-card: #09131f;
  --c-line: #12324d;
  --c-line2: #1d5a84;
  --c-text: #d8ecff;
  --c-muted: #8aa7bd;
  --c-dim: #526878;
  --c-cyan: #00c8ff;
  --c-blue: #2e9bff;
  --c-red: #ff3357;
  --c-yellow: #ffbf2e;
  --c-orange: #ff793a;
  --c-purple: #c64cff;
  --c-green: #58f2a2;
  --c-white: #f4fbff;
  --c-black: #01040a;

  --panel-border: rgba(46, 155, 255, 0.24);
  --panel-glow: rgba(0, 200, 255, 0.15);
  --danger-glow: rgba(255, 51, 87, 0.22);
  --theme-accent: var(--c-cyan);
  --theme-accent-2: var(--c-blue);
  --theme-bg-flat: rgba(5, 13, 22, 0.96);
  --theme-panel-flat: rgba(6, 16, 28, 0.94);
  --theme-panel-soft: rgba(8, 22, 38, 0.74);
  --theme-border: rgba(46, 155, 255, 0.34);
  --theme-border-strong: rgba(0, 200, 255, 0.72);
  --theme-glow: rgba(0, 200, 255, 0.18);
  --theme-grid: rgba(0, 200, 255, 0.032);
  --theme-scroll: rgba(0, 176, 230, 0.74);
  --theme-scroll-track: rgba(2, 8, 16, 0.70);
  --theme-hidden-node: rgba(100, 123, 139, 0.58);
}

:root[data-theme="concept_art"] .topbar,
:root[data-theme="concept_art"] .panel,
:root[data-theme="concept_art"] .ui-btn,
:root[data-theme="concept_art"] .tab-btn {
border-color: rgba(46, 155, 255, 0.26);
}

:root[data-theme="concept_art"] .topbar,
:root[data-theme="concept_art"] .panel,
:root[data-theme="concept_art"] .modal-card,
:root[data-theme="concept_art"] .toast-error,
:root[data-theme="concept_art"] .map-header-panel,
:root[data-theme="concept_art"] .map-chat-overlay,
:root[data-theme="concept_art"] .topbar__actions-panel,
:root[data-theme="concept_art"] .status-block,
:root[data-theme="concept_art"] .status-bucket,
:root[data-theme="concept_art"] .action-builder,
:root[data-theme="concept_art"] .action-slot--empty,
:root[data-theme="concept_art"] .section-title {
background: var(--theme-panel-flat) !important;
  border-color: var(--theme-border) !important;
}

:root[data-theme="concept_art"] .ui-btn:not(.ui-btn--danger),
:root[data-theme="concept_art"] .tab-btn,
:root[data-theme="concept_art"] .icon-btn:not(.ui-btn--danger),
:root[data-theme="concept_art"] .topbar-tab,
:root[data-theme="concept_art"] .panel-collapse-rail,
:root[data-theme="concept_art"] .panel-collapse-btn,
:root[data-theme="concept_art"] .topbar__collapse,
:root[data-theme="concept_art"] .topbar__gear,
:root[data-theme="concept_art"] .map-zoom-btn {
color: var(--c-cyan) !important;
  border-color: var(--theme-border) !important;
  background: rgba(5, 13, 24, 0.94) !important;
  box-shadow: inset 0 0 12px rgba(0, 200, 255, 0.035), 0 0 10px rgba(0, 200, 255, 0.08) !important;
}

:root[data-theme="concept_art"] .tab-btn:hover,
:root[data-theme="concept_art"] .ui-btn:not(.ui-btn--danger):hover,
:root[data-theme="concept_art"] .icon-btn:not(.ui-btn--danger):hover,
:root[data-theme="concept_art"] .topbar-tab:hover,
:root[data-theme="concept_art"] .panel-collapse-rail:hover,
:root[data-theme="concept_art"] .panel-collapse-btn:hover,
:root[data-theme="concept_art"] .topbar__collapse:hover,
:root[data-theme="concept_art"] .topbar__gear:hover,
:root[data-theme="concept_art"] .map-zoom-btn:hover,
:root[data-theme="concept_art"] .tab-btn:focus-visible,
:root[data-theme="concept_art"] .ui-btn:not(.ui-btn--danger):focus-visible,
:root[data-theme="concept_art"] .icon-btn:not(.ui-btn--danger):focus-visible,
:root[data-theme="concept_art"] .topbar-tab:focus-visible,
:root[data-theme="concept_art"] .panel-collapse-rail:focus-visible,
:root[data-theme="concept_art"] .panel-collapse-btn:focus-visible,
:root[data-theme="concept_art"] .topbar__collapse:focus-visible,
:root[data-theme="concept_art"] .topbar__gear:focus-visible,
:root[data-theme="concept_art"] .map-zoom-btn:focus-visible {
  color: var(--c-white) !important;
  border-color: rgba(0, 200, 255, 0.88) !important;
  background: rgba(6, 24, 42, 0.98) !important;
  text-shadow: 0 0 9px rgba(0, 200, 255, 0.76) !important;
  box-shadow:
    0 0 14px rgba(0, 200, 255, 0.30),
    0 0 28px rgba(46, 155, 255, 0.14),
    inset 0 0 14px rgba(0, 200, 255, 0.08) !important;
}

:root[data-theme="concept_art"] .tab-btn--active,
:root[data-theme="concept_art"] .ui-btn--active:not(.topbar__gear):not(.ui-btn--danger) {
color: var(--c-white) !important;
  border-color: rgba(0, 200, 255, 0.96) !important;
  background: rgba(5, 22, 38, 0.98) !important;
  text-shadow: 0 0 9px rgba(0, 200, 255, 0.88) !important;
  box-shadow: 0 0 18px rgba(0, 200, 255, 0.36), inset 0 0 16px rgba(0, 200, 255, 0.08) !important;
}

:root[data-theme="concept_art"] .dossier-panel:not(.dossier-panel--collapsed),
:root[data-theme="concept_art"] .tabs-panel,
:root[data-theme="concept_art"] .status-panel:not(.status-panel--collapsed),
:root[data-theme="concept_art"] .topbar:not(.topbar--collapsed),
:root[data-theme="concept_art"] .map-header-panel--full .topbar,
:root[data-theme="concept_art"] .full-map-stage__action .action-builder:not(.action-builder--collapsed) {
border-color: rgba(46, 155, 255, 0.13) !important;
  box-shadow:
    inset 0 0 10px rgba(0, 200, 255, 0.018),
    0 0 8px rgba(0, 0, 0, 0.28) !important;
}

:root[data-theme="concept_art"] .dossier-panel:not(.dossier-panel--collapsed),
:root[data-theme="concept_art"] .tabs-panel,
:root[data-theme="concept_art"] .status-panel:not(.status-panel--collapsed),
:root[data-theme="concept_art"] .topbar:not(.topbar--collapsed),
:root[data-theme="concept_art"] .map-header-panel--full .topbar,
:root[data-theme="concept_art"] .full-map-stage__action .action-builder:not(.action-builder--collapsed) {
border-color: rgba(46, 155, 255, 0.12) !important;
  box-shadow: inset 0 0 8px rgba(0, 200, 255, 0.014), 0 0 8px rgba(0, 0, 0, 0.28) !important;
}

:root[data-theme="concept_art"] .layout--fullscreen-map > .tabs-panel.full-map-center > .action-builder:not(.action-builder--collapsed) {
background: var(--theme-panel-flat, rgba(5, 13, 22, 0.94)) !important;
}

/* v107: BLUE keeps blue neutral fact frames; selected facts are always red. */
:root[data-theme="blue"] {
  --fact-card-bg: rgba(7, 16, 27, 0.94);
  --fact-card-bg-hover: rgba(9, 21, 35, 0.97);
  --fact-card-border: rgba(46, 155, 255, 0.30);
  --fact-card-border-hover: rgba(46, 155, 255, 0.58);
  --fact-card-selected-border: var(--c-red);
  --fact-card-hover-glow: rgba(0, 200, 255, 0.24);
  --fact-selected-glow: rgba(255, 51, 87, 0.46);
}

:root[data-theme="blue"] .card:not(.map-node):not(.card--selected) {
  border-color: var(--fact-card-border) !important;
  border-left-color: var(--fact-card-border) !important;
}

:root[data-theme="blue"] .card:not(.map-node):not(.card--selected):hover,
:root[data-theme="blue"] .card:not(.map-node):not(.card--selected):focus-visible {
  border-color: var(--fact-card-border-hover) !important;
  border-left-color: var(--fact-card-border-hover) !important;
  box-shadow: 0 0 14px var(--fact-card-hover-glow), inset 0 0 16px rgba(255,255,255,0.025) !important;
}

:root[data-theme="blue"] .card.card--selected,
:root[data-theme="blue"] .card:not(.map-node).card--selected,
:root[data-theme="blue"] .map-node.map-node--selected {
  border-color: var(--c-red) !important;
  border-left-color: var(--c-red) !important;
}

:root[data-theme="concept_art"] .ui-btn--danger:hover,
:root[data-theme="concept_art"] .verdict-btn:hover,
:root[data-theme="concept_art"] .status-verdict-bar .ui-btn:hover,
:root[data-theme="concept_art"] .ui-btn--danger:focus-visible,
:root[data-theme="concept_art"] .verdict-btn:focus-visible,
:root[data-theme="concept_art"] .status-verdict-bar .ui-btn:focus-visible,
:root[data-theme="blue"] .ui-btn--danger:hover,
:root[data-theme="blue"] .verdict-btn:hover,
:root[data-theme="blue"] .status-verdict-bar .ui-btn:hover,
:root[data-theme="blue"] .ui-btn--danger:focus-visible,
:root[data-theme="blue"] .verdict-btn:focus-visible,
:root[data-theme="blue"] .status-verdict-bar .ui-btn:focus-visible {
  color: var(--c-white) !important;
}

:root[data-theme="concept_art"] .ui-btn--danger:hover .ui-icon,
:root[data-theme="concept_art"] .verdict-btn:hover .ui-icon,
:root[data-theme="concept_art"] .status-verdict-bar .ui-btn:hover .ui-icon,
:root[data-theme="concept_art"] .ui-btn--danger:focus-visible .ui-icon,
:root[data-theme="concept_art"] .verdict-btn:focus-visible .ui-icon,
:root[data-theme="concept_art"] .status-verdict-bar .ui-btn:focus-visible .ui-icon,
:root[data-theme="blue"] .ui-btn--danger:hover .ui-icon,
:root[data-theme="blue"] .verdict-btn:hover .ui-icon,
:root[data-theme="blue"] .status-verdict-bar .ui-btn:hover .ui-icon,
:root[data-theme="blue"] .ui-btn--danger:focus-visible .ui-icon,
:root[data-theme="blue"] .verdict-btn:focus-visible .ui-icon,
:root[data-theme="blue"] .status-verdict-bar .ui-btn:focus-visible .ui-icon {
  color: var(--c-white) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) :is(.ui-btn, .tab-btn, .icon-btn, .topbar-tab, .panel-collapse-rail, .panel-collapse-btn, .topbar__collapse, .topbar__gear, .map-zoom-btn, .dossier-filter-btn):not(:disabled):is(:hover, :focus-visible) {
  color: var(--c-white) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) :is(.ui-btn, .tab-btn, .icon-btn, .topbar-tab, .panel-collapse-rail, .panel-collapse-btn, .topbar__collapse, .topbar__gear, .map-zoom-btn, .dossier-filter-btn):not(:disabled):is(:hover, :focus-visible) .ui-icon {
  color: var(--c-white) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--apparatus,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--warning,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--error,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--breakthrough,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--success,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--noeffect {
  border-color: rgba(63, 207, 255, 0.58) !important;
  background: rgba(3, 10, 18, 0.80) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--system,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--warning,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--error,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--breakthrough,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--success,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--noeffect {
  border-color: rgba(74, 150, 204, 0.58) !important;
  background: rgba(3, 10, 18, 0.80) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--interrogator,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--you,
:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--player {
  border-color: rgba(235, 244, 255, 0.78) !important;
  background: rgba(2, 20, 32, 0.80) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--apparatus {
  border-color: rgba(235, 244, 255, 0.72) !important;
  background: rgba(3, 10, 18, 0.80) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--suspect {
  border-color: rgba(255, 88, 108, 0.86) !important;
  background: rgba(22, 4, 12, 0.80) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) :is(.chat-bubble--system, .chat-bubble--warning, .chat-bubble--error, .chat-bubble--breakthrough, .chat-bubble--success, .chat-bubble--noeffect) .chat-bubble__who {
  color: rgba(104, 184, 232, 0.92) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) :is(.chat-bubble--interrogator, .chat-bubble--you, .chat-bubble--player, .chat-bubble--apparatus) .chat-bubble__who {
  color: rgba(235, 244, 255, 0.96) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .chat-bubble--suspect .chat-bubble__who {
  color: rgba(255, 88, 108, 0.96) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice {
  background: transparent !important;
  box-shadow: none !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice--human {
  color: #58f2a2 !important;
  border-color: rgba(88, 242, 162, 0.72) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice--android {
  color: #ff3357 !important;
  border-color: rgba(255, 51, 87, 0.72) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice .ui-icon {
  color: currentColor !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice:not(:disabled):is(:hover, :focus-visible) {
  color: var(--c-white) !important;
  background: transparent !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice:not(:disabled):is(:hover, :focus-visible) .ui-icon {
  color: var(--c-white) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice--human:not(:disabled):is(:hover, :focus-visible) {
  border-color: rgba(88, 242, 162, 0.90) !important;
  box-shadow: 0 0 18px rgba(88, 242, 162, 0.34), inset 0 0 16px rgba(88, 242, 162, 0.08) !important;
}

:root:is([data-theme="concept_art"], [data-theme="blue"]) .modal-card--report .report-choice--android:not(:disabled):is(:hover, :focus-visible) {
  border-color: rgba(255, 51, 87, 0.90) !important;
  box-shadow: 0 0 18px rgba(255, 51, 87, 0.34), inset 0 0 16px rgba(255, 51, 87, 0.08) !important;
}
