body.weather-stations-map-page .wp-site-blocks,body.weather-stations-map-page .wp-container,body.weather-stations-map-page .entry-content,body.weather-stations-map-page .site-content,body.weather-stations-map-page main,body.weather-stations-map-page article,body.weather-stations-fullwidth .wp-site-blocks,body.weather-stations-fullwidth .wp-container,body.weather-stations-fullwidth .entry-content,body.weather-stations-fullwidth .site-content,body.weather-stations-fullwidth main,body.weather-stations-fullwidth article{max-width:none;padding:0;margin:0;width:100%}body.weather-stations-map-page .weather-app-container,body.weather-stations-fullwidth .weather-app-container{width:100%;margin:0;padding:0;max-width:none;box-sizing:border-box}.weather-app-container{width:100%;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;color:#333;overflow-x:hidden;min-height:100vh;min-height:200vh;box-sizing:border-box;background:linear-gradient(to bottom,#28282c,#737373)}.weather-app-container *,.weather-app-container *:before,.weather-app-container *:after{box-sizing:border-box}.wp-block-post-title{display:none}.weather-app-header{position:relative;height:100vh;width:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.weather-app-header .header-content{position:relative;z-index:2;width:100%;max-width:1200px;padding:0 2rem;margin:0 auto;color:#eee}.weather-app-header .header-content .header-inner{display:flex;flex-direction:column;justify-content:space-between;align-items:center;margin-bottom:4rem;gap:2rem}@media (max-width: 768px){.weather-app-header .header-content .header-inner{flex-direction:column;text-align:center;margin-bottom:3rem;gap:1.5rem}}.weather-app-header .header-content .app-branding .app-title{font-size:clamp(2.5rem,5vw,4rem);font-weight:700;margin:0 0 1rem;color:#eee;text-shadow:0 2px 4px rgba(0,0,0,.5)}.weather-app-header .header-content .app-branding .app-subtitle{font-size:clamp(1rem,2vw,1.25rem);opacity:.8;margin:0;font-weight:300;color:#eee}.weather-app-header .header-content .header-stats{display:flex;gap:3rem}@media (max-width: 768px){.weather-app-header .header-content .header-stats{gap:2rem}}@media (max-width: 480px){.weather-app-header .header-content .header-stats{gap:1.5rem}}.weather-app-header .header-content .header-stats .stat-item{text-align:center}.weather-app-header .header-content .header-stats .stat-item .stat-number{display:block;font-size:clamp(2rem,4vw,3rem);font-weight:700;line-height:1;color:#eee}.weather-app-header .header-content .header-stats .stat-item .stat-label{display:block;font-size:.875rem;opacity:.7;margin-top:.5rem;text-transform:uppercase;letter-spacing:1px;color:#eee}.weather-app-header .header-content .scroll-indicator{text-align:center;opacity:.8;transition:all .3s ease}.weather-app-header .header-content .scroll-indicator:hover{opacity:1;transform:translateY(-2px)}.weather-app-header .header-content .scroll-indicator .scroll-arrow{margin-bottom:.5rem;animation:bounce 2s infinite}.weather-app-header .header-content .scroll-indicator .scroll-arrow svg{width:32px;height:32px}.weather-app-header .header-content .scroll-indicator .scroll-text{font-size:.875rem;text-transform:uppercase;letter-spacing:1px}.weather-app-main{height:100vh;width:100%;position:relative}.weather-app-main .map-container{height:100%;position:relative}.weather-app-main .map-container #map{width:100%;height:100%;background:#eee;position:relative}.weather-app-main .map-container #map.loading{background:linear-gradient(45deg,#eee,#28282c);background-size:200% 200%;animation:shimmer 2s ease-in-out infinite}.weather-app-main .map-container #map .map-placeholder{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:10}.weather-app-main .map-container #map .map-placeholder .placeholder-content{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:3rem 2rem;border-radius:16px;box-shadow:0 20px 40px #0000001a;border:1px solid rgba(255,255,255,.2)}.weather-app-main .map-container #map .map-placeholder .placeholder-content .loading-spinner{width:48px;height:48px;border:4px solid #EEEEEE;border-top:4px solid #28282C;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1.5rem}.weather-app-main .map-container #map .map-placeholder .placeholder-content h3{font-size:1.5rem;font-weight:600;margin:0 0 .5rem;color:#28282c}.weather-app-main .map-container #map .map-placeholder .placeholder-content p{font-size:1rem;color:#737373;margin:0}.weather-app-main .map-container #map .leaflet-container{height:100%;width:100%;border-radius:0;position:relative;z-index:1}.weather-app-main .map-container #map .leaflet-container .leaflet-control-container .leaflet-top,.weather-app-main .map-container #map .leaflet-container .leaflet-control-container .leaflet-bottom{z-index:900}.weather-app-main .map-container #map .leaflet-container .leaflet-popup{z-index:1000}.weather-app-main .map-container #map .leaflet-container .leaflet-marker-icon{z-index:600}.weather-app-main .map-container .map-gradient{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(90deg,#0f172ad9,#0f172a99 30%,#0f172a40,#0f172a00 80%);opacity:1;z-index:150;will-change:opacity}.weather-app-main .map-container .map-sidebar{position:absolute;top:0;bottom:0;left:0;width:clamp(240px,28vw,320px);background:#0c1322eb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:#e2e8f0;padding:2.5rem 2rem;display:flex;align-items:stretch;z-index:1200;pointer-events:auto;will-change:transform;backface-visibility:hidden}.weather-app-main .map-container .map-sidebar .sidebar-inner{display:flex;flex-direction:column;justify-content:space-between;width:100%;gap:2rem;position:relative;z-index:1300}.weather-app-main .map-container .map-sidebar .sidebar-status{font-size:.85rem;letter-spacing:.08em;text-transform:uppercase;color:#94a3b8e6}.weather-app-main .map-container .map-sidebar .sidebar-branding{display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1350}.weather-app-main .map-container .map-sidebar .sidebar-branding .sidebar-logo{font-size:clamp(1.5rem,2.4vw,2rem);font-weight:600;color:#f8fafc}.weather-app-main .map-container .map-sidebar .sidebar-branding .sidebar-description{font-size:1rem;line-height:1.5;color:#e2e8f0bf;margin:0}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info{display:flex;flex-direction:column;gap:1.5rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header{display:flex;flex-direction:column;gap:.5rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .unit-switcher{display:flex;gap:.5rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .unit-switcher .unit-btn{padding:.4rem .8rem;border:1px solid rgba(148,163,184,.3);background:#1e293b66;color:#94a3b8cc;border-radius:6px;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .unit-switcher .unit-btn:hover{background:#1e293b99;border-color:#94a3b880;color:#f8fafc}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .unit-switcher .unit-btn.active{background:#3b82f64d;border-color:#3b82f6;color:#60a5fa;box-shadow:0 0 0 1px #3b82f633}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon{cursor:pointer;padding:.5rem;border-radius:6px;transition:all .2s ease;color:#94a3b899}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon:hover{background:#1e293b66;color:#94a3b8e6;transform:scale(1.05)}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon.bookmarked{color:#fbbf24}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon.bookmarked svg{fill:currentColor;stroke:currentColor}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon.bookmarked:hover{color:#f59e0b}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .header-top .bookmark-icon svg{transition:all .2s ease}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .station-title{font-size:1rem;font-weight:600;color:#f8fafc;margin:0;line-height:1.3}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-header .station-id{font-size:.875rem;color:#94a3b8cc;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-location{display:flex;flex-direction:column;gap:.75rem;padding:1rem;background:#1e293b66;border-radius:8px;border:1px solid rgba(51,65,85,.3)}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-location .location-item{display:flex;justify-content:space-between;align-items:center}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-location .location-item .location-label{font-size:.875rem;color:#94a3b8e6;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-location .location-item .location-value{font-size:.875rem;color:#e2e8f0;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-description{font-size:.9rem;line-height:1.5;color:#e2e8f0cc;padding:.75rem;background:#0f172a4d;border-radius:6px;border-left:3px solid rgba(59,130,246,.5)}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta{display:flex;flex-direction:column;gap:.75rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta .meta-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta .meta-item .meta-label{color:#94a3b8e6;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta .meta-item .meta-value{color:#e2e8f0;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta .meta-item .meta-value.active{color:#10b981}.weather-app-main .map-container .map-sidebar .sidebar-branding .station-info .station-meta .meta-item .meta-value.inactive{color:#f59e0b}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data{display:flex;flex-direction:column;gap:1rem;padding:1rem;background:#1e293b66;border-radius:8px;border:1px solid rgba(51,65,85,.3)}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-location h4{margin:0;font-size:1rem;color:#e2e8f0;opacity:.9}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-main{text-align:center;padding:.5rem 0}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-main .temperature{font-size:2rem;font-weight:700;color:#10b981;line-height:1;margin-bottom:.25rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-main .weather-desc{font-size:.875rem;color:#e2e8f0cc;text-transform:capitalize}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-details{display:flex;flex-direction:column;gap:.5rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-details .detail-item{display:flex;justify-content:space-between;align-items:center;font-size:.875rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-details .detail-item .detail-label{color:#94a3b8e6}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-data .weather-details .detail-item .detail-value{color:#e2e8f0;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:2rem 1rem;color:#94a3b8e6}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-loading .loading-spinner{width:32px;height:32px;border:3px solid rgba(148,163,184,.3);border-top:3px solid #10b981;border-radius:50%;animation:spin 1s linear infinite}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-loading p{margin:0;font-size:.875rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-error{padding:1rem;text-align:center;color:#f87171;font-size:.875rem}.weather-app-main .map-container .map-sidebar .sidebar-branding .weather-error p{margin:0}.weather-app-main .map-container .map-sidebar .sidebar-footer{font-size:.9rem;color:#94a3b8d9;position:relative;z-index:1350}.weather-app-main .map-container .map-sidebar .sidebar-footer .my-locations-btn{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;background:#1e293b66;border:1px solid rgba(148,163,184,.2);border-radius:8px;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#94a3b8e6;font-weight:500}.weather-app-main .map-container .map-sidebar .sidebar-footer .my-locations-btn:hover{background:#1e293b99;border-color:#94a3b866;color:#f8fafc;transform:translateY(-1px)}.weather-app-main .map-container .map-sidebar .sidebar-footer .my-locations-btn svg{transition:all .2s ease}.weather-app-main .map-container .map-sidebar .sidebar-footer .my-locations-btn:hover svg{color:#60a5fa}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content{display:flex;flex-direction:column;height:100%;max-height:100vh;position:relative;z-index:1400}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-header{padding:2rem 2rem 1rem;border-bottom:1px solid rgba(148,163,184,.2)}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-header h2{font-size:1.5rem;font-weight:600;color:#f8fafc;margin:0 0 .5rem}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-header .saved-count{font-size:.875rem;color:#94a3b8b3}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list{flex:1;overflow-y:auto;padding:1rem 0}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;border-bottom:1px solid rgba(148,163,184,.1);cursor:pointer;transition:all .2s ease}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item:hover{background:#1e293b4d}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-content{flex:1}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-content .location-address{font-size:1rem;font-weight:500;color:#e2e8f0;margin-bottom:.25rem;line-height:1.3}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-content .location-coords{font-size:.8rem;color:#94a3b8cc;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;margin-bottom:.25rem}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-content .location-saved{font-size:.75rem;color:#94a3b899}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-actions{display:flex;gap:.5rem}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-actions .remove-location-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ef44441a;border:1px solid rgba(239,68,68,.2);border-radius:6px;cursor:pointer;transition:all .2s ease;color:#ef4444b3}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .saved-location-item .location-actions .remove-location-btn:hover{background:#ef444433;border-color:#ef444466;color:#f87171;transform:scale(1.05)}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .no-saved-locations{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#94a3b899}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .no-saved-locations svg{margin-bottom:1.5rem;opacity:.5}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .no-saved-locations h3{font-size:1.25rem;font-weight:600;color:#94a3b8cc;margin:0 0 .5rem}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .saved-locations-list .no-saved-locations p{font-size:.9rem;margin:0}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-footer{padding:1rem 2rem 2rem;border-top:1px solid rgba(148,163,184,.2)}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-footer .close-expanded-btn{width:100%;padding:.75rem;background:#3b82f633;border:1px solid rgba(59,130,246,.3);border-radius:8px;color:#60a5fa;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.weather-app-main .map-container .map-sidebar .expanded-sidebar-content .expanded-footer .close-expanded-btn:hover{background:#3b82f64d;border-color:#3b82f680;color:#93c5fd;transform:translateY(-1px)}@media (max-width: 900px){.weather-app-main .map-container .map-sidebar,.weather-app-main .map-container .map-gradient{display:none}}.weather-app-main .map-container .map-controls{position:absolute;top:2rem;right:2rem;z-index:1000;display:flex;flex-direction:column;gap:.75rem}.weather-app-main .map-container .map-controls .control-btn{width:48px;height:48px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1);border-radius:12px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0000001a}.weather-app-main .map-container .map-controls .control-btn:hover{background:#fff;transform:translateY(-2px);box-shadow:0 8px 24px #00000026}.weather-app-main .map-container .map-controls .control-btn:active{transform:translateY(0)}.weather-app-main .map-container .map-controls .control-btn svg{color:#737373;transition:color .3s ease}.weather-app-main .map-container .map-controls .control-btn:hover svg{color:#28282c}.weather-app-main .map-container .map-controls .control-btn#refresh-all-stations:hover svg{animation:spin .8s ease-in-out}.weather-popup .weather-title{font-weight:700;margin-bottom:10px;transform:translateY(0);transition:transform .3s ease}.weather-popup .weather-data .temperature{font-size:1.2em;color:#28282c;transition:all .3s ease}.weather-popup .weather-data .temperature:hover{color:#737373;transform:scale(1.05)}.weather-popup .weather-data .description{font-style:italic;margin:5px 0;opacity:.8;transition:opacity .3s ease;color:#737373}.weather-popup .weather-data .description:hover{opacity:1}.weather-popup .weather-data .details{font-size:.9em;color:#737373}.weather-popup .weather-data .details span{display:block;margin:2px 0;transform:translate(0);transition:transform .2s ease}.weather-popup .weather-data .details span:hover{transform:translate(5px)}.weather-popup.animate-in{animation:popupSlideIn .6s ease-out}.weather-station-pin{position:relative;cursor:pointer;transition:all .3s ease}.weather-station-pin:hover{transform:scale(1.1)}.weather-station-pin:before{content:"";position:absolute;top:-5px;left:-5px;right:-5px;bottom:-5px;background:#28282c33;border-radius:50%;transform:scale(0);transition:transform .3s ease}.weather-station-pin:hover:before{transform:scale(1)}.weather-station-pin.active:before{animation:pulse 2s ease-in-out infinite}@keyframes float-particles{0%{transform:translate(-50%) translateY(-50%) rotate(0)}to{transform:translate(-50%) translateY(-50%) rotate(360deg)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@keyframes shimmer{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes popupSlideIn{0%{opacity:0;transform:translateY(20px) scale(.8)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pulse{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.2);opacity:.3}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.weather-app-main .map-container .map-controls{top:1rem;right:1rem}.weather-app-main .map-container .map-controls .control-btn{width:44px;height:44px}.weather-app-main .map-container .map-controls .control-btn svg{width:18px;height:18px}}
