.weather-page{color: var(--foam);min-height: 80vh;padding: 2rem 0 4rem;}.weather-container{max-width: 1120px;}.weather-header{max-width: 76ch;margin-bottom: 2rem;}.weather-header h1{color: var(--shimmer);font-size: 2.5rem;line-height: 1.18;margin: 0 0 1rem;text-wrap: balance;}.weather-page p{max-width: 75ch;line-height: 1.65;}.weather-page h2{font-size: 1.6rem;margin: 0 0 .75rem;line-height: 1.3;}.weather-page h3{font-size: 1.2rem;margin: 1.75rem 0 .5rem;}.weather-outlook-head{display: flex;align-items: flex-start;justify-content: space-between;flex-wrap: wrap;gap: 1rem 1.5rem;}.weather-outlook-head h2{margin-bottom: 0;}.weather-units{border: 0;padding: 0;margin: 0;min-width: 0;}.weather-units legend{font: inherit;font-size: .95rem;font-weight: 600;padding: 0;margin-bottom: .4rem;}.weather-unit-options{display: flex;gap: .4rem;}.weather-page .weather-unit-options label{display: block;position: relative;margin: 0;cursor: pointer;}.weather-unit-options label>span{display: grid;place-items: center;min-width: 56px;min-height: 44px;padding: .55rem .75rem;border: 1px solid rgba(var(--foam-rgb),.3);border-radius: 10px;background: var(--glass-bg);color: var(--foam);font-size: 1rem;}.weather-unit-options input:checked + span{color: var(--deep-water);background: var(--shimmer);border-color: var(--shimmer);}.weather-unit-options input:focus-visible + span{outline: 3px solid var(--shimmer);outline-offset: 4px;}.weather-unit-options label:hover>span{border-color: var(--shimmer);}.weather-page a:not(.btn){color: var(--shimmer);text-underline-offset: .2em;}.weather-location-form{margin-top: 1.5rem;}.weather-page .weather-location-hint{margin: 0 0 .75rem;}.weather-page label{display: block;font-weight: 600;margin-bottom: .5rem;}.weather-location-controls{position: relative;display: flex;flex-wrap: wrap;gap: .75rem;}.weather-page select{appearance: none;-webkit-appearance: none;font: inherit;color: var(--foam);background: var(--mid-water);border: 1px solid rgba(var(--foam-rgb),.4);border-radius: 10px;min-height: 48px;padding: .6rem 3.25rem .6rem .8rem;max-width: 100%;cursor: pointer;}.weather-location-controls select{flex: 1 1 240px;}.weather-location-chevron{position: absolute;inset-inline-end: 1rem;top: 50%;transform: translateY(-50%);width: 20px;height: 20px;color: var(--foam);pointer-events: none;}.weather-status,.weather-source{color: rgba(var(--foam-rgb),.82);font-size: .95rem;}.weather-observation,.weather-outlook,.weather-fishing,.weather-method,.weather-locations{padding: 2rem 0;border-top: 1px solid rgba(var(--foam-rgb),.22);}.weather-fishing>.btn{margin-top: 1.5rem;}.weather-values{display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 0 2rem;margin: 1.5rem 0 0;font-variant-numeric: tabular-nums;}.weather-values>div{padding: 1rem 0;border-bottom: 1px solid rgba(var(--foam-rgb),.16);min-width: 0;}.weather-values dt{font-size: .95rem;line-height: 1.5;color: rgba(var(--foam-rgb),.82);}.weather-values dd{font-size: 1.25rem;font-weight: 650;line-height: 1.4;margin: .4rem 0 0;overflow-wrap: anywhere;}.weather-note,.weather-error{background: var(--glass-bg);border: 1px solid var(--glass-border);border-radius: 12px;padding: 1rem 1.2rem;}.weather-hours{display: flex;gap: .5rem;overflow-x: auto;overscroll-behavior-inline: contain;padding: 1rem .2rem;scrollbar-color: var(--shimmer) var(--mid-water);scrollbar-width: thin;}.weather-hour{flex: 0 0 105px;min-height: 158px;font: inherit;font-size: .85rem;color: var(--foam);background: var(--glass-bg);border: 1px solid rgba(var(--foam-rgb),.3);border-radius: 12px;cursor: pointer;display: flex;flex-direction: column;justify-content: center;align-items: center;gap: .45rem;padding: .65rem .4rem;font-variant-numeric: tabular-nums;}.weather-hour strong{font-size: 1.2rem;}.weather-days{display: grid;grid-template-columns: repeat(5,minmax(0,1fr));gap: .75rem;margin: 1rem 0;}.weather-day{display: flex;flex-direction: column;align-items: center;justify-content: space-between;gap: .7rem;min-height: 190px;padding: 1rem .65rem;font: inherit;text-align: center;color: var(--foam);background: var(--glass-bg);border: 1px solid rgba(var(--foam-rgb),.3);border-radius: 12px;cursor: pointer;}.weather-day-date{font-weight: 700;line-height: 1.4;text-transform: capitalize;}.weather-day strong{font-size: 1.2rem;line-height: 1.4;}.weather-day-symbol{display: block;width: 48px;height: 48px;}.weather-day-condition{font-size: 1rem;line-height: 1.5;}.weather-day:hover{background: var(--mid-water);}.weather-day[aria-pressed="true"]{color: var(--deep-water);background: var(--shimmer);border-color: var(--shimmer);}.weather-day[aria-pressed="true"] .weather-icon>*{stroke: var(--deep-water);}.weather-day[aria-pressed="true"] .weather-icon-cloud,.weather-day[aria-pressed="true"] .weather-icon-moon{fill: var(--shimmer);}.weather-day[aria-pressed="true"] .weather-icon-drizzle,.weather-day[aria-pressed="true"] .weather-icon-lightning,.weather-day[aria-pressed="true"] .weather-icon-hail{fill: var(--deep-water);}.weather-icon{display: block;width: 100%;height: 100%;stroke-width: 2.5;stroke-linecap: round;stroke-linejoin: round;flex-shrink: 0;}.weather-icon-cloud{fill: var(--mid-water);stroke: var(--foam);}.weather-icon-sun{fill: color-mix(in srgb,var(--golden-scale) 20%,transparent);stroke: var(--golden-scale);}.weather-icon-sun-ray,.weather-icon-lightning{stroke: var(--golden-scale);}.weather-icon-lightning{fill: var(--golden-scale);stroke-width: 1.4;}.weather-icon-moon{fill: rgba(var(--foam-rgb),.14);stroke: var(--foam);}.weather-icon-star,.weather-icon-snow,.weather-icon-fog,.weather-icon-horizon,.weather-icon-clear{stroke: var(--foam);}.weather-icon-rain{stroke: var(--shimmer);stroke-width: 3;}.weather-icon-drizzle{fill: var(--shimmer);}.weather-icon-hail{fill: var(--foam);stroke: var(--foam);}.weather-observation-head,.weather-selected-heading{display: flex;align-items: center;gap: 1.25rem;}.weather-observation-head>div,.weather-selected-heading>div{min-width: 0;}.weather-observation-head p{margin: .35rem 0 0;}.weather-condition-symbol{display: block;flex: 0 0 80px;width: 80px;height: 80px;}.weather-selected-heading{margin-top: 1.75rem;}.weather-selected-heading h3,.weather-selected-heading p{margin: 0;}.weather-selected-heading .weather-condition-symbol{flex-basis: 60px;width: 60px;height: 60px;}.weather-hour-symbol{display: block;width: 42px;height: 42px;}.weather-hour[aria-pressed="true"] .weather-icon>*{stroke: var(--deep-water);}.weather-hour[aria-pressed="true"] .weather-icon-cloud,.weather-hour[aria-pressed="true"] .weather-icon-moon{fill: var(--shimmer);}.weather-hour[aria-pressed="true"] .weather-icon-rain{stroke: var(--deep-water);}.weather-hour[aria-pressed="true"] .weather-icon-drizzle{fill: var(--deep-water);}.weather-hour[aria-pressed="true"] .weather-icon-lightning,.weather-hour[aria-pressed="true"] .weather-icon-hail{fill: var(--deep-water);}.weather-hour[aria-pressed="true"] .weather-icon-clear{stroke: var(--deep-water);}#weather-daylight{display: flex;flex-wrap: wrap;gap: .5rem 1.5rem;margin-top: 1rem;}.weather-daylight-item{display: inline-flex;align-items: center;gap: .5rem;}.weather-daylight-item .weather-icon{width: 32px;height: 32px;}.weather-preview h2{display: flex;align-items: center;gap: .7rem;}#weather-preview-icon{width: 44px;height: 44px;flex: 0 0 44px;}.weather-preview [hidden]{display: none !important;}.weather-hour:hover{background: var(--mid-water);}.weather-hour[aria-pressed="true"]{background: var(--shimmer);border-color: var(--shimmer);color: var(--deep-water);}.weather-page :focus-visible,.weather-preview :focus-visible{outline: 3px solid var(--shimmer);outline-offset: 4px;}.weather-page ::selection{background: var(--shimmer);color: var(--deep-water);}.weather-locations ul{list-style: none;padding: 0;display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: .25rem 1.5rem;}.weather-locations li{padding: .5rem 0;}.weather-preview{display: flex;align-items: center;justify-content: space-between;gap: 1.5rem;color: var(--foam);background: var(--glass-bg);border: 1px solid var(--glass-border);border-radius: 12px;padding: 1.5rem;margin: 1.5rem 0;}.weather-preview h2{font: inherit;font-size: 1.35rem;font-weight: 650;margin: 0 0 .6rem;}.weather-preview p{max-width: 72ch;margin: 0;line-height: 1.65;}.weather-preview a:not(.btn){color: var(--shimmer);text-underline-offset: .2em;}.weather-preview .btn{flex-shrink: 0;}.weather-page [hidden]{display: none !important;}@media (max-width: 700px){.weather-page{padding-top: 1.5rem;}.weather-header h1{font-size: 1.9rem;}.weather-page h2{font-size: 1.35rem;}.weather-observation-head{align-items: flex-start;gap: .85rem;}.weather-observation-head .weather-condition-symbol{flex-basis: 60px;width: 60px;height: 60px;}.weather-values{grid-template-columns: repeat(2,minmax(0,1fr));gap: 0 1rem;}.weather-preview{display: block;padding: 1.2rem;}.weather-preview .btn{margin-top: 1rem;}.weather-locations ul{grid-template-columns: repeat(2,minmax(0,1fr));}.weather-days{grid-template-columns: minmax(0,1fr);}.weather-day{display: grid;grid-template-columns: 48px minmax(0,1fr);align-items: center;min-height: 110px;padding: .75rem 1rem;gap: .2rem 1rem;text-align: left;}.weather-day-symbol{grid-column: 1;grid-row: 1 / 4;}.weather-day-date{grid-column: 2;grid-row: 1;}.weather-day strong{grid-column: 2;grid-row: 2;}.weather-day-condition{grid-column: 2;grid-row: 3;}}@media (min-width: 701px) and (max-width: 1000px){.weather-days{grid-template-columns: repeat(3,minmax(0,1fr));}}@media (max-width: 380px){.weather-observation-head{display: block;}.weather-observation-head .weather-condition-symbol{margin-bottom: .75rem;}.weather-values,.weather-locations ul{grid-template-columns: minmax(0,1fr);}.weather-location-controls .btn{width: 100%;}}@media (forced-colors: active){.weather-location-chevron{color: CanvasText;}}@media print{.weather-page{background: white;color: black;}.weather-location-form,.weather-units,.weather-days,.weather-hours,.weather-page label,.weather-preview{display: none;}.weather-page dt,.weather-page .weather-source{color: black;}.weather-values>div{break-inside: avoid;}}