/* Global flat theme: remove gradients and enforce solid, high-contrast surfaces. */

:root {
  --flat-surface: #ffffff;
  --flat-surface-soft: #f5f7fb;
  --flat-border: #d4dfef;
  --flat-text: #0f172a;
  --flat-muted: #5b6679;
}

body.ra-modern {
  --flat-primary: var(--bar-left-color, var(--ra-brand-primary, #1f5ca8));
  --flat-secondary: var(--bar-right-color, var(--ra-brand-secondary, #27afc9));
  --flat-accent: var(--hover-color, var(--ra-brand-accent, #ff6f00));
  --flat-primary-strong: color-mix(in srgb, var(--flat-primary) 78%, #0b1f3a 22%);
  --flat-primary-hover: color-mix(in srgb, var(--flat-primary) 62%, #0b1f3a 38%);
  --flat-secondary-strong: color-mix(in srgb, var(--flat-secondary) 72%, #0c2f2a 28%);
  --flat-secondary-hover: color-mix(in srgb, var(--flat-secondary) 58%, #0c2f2a 42%);
  background-image: none !important;
  background-color: var(--flat-surface-soft) !important;
  color: var(--ra-body-text, var(--flat-text));
}

body.ra-modern.dash-workspace {
  --flat-surface: #ffffff;
  --flat-surface-soft: color-mix(in srgb, var(--flat-primary) 8%, #ffffff);
  --flat-border: color-mix(in srgb, var(--flat-primary) 20%, #ffffff);
  --flat-text: var(--body-text-color, #0f172a);
  --flat-muted: color-mix(in srgb, var(--body-text-color, #0f172a) 56%, #ffffff);
  --flat-primary-strong: color-mix(in srgb, var(--flat-primary) 84%, #170f14 16%);
  --flat-primary-hover: color-mix(in srgb, var(--flat-primary) 68%, #170f14 32%);
  --flat-secondary-strong: color-mix(in srgb, var(--flat-secondary) 78%, #0f1917 22%);
  --flat-secondary-hover: color-mix(in srgb, var(--flat-secondary) 62%, #0f1917 38%);
  background-color: var(--flat-surface-soft) !important;
}

#site-header .topbar__icon:hover,
#site-header .topbar__icon:focus-visible {
  background: var(--flat-accent) !important;
  border-color: var(--flat-accent) !important;
  box-shadow: none !important;
}

.home-shell,
.ra-carousel-shell,
.listing-shell,
.detail-shell,
.dash-shell,
.dash-panelbar__inner,
.dash-mini-topbar__inner,
.dash-wallet-pack-card,
.dash-modal__dialog,
.dai-panel,
.pai-gallery-panel,
.pai-editor-panel,
main.container,
.container.py-4,
.container.mt-5,
.container.my-5,
.container.text-center {
  background: var(--flat-surface) !important;
  background-image: none !important;
  border-color: var(--flat-border) !important;
  backdrop-filter: none !important;
}

.hero-caption {
  background: color-mix(in srgb, var(--flat-primary) 88%, #0b1220 12%) !important;
  background-image: none !important;
  box-shadow: none !important;
}

.ra-property-placeholder,
.detail-gallery-empty,
.dash-style-preview,
.dash-live-preview {
  background-image: none !important;
  background-color: var(--flat-surface) !important;
}

.ra-media-gradient,
.detail-gallery-overlay {
  background: rgba(8, 24, 48, 0.5) !important;
  background-image: none !important;
}

.site-footer {
  background: var(--flat-primary) !important;
  background-image: none !important;
}

.site-footer__logo-frame {
  background: #ffffff !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, 0.72) !important;
  box-shadow: none !important;
}

.site-footer__logo {
  background: #ffffff !important;
  box-shadow: none !important;
}

.dash-panelnav a.is-active,
.dash-btn--primary,
.listing-btn--primary,
.detail-btn--primary,
.ra-view-link,
.contact-btn,
.dash-live-menu a.is-cta,
.dash-live-btn {
  background: var(--flat-primary-strong) !important;
  background-image: none !important;
  border-color: var(--flat-primary-strong) !important;
  color: #ffffff !important;
}

.dash-panelnav a.is-active:hover,
.dash-btn--primary:hover,
.dash-btn--primary:focus-visible,
.listing-btn--primary:hover,
.listing-btn--primary:focus-visible,
.detail-btn--primary:hover,
.detail-btn--primary:focus-visible,
.ra-view-link:hover,
.ra-view-link:focus-visible,
.contact-btn:hover,
.contact-btn:focus-visible,
.dash-live-menu a.is-cta:hover,
.dash-live-menu a.is-cta:focus-visible,
.dash-live-btn:hover,
.dash-live-btn:focus-visible {
  background: var(--flat-primary-hover) !important;
  border-color: var(--flat-primary-hover) !important;
  color: #ffffff !important;
}

.dash-btn--danger {
  background: #b42341 !important;
  background-image: none !important;
  border-color: #b42341 !important;
  color: #ffffff !important;
}

.dash-btn--wallet,
.dash-wallet-pill {
  background: var(--flat-secondary-strong) !important;
  background-image: none !important;
  border-color: var(--flat-secondary-strong) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

.dash-btn--wallet:hover,
.dash-btn--wallet:focus-visible {
  background: var(--flat-secondary-hover) !important;
  border-color: var(--flat-secondary-hover) !important;
  color: #ffffff !important;
}

body.ra-modern [style*="linear-gradient"],
body.ra-modern [style*="radial-gradient"] {
  background-image: none !important;
}

.dash-wallet-pill span,
.dash-wallet-pill strong {
  color: #ffffff !important;
}

.dash-live-topbar,
.dash-live-hero,
.dash-live-footer {
  background: var(--pv-primary, var(--flat-primary)) !important;
  background-image: none !important;
}

.dash-live-hero,
.dash-live-footer {
  border-color: var(--pv-button-border, var(--flat-primary)) !important;
}

.dash-text-editor-head {
  background: var(--flat-primary) !important;
  background-image: none !important;
  border-color: var(--flat-primary) !important;
  box-shadow: none !important;
}

.dash-text-tip-card {
  background: var(--flat-surface) !important;
  background-image: none !important;
}

.dash-palette-card__bar {
  background: var(--pal-left) !important;
}
