#his-weather-app{--paper: #FFF3C4; --ink: #1F322C; --lime: #DAF176; --coral: #E45E42; --line: rgba(31,50,44,.32); font-family: Arial, Helvetica, sans-serif; color: var(--ink); background: var(--paper); font-synthesis: none;}
#his-weather-app *{box-sizing: border-box;}
#his-weather-app{margin: 0px;}
#his-weather-app button,#his-weather-app input,#his-weather-app select{font: inherit; color: inherit;}
#his-weather-app button,#his-weather-app a,#his-weather-app input,#his-weather-app select,#his-weather-app summary{}
#his-weather-app button{cursor: pointer;}
#his-weather-app button:disabled{cursor: wait;}
#his-weather-app a{color: inherit; text-underline-offset: 4px;}
#his-weather-app button:focus-visible,#his-weather-app a:focus-visible,#his-weather-app input:focus-visible,#his-weather-app select:focus-visible,#his-weather-app summary:focus-visible{outline: 3px solid var(--ink); outline-offset: 4px;}
#his-weather-app button,#his-weather-app input,#his-weather-app select{border-radius: 0px;}
#his-weather-app button{min-height: 44px;}
#his-weather-app svg{display: block;}
#his-weather-app svg *{vector-effect: non-scaling-stroke;}
#his-weather-app [hidden]{display: none !important;}
#his-weather-app .sr-only{position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;}
#his-weather-app .skip{position: absolute; top: -80px; left: 16px; background: var(--ink); color: var(--paper); padding: 14px; z-index: 20;}
#his-weather-app .skip:focus{top: 8px;}

#his-weather-app .masthead{display: flex; justify-content: space-between; align-items: center; gap: 24px; min-height: 100px; border-bottom: 1px solid var(--ink);}
#his-weather-app .brand{display: flex; align-items: center; gap: 18px;}
#his-weather-app .monogram{font-size: 42px; font-weight: 900; letter-spacing: -5px; padding-right: 7px; line-height: 1;}
#his-weather-app .brand-name{font-size: 12px; font-weight: 800; letter-spacing: 0.06em; line-height: 1.35;}
#his-weather-app .prototype-label{font-size: 11px; font-weight: 800; letter-spacing: 0.08em; border: 1px solid var(--ink); padding: 10px 12px; white-space: nowrap;}
#his-weather-app .prototype-label:before{content: ""; display: inline-block; width: 7px; height: 7px; margin-right: 8px; background: var(--coral);}
#his-weather-app .eyebrow{font-size: 11px; line-height: 1.5; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase;}
#his-weather-app .weather-hero{display: grid; grid-template-columns: 1.4fr 1fr; gap: 56px; padding: 52px 0px 48px; align-items: end;}
#his-weather-app .weather-hero h1{font-size: clamp(56px, 6.4vw, 88px); font-weight: 800; letter-spacing: -0.065em; line-height: 0.97; margin: 18px 0px 0px;}
#his-weather-app .coral{color: var(--coral);}
#his-weather-app .hero-copy{font-size: 18px; line-height: 1.5; margin: 0px; max-width: 330px;}
#his-weather-app .hero-right{position: relative; padding-top: 22px;}
#his-weather-app .compass{width: 70px; height: 70px; margin: 0px 0px 22px auto;}
#his-weather-app .form-label{display: block; font-size: 12px; font-weight: 800; margin-bottom: 12px;}
#his-weather-app .search-line{display: flex; border: 2px solid var(--ink); min-width: 0px;}
#his-weather-app .search-line input{flex: 1 1 0%; width: 0px; min-width: 0px; background: transparent; border: 0px; padding: 20px 22px; font-size: 21px; min-height: 74px; outline-offset: -5px;}
#his-weather-app .lookup{display: flex; align-items: center; justify-content: center; gap: 18px; flex: 0 0 auto; background: var(--lime); border-top: 0px; border-right: 0px; border-bottom: 0px; border-left: 2px solid var(--ink); border-image: none; padding: 0px 22px; font-size: 13px; font-weight: 800;}
#his-weather-app .lookup svg{width: 24px; height: 24px;}
#his-weather-app .search-help{font-size: 12px; line-height: 1.55; margin: 12px 0px; color: var(--ink);}
#his-weather-app .input-error{font-size: 14px; font-weight: 700; margin: 12px 0px;}
#his-weather-app .input-error:before{content: "!"; display: inline-grid; place-items: center; width: 20px; height: 20px; margin-right: 8px; border: 1px solid;}
#his-weather-app .samples{display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: 14px 0px 32px; font-size: 12px;}
#his-weather-app .samples span{font-size: 10px; font-weight: 800; letter-spacing: 0.08em;}
#his-weather-app .samples button{border: 0px; background: none; padding: 4px 0px; text-decoration: underline; text-underline-offset: 4px; min-height: 32px; font-size: 12px;}
#his-weather-app .status-line{font-size: 12px; min-height: 23px; line-height: 1.5; margin: 0px 0px 16px;}
#his-weather-app .loading-mark{display: inline-block; width: 11px; height: 11px; margin-right: 9px; background: var(--ink); animation: his-weather-pulse 1s infinite alternate;}
@keyframes his-weather-pulse { 100% { opacity: 0.22; } }
#his-weather-app .state-box{padding: 28px; border: 1px solid var(--ink); margin: 0px 0px 32px; max-width: 100%;}
#his-weather-app .state-box h2{font-size: 25px; letter-spacing: -0.035em; margin: 0px 0px 12px;}
#his-weather-app .state-box p{max-width: 650px; line-height: 1.5; font-size: 15px;}
#his-weather-app .secondary{border: 1px solid var(--ink); padding: 11px 18px; background: transparent; font-size: 13px; font-weight: 700;}
#his-weather-app .choices{display: grid; gap: 10px; margin-top: 20px;}
#his-weather-app .choices button{background: transparent; border: 1px solid var(--ink); padding: 16px; text-align: left; min-height: 58px;}
#his-weather-app .choices button:hover,#his-weather-app .secondary:hover{background: var(--lime);}
#his-weather-app .weather{border-top: 2px solid var(--ink);}
#his-weather-app .weather-heading{display: flex; justify-content: space-between; align-items: start; gap: 24px; padding: 28px 0px 18px;}
#his-weather-app .place-title{font-size: clamp(34px, 4.6vw, 59px); font-weight: 800; letter-spacing: -0.055em; line-height: 1.02; margin: 10px 0px; overflow-wrap: anywhere;}
#his-weather-app .place-region{font-size: 13px; line-height: 1.45; margin: 0px;}
#his-weather-app .units{display: flex; border: 1px solid var(--ink); flex-shrink: 0; margin-top: 3px;}
#his-weather-app .units button{border: 0px; background: transparent; min-width: 50px; min-height: 44px; padding: 9px; font-size: 16px; font-weight: 800;}
#his-weather-app .units button+button{border-left: 1px solid var(--ink);}
#his-weather-app .units button[aria-pressed=true]{background: var(--ink); color: var(--paper);}
#his-weather-app .current-grid{display: grid; grid-template-columns: 1fr 1fr; gap: 60px; padding: 0px 0px 36px; align-items: end;}
#his-weather-app .temperature-block{display: flex; align-items: center; gap: 32px;}
#his-weather-app .big-temp{font-size: clamp(100px, 12vw, 164px); line-height: 0.95; font-weight: 700; letter-spacing: -0.085em; white-space: nowrap;}
#his-weather-app .temp-unit{font-size: 0.28em; letter-spacing: -0.02em; vertical-align: top; display: inline-block; padding-top: 16px; padding-left: 9px;}
#his-weather-app .current-icon{width: 100px; height: 100px; flex: 0 0 100px;}
#his-weather-app .condition{font-size: 21px; letter-spacing: -0.02em; font-weight: 700; margin: 12px 0px 0px;}
#his-weather-app .observation{font-size: 11px; line-height: 1.5; margin: 12px 0px 0px;}
#his-weather-app .metrics{display: grid; grid-template-columns: repeat(3,1fr); border-top: 1px solid var(--line); padding-top: 20px; gap: 20px;}
#his-weather-app .metric dt{font-size: 11px; line-height: 1.4; min-height: 30px;}
#his-weather-app .metric dd{font-size: 25px; letter-spacing: -0.04em; margin: 7px 0px 0px; white-space: nowrap;}
#his-weather-app .metric dd span{font-size: 12px; letter-spacing: 0px;}
#his-weather-app .forecast-heading{display: flex; justify-content: space-between; gap: 16px; border-top: 1px solid var(--ink); padding-top: 24px; align-items: baseline;}
#his-weather-app .forecast-heading h3{font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; margin: 0px;}
#his-weather-app .forecast-heading p{font-size: 11px; margin: 0px;}
#his-weather-app .forecast-grid{display: grid; grid-template-columns: repeat(3,1fr); margin: 18px 0px 28px; border: 1px solid var(--ink);}
#his-weather-app .day{padding: 24px 26px; min-width: 0px;}
#his-weather-app .day+.day{border-left: 1px solid var(--ink);}
#his-weather-app .day-top{display: flex; justify-content: space-between; align-items: center; gap: 8px;}
#his-weather-app .day h4{font-size: 16px; margin: 0px; letter-spacing: -0.02em;}
#his-weather-app .day time{display: block; font-size: 11px; line-height: 1.5; margin-top: 5px;}
#his-weather-app .day-icon{width: 46px; height: 46px; flex-shrink: 0;}
#his-weather-app .day-temps{font-size: 35px; font-weight: 700; letter-spacing: -0.055em; margin: 22px 0px 10px; white-space: nowrap;}
#his-weather-app .day-temps .low{opacity: 0.75; font-weight: 400; margin-left: 14px;}
#his-weather-app .day-summary{font-size: 12px; line-height: 1.5; min-height: 18px; margin: 0px;}
#his-weather-app .rain{font-size: 11px; margin: 12px 0px 0px;}
#his-weather-app .rain strong{font-weight: 700;}
#his-weather-app .saved-notice{padding: 14px 16px; border-left: 4px solid var(--ink); background: rgba(218, 241, 118, 0.5); font-size: 13px; line-height: 1.5; margin: 0px 0px 20px;}
#his-weather-app .provider{display: flex; justify-content: space-between; gap: 32px; border-top: 1px solid var(--line); padding: 22px 0px 34px; font-size: 11px; line-height: 1.65;}
#his-weather-app .provider p{margin: 0px; max-width: 530px;}
#his-weather-app .provider p:last-child{max-width: 300px;}
#his-weather-app .review{border-top: 1px solid var(--ink); padding: 24px 0px 40px; font-size: 12px;}
#his-weather-app .review summary{font-weight: 700; cursor: pointer; min-height: 44px; display: flex; align-items: center; gap: 10px;}
#his-weather-app .review summary:before{content: "+"; font-size: 20px;}
#his-weather-app .review[open] summary:before{content: "−";}
#his-weather-app .review-grid{display: flex; align-items: end; flex-wrap: wrap; gap: 20px; margin-top: 16px;}
#his-weather-app .review label{font-size: 12px; line-height: 1.6;}
#his-weather-app .review select{display: block; min-height: 44px; margin-top: 6px; max-width: 100%; background: var(--paper); border: 1px solid var(--ink); padding: 8px 12px;}
#his-weather-app .review-note{max-width: 670px; line-height: 1.6; opacity: 0.85; margin: 18px 0px 0px;}
#his-weather-app .bottom-mark{font-size: 10px; letter-spacing: 0.12em; font-weight: 800; text-transform: uppercase; margin: 0px 0px 25px;}
#his-weather-app .mobile-dialog{border: 2px solid var(--ink); padding: 12px; background: var(--paper); max-width: calc(100vw - 16px); width: 350px; max-height: 94vh;}
#his-weather-app .mobile-dialog::backdrop{background: rgba(31, 50, 44, 0.72);}
#his-weather-app .mobile-dialog header{display: flex; gap: 8px; justify-content: space-between; align-items: center; font-size: 11px; line-height: 1.3; font-weight: 700; margin-bottom: 8px;}
#his-weather-app .mobile-dialog header button{background: none; border: 1px solid var(--ink); padding: 6px 10px; font-size: 11px; min-height: 34px;}
#his-weather-app .mobile-dialog iframe{box-sizing: content-box; display: block; border: 1px solid var(--line); width: 320px; height: 76vh; max-height: 760px; background: var(--paper);}
#his-weather-app .big-temp.long-number{font-size: clamp(78px, 10vw, 140px);}
@media (max-width:600px){#his-weather-app .big-temp.long-number{font-size: 82px;}
#his-weather-app .temperature-block{flex-wrap: wrap;}}
#his-weather-app .search-line input::placeholder{color: var(--ink); opacity: 0.8;}
@media (min-width:900px){#his-weather-app .weather-hero{grid-template-columns: minmax(0,1fr) 240px; gap: 40px;}
#his-weather-app .weather-hero h1{white-space: nowrap;}}
@media (max-width:800px){
#his-weather-app .weather-hero{gap: 28px;}
#his-weather-app .weather-hero h1{font-size: 67px;}
#his-weather-app .hero-copy{font-size: 16px;}
#his-weather-app .compass{width: 54px; height: 54px;}
#his-weather-app .current-grid{gap: 30px;}
#his-weather-app .temperature-block{gap: 18px;}
#his-weather-app .current-icon{width: 75px; height: 75px; flex-basis: 75px;}
#his-weather-app .metrics{gap: 12px;}
#his-weather-app .metric dd{font-size: 22px;}
#his-weather-app .day{padding: 22px 18px;}}
@media (max-width:600px){
#his-weather-app .masthead{min-height: 96px; gap: 16px; flex-wrap: wrap; padding: 20px 0px;}
#his-weather-app .brand{gap: 12px;}
#his-weather-app .monogram{font-size: 34px;}
#his-weather-app .brand-name{font-size: 10px;}
#his-weather-app .prototype-label{font-size: 9px; padding: 7px 8px;}
#his-weather-app .weather-hero{display: block; padding: 34px 0px 26px;}
#his-weather-app .weather-hero h1{font-size: 58px; max-width: 100%; margin-top: 14px;}
#his-weather-app .hero-right{padding-top: 20px;}
#his-weather-app .hero-copy{font-size: 15px; line-height: 1.5; max-width: 330px;}
#his-weather-app .compass{display: none;}
#his-weather-app .eyebrow{font-size: 10px;}
#his-weather-app .search-line input{padding: 16px 12px; font-size: 16px; min-height: 60px;}
#his-weather-app .lookup{padding: 0px; flex-basis: 56px;}
#his-weather-app .lookup .lookup-text{display: none;}
#his-weather-app .lookup svg{width: 23px; height: 23px;}
#his-weather-app .search-help{font-size: 11px;}
#his-weather-app .samples{gap: 0 16px; margin-bottom: 22px;}
#his-weather-app .samples span{width: 100%; margin-bottom: 4px;}
#his-weather-app .samples button{min-height: 44px;}
#his-weather-app .status-line{font-size: 11px;}
#his-weather-app .weather-heading{display: block; padding-top: 24px;}
#his-weather-app .place-title{font-size: 39px; line-height: 1.05;}
#his-weather-app .place-region{font-size: 12px;}
#his-weather-app .units{width: max-content; margin-top: 18px;}
#his-weather-app .current-grid{display: block; padding-bottom: 26px;}
#his-weather-app .big-temp{font-size: 116px;}
#his-weather-app .current-icon{width: 76px; height: 76px; flex-basis: 76px;}
#his-weather-app .temperature-block{gap: 22px; margin-top: 4px;}
#his-weather-app .temp-unit{padding-left: 6px; padding-top: 10px;}
#his-weather-app .condition{font-size: 19px;}
#his-weather-app .metrics{gap: 12px; margin-top: 26px; padding-top: 18px;}
#his-weather-app .metric dt{font-size: 10px; min-height: 28px;}
#his-weather-app .metric dd{font-size: 22px;}
#his-weather-app .metric dd span{display: block; margin-top: 4px; font-size: 10px;}
#his-weather-app .forecast-heading{display: block; padding-top: 22px;}
#his-weather-app .forecast-heading p{margin-top: 8px;}
#his-weather-app .forecast-grid{display: block; margin-top: 16px;}
#his-weather-app .day{padding: 20px;}
#his-weather-app .day+.day{border-left: 0px; border-top: 1px solid var(--ink);}
#his-weather-app .day-temps{font-size: 33px; margin-top: 10px;}
#his-weather-app .day-summary{min-height: 0px;}
#his-weather-app .rain{margin-top: 8px;}
#his-weather-app .provider{display: block; padding-bottom: 26px;}
#his-weather-app .provider p:last-child{margin-top: 15px;}
#his-weather-app .state-box{padding: 22px 18px;}
#his-weather-app .state-box h2{font-size: 23px;}
#his-weather-app .state-box p{font-size: 14px;}
#his-weather-app .review-grid{display: block;}
#his-weather-app .review-grid button{margin-top: 18px;}
#his-weather-app .review select{width: 100%;}
#his-weather-app .review-note{font-size: 11px;}
#his-weather-app .bottom-mark{font-size: 9px;}}
@media (max-width:350px){#his-weather-app .weather-hero h1{font-size: 54px;}
#his-weather-app .masthead{align-items: start;}
#his-weather-app .brand{width: 100%;}
#his-weather-app .prototype-label{padding: 5px 8px;}
#his-weather-app .place-title{font-size: 35px;}
#his-weather-app .big-temp{font-size: 108px;}
#his-weather-app .temperature-block{gap: 18px;}
#his-weather-app .current-icon{width: 65px; height: 65px; flex-basis: 65px;}
#his-weather-app .metric dd{font-size: 20px;}
#his-weather-app .day{padding: 18px;}}
@media (max-width:400px){#his-weather-app #mobile-open{display: none;}}
@media (prefers-reduced-motion:reduce){#his-weather-app *,#his-weather-app *:before,#his-weather-app *:after{animation: none !important; scroll-behavior: auto !important;}}
@media (forced-colors:active){#his-weather-app button,#his-weather-app input,#his-weather-app select,#his-weather-app .units,#his-weather-app .state-box,#his-weather-app .forecast-grid{border: 1px solid buttontext;}
#his-weather-app .units button[aria-pressed=true]{outline: 2px solid ButtonText;}
#his-weather-app .prototype-label:before{border: 1px solid canvastext;}}
/* Public-page rules only. Site chrome retains the theme's own styles and shell. */
#his-weather-app{background:#FFF3C4;color:#1F322C;margin:0;padding-bottom:32px;min-width:0}
#his-weather-app .shell{max-width:1640px;margin:auto;padding:0 clamp(20px,4.8vw,86px)}
#his-weather-app .weather-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(230px,1fr);gap:clamp(28px,3vw,48px);align-items:start}
#his-weather-app .weather-primary,#his-weather-app .weather-sidebar{min-width:0}
#his-weather-app .weather-sidebar{border-left:1px solid var(--line);padding-left:28px}
#his-weather-app .weather-hero{grid-template-columns:minmax(0,1fr) 260px;gap:36px;padding:48px 0 44px}
#his-weather-app .weather-hero h1{font-size:clamp(56px,6.1vw,92px)}
#his-weather-app .current-grid{grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:24px}
#his-weather-app .big-temp{font-size:clamp(100px,10vw,152px)}
#his-weather-app .big-temp.long-number{font-size:clamp(90px,8.2vw,126px)}
#his-weather-app .temperature-block{gap:18px}
#his-weather-app .current-icon{width:84px;height:84px;flex-basis:84px}
#his-weather-app .metrics{gap:12px}
#his-weather-app .metric dd{font-size:23px}
#his-weather-app .metric dd span{display:block;font-size:11px;margin-top:4px}
#his-weather-app .day{padding:22px 18px}
#his-weather-app .detail-location{font-size:13px;line-height:1.5;margin:12px 0 20px;overflow-wrap:anywhere}
#his-weather-app .detail-list{margin:0}
#his-weather-app .detail-list>div{display:flex;justify-content:space-between;gap:12px;padding:16px 0;border-top:1px solid var(--line)}
#his-weather-app .detail-list dt{font-size:11px;font-weight:700;letter-spacing:.06em;line-height:1.5}
#his-weather-app .detail-list dd{margin:0;font-size:18px;white-space:nowrap}
#his-weather-app .detail-note{font-size:11px;line-height:1.6;margin:12px 0 28px}
#his-weather-app .weather-explore{border-top:2px solid var(--ink);padding-top:20px}
#his-weather-app .weather-explore ul{list-style:none;margin:8px 0 0;padding:0}
#his-weather-app .weather-explore li{border-bottom:1px solid var(--line);padding:18px 0}
#his-weather-app .weather-explore a{display:inline-block;font-size:16px;font-weight:700;line-height:1.4;padding:3px 0;text-decoration:none}
#his-weather-app .weather-explore a:hover{text-decoration:underline}
#his-weather-app .weather-explore p{font-size:12px;line-height:1.6;margin:8px 0 0}
body.his-weather-integrated .code-block-1,body.his-weather-integrated .code-block-3{box-sizing:border-box;max-width:1468px;min-height:280px;margin:24px auto!important;width:calc(100% - clamp(40px,9.6vw,172px))}
body.his-weather-integrated .code-block-1 ins.adsbygoogle,body.his-weather-integrated .code-block-3 ins.adsbygoogle{min-height:280px;max-width:100%}
@media(max-width:1100px){#his-weather-app .weather-layout{grid-template-columns:minmax(0,1fr)}#his-weather-app .weather-sidebar{border-left:0;padding-left:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}#his-weather-app .weather-sidebar>#weather-details[hidden]+.weather-explore{grid-column:1/-1}#his-weather-app .current-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
@media(max-width:800px){#his-weather-app .weather-hero{grid-template-columns:minmax(0,1fr) 210px;gap:24px}#his-weather-app .weather-hero h1{font-size:66px}#his-weather-app .current-grid{display:block}#his-weather-app .metrics{margin-top:28px}}
@media(max-width:600px){#his-weather-app .shell{padding:0 20px}#his-weather-app .weather-hero{display:block;padding:34px 0 26px}#his-weather-app .weather-hero h1{font-size:58px}#his-weather-app .weather-sidebar{display:block}#his-weather-app .weather-sidebar>#weather-details{margin-bottom:28px}#his-weather-app .weather-layout{gap:20px}#his-weather-app .big-temp{font-size:116px}#his-weather-app .big-temp.long-number{font-size:86px}#his-weather-app .current-icon{width:76px;height:76px;flex-basis:76px}#his-weather-app .day{padding:20px}body.his-weather-integrated .code-block-1,body.his-weather-integrated .code-block-3{width:calc(100% - 40px)}}
@media(max-width:350px){#his-weather-app .weather-hero h1{font-size:54px}#his-weather-app .big-temp{font-size:108px}#his-weather-app .big-temp.long-number{font-size:82px}#his-weather-app .current-icon{width:65px;height:65px;flex-basis:65px}#his-weather-app .metric dd{font-size:20px}}

/* Approved finishing refinement: inherit the production theme cream token. */
#his-weather-app{--paper:var(--bg,#f5f4f0);background:var(--paper)}
#his-weather-app .forecast-grid .day{background:#FFF3C4}
