/* Market mood: "Earnings in the next 4 weeks" above the Market desk / Lists tabs (earnings-ahead.js). */
.earnings-panel { margin: 0 28px 16px; }
.ea-filter { display: flex; flex-wrap: wrap; gap: 6px; margin: 2px 0 8px; }
.ea-filter button { padding: 3px 11px; border: 1px solid #d9e2da; border-radius: 999px; background: #fff; color: #245e42; font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }
.ea-filter button.on { border-color: #245e42; background: #245e42; color: #fff; }
.ea-filter button:focus-visible { outline: 2px solid #245e42; outline-offset: 2px; }
.ea-week { border-top: 1px solid #eef1ee; }
.ea-week:first-child { border-top: 0; }
.ea-week > summary { display: grid; grid-template-columns: minmax(150px, 210px) 150px minmax(0, 1fr) auto; gap: 4px 14px; align-items: center; padding: 10px 2px; cursor: pointer; font-size: 13px; list-style-position: outside; }
.ea-week > summary:hover, .ea-week > summary:focus-visible { background: #f5f8f5; }
.ea-toggle { color: #245e42; font-size: 12px; font-weight: 600; white-space: nowrap; }
.ea-toggle::before { content: "Show days ▾"; }
.ea-week[open] .ea-toggle::before { content: "Hide ▴"; }
.ea-when { color: #253e30; }
.ea-count { display: grid; grid-template-columns: minmax(0, 1fr) 36px; align-items: center; gap: 8px; color: #253e30; }
.ea-bar { display: block; height: 6px; overflow: hidden; border-radius: 3px; background: #eef1ee; }
.ea-bar > span { display: block; height: 100%; border-radius: 3px; background: #7fa88d; }
.ea-n { text-align: right; font-variant-numeric: tabular-nums; }
.ea-names { display: flex; flex-wrap: wrap; gap: 4px 14px; color: #64766b; }
.ea-starred { color: #7a5a00; font-weight: 600; }
.ea-none { margin: 0; color: #8a9a90; font-style: italic; }
.ea-days { display: grid; gap: 12px; padding: 4px 2px 14px; }
.ea-day { display: grid; gap: 4px; }
.ea-day h3 { margin: 0; color: #2b4b39; font-size: 12px; font-weight: 600; }
.ea-line { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 4px 12px; align-items: start; }
.ea-label { padding-top: 4px; color: #64766b; font-size: 12px; }
.ea-chips { display: flex; flex-wrap: wrap; gap: 4px; }
.ea-chip { display: inline-flex; align-items: center; padding-right: 7px; border: 1px solid #e3e8e3; border-radius: 6px; background: #fafbf9; font-size: 12px; }
.ea-chip .tl-star { width: 22px; height: 22px; font-size: 15px; }
.ea-sym { color: #253e30; font-weight: 600; }
.ea-more { justify-self: start; padding: 2px 0; border: 0; background: none; color: #245e42; font: inherit; font-size: 12px; font-weight: 600; cursor: pointer; }
@media (max-width: 860px) {
  .earnings-panel { margin: 0 10px 16px; }
  .ea-week > summary, .ea-line { grid-template-columns: minmax(0, 1fr); }
  .ea-count { max-width: 240px; }
}
