:root{
  --ml-primary:#002050;
  --ml-primary-dark:#0d5f9c;
  --ml-bg:#f5f8fc;
  --ml-card:#fff;
  --ml-text:#102033;
  --ml-muted:#66788f;
  --ml-border:#e3edf7;
  --ml-shadow:0 18px 45px rgba(16,32,51,.08);
  --ml-radius:18px;
  --ml-radius-lg:24px;
}
*{box-sizing:border-box}
body.ml2027{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--ml-bg);color:var(--ml-text);font-size:15px;line-height:1.55}
a{color:inherit;text-decoration:none}.ml-container{width:min(1500px,calc(100% - 32px));margin-inline:auto}.ml-main{min-height:70vh}.ml-site-header{background:var(--ml-primary);color:#fff;position:sticky;top:0;z-index:1000;box-shadow:0 8px 24px rgba(13,95,156,.22)}.ml-topbar{width:min(1500px,calc(100% - 32px));margin:auto;min-height:72px;display:flex;align-items:center;gap:28px}.ml-logo img{display:block;width:205px;height:auto}.ml-nav{display:flex;align-items:center;gap:6px;margin-left:auto}.ml-nav-item{position:relative}.ml-nav-item>a{display:block;padding:25px 11px;font-weight:600;font-size:.94rem;color:rgba(255,255,255,.96)}.ml-nav-item>a:hover{color:#fff}.ml-dropdown{display:none;position:absolute;top:100%;left:0;min-width:260px;background:#fff;color:var(--ml-text);border:1px solid var(--ml-border);border-radius:16px;box-shadow:var(--ml-shadow);padding:8px}.ml-nav-item:hover .ml-dropdown{display:block}.ml-dropdown a{display:block;padding:10px 12px;border-radius:12px}.ml-dropdown a:hover{background:#eef7fd}.ml-dropdown small{display:block;color:var(--ml-muted);font-size:.78rem;margin-top:1px}.ml-menu-toggle{display:none;margin-left:auto;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;border-radius:999px;padding:8px 14px;font-weight:700}.ml-hero{padding:30px 0 18px}.ml-hero-inner{background:linear-gradient(135deg,#fff,#edf7ff);border:1px solid var(--ml-border);border-radius:var(--ml-radius-lg);padding:24px 28px;box-shadow:var(--ml-shadow)}.ml-kicker{margin:0 0 6px;color:var(--ml-primary-dark);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.ml-hero h1{margin:0;font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.12;font-weight:760;letter-spacing:-.035em}.ml-hero-text{margin:8px 0 0;color:var(--ml-muted);max-width: min(1300px, 100%)}.ml-card{background:var(--ml-card);border:1px solid var(--ml-border);border-radius:var(--ml-radius);box-shadow:var(--ml-shadow);padding:20px}.ml-section{padding:16px 0}.ml-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.ml-section-head h2,.ml-product-info h2{margin:0;font-size:1.28rem;letter-spacing:-.025em;font-weight:720}.ml-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}.ml-col-8{grid-column:span 8}.ml-col-4{grid-column:span 4}.ml-product-viewer{background:#fff;border:1px solid var(--ml-border);border-radius:var(--ml-radius-lg);box-shadow:var(--ml-shadow);padding:18px}.ml-product-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.ml-product-tabs button,.ml-product-mode button,.ml-btn{border:0;background:#eaf5fc;color:#0d5f9c;border-radius:999px;padding:9px 13px;font-weight:750;cursor:pointer}.ml-product-tabs button.active,.ml-product-mode button.active,.ml-btn-primary{background:var(--ml-primary);color:#fff}.ml-product-info{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:14px}.ml-product-info p{margin:4px 0 0;color:var(--ml-muted);max-width:780px}.ml-product-mode{display:flex;gap:8px;white-space:nowrap}.ml-product-stage{background:var(--ml-bg);border:1px solid var(--ml-border);border-radius:18px;padding:12px;display:flex;align-items:center;justify-content:center;min-height:220px}.ml-product-stage img{display:block;max-width:100%;height:auto;border-radius:12px}.ml-measure-table{border:1px solid var(--ml-border);border-radius:16px;overflow:hidden;background:#fff}.ml-measure-row{display:grid;grid-template-columns:1fr auto;gap:14px;padding:10px 14px;border-bottom:1px solid var(--ml-border)}.ml-measure-row:last-child{border-bottom:0}.ml-measure-row span{color:var(--ml-muted);font-weight:650}.ml-measure-row strong{font-weight:760}.ml-wind-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ml-wind-card{background:#fff;border:1px solid var(--ml-border);border-radius:18px;padding:14px}.ml-wind-card h3{margin:0 0 10px;font-size:1rem}.ml-wind-card img{display:block;width:100%;height:auto;object-fit:contain;background:#fff}.ml-site-footer{margin-top:36px;background:var(--ml-primary);color:#fff}.ml-footer-grid{width:min(1500px,calc(100% - 32px));margin:auto;display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:28px;padding:34px 0}.ml-footer-brand img{width:200px}.ml-footer-grid h3{margin:0 0 10px;font-size:1rem}.ml-footer-grid a{display:block;color:rgba(255,255,255,.88);margin:6px 0}.ml-footer-grid p{color:rgba(255,255,255,.85);max-width:460px}.ml-footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.18);padding:12px;color:rgba(255,255,255,.8)}
@media(max-width:980px){.ml-topbar{min-height:68px;justify-content:center}.ml-logo img{width:170px}.ml-menu-toggle{display:block;position:absolute;right:16px}.ml-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--ml-primary);padding:10px 16px 18px;flex-direction:column;align-items:stretch}.ml-nav.is-open{display:flex}.ml-nav-item>a{padding:11px 0}.ml-dropdown{position:static;display:block;box-shadow:none;border:0;background:rgba(255,255,255,.1);color:#fff;margin:0 0 8px}.ml-dropdown a:hover{background:rgba(255,255,255,.12)}.ml-dropdown small{color:rgba(255,255,255,.75)}.ml-grid{grid-template-columns:1fr}.ml-col-8,.ml-col-4{grid-column:auto}.ml-product-info{flex-direction:column}.ml-product-mode{width:100%}.ml-product-mode button{flex:1}.ml-wind-grid{grid-template-columns:1fr}.ml-footer-grid{grid-template-columns:1fr;text-align:center}.ml-footer-brand img{margin:auto}.ml-footer-brand p{margin-inline:auto}.ml-product-tabs{justify-content:center}.ml-product-tabs button{font-size:.86rem}.ml-card,.ml-product-viewer{padding:16px}}
.ml-station-top{display:grid;gap:20px;align-items:start}.ml-station-top-sneznik{grid-template-columns:minmax(320px,520px) minmax(0,1fr)}.ml-wind-grid-single{grid-template-columns:1fr}.ml-wind-grid-single .ml-wind-card img{max-height:430px;object-fit:contain}@media(max-width:980px){.ml-station-top-sneznik{grid-template-columns:1fr}}


/* Sprint 2.1 station layout fixes */
.ml-station-top-sneznik{display:grid!important;grid-template-columns:minmax(340px,520px) minmax(0,1fr)!important;gap:22px;align-items:start;}
.ml-station-top-sneznik>.ml-wind-grid{min-width:0;}
.ml-station-top-sneznik>.ml-wind-grid+.ml-card,
.ml-station-top-sneznik>div{min-width:0;}
.ml-station-top-sneznik .ml-wind-card img{max-height:420px;object-fit:contain;background:#fff;}
@media(max-width:760px){.ml-station-top-sneznik{grid-template-columns:1fr!important}.ml-station-top-sneznik .ml-wind-card img{max-height:none}}

/* Sprint 2.2 global layout normalization */
:root{--ml-container:1460px;--ml-btn-radius:999px}
.ml-container,.ml-topbar,.ml-footer-grid{width:min(var(--ml-container),calc(100% - 32px));}
.ml-hero-inner{width:100%;}
.ml-product-tabs button,.ml-product-mode button,.ml-btn,.ml-analysis-link{border-radius:var(--ml-btn-radius)!important;}

/* Station pages */
.ml-station-section{padding-top:8px}.ml-station-meta{background:#fff;border:1px solid var(--ml-border);border-radius:16px;padding:12px 16px;margin-bottom:18px;font-weight:800;color:#0d5f9c;text-align:center;letter-spacing:.015em}.ml-station-top{display:grid;gap:20px;align-items:start}.ml-station-top-sneznik{grid-template-columns:minmax(360px,520px) minmax(0,1fr)!important}.ml-station-top-sneznik .ml-wind-card{height:100%;}.ml-station-measure-card{padding:20px}.ml-wind-grid-dual{grid-template-columns:repeat(2,minmax(0,1fr));}.ml-wind-card{background:#fff;border:1px solid var(--ml-border);border-radius:var(--ml-radius);box-shadow:var(--ml-shadow);padding:16px}.ml-wind-card h3{font-size:1.02rem;margin:0 0 12px;font-weight:720;color:#102033}.ml-wind-card img{width:100%;height:auto;object-fit:contain;background:#fff;border-radius:12px}.ml-station-top-sneznik .ml-wind-card img{max-height:410px}.ml-measure-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--ml-border);border-radius:16px;overflow:hidden;background:#fff}.ml-measure-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:11px 14px;border-bottom:1px solid var(--ml-border);min-height:46px}.ml-measure-row:nth-child(odd){border-right:1px solid var(--ml-border)}.ml-measure-row span{color:#50627a;font-weight:660}.ml-measure-row strong{font-weight:760;text-align:right;color:#102033}.ml-extreme-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ml-extreme-row{background:#f8fbfe;border:1px solid var(--ml-border);border-radius:16px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center}.ml-extreme-row span{font-weight:700;color:#50627a}.ml-extreme-row strong{text-align:right}.ml-cloud-table{display:grid;gap:10px}.ml-cloud-row{display:grid;grid-template-columns:minmax(150px,1fr) 70px 42px minmax(90px,1fr) 90px 90px;gap:10px;align-items:center;border:1px solid var(--ml-border);background:#f8fbfe;border-radius:14px;padding:10px 12px}.ml-cloud-row span{font-weight:700;color:#50627a}.ml-cloud-row img{width:32px;height:32px;object-fit:contain}.ml-cloud-row em{font-style:normal;color:#50627a}.ml-cloud-row b,.ml-cloud-row small{text-align:right}.ml-graph-tabs,.ml-camera-tabs{display:flex;flex-wrap:wrap;gap:8px;overflow:visible}.ml-graph-tabs button,.ml-camera-tabs button{white-space:normal;text-align:center}.ml-graph-stage,.ml-camera-stage{background:#f5f8fc!important;min-height:260px}.ml-graph-stage img,.ml-camera-stage img{width:100%;height:auto;max-height:none;object-fit:contain;background:#fff}.ml-info-text p{color:#334155;max-width:1300px}.ml-info-text h2{margin-top:0}
@media(max-width:980px){.ml-station-top-sneznik,.ml-wind-grid-dual{grid-template-columns:1fr!important}.ml-measure-table,.ml-extreme-table{grid-template-columns:1fr}.ml-measure-row:nth-child(odd){border-right:0}.ml-cloud-row{grid-template-columns:1fr auto auto;gap:8px}.ml-cloud-row em,.ml-cloud-row b,.ml-cloud-row small{grid-column:auto}.ml-product-tabs button{font-size:.84rem;padding:8px 11px}}


/* Sprint 2.3 global refinements */
:root{--ml-container:1460px;--ml-page-gap:20px;--ml-btn-radius:999px}
.ml-container,.ml-topbar,.ml-footer-grid{width:min(var(--ml-container),calc(100% - 32px));margin-inline:auto}.ml-page-hero{padding:24px 0 12px}.ml-page-hero .ml-hero-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:linear-gradient(135deg,#ffffff 0%,#eef8ff 100%);border:1px solid var(--ml-border);border-radius:var(--ml-radius-lg);box-shadow:var(--ml-shadow);padding:22px 26px}.ml-hero-copy{min-width:0}.ml-hero-meta{margin:10px 0 0;color:#0d5f9c;font-size:.88rem;font-weight:700}.ml-section-desc{margin:4px 0 0;color:var(--ml-muted)}.ml-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.ml-info-grid .ml-card p{color:#475569}.ml-product-tabs button,.ml-product-mode button,.ml-btn,.ml-analysis-day-switch button{border-radius:var(--ml-btn-radius)!important}

/* Meteoalarm card */
.ml-meteoalarm-card .ml-kicker{margin-bottom:4px}.ml-meteoalarm-head h2{font-size:1rem!important;font-weight:680!important;line-height:1.25;margin:0!important}.ml-meteoalarm-desc{font-size:.88rem;line-height:1.35;color:#64748b;margin:6px 0 12px}.ml-alarm-images span{display:block;text-align:center;font-size:.74rem;font-weight:800;color:#0d5f9c;margin-bottom:5px}

/* Expanded Leaflet map */
body.ml-map-focus-active{overflow:hidden}body.ml-map-focus-active .ml-map-card{position:fixed!important;left:16px!important;right:16px!important;top:16px!important;bottom:16px!important;width:auto!important;max-width:none!important;z-index:99999;border-radius:22px;display:flex;flex-direction:column;padding:12px;box-shadow:0 24px 70px rgba(15,23,42,.32)}body.ml-map-focus-active .ml-map-head{display:none!important}body.ml-map-focus-active .ml-layer-tabs{display:flex!important;flex:0 0 auto;padding:2px 0 10px;margin:0}body.ml-map-focus-active .ml-map-wrap{flex:1 1 auto;min-height:0;border-radius:16px}body.ml-map-focus-active #map{height:100%!important}.ml-map-collapse-inside{display:none!important}body.ml-map-focus-active .ml-map-foot{flex:0 0 auto;margin-top:10px;background:#fff;border:1px solid var(--ml-border);border-radius:14px;padding:10px 12px}.leaflet-top.leaflet-right{top:12px!important;right:12px!important}.leaflet-bottom.leaflet-right{right:12px!important;bottom:12px!important}.leaflet-control img[src*="legenda_ZM"]{max-width:min(220px,42vw);height:auto}.leaflet-control-container .leaflet-top.leaflet-right .leaflet-control{margin-top:0;margin-right:0}.leaflet-control-container .leaflet-bottom.leaflet-right .leaflet-control{margin-bottom:0;margin-right:0}

/* Station pages */
.ml-station-primary{display:grid;gap:20px;align-items:start}.ml-station-primary-sneznik{grid-template-columns:minmax(320px,460px) minmax(0,1fr)}.ml-station-wind-duo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ml-wind-card-clean{background:#fff!important;padding:16px}.ml-wind-card-clean h3{font-weight:720;margin-bottom:12px}.ml-wind-card-clean img{background:#fff;max-height:380px;object-fit:contain}.ml-station-primary-sneznik .ml-wind-card-clean img{max-height:360px}.ml-station-measure-card{height:100%;padding:20px}.ml-measure-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border:1px solid var(--ml-border);border-radius:16px;overflow:hidden;background:#fff}.ml-measure-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px 13px;border-bottom:1px solid var(--ml-border);min-height:44px}.ml-measure-row:nth-child(odd){border-right:1px solid var(--ml-border)}.ml-measure-row span{color:#50627a;font-weight:650}.ml-measure-row strong{text-align:right;color:#102033}.ml-extreme-table{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ml-extreme-row{background:#f8fbfe;border:1px solid var(--ml-border);border-radius:16px;padding:14px;display:grid;gap:6px}.ml-extreme-row span{font-weight:700;color:#50627a}.ml-cloud-table{display:grid;gap:10px}.ml-cloud-row{display:grid;grid-template-columns:minmax(160px,1fr) 70px 42px minmax(90px,1fr) 90px 90px;gap:10px;align-items:center;border:1px solid var(--ml-border);background:#f8fbfe;border-radius:14px;padding:10px 12px}.ml-cloud-row img{width:32px;height:32px;object-fit:contain}.ml-cloud-row span{font-weight:700;color:#50627a}.ml-cloud-row em{font-style:normal;color:#50627a}.ml-graph-tabs,.ml-camera-tabs{display:flex;flex-wrap:wrap;gap:8px;overflow:visible}.ml-product-stage{background:#f5f8fc}.ml-product-stage img{background:#fff}.ml-camera-stage img,.ml-graph-stage img{width:100%;height:auto;object-fit:contain}.ml-info-text p{color:#334155;max-width:1300px}
@media(max-width:980px){.ml-page-hero .ml-hero-inner{flex-direction:column;padding:20px}.ml-info-grid{grid-template-columns:1fr}.ml-station-primary-sneznik,.ml-station-wind-duo,.ml-measure-table,.ml-extreme-table{grid-template-columns:1fr}.ml-measure-row:nth-child(odd){border-right:0}.ml-cloud-row{grid-template-columns:1fr auto auto}.ml-footer-grid{text-align:center}.ml-footer-brand img{margin-inline:auto}body.ml-map-focus-active .ml-map-card{left:8px!important;right:8px!important;top:8px!important;bottom:8px!important}.ml-product-grid a{text-align:center;justify-items:center}}

/* Sprint 2.4 targeted fixes: station detail layout, measurement panels, Leaflet controls */
.ml-hero-meta{margin-top:14px}
.ml-station-hero-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.ml-station-hero-meta span{display:inline-flex;align-items:center;border-radius:999px;background:#eaf5fc;color:#0d5f9c;padding:7px 11px;font-size:.82rem;font-weight:800}
.ml-station-hero-meta b{display:inline-flex;align-items:center;border-radius:999px;background:#fff;border:1px solid var(--ml-border);color:#334155;padding:7px 11px;font-size:.82rem;font-weight:750;box-shadow:0 6px 16px rgba(16,32,51,.045)}

/* Wind graphics are fixed 420 × 451 px; keep natural proportions and avoid oversized empty cards. */
.ml-station-primary-sneznik{grid-template-columns:420px minmax(0,1fr)!important;align-items:start!important}
.ml-station-primary-sneznik .ml-wind-card-natural{width:420px;max-width:100%;padding:0;border:0;box-shadow:none;background:#fff!important;border-radius:0}
.ml-wind-card-no-title h3{display:none!important}
.ml-station-primary-sneznik .ml-wind-card-natural img{display:block;width:100%;height:auto;max-height:none!important;border-radius:0;background:#fff!important}
.ml-station-wind-duo{display:grid;grid-template-columns:repeat(2,420px)!important;justify-content:center;gap:24px;align-items:start}
.ml-station-wind-duo .ml-wind-card-natural{width:420px;max-width:100%;padding:12px;background:#fff!important}
.ml-station-wind-duo .ml-wind-card-natural img{width:100%;height:auto;max-height:none!important;border-radius:8px;background:#fff!important}
.ml-station-wind-duo .ml-wind-card-natural h3{font-size:.95rem;margin:0 0 8px;text-align:center;color:#334155;font-weight:720}

/* Measurement tables: softer, professional data-list style instead of bordered spreadsheet look. */
.ml-measure-table{border:0!important;overflow:visible!important;background:transparent!important;gap:8px!important}
.ml-measure-row{border:1px solid var(--ml-border)!important;background:linear-gradient(180deg,#fff,#f8fbfe)!important;border-radius:12px!important;padding:10px 12px!important;min-height:44px!important;box-shadow:0 5px 16px rgba(16,32,51,.035)}
.ml-measure-row:nth-child(odd){border-right:1px solid var(--ml-border)!important}
.ml-measure-row span{font-size:.9rem;line-height:1.25;color:#52667d!important;font-weight:650!important}
.ml-measure-row strong{font-size:.94rem;color:#102033!important;font-weight:760!important;text-align:right;white-space:nowrap}
.ml-station-measure-card .ml-section-head{margin-bottom:14px}
.ml-extreme-row{box-shadow:0 5px 16px rgba(16,32,51,.035)}

/* Meteoalarm block text hierarchy */
.ml-meteoalarm-head h2{font-size:1.03rem!important;font-weight:700!important;letter-spacing:-.015em!important;line-height:1.28!important}
.ml-meteoalarm-head{margin-bottom:6px!important}
.ml-meteoalarm-desc{font-size:.86rem!important;color:#64748b!important;margin:4px 0 12px!important}

/* Leaflet controls: force animation title/slider to top-right; legend remains bottom-right. */
body.ml-map-focus-active .ml-map-card{left:18px!important;right:18px!important;top:18px!important;bottom:18px!important;width:auto!important;max-width:none!important;box-sizing:border-box!important}
.leaflet-control-container .leaflet-top.leaflet-right{top:12px!important;right:12px!important;left:auto!important;bottom:auto!important;z-index:900!important}
.leaflet-control-container .leaflet-bottom.leaflet-right{right:12px!important;bottom:12px!important;left:auto!important;top:auto!important;z-index:900!important}
.leaflet-control-container .leaflet-top.leaflet-right .leaflet-control{margin-top:0!important;margin-right:0!important;margin-bottom:8px!important;float:none!important;clear:both!important}
.leaflet-control-container .leaflet-bottom.leaflet-right .leaflet-control{margin-right:0!important;margin-bottom:0!important;float:none!important;clear:both!important}
.ml-leaflet-anim-control{background:rgba(255,255,255,.94)!important;border:1px solid rgba(15,23,42,.12)!important;border-radius:12px!important;box-shadow:0 8px 24px rgba(15,23,42,.12)!important;padding:8px 10px!important;color:#102033!important;max-width:min(320px,42vw)!important}
.ml-leaflet-anim-control input[type="range"]{width:min(280px,38vw)!important;display:block!important;margin-top:6px!important}
.leaflet-control img[src*="legenda_ZM"]{max-width:min(220px,42vw)!important;height:auto!important;display:block!important}

@media(max-width:980px){
  .ml-station-primary-sneznik{grid-template-columns:1fr!important}
  .ml-station-primary-sneznik .ml-wind-card-natural{width:min(420px,100%);margin-inline:auto}
  .ml-station-wind-duo{grid-template-columns:1fr!important;justify-items:center}
  .ml-station-wind-duo .ml-wind-card-natural{width:min(420px,100%)}
  .ml-station-hero-meta{gap:6px}.ml-station-hero-meta span,.ml-station-hero-meta b{font-size:.76rem;padding:6px 9px}
  .ml-measure-table{grid-template-columns:1fr!important}
  .ml-measure-row:nth-child(odd){border-right:1px solid var(--ml-border)!important}
  .ml-leaflet-anim-control{max-width:calc(100vw - 52px)!important}.ml-leaflet-anim-control input[type="range"]{width:220px!important;max-width:100%!important}
}

/* Sprint 2.5 — station meta and wind layout refinements */
.ml-station-update{
  display:grid;
  gap:4px;
  margin-top:12px;
  padding:0;
  color:#334155;
}
.ml-station-update strong{
  display:block;
  color:#102033;
  font-size:.96rem;
  font-weight:760;
  letter-spacing:-.01em;
}
.ml-station-update span{
  display:block;
  color:#64748b;
  font-size:.86rem;
  font-weight:650;
}
.ml-station-update span + span{margin-top:1px}
.ml-hero-meta{margin-top:0!important}

.ml-wind-card-natural{
  border:0!important;
  box-shadow:none!important;
  background:#fff!important;
  padding:0!important;
  border-radius:0!important;
}
.ml-wind-card-no-title h3{display:none!important}
.ml-wind-card-natural img{
  display:block;
  width:420px;
  max-width:100%;
  height:auto;
  background:#fff!important;
  border-radius:0!important;
  margin:0 auto;
}
.ml-station-primary-sneznik{
  grid-template-columns:420px minmax(0,1fr)!important;
  gap:28px!important;
  align-items:start!important;
}
.ml-station-primary-sneznik .ml-wind-card-natural{width:420px;max-width:100%}
.ml-station-wind-duo-natural{
  display:grid!important;
  grid-template-columns:repeat(2,420px)!important;
  justify-content:center!important;
  align-items:start!important;
  gap:32px!important;
}
.ml-station-wind-duo-natural .ml-wind-card-natural{width:420px;max-width:100%}

/* Slightly softer measurement tables */
.ml-measure-table{
  border:0!important;
  border-radius:0!important;
  overflow:visible!important;
  background:transparent!important;
  gap:8px!important;
}
.ml-measure-row{
  border:1px solid var(--ml-border)!important;
  border-radius:13px!important;
  background:#f8fbfe!important;
  min-height:42px!important;
}
.ml-measure-row:nth-child(odd){border-right:1px solid var(--ml-border)!important}
.ml-measure-row span{font-weight:650;color:#52637a!important}
.ml-measure-row strong{font-weight:760;color:#102033!important}

/* Leaflet control cosmetics only; DOM moving is handled by finite JS, no observer. */
.leaflet-top.leaflet-right{top:12px!important;right:12px!important}
.leaflet-bottom.leaflet-right{right:12px!important;bottom:12px!important}
.ml-leaflet-title-control{
  background:rgba(255,255,255,.94)!important;
  border:1px solid rgba(15,23,42,.12)!important;
  border-radius:12px!important;
  padding:8px 10px!important;
  box-shadow:0 12px 28px rgba(15,23,42,.14)!important;
  max-width:min(330px,calc(100vw - 80px));
}
.ml-leaflet-title-control input[type="range"]{max-width:250px;width:100%}
.leaflet-control img[src*="legenda_ZM"]{max-width:min(220px,42vw)!important;height:auto!important}

@media(max-width:980px){
  .ml-station-primary-sneznik{grid-template-columns:1fr!important}
  .ml-station-primary-sneznik .ml-wind-card-natural{width:min(420px,100%);margin-inline:auto}
  .ml-station-wind-duo-natural{grid-template-columns:1fr!important;gap:18px!important}
  .ml-station-wind-duo-natural .ml-wind-card-natural{width:min(420px,100%);margin-inline:auto}
  .ml-station-update strong{font-size:.92rem}.ml-station-update span{font-size:.81rem}
}


/* Sprint 2.8 — index/mobile/Leaflet refinements; continues current design, no core reset. */
html, body { max-width:100%; overflow-x:hidden; }
.ml-container, .ml-topbar, .ml-footer-grid { max-width:calc(100% - 32px); }
.ml-home-grid, .ml-content-grid, .ml-main-col, .ml-right-col, .ml-card, .ml-map-card, .ml-map-wrap, .ml-analysis-card, .ml-product-grid { min-width:0; }
.ml-card img, .ml-product-stage img, .ml-analysis-product-panel img { max-width:100%; height:auto; }

/* Keep action links as proper light-blue pills on mobile too. */
.ml-link, .ml-analysis-link, .ml-section-head > a, .ml-map-head > a {
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:34px;
  border-radius:999px!important;
  padding:8px 13px!important;
  background:#eaf5fc!important;
  color:#0d5f9c!important;
  font-weight:800!important;
  font-size:.86rem!important;
  line-height:1.1!important;
  text-decoration:none!important;
  white-space:nowrap;
}
.ml-link:hover, .ml-analysis-link:hover, .ml-section-head > a:hover, .ml-map-head > a:hover { background:#d9eefb!important; color:#0d5f9c!important; }

/* Leaflet timeline panel: one compact box with layer title, time and slider. */
.ml-map-wrap { position:relative; overflow:hidden; }
.ml-map-timeline-panel{
  position:absolute;
  top:12px;
  right:12px;
  z-index:810;
  display:none;
  width:min(300px, calc(100% - 24px));
  background:rgba(255,255,255,.96);
  border:1px solid rgba(15,23,42,.13);
  border-radius:14px;
  box-shadow:0 12px 30px rgba(15,23,42,.16);
  padding:9px 11px 10px;
  color:#102033;
  backdrop-filter:blur(6px);
}
.ml-map-timeline-panel.is-visible{display:block;}
.ml-map-timeline-title{font-size:.78rem;font-weight:850;letter-spacing:.045em;text-transform:uppercase;line-height:1.15;color:#102033;}
.ml-map-timeline-time{font-size:.72rem;font-weight:700;color:#64748b;margin-top:2px;line-height:1.15;}
.ml-map-timeline-slider{margin-top:7px;}
.ml-map-timeline-slider input[type="range"]{
  width:100%!important;
  height:4px!important;
  margin:0!important;
  padding:0!important;
  accent-color:var(--ml-primary);
  cursor:pointer;
}
.ml-map-timeline-slider input[type="range"]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:#dbeafe;}
.ml-map-timeline-slider input[type="range"]::-webkit-slider-thumb{width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--ml-primary);box-shadow:0 2px 7px rgba(21,130,199,.35);}
.ml-map-timeline-slider input[type="range"]::-moz-range-track{height:4px;border-radius:999px;background:#dbeafe;}
.ml-map-timeline-slider input[type="range"]::-moz-range-thumb{width:14px;height:14px;border:0;border-radius:50%;background:var(--ml-primary);box-shadow:0 2px 7px rgba(21,130,199,.35);}
.ml-legacy-map-control-hidden{display:none!important;}
.ml-radar-legend-control{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
.leaflet-bottom.leaflet-right .ml-radar-legend-control{margin:0 12px 12px 0!important;}
.leaflet-control img[src*="legenda_ZM"]{display:block!important;max-width:min(220px,42vw)!important;height:auto!important;}

/* Fullscreen map only on desktop/tablet. On phone the map is already large enough. */
@media(max-width:760px){
  .ml-focus-btn, .ml-map-collapse-inside{display:none!important;}
  body.ml-map-focus-active{overflow:auto!important;}
  body.ml-map-focus-active .ml-map-card{position:relative!important;inset:auto!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;z-index:auto!important;box-shadow:var(--ml-shadow)!important;padding:20px!important;display:block!important;}
  body.ml-map-focus-active .ml-map-head{display:flex!important;}
  body.ml-map-focus-active .ml-map-foot{display:flex!important;}
}

/* Mobile layout: no horizontal scroll, consistent cards/buttons. */
@media(max-width:760px){
  .ml-container,.ml-topbar,.ml-footer-grid{width:calc(100% - 20px)!important;max-width:calc(100% - 20px)!important;}
  .ml-home-grid,.ml-content-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;}
  .ml-side-stack,.ml-main-col,.ml-right-col{min-width:0!important;width:100%!important;}
  .ml-card,.ml-map-card{width:100%!important;max-width:100%!important;padding:16px!important;border-radius:18px!important;}
  .ml-map-wrap{height:70vh!important;min-height:480px!important;}
  .ml-layer-tabs{display:flex!important;gap:7px!important;overflow-x:auto!important;max-width:100%;padding-bottom:4px;-webkit-overflow-scrolling:touch;}
  .ml-layer-tabs button{flex:0 0 auto!important;white-space:nowrap!important;}
  .ml-map-timeline-panel{top:10px;right:10px;width:min(260px,calc(100% - 20px));padding:8px 10px;}
  .leaflet-control img[src*="legenda_ZM"]{max-width:160px!important;}
  .ml-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;}
  .ml-product-grid a{text-align:center!important;align-items:center!important;justify-items:center!important;padding:14px 10px!important;}
  .ml-product-grid a span{margin-inline:auto!important;}
  .ml-analysis-head,.ml-section-head,.ml-map-head{align-items:flex-start!important;}
  .ml-analysis-mobile-controls{display:grid!important;grid-template-columns:1fr!important;gap:6px!important;margin-bottom:12px!important;}
  .ml-analysis-mobile-controls label{font-size:.75rem;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.06em;}
  .ml-analysis-day-switch{display:flex!important;width:auto!important;gap:7px!important;}
  .ml-analysis-image-head{display:flex!important;flex-direction:column!important;gap:10px!important;align-items:flex-start!important;}
  .ml-analysis-image-head .ml-product-mode button{flex:0 0 auto!important;}
}


/* RC3: mobile menu overlay state moved from inline <style> for browser caching. */
@media (max-width: 900px) {
  body.ml-mobile-menu-open .leaflet-control-container,
  body.ml-mobile-menu-open .leaflet-control,
  body.ml-mobile-menu-open .ml-anim-control,
  body.ml-mobile-menu-open #animControl,
  body.ml-mobile-menu-open .ml-anim-btn,
  body.ml-mobile-menu-open #animButton,
  body.ml-mobile-menu-open .ml-anim-slider,
  body.ml-mobile-menu-open #animSlider,
  body.ml-mobile-menu-open .ml-anim-loading,
  body.ml-mobile-menu-open .timeline-box {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  .ml-dropdown a[aria-current="page"] {
    background: #eef7fd !important;
    color: #002050 !important;
  }

  .ml-dropdown a[aria-current="page"] strong,
  .ml-dropdown a[aria-current="page"] small {
    color: #002050 !important;
  }
}

/* ============================================================
   RC4 – accessibility / keyboard / reduced motion
   ============================================================ */

.ml-skip-link {
  position: fixed;
  top: 8px;
  left: 8px;
  z-index: 100000;
  padding: 10px 14px;
  border-radius: 10px;
  background: #fff;
  color: #002050;
  border: 2px solid #002050;
  font-weight: 800;
  text-decoration: none;
  transform: translateY(-150%);
  transition: transform .14s ease;
  box-shadow: 0 8px 24px rgba(15,23,42,.18);
}

.ml-skip-link:focus {
  transform: translateY(0);
}

/* Desktop dropdowns must also open from the keyboard. */
.ml-nav-item:focus-within .ml-dropdown {
  display: block;
}

/* A consistent, high-contrast keyboard focus indicator. */
body.ml2027 :is(
  a,
  button,
  input,
  select,
  textarea,
  [role="button"],
  [tabindex]:not([tabindex="-1"])
):focus-visible {
  outline: 3px solid rgba(0,32,80,.42) !important;
  outline-offset: 3px !important;
}

/* Active/current navigation is also perceivable without relying on colour alone. */
.ml-header .ml-nav > .ml-nav-item > a[aria-current="page"] {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 5px;
}

/* Aktivna podstran v dropdownu */
.ml-dropdown a[aria-current="page"] {
  background: #eef7fd;
  color: #002050 !important;
}
/* Screen-reader utility available globally, not only on individual pages. */
.ml-sr-only,
.sr-only,
.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Respect the operating-system motion preference globally. */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
    scroll-behavior: auto !important;
  }

  body.ml2027 *,
  body.ml2027 *::before,
  body.ml2027 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
    scroll-behavior: auto !important;
  }
}
@media (max-width: 980px) {
  .ml-dropdown a[aria-current="page"] {
    background: #eef7fd !important;
    color: #002050 !important;
  }

  .ml-dropdown a[aria-current="page"] strong,
  .ml-dropdown a[aria-current="page"] small {
    color: #002050 !important;
  }
}
