/* One sensor per row, matching Dashboard V3. */
:is(.chart-meta, .table-summary) .stat-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0; padding: 0; border: 1px solid var(--border); border-radius: 10px; overflow: hidden; }
:is(.chart-meta, .table-summary) .compact-summary { display: grid; grid-template-columns: minmax(150px, 1.3fr) repeat(3, minmax(0, 1fr)); gap: 8px 12px; align-items: center; min-width: 0; max-width: none; margin: 0; padding: 11px 14px; border: 0; border-bottom: 1px solid var(--border); border-radius: 0; background: var(--panel); }
:is(.chart-meta, .table-summary) .compact-summary:last-child { border-bottom: 0; }
:is(.chart-meta, .table-summary) .compact-summary:nth-child(odd) { background: #edf4f7; }
body.dark-mode :is(.chart-meta, .table-summary) .compact-summary:nth-child(odd) { background: #202f3c; }
:is(.chart-meta, .table-summary) .compact-summary .sc-label { margin: 0; white-space: normal; overflow: visible; overflow-wrap: anywhere; font-size: 14px; }
.summary-swatch { width: 9px; height: 9px; border-radius: 2px; flex: 0 0 9px; }
:is(.chart-meta, .table-summary) .compact-summary .sc-row { display: block; width: auto; min-width: 0; color: var(--muted); line-height: 1.5; font-size: 13px; overflow-wrap: anywhere; }
:is(.chart-meta, .table-summary) .compact-summary .sc-val { display: block; font-family: inherit; white-space: normal; overflow: visible; font-size: 14px; }
:is(.chart-meta, .table-summary) .compact-summary .sc-val b { font-weight: 600; }
:is(.chart-meta, .table-summary) .compact-summary .sc-val small { display: block; font-size: 11px; font-weight: 400; color: var(--muted); }
:is(.chart-meta, .table-summary) .compact-summary .sc-row-wide { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px; }
:is(.chart-meta, .table-summary) .compact-summary .sc-row-rain-days { grid-column: 2 / -1; grid-row: 2; display: block; text-align: left; }
:is(.chart-meta, .table-summary) .compact-summary .sc-row-min { --summary-tone: #1976d2; }
:is(.chart-meta, .table-summary) .compact-summary .sc-row-max { --summary-tone: #d62728; }
body.dark-mode :is(.chart-meta, .table-summary) .compact-summary .sc-row-min { --summary-tone: #70b7ff; }
body.dark-mode :is(.chart-meta, .table-summary) .compact-summary .sc-row-max { --summary-tone: #ff8585; }
:is(.chart-meta, .table-summary) .compact-summary :is(.sc-row-min, .sc-row-max),
:is(.chart-meta, .table-summary) .compact-summary :is(.sc-row-min, .sc-row-max) :is(.sc-val, small, .stat-marker) { color: var(--summary-tone); }
@media (max-width: 760px) {
    :is(.chart-meta, .table-summary) .compact-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 10px; gap: 8px; }
    :is(.chart-meta, .table-summary) .compact-summary .sc-label { grid-column: 1 / -1; }
    :is(.chart-meta, .table-summary) .compact-summary .sc-row-rain-days { grid-column: 1 / -1; grid-row: 3; }
    :is(.chart-meta, .table-summary) .compact-summary .sc-val small { overflow-wrap: anywhere; }
}
.ww-export-preview { box-sizing: border-box; width: min(1100px, calc(100vw - 32px)); max-width: none; max-height: calc(100dvh - 32px); padding: 0; border: 1px solid var(--border); border-radius: 14px; background: #f8fafc; color: var(--ink); box-shadow: 0 18px 80px #0004; }
.ww-export-preview::backdrop { background: #10213199; }
.ww-export-preview > header { display: flex; align-items: center; gap: 12px; padding: 14px; border-bottom: 1px solid var(--border); }
.ww-export-preview h2 { flex: 1; margin: 0; font-size: 16px; }
.ww-export-preview-body { padding: 14px; }
.ww-export-preview-body p { margin: 0 0 12px; font-size: 12px; }
.ww-export-preview iframe { display: block; width: 100%; height: 64dvh; border: 0; background: #dde4ea; }
.ww-export-preview a { display: inline-block; margin-top: 8px; color: var(--ink); font-size: 12px; }
.ww-export-preview > footer { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; margin: 0; padding: 12px 14px; border-top: 1px solid var(--border); }
.ww-export-preview button { cursor: pointer; min-height: 32px; padding: 5px 10px; border: 1px solid var(--border); border-radius: 7px; background: var(--panel); color: var(--ink); font: inherit; font-size: 12px; }
.ww-export-preview .ww-export-download { background: #225c80; color: #fff; }
.ww-export-preview :is(button, a):focus-visible { outline: 2px solid #2989bd; outline-offset: 3px; }
.dark-mode .ww-export-preview { background: #172333; }
@media (max-width: 760px) { .ww-export-preview { width: calc(100vw - 16px); max-height: calc(100dvh - 16px); } }

.ww-selectable-chart { user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
.ww-range-heading { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px 12px; margin-bottom:8px; padding:8px 10px; border:1px solid var(--border); border-radius:8px; font-size:12px; }
.ww-range-heading button { font:inherit; color:var(--ink); background:var(--panel); border:1px solid var(--border); border-radius:6px; padding:6px 10px; cursor:pointer; }
.ww-range-heading button:focus-visible { outline:2px solid var(--accent); outline-offset:2px; }
