/* Narrow integration layer: the original site stylesheet remains the foundation. */
body .pilot-source-tabs { display:flex; margin:0; padding:0; gap:1px; list-style:none; }
body .pilot-source-tabs li { background-image:none; width:auto; flex:1; height:auto; margin:0; }
.pilot-source-tabs button { display:block; width:100%; border:0; background:transparent; color:#17405c; padding:12px 3px; font:600 12px 'Open Sans',sans-serif; cursor:pointer; }
.pilot-source-tabs button:focus-visible,.pilot-open-source:focus-visible { outline:2px solid #145a84; outline-offset:-2px; }
.pilot-preview-note { font-size:11px; color:#425e6e; margin:0 0 5px 10px; }
.pilot-header-time { display:block; font-size:9px; line-height:1.1; }
body .pilot-day { padding:4px 2px; }
body .pilot-day .forecast-topfive-temp { font-size:14px; padding:6px 0 0; white-space:nowrap; }
body .pilot-day .forecast-topfive-small { font-size:11px; }
.pilot-day-point { min-height:77px; display:flex; flex-direction:column; align-items:center; justify-content:center; line-height:1.2; padding-top:4px; }
.pilot-day-point time { font-size:11px; color:#526b7a; }
.pilot-day-point img { width:32px; height:32px; object-fit:contain; }
.pilot-day-point strong { font-size:14px; }
.pilot-missing { color:#8b969e; }
.pilot-scroll { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.pilot-comparison { border-collapse:separate; border-spacing:0; table-layout:fixed; width:max-content; min-width:100%; font-size:12px; }
.pilot-comparison th,.pilot-comparison td { box-sizing:border-box; min-width:59px; width:59px; text-align:center; border-right:1px solid #e2e8ed; padding:3px 2px; }
.pilot-comparison thead th { font-weight:normal; background:#edf3f7; line-height:1.4; }
.pilot-comparison thead th:first-child,.pilot-comparison tbody th { position:sticky; left:0; z-index:2; min-width:93px; width:93px; background:#edf3f7; border-bottom:1px solid #cad8e2; }
.pilot-comparison tbody:nth-child(odd) td { background-color:#f7fafc; }
.pilot-comparison small { display:block; font-size:9px; color:#4e6675; }
.pilot-point { height:77px; }
.pilot-point strong { display:block; font-size:15px; font-weight:600; color:#075b8b; }
.pilot-point img { display:block; width:28px; height:28px; margin:0 auto; }
.pilot-rain { height:33px; border-bottom:1px solid #cad8e2; color:#4c6474; }
.pilot-comparison td.pilot-rain-wet { background:#d8effa; color:#12618d; box-shadow:inset 0 -3px #6ab8df; }
.pilot-open-source { padding:5px 0; border:0; background:none; font-size:11px; font-weight:600; color:#17405c; cursor:pointer; }
.pilot-open-source small { margin-top:5px; font-weight:normal; }
.pilot-help { font-size:11px; color:#506775; line-height:1.5; margin:8px 0 0; }
.pilot-story { font-size:13px; }
.pilot-story p { margin:4px 0 6px; }
.pilot-story>small { color:#5c6c77; font-size:10px; }
.pilot-agreement { margin:6px 0; }
.pilot-agreement span { display:block; font-size:11px; line-height:1.8; }
.pilot-dot { display:inline-block; width:7px; height:7px; border-radius:50%; background:#8798a5; }
.pilot-dot.high { background:#439764; }.pilot-dot.medium { background:#cb902d; }.pilot-dot.low { background:#c66157; }
.pilot-details { width:100%; border-collapse:collapse; font-size:13px; }
.pilot-details th,.pilot-details td { padding:8px 4px; text-align:center; border-bottom:1px solid #e0e7eb; vertical-align:middle; }
.pilot-details thead { background:#edf3f7; font-size:11px; }
.pilot-details .pilot-detail-date th { text-align:left; font-size:15px; background:#dce9f1; }
.pilot-details img { width:28px; height:28px; display:block; margin:auto; }
.pilot-details small { display:block; font-size:10px; color:#506775; }
.pilot-source-description,.pilot-data-info { font-size:12px; margin:10px 0; }
.pilot-data-info summary { cursor:pointer; }.pilot-data-info p { margin:8px 0; }
body .rd-top-nav { border:0; background:none; color:#155982; font-size:12px; padding:8px 0; }
@media(max-width:480px) {
 body .pilot-day .forecast-topfive-temp { font-size:10px; }
 body .pilot-day .forecast-topfive-small { font-size:10px; }
 .pilot-source-tabs button { font-size:10px; }
 .pilot-details { font-size:11px; }
 .pilot-details td,.pilot-details th { padding:7px 2px; }
 .pilot-details small { font-size:9px; }
}
.pilot-refresh-status { margin:0 10px 8px; font-size:11px; line-height:1.5; color:#466372; }
