/* MyWeatha v51 — real weather information in all four widget formats. */
/* No stripped-down widget faces. The actual data remains in every card. */
#home .content>[data-wa-block].wa-full-weather>.wa-widget-mini,
#home .content>[data-wa-block].wa-full-weather>.wa-widget-details-toggle{display:none!important}
#home .content>[data-wa-block].wa-full-weather:not(.wa-hidden){
 min-width:0!important;
 overflow-wrap:anywhere;
 max-width:100%!important;
}
#home .content>[data-wa-block].wa-full-weather[data-wa-grid-size="small"],
#home .content>[data-wa-block].wa-full-weather[data-wa-grid-size="wide"]{
 max-height:190px!important;
 min-height:0!important;
 overflow-y:auto!important;
 overflow-x:hidden!important;
 scrollbar-width:none;
 overscroll-behavior-y:contain;
}
#home .content>[data-wa-block].wa-full-weather[data-wa-grid-size="small"]{
 max-height:158px!important;
}
#home .content>[data-wa-block].wa-full-weather[data-wa-grid-size="tall"]{
 max-height:306px!important;
 min-height:0!important;
 overflow-y:auto!important;
 scrollbar-width:none;
 overscroll-behavior-y:contain;
}
#home .content>[data-wa-block].wa-full-weather[data-wa-grid-size="large"]{
 max-height:306px!important;
 min-height:0!important;
 overflow-y:auto!important;
 scrollbar-width:none;
 overscroll-behavior-y:contain;
}
/* The hero has its own iOS safe top margin; its actual data can be scrolled
   in its smaller formats, rather than secretly swapping in a different card. */
#home .content>.mast.wa-full-weather[data-wa-grid-size="small"]{
 max-height:158px!important;min-height:0!important;
 padding-top:15px!important;
}
#home .content>.mast.wa-full-weather[data-wa-grid-size="wide"]{
 max-height:190px!important;min-height:0!important;
 padding-top:18px!important;
}
#home .content>.mast.wa-full-weather[data-wa-grid-size="tall"],
#home .content>.mast.wa-full-weather[data-wa-grid-size="large"]{
 max-height:306px!important;min-height:0!important;
 padding-top:20px!important;
}
#home .content>.mast.wa-full-weather[data-wa-grid-size="small"] .brand{font-size:17px!important}
#home .content>.mast.wa-full-weather[data-wa-grid-size="small"] .mast-top .tools{gap:5px!important}
#home .content>.mast.wa-full-weather[data-wa-grid-size="small"] .mast-top .icon-btn{height:29px!important;width:29px!important}
#home .content>.mast.wa-full-weather[data-wa-grid-size="small"] .temperature{font-size:49px!important}
/* The hourly forecast is ALWAYS the real #hours rail, with the entire
   16-hour dataset reachable by swiping — no miniature and no summarization. */
#home .content>.hours-card.wa-full-weather{
 display:flex!important;
 flex-direction:column!important;
 overflow:hidden!important;
 min-width:0!important;
 max-width:100%!important;
 padding:10px 6px 8px!important;
}
#home .content>.hours-card.wa-full-weather .section-top{
 flex:0 0 auto!important;
 padding:0 7px 8px!important;
}
#home .content>.hours-card.wa-full-weather .section-top strong{
 font-size:clamp(11px,3vw,15px)!important;
 overflow-wrap:anywhere;
}
#home .content>.hours-card.wa-full-weather #hours{
 min-width:0!important;
 width:100%!important;
 touch-action:pan-x!important;
 overflow-x:auto!important;
 overflow-y:hidden!important;
 scroll-snap-type:x proximity;
 -webkit-overflow-scrolling:touch;
 flex:1 1 auto;
}
#home .content>.hours-card.wa-full-weather #hours .hour{
 flex:0 0 57px!important;
 scroll-snap-align:start;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour,
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="tall"] #hours .hour{
 flex-basis:50px!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] .hour .weather-icon{
 margin:4px 0!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] .hour b{
 font-size:15px!important;
}
/* 1x2 and 2x2 show full individual hourly rows in a vertically scrollable
   forecast, utilizing their height instead of an empty lower half. */
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="tall"]{
 height:306px!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="large"]{
 height:306px!important;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours{
 display:grid!important;
 grid-template-columns:repeat(var(--wa-hour-columns,1),minmax(0,1fr))!important;
 grid-auto-rows:52px!important;
 gap:5px!important;
 overflow-y:auto!important;
 overflow-x:hidden!important;
 touch-action:pan-y!important;
 scroll-snap-type:y proximity!important;
 padding:0 4px 4px!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="large"]{
 --wa-hour-columns:2;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours .hour{
 display:grid!important;
 grid-template-columns:36px minmax(0,1fr) auto!important;
 grid-template-rows:1fr!important;
 gap:3px!important;
 align-items:center!important;
 padding:5px 7px!important;
 border:1px solid rgba(186,224,255,.2);
 background:rgba(154,196,252,.08);
 border-radius:12px!important;
 min-width:0!important;
 max-width:100%!important;
 height:52px!important;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours .hour small{
 font-size:10px!important;
 white-space:nowrap;
 overflow:hidden;
 text-overflow:ellipsis;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours .hour .weather-icon{
 margin:0!important;
 width:25px!important;
 height:25px!important;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours .hour .wa-custom-icon{
 width:25px!important;height:25px!important;
}
#home .content>.hours-card.wa-full-weather:is([data-wa-grid-size="tall"],[data-wa-grid-size="large"]) #hours .hour b{
 font-size:15px!important;
 white-space:nowrap;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="large"] #hours .hour{
 grid-template-columns:33px minmax(0,1fr) auto!important;
}
/* Avoid a phantom gap from legacy containers when some sections are absent. */
#home .content>[data-wa-block].wa-hidden{display:none!important}
#home .content>#cards:empty,#home .content>#waLateCards:empty{display:none!important}
#home .content>[data-wa-block].wa-full-weather::-webkit-scrollbar{display:none}
/* Fixed preview is above cards, fingers, headers, and bottom editors. */
.wa-resize-preview-v51{
 display:none;
 position:fixed;
 pointer-events:none;
 z-index:2147483650;
 border:2px dashed rgba(219,253,255,.98);
 border-radius:23px;
 background:linear-gradient(145deg,rgba(72,196,255,.24),rgba(147,122,253,.30));
 box-shadow:0 0 0 5px rgba(70,220,255,.16),inset 0 0 36px rgba(146,218,255,.17),0 17px 38px rgba(4,22,75,.2);
 -webkit-backdrop-filter:blur(5px);
 backdrop-filter:blur(5px);
 overflow:hidden;
 transition:width .12s cubic-bezier(.2,.8,.3,1),height .12s cubic-bezier(.2,.8,.3,1),left .12s ease;
}
.wa-resize-preview-v51.is-visible{display:block}
.wa-resize-preview-label{
 position:absolute;
 left:10px;top:9px;
 border-radius:20px;
 padding:7px 12px;
 border:1px solid rgba(255,255,255,.8);
 background:linear-gradient(125deg,rgba(7,83,154,.96),rgba(89,75,166,.96));
 color:white;
 font-size:12px;font-weight:800;
 box-shadow:0 6px 19px rgba(2,24,78,.2);
}
.wa-resize-preview-sheen{
 position:absolute;right:-40px;bottom:-35px;width:75%;height:110px;
 border-radius:50%;
 background:radial-gradient(ellipse,rgba(184,236,255,.3),transparent 70%);
}
body.wa-edit-mode #home .wa-resize-source-v51{
 outline:2px solid rgba(122,239,255,.98)!important;
 outline-offset:1px!important;
}
/* The resize handle itself may freely receive iOS pointer movement. */
body.wa-edit-mode #home .wa-free-grip{touch-action:none!important;user-select:none!important;-webkit-user-select:none!important}
@media(prefers-reduced-motion:reduce){
 .wa-resize-preview-v51{transition:none!important}
}

/* Fit the entire time/icon/temperature row inside the 1x1 hourly viewport. */
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour{
 height:87px!important;
 min-height:87px!important;
 max-height:87px!important;
 padding:2px 1px!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour small{font-size:10px!important}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour .weather-icon{
 height:25px!important;
 width:25px!important;
 margin:3px auto!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour .wa-custom-icon{
 width:25px!important;height:25px!important;
}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] #hours .hour b{font-size:16px!important}
#home .content>.hours-card.wa-full-weather[data-wa-grid-size="small"] .section-top{padding-bottom:5px!important}
/* v51 compact masonry: fine row units eliminate holes beside tall widgets. */
#home .content.wa-masonry-layout{
 display:grid!important;
 grid-template-columns:repeat(2,minmax(0,1fr))!important;
 grid-auto-flow:row dense!important;
 grid-auto-rows:4px!important;
 column-gap:11px!important;
 row-gap:6px!important;
 align-items:start!important;
 align-content:start!important;
}
#home .content.wa-masonry-layout>[data-wa-block]:not(.wa-hidden){
 grid-row:span var(--wa-masonry-rows,18)!important;
 align-self:start!important;
}
#home .content.wa-masonry-layout>#cards,
#home .content.wa-masonry-layout>#waLateCards{
 grid-row:span var(--wa-masonry-rows,17)!important;
 align-self:start!important;
}
#home .content.wa-masonry-layout>.studio-teaser{
 grid-row:span var(--wa-masonry-rows,9)!important;
}
#home .content.wa-masonry-layout>.wa-grid-sizebar{
 grid-row:auto!important;
}
