.dashboard-wrap{max-width:1440px;padding:24px}
.dashboard-page .top{padding:18px 24px;background:#234f34}
.dashboard-page .top h1{font-size:21px}
.dashboard-page .card{padding:22px;border-radius:16px;margin-bottom:20px}
.dashboard-page .kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}
.dashboard-page .kpi{padding:20px;border-radius:14px;border-top:3px solid var(--brand)}
.dashboard-page .kpi .v{font-size:36px;line-height:1.3;margin:8px 0}
.dashboard-page .kpi .s{line-height:1.6}
.dashboard-page .dateNav{gap:10px}
.chart-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:16px}
.chart-heading h2{font-size:20px;margin:0}
.chart-heading p{margin:5px 0 0;font-size:13px}
.chart-heading .eyebrow{font-size:11px;letter-spacing:.12em;font-weight:700;color:var(--brand);margin:0 0 7px}
.chart-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;background:var(--bg);border-radius:10px;margin-bottom:16px}
.chart-controls fieldset{display:flex;gap:16px;flex-wrap:wrap;border:0;padding:0;margin:0}
.chart-controls label{display:flex;align-items:center;gap:8px;margin:0;color:var(--ink)}
.chart-controls input{width:17px;height:17px;accent-color:var(--brand)}
.scale-control select{width:auto;padding:7px 9px;font-size:13px}
.chart-scroll{overflow-x:auto;overscroll-behavior-x:contain;max-width:100%}
svg.trend text{font-size:12px}
.chart-note{font-size:12px;margin:16px 0;line-height:1.6}
.chart-empty{min-height:240px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--muted);background:var(--bg);border-radius:10px;padding:20px}
#trendDetails{border-top:1px solid var(--line);padding-top:12px}
summary{cursor:pointer;font-size:13px;font-weight:600;padding:4px 0}
/* Daily values: always expanded, full height (no inner scroll) */
#trendDetails .tablewrap{max-height:none;overflow-y:visible;margin-top:10px}
#trendDetails > summary{list-style:none;pointer-events:none;cursor:default;font-size:15px}
#trendDetails > summary::-webkit-details-marker{display:none}
.missing-panel{background:var(--warn-bg);color:var(--warn);padding:12px 16px;border-radius:10px;margin-bottom:20px}
.missing-panel p{margin-bottom:0;font-size:13px}
#chartDialog{width:min(1500px,96vw);max-width:96vw;max-height:94vh;overflow:auto;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:24px}
#chartDialog::backdrop{background:rgba(10,25,17,.65)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
button:focus-visible,summary:focus-visible,.chart-scroll:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(prefers-color-scheme:dark){:root{--chart-hg:#78afff;--chart-lg:#e9b553}}
@media(max-width:1000px){.dashboard-page .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dashboard-wrap{padding:12px}.dashboard-page .top{padding:14px}.dashboard-page .top h1{font-size:18px;flex-basis:100%}.dashboard-page .card{padding:14px}.dashboard-page .kpis{gap:10px}.dashboard-page .kpi{padding:14px}.dashboard-page .kpi .v{font-size:28px}.chart-heading h2{font-size:17px}.chart-controls{padding:12px;gap:18px}.scale-control{flex-wrap:wrap}#chartDialog{padding:14px}.dateNav input{max-width:100%}.dateNav>div{max-width:100%}.dashboard-page .dateNav{gap:6px}}

.mobile-hint{display:none}@media(max-width:600px){.mobile-hint{display:inline}}

#trend svg{cursor:zoom-in}.chart-axis-note{font-size:12px;margin:10px 0 0}


/* ESTATE_TREND_START */

/* Estate dropdown in the date bar - matches the ghost "Today" button */
.dashboard-page .dateNav .estate-pick{
  width:auto;
  max-width:200px;
  padding:10px 14px;
  border:1px solid var(--brand);
  border-radius:8px;
  background:var(--card);
  color:var(--brand);
  font:inherit;
  font-weight:600;
  line-height:inherit;
  cursor:pointer;
}
.dashboard-page .dateNav .estate-pick:focus-visible{
  outline:3px solid var(--accent);
  outline-offset:3px;
}

#estateSeriesLabel{ font-weight:600; }

:root{ --chart-estate:#7c3aed; }

/* ESTATE_TREND_END */


/* GRAPH_SMALL_LABELS_START */

svg.trend .trend-date-label{
  font-size:9px;
}

svg.trend .trend-point-value{
  font-size:8.5px;
  font-weight:600;
  fill:var(--ink);
  paint-order:stroke;
  stroke:var(--card);
  stroke-width:2.5px;
  stroke-linejoin:round;
  pointer-events:none;
}

/* GRAPH_SMALL_LABELS_END */

/* Small graph point values */
svg.trend .trend-point-value {
    font-size: 9px;
    font-weight: 600;
    fill: var(--ink);
    paint-order: stroke;
    stroke: var(--card);
    stroke-width: 2.5px;
    stroke-linejoin: round;
    pointer-events: none;
}
