.data-notice {
  display: flex;
  align-items: center;
  gap: 18px;
  margin-bottom: 18px;
  padding: 15px 18px;
  border: 1px solid #f0d785;
  border-radius: 10px;
  background: #fff9df;
  color: #5f511f;
}

.data-notice b {
  color: #8a6b00;
}

.data-notice small {
  margin-left: auto;
  color: #756a45;
}

.field-help {
  grid-column: 2;
  margin-top: -8px;
  color: var(--muted);
  font-size: 12px;
}

.dashboard-page { max-width: 1560px; }
.site-selector { display:flex; align-items:center; gap:10px; }
.site-selector label { color:var(--muted); font-size:13px; font-weight:700; }
.site-selector select { min-width:210px; }
.dashboard-title { display:flex; justify-content:space-between; align-items:flex-end; gap:20px; margin-bottom:22px; }
.dashboard-title h1 { margin:2px 0 0; }
.eyebrow { margin:0; color:var(--red)!important; font-size:13px; font-weight:800; letter-spacing:.04em; }
.goal-copy { display:flex; align-items:baseline; gap:12px; }
.goal-copy b { font-size:22px; }
.goal-copy span { color:var(--muted); font-size:13px; }
.growth-stats article { position:relative; min-height:166px; }
.growth-stats small { display:block; margin-top:10px; color:var(--muted); font-size:12px; }
.metric-change.up,.delta.up { color:#159447; }
.metric-change.down,.delta.down { color:#d74747; }
.chart-heading { display:flex; justify-content:space-between; align-items:flex-start; }
.chart-heading h2 { margin-bottom:5px; }
.chart-heading p,.focus-card>p,.section-head p { margin:0; color:var(--muted); font-size:13px; }
.chart-heading>small { color:var(--muted); }
.chart-legend { display:flex; gap:20px; margin:18px 0 2px; color:#555; font-size:12px; }
.chart-legend span::before { content:""; display:inline-block; width:22px; height:3px; margin-right:7px; vertical-align:middle; border-radius:3px; background:var(--red); }
.chart-legend .previous::before { height:0; border-top:2px dashed #aeb5bd; background:none; }
#trend-chart { height:280px; }
#trend-chart svg { width:100%; height:100%; overflow:visible; }
#trend-chart .grid-line { stroke:#e5e8ec; stroke-width:1; }
#trend-chart .axis-label { fill:#7a818a; font-size:10px; }
#trend-chart .y-label { text-anchor:end; }
#trend-chart .x-label { text-anchor:middle; }
#trend-chart polyline { fill:none; vector-effect:non-scaling-stroke; }
#trend-chart .current-line { stroke:var(--red); stroke-width:2.5; }
#trend-chart .previous-line { stroke:#aeb5bd; stroke-width:2; stroke-dasharray:6 5; }
#trend-chart .chart-dot { fill:#fff; stroke:var(--red); stroke-width:2; cursor:pointer; }
#trend-chart .chart-dot:hover { fill:var(--red); r:5; }
.focus-card { display:flex; flex-direction:column; }
.focus-actions { margin-top:12px; }
.focus-actions li span { display:flex; align-items:center; gap:10px; }
.signal { width:10px; height:10px; border-radius:50%; background:#ccc; }
.signal.new { background:#15a65a; }.signal.growth { background:#3b82f6; }.signal.near { background:#e7a815; }.signal.exit { background:#ef4444; }
.focus-note { margin-top:auto; padding:15px; border-radius:9px; background:#fff5f5; display:grid; gap:5px; }
.focus-note b { color:var(--red); font-size:13px; }.focus-note span { color:#59616c; font-size:12px; line-height:1.5; }
.action-table-card .section-head { margin-bottom:15px; }
.action-table-card .section-head>div { display:grid; gap:6px; }
.action-table td { vertical-align:middle; }
.opportunity-badge { display:inline-block; min-width:82px; padding:6px 9px; border-radius:7px; font-size:12px; font-weight:700; text-align:center; }
.opportunity-badge.new { background:#dcf5e6; color:#137a3d; }.opportunity-badge.growth { background:#e3efff; color:#2165bd; }.opportunity-badge.near { background:#fff1c7; color:#856400; }.opportunity-badge.exit { background:#ffe1df; color:#bd342f; }.opportunity-badge.qualified { background:#edf0f3; color:#5f6871; }
.post-title { min-width:310px; white-space:normal; }.post-title a { font-weight:650; }.post-title small { display:block; margin-top:6px; color:var(--muted); font-size:11px; }
.site-name { color:#626a73; font-size:12px; }.delta { font-weight:700; }.recommended-action { min-width:270px; white-space:normal; color:#4c555f; line-height:1.45; }

@media (max-width: 720px) {
  .data-notice {
    align-items: flex-start;
    flex-direction: column;
    gap: 6px;
  }

  .data-notice small {
    margin-left: 0;
  }

  .field-help {
    grid-column: 1;
  }
  .dashboard-title { align-items:flex-start; flex-direction:column; }
  .site-selector { width:100%; }
  .site-selector label { display:none; }
  .site-selector select { width:100%; }
  .goal-copy { width:100%; justify-content:space-between; }
}
