.weather-details{margin-block:1.5rem 2rem;padding:clamp(1rem,3vw,1.75rem);border:1px solid var(--line,#d9dfdc);border-radius:12px;background:var(--paper,#fff);color:var(--ink,#173f35);min-width:0}
.weather-details-heading h3{margin:0;font-family:var(--display,inherit);font-size:clamp(1.4rem,3vw,1.9rem);line-height:1.2;letter-spacing:-.02em}
.weather-details-heading p{max-width:65ch;margin:.65rem 0 1.25rem;line-height:1.6}
.weather-details-controls{display:flex;align-items:flex-end;flex-wrap:wrap;gap:.75rem}
.weather-details-controls label{display:grid;gap:.4rem;font-size:.9rem;font-weight:650;max-width:100%;flex:1 1 260px}
.weather-details-controls select{width:100%;max-width:32rem;min-height:48px;border:1px solid currentColor;border-radius:7px;background:var(--paper,#fff);color:inherit;padding:.65rem 2.25rem .65rem .85rem;font:inherit;font-weight:500;cursor:pointer}
.weather-details-controls select:disabled{cursor:wait;opacity:.65}
.weather-details-controls button{min-height:48px;padding:.6rem 1rem;border:1px solid currentColor;border-radius:7px;color:inherit;background:transparent;font:inherit;cursor:pointer}
.weather-details-controls button:hover{background:var(--ink,#173f35);color:var(--paper,#fff)}
.weather-details-status{min-height:1.5em;margin:1rem 0;font-size:.9rem;line-height:1.6;overflow-wrap:anywhere}
.weather-details-summary{display:flex;flex-wrap:wrap;gap:.4rem 1rem;align-items:baseline;margin-block:1.5rem .75rem}
.weather-details h4{margin:0;font-size:1.05rem;line-height:1.4;letter-spacing:0}
.weather-details-summary p{margin:0;font-size:.95rem}
.weather-details-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:.75rem 0;gap:0 1.5rem}
.weather-detail-metric{min-width:0;padding:.9rem 0;border-top:1px solid var(--line,#d9dfdc)}
.weather-detail-metric dt{font-size:.8rem;line-height:1.45;overflow-wrap:anywhere}
.weather-detail-metric dd{margin:.3rem 0 0;font-size:clamp(1.15rem,3vw,1.55rem);line-height:1.3;font-weight:650;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.weather-details-stamp,.weather-details-note,.weather-details-attribution,.weather-details-official{font-size:.8rem;line-height:1.65;max-width:75ch}
.weather-details-current,.weather-details-hourly{margin-top:1.75rem}
.weather-details-hourly{padding-top:1.1rem;border-top:1px solid var(--line,#d9dfdc)}
.weather-details-note{margin:.6rem 0}
.weather-details-attribution{margin:1.25rem 0 0;font-weight:600}
.weather-details-official{margin:.65rem 0 0}.weather-details-official a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:3px}
.weather-details-table-scroll{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-color:var(--ink,#173f35) var(--paper,#fff);border:1px solid var(--line,#d9dfdc);border-radius:7px;margin-block:.75rem}
.weather-details table{width:100%;border-collapse:collapse;font-size:.85rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.weather-details caption{padding:.75rem;text-align:left;font-weight:650;white-space:normal}
.weather-details th,.weather-details td{padding:.7rem .85rem;border-top:1px solid var(--line,#d9dfdc);text-align:right}
.weather-details th:first-child{position:sticky;left:0;background:var(--paper,#fff);text-align:left}
.weather-details thead th{font-size:.75rem;font-weight:600}
.weather-details :is(a,button,select,[tabindex]):focus-visible{outline:3px solid currentColor;outline-offset:3px}
.weather-details [hidden]{display:none!important}
@media(max-width:600px){.weather-details-metrics{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:1rem}.weather-details-controls label{flex-basis:100%}.weather-details-controls select{font-size:1rem}.weather-details-summary{display:block}.weather-details-summary p{margin-top:.4rem}}
@media print{.weather-details{break-inside:avoid}.weather-details-controls button,.weather-details-official{display:none}.weather-details-table-scroll{overflow:visible}.weather-details table{font-size:.6rem;white-space:normal}.weather-details th,.weather-details td{padding:.35rem}.weather-details th:first-child{position:static}}
