.local-forecast{border:1px solid var(--line);border-radius:18px;padding:14px 18px;background:color-mix(in srgb,var(--surface) 86%,transparent);min-width:0}
.lf-head{display:flex;align-items:center;justify-content:space-between;gap:8px 16px}
.lf-head h2{font-family:var(--body);font-size:.82rem;font-weight:800;margin:0}
.lf-city{font-size:.76rem;color:var(--ink-3);margin:3px 0 0;overflow-wrap:anywhere}
.lf-controls{display:flex;align-items:center;flex-shrink:0;gap:2px}
.local-forecast .btn{min-height:36px;padding:8px;font-size:.75rem}
.lf-forecast{display:flex;align-items:center;gap:18px;margin-top:12px}
.lf-now{display:flex;align-items:center;gap:12px;min-width:0;flex:1}
.lf-icon{font-size:2.25rem;line-height:1.2}
.lf-temperature{display:block;font-family:var(--display);font-size:1.85rem;font-weight:500;line-height:1.1}
.lf-condition{display:block;font-size:.79rem;margin-top:3px}.lf-now small{display:block;color:var(--ink-3);font-size:.67rem;margin-top:4px;line-height:1.4}
.lf-days{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0;flex:1.2;min-width:0}
.lf-days li{display:grid;justify-items:center;align-content:center;gap:4px;text-align:center;min-width:0}
.lf-day{font-size:.68rem;color:var(--ink-3);white-space:nowrap}.lf-day-icon{font-size:1.3rem}
.lf-range{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;font-size:.76rem}.lf-range>span{color:var(--ink-3)}
.lf-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px;font-size:.62rem;color:var(--ink-3)}
.lf-footer a{text-decoration:underline}.lf-status{font-size:.75rem;color:var(--ink-2);margin:8px 0}.lf-note{font-size:.6rem;color:var(--ink-3);margin:0;line-height:1.4}
.lf-city-results{display:grid;gap:8px}.lf-city-results .btn{white-space:normal;justify-content:flex-start;text-align:left;min-height:44px}
.lf-location-control{display:grid;gap:8px}.lf-location-control .btn,.lf-location-prompt>.btn{min-height:44px;white-space:normal}
.lf-location-status{margin:0;line-height:1.5}.lf-location-status:empty{display:none}.lf-location-prompt p{margin:0;line-height:1.6}
@container(max-width:560px){.local-forecast{padding:12px 14px}.lf-forecast{gap:12px;align-items:start;flex-wrap:wrap}.lf-now{flex-basis:100%}.lf-days{flex-basis:100%;gap:10px;padding-top:9px;border-top:1px solid var(--line)}.lf-icon{font-size:2rem}.lf-head{gap:8px}.lf-controls .btn{padding:8px 6px;min-height:44px}.lf-footer{flex-wrap:wrap}}

/* Weather belongs beside the trail's day labels, not in a second Home card. */
.step-day-line{display:inline-flex;align-items:center;gap:4px;min-width:0}
.trail-day-weather{display:inline-flex;align-items:center;line-height:1}
.trail-day-weather[hidden]{display:none}
.trail-weather-icon{font-size:1rem;line-height:1.15;cursor:help}
.trail-forecast{display:grid;gap:1px;margin-top:-8px;min-width:0}
.trail-forecast-control{appearance:none;border:0;background:none;color:var(--fern);font:inherit;font-size:.74rem;text-align:left;padding:7px 0;min-height:36px;cursor:pointer;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}
.trail-forecast-control:hover{color:var(--ink)}
.trail-forecast-control:focus-visible{outline:2px solid var(--fern);outline-offset:2px;border-radius:4px}
.trail-forecast-status{font-size:.65rem;line-height:1.35;color:var(--ink-3)}
.trail-forecast-credit{font-size:.6rem;line-height:1.4;color:var(--ink-3)}
.trail-forecast-credit a{text-decoration:underline;text-underline-offset:2px}
.modal .local-forecast{container-type:inline-size;background:none;border:0;padding:0}
.modal .lf-forecast{display:grid;grid-template-columns:minmax(0,1fr)}
.modal .lf-days{grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:14px 10px;padding-top:16px;border-top:1px solid var(--line)}
.modal .lf-days li{min-height:80px}
@container(max-width:820px){.trail-forecast{margin-top:-8px}.trail-forecast-control{min-height:44px;padding:8px 0}.winding-trail .step-day-line{gap:2px}.winding-trail .step-day{font-size:.68rem}.winding-trail .trail-weather-icon{font-size:.9rem}}
