:root {
    --dash: #22377e;
    --dash-dark: #172b65;
    --dash-accent: #ff8500;
    --dash-soft: #eef4ff;
    --dash-line: #e1e8f2;
    --dash-text: #1f2540;
}
.market-dashboard-page { background: #eff2f8; }
.dash-hero { background: linear-gradient(135deg, #172b65 0%, #22377e 60%, #3154a2 100%); }
.dash-hero h1 { font-size: clamp(38px, 4.6vw, 56px); }
.dash-hero-card > i {
    align-items: center; background: rgba(255,255,255,.12); border-radius: 17px;
    color: #ffb45d; display: flex; font-size: 30px; height: 68px;
    justify-content: center; min-width: 68px;
}
.dash-selector-toggle {
    align-items: center; background: #fff; border: 1px solid var(--dash-line);
    border-radius: 14px; color: var(--dash-dark); display: none; font-weight: 750;
    justify-content: space-between; padding: 13px 15px; width: 100%;
}
.dash-selector-toggle span { align-items: center; display: flex; gap: 8px; }
.dash-selector-toggle b { color: var(--dash); font-size: 12px; }
.dash-limit-message { color: #c74646; display: block; font-size: 11px; min-height: 16px; }
.dash-table-hint { color: #7d8ca0; display: none; font-size: 11px; margin-top: 14px; }
.dash-table-hint i { margin-right: 5px; }
.dash-table-wrap th:first-child,
.dash-table-wrap td:first-child { background: #fff; left: 0; position: sticky; z-index: 2; }
.dash-table-wrap th:first-child { background: #f8fafc; }
.dash-data-footer {
    align-items: flex-start; border-top: 1px solid #dfe6f1; color: #738097;
    display: flex; font-size: 11px; gap: 9px; line-height: 1.6;
    margin-top: 24px; padding: 18px 2px 0;
}
.dash-data-footer i { color: var(--dash); margin-top: 3px; }
.dash-data-footer p { margin: 0; }
.dash-data-footer span { font-weight: 700; white-space: nowrap; }
.sr-only {
    clip: rect(0,0,0,0); height: 1px; margin: -1px; overflow: hidden;
    padding: 0; position: absolute; white-space: nowrap; width: 1px;
}
@media (max-width: 820px) {
    .dash-selector-toggle { display: flex; }
    .dash-selector { display: none; }
    .dash-selector.is-open { display: block; }
    .dash-workspace { gap: 10px; }
    .dash-table-hint { display: block; }
}
@media (max-width: 520px) {
    .dash-family-nav { scroll-snap-type: x proximity; }
    .dash-family-nav a { scroll-snap-align: start; }
    .dash-live-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .dash-live-card { padding: 14px; }
    .dash-live-card p { font-size: 17px; }
    .dash-data-footer span { display: block; margin-top: 4px; }
}
