/* EmpireConnections light visual authority.
   Loaded last so every advisor, administrator, modal, and campaign surface
   uses the same white-card system as the focused representative workspace. */

:root {
  color-scheme: light;
  --ink: #eef3f8;
  --night: #eef3f8;
  --nav: #123f70;
  --panel: #f7f9fc;
  --panel-hi: #f9fbfd;
  --field: #ffffff;
  --text: #17283f;
  --muted: #66758a;
  --line: #d8e1eb;
  --line-soft: #e4eaf1;
  --gold: #1261a6;
  --gold-hi: #245f9f;
  --gold-low: #0e4d88;
  --green: #137b4a;
  --green-hi: #16865f;
  --blue: #1261e8;
  --empire-canvas-tan: #eef3f8;
  --empire-canvas-tan-light: #f7f9fc;
  --empire-canvas-tan-deep: #e7edf5;
  --empire-module-charcoal: #ffffff;
  --empire-module-black: #ffffff;
  --empire-copy-white: #17283f;
  --empire-copy-muted: #66758a;
  --empire-action-green: #16865f;
  --empire-pill-blue: #245f9f;
}

html,
body {
  background: #eef3f8 !important;
  color: #17283f !important;
}

body {
  background-image: none !important;
}

.content {
  background: #eef3f8 !important;
}

.topbar.empireos-unified-header {
  border-bottom-color: #203854 !important;
  background: #0f1d31 !important;
  box-shadow: 0 5px 18px rgba(15, 29, 49, .16) !important;
}

.topbar.empireos-unified-header :is(.empireos-header-copy h1, .empireos-header-copy p, .text-button) {
  color: #edf4ff !important;
}

.app-layout > .sidebar {
  border-right-color: #d5dfeb !important;
  background: linear-gradient(180deg, #1d568c 0%, #123f70 48%, #092c51 100%) !important;
  box-shadow: 8px 0 24px rgba(18, 48, 81, .14) !important;
}

#workspace > .content-heading :is(#workspace-eyebrow, #workspace-title, #workspace-description),
.content-heading :is(h1, h2, p) {
  color: #17283f !important;
  text-shadow: none !important;
}

.panel,
.metric,
.sso-card,
.modal-card,
.empireos-lead-engine-panel,
.mapping-review-banner,
.empire-admin-accordion,
.campaign-admin-card,
.tenant-resource-card,
.tenant-resource-empty,
.tenant-resource-form,
.trial-rep-platform-card,
.call-paper-paste {
  border-color: #d8e1eb !important;
  background: #f7f9fc !important;
  color: #17283f !important;
  box-shadow: 0 10px 30px rgba(24, 43, 67, .08) !important;
}

:is(.panel, .metric, .sso-card, .modal-card, .empire-admin-accordion, .campaign-admin-card, .tenant-resource-card, .tenant-resource-form) :is(h1, h2, h3, h4, strong),
.empireos-lead-engine-heading h2 {
  color: #17283f !important;
}

:is(.panel, .metric, .sso-card, .modal-card, .empire-admin-accordion, .campaign-admin-card, .tenant-resource-card, .tenant-resource-form) :is(p, small),
.empireos-lead-engine-heading p {
  color: #66758a !important;
}

.eyebrow,
.panel > span,
.empire-admin-summary-copy > span,
.empire-vendor-label {
  color: #245f9f !important;
}

input,
select,
textarea,
.campaign-admin-card .campaign-admin-controls :is(input, select),
.call-paper-paste textarea,
.empire-vendor-control :is(input, select, textarea) {
  border-color: #cbd6e2 !important;
  background: #ffffff !important;
  color: #1d3048 !important;
  box-shadow: none !important;
}

input::placeholder,
textarea::placeholder {
  color: #8290a3 !important;
}

input:focus,
select:focus,
textarea:focus {
  border-color: #488bd4 !important;
  box-shadow: 0 0 0 3px rgba(36, 95, 159, .13) !important;
}

form label,
.campaign-builder-form label,
.campaign-merge-form label,
.campaign-admin-controls > label,
.admin-dialer-control-grid label,
.empireos-lead-engine-controls label,
.lead-score-weight-grid label {
  color: #42546b !important;
}

.primary,
.call-paper-paste button,
.empireos-lead-engine-actions .primary {
  border-color: #1261a6 !important;
  background: #1261a6 !important;
  color: #ffffff !important;
  box-shadow: 0 7px 18px rgba(18, 97, 166, .18) !important;
}

.secondary,
.ghost {
  border: 1px solid #c6d3e1 !important;
  background: #ffffff !important;
  color: #245f9f !important;
  box-shadow: none !important;
}

.call {
  background: #16865f !important;
  color: #ffffff !important;
}

.status,
.record-state,
.empireos-lead-engine-badge {
  border: 1px solid #cbd9e8 !important;
  background: #edf4fb !important;
  color: #245f9f !important;
}

.status[data-tone="online"],
.status[data-tone="success"] {
  border-color: #b8dfcc !important;
  background: #e8f6ef !important;
  color: #137b4a !important;
}

.campaign-builder-form,
.campaign-merge-form,
.campaign-admin-controls fieldset,
.campaign-list-manager,
.campaign-list-option,
.campaign-availability-toggle,
.campaign-advisor-choices label,
.campaign-merge-sources label,
.campaign-resource-choices label,
.campaign-existing-list-picker label,
.platform-permission-fieldset,
.trial-rep-platform-choices label,
.admin-dialer-control-grid .admin-policy-check,
.lead-list-origin,
.lead-list-availability {
  border-color: #d7e0ea !important;
  background: #f7f9fc !important;
  color: #34475f !important;
}

.campaign-builder-form fieldset,
.campaign-admin-controls fieldset,
.tenant-resource-form fieldset {
  border-color: #d7e0ea !important;
}

.campaign-builder-form legend,
.campaign-admin-controls legend,
.platform-permission-fieldset legend,
.admin-power-goal-settings legend {
  color: #245f9f !important;
}

.campaign-health-monitor {
  border-color: #cad8e7 !important;
  background: #edf4fb !important;
}

.campaign-health-status,
.campaign-health-metric,
.live-playlist-health > span {
  border: 1px solid #e1e7ee !important;
  background: #ffffff !important;
}

.campaign-health-status :is(strong, span, small),
.campaign-health-metric :is(strong, span, small) {
  color: #41546c !important;
}

.live-playlist-card {
  border-color: #d9e2ec !important;
  background: #ffffff !important;
  box-shadow: 0 8px 24px rgba(24, 43, 67, .07) !important;
}

.live-playlist-heading strong,
.live-playlist-health strong,
.campaign-list-manager-heading strong,
.campaign-list-option > strong {
  color: #17283f !important;
}

.live-playlist-card p,
.campaign-list-manager-heading small,
.campaign-list-option > small {
  color: #66758a !important;
}

.advisor-list,
.advisor-list label,
table :is(th, td),
.table-row,
.mapping-row {
  border-color: #e0e6ed !important;
}

table,
thead,
tbody,
tr,
td,
th {
  color: #34475f;
}

thead,
th {
  background: #f2f6fa !important;
  color: #53657b !important;
}

.modal {
  background: rgba(18, 35, 55, .48) !important;
  backdrop-filter: blur(5px) !important;
}

/* Campaign Command Center */
.ecs-overlay {
  background: rgba(19, 38, 62, .40) !important;
}

.ecs-drawer {
  border-left-color: #cbd7e4 !important;
  background: #f3f6fa !important;
  color: #17283f !important;
  box-shadow: -24px 0 64px rgba(19, 38, 62, .20) !important;
}

.ecs-head span,
.ecs-builder > * > span,
.ecs-sources header span,
.ecs-yesterday-card > span {
  color: #245f9f !important;
}

.ecs-head h2,
.ecs-yesterday-card h3,
.ecs-spiff strong,
.ecs-source h4,
.ecs-incoming h3 {
  color: #17283f !important;
}

.ecs-head p,
.ecs-empty,
.ecs-incoming p,
.ecs-incoming > small {
  color: #66758a !important;
}

#ecs-close {
  border-color: #cbd6e2 !important;
  background: #ffffff !important;
  color: #42546b !important;
}

.ecs-yesterday-card,
.ecs-spiff,
.ecs-builder > section,
.ecs-builder > aside {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: 0 8px 24px rgba(24, 43, 67, .06) !important;
}

.ecs-yesterday-card small,
.ecs-progress small,
.ecs-progress b i {
  color: #758399 !important;
}

.ecs-progress > span {
  background: #dfe7ef !important;
}

.ecs-progress em {
  background: linear-gradient(90deg, #1261a6, #4e94d6) !important;
}

.ecs-mode-buttons button {
  border-color: #d1dce7 !important;
  background: #f7f9fc !important;
  color: #42546b !important;
}

.ecs-mode-buttons button small {
  color: #77869a !important;
}

.ecs-mode-buttons button.active {
  border-color: #307bc2 !important;
  background: #e9f2fb !important;
  color: #174e84 !important;
  box-shadow: inset 0 0 0 1px rgba(48, 123, 194, .10) !important;
}

.ecs-mode-buttons button.active small {
  color: #356895 !important;
}

#ecs-advisor-field {
  color: #53657b !important;
}

#ecs-summary {
  border: 1px solid #dce4ec !important;
  background: #f4f7fa !important;
}

#ecs-summary strong {
  color: #17283f !important;
}

#ecs-summary span {
  color: #66758a !important;
}

#ecs-summary .ready {
  color: #137b4a !important;
}

#ecs-summary .blocked {
  color: #a23e4c !important;
}

#ecs-start,
.ecs-incoming button {
  background: #1261a6 !important;
  color: #ffffff !important;
}

#ecs-start:disabled {
  border: 1px solid #d3dce6 !important;
  background: #e8edf3 !important;
  color: #7b8797 !important;
  opacity: 1 !important;
}

.ecs-manual-option {
  border-color: #bcd2ea !important;
  background: #edf5fd !important;
}

.ecs-manual-option span {
  color: #174e84 !important;
}

.ecs-manual-option small {
  color: #5e7188 !important;
}

.ecs-manual-option button {
  border-color: #1261a6 !important;
  background: #1261a6 !important;
  color: #ffffff !important;
}

.ecs-sources nav {
  border: 1px solid #dbe3eb !important;
  background: #f0f4f8 !important;
}

.ecs-sources nav button {
  color: #66758a !important;
}

.ecs-sources nav button.active {
  background: #ffffff !important;
  color: #174e84 !important;
  box-shadow: 0 3px 10px rgba(24, 43, 67, .08) !important;
}

.ecs-source {
  border-color: #d7e0ea !important;
  background: #ffffff !important;
}

.ecs-source.selected {
  border-color: #307bc2 !important;
  background: #f4f9fe !important;
  box-shadow: inset 0 0 0 1px rgba(48, 123, 194, .10) !important;
}

.ecs-health,
.ecs-count strong,
.ecs-sources header small {
  color: #137b4a !important;
}

.ecs-source p,
.ecs-count span,
.ecs-metrics span {
  color: #66758a !important;
}

.ecs-metrics {
  border-top-color: #e2e8ef !important;
}

.ecs-metrics b {
  color: #34475f !important;
}

.ecs-incoming > i {
  border-color: #b7dfca !important;
  background: #e8f6ef !important;
  color: #137b4a !important;
}

.ecs-incoming button {
  background: #16865f !important;
}

#phone-campaign-command {
  border-color: #afc8e1 !important;
  background: #edf4fb !important;
  color: #245f9f !important;
  box-shadow: none !important;
}

/* Repeating the advisor ID intentionally outranks an older :is() rule whose
   specificity is raised by ID alternatives that do not match this panel. */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root > .empire-mode-grid > .empire-mode-phone,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root .empire-mode-phone > .phone-panel {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: 0 10px 30px rgba(24, 43, 67, .08) !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root .empire-mode-phone .phone-panel > .panel-heading h2 {
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root .empire-mode-phone :is(.phone-screen, .dial-pad, .phone-deck) {
  border-color: #d8e1eb !important;
  background-color: #f7f9fc !important;
  color: #17283f !important;
}

/* Advisor workspace color authority.
   Older workspace skins use deeply nested ID selectors, so this final block
   intentionally repeats #advisor-panel to keep every focused view legible. */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(
  #customer-card,
  #campaign-workspace > .panel,
  #call-history,
  #advisor-messages,
  #mason-ai,
  #performance
) {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: 0 10px 30px rgba(24, 43, 67, .08) !important;
}

/* Customer */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card :is(
  #customer-grid,
  .empire-customer-sheet,
  .empire-customer-sheet-viewport,
  .empire-customer-sheet-track,
  .empire-customer-sheet-primary,
  .empire-customer-sheet-secondary
) {
  border-color: #d8e1eb !important;
  background: #f7f9fc !important;
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card .empire-customer-field,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card .customer-grid > div {
  border-color: #dfe6ee !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: 0 3px 10px rgba(24, 43, 67, .05) !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card .empire-customer-field:hover,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card .customer-grid > div:hover {
  border-color: #aac8e8 !important;
  background: #f4f9fe !important;
  box-shadow: 0 6px 16px rgba(24, 43, 67, .08) !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card .customer-grid > div::before {
  background: #c6dbef !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card :is(.customer-grid, .empire-customer-field) small {
  color: #66758a !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #customer-card :is(.customer-grid, .empire-customer-field) strong {
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(
  #tenant-customer-search-form,
  .tenant-customer-search-results,
  .empire-customer-sheet-page,
  .empire-customer-sheet-toggle
) {
  border-color: #d8e1eb !important;
  background: #f4f7fa !important;
  color: #42546b !important;
}

/* Offers, products, packages, and scripts */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace > .panel {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .section-title :is(h2, h3),
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace :is(.package-content, .tenant-resource-cards) h3 {
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .section-title p,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace :is(.package-content, .tenant-resource-cards) p {
  color: #66758a !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .segmented {
  border: 1px solid #d8e1eb !important;
  background: #edf2f7 !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .segmented button {
  border-color: transparent !important;
  background: transparent !important;
  color: #66758a !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .segmented button.active {
  border-color: #b9d1ea !important;
  background: #ffffff !important;
  color: #174e84 !important;
  box-shadow: 0 3px 9px rgba(24, 43, 67, .08) !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace :is(
  .package-content article,
  .tenant-resource-card,
  .tenant-resource-empty
) {
  border-color: #dce4ec !important;
  background: #f7f9fc !important;
  color: #17283f !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace :is(
  .package-content article,
  .tenant-resource-card,
  .tenant-resource-empty
) small {
  color: #66758a !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .script-copy {
  border: 1px solid #d6e4f2 !important;
  background: #edf5fd !important;
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #campaign-workspace .script-copy :is(p, strong, span) {
  color: #17283f !important;
}

/* History */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history :is(#call-history-search, #call-history-filter) {
  color-scheme: light !important;
  border-color: #cbd6e2 !important;
  background: #ffffff !important;
  color: #1d3048 !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history .call-history-scroll {
  border-color: #dce4ec !important;
  background: #ffffff !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history .call-history-table th {
  border-bottom-color: #d8e1eb !important;
  background: #eef3f8 !important;
  color: #53657b !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history .call-history-table td,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history .call-history-table tbody tr:nth-child(even) td {
  border-bottom-color: #e4eaf1 !important;
  background: #ffffff !important;
  color: #34475f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-history .call-history-table tbody tr:hover td {
  background: #edf5fd !important;
  color: #17283f !important;
}

/* Inbox */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages > summary,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-heading {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages :is(.message-workspace, .message-conversation, .message-thread) {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #34475f !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-people {
  border-color: #d8e1eb !important;
  background: #f2f6fa !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-person {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-person.active {
  border-color: #75a9dc !important;
  background: #e9f2fb !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-conversation-title,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-compose {
  border-color: #d8e1eb !important;
  background: #f7f9fc !important;
  color: #174e84 !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-bubble {
  background: #edf2f7 !important;
  color: #17283f !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #advisor-messages .message-bubble.mine {
  background: #dfeefa !important;
  color: #174e84 !important;
}

/* Ask Mason */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #mason-ai .mason-transcript {
  border-color: #d8e1eb !important;
  background: #f7f9fc !important;
  color: #42546b !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #mason-ai .mason-quick-actions button {
  border-color: #bcd2ea !important;
  background: #edf5fd !important;
  color: #174e84 !important;
  box-shadow: none !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #mason-ai .mason-answer {
  border-color: #4f91cf !important;
  background: #edf5fd !important;
  color: #17283f !important;
}

/* Performance */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(#power-dial-summary, #performance) .power-dial-metric,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #performance .metric {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #17283f !important;
  box-shadow: 0 5px 16px rgba(24, 43, 67, .06) !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(#power-dial-summary, #performance) .power-dial-metric span,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #performance .metric span {
  color: #66758a !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(#power-dial-summary, #performance) .power-dial-metric strong,
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #performance .metric strong {
  color: #17283f !important;
}

/* Phone dock: quiet neutral controls while unavailable; clear action colors
   only when an action can actually be used. */
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root :is(#to-button, #call-button, #hangup-button, #transfer-button) {
  border-color: #cbd6e2 !important;
  background: #eef3f8 !important;
  color: #66758a !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #to-button:not(:disabled),
body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #transfer-button:not(:disabled) {
  border-color: #8bb7e0 !important;
  background: #edf5fd !important;
  color: #174e84 !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #call-button:not(:disabled) {
  border-color: #16865f !important;
  background: #16865f !important;
  color: #ffffff !important;
}

body.empire-focused-advisor #advisor-panel#advisor-panel #empire-mode-workspace-root #hangup-button:not(:disabled) {
  border-color: #bb3243 !important;
  background: #bb3243 !important;
  color: #ffffff !important;
}

/* Mason Guide uses the same light card system while keeping its launcher blue. */
.mason-guide-launcher {
  border-color: #4e94d6 !important;
  background: #1261a6 !important;
  color: #ffffff !important;
  box-shadow: 0 12px 30px rgba(18, 97, 166, .25) !important;
}

.mason-guide-drawer {
  border-left-color: #cbd7e4 !important;
  background: #f3f6fa !important;
  color: #17283f !important;
  box-shadow: -24px 0 64px rgba(19, 38, 62, .20) !important;
}

.mason-guide-header {
  border-bottom-color: #d8e1eb !important;
  background: #ffffff !important;
}

.mason-guide-kicker { color: #245f9f !important; }
.mason-guide-header h2 { color: #17283f !important; }
.mason-guide-close {
  border-color: #cbd6e2 !important;
  background: #f2f6fa !important;
  color: #42546b !important;
}

.mason-guide-modes,
.mason-guide-footer {
  border-color: #d8e1eb !important;
  background: #eef3f8 !important;
}

.mason-guide-mode,
.mason-guide-step-tab,
.mason-guide-actions button,
.mason-guide-actions a {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  color: #42546b !important;
  box-shadow: none !important;
}

.mason-guide-mode.active,
.mason-guide-step-tab.active,
.mason-guide-actions .primary {
  border-color: #75a9dc !important;
  background: #e9f2fb !important;
  color: #174e84 !important;
}

.mason-guide-summary h3,
.mason-guide-card h4,
.mason-guide-step-name { color: #17283f !important; }
.mason-guide-summary p,
.mason-guide-card-summary,
.mason-guide-meta,
.mason-guide-progress-copy,
.mason-guide-step-state { color: #66758a !important; }
.mason-guide-card {
  border-color: #d8e1eb !important;
  background: #ffffff !important;
  box-shadow: 0 8px 24px rgba(24, 43, 67, .07) !important;
}
.mason-guide-progress-track { background: #dfe7ef !important; }

/* Campaign Command Center contrast pass.
   The surrounding canvas stays light while each decision area gets a clear
   blue, green, or gold identity like the approved concept direction. */
.ecs-drawer {
  background:
    radial-gradient(circle at 100% 0, rgba(65, 128, 193, .13), transparent 32%),
    #edf2f7 !important;
}

.ecs-head {
  padding: 2px 2px 17px !important;
  border-bottom: 1px solid #c9d6e4 !important;
}

.ecs-head > div {
  padding-left: 14px;
  border-left: 5px solid #245f9f;
}

.ecs-head span { color: #245f9f !important; }
.ecs-head h2 { color: #112a46 !important; }

#ecs-close {
  border-color: #294f78 !important;
  background: #173b61 !important;
  color: #ffffff !important;
  box-shadow: 0 7px 18px rgba(18, 48, 81, .18) !important;
}

.ecs-yesterday-card,
.ecs-spiff {
  position: relative;
  overflow: hidden;
  border-color: #c9d9e9 !important;
  background: linear-gradient(135deg, #e7f0f9 0%, #ffffff 75%) !important;
}

.ecs-yesterday-card::before,
.ecs-spiff::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: #245f9f;
}

.ecs-spiff:nth-child(1) {
  border-color: #bcd8cd !important;
  background: linear-gradient(135deg, #e9f6f0 0%, #ffffff 75%) !important;
}

.ecs-spiff:nth-child(1)::before { background: #16865f; }

.ecs-spiff:nth-child(2) {
  border-color: #e4d3a8 !important;
  background: linear-gradient(135deg, #fff6de 0%, #ffffff 75%) !important;
}

.ecs-spiff:nth-child(2)::before { background: #c18e25; }
.ecs-spiff header span { color: #9a6a0c !important; }
.ecs-spiff:nth-child(1) header span { color: #137b4a !important; }

.ecs-builder > section,
.ecs-builder > aside {
  border-color: #cbd8e6 !important;
  background: #ffffff !important;
  box-shadow: 0 9px 24px rgba(24, 43, 67, .07) !important;
}

.ecs-builder > .ecs-mode {
  border-top: 5px solid #245f9f !important;
  background: linear-gradient(180deg, #f4f8fc 0%, #ffffff 54%) !important;
}

.ecs-builder > .ecs-sources {
  border-top: 5px solid #367fc3 !important;
  background: linear-gradient(180deg, #eff6fc 0%, #ffffff 54%) !important;
}

.ecs-builder > .ecs-incoming {
  border-top: 5px solid #16865f !important;
  background: linear-gradient(180deg, #edf8f2 0%, #ffffff 58%) !important;
}

.ecs-mode-buttons button {
  border-color: #cbd8e6 !important;
  background: #ffffff !important;
  color: #42546b !important;
}

.ecs-mode-buttons button:nth-child(2) {
  background: #f0f6fc !important;
}

.ecs-mode-buttons button:nth-child(3) {
  background: #edf8f4 !important;
}

.ecs-mode-buttons button.active {
  border-color: #174e84 !important;
  background: linear-gradient(145deg, #245f9f, #123f70) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 20px rgba(18, 63, 112, .24) !important;
}

.ecs-mode-buttons button.active small { color: #d9eaff !important; }

#ecs-summary {
  border-color: #173f69 !important;
  background: linear-gradient(135deg, #173b61, #102d4c) !important;
  box-shadow: 0 8px 20px rgba(16, 45, 76, .18) !important;
}

#ecs-summary strong { color: #ffffff !important; }
#ecs-summary span { color: #c4d6e8 !important; }
#ecs-summary .ready { color: #72dfaa !important; }
#ecs-summary .blocked { color: #ffd0d5 !important; }

.ecs-manual-option {
  border-color: #9ecdb7 !important;
  background: #e9f6f0 !important;
}

.ecs-manual-option span { color: #11693f !important; }
.ecs-manual-option button {
  border-color: #16865f !important;
  background: #16865f !important;
  color: #ffffff !important;
}

.ecs-sources nav {
  border-color: #bfd1e3 !important;
  background: #dfeaf5 !important;
}

.ecs-sources nav button.active {
  color: #ffffff !important;
  background: #245f9f !important;
  box-shadow: 0 4px 12px rgba(18, 63, 112, .18) !important;
}

.ecs-source {
  border-color: #cddae7 !important;
  background: #ffffff !important;
  box-shadow: 0 4px 13px rgba(24, 43, 67, .05) !important;
}

.ecs-source:nth-child(even) { background: #f5f9fd !important; }

.ecs-source.selected {
  border-color: #307bc2 !important;
  background: #e9f3fc !important;
  box-shadow: inset 5px 0 0 #307bc2, 0 5px 15px rgba(24, 43, 67, .08) !important;
}

.ecs-incoming > i {
  border-color: #70b493 !important;
  background: #16865f !important;
  color: #ffffff !important;
  box-shadow: 0 7px 16px rgba(22, 134, 95, .20) !important;
}

@media (max-width: 700px) {
  .ecs-drawer {
    background: #f3f6fa !important;
  }
}
