[data-local-city-cards]{max-width:1200px;margin:0 auto;padding:24px 16px}
[data-local-city-cards] .css-v8shvm{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
[data-local-city-cards] .css-1bt8ekc{min-width:0}
[data-local-city-cards] button{cursor:pointer}
.date-picker{border:0;cursor:pointer}.date-picker *{pointer-events:none}
[role="region"][aria-label="Map"],.css-1f8sh1y{position:relative;overflow:hidden;background:#e9eee7}
[role="region"][aria-label="Map"] .mapboxgl-canvas-container,[role="region"][aria-label="Map"] canvas{display:none!important}
.css-1f8sh1y>button{position:relative;z-index:3}
.local-map-tiles{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:1280px;height:768px;display:grid;grid-template-columns:repeat(5,256px);grid-template-rows:repeat(3,256px);z-index:1;pointer-events:none}
.local-map-tiles img{width:256px;height:256px;display:block}
.local-map-tiles img{filter:grayscale(.65) saturate(.45) brightness(1.06)}
.local-map-marker{position:absolute;z-index:2;transform:translate(-50%,-100%);width:25px;height:25px;border:2px solid #fff;border-radius:50%;background:#348f43;color:#fff;font-size:18px;font-weight:700;box-shadow:0 1px 5px #4448;cursor:pointer;pointer-events:auto}
.local-map-credit{position:absolute;right:5px;bottom:3px;z-index:2;background:#ffffffc9;font:10px Arial,sans-serif;color:#444}
.local-original-map{position:absolute;inset:0;z-index:20;display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}.local-original-map-recenter{position:absolute;right:10px;top:10px;z-index:21;width:38px;height:38px;border:0;background:transparent;cursor:pointer}
@media(max-width:900px){[data-local-city-cards] .css-v8shvm{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){[data-local-city-cards] .css-v8shvm{grid-template-columns:1fr}}
.local-city-date-dialog{position:fixed;inset:0;z-index:3000;background:#0007;display:grid;place-items:center;padding:15px}
.local-city-date-panel{position:relative;width:min(610px,100%);padding:30px;background:white;border-radius:22px;box-shadow:0 20px 60px #0003;display:grid;gap:16px;animation:localDateIn .25s ease both}
.local-city-date-panel h2{margin:0 0 3px;color:#2c7f39;font:800 28px Arial,sans-serif}
.local-date-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.local-date-summary button{display:grid;gap:5px;padding:12px 14px;border:1px solid #ccd2d9;border-radius:10px;background:#f8fafc;color:#5b616b;text-align:left;cursor:pointer}
.local-date-summary button.active{border-color:#2e9143;box-shadow:0 0 0 2px #2e914426;background:#fff}
.local-date-summary small{font-size:12px;font-weight:700}.local-date-summary strong{font-size:16px;text-transform:capitalize}
.local-calendar-head{display:grid;grid-template-columns:42px 1fr 42px;align-items:center;text-align:center;color:#3f454d;text-transform:capitalize}
.local-calendar-head button{width:38px;height:38px;border:0;border-radius:50%;background:#eef6ef;color:#287d3a;font-size:28px;cursor:pointer}
.local-calendar-week,.local-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}
.local-calendar-week{color:#858b93;font:700 12px Arial,sans-serif}
.local-calendar-grid>span,.local-calendar-grid button{aspect-ratio:1;display:grid;place-items:center;border:0;border-radius:50%;background:transparent;color:#444;font:14px Arial,sans-serif}
.local-calendar-grid button{cursor:pointer}.local-calendar-grid button:hover:not(:disabled){background:#e8f5eb}.local-calendar-grid button.selected{background:#318d43;color:#fff;font-weight:800}.local-calendar-grid button.range{border-radius:8px;background:#e7f4e9}.local-calendar-grid button:disabled{color:#c4c7cc;cursor:not-allowed}
.local-city-date-panel .local-city-date-apply{border:0;border-radius:25px;background:#ff7900;color:white;padding:13px;font:700 15px Arial,sans-serif;cursor:pointer}
.local-city-date-close{position:absolute;top:13px;right:18px;background:none;border:0;color:#666;font:28px Arial,sans-serif;cursor:pointer}
.local-city-date-error{margin:0;color:#b42318;font:13px Arial,sans-serif}
.local-fallback-card .css-q1kfhc{width:100%;height:205px;object-fit:cover}.local-fallback-card .css-1t0sxlh{display:flex;justify-content:space-between;align-items:end;padding-top:12px}.local-fallback-card .css-80y1bb{border:0;border-radius:26px;background:#ff7900;color:#fff;padding:12px 18px;font-weight:800;text-transform:uppercase;cursor:pointer}
[data-local-city-cards] .css-80y1bb{border-radius:28px!important;background:#ff7900!important;color:#fff!important;box-shadow:0 5px 14px #ff790033}
[data-local-city-cards] .css-80y1bb:hover{background:#e96e00!important;transform:translateY(-1px)}
@keyframes localDateIn{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:560px){.local-city-date-panel{padding:24px 18px}.local-date-summary{grid-template-columns:1fr}.local-calendar-grid>span,.local-calendar-grid button{font-size:13px}}
.local-static-date-dialog{display:none}.local-static-date-dialog:target{display:grid}.local-static-date-dialog .local-city-date-close{text-decoration:none}.local-native-date{display:grid;gap:8px;color:#545962;font:700 15px Arial,sans-serif}.local-native-date input{width:100%;box-sizing:border-box;border:1px solid #cbd1d8;border-radius:12px;padding:13px 15px;background:#f7f9fb;color:#444;font:16px Arial,sans-serif}.local-static-date-dialog .local-city-date-apply{display:block;text-align:center;text-decoration:none}
.local-date-hit{position:fixed!important;z-index:2147483000!important;display:flex!important;align-items:center!important;box-sizing:border-box!important;padding:0 16px!important;border:1px solid #d7dbe0!important;border-radius:10px!important;background:#fff!important;color:#666!important;text-decoration:none!important;cursor:pointer!important;overflow:hidden!important}.local-date-hit img{width:20px!important;height:20px!important;margin-right:10px!important}.local-date-hit *{pointer-events:none!important}
