.weather-defs{position:absolute;overflow:hidden;pointer-events:none}
.rh-weather-summary{min-width:0;text-align:center;margin-top:-13px;align-self:start}.richard-home #rh-weather{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:0 3px 3px;min-height:109px;background:none;border:0;color:#e5f2f5;box-shadow:none;border-radius:12px;cursor:pointer;line-height:1.2}.rh-weather-summary #rh-weather svg{width:74px;height:51px;display:block;margin:-5px auto -3px}.rh-weather-summary #rh-weather strong{font-size:21px;color:#f1f8fc;line-height:1.15}.rh-weather-summary #rh-weather span{font-size:11px;display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rh-weather-summary #rh-weather small{font-size:9px;color:#9ebeca;margin-top:3px}.rh-weather-summary .rh-pv{margin-top:1px;display:flex;flex-wrap:wrap;gap:0 4px;justify-content:center;align-items:center}.rh-weather-summary .rh-pv>span{font-size:15px;line-height:1;color:#ffd975}.rh-weather-summary .rh-pv strong{font-size:11px;line-height:1.3}.rh-weather-summary .rh-pv small{font-size:8px;width:100%;line-height:1.2;margin-top:2px}.richard-home #rh-weather:hover{background:#24485866}.richard-home #rh-weather:focus-visible{outline:2px solid #8fe0cd;outline-offset:3px}

body.richard-home .rh-weather-summary{margin-top:0;align-self:start}
body.richard-home #rh-weather{min-height:116px;text-decoration:none;border-radius:17px;background:radial-gradient(ellipse at 50% 28%,#bddcff10,transparent 69%);line-height:1.25;padding:0 3px 5px;box-sizing:border-box}
body.richard-home .rh-weather-summary #rh-weather>svg{width:84px;height:59px;margin:-1px auto 0;overflow:visible;filter:drop-shadow(0 3px 3px #0003)}
body.richard-home #rh-weather strong{font-weight:650;font-size:23px;letter-spacing:-.35px;text-shadow:0 1px 3px #0003}
body.richard-home #rh-weather #rh-weather-place,body.richard-home #rh-weather #rh-weather-caption{display:flex;align-items:center;justify-content:center;gap:3px;line-height:1.4}
body.richard-home #rh-weather #rh-weather-place .rh-icon,body.richard-home #rh-weather #rh-weather-caption .rh-icon{width:11px;height:11px;margin:0;color:#a3d2d0;display:inline-block}
body.richard-home #rh-weather #rh-weather-caption{font-size:9px;color:#a6d9d1;margin-top:5px}
body.richard-home #rh-weather:hover{background:radial-gradient(ellipse at 50% 30%,#bddcff1b,transparent 78%)}
.rh-weather-summary .rh-pv{background:linear-gradient(145deg,#f6d58512,#edb34805);border:1px solid #d1b36a22;border-radius:9px;padding:3px 4px;margin-top:4px}.rh-weather-summary .rh-pv>span{color:#ffdb7e;text-shadow:0 1px 2px #bb5b0066,0 0 7px #ffe27e24}
@media(max-width:760px){body.richard-home .rh-weather-summary{margin-top:0}body.richard-home #rh-weather{min-height:101px}body.richard-home .rh-weather-summary #rh-weather>svg{width:69px;height:49px;margin:0 auto}body.richard-home #rh-weather strong{font-size:20px}body.richard-home #rh-weather #rh-weather-place{font-size:9px}body.richard-home #rh-weather #rh-weather-caption{font-size:8px}.rh-weather-summary .rh-pv strong{font-size:10px}.rh-weather-summary .rh-pv small{font-size:7px}}
@media(max-width:350px){body.richard-home .rh-weather-summary #rh-weather>svg{width:62px;height:45px}body.richard-home #rh-weather strong{font-size:19px}}

/* Weather detail: one scroll area, compact navigation, no fixed-width mobile cards. */
.wx-dialog{box-sizing:border-box;width:min(1340px,calc(100vw - 32px));max-width:none;height:min(960px,calc(100dvh - 32px));max-height:none;padding:0;border:1px solid #97b8cb55;border-radius:24px;background:linear-gradient(155deg,#275875,#15354c 50%,#102a3c);color:#f5faff;box-shadow:0 30px 90px #0008;overflow:hidden}
.wx-dialog::backdrop{background:#041019bb;backdrop-filter:blur(5px)}
.wx-dialog[open]{display:flex;flex-direction:column}.wx-dialog *{box-sizing:border-box;min-width:0}
.wx-dialog .wx-header{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;background:#15364ce8;border-bottom:1px solid #bad5e322;flex-shrink:0}
.wx-header>div{text-align:right}.wx-header small{font-size:10px;letter-spacing:1.2px;color:#b3d3e4}.wx-header h2{font-size:19px;line-height:1.3;margin:2px 0 0;font-weight:600}.wx-dialog .wx-header>.wb-home-button{order:-1;flex-shrink:0}
.wx-body{padding:16px 20px 20px;overflow:auto;overscroll-behavior:contain;min-height:0;scrollbar-width:thin;scrollbar-color:#92b4c666 transparent}
.wx-dialog a{color:#cef2ff}.wx-dialog button:focus-visible,.wx-dialog a:focus-visible,.wx-dialog summary:focus-visible,.wx-hourly:focus-visible{outline:2px solid #d2f5ff;outline-offset:3px}
#wx-current{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 2px}.wx-city{flex:1}.wx-city small{font-size:10px;letter-spacing:.7px;color:#b6d3e3}.wx-city h3{font-size:clamp(23px,2.4vw,32px);line-height:1.15;font-weight:550;margin:5px 0;overflow-wrap:anywhere;text-wrap:balance}
.wx-now{display:grid;grid-template-columns:72px auto;align-items:center;gap:3px 8px;flex-shrink:0;max-width:55%}.wx-now>.wx-symbol{grid-row:1/3;width:72px;height:57px;filter:drop-shadow(0 3px 3px #0002)}.wx-now>strong{font-size:52px;font-weight:350;line-height:1;letter-spacing:-2px;white-space:nowrap}.wx-now>span{font-size:12px;color:#d3e8f2;max-width:180px;line-height:1.3}
.wx-dialog #wx-message{font-size:11px;line-height:1.5;color:#b7d3e2;margin:8px 2px 15px;overflow-wrap:anywhere}
.wx-layout{display:grid;grid-template-columns:minmax(310px,.85fr) minmax(0,1.35fr);grid-template-areas:'hours hours' 'days radar' 'details details';gap:14px;align-items:start}.wx-forecast{display:contents}
.wx-card{border:1px solid #c2dbea2a;border-radius:17px;padding:14px;background:linear-gradient(150deg,#b4d3e914,#51788c0d);box-shadow:inset 0 1px #e0f3ff0b}.wx-card h3{font-size:11px;line-height:1.5;letter-spacing:.9px;font-weight:600;color:#c5dfea;margin:0 0 9px}
.wx-hourly-card{grid-area:hours}.wx-hourly{display:flex;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;padding:0 0 7px;scrollbar-width:thin;scrollbar-color:#92b4c666 transparent;scroll-snap-type:x proximity}.wx-hour{flex:0 0 58px;scroll-snap-align:start;display:flex;align-items:center;flex-direction:column;gap:3px;font-size:12px;line-height:1.25}.wx-hour .wx-symbol{width:44px;height:33px}.wx-hour>strong{font-size:18px;font-weight:550}.wx-hour>small{font-size:10px;color:#aedbf4;margin-top:2px;white-space:nowrap}
.wx-daily-card{grid-area:days}.wx-day{display:grid;grid-template-columns:82px 32px 34px minmax(24px,1fr) 34px;align-items:center;gap:7px;min-height:37px;border-bottom:1px solid #c0daea16;font-size:14px}.wx-day:last-child{border:0}.wx-day>strong{font-size:12px;font-weight:500}.wx-day .wx-symbol{width:32px;height:27px}.wx-min{color:#b3cedd;text-align:right}.wx-max{text-align:right}.wx-range{display:block;position:relative;height:5px;background:#06213480;border-radius:8px;overflow:hidden}.wx-range>span{position:absolute;top:0;height:100%;border-radius:8px;background:linear-gradient(90deg,#8ed6d4,#a5e7aa,#f7d38a)}
.wx-dialog .wx-days-toggle{display:none}.wx-dialog .wx-fine{font-size:11px;line-height:1.5;color:#adc9da;margin:8px 0 0}
.wx-extra{grid-area:details;margin:0;border:1px solid #c2dbea2a;border-radius:17px;background:#8dbcd30a;overflow:hidden}.wx-extra>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;min-height:48px;padding:12px 14px;font-size:13px;font-weight:550;color:#d8e9f1}.wx-extra>summary::-webkit-details-marker{display:none}.wx-extra>summary::after{content:'';width:8px;height:8px;border-right:2px solid #a6d6dc;border-bottom:2px solid #a6d6dc;transform:rotate(45deg);margin:0 4px 4px;flex-shrink:0}.wx-extra[open]>summary::after{transform:rotate(225deg);margin-bottom:-4px}.wx-details{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0 4px 13px}.wx-stat{display:flex;flex-direction:column;gap:5px;min-height:84px;padding:3px 14px;border:0;border-left:1px solid #c2dbea26;border-radius:0;background:none;box-shadow:none}.wx-stat:first-child{border-left:0}.wx-stat h3{margin:0;font-size:10px;letter-spacing:.5px}.wx-stat>strong{font-size:22px;font-weight:450;line-height:1.3;white-space:nowrap}.wx-stat>small{font-size:11px;color:#b5cddc;line-height:1.4}
.wx-radar{grid-area:radar;min-width:0}.wx-map-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:7px}.wx-map-heading h3{margin:0 0 2px}.wx-map-heading span{font-size:11px;color:#b5d5e3;display:block}.wx-dialog #wx-external,.wx-dialog .wx-center,.wx-dialog .wx-days-toggle{align-items:center;justify-content:center;min-height:44px;padding:8px 12px;font-size:12px;line-height:1.3;border:1px solid #bbd7e244;border-radius:11px;text-decoration:none;background:linear-gradient(140deg,#b0dae521,#63879910);box-shadow:inset 0 1px #fff1;color:#e0f1f5;cursor:pointer;white-space:nowrap}.wx-dialog #wx-external{display:flex;flex-shrink:0}.wx-dialog .wx-center{display:inline-flex;margin:0;flex-shrink:0}.wx-center:disabled{opacity:.4;cursor:default}
.wx-position{font-size:11px;line-height:1.4;color:#c5dce7;margin:0 0 10px;overflow-wrap:anywhere}.wx-position-known::before{content:'';display:inline-block;width:10px;height:10px;border-radius:50%;background:#ed3049;border:1px solid #ffc8cd;margin-right:6px;box-shadow:0 0 0 2px #e3284420}
#wx-map{position:relative;height:clamp(330px,45dvh,510px);min-height:0;background:#193244;border-radius:12px;overflow:hidden}#wx-map iframe{border:0;width:100%;height:100%;display:block}#wx-map iframe[hidden]{display:none}
.wx-map-footer{display:flex;align-items:center;gap:12px;margin-top:10px}.wx-map-footer .wx-fine{margin:0}.wx-source{font-size:11px;line-height:1.6;color:#a4c2d4;margin-top:14px}.wx-source a{text-decoration:underline}.wx-empty{font-size:12px;line-height:1.5;margin:8px 0}
#wx-map.wx-map-fallback{height:auto;min-height:170px;background:radial-gradient(ellipse at 50% 10%,#6cadbd30,transparent),linear-gradient(140deg,#1b465f,#153349)}.wx-map-note{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:19px 15px;font-size:13px;line-height:1.5}.wx-map-note>.rh-icon{width:28px;height:28px;color:#b4dfdf;fill:none;stroke:currentColor;stroke-width:1.4}.wx-map-note>strong{font-size:14px}.wx-map-note>span{font-size:11px;color:#b4d1df;max-width:300px;line-height:1.5}.wx-dialog .wx-map-open{display:flex;align-items:center;justify-content:center;min-height:44px;border:1px solid #aee8df55;border-radius:11px;background:linear-gradient(140deg,#649b9d44,#417d8733);box-shadow:inset 0 1px #d1fffc22;color:#e4fff8;text-decoration:none;padding:9px 15px;font-size:12px;font-weight:600}
#wx-map.wx-map-loading>.wx-map-note{position:absolute;inset:0;z-index:1;background:#18394be8;pointer-events:none}#wx-map.wx-map-loading>.wx-map-note a{pointer-events:auto}
@media(max-width:979px){
 .wx-dialog{width:min(760px,calc(100vw - 24px));height:calc(100dvh - 24px);border-radius:20px}
 .wx-layout{grid-template-columns:minmax(0,1fr);grid-template-areas:'hours' 'radar' 'days' 'details';gap:12px}
 .wx-dialog .wx-days-toggle:not([hidden]){display:flex;width:100%;margin-top:9px}.wx-daily-card:not(.wx-days-expanded) .wx-day:nth-child(n+6){display:none}
 .wx-details{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px}.wx-stat:nth-child(3n+1){border-left:0}
 .wx-day{grid-template-columns:90px 34px 38px minmax(24px,1fr) 38px;min-height:42px}
 #wx-map{height:clamp(310px,48dvh,440px)}
}
@media(max-width:600px){
 .wx-dialog{width:100%;height:100dvh;max-height:100dvh;margin:0;border-radius:0;border:0}
 .wx-dialog .wx-header{padding:7px 12px;padding-top:max(7px,env(safe-area-inset-top));gap:10px}.wx-header small{display:none}.wx-header h2{font-size:17px;margin:0}.wx-header>div{flex:1}.wx-dialog .wx-header>.wb-home-button{gap:7px;font-size:12px}
 .wx-body{padding:14px 12px max(16px,env(safe-area-inset-bottom))}.wx-city small{font-size:9px;letter-spacing:.4px}.wx-city h3{font-size:24px}.wx-now{grid-template-columns:48px auto;gap:3px 5px;max-width:53%}.wx-now>.wx-symbol{width:48px;height:43px}.wx-now>strong{font-size:42px;letter-spacing:-1.5px}.wx-now>span{font-size:11px;max-width:115px}
 #wx-current{gap:10px;padding:0}.wx-dialog #wx-message{margin:7px 0 12px;font-size:10px}.wx-card{padding:11px;border-radius:15px}.wx-card h3{font-size:10px;letter-spacing:.8px;margin-bottom:7px}.wx-hourly{gap:4px;padding-bottom:4px}.wx-hour{flex-basis:53px;font-size:11px;gap:2px}.wx-hour .wx-symbol{width:42px;height:31px}.wx-hour>strong{font-size:18px}.wx-hour>small{font-size:10px}
 .wx-map-heading{gap:8px}.wx-map-heading span{font-size:10px}.wx-map-heading h3{margin-bottom:2px}.wx-dialog #wx-external{padding:8px 10px;font-size:11px}.wx-position{font-size:10px;margin-bottom:8px}.wx-map-footer{align-items:center;gap:9px}.wx-dialog .wx-center{font-size:11px;padding:8px 10px}.wx-map-footer .wx-fine{font-size:10px;line-height:1.45}
 .wx-day{grid-template-columns:75px 29px 30px minmax(22px,1fr) 30px;gap:5px;min-height:40px}.wx-day>strong{font-size:12px}.wx-day .wx-symbol{width:29px;height:26px}.wx-day{font-size:13px}.wx-details{grid-template-columns:repeat(2,minmax(0,1fr));padding:0 0 14px;row-gap:15px}.wx-stat{padding:2px 12px;min-height:74px}.wx-stat:nth-child(3n+1){border-left:1px solid #c2dbea26}.wx-stat:nth-child(2n+1){border-left:0}.wx-stat>strong{font-size:21px}.wx-extra>summary{font-size:12px;padding:11px 12px}.wx-source{font-size:10px;line-height:1.6}
 #wx-map{height:clamp(300px,48dvh,400px)}
}
@media(max-width:350px){.wx-dialog .wx-header{padding-left:10px;padding-right:10px}.wx-header h2{font-size:16px}.wx-city h3{font-size:22px}.wx-now>strong{font-size:38px}.wx-body{padding-left:10px;padding-right:10px}.wx-map-footer{align-items:flex-start}.wx-map-footer .wx-fine{font-size:9px}.wx-card{padding:10px}.wx-position{font-size:10px}}
@media(max-height:520px) and (orientation:landscape){.wx-dialog .wx-header{padding-top:4px;padding-bottom:4px}.wx-body{padding-top:10px}#wx-map{height:300px}}
@media(prefers-reduced-motion:reduce){.wx-dialog::backdrop{backdrop-filter:none}}
