/* Shared visual identity. Loaded after page styles; data-state colors keep their meaning. */
:root {
    --color-surface-alt: #f7f7f7;
}
body.platform-theme { background: #fff; color: var(--color-text); color-scheme: light; font-family: var(--font-interface); }
.platform-theme :is(h1,h2,h3,h4) { font-family: var(--font-interface); }
.platform-theme .site-header { background: #252525; border: 0; }
.platform-theme .site-header-inner { min-height: 74px; gap: 26px; }
.platform-theme .site-brand { color: #fff; font-family: Arial, sans-serif; font-size: 34px; gap: 10px; }
.platform-theme .site-brand-mark { filter: none; width: 36px; height: 36px; flex-basis: 36px; }
.platform-theme .site-nav { gap: 22px; }
.platform-theme .site-nav-link { color: #e8e8e8; font-weight: 500; }
.platform-theme .site-nav-link:hover, .platform-theme .site-nav-link.active { color: #fff; }
.platform-theme .site-nav-link.active::after { background: #ef5260; }
.platform-theme .header-search-trigger { background: transparent; color: #fff; border-color: #666666; border-radius: 3px; }
.platform-theme .header-search-trigger:hover { border-color: #fff; }
.platform-theme .header-search-trigger kbd { color: #eee; background: #3d3d3d; border-radius: 2px; }
.platform-theme .site-header a:focus-visible, .platform-theme .header-search-trigger:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
.platform-theme .search-field { background: #fff; border-color: #cacaca; border-radius: 3px; box-shadow: none; }
.platform-theme .search-button { border-radius: 3px; background: #252525; color: #fff; }
.platform-theme .search-shortcut { background: #f7f7f7; color: #656565; border-color: #dedede; border-radius: 2px; }
.platform-theme .global-search-dialog, .platform-theme .universal-search-panel { background: #fff; color: var(--color-text); border-color: var(--color-border); }
.platform-theme .site-footer { background: #fff; border-top: 1px solid var(--color-border); color: var(--color-text); }
.platform-theme .footer-inner { padding-block: 28px; }
.platform-theme .footer-brand { color: var(--color-text); font-family: Arial, sans-serif; font-size: 25px; display: inline-flex; align-items: center; gap: 8px; }
.platform-theme .footer-copy, .platform-theme .home-footer-label, .platform-theme .home-footer-detail { color: var(--color-text-secondary); font-family: var(--font-interface); font-size: 12px; }
.platform-theme .home-footer-column { border-color: var(--color-border); }
.platform-theme .edition-spark { color: #3d3d3d; }
.platform-theme .edition-quote:first-child .edition-spark { color: #e32636; }
.platform-theme .ec-page { --ec-line: var(--color-border); --ec-muted: var(--color-text-secondary); --ec-warm: #f7f7f7; --ec-ink: var(--color-text); }
.platform-theme .ec-page :focus-visible { outline-color: var(--color-accent); }
.platform-theme :is(.dashboard-section,.market-chart-wrap,.fx-section,.indicator-card,.indicator-category-card) { border-radius: 3px; box-shadow: none; }
.platform-theme .fx-page a { color: var(--color-accent); }
.platform-theme .fx-page :is(.fx-ticker strong,.fx-range-current,.fx-range-labels b) { color: var(--color-text); }
.platform-theme .fx-page :is(.fx-heading small,.fx-heading>span,.fx-note,small,.fx-neutral,.fx-range-labels) { color: var(--color-text-secondary); }
.platform-theme .fx-page :is(.fx-table th,.fx-table td,.fx-section,.fx-ticker,.fx-ticker a,.fx-range-header,.fx-range-item) { border-color: var(--color-border); }
.platform-theme .fx-table thead th, .platform-theme .fx-table thead th:first-child { background: #f7f7f7; color: var(--color-text-secondary); }
.platform-theme .fx-range-track { background: #efefef; }
@media(max-width:1200px) {
    .platform-theme .site-header-inner { gap: 18px; }
    .platform-theme .site-nav { gap: 15px; }
    .platform-theme .header-search-trigger kbd { display: none; }
}
@media(max-width:1024px) {
    .platform-theme .site-header-inner { padding-top: 14px; }
    .platform-theme .site-nav { gap: 24px; }
}
@media(max-width:760px) {
    .platform-theme .home-footer-grid { grid-template-columns: 1fr; gap: 16px; }
    .platform-theme .home-footer-column { border-left: 0; border-top: 1px solid var(--color-border); padding: 14px 0 0; }
}

/* Preserve the existing market menu on the shared white theme. */
.platform-theme .site-nav-markets > summary { color: #fff; }
.platform-theme :is(.site-nav-dropdown,.site-nav-submenu) .site-nav-link { color: var(--color-text); }
.platform-theme :is(.site-nav-dropdown,.site-nav-submenu) .site-nav-link:hover { color: var(--color-accent); background: #f7f7f7; }
.platform-theme :is(.site-nav-dropdown,.site-nav-submenu) .site-nav-link.active { color: var(--color-accent); }
.platform-theme :is(.site-nav-dropdown,.site-nav-submenu) :focus-visible { outline-color: var(--color-accent); }

.platform-theme .brand-wordmark { font-family: Arial, sans-serif; font-weight: 800; letter-spacing: -.055em; line-height: 1; }
.platform-theme .footer-brand img { width: 26px; height: 26px; flex-shrink: 0; }
