.arro-weather{color:var(--arro-fg);background:var(--arro-bg);border-radius:12px;overflow:hidden;font-family:inherit;width:100%;max-width:100%;}.arro-weather *{box-sizing:border-box}.arro-weather-hero{color:#fff;min-height:220px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;background-color:#0d2630;background-size:cover;position:relative;isolation:isolate}.arro-weather-hero:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.85;background:radial-gradient(ellipse at 75% 110%,#8d9ca5aa,transparent 40%),radial-gradient(ellipse at 30% 75%,#3e626b99,transparent 45%),linear-gradient(130deg,#071d27,#102e37 65%,#07171e)}.arro-weather-scene-clear:before{background:radial-gradient(circle at 78% 20%,#f5b85a99,transparent 28%),linear-gradient(130deg,#174d73,#437da3)}.arro-weather-scene-cloud:before{background:radial-gradient(ellipse at 70% 110%,#a0b1b8aa,transparent 50%),radial-gradient(ellipse at 35% 70%,#68808e88,transparent 42%),linear-gradient(130deg,#0c2835,#193a49)}.arro-weather-scene-rain:before{background:repeating-linear-gradient(110deg,transparent 0 20px,#d2e9ff12 21px 22px),linear-gradient(135deg,#101f32,#344d62)}.arro-weather-scene-storm:before{background:radial-gradient(ellipse at 70% 65%,#b7b5c299,transparent 25%),linear-gradient(140deg,#09111c,#293247)}.arro-weather-scene-snow:before{background:radial-gradient(ellipse at 65% 85%,#e2ecf3aa,transparent 60%),linear-gradient(120deg,#33576e,#6f91a2)}.arro-weather-scene-fog:before{background:linear-gradient(180deg,#253b47,#9aabb1)}.arro-weather-hero-top{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.arro-weather-place{font-size:1rem}.arro-weather-bigtemp{font-size:2.6rem;font-weight:750;line-height:1.3}.arro-weather-condition{display:flex;flex-direction:column;align-items:flex-end;gap:5px;font-size:.9rem;text-align:right}.arro-weather-condition img{width:var(--arro-head-size);height:var(--arro-head-size);object-fit:contain}.arro-weather-hero-bottom{display:flex;gap:22px;align-items:end}.arro-weather-metrics{display:flex;flex-direction:column;gap:9px;font-size:.78rem;white-space:nowrap}.arro-weather-hours{display:flex;flex:1;justify-content:space-between;gap:5px;overflow-x:auto;padding-bottom:3px}.arro-weather-hour{display:flex;flex-direction:column;align-items:center;justify-content:end;gap:7px;min-width:46px;font-size:.72rem;white-space:nowrap}.arro-weather-hour img{width:var(--arro-hour-size);height:var(--arro-hour-size);object-fit:contain}.arro-weather-hour strong{font-size:.9rem}.arro-weather-days{display:flex;flex-direction:column}.arro-weather-day{display:grid;grid-template-columns:minmax(0,1fr) 70px 90px;align-items:center;min-height:56px;padding:6px 24px;gap:10px;background:#e5e5e9}.arro-weather-day:nth-child(even){background:#fff}.arro-weather-date{display:flex;flex-direction:column;gap:2px}.arro-weather-date small{color:#92949b;font-size:.72rem}.arro-weather-date span{font-size:.95rem}.arro-weather-day-icon{display:flex;justify-content:center}.arro-weather-day-icon img{width:var(--arro-icon-size);height:var(--arro-icon-size);max-width:100%;object-fit:contain}.arro-weather-temperatures{display:flex;justify-content:flex-end;gap:16px;font-size:.9rem}.arro-weather-temperatures strong{font-weight:500}.arro-weather-temperatures span{color:#8c8d93}.arro-weather-footer{text-align:right;padding:6px 15px;font-size:.65rem;color:#777}.arro-weather-error{padding:15px;color:#9d2424}@media(max-width:640px){.arro-weather-hero{padding:15px;min-height:230px}.arro-weather-hero-bottom{gap:10px}.arro-weather-hours{justify-content:flex-start}.arro-weather-hour{min-width:42px}.arro-weather-day{grid-template-columns:minmax(0,1fr) 55px 70px;padding:5px 14px}.arro-weather-temperatures{gap:9px}}
/* Version 1.0.2: horizontally scrollable 24-hour forecast and readable daily conditions */
.arro-weather-hours{justify-content:flex-start;gap:12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#adc6d2 #193643;overscroll-behavior-x:contain;scroll-snap-type:x proximity;padding:5px 2px 12px;min-width:0}
.arro-weather-hour{flex:0 0 66px;min-width:66px;scroll-snap-align:start}
.arro-weather-day{grid-template-columns:minmax(0,1fr) minmax(130px,190px) 90px;min-height:78px}
.arro-weather-day-icon{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0}
.arro-weather-day-icon img{flex:none;filter:drop-shadow(0 1px 1px #47627d66) contrast(1.2) saturate(1.35)}
.arro-weather-day-description{font-size:.82rem;color:#263e55;line-height:1.3;overflow-wrap:anywhere}
@media(max-width:640px){.arro-weather-hour{flex-basis:58px;min-width:58px}.arro-weather-day{grid-template-columns:minmax(0,1fr) minmax(95px,135px) 65px;gap:5px}.arro-weather-day-icon{gap:4px}.arro-weather-day-description{font-size:.73rem}.arro-weather-day-icon img{max-width:55px}.arro-weather-hero-bottom{min-width:0}.arro-weather-hours{min-width:0}}

/* 1.0.4: twelve two-hourly readings without horizontal scrolling. */
.arro-weather-hours{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:2px;overflow:visible;min-width:0;padding:5px 0 2px;scroll-snap-type:none}
.arro-weather-hour{min-width:0;flex:none;gap:5px;font-size:clamp(.52rem,.8vw,.73rem);text-align:center}
.arro-weather-hour img{max-width:100%;width:min(var(--arro-hour-size),100%);height:auto;aspect-ratio:1;object-fit:contain}
.arro-weather-hour strong{font-size:clamp(.65rem,1vw,.9rem)}
.arro-weather-days-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(130px,190px) 90px;gap:10px;padding:8px 24px 5px;background:#e5e5e9}
.arro-weather-temperature-headings{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:center;font-size:.72rem;font-weight:600;color:#59616d}
.arro-weather-temperatures{display:grid;grid-template-columns:1fr 1fr;gap:8px;text-align:center;justify-content:initial}
@media(max-width:800px){.arro-weather-hero-bottom{flex-direction:column;align-items:stretch;gap:10px}.arro-weather-metrics{flex-direction:row;flex-wrap:wrap;gap:6px 14px}.arro-weather-hours{width:100%}}
@media(max-width:640px){.arro-weather-days-heading{grid-template-columns:minmax(0,1fr) minmax(95px,135px) 65px;gap:5px;padding:7px 14px 4px}.arro-weather-temperature-headings,.arro-weather-temperatures{gap:3px}.arro-weather-hours{gap:1px}.arro-weather-hour{font-size:.53rem}.arro-weather-hour strong{font-size:.65rem}}


/* 1.0.8: component-width responsive layout (also inside YOOtheme columns). */
.arro-weather{container-type:inline-size;min-width:0}
.arro-weather-hero-top>div:first-child{min-width:0;overflow-wrap:anywhere}
.arro-weather-condition{min-width:0;max-width:44%;overflow-wrap:anywhere}
.arro-weather-hours{min-width:0;width:100%;align-items:start}
.arro-weather-hour{min-width:0;overflow:hidden;white-space:normal;line-height:1.25}
.arro-weather-hour>span{display:block;max-width:100%;white-space:nowrap;font-variant-numeric:tabular-nums}
.arro-weather-hour img{display:block;margin:auto;width:min(var(--arro-hour-size),100%);max-width:100%;height:auto}
.arro-weather-day-icon img{max-width:min(var(--arro-icon-size),100%);height:auto;flex:0 1 auto}
.arro-weather-date,.arro-weather-day-icon,.arro-weather-day-description,.arro-weather-temperatures{min-width:0}
.arro-weather-date small{overflow-wrap:normal}
.arro-weather-day-description{overflow-wrap:anywhere;hyphens:auto}
.arro-weather-temperatures{font-variant-numeric:tabular-nums}
@container (max-width:650px){
 .arro-weather-hero{padding:15px;gap:14px}
 .arro-weather-hero-bottom{display:flex;flex-direction:column;align-items:stretch;gap:12px}
 .arro-weather-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 10px;white-space:normal}
 .arro-weather-hours{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 4px;overflow:visible;padding:0}
 .arro-weather-hour{gap:3px;font-size:.7rem}
 .arro-weather-hour strong{font-size:.78rem}
 .arro-weather-day,.arro-weather-days-heading{grid-template-columns:minmax(0,1fr) minmax(0,1.45fr) 66px;gap:7px;padding-left:12px;padding-right:12px}
 .arro-weather-day-icon{gap:5px}
 .arro-weather-day-icon img{width:min(var(--arro-icon-size),48px);flex:0 0 auto}
 .arro-weather-day-description{font-size:.75rem}
 .arro-weather-temperatures,.arro-weather-temperature-headings{gap:2px}
}
@container (max-width:390px){
 .arro-weather-hero-top{gap:8px}
 .arro-weather-place{font-size:.9rem}
 .arro-weather-bigtemp{font-size:2.2rem}
 .arro-weather-condition{font-size:.78rem;max-width:42%}
 .arro-weather-condition img{max-width:65px;max-height:65px}
 .arro-weather-day,.arro-weather-days-heading{grid-template-columns:minmax(0,0.85fr) minmax(0,1.45fr) 62px;gap:5px;padding-left:9px;padding-right:9px}
 .arro-weather-date small{font-size:.66rem}
 .arro-weather-date span{font-size:.82rem}
 .arro-weather-day-icon img{width:min(var(--arro-icon-size),38px)}
 .arro-weather-day-description{font-size:.69rem;line-height:1.2}
 .arro-weather-temperatures{font-size:.79rem}
}
@container (max-width:285px){
 .arro-weather-hours{grid-template-columns:repeat(4,minmax(0,1fr))}
 .arro-weather-day-icon{flex-direction:column;align-items:flex-start}
}
