.legend-camera-viewfinder{width:28px!important;height:24px!important;background:rgba(6,10,16,.34)!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.72))!important}.legend-camera-viewfinder svg{width:28px!important;height:24px!important;display:block!important}
/* EV */
.ev-icon{background:transparent!important;border:0!important;overflow:visible!important}
.ev-icon .ev-marker-face{position:relative;height:22px;display:flex;align-items:center;justify-content:center;padding:0 5px 0 4px;color:#fff;border:0;border-radius:4px;box-sizing:border-box;overflow:visible;background:var(--ev-color,#7057d9)}
.ev-icon .ev-marker-face::after{content:'';position:absolute;right:-3px;top:7px;width:3px;height:8px;border-radius:0 2px 2px 0;background:var(--ev-color,#7057d9)}
.ev-icon .ev-marker-free{display:block;font:900 10.5px/1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.25px;white-space:nowrap;transform:translateY(.2px)}

/* lufi-icon-tier-css */
.camera-map-icon .camera-viewfinder-badge{width:30px!important;height:26px!important;display:grid!important;place-items:center!important;box-sizing:border-box!important;background:rgba(6,10,16,.34)!important;border:0!important;box-shadow:none!important;filter:drop-shadow(0 1px 2px rgba(0,0,0,.78))!important}.camera-map-icon .camera-viewfinder-badge svg{width:30px!important;height:26px!important;display:block!important}
.camera-map-icon-youtube .camera-youtube-badge{width:20px!important;height:16px!important;display:grid!important;place-items:center!important;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45));box-sizing:border-box}
.ev-icon .ev-marker-face{width:30px!important;height:20px!important;box-sizing:border-box}
.tomtom-incident-marker>div,.mzd-incident-marker>div{width:24px!important;height:24px!important;box-sizing:border-box}
.mzd-traffic-marker .mzd-svg-marker{width:24px!important;height:24px!important}
.mzd-vms-marker .mzd-svg-marker{width:26px!important;height:22px!important}
.standard-round-icon{width:24px!important;height:24px!important;font-size:12px!important}
.live-plane-icon .plane-rotator{width:28px!important;height:28px!important}
.live-ship-icon .ship-rotator,.live-aprs-icon>div{width:24px!important;height:24px!important}
.live-bus-icon .bus-rotator{width:30px!important;height:30px!important}
.live-train-icon .train-rotator{width:30px!important;height:30px!important}
.radiation-marker{min-height:20px!important;line-height:16px!important;font-size:11.5px!important;border:2px solid #00ff00!important;box-shadow:2px 2px 4px rgba(0,0,0,.5)!important}.weather-station-icon>div,.river-icon>div,.mzd-aqi-value{min-height:20px!important;line-height:16px!important;font-size:10.5px!important}
.poi-data-icon span{width:22px!important;height:22px!important}

/* lufi-measure-shapes-v71 */
/* Ujednolicona typografia i maksymalne wypelnienie powierzchni markera przez wartosc. */
.lufi-measure-temperature,.lufi-measure-noise,.lufi-measure-road,.lufi-measure-air,.lufi-measure-river,.ev-icon .ev-marker-face,.radiation-marker,.fuel-price-marker{font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums}
/* Temperatura: pionowa kapsuła, liczba nad °C. */
.lufi-measure-temperature{width:28px;height:40px;min-width:28px;min-height:40px;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;color:#fff;box-sizing:border-box;white-space:nowrap;padding:3px 1px;line-height:1}
.lufi-measure-temperature b{display:block;margin:0;padding:0;font:900 11.5px/12px system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:-.15px}.lufi-measure-temperature small{display:block;margin:0;padding:0;font:800 7px/7.5px system-ui,-apple-system,'Segoe UI',sans-serif;opacity:.98}
/* Halas: prawdziwy hex jak komorka plastra miodu. */
.lufi-measure-noise{width:38px;height:33px;display:block;box-sizing:border-box}
.lufi-measure-noise svg{display:block;width:38px;height:33px;overflow:visible}.lufi-measure-noise .noise-value{font:900 11.5px system-ui,-apple-system,'Segoe UI',sans-serif}.lufi-measure-noise .noise-unit{font:800 7px system-ui,-apple-system,'Segoe UI',sans-serif}
/* Warunki drogowe: wieksza wartosc wewnatrz znaku. */
.lufi-measure-road{width:44px;height:22px;border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;box-sizing:border-box;padding:0 3px}
.lufi-measure-road b{font:900 11.5px/1 system-ui,-apple-system,'Segoe UI',sans-serif;white-space:nowrap}
/* Jakosc powietrza: kolo z mocniej wypelnionym srodkiem. */
.lufi-measure-air{width:32px;height:32px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;box-sizing:border-box;text-align:center;padding-top:1px}
.lufi-measure-air b{font:900 11.5px/10.5px system-ui,-apple-system,'Segoe UI',sans-serif}.lufi-measure-air small{font:800 7px/6.8px system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:-.25px}
/* Rzeki: kropla z wycentrowanym poziomem. */
.lufi-measure-river{width:40px;height:42px;display:block;box-sizing:border-box}
.lufi-measure-river svg{display:block;width:40px;height:42px;overflow:visible}.lufi-measure-river .river-value{font:900 11.5px system-ui,-apple-system,'Segoe UI',sans-serif}.lufi-measure-river .river-unit{font:800 7px system-ui,-apple-system,'Segoe UI',sans-serif}
/* EV: bateria z wycentrowana wartoscia. */
.legend-measure-ev{position:relative;width:31px;height:20px;border-radius:4px;background:#7057d9;color:#fff;display:flex;align-items:center;justify-content:center;box-sizing:border-box}
.legend-measure-ev::after{content:'';position:absolute;right:-3px;top:6px;width:3px;height:8px;border-radius:0 2px 2px 0;background:#7057d9}.legend-measure-ev b{font:900 8.7px/1 system-ui,-apple-system,'Segoe UI',sans-serif}.ev-icon .ev-marker-face{width:var(--ev-w,31px)!important;height:22px!important}.ev-icon .ev-marker-free{font:900 11.5px/1 system-ui,-apple-system,'Segoe UI',sans-serif!important;letter-spacing:-.2px!important;transform:none!important}
/* Miniatury legendy odpowiadaja rzeczywistym markerom. */
.legend-measure-temp{width:22px;height:32px;border-radius:11px;background:#2a9d8f;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;padding:2px 0;box-sizing:border-box}.legend-measure-temp b{font:900 10px/10px system-ui,-apple-system,'Segoe UI',sans-serif}.legend-measure-temp small{font:800 6px/7px system-ui,-apple-system,'Segoe UI',sans-serif}
.legend-measure-noise{width:31px;height:27px;display:flex;align-items:center;justify-content:center}.legend-measure-noise svg{width:31px;height:27px;display:block}.legend-measure-noise .noise-value{font:900 9.3px system-ui,-apple-system,'Segoe UI',sans-serif}.legend-measure-noise .noise-unit{font:800 5.3px system-ui,-apple-system,'Segoe UI',sans-serif}
.legend-measure-road{width:38px;height:20px;border-radius:4px;background:#155f95;color:#fff;display:flex;align-items:center;justify-content:center}.legend-measure-road b{font:900 8.6px/1 system-ui,-apple-system,'Segoe UI',sans-serif;white-space:nowrap}
.legend-measure-air{width:25px;height:25px;border-radius:50%;background:#28a745;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}.legend-measure-air b{font:900 9px/8.5px system-ui,-apple-system,'Segoe UI',sans-serif}.legend-measure-air small{font:800 4.8px/5.7px system-ui,-apple-system,'Segoe UI',sans-serif;letter-spacing:-.15px}
.legend-measure-river{width:31px;height:33px;display:flex;align-items:center;justify-content:center}.legend-measure-river svg{width:31px;height:33px;display:block}.legend-measure-river .river-value{font:900 9.4px system-ui,-apple-system,'Segoe UI',sans-serif}.legend-measure-river .river-unit{font:800 5.2px system-ui,-apple-system,'Segoe UI',sans-serif}
/* Legenda dostaje tyle miejsca, by pokazac ksztalt zamiast go zgniatac. */
.layers-main-control .layer-legend-symbol{width:44px!important;min-width:44px!important;height:32px!important;margin-right:6px!important}
.layers-main-control .layer-legend-symbol>svg,.layers-main-control .layer-legend-symbol>span,.layers-main-control .layer-legend-symbol>i{max-width:42px!important;max-height:30px!important}
/* Sidebar: mozna przewinac ponizej statusu ZTM/MKS, takze na mobile/PWA. */
#sidebar{height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;overscroll-behavior-y:contain!important;-webkit-overflow-scrolling:touch!important;padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))!important;box-sizing:border-box!important;scroll-padding-bottom:110px!important}
#layers-container{padding-bottom:42px!important}
/* v440: jedna optyczna wielkosc glownej wartosci i jednostek w markerach pomiarowych. */
.lufi-measure-temperature b,.lufi-measure-noise .noise-value,.lufi-measure-road b,.lufi-measure-air b,.lufi-measure-river .river-value,.ev-icon .ev-marker-free,.radiation-marker,.fuel-price-marker b{font-size:var(--lufi-marker-value-size,11.5px)!important;font-weight:900!important}
.lufi-measure-temperature small,.lufi-measure-noise .noise-unit,.lufi-measure-air small,.lufi-measure-river .river-unit{font-size:var(--lufi-marker-unit-size,7px)!important;font-weight:800!important}

/* lufi-marker-no-shadow-css */
/* DivIcony i wszystkie wartosci wyswietlane bezposrednio na mapie. */
.leaflet-marker-pane .leaflet-marker-icon,
.leaflet-marker-pane .leaflet-marker-icon *{
    box-shadow:none!important;
    text-shadow:none!important;
}
/* Usuwa klasyczny osobny cien Leafleta pod markerem obrazkowym. */
.leaflet-shadow-pane .leaflet-marker-shadow,
.leaflet-shadow-pane img{
    display:none!important;
}
/* Drop-shadowy wpisane bezposrednio w SVG/div markerow. */
.leaflet-marker-pane [style*="drop-shadow"],
.leaflet-marker-pane [style*="drop-shadow("],
.live-bus-icon .bus-pin-shape,
.live-train-icon .train-rotator>svg,
.live-aprs-icon>div,
.camera-map-icon-youtube .camera-youtube-badge,
.mzd-noise-marker .mzd-noise-value,
#lufi-drive-fixed-marker,
.lufi-user-car{
    filter:none!important;
}
/* Jawne klasy wartosci, zeby pozniejsze reguly warstw nie przywrocily cienia. */
.weather-station-icon>div,
.river-icon>div,
.smog-icon>div,
.radiation-marker,
.mzd-aqi-value,
.mzd-road-value,
.mzd-noise-value,
.ev-marker-face,
.bus-line-label,
.train-type-label{
    box-shadow:none!important;
    text-shadow:none!important;
    filter:none!important;
}

/* lufi-mks-popup-color-v82 */
.stop-departure-row.mks{border-left-color:#0B4986!important}
.stop-departure-row.mks::before{background:#0B4986!important;border-color:#0B4986!important}
.stop-departure-row.mks .stop-provider-dot{background:#0B4986!important;border-color:#0B4986!important}
.stop-departure-row.mks [class*="provider"],
.stop-departure-row.mks [class*="network"]{border-color:#0B4986!important}

/* v95: ceny paliw - kompaktowo jak pozostale markery pomiarowe. */
.fuel-price-icon{background:transparent!important;border:0!important;overflow:visible!important}
.fuel-price-marker{height:22px;width:50px;padding:0 4px 0 3px;border-radius:4px;background:#111;color:#fff;display:flex;align-items:center;justify-content:center;gap:3px;box-sizing:border-box;border:1px solid rgba(255,255,255,.16);font-family:system-ui,-apple-system,'Segoe UI',sans-serif;font-variant-numeric:tabular-nums;white-space:nowrap}
.fuel-price-marker .fuel-kind{align-self:stretch;min-width:16px;margin:-1px 0 -1px -4px;padding:0 2px;border-radius:4px 0 0 4px;display:grid;place-items:center;font-size:6.8px;font-weight:800;line-height:1;color:#fff}
.fuel-price-marker b{font-size:11.5px;line-height:1;font-weight:900;letter-spacing:-.2px}
.fuel-price-marker.fuel-pb95 .fuel-kind{background:#2e7d32}.fuel-price-marker.fuel-pb98 .fuel-kind{background:#a61b1b}.fuel-price-marker.fuel-on .fuel-kind{background:#374151}.fuel-price-marker.fuel-lpg .fuel-kind{background:#1565c0}
.fuel-price-marker.is-aging{border-style:dashed}.fuel-price-marker.old-price{border-style:dashed;background:#292929}.fuel-price-marker.age-unknown{border-style:dotted}
.legend-fuel-price{height:20px;width:42px;border-radius:4px;background:#111;color:#fff;display:flex;align-items:center;gap:3px;overflow:hidden;font-family:system-ui,-apple-system,'Segoe UI',sans-serif}
.legend-fuel-price i{height:100%;min-width:15px;background:#2e7d32;display:grid;place-items:center;font-style:normal;font-size:6.5px;font-weight:800}.legend-fuel-price b{font:900 8.8px/1 system-ui,-apple-system,'Segoe UI',sans-serif}
.fuel-popup table{border-collapse:collapse;width:100%;font-size:12px}.fuel-popup td{padding:3px 6px 3px 0;vertical-align:top}.fuel-popup td:last-child{text-align:right}.fuel-popup td small{display:block;font-size:9px;line-height:1.2;opacity:.66;margin-top:1px}.fuel-row-old b{opacity:.84}
.fuel-type-settings{margin:6px 4px 2px;padding:7px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:rgba(0,0,0,.12)}
.fuel-type-settings .fuel-type-title{font-size:11px;opacity:.75;margin:0 0 5px 1px}.fuel-type-segment{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.fuel-type-segment button{min-width:0;height:28px;border:1px solid rgba(255,255,255,.16);border-radius:6px;background:rgba(255,255,255,.06);color:inherit;font:800 10px/1 system-ui;cursor:pointer}.fuel-type-segment button.active{background:var(--lufi-ui-accent,#2FBF71);color:#fff;border-color:var(--lufi-ui-accent-hi,#35D982)}.fuel-type-segment button:active{transform:translateY(1px)}
#layers-container > .fuel-type-settings{order:21!important;margin:8px 5px 3px!important;padding:8px!important;border:1px solid rgba(127,127,127,.28)!important;border-radius:9px!important;background:rgba(127,127,127,.08)!important;display:block!important;visibility:visible!important}
#layers-container > .fuel-type-settings .fuel-type-title{font-size:11px!important;font-weight:800!important;opacity:.82!important;margin:0 0 6px 1px!important}
#layers-container > .fuel-type-settings .fuel-type-segment{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:4px!important}
#layers-container > .fuel-type-settings button{display:block!important;min-width:0!important;height:29px!important;padding:0 3px!important}

/* v90: Google Places UI Kit dla cen paliw. Google renderuje własną treść i atrybucję. */
.fuel-google-btn{width:100%;margin:8px 0 2px;padding:7px 9px;border:1px solid rgba(66,133,244,.45);border-radius:7px;background:rgba(66,133,244,.12);color:inherit;font:800 11px/1.15 system-ui;cursor:pointer}
.fuel-google-btn:hover{background:rgba(66,133,244,.2)}.fuel-google-note{font-size:9.5px;opacity:.62;text-align:center}
#google-fuel-panel{position:fixed;z-index:10050;right:12px;top:68px;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 90px);overflow:hidden;border:1px solid rgba(127,127,127,.35);border-radius:12px;background:rgba(18,18,20,.96);color:#fff;box-shadow:0 10px 35px rgba(0,0,0,.35)}
#google-fuel-panel[hidden]{display:none!important}.google-fuel-head{height:42px;padding:0 9px 0 13px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.12);font:800 12px/1 system-ui}.google-fuel-close{width:32px;height:32px;border:0;border-radius:7px;background:rgba(255,255,255,.08);color:inherit;font:400 24px/1 system-ui;cursor:pointer}.google-fuel-body{max-height:calc(100dvh - 135px);overflow:auto;padding:8px}.google-fuel-details{display:block;width:100%;min-height:180px;color-scheme:dark}.google-fuel-loading,.google-fuel-error{padding:14px;font:12px/1.45 system-ui}.google-fuel-error small{opacity:.7}
@media(max-width:700px){#google-fuel-panel{left:8px;right:8px;top:auto;bottom:8px;width:auto;max-height:65dvh}.google-fuel-body{max-height:calc(65dvh - 44px)}}
