/* Daily ensemble table: one semantic table, with day cards on small screens. */
.vm-ens-page .vm-ens-table-scroll { width: 100%; max-width: 100%; min-width: 0; overflow-x: auto; }
.vm-ens-page #vm-ens-table { width: 100%; min-width: 980px; margin: 0; border-collapse: collapse; table-layout: fixed; color: var(--vm-text-primary, #0f172a); font-size: 13px; line-height: 1.45; }
.vm-ens-page #vm-ens-table caption { padding: 12px 14px; caption-side: top; text-align: left; font-size: 12px; line-height: 1.55; color: var(--vm-text-secondary, #475569); background: var(--vm-bg-primary, #fff); }
.vm-ens-page #vm-ens-table .vm-ens-table-col-day { width: 11%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-temp { width: 12%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-precip { width: 9%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-prob { width: 14%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-wind { width: 12%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-cloud { width: 12%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-pressure { width: 9%; }
.vm-ens-page #vm-ens-table .vm-ens-table-col-confidence { width: 9%; }
.vm-ens-page #vm-ens-table th, .vm-ens-page #vm-ens-table td { padding: 10px 8px; vertical-align: top; text-align: left; word-break: normal; overflow-wrap: normal; border: 0; border-bottom: 1px solid var(--vm-border-color, #cbd5e1); }
.vm-ens-page #vm-ens-table thead th { background: var(--vm-bg-secondary, #f1f5f9); font-size: 12px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.vm-ens-page #vm-ens-table thead small { display: block; margin-top: 3px; color: var(--vm-text-secondary, #475569); font-size: 12px; font-weight: 400; }
.vm-ens-page #vm-ens-table tbody tr { background: var(--vm-bg-primary, #fff); }
.vm-ens-page #vm-ens-table tbody tr.vm-ens-row-selected { background: var(--vm-bg-secondary, #f1f5f9); }
.vm-ens-page #vm-ens-table .vm-ens-table-day { display: block; width: 100%; min-width: 0; min-height: 44px; margin: 0; padding: 3px 0; border: 0; border-radius: 5px; background: transparent; color: var(--vm-text-primary, #0f172a); font: inherit; font-weight: 700; text-align: left; line-height: 1.5; cursor: pointer; }
.vm-ens-page #vm-ens-table .vm-ens-table-day > span, .vm-ens-page #vm-ens-table .vm-ens-table-day > time { display: block; white-space: nowrap; }
.vm-ens-page #vm-ens-table .vm-ens-table-day > time { color: var(--vm-text-secondary, #475569); font-size: 12px; font-weight: 400; }
.vm-ens-page #vm-ens-table .vm-ens-table-day[aria-pressed="true"] { color: #2563eb; }
[data-theme="dark"] .vm-ens-page #vm-ens-table .vm-ens-table-day[aria-pressed="true"] { color: #93c5fd; }
.vm-ens-page #vm-ens-table .vm-ens-table-day:focus-visible { outline: 3px solid #3b82f6; outline-offset: 2px; }
.vm-ens-page #vm-ens-table .vm-ens-table-value { display: block; color: var(--vm-text-primary, #0f172a); font-size: 13px; font-weight: 700; white-space: nowrap; }
.vm-ens-page #vm-ens-table .vm-ens-table-secondary { display: block; margin-top: 3px; color: var(--vm-text-secondary, #475569); font-size: 12px; line-height: 1.45; }
.vm-ens-page #vm-ens-table .vm-ens-table-probabilities { display: grid; gap: 3px; }
.vm-ens-page #vm-ens-table .vm-ens-table-probabilities > span { display: flex; justify-content: space-between; align-items: baseline; gap: 7px; }
.vm-ens-page #vm-ens-table .vm-ens-table-probabilities small { color: var(--vm-text-secondary, #475569); font-size: 12px; }
.vm-ens-page #vm-ens-table .vm-ens-table-probabilities strong { font-size: 13px; white-space: nowrap; }
.vm-ens-page #vm-ens-table .vm-ens-table-confidence { font-size: 12px; font-weight: 600; color: var(--vm-text-primary, #0f172a); }

@media (max-width: 640px) {
    .vm-ens-page .vm-ens-table-scroll { overflow: visible; border: 0; border-radius: 0; background: transparent; }
    .vm-ens-page #vm-ens-table { display: block; width: 100%; min-width: 0; table-layout: auto; }
    .vm-ens-page #vm-ens-table caption { display: block; width: 100%; padding: 0 0 12px; background: transparent; }
    .vm-ens-page #vm-ens-table colgroup { display: none; }
    .vm-ens-page #vm-ens-table thead { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }
    .vm-ens-page #vm-ens-table tbody { display: grid; gap: 12px; width: 100%; }
    .vm-ens-page #vm-ens-table tbody > tr { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 12px; width: 100%; min-width: 0; padding: 12px; border: 1px solid var(--vm-border-color, #cbd5e1); border-radius: 12px; background: var(--vm-bg-primary, #fff); }
    .vm-ens-page #vm-ens-table tbody > tr.vm-ens-row-selected { border-color: #3b82f6; box-shadow: inset 0 0 0 1px #3b82f6; background: var(--vm-bg-primary, #fff); }
    .vm-ens-page #vm-ens-table tbody th, .vm-ens-page #vm-ens-table tbody td { display: block; min-width: 0; width: auto; padding: 0; border: 0; }
    .vm-ens-page #vm-ens-table .vm-ens-table-date { grid-column: 1 / -1; padding-bottom: 9px; border-bottom: 1px solid var(--vm-border-color, #cbd5e1); }
    .vm-ens-page #vm-ens-table .vm-ens-table-day { display: flex; justify-content: space-between; align-items: baseline; flex-wrap: wrap; column-gap: 10px; min-height: 44px; padding: 8px 0; font-size: 15px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-day > time { font-size: 13px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-metric::before { content: attr(data-label); display: block; margin-bottom: 5px; color: var(--vm-text-secondary, #475569); font-size: 12px; line-height: 1.4; font-weight: 600; }
    .vm-ens-page #vm-ens-table .vm-ens-table-value { font-size: 14px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-secondary { font-size: 12px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-prob { grid-column: 1 / -1; padding: 9px 0; border-top: 1px solid var(--vm-border-color, #cbd5e1); border-bottom: 1px solid var(--vm-border-color, #cbd5e1); }
    .vm-ens-page #vm-ens-table .vm-ens-table-probabilities { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-probabilities > span { display: block; min-width: 0; }
    .vm-ens-page #vm-ens-table .vm-ens-table-probabilities small, .vm-ens-page #vm-ens-table .vm-ens-table-probabilities strong { display: block; }
    .vm-ens-page #vm-ens-table .vm-ens-table-probabilities strong { margin-top: 3px; font-size: 14px; }
    .vm-ens-page #vm-ens-table .vm-ens-table-agreement { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 5px 12px; padding-top: 9px; border-top: 1px solid var(--vm-border-color, #cbd5e1); }
    .vm-ens-page #vm-ens-table .vm-ens-table-agreement::before { margin-bottom: 0; }
    .vm-ens-page #vm-ens-table .vm-ens-table-confidence { font-size: 13px; }
}
