.search-box{position:absolute;top:20px;left:50%;transform:translateX(-50%);width:420px;max-width:calc(100% - 120px);z-index:1000;background:white;border-radius:10px;box-shadow:0 5px 24px #29394b22;border:1px solid #d7dce0}.search-box input{width:100%;padding:15px 18px;border:0;border-radius:10px;font-size:14px;outline-color:#2869b1}#search-results:not(:empty){padding:7px;max-height:330px;overflow:auto;font-size:12px}#search-results button{display:block;width:100%;text-align:left;border:0;background:white;padding:12px;border-radius:6px;cursor:pointer}#search-results button:hover,#search-results button:focus{background:#edf3f9}#search-results small{display:block;margin-top:4px;color:#7a8793}.card{top:90px;background:#fffffff0;border-color:#d8dbde;max-width:290px;padding:18px}.card h1{font-family:Segoe UI,Arial,sans-serif;font-size:24px}.card select{width:100%;padding:10px;border:1px solid #d7dce0;border-radius:6px;background:white;color:#35404b}.card label{display:block;font-size:12px;margin:12px 0 6px}#business-count{font-size:11px;color:#677c8e;display:block;margin-top:6px}.business-card h3{margin:0;font-size:16px;color:#2869b1}.business-card p{font-size:12px;color:#4b5864;margin:8px 0}.business-card a{color:#2869b1}.business-photos{display:flex;gap:5px;margin-top:12px}.business-photos img{width:85px;height:70px;object-fit:cover;border-radius:5px}.search-flash{pointer-events:none}.search-ring{display:block;width:40px;height:40px;border:3px solid #df3838;border-radius:50%;background:#ff545440;animation:flash 1s infinite}.settled .search-ring{animation:none;background:#ff545422}@keyframes flash{0%,100%{transform:scale(.65);opacity:.5}50%{transform:scale(1.2);opacity:1}}.admin-panel{position:absolute;right:15px;top:90px;bottom:35px;width:350px;z-index:1050;background:#fff;border:1px solid #d7dce0;border-radius:12px;padding:20px;overflow:auto;box-shadow:0 4px 24px #29394b22}.admin-panel h2{font-size:20px;margin:0 0 12px}.admin-panel label{display:block;font-size:12px;margin:11px 0 5px}.admin-panel input{width:100%;padding:9px;border:1px solid #cbd5de;border-radius:5px;font:inherit;font-size:13px}.admin-panel button{border:0;border-radius:5px;background:#2869b1;color:white;padding:10px;cursor:pointer;margin:8px 4px 0 0}.admin-panel .secondary{background:#edf2f7;color:#35404b}.admin-panel .danger{background:#b94e4e}.admin-note{font-size:12px;line-height:1.5;color:#6f7b86}.admin-message{font-size:12px;color:#355a7e;padding:10px 0}.photo-preview img{width:75px;height:60px;object-fit:cover;border-radius:5px;margin:5px}.business-list button{display:block;width:100%;text-align:left;background:#edf2f7;color:#35404b}.coord{font-size:11px;color:#718190}#logout{float:right;padding:5px 8px;font-size:10px}.admin-panel details{margin-top:15px}.area-label span{color:#677078}.district-label span{color:#65707b}#map{background:#e9ecef}@media(max-width:700px){.search-box{top:12px;max-width:calc(100% - 70px);left:calc(50% + 20px)}.card{top:auto;bottom:60px;left:10px;max-width:230px;padding:12px}.card .legend,.card>p,.card .eyebrow{display:none}.card h1{font-size:17px;margin:0}.card label{margin-top:5px}.admin-panel{top:75px;bottom:20px;width:310px;max-width:calc(100% - 30px)}body.admin .card{display:none}body.admin .search-box{display:none}}@media(prefers-reduced-motion:reduce){.search-ring{animation:none}}

.basemap-switch{position:absolute;right:18px;top:20px;z-index:1020;background:#fff;padding:8px 12px;border:1px solid #d7dce0;border-radius:8px;box-shadow:0 3px 12px #29394b15}.basemap-switch label{font-size:11px;color:#68737c;margin-right:8px}.basemap-switch select{padding:6px;border:1px solid #d7dce0;border-radius:5px;background:white;color:#35404b}body.admin .basemap-switch{right:18px;top:20px}@media(max-width:700px){.search-box{max-width:calc(100% - 200px);left:55px;transform:none;width:auto;right:145px}.search-box input{padding:12px 10px;font-size:12px}.basemap-switch{top:12px;right:10px;padding:5px}.basemap-switch label{display:none}.basemap-switch select{max-width:115px}}

.business-title-tooltip{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.business-title-tooltip:before{display:none!important}.business-title{display:block;background:color-mix(in srgb,var(--category-color) 18%,transparent);border:1px solid var(--category-color);border-radius:7px;padding:5px 10px;color:var(--category-color);font:600 12px Segoe UI,Arial,sans-serif;backdrop-filter:blur(3px);text-shadow:0 0 3px white;cursor:pointer}.business-photos button{padding:0;border:0;background:none;cursor:pointer}.photo-gallery{border:1px solid #d5dce3;border-radius:15px;padding:0;width:min(850px,94vw);max-height:92dvh;background:#f8fafc;color:#35404b;box-shadow:0 20px 80px #0007}.photo-gallery::backdrop{background:#17202abf;backdrop-filter:blur(3px)}.gallery-header{display:flex;align-items:center;justify-content:space-between;padding:15px 20px;background:white;border-bottom:1px solid #e0e5eb}.gallery-header h2{font-size:17px;margin:0;overflow-wrap:anywhere}.gallery-close{background:none;border:0;font-size:28px;cursor:pointer;color:#526171}.gallery-stage{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 8px;min-height:180px}.gallery-image{max-width:calc(100% - 100px);max-height:65dvh;object-fit:contain;border-radius:7px;touch-action:pan-y}.gallery-prev,.gallery-next{width:40px;height:50px;flex-shrink:0;border:1px solid #d5dce3;border-radius:8px;background:#fff;color:#35404b;font-size:34px;cursor:pointer}.gallery-prev:disabled,.gallery-next:disabled{opacity:.25;cursor:default}.gallery-counter{margin:0;padding:5px 0 15px;text-align:center;color:#677788;font-size:13px}

.business-glass-popup .leaflet-popup-content-wrapper{background:rgba(255,255,255,.74);backdrop-filter:blur(16px) saturate(135%);-webkit-backdrop-filter:blur(16px) saturate(135%);border:1px solid rgba(255,255,255,.8);border-radius:16px;box-shadow:0 12px 35px rgba(30,45,65,.18)}.business-glass-popup .leaflet-popup-tip{background:rgba(255,255,255,.74);box-shadow:none}.business-glass-popup .leaflet-popup-content{margin:22px 24px;line-height:1.55;font-family:Inter,"Segoe UI Variable","Segoe UI",Arial,sans-serif;font-size:13px;font-weight:500;color:#334155}.business-glass-popup .business-card h3{font-family:inherit;font-size:20px;line-height:1.3;font-weight:650;letter-spacing:-.45px;color:#20364f;margin:0 0 15px;padding-bottom:12px;border-bottom:1px solid rgba(77,97,120,.15)}.business-glass-popup .business-card p{font-family:inherit;font-size:13px;font-weight:500;line-height:1.6;letter-spacing:.05px;color:#3e4e60;margin:9px 0}.business-glass-popup .business-card a{font-weight:600;color:#285f94;text-decoration:none}.business-glass-popup .business-card a:hover{text-decoration:underline}.business-glass-popup .business-photos{gap:8px;margin-top:17px;padding-top:14px;border-top:1px solid rgba(77,97,120,.15)}.business-glass-popup .business-photos img{border-radius:9px;border:1px solid rgba(255,255,255,.75);box-shadow:0 3px 10px #20364f15}.business-glass-popup .leaflet-popup-close-button{color:#52657b!important;font-size:22px!important;top:7px!important;right:7px!important}

.search-box{isolation:isolate;border:1px solid #a8ccec;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);box-shadow:0 0 0 6px #d9ebf638,0 0 25px #6fb1dc55,0 5px 24px #29394b22}.search-box:before{content:'';position:absolute;inset:-6px;border-radius:15px;background:linear-gradient(110deg,#64a8e926,#b0d8ee55,#7c89da25);border:1px solid #b5daef55;z-index:-1;pointer-events:none}.search-box input{background:transparent}.join-callout{margin-top:16px;padding-top:14px;border-top:1px solid #d7dce0}.join-callout h2{font:600 15px Segoe UI,Arial,sans-serif;line-height:1.45;color:#34495f;margin:0 0 12px}.join-button{display:block;background:#356ac3;color:white!important;text-align:center;text-decoration:none;border-radius:7px;padding:10px;font-size:13px;font-weight:600}.member-nav button{display:block;width:100%;margin:8px 0;padding:11px;text-align:left;border:1px solid #d7dce0;border-radius:7px;background:#ffffff88;color:#34495f;cursor:pointer;font-weight:600}.member-nav button.active{background:#356ac3;color:#fff}.member-nav p{overflow-wrap:anywhere}.member-section p{font-size:13px;color:#566678;line-height:1.6}.member #logout{display:none}@media(max-width:700px){.card .join-callout{display:block}.join-callout h2{font-size:12px}.join-callout{margin-top:9px;padding-top:9px}.join-button{padding:7px}body.member .member-nav{display:block;top:auto;bottom:30px;left:10px;right:10px;max-width:none;padding:10px}body.member .member-nav h1,body.member .member-nav p,body.member .member-nav>a{display:none}.member-nav button{display:inline-block;width:auto;font-size:10px;padding:7px;margin:2px}body.member .admin-panel{bottom:115px;max-width:calc(100% - 30px)}}

.admin-tabs{position:absolute;top:90px;left:25px;width:260px;z-index:1100;padding:22px;background:#ffffffce;backdrop-filter:blur(14px);border:1px solid white;border-radius:14px}.admin-tabs h2{font-size:19px;color:#334b65}.admin-tabs button{display:block;width:100%;text-align:left;border:0;border-radius:7px;padding:13px;margin:7px 0;background:#edf2f7;color:#35404b;cursor:pointer;font-weight:600}.admin-tabs button.active{background:#356ac3;color:white}.admin-tabs a{display:block;margin-top:18px;color:#356ac3;font-size:12px}body.admin:not(.member) .card{display:none}.panel-without-map #map,.panel-without-map .basemap-switch,.panel-without-map .search-box,.panel-without-map .footer{visibility:hidden}.panel-without-map{background:#edf1f5}.panel-without-map .admin-panel{left:315px;right:25px;width:auto;max-width:none}.management-card{background:#f7f9fb;border:1px solid #e0e6ee;border-radius:10px;padding:15px;margin:12px 0}.management-card h3{font-size:15px;margin:0 0 8px}.management-card p,.manager-section>p{font-size:13px;color:#627388;line-height:1.6}.manager-section h2{font-size:23px;margin:10px 0}.admin-panel textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5de;border-radius:5px;padding:9px;font:13px Segoe UI}.manager-section label{display:block;margin:12px 0 5px;font-size:12px}@media(max-width:700px){.admin-tabs{top:10px;left:10px;right:10px;width:auto;padding:8px}.admin-tabs h2,.admin-tabs a{display:none}.admin-tabs button{display:inline-block;width:auto;font-size:10px;padding:8px;margin:2px}.panel-without-map .admin-panel{left:15px;right:15px;top:80px;width:auto}.member.panel-without-map .admin-panel{bottom:115px}}

.category-glass-panel{width:270px;max-width:270px;max-height:calc(100dvh - 125px);overflow:auto;background:linear-gradient(145deg,#d9eaffb8,#91b8e65e)!important;backdrop-filter:blur(18px) saturate(125%);-webkit-backdrop-filter:blur(18px) saturate(125%);border:1px solid #ffffffb0!important;box-shadow:0 12px 40px #315c9033,inset 0 1px 0 #ffffffc0!important;border-radius:16px}.category-glass-panel h1{color:#254e7b}.category-glass-panel>.eyebrow,.category-glass-panel>.legend,.category-glass-panel>p{display:none}.category-heading{font:600 16px Segoe UI,Arial,sans-serif;color:#254e7b;margin:15px 0 5px}.category-glass-panel .category-hint{display:block!important;font-size:11px;margin:0 0 12px;color:#55789c}.category-choice{display:flex!important;align-items:center;gap:12px;margin:0!important;padding:9px 8px;border-radius:8px;cursor:pointer;color:#294f77;font:500 12px Segoe UI,Arial,sans-serif}.category-choice:hover{background:#ffffff38}.category-choice input{appearance:none;-webkit-appearance:none;width:16px;height:16px;flex:0 0 16px;border-radius:50%;border:1px solid var(--dot-color);background:color-mix(in srgb,var(--dot-color) 12%,transparent);box-shadow:inset 0 1px 3px #ffffffaa,0 2px 5px #416b8b20;cursor:pointer;margin:0;display:grid;place-items:center}.category-choice input:checked{background:color-mix(in srgb,var(--dot-color) 65%,transparent);box-shadow:inset 0 1px 3px #ffffff99,0 0 7px color-mix(in srgb,var(--dot-color) 25%,transparent)}.category-choice input:checked:after{content:'';width:5px;height:5px;border-radius:50%;background:white;box-shadow:0 0 3px white}.category-choice input:indeterminate:after{content:'';width:7px;height:2px;background:white}.category-choice input:focus-visible{outline:2px solid #295b95;outline-offset:3px}.glass-membership{display:flex;gap:8px;margin-top:17px;padding-top:15px;border-top:1px solid #ffffff80}.glass-membership a{flex:1;text-align:center;padding:10px 5px;color:#244f7d;font-size:12px;font-weight:600;text-decoration:none;border:1px solid #ffffffb0;border-radius:8px;background:#c9e1fc66;box-shadow:inset 0 1px 0 #ffffffa0,0 3px 10px #315c9015;backdrop-filter:blur(8px)}.glass-membership a:hover{background:#e1efffcc}.registration{background:linear-gradient(145deg,#e5f1ffb8,#a6c6ed77)!important;border-color:#ffffffb0!important;box-shadow:0 15px 60px #315c9028!important}@media(max-width:700px){.category-glass-panel{top:80px!important;bottom:auto!important;left:10px!important;width:195px!important;max-width:195px!important;max-height:calc(100dvh - 145px);padding:12px!important}.category-glass-panel .category-heading{display:block;font-size:14px}.category-glass-panel .category-hint{font-size:10px}.category-choice{padding:7px 4px;font-size:11px;gap:9px}.glass-membership{gap:5px;margin-top:10px;padding-top:10px}.glass-membership a{font-size:10px;padding:8px 3px}}

.embedded-place-tooltip{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.embedded-place-tooltip:before{display:none!important}.embedded-place-title{font:600 11px "Segoe UI",Arial,sans-serif;color:#52636c;white-space:nowrap;text-shadow:-1px -1px 2px #fff,1px 1px 2px #fff,-1px 1px 2px #fff,1px -1px 2px #fff;cursor:pointer;letter-spacing:.05px}

#status.footer{display:none!important}

.basemap-switch{display:none!important}.glass-membership{display:flex;align-items:center;gap:14px}.glass-membership a{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex:1;padding:6px 0;background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;white-space:nowrap;font-size:12px}.glass-membership a:hover{background:transparent;color:#173e68}.membership-dot{display:inline-block;width:13px;height:13px;flex:0 0 13px;border-radius:50%;border:1px solid #648fc0;background:linear-gradient(145deg,#ffffffb0,#8cb4e866);box-shadow:inset 0 1px 3px #ffffffcc,0 0 6px #71a5da35}.glass-membership a:last-child .membership-dot{border-color:#568b9e;background:linear-gradient(145deg,#ffffffb0,#72aeb866)}@media(max-width:700px){.glass-membership{gap:8px}.glass-membership a{font-size:11px;gap:6px}.search-box{right:15px;max-width:calc(100% - 70px)}}

.inline-basemaps{display:flex;align-items:center;gap:25px;margin-top:15px;padding-top:14px;border-top:1px solid #ffffff80}.inline-basemaps label{display:flex;align-items:center;gap:9px;cursor:pointer;color:#294f77;font:500 12px Segoe UI,Arial,sans-serif;margin:0}.inline-basemaps input{appearance:none;-webkit-appearance:none;width:15px;height:15px;border-radius:50%;border:1px solid #648fc0;background:linear-gradient(145deg,#ffffffb0,#8cb4e844);box-shadow:inset 0 1px 3px #ffffffcc,0 0 6px #71a5da35;margin:0;display:grid;place-items:center;cursor:pointer}.inline-basemaps input:checked{background:#568bc3aa}.inline-basemaps input:checked:after{content:'';width:5px;height:5px;border-radius:50%;background:white}.inline-basemaps input:focus-visible{outline:2px solid #295b95;outline-offset:3px}.inline-basemaps+.glass-membership{margin-top:13px}

.membership-callout{margin-top:16px;padding:15px 12px;background:linear-gradient(135deg,#e4dcf5b3,#c7b9e973);border:1px solid #ffffffa6;border-radius:11px;box-shadow:inset 0 1px 0 #ffffffb0,0 4px 12px #59478515}.membership-callout h3{margin:0 0 10px;font:600 14px Segoe UI,Arial,sans-serif;color:#514477}.membership-callout .glass-membership{margin:0;padding:0;border:0;gap:10px}.membership-callout .glass-membership a{color:#514477}.membership-callout .membership-dot{border-color:#8b79b5;background:linear-gradient(145deg,#fff9,#b4a0da88)}.membership-callout .glass-membership a:last-child .membership-dot{border-color:#8b79b5;background:linear-gradient(145deg,#fff9,#b4a0da88)}@media(max-width:700px){.membership-callout{padding:12px 9px;margin-top:12px}.membership-callout h3{font-size:13px}}

.category-glass-panel{height:auto!important;max-height:none!important;overflow:visible!important;bottom:auto!important}.category-choice{padding-top:7px;padding-bottom:7px}@media(max-width:700px){.category-glass-panel{max-height:none!important;height:auto!important;overflow:visible!important}}

.tram-stop-name{background:transparent!important;border:0!important;box-shadow:none!important;font:600 10px Segoe UI,Arial,sans-serif;color:#486477;text-shadow:0 0 3px white,0 0 3px white;padding:1px 3px!important}.tram-stop-name:before{display:none!important}

.park-name{background:transparent;border:0;text-align:center;pointer-events:none!important}.park-name span{font:600 11px Segoe UI,Arial,sans-serif;color:#55774c;white-space:nowrap;text-shadow:0 0 3px white,0 0 3px white}

.restaurant-types{margin:0 0 7px 22px;padding-left:8px;border-left:1px solid #ffffff88}.restaurant-types summary{cursor:pointer;font-size:11px;color:#7d604e;padding:3px 0 7px}.restaurant-types .category-choice{font-size:11px;padding:5px 4px}.admin-panel select{width:100%;padding:10px;border:1px solid #cbd5de;border-radius:5px;background:white;color:#35404b}

.selection-notice{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:950;max-width:calc(100% - 40px);padding:10px 18px;border:1px solid #ffffffb0;border-radius:10px;background:#e4effbcc;backdrop-filter:blur(12px);box-shadow:0 4px 20px #315c9022;font:500 12px Segoe UI,Arial,sans-serif;color:#315678;text-align:center;pointer-events:none}@media(max-width:700px){.selection-notice{bottom:12px;font-size:11px;padding:8px 12px;width:max-content;max-width:calc(100% - 30px)}}

.search-dot-marker{background:none;pointer-events:auto!important}.search-result-dot{display:block;width:12px;height:12px;border-radius:50%;background:#d74747;border:2px solid white;box-shadow:0 0 0 4px #d7474725;animation:search-dot-blink .85s ease-in-out infinite}.settled .search-result-dot{animation:none}.search-result-tooltip{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.search-result-tooltip:before{display:none!important}.search-result-label{display:block;background:#edf5ffc9;backdrop-filter:blur(8px);border:1px solid #91afd0;border-radius:6px;padding:5px 9px;font:600 12px Segoe UI,Arial,sans-serif;color:#2d5177}@keyframes search-dot-blink{0%,100%{opacity:1;box-shadow:0 0 0 3px #d7474733}50%{opacity:.3;box-shadow:0 0 0 7px #d7474710}}@media(prefers-reduced-motion:reduce){.search-result-dot{animation:none}}

.subcategory-search{width:100%;padding:8px 10px;border:1px solid #fff9;border-radius:7px;background:#f5faffbb;color:#315678;margin:4px 0 6px;font:12px Segoe UI,Arial,sans-serif}.subcategory-list{max-height:160px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.subcategory-list .category-choice{height:32px;padding:6px 4px}.subcategory-list [hidden]{display:none!important}#category-menu-toggle,.category-menu-close{display:none}.eso-button{position:fixed;right:16px;top:20px;z-index:1001;max-width:230px;border:1px solid #fff9;border-radius:9px;background:#d9eafbda;backdrop-filter:blur(12px);color:#315678;padding:10px 14px;font:600 12px Segoe UI,Arial,sans-serif;cursor:pointer}
@media(max-width:900px),(max-height:600px){.category-glass-panel{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:min(300px,85vw)!important;max-width:85vw!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;transform:translateX(-105%);transition:transform .22s ease;padding:16px!important;z-index:1100!important;border-radius:0 15px 15px 0!important}.category-menu-open .category-glass-panel{transform:translateX(0)}#category-menu-toggle{display:block;position:fixed;top:12px;left:12px;z-index:1050;border:1px solid #fff9;border-radius:8px;background:#d9eafbdd;backdrop-filter:blur(10px);padding:9px 12px;color:#315678;font-weight:600}.category-menu-close{display:block;margin-bottom:10px;border:0;border-radius:7px;background:#fff7;padding:8px 10px;color:#315678}.search-box{top:58px!important;width:min(420px,calc(100% - 24px))!important;max-width:calc(100% - 24px)!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important}.eso-button{top:12px;right:12px;max-width:calc(100% - 150px);padding:7px 10px;font-size:10px}.selection-notice{max-width:calc(100% - 24px);font-size:10px}.leaflet-top.leaflet-left{top:112px}}

/* Category drawer on every screen size. */
.category-glass-panel{position:fixed!important;top:0!important;left:0!important;bottom:0!important;width:min(310px,85vw)!important;max-width:85vw!important;height:100dvh!important;max-height:100dvh!important;overflow-y:auto!important;transform:translateX(-105%);transition:transform .22s ease;padding:16px!important;z-index:1100!important;border-radius:0 15px 15px 0!important}.category-menu-open .category-glass-panel{transform:translateX(0)}#category-menu-toggle{display:block;position:fixed;top:12px;left:12px;z-index:1050;border:1px solid #fff9;border-radius:8px;background:#d9eafbdd;backdrop-filter:blur(10px);padding:9px 12px;color:#315678;font-weight:600;cursor:pointer}.category-menu-close{display:block;margin-bottom:10px;border:0;border-radius:7px;background:#fff7;padding:8px 10px;color:#315678;cursor:pointer}.leaflet-top.leaflet-left{top:62px}
@media(max-width:900px),(max-height:600px){.leaflet-top.leaflet-left{top:112px}}

@media(min-width:901px){.category-glass-panel{position:absolute!important;top:22px!important;left:65px!important;bottom:auto!important;width:280px!important;max-width:280px!important;height:auto!important;max-height:none!important;overflow:visible!important;transform:none!important;border-radius:12px!important}#category-menu-toggle,.category-menu-close{display:none!important}.leaflet-top.leaflet-left{top:0}}

/* Map landmarks are printed directly on the map; member labels retain their glass cards. */
.place-label span{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;padding:2px 3px!important;font:600 11px Segoe UI,Arial,sans-serif!important;color:#74664e!important;text-shadow:0 0 3px #fffdf5,0 0 3px #fffdf5}.place-label b{display:none!important}

.business-title,.embedded-place-title,.search-result-label{font-size:calc(12px * var(--map-label-scale,1))!important}.business-title{padding:calc(5px * var(--map-label-scale,1)) calc(10px * var(--map-label-scale,1))!important}.place-label span,.park-name span{font-size:calc(11px * var(--map-label-scale,1))!important}.tram-stop-name{font-size:calc(10px * var(--map-label-scale,1))!important}

.site-statistics{position:fixed;bottom:0;left:0;right:0;z-index:960;text-align:center;padding:5px 10px;background:#edf4fbdb;backdrop-filter:blur(8px);color:#45627c;font:11px Segoe UI,Arial,sans-serif;pointer-events:none}.selection-notice{bottom:38px!important}@media(max-width:650px){.site-statistics{font-size:9px;padding:6px 4px}.selection-notice{bottom:38px!important}}

.bus-panel{position:fixed;right:16px;top:76px;z-index:1002;width:285px;border:1px solid #fff9;border-radius:11px;background:#e6effbd9;backdrop-filter:blur(12px);box-shadow:0 6px 24px #315c9022;color:#315678;font:12px Segoe UI,Arial,sans-serif}.bus-panel>summary{padding:12px;cursor:pointer;font-weight:600}.bus-content{padding:0 12px 12px;max-height:calc(100dvh - 180px);overflow:auto}.bus-content label{display:block;margin:4px 0}.bus-content select{width:100%;padding:9px;margin-bottom:8px;border:1px solid #a9bfd4;border-radius:7px;background:#f7faff;color:#315678;font-size:12px}.bus-info h3{font-size:13px}.bus-info p{font-size:11px;line-height:1.6;color:#45627c;overflow-wrap:anywhere}.bus-info details{margin:10px 0}.bus-info summary{cursor:pointer}.bus-route-flow{animation:bus-route-dashes 1.2s linear infinite}@keyframes bus-route-dashes{to{stroke-dashoffset:-38}}@media(prefers-reduced-motion:reduce){.bus-route-flow{animation:none}}@media(max-width:900px){.bus-panel{top:112px;right:12px;width:min(285px,calc(100vw - 65px))}.bus-content{max-height:calc(100dvh - 230px)}}

.bus-outbound{transform:translate(-2px,-2px)}.bus-inbound{transform:translate(2px,2px)}

.bus-edit-point{background:transparent;border:0}.bus-edit-point span{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:#327fba;color:white;border:2px solid white;box-shadow:0 2px 6px #0004;font:600 10px Segoe UI}.bus-editor-controls{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}.bus-editor-controls button{font-size:11px;padding:8px!important}.bus-editing .search-box{display:none}.bus-editing .admin-panel{width:340px!important;max-height:calc(100dvh - 40px);overflow:auto}.bus-editor-status{background:#edf4fb;border-radius:7px;padding:10px;color:#315678!important}@media(max-width:700px){.bus-editing .admin-panel{top:78px!important;right:8px!important;width:245px!important;max-height:40dvh}.bus-editing .manager-section>p{font-size:10px}}

body.admin{font-family:Segoe UI,Arial,sans-serif;background:#edf2f8}.admin-tabs{background:#153353ed;border-color:#365571;box-shadow:0 14px 40px #12283d25}.admin-tabs h2{color:#f3f7fc;font-size:21px}.admin-tabs button{background:#ffffff0d;color:#dce9f7;padding:12px 14px;border:1px solid #ffffff12}.admin-tabs button:hover{background:#ffffff1c}.admin-tabs button.active{background:#4285c5;color:white}.admin-tabs a{color:#b9d8f7}.admin-panel{border-radius:16px!important;border:1px solid #d9e3ef!important;box-shadow:0 16px 50px #17375420!important;background:#fffffff0!important}.admin-panel h2{color:#254563}.admin-panel input,.admin-panel select,.admin-panel textarea{border-radius:8px!important}.admin-panel button{border-radius:8px}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin:24px 0}.metric-card{padding:22px;background:linear-gradient(140deg,#e9f3ff,#f9fbff);border:1px solid #d6e5f4;border-radius:12px;display:flex;flex-direction:column;gap:10px}.metric-card strong{font-size:29px;color:#285b88}.metric-card span{font-size:12px;color:#668098}.member-nav{background:#173a5aef!important;color:white!important;border:1px solid #42617c!important}.member-nav h1,.member-nav p,.member-nav a{color:#e5f0ff!important}.member-nav button{width:100%;text-align:left;padding:11px;border:0;border-radius:8px;margin:4px 0;background:#ffffff13;color:#e6f1ff}.member-nav button.active{background:#4285c5}.management-card{border-radius:12px;background:#f8fbff;border-color:#dce8f3}

.admin-tabs.needs-login{display:none}.admin-panel>h2{letter-spacing:-.5px}.admin-panel select{margin:8px 0}.admin-panel form button{margin-top:10px}

.firm-table-tools{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.firm-table-tools input{flex:1;min-width:200px}.firm-table-tools select{width:auto!important;max-width:260px}.firm-table-wrap{overflow:auto;max-height:70dvh;border:1px solid #d6e2ee;border-radius:10px}.firm-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:12px;white-space:nowrap}.firm-table th{position:sticky;top:0;z-index:2;background:#254866;color:white;text-align:left;padding:12px}.firm-table td{padding:10px 12px;border-bottom:1px solid #dde7f1;border-right:1px solid #e7edf5;max-width:300px;overflow:hidden;text-overflow:ellipsis}.firm-table tr:nth-child(even){background:#edf5fc}.firm-table tr:hover{background:#dcecff}.firm-table td:last-child{position:sticky;right:0;background:#f5f9ff}.firm-table td button{font-size:11px;padding:7px;margin:2px}#member-subscription-dates{font-size:11px!important;line-height:1.8!important}

.top-membership{position:fixed;right:16px;top:16px;z-index:1050;margin:0!important;padding:10px 14px!important;max-width:285px}.top-membership h3{display:none}.top-membership .glass-membership{gap:16px}.map-right-dock{position:fixed;right:16px;bottom:80px;z-index:1002;width:285px;display:flex;flex-direction:column;gap:10px;max-height:calc(100dvh - 160px)}.map-right-dock .eso-button{position:static;max-width:100%;width:100%;flex-shrink:0}.map-right-dock .bus-panel{position:static;width:100%;min-height:40px;overflow:hidden;flex-shrink:1}.map-right-dock .bus-content{max-height:calc(100dvh - 265px);overflow-y:auto}.map-right-dock .bus-panel>summary{list-style-position:inside}@media(max-width:900px){.top-membership{right:12px;top:10px;padding:8px 11px!important}.map-right-dock{right:12px;bottom:86px;width:min(285px,calc(100vw - 65px));max-height:calc(100dvh - 210px)}.map-right-dock .bus-content{max-height:calc(100dvh - 300px)}.top-membership .glass-membership a{font-size:11px}.map-right-dock .eso-button{max-width:100%}}

.business-call-button{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;border:1px solid #2e8b67;border-radius:9px;background:#e3f4eb;color:#216c50!important;text-decoration:none;font:600 13px Segoe UI,Arial,sans-serif}.business-call-button:hover{background:#cdebdc}.save-feedback{font-size:13px!important;line-height:1.5!important;color:#315678!important;white-space:normal}

.pharmacy-panel{background:#fff4f3e8;border:1px solid #e6b4b4;border-radius:10px;color:#853f40;overflow:auto;flex-shrink:1}.pharmacy-panel>summary{padding:11px 12px;font:600 12px Segoe UI;cursor:pointer}.pharmacy-content{padding:0 12px 12px;max-height:40dvh;overflow:auto;font:12px Segoe UI}.pharmacy-updated{font-size:10px}.pharmacy-list-button{display:block;width:100%;padding:8px;text-align:left;border:0;border-radius:6px;background:#ffe7e5;color:#853f40;margin:5px 0;cursor:pointer}.pharmacy-content>a{display:block;font-size:10px;margin-top:10px}.duty-pharmacy-marker{background:none;border:0}.pharmacy-beacon{display:flex;width:28px;height:28px;align-items:center;justify-content:center;background:#d63d46;color:white;border:2px solid white;border-radius:50%;font:bold 17px Segoe UI;box-shadow:0 0 0 5px #d63d4633;animation:pharmacy-pulse 1.25s ease-in-out infinite}.pharmacy-upcoming{background:#aa6470}.pharmacy-tooltip{background:#fffaf9!important;border:1px solid #e2baba!important;border-radius:9px;white-space:normal;min-width:230px;max-width:300px;pointer-events:auto!important}.pharmacy-card p{font:12px Segoe UI;line-height:1.5}.pharmacy-name-marker{background:none;border:0;text-align:center;pointer-events:none!important}.pharmacy-map-name{font:600 calc(11px * var(--map-label-scale,1)) Segoe UI;color:#a73843;text-shadow:0 0 3px white,0 0 3px white;white-space:nowrap}@keyframes pharmacy-pulse{50%{opacity:.5;box-shadow:0 0 0 10px #d63d4611}}@media(prefers-reduced-motion:reduce){.pharmacy-beacon{animation:none}}

.category-result-pulse{animation:category-result-blink 1.3s ease-in-out infinite!important}@keyframes category-result-blink{0%,100%{opacity:1}50%{opacity:.25}}@media(prefers-reduced-motion:reduce){.category-result-pulse{animation:none!important;outline:1px solid #ca6051}}

.category-halo-marker{background:none!important;border:0!important;pointer-events:none!important}.category-point-halo{position:relative;display:block;width:16px;height:16px;pointer-events:none}.category-point-halo:before,.category-point-halo:after{content:'';position:absolute;inset:0;border:2px solid var(--halo-color,#4287c7);border-radius:50%;box-shadow:0 0 8px var(--halo-color,#4287c7),inset 0 0 5px var(--halo-color,#4287c7);animation:category-halo-expand 2s ease-out infinite}.category-point-halo:after{animation-delay:1s}@keyframes category-halo-expand{0%{transform:scale(.5);opacity:1}80%{opacity:.2}100%{transform:scale(3.7);opacity:0}}@media(prefers-reduced-motion:reduce){.category-point-halo:before,.category-point-halo:after{animation:none;transform:scale(1.4);opacity:.6}.category-point-halo:after{display:none}}

.accuracy-consent{display:flex!important;align-items:flex-start;gap:9px;font-size:12px!important;line-height:1.6}.accuracy-consent input{width:16px!important;height:16px;flex:0 0 16px;margin-top:3px}.premium-offer{margin:20px 0;padding:18px;border:1px solid #ebc1ba;border-radius:12px;background:linear-gradient(130deg,#fff0edbb,#f6eeff99)}.premium-offer h3{font-size:16px;color:#8e4556}.premium-offer strong{font-size:22px;color:#ad4c56}.premium-offer small{font-size:11px}.premium-offer p,.premium-offer li{font-size:12px;line-height:1.7}.package-kicker{font-size:9px;letter-spacing:1.4px;color:#a46c7a}.premium-business-title{border:1px solid #d44b58!important;color:#ad3445!important;background:#fff0f0c9!important;animation:premium-glow 2s ease-in-out infinite}.sponsor-badge{display:inline-block;color:#ad4550;background:#fce6e8;border-radius:4px;padding:3px 6px;font-size:10px}@keyframes premium-glow{50%{box-shadow:0 0 13px #d44b5866;border-color:#f29aa2}}@media(prefers-reduced-motion:reduce){.premium-business-title{animation:none}}
.firm-mini{padding:0;border:1px solid #ffffffb3;border-radius:20px;width:min(650px,calc(100vw - 24px));max-height:90dvh;background:#fcfdff;color:#243348;box-shadow:0 24px 90px #10233e55;font-family:Segoe UI,Arial,sans-serif;overflow:auto}.firm-mini::backdrop{background:#10243f70;backdrop-filter:blur(5px)}.firm-mini *{box-sizing:border-box}.firm-mini-top{display:flex;align-items:center;justify-content:space-between;padding:14px 22px;border-bottom:1px solid #e5eaf0}.firm-mini-top span{font-size:10px;letter-spacing:1.8px;color:#62738a}.firm-mini button{cursor:pointer;font-family:inherit}.firm-mini-top button{border:0;background:#edf1f7;border-radius:50%;width:32px;height:32px;font-size:23px;color:#45576d}.firm-mini-tabs{display:flex;padding:8px 16px;gap:6px;border-bottom:1px solid #e5eaf0}.firm-mini-tabs button{flex:1;border:0;border-radius:9px;background:transparent;padding:12px 6px;color:#69778b;font-weight:600}.firm-mini-tabs button[aria-selected=true]{color:#2454a4;background:#eaf0fc}.firm-mini-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;position:relative;scrollbar-width:none;overscroll-behavior-x:contain}.firm-mini-track::-webkit-scrollbar{display:none}.firm-mini-page{flex:0 0 100%;min-width:0;scroll-snap-align:start;padding:24px;overflow-wrap:anywhere}.firm-mini-hero{height:205px;border-radius:13px;overflow:hidden;position:relative;background:#e4eaf2}.firm-mini-hero img{width:100%;height:100%;object-fit:cover}.firm-mini-photo-link{position:absolute;bottom:12px;right:12px;border:1px solid #ffffff99;border-radius:8px;padding:8px 12px;background:#ffffffdb;color:#263f60;font-size:11px}.firm-mini-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#1e3552,#48778d);color:white;gap:10px}.firm-mini-placeholder span{font-size:64px;font-weight:300}.firm-mini-placeholder small{font-size:9px;letter-spacing:3px;opacity:.7}.firm-mini .firm-mini-kicker{font-size:10px;letter-spacing:1.2px;color:#53739a;margin:20px 0 8px}.firm-mini h2{font-size:25px;line-height:1.25;font-weight:650;margin:8px 0 14px;color:#243348}.firm-mini h3{font-size:13px;margin-top:24px}.firm-mini p{font-size:13px;line-height:1.8;color:#647186;white-space:pre-line}.firm-mini-description{max-height:160px;overflow:auto}.firm-mini-actions{display:grid;gap:10px;margin-top:24px}.firm-mini-actions a{display:block;padding:13px 16px;background:#edf3fc;border:1px solid #dce6f4;border-radius:10px;color:#2a528a;text-decoration:none;font-size:13px;font-weight:600}.firm-mini-service{display:inline-block;border:1px solid #d4e3e5;background:#eaf5f3;color:#33786d;padding:9px 14px;border-radius:30px;font-size:12px}.firm-mini button:focus-visible,.firm-mini a:focus-visible{outline:3px solid #6298dd;outline-offset:2px}@media(max-width:600px){.firm-mini-page{padding:18px}.firm-mini-hero{height:180px}.firm-mini h2{font-size:23px}.firm-mini-top{padding:12px 18px}}
.firm-mini{background:#f6f8fd;border-color:#fff;width:min(710px,calc(100vw - 24px))}.firm-mini-top{background:linear-gradient(115deg,#122c50,#27659b 65%,#409fba);color:white;padding:24px 26px;align-items:flex-start}.firm-mini-brand{min-width:0;flex:1;display:grid;grid-template-columns:auto 1fr;column-gap:14px;align-items:center}.firm-mini-brand img{width:64px;height:64px;border-radius:14px;background:white;object-fit:contain;grid-row:1/3;padding:5px}.firm-mini-brand small{font-size:10px;letter-spacing:1.8px;text-transform:uppercase;color:#bcdcea;grid-column:2}.firm-mini-brand h1{font:650 25px/1.3 Segoe UI,Arial,sans-serif;margin:5px 0;color:white;grid-column:2;overflow-wrap:anywhere}.firm-mini-brand:not(:has(img)){display:block}.firm-mini-top button{background:#ffffff26;color:white;flex-shrink:0}.firm-mini-tabs{background:#fff;padding:10px 16px;box-shadow:0 3px 12px #15385b09}.firm-mini-tabs button{font-size:12px;white-space:nowrap}.firm-mini-tabs button[aria-selected=true]{background:#226aa6;color:white;box-shadow:0 3px 8px #226aa633}.firm-mini-page{padding:24px;background:linear-gradient(155deg,#fff,#f1f5fc)}.firm-mini-page h2{color:#214e79}.firm-mini-page:first-child h2{font-size:22px;margin-top:12px}.firm-mini-page:first-child .firm-mini-description{font-size:14px;color:#4c6077}.firm-mini-gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.firm-mini-gallery button{border:0;background:white;padding:0;border-radius:12px;overflow:hidden}.firm-mini-gallery img{width:100%;height:155px;object-fit:cover;display:block}.firm-mini-actions a:first-child{background:#226aa6;color:white}.firm-mini-page .firm-mini-service{background:#fff0dc;border-color:#f2d8ad;color:#986221}@media(max-width:600px){.firm-mini-top{padding:19px}.firm-mini-brand h1{font-size:20px}.firm-mini-brand img{width:50px;height:50px}.firm-mini-tabs{padding:8px;gap:2px}.firm-mini-tabs button{font-size:11px;padding:11px 4px}.firm-mini-gallery img{height:120px}}
.firm-mini{width:min(1000px,94vw,156dvh);height:auto;aspect-ratio:16/9;max-height:92dvh;overflow:hidden}.firm-mini[open]{display:flex;flex-direction:column}.firm-mini-top{flex:0 0 auto;padding:17px 24px}.firm-mini-brand h1{font-size:24px;margin:3px 0}.firm-mini-brand img{height:48px;width:48px}.firm-mini-tabs{flex:0 0 auto;padding:7px 16px}.firm-mini-tabs button{padding:10px}.firm-mini-track{flex:1;min-height:0}.firm-mini-page{height:100%;overflow-y:auto;scrollbar-width:none;padding:20px 24px}.firm-mini-page::-webkit-scrollbar,.firm-mini-description::-webkit-scrollbar{display:none}.firm-mini-description{scrollbar-width:none}.firm-mini-page:first-child{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:auto auto 1fr auto;column-gap:24px;align-content:center}.firm-mini-page:first-child .firm-mini-hero{grid-column:1;grid-row:1/5;height:100%;min-height:160px;max-height:100%}.firm-mini-page:first-child>.firm-mini-kicker,.firm-mini-page:first-child>h2,.firm-mini-page:first-child>.firm-mini-description,.firm-mini-page:first-child>.sponsor-badge{grid-column:2}.firm-mini-page:first-child .sponsor-badge{justify-self:start;align-self:start}.firm-mini-page h2{font-size:21px;margin:5px 0 10px}.firm-mini-page .firm-mini-kicker{margin:5px 0 8px}.firm-mini-gallery{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:10px;height:calc(100% - 62px);min-height:140px}.firm-mini-gallery button{min-height:0}.firm-mini-gallery img{height:100%;width:100%;object-fit:cover}.firm-mini-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.firm-mini-page h3{margin:10px 0 4px}.firm-mini-page p{margin:5px 0 10px}.firm-mini-page .firm-mini-description{max-height:none}@media(max-width:600px){.firm-mini{width:96vw;aspect-ratio:auto;height:min(570px,88dvh)}.firm-mini-top{padding:14px 16px}.firm-mini-brand h1{font-size:19px}.firm-mini-page{padding:16px}.firm-mini-page:first-child{grid-template-columns:1fr;grid-template-rows:minmax(100px,1fr) auto auto auto auto;gap:5px}.firm-mini-page:first-child .firm-mini-hero{grid-row:1;grid-column:1;min-height:100px}.firm-mini-page:first-child>.firm-mini-kicker,.firm-mini-page:first-child>h2,.firm-mini-page:first-child>.firm-mini-description,.firm-mini-page:first-child>.sponsor-badge{grid-column:1}.firm-mini-tabs{padding:7px 5px}.firm-mini-tabs button{padding:10px 3px}.firm-mini-actions{grid-template-columns:1fr}.firm-mini-gallery{gap:6px}.firm-mini-gallery img{height:100%}}@media(max-height:500px) and (min-width:601px){.firm-mini{width:94vw;height:92dvh;aspect-ratio:auto}.firm-mini-top{padding:10px 20px}.firm-mini-page{padding:12px 20px}.firm-mini-brand h1{font-size:19px}}
.firm-mini-page:first-child{grid-template-rows:minmax(0,1fr)}.firm-mini-page:first-child .firm-mini-hero{grid-row:1;grid-column:1}.firm-mini-home-info{grid-column:2;grid-row:1;min-height:0;display:flex;flex-direction:column;overflow-y:auto;scrollbar-width:none}.firm-mini-home-info::-webkit-scrollbar{display:none}.firm-mini-home-info .firm-mini-about{font-size:13px;line-height:1.8;white-space:pre-line;margin:4px 0 16px}.firm-mini-home-contact{margin-top:auto;border-top:1px solid #d5e0ed;padding-top:12px}.firm-mini-home-contact h3{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:#617b96;margin:0 0 5px}.firm-mini-home-contact a{display:inline-block;color:#245b8d;text-decoration:none;font-size:14px;font-weight:600;margin:4px 15px 8px 0}.firm-mini-home-info .sponsor-badge{align-self:flex-start;margin-top:7px}@media(max-width:600px){.firm-mini-page:first-child{grid-template-rows:minmax(110px,.8fr) minmax(0,1fr)}.firm-mini-home-info{grid-column:1;grid-row:2}.firm-mini-home-contact{margin-top:8px}}
.city-seo-guide{position:fixed;bottom:44px;left:16px;z-index:1000;width:270px;border:1px solid #d4e2ef;border-radius:10px;background:#f7fbfff2;color:#35526e;font:12px Segoe UI,Arial,sans-serif;box-shadow:0 3px 18px #14335112}.city-seo-guide summary{padding:9px 12px;cursor:pointer}.city-seo-guide article{padding:0 14px 12px;max-height:45dvh;overflow-y:auto}.city-seo-guide h2{font-size:15px;line-height:1.5}.city-seo-guide h3{font-size:13px;margin:16px 0 6px}.city-seo-guide p{font-size:12px;line-height:1.7;color:#5c6e80}@media(max-width:900px){.city-seo-guide{bottom:49px;left:12px;width:220px}.city-seo-guide summary{font-size:11px}}
.analytics-tools{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0;align-items:center}.analytics-tools select{width:auto!important;margin:0!important;min-width:145px}.analytics-tools button{margin:0!important}.analytics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px}.analytics-stat,.analytics-card{border:1px solid #dbe5f1;border-radius:12px;background:#fff;box-shadow:0 3px 14px #1e3a6506;padding:18px}.analytics-stat span{font-size:12px;color:#6a7c94;display:block}.analytics-stat strong{display:block;font-size:27px;color:#235994;margin-top:8px}.analytics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}.analytics-card{margin-bottom:16px;min-width:0}.analytics-card h3{font-size:15px;margin:0 0 15px}.analytics-ranking{display:flex;position:relative;justify-content:space-between;gap:15px;padding:10px 0 14px;border-bottom:1px solid #edf1f7;font-size:12px}.analytics-ranking span{overflow-wrap:anywhere}.analytics-ranking i{position:absolute;bottom:0;left:0;height:3px;border-radius:3px;background:linear-gradient(90deg,#5f91dd,#69c6bd)}.analytics-table-wrap{overflow:auto;max-height:420px}.analytics-table-wrap table{border-collapse:collapse;width:100%;font-size:12px;text-align:left}.analytics-table-wrap th{background:#edf3fb;position:sticky;top:0}.analytics-table-wrap td,.analytics-table-wrap th{padding:10px;border-bottom:1px solid #e7edf5;white-space:nowrap}@media(max-width:750px){.analytics-grid{grid-template-columns:1fr}.analytics-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Public map: compact discovery panel and a quiet, consistent control system. */
.map-modern{font-family:Inter,Segoe UI,Arial,sans-serif;color:#1e293b}.map-modern .category-glass-panel{background:#fffffff2!important;border:1px solid #e2e8f0!important;backdrop-filter:blur(18px);box-shadow:0 8px 35px #263b5612!important;padding:20px!important;border-radius:18px!important}.map-modern .card>.eyebrow,.map-modern .card>.legend,.map-modern .card>p{display:none!important}.map-modern .map-brand{display:flex;align-items:center;gap:10px;margin-bottom:21px;font-size:17px;font-weight:750;letter-spacing:-.4px;color:#193955}.map-brand-symbol{display:grid;place-items:center;width:36px;height:36px;background:#1f6176;color:#fff;border-radius:11px;font-size:21px;box-shadow:0 4px 9px #1f617622}.map-modern .map-brand small{display:block;font-size:10px;letter-spacing:0;font-weight:400;color:#8996a3;margin-top:3px}.map-modern .category-glass-panel h1{font:650 15px/1.5 Segoe UI,Arial,sans-serif!important;letter-spacing:-.2px;margin:0 0 19px!important;color:#324d64}.map-modern .category-heading{font-size:11px!important;text-transform:uppercase;letter-spacing:1.5px!important;color:#8393a2!important;margin:0 0 5px!important}.map-modern .category-hint{font-size:11px!important;color:#8291a0!important;margin:0 0 13px!important}.discover-search input{width:100%;min-width:0;border:1px solid #e3eaf0;background:#f5f8fa;border-radius:10px;padding:11px 10px;font:11px Segoe UI,Arial,sans-serif;color:#334d62;outline:none}.discover-search input:focus{border-color:#6e9eae;box-shadow:0 0 0 3px #4b829711}.discover-quick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:13px 0}.discover-quick[hidden]{display:none}.discover-quick button{display:flex;align-items:center;gap:8px;border:1px solid #e5ebf0;border-radius:10px;background:#fff;padding:12px 9px;text-align:left;font:500 11px Segoe UI,Arial,sans-serif;color:#4b6072;cursor:pointer}.discover-quick button i{width:7px;height:7px;border-radius:50%;background:var(--quick-color);flex-shrink:0}.discover-quick button:hover{background:#f5f9fa;border-color:#b2cbd4}.discover-quick button.selected{background:#eaf4f5;border-color:#8fb7bf;color:#205f6e}.discover-tools{display:flex;align-items:center;justify-content:space-between;margin:10px 0 0;gap:8px}.discover-tools button{border:0;background:none;font:500 10px Segoe UI,Arial,sans-serif;padding:5px 0;color:#477b8b;cursor:pointer}.discover-tools button:last-child{color:#97a4ae;font-size:9px}.discover-matches:not(:empty){margin:8px 0;max-height:218px;overflow:auto;font-size:11px;color:#7e8d99}.discover-matches button{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:11px 6px;border:0;border-bottom:1px solid #eef2f5;background:transparent;cursor:pointer;text-align:left;color:#36596d;font:12px Segoe UI,Arial,sans-serif}.discover-matches small{font-size:9px;color:#96a3b0}.map-modern #business-category[hidden]{display:none!important}.map-modern #business-category{max-height:235px;overflow-y:auto;margin-top:12px;padding-right:5px;scrollbar-width:thin}.map-modern .category-choice{border-radius:8px;font-size:11px;padding:8px;margin:0!important}.map-modern .category-choice:hover{background:#f1f6f8}.map-modern .restaurant-types{margin:0 0 6px 15px;border:0;background:#f4f8fa;border-radius:9px;padding:5px 8px}.map-modern .restaurant-types summary{font-size:10px;color:#8392a1}.map-modern .subcategory-search{font-size:10px;background:white;border-color:#e4eaf0}.map-modern .inline-basemaps{gap:16px;border-top:1px solid #ebeff3;margin-top:16px;padding-top:13px}.map-modern .inline-basemaps label{font-size:10px;color:#8a98a4}.map-modern .inline-basemaps input{width:13px;height:13px;background:#f2f6f8;border-color:#c0ced8;box-shadow:none}.map-modern .inline-basemaps input:checked{background:#39798b}.map-modern #business-count{font-size:10px;color:#8c9caa;margin-top:12px}.map-modern .search-box{background:white;border:1px solid #dfe6ec!important;border-radius:14px!important;box-shadow:0 4px 24px #20354e10!important;backdrop-filter:none;padding:0!important}.map-modern .search-box:before,.map-modern .search-box:after{display:none!important;animation:none!important}.map-modern .search-box input{background:transparent;font:12px Segoe UI,Arial,sans-serif;padding:16px 19px;border-radius:14px}.map-modern #search-results button{font-size:12px;padding:12px}.map-modern #search-results small{font-size:10px}.map-modern .top-membership{background:#ffffffef!important;border:1px solid #e1e8ee!important;border-radius:13px!important;box-shadow:0 4px 24px #20354e0a!important;padding:5px!important;max-width:none}.map-modern .top-membership .glass-membership{gap:2px}.map-modern .top-membership .glass-membership a{flex:none;padding:11px 13px!important;border-radius:9px!important;font:500 11px Segoe UI,Arial,sans-serif;color:#607386}.map-modern .top-membership .glass-membership a:first-child{background:#235c70;color:white}.map-modern .top-membership .glass-membership a:hover{opacity:.85}.map-modern .map-right-dock{width:238px;gap:7px;bottom:74px}.map-modern .eso-button,.map-modern .bus-panel,.map-modern .pharmacy-panel{border:1px solid #e1e8ed;background:#fffffff2;border-radius:12px;box-shadow:0 3px 16px #243b5309;color:#4a6377;backdrop-filter:blur(12px)}.map-modern .eso-button{font:500 11px Segoe UI,Arial,sans-serif;padding:13px}.map-modern .bus-panel>summary,.map-modern .pharmacy-panel>summary{font:500 11px Segoe UI,Arial,sans-serif;padding:13px}.map-modern .site-statistics{border:0;background:#ffffffd9;color:#94a1ab;font-size:9px;box-shadow:none;padding:6px 12px;border-radius:20px;white-space:normal;line-height:1.5}.map-modern .selection-notice{border:1px solid #e3eaf0;background:#ffffffeb;color:#6a7f90;font-size:10px;box-shadow:0 2px 12px #2d456b08;border-radius:20px;padding:9px 17px;max-width:min(600px,70vw);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.map-modern .city-seo-guide{background:#ffffffde;border-color:#e5ebf0;color:#8798a6;border-radius:10px;box-shadow:none;width:220px;bottom:39px}.map-modern .city-seo-guide summary{font-size:10px}.map-modern .leaflet-control-zoom{border:1px solid #dfe7ed;border-radius:10px;overflow:hidden;box-shadow:0 4px 14px #2d456b0a}.map-modern .leaflet-control-zoom a{color:#607b8b;font-weight:400;background:#fffffff2}.map-modern button:focus-visible,.map-modern a:focus-visible{outline:2px solid #327a94;outline-offset:3px}@media(min-width:901px){.map-modern .category-glass-panel{top:20px!important;left:20px!important;width:280px!important;max-width:280px!important}.map-modern .search-box{top:20px!important;left:calc(50% + 35px)!important;width:clamp(290px,33vw,470px)!important;max-width:calc(100% - 600px)!important;transform:translateX(-50%)!important}.map-modern .leaflet-top.leaflet-left{left:auto;right:20px;top:90px}}@media(max-width:900px){.map-modern .category-glass-panel{width:min(300px,88vw)!important;top:12px!important;left:12px!important;bottom:auto!important;height:auto!important;max-height:calc(100dvh - 80px)!important;overflow-y:auto!important;border-radius:16px!important;transform:translateX(calc(-100% - 24px))}.map-modern.category-menu-open .category-glass-panel{transform:translateX(0)}.map-modern .map-brand{margin-bottom:14px}.map-modern .category-menu-close{float:right;background:#f1f5f8;border-radius:8px;color:#7b8f9e;padding:6px;font-size:10px}.map-modern #category-menu-toggle{top:12px;left:12px;border:1px solid #e0e8ee;background:#ffffffef;color:#4c6e80;border-radius:11px;padding:11px 13px;font:600 11px Segoe UI,Arial,sans-serif;box-shadow:0 3px 15px #29415a0b}.map-modern .search-box{top:65px!important;width:calc(100% - 24px)!important;max-width:500px!important}.map-modern .search-box input{font-size:12px;padding:14px}.map-modern .top-membership{top:10px;right:12px}.map-modern .top-membership .glass-membership a{font-size:10px;padding:9px 10px!important}.map-modern .map-right-dock{width:215px;bottom:80px}.map-modern .selection-notice{max-width:calc(100vw - 24px);font-size:9px;bottom:48px}.map-modern .city-seo-guide{bottom:20px;width:150px;left:12px}.map-modern .city-seo-guide article{position:absolute;bottom:35px;width:min(300px,90vw);background:white;padding:15px;border:1px solid #e0e7ee;border-radius:12px;max-height:55dvh}.map-modern .site-statistics{font-size:8px;max-width:calc(100vw - 24px);bottom:0}.map-modern .leaflet-top.leaflet-left{top:120px}}
.firm-mini-top .firm-mini-share{width:auto;height:32px;border-radius:8px;font:500 11px Segoe UI;padding:0 12px;margin-right:10px}.member-site-link{margin-top:14px;padding:14px;background:#edf6f7;border:1px solid #d5e8eb;border-radius:10px}.member-site-link h4{margin:0 0 8px;font-size:13px}.member-site-link a{display:block;overflow-wrap:anywhere;font-size:12px;color:#28677b;margin-bottom:8px}
.firm-verification{display:inline-flex;align-self:flex-start;font:500 10px Segoe UI,Arial,sans-serif;border-radius:20px;padding:5px 9px;margin-top:8px;border:1px solid #d8e1e8;background:#eef2f5;color:#84919d}.firm-verification.verified{border-color:#bde2d3;background:#e9f7ef;color:#2c8060}
.map-firm-verification{display:block;font:500 8px/1.5 Segoe UI,Arial,sans-serif;color:#8a8f97;letter-spacing:0}.map-firm-verification.verified{color:#287c5a}
.location-pending-notice{padding:12px;border:1px solid #e6d9ac;border-radius:9px;background:#fff8e5;font-size:11px;line-height:1.8;color:#8b7343}.location-pending-notice[hidden]{display:none}.location-is-pending #save-business{background:#c1ccd6!important;color:#fff!important;cursor:default;opacity:.8}.location-is-pending #coords{color:#9ba8b4}.approval-badge{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;margin-left:8px;background:#da4a5d;color:white;font:bold 10px Segoe UI;border-radius:50%;vertical-align:middle}.approval-badge[hidden]{display:none!important}.location-review-card{border-left:3px solid #e0a359}.location-compare-dialog{width:min(850px,94vw);padding:20px;border:1px solid #dce7f0;border-radius:15px;background:#f8fbff;color:#34536c}.location-compare-dialog::backdrop{background:#17304977}.location-compare-dialog h3{font:600 16px Segoe UI;margin:0 0 10px}.location-compare-dialog p{font:12px Segoe UI;color:#718296}.location-compare-dialog>button{float:right;padding:8px 15px;border:0;border-radius:8px;background:#e7eef7;color:#395a79;cursor:pointer;margin-bottom:12px}.location-compare-map{height:min(460px,60dvh);width:100%;clear:both;border-radius:10px}
#cancel-location-request[hidden]{display:none!important}#cancel-location-request{margin-top:10px;width:100%}
.location-approved-notice{margin:14px 0;padding:12px;border:1px solid #dce5ee;border-radius:9px;background:#f2f6fa;color:#7a8c9e;font:11px/1.8 Segoe UI,Arial,sans-serif}.location-approved-notice p{margin:5px 0;font-size:11px}.location-approved-notice.is-approved{background:#eaf7f0;border-color:#c3e1cf;color:#487963}.location-approved-notice strong{font-size:11px;color:#2f7c57}#save-business[hidden],#business-form .accuracy-consent[hidden]{display:none!important}
.audit-tools{display:flex;gap:8px;margin:14px 0}.audit-tools button{padding:8px 12px!important;font-size:11px!important}.audit-table-wrap{width:100%;overflow:auto;border:1px solid #dce5ef;border-radius:11px;max-height:65dvh}.audit-table{border-collapse:collapse;width:100%;min-width:800px;text-align:left;font:12px Segoe UI,Arial,sans-serif}.audit-table th{position:sticky;top:0;background:#eaf0f8;color:#476886;font-size:11px;padding:12px;z-index:2}.audit-table td{vertical-align:top;padding:12px;border-bottom:1px solid #e7edf4;white-space:nowrap}.audit-table tr:nth-child(even){background:#f7fafd}.audit-table td:last-child{min-width:210px;max-width:400px;white-space:normal}.audit-table summary{cursor:pointer;color:#487c9c;font-size:11px}.audit-change{margin:10px 0;padding:10px;background:#edf4fa;border-radius:8px;font-size:11px;overflow-wrap:anywhere}.audit-change p{font-size:11px!important;line-height:1.7;white-space:pre-wrap}.audit-change strong{color:#45677f}.website-last-approval{display:block;font-size:11px;margin-top:9px;opacity:.9}.approval-confirmed-alert{background:#eaf7f0!important;border-color:#c4e2d1!important;color:#46795f!important}
.firm-audit-row{border:1px solid #d8e3ef;border-radius:10px;background:#f0f5fa;margin:14px 0;padding:0!important}.firm-audit-row>summary{padding:12px 14px;font:600 11px Segoe UI,Arial,sans-serif;color:#4d7293;cursor:pointer}.firm-audit-row>div{padding:15px;min-width:0}.firm-audit-row h2{font-size:16px!important}.firm-audit-row .audit-table-wrap{max-height:400px}.firm-account-payments{padding:13px 16px;background:#edf6f3;border:1px solid #d6e7e0;border-radius:10px;margin:15px 0}.firm-account-payments h3{font-size:13px}.firm-account-payments p{font-size:11px;line-height:1.8;white-space:normal;overflow-wrap:anywhere}.firm-audit-dialog{width:min(1120px,95vw);max-height:90dvh;overflow:auto;border:1px solid #dce6f0;border-radius:15px;background:#f7faff;padding:22px;font-family:Segoe UI,Arial,sans-serif;color:#49647c}.firm-audit-dialog::backdrop{background:#17304766;backdrop-filter:blur(4px)}.firm-audit-close{float:right;position:sticky;top:0;z-index:5;padding:8px 14px;border:0;border-radius:8px;background:#e4edf7;color:#4c6c8a;cursor:pointer}.firm-audit-dialog h2{font-size:20px}.firm-audit-dialog>section>p{font-size:12px;line-height:1.7;color:#7c8d9d}

/* Premium category results use their own shared color for point, halo and name. */
.premium-category-result .premium-business-title{color:#bd174d!important;border:2px solid #ef3b73!important;background:#fff0f6ed!important;box-shadow:0 0 17px #ef3b7377!important;animation:premium-category-glow 1.3s ease-in-out infinite!important}
@keyframes premium-category-glow{0%,100%{box-shadow:0 0 6px #ef3b7355}50%{box-shadow:0 0 22px #ef3b73bb}}
@media(prefers-reduced-motion:reduce){.premium-category-result .premium-business-title{animation:none!important}}
