:root{--map-layer-surface:rgba(5,12,10,.92);--map-layer-line:rgba(255,255,255,.1);--map-layer-primary:#ffd700;--map-layer-primary-rgb:255,215,0}
body[data-map-layer="services"]{--map-layer-surface:rgba(5,18,13,.94);--map-layer-primary:#18d886;--map-layer-primary-rgb:24,216,134}
body[data-map-layer="events"]{--map-layer-surface:rgba(20,7,25,.94);--map-layer-primary:#e65cff;--map-layer-primary-rgb:230,92,255}
body[data-map-layer="market"]{--map-layer-surface:rgba(8,13,22,.94);--map-layer-primary:#369bff;--map-layer-primary-rgb:54,155,255}
body[data-map-layer="stays"]{--map-layer-surface:rgba(26,14,6,.94);--map-layer-primary:#ff9d42;--map-layer-primary-rgb:255,157,66}
.map-layer-dock{position:fixed;z-index:900;left:50%;bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 36px);width:min(520px,calc(100% - 24px));transform:translateX(-50%);padding:8px;border:1px solid var(--map-layer-line);border-radius:23px;background:var(--map-layer-surface);box-shadow:0 18px 48px rgba(0,0,0,.48),0 0 0 1px rgba(var(--map-layer-primary-rgb),.04);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}
.map-layer-label{display:flex;align-items:center;justify-content:center;gap:6px;margin:0 0 6px;color:rgba(255,255,255,.55);font:700 9px/1.2 Poppins,sans-serif;letter-spacing:1.5px;text-transform:uppercase}.map-layer-label:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--map-layer-primary);box-shadow:0 0 10px var(--map-layer-primary)}
.map-layer-list{display:grid;grid-template-columns:repeat(5,1fr);gap:4px}.map-layer-option{position:relative;min-width:0;min-height:50px;border:0;border-radius:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;color:rgba(255,255,255,.58);background:transparent;font:700 9px/1.1 Poppins,sans-serif;text-decoration:none;cursor:pointer;transition:color .2s ease,background .2s ease,transform .24s cubic-bezier(.2,.8,.2,1),box-shadow .2s ease}.map-layer-option .material-icons-outlined{font-size:21px}.map-layer-option:hover{color:#fff;background:rgba(255,255,255,.055)}.map-layer-option:active{transform:scale(.95)}.map-layer-option.is-active{z-index:1;color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.12);box-shadow:inset 0 0 0 1px rgba(var(--map-layer-primary-rgb),.22),0 7px 18px rgba(var(--map-layer-primary-rgb),.1);transform:translateY(-2px) scale(1.06)}.map-layer-option.is-active:active{transform:translateY(-1px) scale(1.01)}.map-layer-option[aria-disabled="true"]{cursor:default;opacity:.42}.map-layer-option[aria-disabled="true"]:after{content:"Soon";position:absolute;right:5px;top:4px;padding:2px 4px;border-radius:99px;color:#d7ddd9;background:rgba(255,255,255,.08);font-size:6px;letter-spacing:.4px;text-transform:uppercase}
.map-layer-transition{position:fixed;z-index:20000;inset:0;display:grid;place-items:center;opacity:0;visibility:hidden;background:rgba(2,8,6,.82);backdrop-filter:blur(10px);transition:opacity .22s ease,visibility .22s ease;pointer-events:none}.map-layer-transition.is-visible{opacity:1;visibility:visible}.map-layer-transition span{color:var(--map-layer-primary);font:800 12px/1 Poppins,sans-serif;letter-spacing:1px;text-transform:uppercase}.map-layer-transition span:before{content:"";display:block;width:34px;height:34px;margin:0 auto 13px;border:2px solid rgba(var(--map-layer-primary-rgb),.22);border-top-color:var(--map-layer-primary);border-radius:50%;animation:map-layer-spin .65s linear infinite}@keyframes map-layer-spin{to{transform:rotate(360deg)}}
#mapLayerTransition{display:none!important}.leaflet-marker-pane,.leaflet-shadow-pane{transition:opacity .65s cubic-bezier(.2,.7,.2,1)}.map-layer-fade-out .leaflet-marker-pane,.map-layer-fade-out .leaflet-shadow-pane,.map-layer-fade-in .leaflet-marker-pane,.map-layer-fade-in .leaflet-shadow-pane{opacity:0}.map-layer-switching #contentSheet .room-list{opacity:.32;transform:translateY(7px)}#contentSheet .room-list{transition:opacity .58s cubic-bezier(.2,.7,.2,1),transform .58s cubic-bezier(.2,.7,.2,1)}.map-layer-dock[aria-busy="true"]{pointer-events:none}.map-layer-dock[aria-busy="true"] .map-layer-option.is-active{box-shadow:inset 0 0 0 1px rgba(var(--map-layer-primary-rgb),.28),0 0 22px rgba(var(--map-layer-primary-rgb),.2)}
body.map-layer-switching.map-view.nearby-feed-hidden #contentSheet,body.map-layer-switching.map-view.nearby-now-disabled #contentSheet{visibility:hidden!important;transition:none!important}
/* Accessibility and visual state must never diverge. Body classes can change
   during asynchronous lens activation, but aria-hidden is written directly by
   the Nearby state controller and is therefore the final closed-state guard. */
body.map-view #contentSheet[aria-hidden="true"]{transform:translateX(calc(-100% - 14px))!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}
#contentSheet[hidden]{display:none!important}
.city-drop{position:fixed;z-index:2147482500;inset:0;overflow:hidden;pointer-events:none}.city-resonance-canvas{position:fixed;z-index:0;inset:0;width:100vw;height:100vh;opacity:.9;mix-blend-mode:screen;will-change:contents}.city-drop-pin{position:fixed;z-index:2;left:50%;top:calc(100% - 72px);width:42px;height:42px;display:grid;place-items:center;border:2px solid rgba(255,255,255,.85);border-radius:50% 50% 50% 12px;color:#07100b;background:var(--city-drop-colour);box-shadow:0 12px 28px rgba(0,0,0,.5);transform:translate(-50%,-50%) rotate(-45deg)}.city-drop-pin span{font-size:24px;transform:rotate(45deg)}.city-drop-message{position:fixed;z-index:3;left:50%;bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 92px);display:flex;align-items:center;gap:8px;padding:11px 16px;border:1px solid color-mix(in srgb,var(--city-drop-colour) 36%,transparent);border-radius:999px;color:#fff;background:rgba(5,8,12,.94);box-shadow:0 16px 38px rgba(0,0,0,.5);opacity:0;transform:translate(-50%,12px);transition:opacity .32s ease,transform .4s cubic-bezier(.2,.8,.2,1);font:800 11px Poppins,sans-serif;white-space:nowrap}.city-drop-message i{font-size:17px;color:var(--city-drop-colour)}.city-drop-message.is-visible{opacity:1;transform:translate(-50%,0)}.bottom-nav #startVibeNavBtn:active .start-vibe-nav-icon{animation:city-create-pulse .42s ease}@keyframes city-create-pulse{50%{transform:scale(1.08);filter:brightness(1.2)}}@media(prefers-reduced-motion:reduce){.city-drop{display:none}.bottom-nav #startVibeNavBtn:active .start-vibe-nav-icon{animation:none}}
@media(max-width:520px){.map-layer-dock{bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 36px);padding:7px;border-radius:20px}.map-layer-option{min-height:46px;font-size:8px}.map-layer-option .material-icons-outlined{font-size:19px}}@media(prefers-reduced-motion:reduce){.map-layer-option,.map-layer-transition{transition:none}.map-layer-transition span:before{animation:none}}

/* Unified Services lens */
.services-map-active #nearbyNowSheet,.services-map-active .live-status-strip,.services-map-active #startVibeFab,.services-map-active #legendBtn,.services-map-active #filterPanel{display:none!important}
.services-category-rail{position:fixed;z-index:950;left:50%;top:142px;width:min(620px,calc(100% - 24px));transform:translateX(-50%);display:flex;gap:7px;padding:4px;overflow-x:auto;scrollbar-width:none}.services-category-rail[hidden]{display:none}.services-category-rail::-webkit-scrollbar{display:none}.services-category-rail button{flex:0 0 auto;border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:8px 12px;color:#aebeb5;background:rgba(5,18,13,.88);backdrop-filter:blur(12px);font:700 9px Poppins,sans-serif;cursor:pointer}.services-category-rail button.is-active{color:#03100a;border-color:#18d886;background:#18d886}
.proximate-service-marker-wrap{background:transparent!important;border:0!important}.proximate-service-marker{width:42px;height:42px;border-radius:15px 15px 15px 5px;display:grid;place-items:center;color:#03100a;background:linear-gradient(145deg,#61efb2,#18d886);border:2px solid rgba(255,255,255,.9);box-shadow:0 8px 24px rgba(0,0,0,.45),0 0 18px rgba(24,216,134,.35);transform:rotate(-8deg)}.proximate-service-marker span{font-size:20px;transform:rotate(8deg)}.service-map-tooltip{border:1px solid rgba(24,216,134,.22)!important;background:#07130e!important;color:#fff!important;border-radius:10px!important;box-shadow:0 8px 24px rgba(0,0,0,.4)!important;font:700 11px Poppins,sans-serif!important}.service-map-tooltip:before{border-top-color:#07130e!important}
.unified-service-sheet{position:fixed;z-index:10020;left:50%;bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 118px);width:min(440px,calc(100% - 24px));max-height:min(65vh,590px);overflow:auto;transform:translate(-50%,calc(100% + 190px));opacity:0;border:1px solid rgba(24,216,134,.2);border-radius:28px;background:rgba(6,18,13,.97);box-shadow:0 28px 75px rgba(0,0,0,.65);transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}.unified-service-sheet.is-open{transform:translate(-50%,0);opacity:1}.unified-service-close{position:absolute;z-index:2;right:12px;top:12px;width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.62);cursor:pointer}.unified-service-photo{display:block;width:100%;height:175px;object-fit:cover;background:#0b2118}.unified-service-photo.placeholder{display:grid;place-items:center;color:#18d886}.unified-service-photo.placeholder span{font-size:58px}.unified-service-copy{padding:20px}.unified-service-kicker{color:#18d886;font:800 10px Poppins,sans-serif;letter-spacing:1px;text-transform:uppercase}.unified-service-copy h2{margin:6px 0 10px;color:#fff;font:800 24px/1.12 Poppins,sans-serif}.unified-service-meta{display:flex;justify-content:space-between;gap:12px;color:#ffd34d;font:700 12px Poppins,sans-serif}.unified-service-meta strong{color:#18d886}.unified-service-copy p{margin:15px 0;color:#aabbb1;font:500 13px/1.6 Poppins,sans-serif}.unified-service-response{display:flex;align-items:center;gap:7px;color:#dce7e0;font:600 11px Poppins,sans-serif}.unified-service-response span{font-size:17px;color:#18d886}.unified-service-action{display:flex;justify-content:center;margin-top:18px;padding:13px;border-radius:14px;color:#03100a!important;background:#18d886;font:800 13px Poppins,sans-serif;text-decoration:none}
@media(max-width:520px){.services-category-rail{top:132px}.unified-service-sheet{bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 118px);max-height:58vh}.unified-service-photo{height:145px}.unified-service-copy h2{font-size:21px}}
.services-layer-status{position:fixed;z-index:960;left:50%;top:190px;transform:translateX(-50%);border:1px solid rgba(24,216,134,.2);border-radius:99px;padding:9px 14px;color:#b7c7be;background:rgba(5,18,13,.94);box-shadow:0 10px 30px rgba(0,0,0,.35);font:700 10px Poppins,sans-serif}.services-layer-status[data-type="error"]{color:#ff9c9c;border-color:rgba(255,90,90,.25)}
.unified-service-workflows{padding:0 20px 22px}.workflow-primary-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.workflow-primary-actions button{border:0;border-radius:14px;padding:11px 6px;display:flex;align-items:center;justify-content:center;gap:5px;color:#03100a;background:#18d886;font:800 11px Poppins,sans-serif;cursor:pointer}.workflow-primary-actions span{font-size:17px}.workflow-secondary-actions{display:flex;justify-content:center;gap:7px;margin:10px 0 18px}.workflow-secondary-actions button{border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:7px 10px;display:flex;align-items:center;gap:4px;color:#afbeb5;background:rgba(255,255,255,.04);font:700 9px Poppins,sans-serif;cursor:pointer}.workflow-secondary-actions button.is-saved{color:#ff7f9d;border-color:rgba(255,127,157,.25)}.workflow-secondary-actions span.material-icons-outlined{font-size:15px}.workflow-reviews{border-top:1px solid rgba(255,255,255,.08);padding-top:15px}.workflow-reviews h3{margin:0 0 10px;color:#fff;font:800 13px Poppins,sans-serif}.workflow-review{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.06)}.workflow-review strong{color:#ffd34d;font-size:11px}.workflow-review p{margin:3px 0!important;color:#d5dfd9!important;font-size:11px!important}.workflow-review small,.workflow-muted{color:#809087;font:500 9px Poppins,sans-serif}.workflow-manage-link{display:block;margin-top:14px;text-align:center;color:#8ae8bb!important;font:700 10px Poppins,sans-serif}
.service-workflow-dialog{position:fixed;z-index:22000;inset:0;padding:18px;display:grid;place-items:center;background:rgba(0,0,0,.78);backdrop-filter:blur(8px)}.service-workflow-dialog[hidden]{display:none}.service-workflow-card{position:relative;width:min(420px,100%);padding:25px;border:1px solid rgba(24,216,134,.22);border-radius:25px;background:#081710;box-shadow:0 30px 90px rgba(0,0,0,.7)}.service-workflow-x{position:absolute;right:12px;top:12px;width:34px;height:34px;border:0;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.08)}.workflow-kicker{color:#18d886;font:800 9px Poppins,sans-serif;letter-spacing:1px;text-transform:uppercase}.service-workflow-card h2{margin:7px 40px 18px 0;color:#fff;font:800 22px/1.2 Poppins,sans-serif}.workflow-form{display:grid;gap:12px}.workflow-form label{display:grid;gap:5px;color:#9eafa5;font:700 10px Poppins,sans-serif}.workflow-form input,.workflow-form textarea,.workflow-form select{width:100%;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:11px;color:#fff;background:rgba(255,255,255,.055);font:500 12px Poppins,sans-serif;outline:none}.workflow-form button{border:0;border-radius:13px;padding:12px;color:#03100a;background:#18d886;font:800 12px Poppins,sans-serif}.workflow-form button.danger{color:#fff;background:#bd3547}
.services-bookings-button{display:flex!important;align-items:center;gap:4px;color:#03100a!important;border-color:#ffd34d!important;background:#ffd34d!important}.services-bookings-button span{font-size:14px}.service-workflow-card:has(.unified-bookings-list){max-height:min(82vh,680px);overflow:auto}.unified-bookings-list{display:grid;gap:9px}.unified-booking{padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035)}.unified-booking-head{display:flex;justify-content:space-between;gap:12px}.unified-booking-head strong{display:block;color:#fff;font:800 12px Poppins,sans-serif}.unified-booking-head small{display:block;margin-top:3px;color:#85968c;font:500 8px Poppins,sans-serif}.unified-booking-head>span{flex:0 0 auto;color:#18d886;font:800 10px Poppins,sans-serif}.unified-booking p{margin:8px 0;color:#aebdb4;font:500 9px/1.5 Poppins,sans-serif}.unified-booking-status{color:#ffd34d;font:800 8px Poppins,sans-serif;text-transform:uppercase}.unified-booking-actions{display:flex;gap:6px;margin-top:9px}.unified-booking-actions:empty{display:none}.unified-booking-actions button{flex:1;border:0;border-radius:9px;padding:8px 5px;color:#03100a;background:#18d886;font:800 8px Poppins,sans-serif}.unified-booking-actions button.subtle-danger{color:#ff9aa8;background:rgba(255,80,100,.12)}.unified-bookings-empty{padding:28px;text-align:center;color:#83948a;font:600 11px Poppins,sans-serif}
.service-request-badge{min-width:18px;height:18px;padding:0 5px!important;display:inline-grid!important;place-items:center;border-radius:99px;color:#fff!important;background:#d72d4c;font:800 8px Poppins,sans-serif!important;box-shadow:0 0 0 2px #ffd34d}.service-request-badge[hidden]{display:none!important}.request-role-filter{display:flex;gap:5px;margin:-7px 0 12px}.request-role-filter button{flex:1;border:1px solid rgba(255,255,255,.08);border-radius:99px;padding:7px 5px;color:#84968b;background:transparent;font:700 8px Poppins,sans-serif;cursor:pointer}.request-role-filter button.is-active{color:#b6f4d5;border-color:rgba(24,216,134,.3);background:rgba(24,216,134,.1)}.request-status-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:13px}.request-status-tabs button{border:0;border-radius:11px;padding:9px 4px;color:#899a90;background:rgba(255,255,255,.045);font:700 8px Poppins,sans-serif;cursor:pointer}.request-status-tabs button.is-active{color:#03100a;background:#18d886}.request-status-tabs span{display:inline-grid;min-width:16px;height:16px;place-items:center;margin-left:2px;border-radius:99px;color:inherit;background:rgba(0,0,0,.14);font-size:7px}.request-history-link{display:block;margin-top:14px;text-align:center;color:#8ae8bb!important;font:700 9px Poppins,sans-serif;text-decoration:none}
/* Unified Events lens */
.events-period-rail{position:fixed;z-index:970;left:50%;top:145px;transform:translateX(-50%);display:flex;gap:6px;max-width:calc(100% - 24px);padding:6px;border:1px solid rgba(230,92,255,.18);border-radius:99px;background:rgba(20,7,25,.92);box-shadow:0 12px 35px rgba(0,0,0,.4);backdrop-filter:blur(18px)}.events-period-rail[hidden]{display:none}.events-period-rail button{border:0;border-radius:99px;padding:8px 13px;color:#cbb9cf;background:transparent;font:700 10px Poppins,sans-serif;white-space:nowrap;cursor:pointer}.events-period-rail button.is-active{color:#16051b;background:#e65cff}.proximate-event-marker{width:42px;height:42px;display:grid;place-items:center;border:2px solid #ffd34d;border-radius:50% 50% 50% 12px;transform:rotate(-45deg);color:#fff;background:linear-gradient(135deg,#e65cff,#7b2cff);box-shadow:0 7px 24px rgba(230,92,255,.48)}.proximate-event-marker span{font-size:20px;transform:rotate(45deg)}.events-layer-status{position:fixed;z-index:960;left:50%;top:198px;transform:translateX(-50%);padding:9px 14px;border:1px solid rgba(230,92,255,.2);border-radius:99px;color:#d8c7dc;background:rgba(20,7,25,.94);font:700 10px Poppins,sans-serif}.unified-event-sheet{position:fixed;z-index:10020;left:50%;bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 118px);width:min(440px,calc(100% - 24px));max-height:min(65vh,590px);overflow:auto;transform:translate(-50%,calc(100% + 190px));opacity:0;border:1px solid rgba(230,92,255,.22);border-radius:28px;background:rgba(20,7,25,.97);box-shadow:0 28px 75px rgba(0,0,0,.65);transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .2s ease}.unified-event-sheet.is-open{transform:translate(-50%,0);opacity:1}.unified-event-close{position:absolute;z-index:2;right:12px;top:12px;width:36px;height:36px;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(0,0,0,.62);cursor:pointer}.unified-event-photo{display:block;width:100%;height:185px;object-fit:cover;background:#21092a}.unified-event-photo.placeholder{display:grid;place-items:center;color:#e65cff}.unified-event-photo.placeholder span{font-size:58px}.unified-event-copy{padding:20px}.unified-event-kicker{color:#e65cff;font:800 10px Poppins,sans-serif;letter-spacing:1px;text-transform:uppercase}.unified-event-copy h2{margin:6px 0;color:#fff;font:800 24px/1.12 Poppins,sans-serif}.unified-event-copy strong{color:#ffd34d;font:700 12px Poppins,sans-serif}.unified-event-copy p{margin:14px 0;color:#c4b3c8;font:500 13px/1.6 Poppins,sans-serif}.unified-event-address{display:flex;align-items:center;gap:7px;color:#eadfed;font:600 11px Poppins,sans-serif}.unified-event-address span{font-size:17px;color:#e65cff}.unified-event-action{display:flex;width:100%;justify-content:center;margin-top:18px;padding:13px;border:0;border-radius:14px;color:#16051b!important;background:#e65cff;font:800 13px Poppins,sans-serif;text-decoration:none;cursor:pointer}

/* Unified Proximate map-marker language: one silhouette, contextual lens colour. */
.proximate-map-marker-wrap{background:transparent!important;border:0!important;overflow:visible!important}.proximate-map-pin{--pin-a:#ffd700;--pin-b:#ffb000;--pin-ink:#080808;position:relative;width:46px;height:50px;filter:drop-shadow(0 9px 9px rgba(0,0,0,.46));transition:transform .22s cubic-bezier(.2,.8,.2,1),filter .22s ease,opacity .2s ease;transform-origin:50% 88%}.proximate-map-pin.lens-services{--pin-a:#61efb2;--pin-b:#18d886;--pin-ink:#03100a}.proximate-map-pin.lens-events{--pin-a:#f078ff;--pin-b:#b42cff;--pin-ink:#fff}.proximate-map-pin.lens-market{--pin-a:#61b5ff;--pin-b:#369bff;--pin-ink:#fff}.proximate-map-pin.lens-stays{--pin-a:#ffbe72;--pin-b:#ff9d42;--pin-ink:#07100b}.proximate-map-pin-face{position:absolute;left:4px;top:2px;width:38px;height:38px;border:2px solid rgba(255,255,255,.92);border-radius:50% 50% 50% 12px;display:grid;place-items:center;color:var(--pin-ink);background:linear-gradient(145deg,var(--pin-a),var(--pin-b));box-shadow:inset 0 1px 2px rgba(255,255,255,.3),0 0 16px color-mix(in srgb,var(--pin-a) 40%,transparent);transform:rotate(-45deg)}.proximate-map-pin-glyph{width:19px;height:19px;font-size:20px!important;line-height:1;transform:rotate(45deg);stroke-width:2.7}.proximate-map-pin-lucide{display:block}.proximate-map-pin-badge,.proximate-map-pin-verified{position:absolute;z-index:2;display:grid;place-items:center;border:2px solid #07100b;border-radius:999px;font:900 8px Poppins,sans-serif;box-shadow:0 4px 10px rgba(0,0,0,.4)}.proximate-map-pin-badge{min-width:18px;height:18px;padding:0 4px;color:#06100b;background:#fff}.proximate-map-pin-badge.is-live{right:-1px;top:-3px;color:#fff;background:#d633ff}.proximate-map-pin-badge.is-nested{right:-2px;bottom:7px;color:#fff;background:#d633ff}.proximate-map-pin-verified{left:-3px;top:-3px;width:18px;height:18px;border-color:#07100b;color:#fff;background:#3188ff;font-size:13px!important}.proximate-map-pin.is-closed{opacity:.48;filter:grayscale(.38) drop-shadow(0 7px 7px rgba(0,0,0,.4))}.proximate-map-pin.is-selected,.proximate-map-marker-wrap:hover .proximate-map-pin{transform:translateY(-4px) scale(1.1);filter:drop-shadow(0 13px 12px rgba(0,0,0,.52)) brightness(1.08)}
/* Contextual lens personalities around one persistent map. */
body[data-map-layer="venues"]{--map-layer-primary:#ffd700;--map-layer-primary-rgb:255,215,0}body[data-map-layer="services"] #searchContainer{border-color:rgba(24,216,134,.32);box-shadow:0 12px 34px rgba(0,0,0,.38),0 0 0 1px rgba(24,216,134,.08)}body[data-map-layer="events"] #searchContainer{border-color:rgba(230,92,255,.32);box-shadow:0 12px 34px rgba(0,0,0,.38),0 0 0 1px rgba(230,92,255,.08)}body[data-map-layer="venues"] #searchContainer{border-color:rgba(255,215,0,.28)}.services-category-rail:before{content:"Nearby services";flex:0 0 auto;align-self:center;padding:0 4px;color:#8ae8bb;font:800 8px Poppins,sans-serif;letter-spacing:.5px;text-transform:uppercase}.events-period-rail:before{content:"Explore events";align-self:center;padding:0 5px;color:#ed9cff;font:800 8px Poppins,sans-serif;letter-spacing:.5px;text-transform:uppercase}.events-map-active #contentSheet,.events-map-active #nearbySheetRestoreBtn,.events-map-active .live-status-strip{display:none!important}
/* Shared contextual Nearby and Live surfaces for non-venue lenses. */
.lens-context-shell[hidden]{display:none}.lens-context-handle{position:fixed;z-index:985;top:50%;min-height:94px;width:34px;border:1px solid rgba(var(--map-layer-primary-rgb),.3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--map-layer-primary);background:var(--map-layer-surface);box-shadow:0 12px 35px rgba(0,0,0,.48);backdrop-filter:blur(16px);cursor:pointer}.lens-context-handle.nearby{left:0;border-left:0;border-radius:0 14px 14px 0;transform:translateY(-62%)}.lens-context-handle.live{right:0;border-right:0;border-radius:14px 0 0 14px;transform:translateY(42%)}.lens-context-handle>i{font-size:17px}.lens-context-handle>span{font:800 7px Poppins,sans-serif;letter-spacing:.3px;writing-mode:vertical-rl;transform:rotate(180deg)}.lens-context-handle>b{min-width:16px;height:16px;display:grid;place-items:center;border-radius:50%;color:#06100b;background:var(--map-layer-primary);font:800 7px Poppins,sans-serif}.lens-context-panel{position:fixed;z-index:10015;left:50%;bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 118px);width:min(420px,calc(100% - 40px));max-height:min(56vh,520px);overflow:auto;transform:translateX(-50%);padding:18px;border:1px solid rgba(var(--map-layer-primary-rgb),.24);border-radius:24px;color:#fff;background:var(--map-layer-surface);box-shadow:0 28px 75px rgba(0,0,0,.68);backdrop-filter:blur(22px)}.lens-context-panel[hidden]{display:none}.lens-context-panel header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:13px}.lens-context-panel header small{color:var(--map-layer-primary);font:800 8px Poppins,sans-serif;letter-spacing:1px;text-transform:uppercase}.lens-context-panel header h2{margin:4px 0 0;font:800 20px/1.2 Poppins,sans-serif}.lens-context-panel header button{width:32px;height:32px;border:0;border-radius:50%;display:grid;place-items:center;color:#fff;background:rgba(255,255,255,.08)}.lens-context-list{display:grid;gap:7px}.lens-context-list>button{width:100%;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:10px;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;color:#fff;background:rgba(255,255,255,.035);text-align:left}.lens-context-list>button>span:first-child{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.1)}.lens-context-list strong,.lens-context-list small{display:block}.lens-context-list strong{font:800 11px Poppins,sans-serif}.lens-context-list small{margin-top:3px;color:#9ca7a0;font:500 8px Poppins,sans-serif}.lens-context-list>button>i{font-size:17px;color:var(--map-layer-primary)}.lens-context-empty{padding:30px 14px;text-align:center;color:#8e9a93;font:600 10px/1.5 Poppins,sans-serif}.nearby-sheet-handle,.live-signals-handle{border-color:rgba(var(--map-layer-primary-rgb),.3)!important;color:var(--map-layer-primary)!important}.content-sheet,.live-signals-panel{border-color:rgba(var(--map-layer-primary-rgb),.18)!important}.nearby-now-kicker,.live-signals-head>span{color:var(--map-layer-primary)!important}@media(max-width:520px){.lens-context-handle{width:31px}.lens-context-panel{bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom,0px) + 118px);width:calc(100% - 28px);max-height:52vh;border-radius:21px}}
/* One set of handles and sheets changes with the active lens. */
.lens-context-shell{display:none!important}.nearby-now-tabs[hidden]{display:none!important}.contextual-lens-active #contentSheet:not([hidden]),.contextual-lens-active #nearbySheetRestoreBtn:not([hidden]),.contextual-lens-active #liveSignalsSection:not([hidden]){display:flex!important}.contextual-lens-active #contentSheet{border-color:rgba(var(--map-layer-primary-rgb),.22)!important}.contextual-lens-active #liveSignalsSection{border-color:rgba(var(--map-layer-primary-rgb),.22)!important}.contextual-lens-active .nearby-sheet-handle,.contextual-lens-active .live-signals-handle{border-color:rgba(var(--map-layer-primary-rgb),.36)!important;color:var(--map-layer-primary)!important;background:var(--map-layer-surface)!important}.contextual-lens-active .nearby-sheet-handle .dashboard-edge-handle-label,.contextual-lens-active .live-signals-handle .dashboard-edge-handle-label{color:var(--map-layer-primary)!important}.contextual-lens-active .nearby-now-kicker,.contextual-lens-active .live-signals-head>span,.contextual-lens-active #liveSignalCount{color:var(--map-layer-primary)!important}.contextual-lens-active #topNavPeekHandle{border-color:rgba(var(--map-layer-primary-rgb),.42)!important;color:var(--map-layer-primary)!important;box-shadow:0 8px 24px rgba(var(--map-layer-primary-rgb),.13)!important}.contextual-lens-active #topNavPeekHandle:before{background:var(--map-layer-primary)!important}.contextual-lens-active .hub-zone-trigger{border-color:rgba(var(--map-layer-primary-rgb),.16)!important}.contextual-lens-active .hub-label{color:var(--map-layer-primary)!important}.lens-context-row{width:100%;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:10px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;color:#fff;background:rgba(255,255,255,.035);text-align:left;cursor:pointer}.lens-context-row>span:first-child{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.1)}.lens-context-row strong,.lens-context-row small{display:block}.lens-context-row strong{font:800 11px Poppins,sans-serif}.lens-context-row small{margin-top:3px;color:#9ca7a0;font:500 8px Poppins,sans-serif}.lens-context-row>i{font-size:17px;color:var(--map-layer-primary)}.lens-context-mode .room-list,.lens-context-mode .live-signals-list{display:grid;gap:7px}.lens-context-mode .lens-context-empty{padding:28px 12px;text-align:center;color:#8e9a93;font:600 10px/1.5 Poppins,sans-serif}
/* Live Signals is controlled only from Filters; it has no edge handle. */
#liveSignalsHandle,.live-signals-handle{display:none!important}.contextual-lens-active #liveSignalsHandle{display:none!important}
/* Override the legacy yellow arrow with the active lens token. */
body[data-map-layer] #topNavPeekHandle .material-icons-outlined{color:var(--map-layer-primary)!important;text-shadow:0 0 10px rgba(var(--map-layer-primary-rgb),.42)!important}
/* Keep service categories below the Live Signals surface. */
.services-category-rail{top:calc(var(--shell-top-nav,136px) + 76px + env(safe-area-inset-top))!important}.services-layer-status{top:calc(var(--shell-top-nav,136px) + 124px + env(safe-area-inset-top))!important}@media(max-width:520px){.services-category-rail{top:calc(var(--shell-top-nav,136px) + 68px + env(safe-area-inset-top))!important}.services-layer-status{top:calc(var(--shell-top-nav,136px) + 116px + env(safe-area-inset-top))!important}}
/* Shared placement contract for Services, Events, Market, Stays and future lens filters. */
.map-layer-filter-rail{top:calc(var(--shell-top-nav,136px) + 66px + env(safe-area-inset-top))!important}.services-layer-status,.events-layer-status{top:calc(var(--shell-top-nav,136px) + 124px + env(safe-area-inset-top))!important}@media(max-width:520px){.map-layer-filter-rail{top:calc(var(--shell-top-nav,136px) + 58px + env(safe-area-inset-top))!important}.services-layer-status,.events-layer-status{top:calc(var(--shell-top-nav,136px) + 116px + env(safe-area-inset-top))!important}}
/* Map utilities sit above the persistent Show me dock. */
body.map-view #sosBtn,body.map-view #myLocationBtn{bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom) + 148px)!important}@media(max-width:520px){body.map-view #sosBtn,body.map-view #myLocationBtn{bottom:calc(var(--shell-bottom-nav,72px) + env(safe-area-inset-bottom) + 140px)!important}}
.service-workflow-dialog:not([hidden]){z-index:2147483000!important}
.workflow-form select{appearance:none;-webkit-appearance:none;padding-right:42px;background-color:rgba(255,255,255,.055);background-image:linear-gradient(45deg,transparent 50%,#18d886 50%),linear-gradient(135deg,#18d886 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}.workflow-form select option{color:#fff;background:#102119}
.service-workflow-dialog:not([hidden]){animation:serviceWorkflowBackdropIn .22s ease-out both}.service-workflow-dialog:not([hidden]) .service-workflow-card{animation:serviceWorkflowCardIn .38s cubic-bezier(.18,.82,.2,1) both}@keyframes serviceWorkflowBackdropIn{from{opacity:0}to{opacity:1}}@keyframes serviceWorkflowCardIn{from{opacity:0;transform:translateY(22px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
.service-workflow-card:has(#unifiedCreateServiceForm){max-height:min(88vh,760px);overflow:auto}.workflow-provider-type{margin:0;padding:10px;border:1px solid rgba(255,255,255,.1);border-radius:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.workflow-provider-type legend{padding:0 5px;color:#9eafa5;font:700 10px Poppins,sans-serif}.workflow-provider-type label{display:flex;align-items:center;gap:6px}.workflow-provider-type input{width:auto}.workflow-form [data-create-address][hidden]{display:none}
.workflow-create-mode{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:-7px 0 14px}.workflow-create-mode button{border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:10px;color:#9eafa5;background:rgba(255,255,255,.04);font:800 10px Poppins,sans-serif}.workflow-create-mode button.is-active{border-color:#18d886;color:#03100a;background:#18d886}.workflow-form [data-create-condition][hidden]{display:none}
.workflow-photo-field{display:grid;gap:6px;color:#9eafa5;font:700 10px Poppins,sans-serif}.workflow-photo-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.workflow-photo-slot{position:relative;aspect-ratio:1;border:1px dashed rgba(24,216,134,.42);border-radius:11px;display:grid;place-items:center;overflow:hidden;color:#18d886;background:rgba(24,216,134,.06)}.workflow-photo-slot img{width:100%;height:100%;object-fit:cover}.workflow-photo-slot.has-photo>i{position:absolute;right:3px;bottom:3px;padding:3px;border-radius:50%;color:#fff;background:rgba(0,0,0,.72);font-size:13px}.workflow-prxm-preview{display:block;margin-top:2px;color:#18d886!important}
.services-category-rail{display:none!important}.service-nearby-explore{display:grid;gap:10px;margin-bottom:12px}.service-nearby-explore form{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;padding:7px 8px;border:1px solid rgba(24,216,134,.2);border-radius:14px;background:rgba(255,255,255,.04)}.service-nearby-explore form>span{color:#18d886}.service-nearby-explore input{min-width:0;border:0;outline:0;color:#fff;background:transparent;font:600 11px Poppins,sans-serif}.service-nearby-explore form button,.service-explore-head button{border:0;border-radius:9px;padding:7px 9px;color:#03100a;background:#18d886;font:800 8px Poppins,sans-serif}.service-explore-head{display:flex;align-items:center;justify-content:space-between}.service-explore-head strong{font:800 11px Poppins,sans-serif}.service-explore-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.service-explore-chip{flex:0 0 auto;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:8px;display:grid;grid-template-columns:auto auto auto;align-items:center;gap:5px;color:#aebdb4;background:rgba(255,255,255,.035);font:700 8px Poppins,sans-serif}.service-explore-chip i{font-size:15px;color:#18d886}.service-explore-chip b{color:#718078;font-size:7px}.service-explore-chip.is-active{border-color:#18d886;color:#03100a;background:#18d886}.service-explore-chip.is-active i{color:#03100a}.service-nearby-explore>small{color:#18d886;font:800 8px Poppins,sans-serif;letter-spacing:.6px;text-transform:uppercase}
.events-period-rail{display:none!important}.event-nearby-explore form{border-color:rgba(230,92,255,.25)}.event-nearby-explore form>span,.event-nearby-explore>small{color:#e65cff}.event-nearby-explore form button{background:#e65cff}.event-nearby-explore .service-explore-chip i{color:#e65cff}.event-nearby-explore .service-explore-chip.is-active{border-color:#e65cff;background:#e65cff}.event-nearby-explore .service-explore-chip.is-active i{color:#16051b}.venue-nearby-explore form{border-color:rgba(255,215,0,.24)}.venue-nearby-explore form>span{color:#ffd700}.venue-nearby-explore form button{background:#ffd700}body.map-view #searchContainer.dashboard-search-shell{display:none!important}body.map-view #dashboardSearchResults{display:none!important}
/* Nearby owns the highest non-dialog layer while open. Its edge handle only
   exists while the sheet is closed, never inside compact or expanded views. */
body.nearby-drawer-open #contentSheet,body.list-view #contentSheet{z-index:2147482000!important}body.nearby-drawer-open #nearbySheetRestoreBtn,body.list-view #nearbySheetRestoreBtn,#nearbySheetRestoreBtn[hidden]{display:none!important}
.nearby-close-btn{border-color:rgba(var(--map-layer-primary-rgb),.35)!important;border-radius:50%!important;color:var(--map-layer-primary)!important;background:rgba(var(--map-layer-primary-rgb),.1)!important}.nearby-close-btn:hover,.nearby-close-btn:focus-visible{background:rgba(var(--map-layer-primary-rgb),.2)!important;box-shadow:0 0 0 3px rgba(var(--map-layer-primary-rgb),.1)}
#myLocationBtn{transition:transform .22s ease,box-shadow .22s ease!important}#myLocationBtn.is-locating{color:var(--map-layer-primary)!important;box-shadow:0 0 0 5px rgba(var(--map-layer-primary-rgb),.12),0 0 24px rgba(var(--map-layer-primary-rgb),.45)!important;animation:proximate-location-seeking 1s ease-in-out infinite}@keyframes proximate-location-seeking{0%,100%{transform:scale(1)}50%{transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){#myLocationBtn.is-locating{animation:none}}
/* Zone identity and live counts speak in the active map lens colour. */
body[data-map-layer] #currentHubName,body[data-map-layer] #hubShellLiveCount,body[data-map-layer] #hubShellPeopleCount,body[data-map-layer] .hub-name-row>.material-icons-outlined{color:var(--map-layer-primary)!important}body[data-map-layer] .hub-live-chip,body[data-map-layer] #hubShellPeopleCount{border:1px solid rgba(var(--map-layer-primary-rgb),.2);background:rgba(var(--map-layer-primary-rgb),.1)!important}body[data-map-layer] .hub-zone-trigger:hover #currentHubName{color:var(--map-layer-primary)!important}
body[data-map-layer] #hubZoneModal .hub-zone-name,body[data-map-layer] #hubZoneModal .hub-zone-count{color:var(--map-layer-primary)!important}body[data-map-layer] #hubZoneModal .hub-zone-count{border:1px solid rgba(var(--map-layer-primary-rgb),.22);background:rgba(var(--map-layer-primary-rgb),.12)!important}body[data-map-layer] #hubZoneModal .hub-zone-option.is-selected{border-color:rgba(var(--map-layer-primary-rgb),.72)!important;background:rgba(var(--map-layer-primary-rgb),.12)!important}body[data-map-layer] #hubZoneModal .hub-zone-list{scrollbar-color:rgba(var(--map-layer-primary-rgb),.34) transparent!important}body[data-map-layer] #hubZoneModal .hub-zone-list::-webkit-scrollbar-thumb{background:rgba(var(--map-layer-primary-rgb),.34)!important}
body[data-map-layer] #hubContextLabel{color:#fff!important}body[data-map-layer] #myLocationBtn{border:1px solid rgba(255,255,255,.9)!important;border-radius:50%!important;color:var(--map-layer-primary)!important;background:rgba(5,7,12,.88)!important}body[data-map-layer] #myLocationBtn .material-icons-outlined{color:var(--map-layer-primary)!important}
body[data-map-layer] .my-location-dot{background:var(--map-layer-primary)!important;border-color:#fff!important;box-shadow:0 0 8px rgba(var(--map-layer-primary-rgb),.9),0 0 24px rgba(var(--map-layer-primary-rgb),.62)!important;transition:background .24s ease,box-shadow .24s ease}

/* Proximate lens marker: one geometry, five contextual colours. */
.proximate-marker{--marker-color:#ffd400;--marker-ink:#08080d;position:relative;width:42px;height:51px;transform-origin:50% 100%;will-change:transform,filter;transition:transform 220ms cubic-bezier(.2,.8,.2,1),filter 220ms ease,opacity 200ms ease}
.proximate-marker.lens-events,.proximate-marker.lens-market,.proximate-marker.lens-stays{--marker-ink:#fff}.proximate-marker__body{position:absolute;top:0;left:0;width:42px;height:42px;display:grid;place-items:center;color:var(--marker-ink);background:var(--marker-color);border:2px solid rgba(255,255,255,.95);border-radius:50% 50% 50% 44%;box-shadow:0 0 0 3px rgba(0,0,0,.42),0 5px 14px rgba(0,0,0,.55),0 0 17px color-mix(in srgb,var(--marker-color) 72%,transparent);transform:rotate(-45deg)}
.proximate-marker__glyph{display:grid;place-items:center;width:100%;height:100%;transform:rotate(45deg)}.proximate-marker__shadow{position:absolute;bottom:-2px;left:50%;width:20px;height:6px;border-radius:50%;background:rgba(0,0,0,.48);filter:blur(3px);transform:translateX(-50%)}.proximate-marker .proximate-map-pin-glyph{width:19px;height:19px;font-size:20px!important;line-height:1;transform:none;stroke-width:2.7}
.proximate-marker.is-selected{transform:translateY(-5px) scale(1.12);filter:brightness(1.1) drop-shadow(0 8px 8px rgba(0,0,0,.45)) drop-shadow(0 0 7px var(--marker-color));z-index:1000}@media (hover:hover) and (pointer:fine){.proximate-map-marker-wrap:hover .proximate-marker{transform:translateY(-5px) scale(1.12);filter:brightness(1.1) drop-shadow(0 8px 8px rgba(0,0,0,.45)) drop-shadow(0 0 7px var(--marker-color));z-index:1000}}
.proximate-marker.is-entering{animation:proximateMarkerEnter 460ms cubic-bezier(.18,.89,.32,1.28) var(--marker-enter-delay,0ms) backwards}.proximate-marker.is-live{animation:proximateMarkerBreathe 2.8s ease-in-out infinite}.proximate-marker.is-live.is-entering{animation:proximateMarkerEnter 460ms cubic-bezier(.18,.89,.32,1.28) var(--marker-enter-delay,0ms) backwards,proximateMarkerBreathe 2.8s ease-in-out calc(var(--marker-enter-delay,0ms) + 460ms) infinite}.proximate-marker.is-citydrop{animation:proximateCityDropLand 620ms cubic-bezier(.16,1,.3,1) both}
@keyframes proximateMarkerBreathe{0%,100%{filter:brightness(1)}50%{filter:brightness(1.08) drop-shadow(0 0 5px var(--marker-color))}}@keyframes proximateMarkerEnter{0%{opacity:0;transform:translateY(-15px) scale(.72)}65%{opacity:1;transform:translateY(2px) scale(1.05)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes proximateCityDropLand{0%{opacity:0;transform:translateY(-52px) scale(.6) rotate(-7deg)}68%{opacity:1;transform:translateY(3px) scale(1.08) rotate(1deg)}84%{transform:translateY(-3px) scale(.98)}100%{transform:translateY(0) scale(1) rotate(0)}}
@media (prefers-reduced-motion:reduce){.proximate-marker,.proximate-marker.is-entering,.proximate-marker.is-live,.proximate-marker.is-live.is-entering,.proximate-marker.is-citydrop{animation:none!important;transition:none!important}}
.city-drop-pin{width:38px!important;height:39px!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;display:block!important;transform:translate(-50%,-50%)}.city-drop-pin>.proximate-marker{position:relative!important;inset:auto!important}.city-drop-pin .proximate-map-pin-lucide{width:16px;height:16px;stroke:currentColor}

/* Proximate Trust System: the lens colour stays inside an earned outer ring. */
.proximate-marker__body{z-index:2}.proximate-marker__shadow{z-index:0}.proximate-trust-ring{position:absolute;z-index:1;top:-4px;left:-4px;width:50px;height:50px;padding:2px;border-radius:50%;background:conic-gradient(from 195deg,#ffd700 0deg 99deg,#ff9f1c 138.6deg,#ff2f8a 224.4deg,#a43bff 290.4deg,#ffd700 330deg,transparent 330deg 360deg);box-shadow:0 0 0 1px rgba(3,4,8,.9);pointer-events:none;transform-origin:50% 50%;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.proximate-marker.is-trusted .proximate-map-pin-verified{display:none!important}
.proximate-marker.is-featured .proximate-trust-ring{animation:proximateTrustShimmer 9s ease-in-out infinite}.proximate-marker.is-trusted-live .proximate-trust-ring{animation:proximateTrustLive 1.9s ease-in-out infinite}.proximate-marker.is-trust-confirming .proximate-trust-ring{animation:proximateTrustConfirm 300ms cubic-bezier(.2,.8,.2,1) both!important}
@keyframes proximateTrustShimmer{0%,80%,100%{transform:scale(1);filter:brightness(1);opacity:.92}87%{transform:scale(1.025);filter:brightness(1.34);opacity:1}94%{transform:scale(1);filter:brightness(1);opacity:.92}}@keyframes proximateTrustLive{0%,100%{transform:scale(1);filter:brightness(1);box-shadow:0 0 0 1px rgba(3,4,8,.9)}50%{transform:scale(1.07);filter:brightness(1.22);box-shadow:0 0 0 1px rgba(3,4,8,.9),0 0 11px rgba(255,47,138,.35)}}@keyframes proximateTrustConfirm{from{transform:scale(1);filter:brightness(1)}55%{transform:scale(1.08);filter:brightness(1.45)}to{transform:scale(1);filter:brightness(1)}}
@media (prefers-reduced-motion:reduce){.proximate-marker.is-featured .proximate-trust-ring,.proximate-marker.is-trusted-live .proximate-trust-ring,.proximate-marker.is-trust-confirming .proximate-trust-ring{animation:none!important}}

/* Compact Proximate Pin: the city stays dominant while every marker points to an exact place. */
.proximate-marker{--marker-size:31px;--marker-tip:7px;--marker-ring-size:37px;width:38px;height:39px}
.proximate-marker__body{top:0;left:calc((38px - var(--marker-size))/2);width:var(--marker-size);height:var(--marker-size);border-radius:50%;transform:none;isolation:isolate;box-shadow:0 3px 7px rgba(0,0,0,.48),0 0 7px color-mix(in srgb,var(--marker-color) 28%,transparent)}
.proximate-marker__body::after{content:"";position:absolute;z-index:-1;left:50%;bottom:calc(var(--marker-tip) * -.58);width:var(--marker-tip);height:var(--marker-tip);border-right:2px solid rgba(255,255,255,.95);border-bottom:2px solid rgba(255,255,255,.95);border-radius:0 0 3px 0;background:var(--marker-color);transform:translateX(-50%) rotate(45deg)}
.proximate-marker__glyph{transform:none}.proximate-marker .proximate-map-pin-glyph{width:15px;height:15px;font-size:16px!important;stroke-width:2.5}.proximate-marker__shadow{bottom:0;width:14px;height:4px;filter:blur(2px);opacity:.72}
.proximate-trust-ring{top:-3px;left:calc((38px - var(--marker-ring-size))/2);width:var(--marker-ring-size);height:var(--marker-ring-size);padding:2px;box-shadow:0 0 0 1px rgba(3,4,8,.82)}
.proximate-marker.is-selected{transform:translateY(-5px) scale(1.1);filter:brightness(1.08) drop-shadow(0 7px 7px rgba(0,0,0,.42)) drop-shadow(0 0 5px var(--marker-color))}
@media (min-width:769px){.proximate-marker{--marker-size:33px;--marker-tip:6px;--marker-ring-size:39px}}

/* Trust identity is always expressed with the Proximate gold-to-magenta spectrum. */
.proximate-trust-label{display:inline-flex;align-items:center;gap:4px;border:1px solid rgba(255,122,95,.2);background:rgba(255,255,255,.055)!important}
.proximate-trust-label>.material-icons-outlined,.proximate-trust-label>.proximate-trust-copy{background:linear-gradient(110deg,#ffd700 0%,#ff9f1c 34%,#ff2f8a 68%,#a43bff 100%);-webkit-background-clip:text;background-clip:text;color:transparent!important;-webkit-text-fill-color:transparent}
.unified-service-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:7px}.unified-service-trust{padding:3px 7px;border-radius:999px;font-size:9px;letter-spacing:.2px}.unified-service-trust>.material-icons-outlined{font-size:12px}

/* Live hubs use the same Proximate Pin; only time, energy and the Lucide glyph differ. */
.proximate-marker.is-live-hub{--hub-pulse-duration:3.4s;--hub-pulse-opacity:.16}
.proximate-marker.is-live-hub.energy-mid{--hub-pulse-duration:2.45s;--hub-pulse-opacity:.27;animation-duration:2.45s}
.proximate-marker.is-live-hub.energy-hot{--hub-pulse-duration:1.55s;--hub-pulse-opacity:.42;animation-duration:1.55s}
.proximate-marker.is-live-hub::before{content:"";position:absolute;z-index:0;top:-3px;left:calc((38px - var(--marker-ring-size))/2);width:var(--marker-ring-size);height:var(--marker-ring-size);border:1px solid var(--marker-color);border-radius:50%;opacity:var(--hub-pulse-opacity);animation:proximateHubEnergy var(--hub-pulse-duration) ease-out infinite;pointer-events:none}
.proximate-hub-expiry{position:absolute;z-index:3;top:-3px;left:calc((38px - var(--marker-ring-size))/2);width:var(--marker-ring-size);height:var(--marker-ring-size);border-radius:50%;background:conic-gradient(from 195deg,var(--timer-color) var(--expiry-arc),transparent 0);pointer-events:none;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1.5px));transition:background .3s ease}
@keyframes proximateHubEnergy{0%{transform:scale(.88);opacity:var(--hub-pulse-opacity)}75%,100%{transform:scale(1.38);opacity:0}}
@media(prefers-reduced-motion:reduce){.proximate-marker.is-live-hub::before{animation:none;opacity:.16}}

/* Lens focus: the active lens becomes an anchor and its categories flow behind it. */
.map-layer-focus-chevron{display:none;position:absolute;right:7px;top:50%;font-size:14px!important;transform:translateY(-50%);transition:transform .22s ease}.map-layer-option.is-active .map-layer-focus-chevron{display:block}.map-layer-focus-strip{display:none;min-width:0;flex:1;align-items:center;gap:7px;overflow-x:auto;scrollbar-width:none;overscroll-behavior-inline:contain}.map-layer-focus-strip::-webkit-scrollbar{display:none}.map-layer-list.is-focus-expanded{display:flex;align-items:stretch;gap:7px}.map-layer-list.is-focus-expanded>.map-layer-option:not(.is-active){display:none}.map-layer-list.is-focus-expanded>.map-layer-option.is-active{flex:0 0 92px;transform:none}.map-layer-list.is-focus-expanded>.map-layer-option.is-active .map-layer-focus-chevron{transform:translateY(-50%) rotate(180deg)}.map-layer-list.is-focus-expanded .map-layer-focus-strip{display:flex}.map-layer-focus-strip button{flex:0 0 auto;min-height:34px;padding:0 13px;border:1px solid rgba(255,255,255,.1);border-radius:999px;color:rgba(255,255,255,.72);background:rgba(255,255,255,.045);font:700 9px Poppins,sans-serif;opacity:0;animation:lensFocusChipIn .3s cubic-bezier(.2,.8,.2,1) calc(var(--focus-index) * 40ms) forwards}.map-layer-focus-strip button.is-active{border-color:rgba(var(--map-layer-primary-rgb),.48);color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.13)}@keyframes lensFocusChipIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}@media(max-width:520px){.map-layer-list.is-focus-expanded>.map-layer-option.is-active{flex-basis:84px}.map-layer-focus-strip button{min-height:32px;padding:0 11px;font-size:8px}}@media(prefers-reduced-motion:reduce){.map-layer-focus-strip button{opacity:1;animation:none}}

/* Expanded focus reads as one continuous rail, not a row of visual buttons. */
.map-layer-dock.is-focus-expanded{padding-top:7px}.map-layer-dock.is-focus-expanded .map-layer-label{display:none}.map-layer-list.is-focus-expanded{align-items:center;gap:0}.map-layer-list.is-focus-expanded>.map-layer-option.is-active{flex:0 0 auto;min-height:38px;padding:0 29px 0 11px;border-radius:0;flex-direction:row;gap:6px;background:transparent;box-shadow:none}.map-layer-list.is-focus-expanded>.map-layer-option.is-active::after{content:"";position:absolute;right:0;top:8px;bottom:8px;width:1px;background:rgba(var(--map-layer-primary-rgb),.5)}.map-layer-list.is-focus-expanded>.map-layer-option.is-active>.material-icons-outlined:first-child{font-size:17px}.map-layer-list.is-focus-expanded .map-layer-focus-strip{gap:0;padding-left:2px}.map-layer-focus-strip button{position:relative;min-height:38px;padding:0 13px;border:0;border-radius:0;background:transparent!important;box-shadow:none;color:rgba(255,255,255,.68)}.map-layer-focus-strip button+button::before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:1px;background:rgba(255,255,255,.14)}.map-layer-focus-strip button.is-active{color:var(--map-layer-primary)}@media(max-width:520px){.map-layer-list.is-focus-expanded>.map-layer-option.is-active{min-height:36px;padding-left:8px;padding-right:25px}.map-layer-focus-strip button{min-height:36px;padding:0 10px}}

/* The selected lens keeps its original pill; only its categories flatten into text. */
.map-layer-list.is-focus-expanded>.map-layer-option.is-active{flex:0 0 92px;min-height:50px;padding:0;border-radius:16px;flex-direction:column;justify-content:center;gap:2px;color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.12);box-shadow:inset 0 0 0 1px rgba(var(--map-layer-primary-rgb),.22),0 7px 18px rgba(var(--map-layer-primary-rgb),.1);transform:translateY(-2px) scale(1.06)}.map-layer-list.is-focus-expanded>.map-layer-option.is-active>.material-icons-outlined:first-child{font-size:21px}.map-layer-list.is-focus-expanded>.map-layer-option.is-active::after{right:-4px;top:9px;bottom:9px}.map-layer-list.is-focus-expanded .map-layer-focus-strip{padding-left:6px}@media(max-width:520px){.map-layer-list.is-focus-expanded>.map-layer-option.is-active{flex-basis:84px;min-height:46px}.map-layer-list.is-focus-expanded>.map-layer-option.is-active>.material-icons-outlined:first-child{font-size:19px}}
.unified-preview-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin:6px 0 10px;flex-wrap:wrap}.unified-preview-title-row h2{flex:1 1 180px;min-width:0;margin:0!important}.unified-preview-view-anchor{display:flex;flex:0 0 auto}.unified-preview-title-row .proximate-view-count{margin:0}.proximate-view-count{display:inline-flex;align-items:center;gap:6px;margin:10px 0 0;padding:7px 10px;border:1px solid rgba(var(--map-layer-primary-rgb,255,215,0),.28);border-radius:999px;color:#f3f7f5;background:rgba(var(--map-layer-primary-rgb,255,215,0),.08);font:800 10px Poppins,sans-serif;letter-spacing:.02em;box-shadow:0 8px 20px rgba(0,0,0,.18)}.proximate-view-count i{width:16px;height:16px;display:grid;place-items:center;font-size:16px;line-height:1;color:var(--map-layer-primary,#ffd700)}.proximate-view-count.is-loading,.proximate-view-count.is-unavailable{color:#aeb8b2;background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.1)}
.map-layer-list.is-focus-expanded .map-layer-focus-strip{position:relative;z-index:0;margin-left:4px;padding-left:0;clip-path:inset(0);scroll-padding-inline-start:0}.map-layer-list.is-focus-expanded>.map-layer-option.is-active{z-index:2}.map-layer-list.is-focus-expanded>.map-layer-option.is-active::after{z-index:3}
.lens-context-warp{display:block;width:100%;margin-top:10px;padding:10px 12px;border:1px solid rgba(var(--map-layer-primary-rgb),.3);border-radius:12px;color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.09);font:800 10px Poppins,sans-serif}
.workflow-confirm-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.workflow-confirm-actions button:first-child{color:#dbe7df;background:rgba(255,255,255,.09)}.poi-contact-card{margin:0 20px 22px;padding:14px;border:1px solid rgba(24,216,134,.2);border-radius:16px;display:grid;gap:9px;background:rgba(24,216,134,.055)}.poi-contact-card>div,.poi-contact-card>a,.poi-contact-card>button{min-height:38px;padding:8px 10px;border:0;border-radius:11px;display:flex;align-items:center;gap:8px;color:#e8fff3;background:rgba(255,255,255,.06);font:700 10px Poppins,sans-serif;text-decoration:none;text-align:left}.poi-contact-card>button{background:#18d886;color:#03100a}.poi-contact-card .material-icons-outlined{font-size:18px}.poi-contact-card small{color:#809087;font:500 8px/1.45 Poppins,sans-serif}.proximate-commerce-sheet{border-color:rgba(var(--map-layer-primary-rgb),.24);background:var(--map-layer-surface)}.proximate-commerce-sheet .unified-service-photo.placeholder{color:var(--map-layer-primary);background:rgba(var(--map-layer-primary-rgb),.08)}.proximate-commerce-sheet .unified-service-kicker,.proximate-commerce-sheet .unified-service-meta strong,.proximate-commerce-sheet .unified-service-response span{color:var(--map-layer-primary)}.proximate-commerce-sheet .poi-contact-card{border-color:rgba(var(--map-layer-primary-rgb),.2);background:rgba(var(--map-layer-primary-rgb),.055)}.proximate-commerce-sheet .poi-contact-card>button{background:var(--map-layer-primary);color:#03100a}

/* Market + Stays: exact shared Proximate cluster design; only lens colour and count ink differ. */
.proximate-cluster.lens-market{
  --cluster-core:rgba(54,155,255,.92);
  --cluster-heat:rgba(54,155,255,.48);
}
.proximate-cluster.lens-stays{
  --cluster-core:rgba(255,157,66,.92);
  --cluster-heat:rgba(255,157,66,.48);
}
.proximate-cluster.lens-market .cluster-count,
.proximate-cluster.lens-stays .cluster-count{
  position:relative;
  z-index:5;
  color:#090913!important;
  text-shadow:none!important;
}

.proximate-marker.lens-stays { --marker-color: #FF9D42 !important; --timer-color: #FF9D42 !important; }
