:root{--red:#e72718;--red2:#b71925;--orange:#ff7417;--ink:#14213d;--muted:#718096;--line:#e9edf3;--soft:#fff7f2;--white:#fff;--shadow:0 12px 34px rgba(30,45,70,.08)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f7f8fa;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{color:inherit}.mmp-main{width:min(1280px,calc(100% - 32px));margin:0 auto;padding-bottom:24px}.mmp-svg-icon{display:inline-block;width:24px;height:24px;vertical-align:middle}.mmp-shell-header{position:sticky;top:0;z-index:1100;background:linear-gradient(105deg,var(--red2),var(--red) 62%,#ff4317);color:#fff;box-shadow:0 5px 20px rgba(104,17,17,.2)}.mmp-shell-header__bar{width:min(1280px,calc(100% - 32px));height:78px;margin:auto;display:grid;grid-template-columns:270px 1fr auto;align-items:center;gap:24px}.mmp-shell-brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.mmp-shell-brand__mark{width:58px;height:52px;display:grid;place-items:center}.mmp-shell-brand__image{max-width:58px;max-height:52px}.mmp-shell-brand__text strong{display:block;font-size:28px;line-height:1;font-weight:900;letter-spacing:-1px}.mmp-shell-brand__text small{display:block;margin-top:5px;font-size:12px;color:#fff}.mmp-shell-nav__links{display:flex;justify-content:center;align-items:center;gap:6px}.mmp-shell-nav a{padding:11px 16px;border-radius:10px;color:#fff;text-decoration:none;font-size:14px;font-weight:800}.mmp-shell-nav a:hover,.mmp-shell-nav a:first-child{background:linear-gradient(135deg,#ff7a16,#ff4c18);box-shadow:0 7px 18px rgba(91,19,8,.18)}.mmp-shell-nav__mobile-head{display:none}.mmp-shell-actions{display:flex;gap:8px}.mmp-shell-button{width:40px;height:40px;border:1px solid rgba(255,255,255,.28);border-radius:12px;background:rgba(255,255,255,.12);color:#fff;display:grid;place-items:center}.mmp-shell-button svg{width:21px}.mmp-menu-toggle{display:none}.italy-hero{position:relative;min-height:310px;margin:0 -16px 18px;padding:58px 48px 32px;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 28%,rgba(255,180,49,.9) 0 3%,transparent 3.2%),linear-gradient(108deg,rgba(104,14,25,.96),rgba(214,40,20,.9) 48%,rgba(255,111,23,.78)),linear-gradient(150deg,#86202c,#f36a1b);box-shadow:0 18px 38px rgba(126,34,18,.18)}.italy-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(15deg,rgba(60,13,18,.22),transparent 50%)}.italy-hero__copy{position:relative;z-index:3;max-width:820px}.italy-hero h1{margin:0;font-size:48px;line-height:1.02;letter-spacing:-1.6px}.italy-hero p{margin:8px 0 24px;font-size:21px}.italy-hero__art{position:absolute;right:65px;bottom:50px;width:180px;height:120px}.hero-sun{position:absolute;width:70px;height:70px;border-radius:50%;background:#ffbd17;right:28px;top:0;box-shadow:0 0 0 14px rgba(255,189,23,.08)}.hero-cloud{position:absolute;width:120px;height:52px;border-radius:40px;background:#e7edf4;right:0;bottom:0;box-shadow:-35px -18px 0 -6px #f1f4f8}.hero-search{position:relative;display:grid;grid-template-columns:48px 1fr auto;align-items:center;width:min(760px,100%);height:58px;padding:5px;background:#fff;border-radius:30px;color:#ff3e19;box-shadow:0 12px 30px rgba(74,10,9,.2)}.hero-search>svg{justify-self:center;width:24px}.hero-search input{height:46px;border:0;outline:0;font-size:16px;color:#23304a}.hero-search button{height:46px;min-width:115px;border:0;border-radius:24px;background:linear-gradient(135deg,#ff2f18,#ff7017);color:#fff;font-size:15px;font-weight:900}.mmp-shell-results{display:none;position:absolute;z-index:100;top:65px;left:12px;right:12px;background:#fff;border:1px solid var(--line);border-radius:15px;box-shadow:var(--shadow);overflow:hidden}.mmp-shell-results a{display:block;padding:11px 14px;color:var(--ink);text-decoration:none}.hero-city-links{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}.hero-city-links a{display:flex;align-items:center;gap:5px;padding:8px 13px;border-radius:10px;background:#fff;color:#29354b;text-decoration:none;font-size:12px;font-weight:800;box-shadow:0 5px 15px rgba(43,15,9,.12)}.hero-city-links svg{width:15px;color:#ff3f18}.modern-card,.glass{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.weather-dashboard{display:grid;grid-template-columns:1fr 1fr;gap:16px}.map-card,.current-card{padding:18px}.card-title,.section-title,.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.card-title>div,.section-title>div{display:flex;align-items:center;gap:10px}.card-title h2,.section-title h2,.section-head h2{margin:0;font-size:20px}.title-icon{display:grid;place-items:center;color:#ff4018}.title-icon svg{width:26px}.layer-switch{display:flex;gap:6px}.pill,.change-city{border:0;border-radius:18px;padding:9px 16px;text-decoration:none;background:#fff2eb;color:#a84027;font-weight:800;font-size:12px}.pill.active,.change-city{background:linear-gradient(135deg,#ff3518,#ff7417);color:#fff}#mmpMap{height:520px;border-radius:13px;overflow:hidden;background:#dbe9ef}.map-legend{display:grid;grid-template-columns:repeat(4,1fr);margin-top:10px;border:1px solid var(--line);border-radius:12px;overflow:hidden}.map-legend span{padding:9px 5px;text-align:center;font-size:10px}.map-legend svg{width:14px;color:#ff4b18}.marker-weather{display:grid!important;grid-template-columns:30px auto;grid-template-rows:auto auto;align-items:center;width:auto!important;min-width:75px!important;height:auto!important;padding:5px 7px!important;border-radius:12px!important;background:#fff!important;box-shadow:0 5px 14px rgba(27,42,65,.18)!important;color:#14213d!important}.marker-weather span{grid-row:1/3}.marker-weather svg{width:29px;height:29px}.marker-weather b{font-size:10px}.marker-weather small{font-size:12px;color:#e62f1d;font-weight:900}.current-card{display:flex;flex-direction:column}.current-head{display:flex;justify-content:space-between;align-items:start}.current-head h2{margin:0;font-size:28px}.current-head small{display:flex;align-items:center;gap:5px;color:var(--muted)}.current-head small svg{width:16px;color:#ff4018}.current-body{display:grid;grid-template-columns:1fr 210px;gap:20px;align-items:center;padding:25px 0 18px}.current-main{display:flex;align-items:center;gap:20px}.weather-icon svg{width:90px;height:90px}.current-main strong{font-size:62px;line-height:1;font-weight:900}.current-main h3{margin:7px 0 0;font-size:20px}.side-metrics{display:grid;gap:10px}.side-metrics span{display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:8px}.side-metrics svg{width:18px;color:#61738e}.side-metrics small{color:var(--muted)}.detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.detail-grid div{padding:11px;text-align:center;border:1px solid var(--line);border-radius:12px;background:#fff}.detail-grid svg{width:22px;color:#ff4a18}.detail-grid small,.detail-grid strong{display:block;margin-top:3px}.detail-grid small{font-size:10px;color:var(--muted)}.updated{text-align:right;color:var(--muted);font-size:10px}.inline-forecast{margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}.inline-forecast-title{display:flex;justify-content:space-between;align-items:center}.inline-forecast-title h3{font-size:16px}.inline-forecast-title a{color:#f13a20;text-decoration:none;font-size:11px}.forecast-row{display:flex;gap:7px;overflow-x:auto;padding-bottom:4px}.day-card{flex:1;min-width:74px;padding:9px 6px;text-align:center;border:1px solid var(--line);border-radius:11px;background:#fff}.day-card b,.day-card small{display:block;font-size:10px}.day-card span{display:block;margin:7px 0}.day-card svg{width:34px;height:34px}.day-card strong{font-size:16px;color:#f03120}.regions,.cities,.feature-strip,.forecast,.content-block,.weather-alert,.nearby-cities{margin-top:16px;padding:18px}.region-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}.region-card{height:125px;position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:12px;border-radius:13px;background:linear-gradient(145deg,#bf2a20,#ff7a18);color:#fff}.region-card:nth-child(2n){background:linear-gradient(145deg,#173c63,#4e8bc0)}.region-card:nth-child(3n){background:linear-gradient(145deg,#306d55,#75aa70)}.region-card svg{position:absolute;width:70px;height:70px;right:-12px;top:-7px;opacity:.18}.region-card b{font-size:13px}.city-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.city-card{min-height:140px;padding:14px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;text-decoration:none;background:#fff}.city-card__top{display:flex;justify-content:space-between}.city-card__top b,.city-card__top small{display:block}.city-card__top small{margin-top:3px;color:var(--muted);font-size:10px}.city-weather-slot svg{width:38px;height:38px}.city-weather-temp{margin-top:12px;font-size:26px}.city-card__link{margin-top:auto;color:#f04422;font-size:10px}.feature-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:0}.feature-strip>div{padding:24px;text-align:center;border-right:1px solid var(--line)}.feature-strip>div:last-child{border:0}.feature-strip svg{width:34px;height:34px;color:#f2381f}.feature-strip b,.feature-strip small{display:block;margin-top:6px}.feature-strip small{color:var(--muted);font-size:11px}.mmp-footer{background:#fff;border-top:1px solid var(--line);display:grid;grid-template-columns:2fr 1fr 1fr 2fr;gap:30px;padding:34px max(24px,calc((100% - 1240px)/2));color:#68758a}.mmp-footer b{color:var(--ink)}.mmp-footer a{display:block;margin-top:6px;color:#68758a;text-decoration:none}.footer-brand{display:flex;gap:10px}.footer-logo{width:52px;height:52px}.italy-flag{display:block;width:100px;height:5px;border-radius:4px;background:linear-gradient(90deg,#169b62 0 33%,#eee 33% 66%,#ce2b37 66%)}.quick-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.stat{padding:16px}.stat span,.stat b,.stat strong{display:block}.stat svg{color:#f04422}.city-hero{margin-top:18px;padding:28px;display:flex;justify-content:space-between;align-items:center}.big-weather{display:flex;align-items:center;gap:12px}.big-weather svg{width:70px;height:70px}.big-weather strong{font-size:48px}.weather-alert{display:flex;justify-content:space-between;gap:20px}.alert-main{display:flex;gap:14px}.alert-icon svg{width:35px}.alert-tags span{display:inline-block;padding:7px 10px;border-radius:12px;background:#fff3ed;margin:3px}.mmp-ad:empty,.mmp-ad[hidden]{display:none!important}.mobile-bottom-nav{display:none}



html,body{width:100%;max-width:100%;overflow-x:hidden}.mmp-main{max-width:1280px}.region-card{background-image:linear-gradient(0deg,rgba(13,25,44,.78),rgba(13,25,44,.05) 65%),var(--region-image)!important;background-size:cover!important;background-position:center!important}.region-card b{position:relative;z-index:2;text-shadow:0 2px 8px rgba(0,0,0,.4)}


/* Meteo Italia Pro 3.6 — single responsive design system */
html,body{width:100%;max-width:100%;overflow-x:hidden}

.city-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.city-card:hover{transform:translateY(-2px);border-color:#ffd3c5;box-shadow:0 10px 25px rgba(25,38,63,.08)}
@media(max-width:980px){
 .mmp-shell-header__bar{grid-template-columns:240px 1fr auto}.mmp-shell-nav a{padding:10px 9px;font-size:12px}.weather-dashboard{grid-template-columns:1fr}.region-grid{grid-template-columns:repeat(4,1fr)}.city-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px){
 body{padding:0!important;background:#f4f6f9}.mmp-main{width:100%!important;max-width:none!important;margin:0!important;padding:0 0 76px!important}
 .mmp-shell-header{position:sticky;top:0;width:100%;box-shadow:0 4px 16px rgba(73,19,20,.16)}.mmp-shell-header__bar{width:100%;height:64px;padding:0 16px;display:flex;justify-content:space-between;gap:10px}.mmp-shell-brand__mark{width:42px;height:42px}.mmp-shell-brand__image{max-width:42px;max-height:42px}.mmp-shell-brand__text strong{font-size:20px;letter-spacing:-.5px}.mmp-shell-brand__text small{font-size:9px;margin-top:3px}.mmp-shell-nav{display:none}.mmp-shell-actions{margin-left:auto}.mmp-shell-button{width:40px;height:40px;border-radius:12px}.mmp-menu-toggle{display:grid}
 .italy-hero{min-height:0;margin:0!important;padding:34px 18px 24px!important;border-radius:0;background-position:61% center;box-shadow:none}.italy-hero:before{background:linear-gradient(0deg,rgba(81,10,18,.32),transparent 70%)}.italy-hero__copy{max-width:none}.italy-hero h1{font-size:34px;line-height:1.05;letter-spacing:-1px}.italy-hero p{font-size:16px;margin:8px 0 20px}.italy-hero__art{display:none}.hero-search{width:100%;height:54px;grid-template-columns:42px minmax(0,1fr) 92px;padding:5px;border-radius:28px}.hero-search input{width:100%;min-width:0;height:44px;font-size:14px}.hero-search button{height:44px;min-width:0;border-radius:22px;font-size:14px}.hero-city-links{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:9px;margin-top:14px;padding:0 0 2px;scrollbar-width:none}.hero-city-links::-webkit-scrollbar{display:none}.hero-city-links a{flex:0 0 auto;padding:10px 13px;border-radius:11px}
 .weather-dashboard{display:flex!important;flex-direction:column;width:100%;gap:12px;padding:12px}.modern-card{border-radius:20px;box-shadow:0 8px 26px rgba(29,43,68,.07)}.map-card,.current-card{width:100%;padding:14px;margin:0}.map-card{order:1}.current-card{order:2}.card-title{margin-bottom:12px}.card-title h2{font-size:19px}.title-icon svg{width:24px}.pill{padding:8px 13px}.map-card #mmpMap{width:100%;height:340px;border-radius:14px}.map-legend{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:8px}.map-legend span{font-size:0;padding:8px 3px}.map-legend svg{width:18px;height:18px}.marker-weather{min-width:68px!important;grid-template-columns:25px auto!important;padding:4px 6px!important}.marker-weather svg{width:25px;height:25px}.marker-weather b{font-size:9px}.marker-weather small{font-size:11px}
 .current-head h2{font-size:27px}.current-head small{font-size:12px}.change-city{padding:9px 12px;white-space:nowrap}.current-body{display:block;padding:18px 0 12px}.current-main{gap:16px}.weather-icon svg{width:76px;height:76px}.current-main strong{font-size:52px}.current-main h3{font-size:18px}.side-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:18px;border:1px solid var(--line);border-radius:14px;overflow:hidden}.side-metrics span{display:flex;min-width:0;flex-direction:column;gap:3px;text-align:center;padding:10px 4px;border-right:1px solid var(--line)}.side-metrics span:last-child{border:0}.side-metrics svg{width:19px}.side-metrics small{font-size:9px}.side-metrics b{font-size:10px;white-space:nowrap}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.detail-grid div{padding:9px 3px}.detail-grid small{font-size:9px}.detail-grid strong{font-size:11px}.updated{margin:12px 0 8px;font-size:9px}.inline-forecast{padding-top:10px}.inline-forecast-title h3{font-size:18px;line-height:1.15}.inline-forecast-title a{white-space:nowrap}.forecast-row{gap:8px;scroll-snap-type:x mandatory;scrollbar-width:none}.forecast-row::-webkit-scrollbar{display:none}.day-card{flex:0 0 92px;min-width:92px;padding:11px 6px;scroll-snap-align:start}.day-card svg{width:40px;height:40px}.day-card strong{font-size:18px}
 .city-grid{display:flex!important;grid-template-columns:none!important;gap:10px;overflow-x:auto;padding:0 0 4px;scroll-snap-type:x mandatory;scrollbar-width:none}.city-grid::-webkit-scrollbar{display:none}.city-card{flex:0 0 165px;min-height:154px;padding:14px;scroll-snap-align:start;border-radius:15px}.city-card__top b{font-size:16px}.city-weather-slot svg{width:42px;height:42px}.city-weather-temp{font-size:28px}.city-card__link{font-size:10px}
 .feature-strip{display:flex!important;overflow-x:auto;gap:0;padding:0!important;scrollbar-width:none}.feature-strip::-webkit-scrollbar{display:none}.feature-strip>div{flex:0 0 50%;padding:18px 8px;border-right:1px solid var(--line)}.feature-strip svg{width:30px;height:30px}.mmp-footer{width:100%;grid-template-columns:1fr;padding:26px 18px 92px;gap:18px}.mobile-bottom-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;z-index:1200;height:70px;background:rgba(255,255,255,.97);border-top:1px solid #e7ebf1;box-shadow:0 -8px 24px rgba(26,39,64,.08);backdrop-filter:blur(12px)}.mobile-bottom-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-decoration:none;font-size:10px;font-weight:800}.mobile-bottom-nav svg{width:22px;height:22px}.mobile-bottom-nav a:first-child{color:#e83b24}
}

/* v3.6.1 controls: single authoritative menu + site theme layer */
@media (max-width:900px){
  .mmp-shell-nav{display:flex!important;position:fixed!important;z-index:10020!important;inset:0 0 0 auto!important;width:min(86vw,360px)!important;height:100dvh!important;padding:18px!important;flex-direction:column!important;background:#fff!important;color:#14213d!important;box-shadow:-18px 0 50px rgba(15,23,42,.22)!important;transform:translateX(105%)!important;visibility:hidden!important;opacity:0!important;pointer-events:none!important;transition:transform .25s ease,opacity .2s ease,visibility .2s!important}
  .mmp-shell-nav.open{transform:translateX(0)!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
  .mmp-shell-nav__mobile-head{display:flex!important;align-items:center;justify-content:space-between;padding:6px 4px 18px;font-size:20px}
  .mmp-shell-nav__close{display:grid!important;place-items:center;width:42px;height:42px;border:1px solid #e5e7eb;border-radius:12px;background:#fff;color:#14213d}
  .mmp-shell-nav__links{display:flex!important;flex-direction:column!important;gap:5px!important}
  .mmp-shell-nav__links a{display:block!important;padding:14px 12px!important;border-radius:12px!important;color:#14213d!important;font-size:16px!important;font-weight:800!important;text-decoration:none!important}
  .mmp-shell-nav__links a:hover,.mmp-shell-nav__links a:focus{background:#fff1ec!important;color:#e7381e!important}
  body.mmp-menu-open{overflow:hidden!important}
  
}
html.mmp-dark body,body.mmp-dark{background:#0f172a!important;color:#e5edf7!important}
html.mmp-dark .mmp-shell-header{background:linear-gradient(90deg,#7f1d1d,#c6281c 55%,#ea580c)!important}
html.mmp-dark .modern-card,html.mmp-dark .glass,html.mmp-dark .map-card,html.mmp-dark .current-card,html.mmp-dark .regions,html.mmp-dark .cities,html.mmp-dark .feature-strip,html.mmp-dark .content-block,html.mmp-dark .weather-alert,html.mmp-dark .nearby-cities,html.mmp-dark .mmp-footer,html.mmp-dark .city-card,html.mmp-dark .day-card,html.mmp-dark .detail-grid div{background:#172033!important;border-color:#2d3a50!important;color:#edf3fb!important}
html.mmp-dark .mmp-main{background:#0f172a!important}
html.mmp-dark h1,html.mmp-dark h2,html.mmp-dark h3,html.mmp-dark strong,html.mmp-dark b,html.mmp-dark .city-card,html.mmp-dark .mmp-footer b{color:#f8fafc!important}
html.mmp-dark small,html.mmp-dark .updated,html.mmp-dark .mmp-footer,html.mmp-dark .mmp-footer a{color:#aebbd0!important}
html.mmp-dark .side-metrics,html.mmp-dark .detail-grid div,html.mmp-dark .day-card,html.mmp-dark .city-card{border-color:#334155!important}
html.mmp-dark .mmp-shell-nav{background:#172033!important;color:#f8fafc!important}
html.mmp-dark .mmp-shell-nav__links a,html.mmp-dark .mmp-shell-nav__close{color:#f8fafc!important}
html.mmp-dark .mmp-shell-nav__close{background:#202b40!important;border-color:#334155!important}
html.mmp-dark .mobile-bottom-nav{background:#172033!important;border-color:#334155!important}
html.mmp-dark .mobile-bottom-nav a{color:#d7e0ec!important}
html.mmp-dark .mmp-shell-button{background:rgba(15,23,42,.24)!important;border-color:rgba(255,255,255,.28)!important;color:#fff!important}

/* v3.7 premium weather icon system */
.weather-svg{width:104px!important;height:104px!important;overflow:visible;filter:drop-shadow(0 8px 12px rgba(20,33,61,.12))}.forecast-svg{width:46px!important;height:46px!important;overflow:visible}.city-weather-svg{width:50px!important;height:50px!important;overflow:visible}.marker-svg{width:36px!important;height:36px!important;overflow:visible}.weather-svg *, .forecast-svg *, .city-weather-svg *, .marker-svg *{vector-effect:non-scaling-stroke}.city-weather-slot{width:58px;height:58px;display:grid;place-items:center}.day-card span{min-height:48px;display:grid;place-items:center}.marker-weather span{width:38px;height:38px;display:grid;place-items:center}@media(max-width:700px){.weather-svg{width:92px!important;height:92px!important}.forecast-svg{width:42px!important;height:42px!important}.city-weather-svg{width:48px!important;height:48px!important}}

/* v3.8 city page redesign — authoritative rules */
.city-page{margin-top:18px}.city-page .city-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:28px;align-items:center;min-height:300px;padding:34px 38px;background:linear-gradient(135deg,#fff 0%,#fff9f5 100%);border:1px solid #edf0f4}.city-page .city-hero:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-95px;top:-115px;background:radial-gradient(circle,#ffb03a 0,#ff6a1a 48%,rgba(255,106,26,0) 70%);opacity:.11;pointer-events:none}.city-page .city-hero>div:first-child{min-width:0;position:relative;z-index:1}.city-page .city-hero>div:first-child>small{display:inline-flex;padding:7px 11px;border-radius:999px;background:#fff0e9;color:#d94423;font-size:12px;font-weight:800}.city-page .city-hero h1{margin:12px 0 10px;font-size:clamp(38px,4.2vw,64px);line-height:.98;letter-spacing:-2px;max-width:680px}.city-page .city-hero p{margin:0;max-width:620px;color:#68758a;font-size:16px;line-height:1.6}.city-page .big-weather{position:relative;z-index:1;min-width:0;display:grid;grid-template-columns:112px auto;grid-template-areas:"icon temp" "icon text";column-gap:18px;align-items:center;padding:24px;border:1px solid #f0e8e3;border-radius:22px;background:rgba(255,255,255,.86);box-shadow:0 12px 30px rgba(36,48,72,.07)}.city-page .big-weather #curIcon{grid-area:icon;display:grid;place-items:center}.city-page .big-weather #curTemp{grid-area:temp;font-size:64px;line-height:.9;white-space:nowrap}.city-page .big-weather #curText{grid-area:text;align-self:start;font-size:18px;line-height:1.25;max-width:190px}.quick-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.quick-cards .stat{min-width:0;display:grid;grid-template-columns:38px 1fr;grid-template-areas:"icon label" "icon value";align-items:center;column-gap:10px;min-height:86px;padding:14px 16px}.quick-cards .stat>span{grid-area:icon;display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#fff3ed}.quick-cards .stat>span svg{width:22px;height:22px}.quick-cards .stat>b{grid-area:label;margin:0;color:#748197;font-size:11px}.quick-cards .stat>strong{grid-area:value;margin:2px 0 0;font-size:17px;line-height:1.15;overflow-wrap:anywhere}.nearby-cities .city-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.nearby-cities .city-card{min-width:0;min-height:154px;display:grid;grid-template-columns:1fr 66px;grid-template-rows:auto 1fr auto;gap:5px 8px;padding:17px}.nearby-cities .city-card>b{font-size:18px}.nearby-cities .city-weather-slot{grid-column:2;grid-row:1/3;align-self:center}.nearby-cities .city-weather-temp{grid-column:1;grid-row:2;margin:0;align-self:end;font-size:31px}.nearby-cities .city-card>small{grid-column:1/3;color:#748197;font-size:11px}.forecast.glass>h2{margin:0 0 14px;font-size:20px}
@media(max-width:700px){
 .city-page{width:calc(100% - 24px);margin:12px auto 0}.city-page .city-hero{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:18px!important;min-height:0!important;margin:0!important;padding:20px!important;border-radius:22px!important}.city-page .city-hero h1{font-size:36px!important;line-height:1.02!important;letter-spacing:-1.2px!important;margin:10px 0 8px!important}.city-page .city-hero p{font-size:14px!important;line-height:1.5!important;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.city-page .big-weather{width:100%!important;grid-template-columns:88px minmax(0,1fr)!important;column-gap:12px!important;padding:16px!important;border-radius:18px!important}.city-page .big-weather #curIcon{width:88px!important}.city-page .big-weather #curIcon svg{width:84px!important;height:84px!important}.city-page .big-weather #curTemp{font-size:48px!important;min-width:0!important}.city-page .big-weather #curText{font-size:15px!important;max-width:none!important;overflow-wrap:anywhere!important}.quick-cards{width:calc(100% - 24px)!important;margin:12px auto!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;overflow:visible!important}.quick-cards .stat{width:auto!important;min-width:0!important;min-height:78px!important;padding:12px!important;border-radius:16px!important;grid-template-columns:32px minmax(0,1fr)!important;column-gap:8px!important}.quick-cards .stat>span{width:32px;height:32px;border-radius:10px}.quick-cards .stat>span svg{width:20px!important;height:20px!important}.quick-cards .stat>b{font-size:10px!important;white-space:normal!important}.quick-cards .stat>strong{font-size:15px!important;white-space:normal!important}.forecast.glass{overflow:hidden}.forecast.glass>h2{font-size:19px!important;line-height:1.2!important}.nearby-cities .section-head{display:block!important}.nearby-cities .section-head h2{font-size:21px!important;margin:0 0 4px!important}.nearby-cities .section-head small{display:block;font-size:11px!important;color:#748197}.nearby-cities .city-grid{display:flex!important;overflow-x:auto!important;gap:9px!important}.nearby-cities .city-card{flex:0 0 158px!important;min-height:146px!important;display:grid!important;grid-template-columns:1fr 48px!important;grid-template-rows:auto 1fr auto!important;padding:13px!important}.nearby-cities .city-card>b{font-size:16px!important}.nearby-cities .city-weather-slot{width:48px!important;height:48px!important}.nearby-cities .city-weather-slot svg{width:46px!important;height:46px!important}.nearby-cities .city-weather-temp{font-size:27px!important}.nearby-cities .city-card>small{font-size:10px!important}.content-block{overflow:hidden}.content-block h2,.content-block h3{overflow-wrap:anywhere}.content-block p{font-size:14px;line-height:1.65}.mobile-bottom-nav{height:66px}.mmp-main{padding-bottom:72px!important}
}
html.mmp-dark .city-page .city-hero{background:linear-gradient(135deg,#172033,#1c263a)!important;border-color:#2d3a50!important}html.mmp-dark .city-page .big-weather{background:#202b40!important;border-color:#334155!important}html.mmp-dark .quick-cards .stat>span{background:#253148!important}
/* v3.9 region explorer: single authoritative layer */
html.mmp-dark .region-nav{background:#202c41;border-color:#34425a;color:#fff}

/* v4.1 visual rebuild — authoritative home layer */
.italy-hero{min-height:360px;background:var(--mmp-hero-background,linear-gradient(115deg,#512e3b,#a44a46))!important;background-position:var(--mmp-hero-position,center center)!important;background-size:cover!important;border-radius:0}.italy-hero:before{display:none}.italy-hero__art{display:none!important}.italy-hero h1{font-weight:950;text-shadow:0 2px 16px rgba(0,0,0,.2)}
.city-card{background:linear-gradient(180deg,#fff,#fbfcfe)!important;border:1px solid #e8edf4!important;box-shadow:0 7px 18px rgba(24,40,67,.05)!important}.city-weather-slot svg{filter:drop-shadow(0 8px 8px rgba(30,55,90,.16))}.features .feature{background:linear-gradient(145deg,#fff,#fff7f2)!important}
@media(max-width:700px){.mmp-main{width:100%!important}.italy-hero{margin:0!important;min-height:430px!important;padding:48px 24px 28px!important;border-radius:0!important;background:var(--mmp-hero-mobile-background,var(--mmp-hero-background))!important;background-position:var(--mmp-hero-position,center center)!important}.italy-hero h1{font-size:43px!important;max-width:330px!important}.italy-hero p{font-size:18px!important}.hero-search{height:60px!important}.hero-city-links{display:flex!important;overflow-x:auto!important;flex-wrap:nowrap!important;padding-bottom:6px!important;scrollbar-width:none}.hero-city-links a{flex:0 0 auto!important}.region-explorer{margin:14px 12px!important;padding:16px!important}.region-title h2{font-size:24px!important}.region-grid{margin:0!important;gap:12px!important}.region-card{flex:0 0 78vw!important;max-width:330px!important;min-height:235px!important;border-radius:20px!important}.region-card b{font-size:25px!important}.region-card small{font-size:12px!important}.cities{margin:14px 12px!important}.city-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;overflow:visible!important}.city-card{min-width:0!important;min-height:150px!important;padding:14px!important}.city-card__top b{font-size:17px!important}.city-weather-temp{font-size:28px!important}.city-weather-slot svg{width:58px!important;height:58px!important}.features{margin:14px 12px!important}}
html.mmp-dark .city-card{background:linear-gradient(180deg,#1d293d,#172236)!important;border-color:#334155!important}

/* v4.2 canonical region explorer - single source, no legacy region layers */
.region-explorer{margin-top:18px;padding:20px;overflow:hidden}
.region-title{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.region-title>div:first-child{display:flex;align-items:center;gap:11px}.region-title h2{margin:0;font-size:22px;line-height:1.1}.region-title small{display:block;margin-top:4px;color:var(--muted);font-size:11px}.region-controls{display:flex;gap:8px}.region-nav{width:40px;height:40px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-size:27px;display:grid;place-items:center;cursor:pointer;box-shadow:0 7px 18px rgba(20,33,61,.09)}
.region-grid{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;padding:4px 3px 14px}.region-grid::-webkit-scrollbar{display:none}
.region-card{position:relative;isolation:isolate;flex:0 0 250px;aspect-ratio:1.42/1;overflow:hidden;border-radius:22px;scroll-snap-align:start;scroll-snap-stop:always;text-decoration:none;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;background:var(--region-image) center/cover no-repeat!important;border:1px solid rgba(255,255,255,.65);box-shadow:0 16px 34px rgba(15,32,56,.17);transition:transform .22s ease,box-shadow .22s ease}
.region-card:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,19,37,0) 42%,rgba(7,19,37,.82) 100%)}.region-card:after{content:"";position:absolute;inset:1px;border-radius:21px;z-index:0;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}.region-card__shine{position:absolute;inset:0;z-index:0;background:linear-gradient(125deg,rgba(255,255,255,.22),transparent 30%,transparent 70%,rgba(255,255,255,.08));pointer-events:none}.region-card__badge{position:absolute;z-index:2;top:13px;right:13px;width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.9);color:#ff4a1d;box-shadow:0 8px 18px rgba(7,22,42,.16);backdrop-filter:blur(10px)}.region-card__badge svg{width:19px;height:19px}.region-card b,.region-card small{position:relative;z-index:2;color:#fff;text-shadow:0 2px 9px rgba(0,0,0,.42)}.region-card b{display:block;font-size:23px;line-height:1.05}.region-card small{display:block;margin-top:5px;font-size:11px;font-weight:750;opacity:.94}.region-card:hover,.region-card:focus-visible{transform:translateY(-4px);box-shadow:0 21px 42px rgba(15,32,56,.24)}.region-progress{display:none}
html.mmp-dark .region-nav{background:#17243a;border-color:#2b3a51;color:#fff}
@media(max-width:700px){.region-explorer{margin:14px 12px!important;padding:16px!important;border-radius:24px}.region-title{align-items:center;margin-bottom:14px}.region-title h2{font-size:24px}.region-title small{font-size:10px}.region-nav{width:38px;height:38px;border-radius:13px}.region-grid{gap:12px;padding:3px 1px 12px;scroll-padding-left:1px}.region-card{flex-basis:78vw;max-width:330px;min-width:250px;aspect-ratio:1.34/1;border-radius:22px;padding:18px}.region-card b{font-size:26px}.region-card small{font-size:12px}.region-card__badge{width:42px;height:42px;border-radius:14px}}
@media(max-width:390px){.region-title h2{font-size:21px}.region-title small{display:none}.region-card{flex-basis:80vw;min-width:235px}.region-card b{font-size:23px}}

/* v4.3 region weather cards: live-data SVG weather UI; supersedes all legacy region-image cards. */
#regionCarousel.region-grid{display:flex!important;gap:14px!important;overflow-x:auto!important;scroll-snap-type:x mandatory!important;scrollbar-width:none!important;padding:5px 3px 14px!important}.region-grid::-webkit-scrollbar{display:none!important}.region-weather-card{--rw-a:#2878d0;--rw-b:#76c9ff;position:relative;isolation:isolate;flex:0 0 245px;min-height:190px;overflow:hidden;scroll-snap-align:start;text-decoration:none;border-radius:24px;padding:20px;display:grid;grid-template-columns:1fr auto;grid-template-rows:1fr auto;color:#fff;background:radial-gradient(circle at 78% 18%,rgba(255,255,255,.34),transparent 27%),linear-gradient(145deg,var(--rw-a),var(--rw-b));border:1px solid rgba(255,255,255,.55);box-shadow:0 18px 38px rgba(18,42,72,.16);transition:transform .2s ease,box-shadow .2s ease}.region-weather-card:before{content:"";position:absolute;inset:auto -20% -48% -20%;height:75%;z-index:-1;background:rgba(6,22,48,.18);border-radius:50% 50% 0 0}.region-weather-card:after{content:"";position:absolute;inset:1px;border-radius:23px;pointer-events:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.72),inset 0 -1px 0 rgba(0,0,0,.08)}.region-weather-card:hover,.region-weather-card:focus-visible{transform:translateY(-4px);box-shadow:0 24px 48px rgba(18,42,72,.22)}.region-weather-card__icon{grid-column:1/-1;align-self:start;height:82px;display:flex;align-items:center}.region-weather-svg{width:96px!important;height:96px!important;filter:drop-shadow(0 10px 9px rgba(10,27,51,.2))}.region-weather-card__content{align-self:end;display:grid;grid-template-columns:auto auto;gap:2px 10px;align-items:end}.region-weather-card__content b{grid-column:1/-1;font-size:22px;line-height:1.05}.region-weather-temp{font-size:31px;line-height:1;font-weight:900}.region-weather-text{grid-column:1/-1;font-size:12px;font-style:normal;font-weight:750;opacity:.95}.region-weather-wind{font-size:10px;font-style:normal;font-weight:700;opacity:.82}.region-weather-card__arrow{align-self:end;justify-self:end;width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.2);backdrop-filter:blur(8px);font-size:20px;font-weight:900}.region-weather-card.is-loading{--rw-a:#64748b;--rw-b:#94a3b8}.region-weather-card[data-weather="clear"]{--rw-a:#ff8a12;--rw-b:#ffc93d}.region-weather-card[data-weather="cloud"]{--rw-a:#536b8a;--rw-b:#9db5cf}.region-weather-card[data-weather="rain"]{--rw-a:#234c7b;--rw-b:#4ca5d8}.region-weather-card[data-weather="storm"]{--rw-a:#2c315b;--rw-b:#6b6599}.region-weather-card[data-weather="snow"]{--rw-a:#6c9fc5;--rw-b:#d9f2ff}.region-weather-card[data-weather="fog"]{--rw-a:#6f8292;--rw-b:#b8c4ca}.region-weather-card[data-weather="wind"]{--rw-a:#247b78;--rw-b:#6ac5b9}.mmp-dark .region-weather-card{border-color:rgba(255,255,255,.18)}
@media(max-width:700px){#regionCarousel.region-grid{margin:0!important;padding:4px 1px 12px!important;gap:12px!important}.region-weather-card{flex-basis:72vw;max-width:310px;min-width:245px;min-height:205px;border-radius:25px;padding:19px}.region-weather-card__icon{height:94px}.region-weather-svg{width:108px!important;height:108px!important}.region-weather-card__content b{font-size:24px}.region-weather-temp{font-size:34px}}

/* v4.4 information pages */
body.page .content-block{max-width:980px;margin:28px auto;padding:38px 42px;border-radius:24px;background:#fff;border:1px solid #e8edf4;box-shadow:0 14px 38px rgba(20,37,63,.07)}body.page .content-block>h1{margin:0 0 26px;font-size:clamp(32px,4vw,48px);letter-spacing:-1.2px;color:#17243b}body.page .content-block h2{margin:28px 0 10px;font-size:25px;color:#17243b}body.page .content-block h3{margin:25px 0 8px;font-size:19px;color:#24334e}body.page .content-block p{margin:0 0 14px;color:#5e6c80;font-size:16px;line-height:1.78}body.page .content-block a{color:#e44a2b;font-weight:700}@media(max-width:700px){body.page .content-block{width:calc(100% - 24px);margin:16px auto;padding:24px 20px;border-radius:20px}body.page .content-block>h1{font-size:32px}body.page .content-block h2{font-size:22px}body.page .content-block h3{font-size:18px}body.page .content-block p{font-size:15px;line-height:1.7}}html.mmp-dark body.page .content-block{background:#182238;border-color:#2b3951}html.mmp-dark body.page .content-block>h1,html.mmp-dark body.page .content-block h2,html.mmp-dark body.page .content-block h3{color:#f4f7fb}html.mmp-dark body.page .content-block p{color:#bac4d4}

/* v4.9 canonical all-cities directory */
.all-cities{margin-top:18px;padding:22px}.all-cities__head{display:flex;align-items:center;justify-content:space-between;gap:16px}.all-cities__head>div{display:flex;align-items:center;gap:10px}.all-cities__head h2{margin:0}.all-cities__head small{display:block;margin-top:3px;color:var(--muted)}.all-cities__intro{display:flex;align-items:center;gap:10px;margin-top:14px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(135deg,#fff8f4,#fff)}.all-cities__intro strong{color:var(--ink);font-size:14px}.all-cities__intro span{color:var(--muted);font-size:12px}.mmp-dark .all-cities__intro{background:#17243a;border-color:#334155}.mmp-dark .all-cities__intro strong{color:#f5f7fb}.all-cities__tools{display:grid;grid-template-columns:minmax(0,2fr) minmax(180px,1fr);gap:12px;margin:18px 0}.all-cities__tools label{display:grid;gap:6px;font-size:12px;font-weight:800;color:var(--muted)}.all-cities__tools input,.all-cities__tools select{width:100%;height:46px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);padding:0 14px;font:inherit;outline:none}.all-cities__tools input:focus,.all-cities__tools select:focus{border-color:#e44a2b;box-shadow:0 0 0 3px rgba(228,74,43,.1)}.all-cities__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.all-city-link{min-width:0;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;gap:2px 8px;padding:12px 13px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);text-decoration:none;transition:.18s ease}.all-city-link:hover,.all-city-link:focus-visible{transform:translateY(-2px);border-color:#f0a18e;box-shadow:0 8px 20px rgba(20,37,63,.08)}.all-city-link b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.all-city-link small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:10px}.all-city-link span{grid-column:2;grid-row:1/3;align-self:center;color:#e44a2b;font-weight:900}.all-cities__footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:16px}.all-cities__footer button{border:0;border-radius:13px;background:#e44a2b;color:#fff;font-weight:850;padding:11px 17px;cursor:pointer}.all-cities__footer button[hidden]{display:none}.mmp-dark .all-cities__tools input,.mmp-dark .all-cities__tools select,.mmp-dark .all-city-link{background:#17243a;border-color:#334155;color:#f5f7fb}@media(max-width:900px){.all-cities__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.all-cities__intro{align-items:flex-start;flex-direction:column;gap:3px}.all-cities{margin:14px 12px!important;padding:16px!important}.all-cities__head{align-items:flex-start}.all-cities__head h2{font-size:22px}.all-cities__head small{font-size:10px}.all-cities__tools{grid-template-columns:1fr}.all-cities__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.all-city-link{padding:11px}.all-cities__footer{align-items:stretch;flex-direction:column}.all-cities__footer button{width:100%}}
/* v4.10 multilingual selector — single authoritative block */
.mmp-language{display:inline-flex;align-items:center}.mmp-language select{height:40px;max-width:118px;border:1px solid rgba(148,163,184,.35);border-radius:12px;background:rgba(255,255,255,.12);color:inherit;padding:0 28px 0 10px;font:600 13px/1 inherit;cursor:pointer}.mmp-language option{color:#172033;background:#fff}html[dir="rtl"] .mmp-shell-nav__links,html[dir="rtl"] .all-cities__tools,html[dir="rtl"] .city-page{text-align:right}@media(max-width:900px){.mmp-language select{max-width:92px;height:38px}}

/* Forecast navigation: keep heading visible when navigating from fixed mobile bar. */
#forecast{scroll-margin-top:100px}.mobile-bottom-nav a[href$="#forecast"] svg{width:27px;height:27px;filter:drop-shadow(0 1px 2px rgba(15,35,60,.14))}


/* Unified admin palette. These declarations intentionally supersede legacy
   fixed light/dark colours; keep future palette changes in this one block. */
html body{background:var(--mmp-page-bg)!important;color:var(--mmp-ink)}
html .mmp-main{background:var(--mmp-page-bg)!important}
html .modern-card,html .glass,html .map-card,html .current-card,
html .regions,html .cities,html .feature-strip,html .content-block,
html .weather-alert,html .nearby-cities,html .city-card,html .day-card,
html .detail-grid div,html .all-city-link,html .all-cities__tools input,
html .all-cities__tools select,html .mmp-footer{
background:var(--mmp-card)!important;border-color:var(--mmp-line)!important;color:var(--mmp-ink)!important}
html .current-head small,html .updated,html .side-metrics small,
html .detail-grid small,html .all-city-link small,html .mmp-footer a,
html .all-cities__head small{color:var(--mmp-muted)!important}
html .mmp-main h1,html .mmp-main h2,html .mmp-main h3,
html .mmp-main strong,html .mmp-footer b{color:var(--mmp-ink)}
html .italy-hero h1,html .italy-hero p,html .region-weather-card b,
html .region-weather-card strong{color:#fff!important}
html .title-icon,html .all-city-link span,html .inline-forecast-title a,
html .current-head small svg{color:var(--mmp-accent)!important}
html .pill.active,html .change-city,html .all-cities__footer button{
background:var(--mmp-accent)!important;color:#fff!important}
html .all-cities__intro{background:var(--mmp-page-bg2)!important;border-color:var(--mmp-line)!important}
html .all-cities__intro strong{color:var(--mmp-ink)!important}
html .all-cities__intro span{color:var(--mmp-muted)!important}
html .all-cities__tools input:focus,html .all-cities__tools select:focus{
border-color:var(--mmp-accent)!important}
html.mmp-dark .mmp-main h1,html.mmp-dark .mmp-main h2,
html.mmp-dark .mmp-main h3,html.mmp-dark .mmp-main strong,
html.mmp-dark .mmp-footer b{color:var(--mmp-ink)!important}
html.mmp-dark .italy-hero h1,html.mmp-dark .italy-hero p{color:#fff!important}
html.mmp-dark .mmp-footer,html.mmp-dark .mmp-footer a,
html.mmp-dark .updated,html.mmp-dark small{color:var(--mmp-muted)!important}
html.mmp-dark .mmp-shell-nav,html.mmp-dark .mobile-bottom-nav{
background:var(--mmp-card)!important;border-color:var(--mmp-line)!important}
/* Explicit dark selectors override the older hard-coded !important palette. */
html.mmp-dark .modern-card,html.mmp-dark .glass,html.mmp-dark .map-card,
html.mmp-dark .current-card,html.mmp-dark .regions,html.mmp-dark .cities,
html.mmp-dark .feature-strip,html.mmp-dark .content-block,
html.mmp-dark .weather-alert,html.mmp-dark .nearby-cities,
html.mmp-dark .mmp-footer,html.mmp-dark .city-card,html.mmp-dark .day-card,
html.mmp-dark .detail-grid div,html.mmp-dark .all-city-link{
background:var(--mmp-card)!important;border-color:var(--mmp-line)!important;color:var(--mmp-ink)!important}
html.mmp-dark body.page .content-block{background:var(--mmp-card)!important;border-color:var(--mmp-line)!important}
html.mmp-dark body.page .content-block>h1,html.mmp-dark body.page .content-block h2,
html.mmp-dark body.page .content-block h3{color:var(--mmp-ink)!important}
html.mmp-dark body.page .content-block p{color:var(--mmp-muted)!important}
html.mmp-dark .city-page .city-hero,html.mmp-dark .city-page .big-weather{
background:var(--mmp-card)!important;border-color:var(--mmp-line)!important}

/* Single mobile drawer stacking context: the backdrop stays BELOW the header and drawer.
   The former body pseudo-element sat above the entire header and swallowed taps. */
.mmp-menu-backdrop{position:fixed;inset:0;z-index:1190;background:rgba(12,23,42,.58);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,visibility .22s ease}
.mmp-menu-backdrop.is-visible{opacity:1;visibility:visible;pointer-events:auto}
body.mmp-menu-open .mmp-shell-header{z-index:1200}
@media(max-width:900px){
 .mmp-shell-nav{z-index:1201!important;width:min(86vw,350px)!important;max-width:calc(100vw - 32px)!important;overflow-y:auto!important;border-radius:22px 0 0 22px;box-shadow:-12px 0 48px rgba(6,17,32,.22)!important}
 .mmp-shell-nav__mobile-head{position:sticky;top:-18px;z-index:2;background:inherit;padding:12px 4px 20px!important;border-bottom:1px solid #e8edf2;margin-bottom:14px}
 .mmp-shell-nav__links{align-items:stretch!important;gap:6px!important}
 .mmp-shell-nav__links a{width:100%;text-align:left;border-radius:13px!important;padding:14px 16px!important;min-height:48px}
 .mmp-shell-nav__links a:first-child{background:transparent;box-shadow:none}
 .mmp-shell-nav__links a[aria-current="page"]{background:#fff0e8!important;color:#b8391c!important}
 .mmp-shell-nav__close{flex-shrink:0}
}
@media(min-width:901px){.mmp-menu-backdrop{display:none!important}}
/* Accessible, animated mobile menu control; scoped to header only. */
.mmp-menu-toggle{cursor:pointer;touch-action:manipulation;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}
.mmp-menu-toggle:focus-visible,.mmp-shell-nav__close:focus-visible{outline:3px solid #fff;outline-offset:3px}
.mmp-menu-glyph{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:25px;height:25px}
.mmp-menu-glyph span{display:block;width:23px;height:2.5px;border-radius:4px;background:currentColor;transform-origin:center;transition:transform .24s ease,opacity .18s ease,width .24s ease}
.mmp-menu-glyph span:nth-child(2){width:17px;align-self:flex-end;margin-right:1px}
.mmp-menu-toggle[aria-expanded="true"] .mmp-menu-glyph span:first-child{transform:translateY(7.5px) rotate(45deg)}
.mmp-menu-toggle[aria-expanded="true"] .mmp-menu-glyph span:nth-child(2){opacity:0;transform:scaleX(0)}
.mmp-menu-toggle[aria-expanded="true"] .mmp-menu-glyph span:last-child{transform:translateY(-7.5px) rotate(-45deg)}
@media(max-width:900px){.mmp-shell-nav__links{overflow-y:auto;overscroll-behavior:contain;padding-bottom:env(safe-area-inset-bottom,16px)}.mmp-shell-nav__close{cursor:pointer}}
@media(prefers-reduced-motion:reduce){.mmp-menu-glyph span,.mmp-menu-toggle{transition:none!important}}

/* Weather unavailable: retain accessible city link without an oversized failure message. */
.city-card.weather-unavailable .city-weather-temp{font-size:20px;line-height:1.2;overflow-wrap:normal;white-space:nowrap;color:var(--muted)}
