/* Keep the frame monochrome; provider branding and market colors remain intact. */
.m13f.m13f .m13f-market-monitor {
  padding: 28px; margin: 28px 0 32px; min-width: 0; width: 100%;
  border: 1px solid #d8d8d8; border-radius: 16px; background: #fff; color: #111;
}
.m13f.m13f .m13f-market-heading { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 14px; margin-bottom: 16px; }
.m13f.m13f .m13f-market-eyebrow { margin: 0 0 8px; color: #606060; font-size: 10px; font-weight: 650; letter-spacing: .16em; }
.m13f.m13f .m13f-market-heading h3 { margin: 0; color: #111; font-size: 27px; line-height: 1.35; letter-spacing: -.025em; }
.m13f.m13f .m13f-market-provider { padding: 6px 10px; border: 1px solid #d8d8d8; border-radius: 999px; color: #555; background: #f6f6f6; font-size: 11px; }
.m13f.m13f .m13f-heatmap-heading { display: flex; align-items: flex-end; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin: 28px 0 16px; }
.m13f.m13f .m13f-heatmap-heading h4 { margin: 0; color: #111; font-size: 20px; line-height: 1.4; }
.m13f.m13f .m13f-market-source-label { display: flex; flex-direction: column; gap: 6px; margin: 0; color: #555; font-size: 11px; line-height: 1.6; font-weight: 600; }
.m13f.m13f .m13f-market-source { min-height: 44px; min-width: 180px; max-width: 100%; padding: 10px 35px 10px 12px; border: 1px solid #888; border-radius: 8px; color: #111; background-color: #fff; font: inherit; font-size: 13px; line-height: 1.5; cursor: pointer; }
.m13f.m13f .m13f-market-source:disabled { color: #606060; background-color: #f1f1f1; border-color: #aaa; cursor: default; }
.m13f.m13f .m13f-market-description { margin: 0 0 22px; font-size: 14px; line-height: 1.8; color: #555; }
.m13f.m13f .m13f-market-frame { position: relative; width: 100%; height: 680px; min-width: 0; overflow: hidden; border: 1px solid #dedede; border-radius: 10px; background: #fafafa; }
.m13f.m13f .m13f-market-host { width: 100%; height: 100%; }
.m13f.m13f .m13f-market-host tv-heatmap { display: block; width: 100%; height: 100%; }
.m13f.m13f .m13f-market-placeholder { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; padding: 28px; text-align: center; color: #606060; line-height: 1.8; }
.m13f.m13f .m13f-market-placeholder strong { color: #333; font-size: 18px; line-height: 1.6; }
.m13f.m13f .m13f-market-placeholder p { margin: 0; max-width: 500px; color: #606060; font-size: 13px; }
.m13f.m13f .m13f-market-placeholder a { color: #222; display: inline-flex; align-items: center; min-height: 44px; padding: 8px 4px; font-size: 13px; text-decoration: underline; text-underline-offset: 4px; }
.m13f.m13f .m13f-market-monitor.m13f-market-ready .m13f-market-placeholder { display: none; }
.m13f.m13f .m13f-market-state { margin: 12px 0 8px; font-size: 11px; line-height: 1.7; color: #606060; }
.m13f.m13f .m13f-market-caption { margin: 0 0 16px; font-size: 11px; line-height: 1.9; color: #606060; }
.m13f.m13f .m13f-market-footer { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px 22px; padding-top: 16px; border-top: 1px solid #e1e1e1; }
.m13f.m13f .m13f-market-footer p { flex: 1 1 300px; margin: 0; color: #555; font-size: 11px; line-height: 1.8; }
.m13f.m13f .m13f-market-footer a { display: inline-flex; align-items: center; min-height: 44px; padding: 8px 0; color: #222; font-size: 11px; line-height: 1.8; text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.m13f.m13f .m13f-market-monitor :is(a, select):focus-visible { outline: 3px solid #444; outline-offset: 3px; }
@media (max-width: 767px) {
  .m13f.m13f .m13f-market-monitor { padding: 18px; margin: 22px 0 26px; border-radius: 12px; }
  .m13f.m13f .m13f-market-heading h3 { font-size: 24px; }
  .m13f.m13f .m13f-market-heading { gap: 12px; }
  .m13f.m13f .m13f-heatmap-heading { gap: 12px; }
  .m13f.m13f .m13f-market-source-label { flex: 1 1 160px; }
  .m13f.m13f .m13f-market-source { width: 100%; min-width: 0; }
  .m13f.m13f .m13f-market-frame { height: 520px; }
  .m13f.m13f .m13f-market-placeholder { padding: 20px; }
  .m13f.m13f .m13f-market-placeholder strong { font-size: 16px; }
  .m13f.m13f .m13f-market-description { font-size: 13px; }
}
