html,body{margin:0;padding:0;height:100%;background:#020617;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e5e7eb}#map{width:100%;height:min(52vh,520px)}@media(min-width:900px){#map{height:100vh}}.top-panel{max-width:320px;width:min(300px,calc(100vw - 18px));position:fixed;top:12px;left:50%;transform:translate(-50%);background:#060a12eb;padding:8px 10px;border-radius:16px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:1000;box-shadow:0 14px 40px #000000a6;border:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;gap:6px;align-items:center}.top-panel button{border-radius:12px;border:none;cursor:pointer;font-weight:700;white-space:nowrap;padding:7px 12px;font-size:.82rem;display:inline-flex;align-items:center;justify-content:center;min-width:210px;max-width:220px;width:100%}#locateBtn{padding:8px 16px;font-size:.82rem;background:linear-gradient(135deg,#111827,#020617);border:1px solid rgba(148,163,184,.75);color:#e5e7eb;box-shadow:0 8px 20px #000000a6}#locateBtn:hover{background:linear-gradient(135deg,#1f2937,#020617)}#arBtn{position:static;padding:8px 18px;font-size:.86rem;letter-spacing:.04em;text-transform:uppercase;background:linear-gradient(135deg,#ec4899,#f97316);color:#fff;border-radius:999px;border:1px solid rgba(248,250,252,.18);box-shadow:0 0 0 1px #0f172a99,0 10px 24px #000000d9;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}#arBtn:hover{box-shadow:0 0 0 1px #f8fafc38,0 12px 30px #000000e6;transform:translateY(-1px)}.mu-pin{position:relative;display:flex;flex-direction:column;align-items:center;transform:translateY(-2px)}.mu-pin-head{width:16px;height:16px;border-radius:999px;background:radial-gradient(circle at 30% 20%,red,#ec4899);border:2px solid #ffffff;box-shadow:0 0 4px #0000008c;position:relative}.mu-pin-head:after{content:"";position:absolute;inset:4px;border-radius:999px;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.7),transparent);opacity:.9}.mu-pin-stick{width:2px;height:12px;margin-top:1px;background:linear-gradient(to bottom,#ff00bf,#000);border-radius:999px;box-shadow:0 0 2px #0009}.marker-cluster div{border-radius:999px;border:2px solid #ffffff;color:#0b1120;font-weight:700;font-size:12px;box-shadow:0 0 6px #00000080}.marker-cluster-small div{background:radial-gradient(circle at 30% 20%,#f97316,#ec4899)}.marker-cluster-medium div{background:radial-gradient(circle at 30% 20%,#ec4899,#a855f7)}.marker-cluster-large div{background:radial-gradient(circle at 30% 20%,#f97316,#e11d48)}.inAppWarning{position:fixed;bottom:.9rem;left:50%;transform:translate(-50%);z-index:10000;max-width:480px;width:calc(100% - 1.8rem);padding:.55rem .8rem;border-radius:999px;background:linear-gradient(135deg,#111827,#020617);border:1px solid rgba(248,113,113,.7);box-shadow:0 12px 28px #000c;color:#fee2e2;font-size:.78rem;font-weight:500;display:flex;align-items:center;gap:.45rem;box-sizing:border-box}.inAppWarning strong{color:#fca5a5;font-weight:700}.inAppWarning span.icon{font-size:1.1rem;flex-shrink:0}.inAppWarning .text{flex:1 1 auto}.inAppWarning .openBrowserBtn{flex-shrink:0;border:none;border-radius:999px;padding:.35rem .7rem;font-size:.72rem;font-weight:600;cursor:pointer;background:linear-gradient(135deg,#f97316,#ec4899);color:#fff;white-space:nowrap}@media(max-width:480px){.inAppWarning{font-size:.75rem;padding:.5rem .7rem}.inAppWarning .openBrowserBtn{padding:.3rem .6rem;font-size:.7rem}}@media(max-width:520px){.top-panel{width:min(320px,calc(100vw - 20px))}.top-panel button{min-width:0;max-width:none;width:100%}}#addPlaceCard{scroll-margin-top:90px}@media(max-width:900px){#map{touch-action:pan-y}}@media(max-width:900px){body.panel-docked-mobile .top-panel{position:static!important;left:auto!important;top:auto!important;transform:none!important;width:100%;max-width:100%;margin:10px 0;z-index:auto;pointer-events:auto}}.top-panel{background:#060a12f0!important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@media(max-width:900px){.leaflet-control-attribution{font-size:10px;opacity:.35;background:transparent!important;padding:0 4px!important}}.top-panel{transition:transform 2s cubic-bezier(.16,1,.3,1),top 2s cubic-bezier(.16,1,.3,1),left 2s cubic-bezier(.16,1,.3,1),right 2s cubic-bezier(.16,1,.3,1),bottom 2s cubic-bezier(.16,1,.3,1),opacity 1s ease,box-shadow .25s ease}.top-panel.is-collapsed{inset:auto 20px 12px auto!important;transform:rotate(180deg) translateY(-6px)!important;transform-origin:center;width:auto!important;max-width:none!important;padding:8px 10px!important;gap:0!important;border-radius:999px!important;box-shadow:0 14px 34px #000000a6!important}.top-panel.is-collapsed>*:not(#togglePanelDockBtn){display:none!important}.top-panel #togglePanelDockBtn{width:auto!important;height:34px!important;padding:0 12px!important;border-radius:999px!important;background:linear-gradient(135deg,#111827,#020617);border:1px solid rgba(255,255,255,.14);color:#ffffffeb;box-shadow:inset 0 1px #ffffff0d,0 10px 22px #00000073;text-decoration:none!important}.top-panel.is-collapsed #togglePanelDockBtn{transform:rotate(180deg);background:linear-gradient(135deg,var(--accentA),var(--accentB),var(--accentC),var(--accentD))!important;background-size:220% 220%!important;border:1px solid rgba(255,255,255,.2)!important;box-shadow:0 0 0 1px #ffffff0f inset,0 10px 22px #00000073,0 0 18px #ff0055af,0 0 28px #ff00952e,0 0 36px #fa0!important;animation:flameEffect 6s ease infinite,panelGlowPulse 2.4s ease-in-out infinite!important}.top-panel #togglePanelDockBtn:hover{filter:brightness(1.05)}@keyframes panelGlowPulse{0%{filter:brightness(1)}50%{filter:brightness(1.1)}to{filter:brightness(1)}}@media(min-width:900px){.top-panel.is-partners-shifted{inset:auto 18px 18px auto!important;transform:rotate(0)!important;transform-origin:bottom right;opacity:.96;animation:partnersNudge .32s ease-out 1}.top-panel.is-collapsed.is-partners-shifted{animation:none!important}@keyframes partnersNudge{0%{transform:rotate(-3deg)}55%{transform:rotate(2deg)}to{transform:rotate(0)}}}.top-panel.is-collapsed.is-partners-shifted{transform:rotate(180deg) translateY(-6px)!important;transform-origin:center}
