@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=Manrope:wght@400;500;600;700&display=swap');

:root{--ink:#e9f2f2;--muted:#8da0a0;--cyan:#4fe4d0;--cyan2:#1eb7aa;--panel:rgba(7,15,18,.76);--line:rgba(180,230,225,.14);--shadow:0 22px 60px rgba(0,0,0,.34)}
*{box-sizing:border-box}html,body,#app,#map{width:100%;height:100%;margin:0;overflow:hidden}body{background:#020507;color:var(--ink);font-family:Manrope,system-ui,sans-serif}.maplibregl-canvas{cursor:grab}.maplibregl-canvas:active{cursor:grabbing}
.glass{background:linear-gradient(145deg,rgba(12,23,26,.84),rgba(5,11,14,.72));border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.space-grain{position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.09;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/%3E%3C/svg%3E")}
button,input{font:inherit;color:inherit}.topbar{position:fixed;z-index:10;left:18px;right:18px;top:16px;height:72px;border-radius:14px;display:flex;align-items:center;padding:0 18px 0 21px}.brand{display:flex;align-items:center;gap:12px;color:inherit;text-decoration:none;width:260px}.brand-mark{position:relative;width:32px;height:32px;border:1px solid rgba(79,228,208,.65);border-radius:50%;box-shadow:inset 0 0 16px rgba(79,228,208,.14),0 0 22px rgba(79,228,208,.12)}.brand-mark:before,.brand-mark:after,.brand-mark i{content:"";position:absolute;inset:6px;border:1px solid rgba(79,228,208,.52);border-radius:50%;transform:rotate(55deg)}.brand-mark:after{transform:rotate(-55deg)}.brand-mark i{inset:15px 3px;border-width:1px 0 0;border-radius:0;transform:none}.brand b{font-size:14px;letter-spacing:.22em}.brand em{font-style:normal;color:var(--cyan);font-size:9px;letter-spacing:.32em;display:block;margin-top:1px}
.search-wrap{position:relative;margin:auto;width:min(460px,38vw);height:42px;display:flex;align-items:center;background:rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.11);border-radius:10px;transition:.2s}.search-wrap:focus-within{border-color:rgba(79,228,208,.46);box-shadow:0 0 0 3px rgba(79,228,208,.06)}.search-wrap svg{width:17px;margin-left:14px;stroke:#819393;fill:none;stroke-width:1.7}.search-wrap input{height:100%;flex:1;background:none;border:0;outline:0;padding:0 12px;font-size:12px}.search-wrap input::placeholder{color:#728181}.search-wrap kbd{font-family:DM Mono;font-size:9px;color:#778585;border:1px solid rgba(255,255,255,.12);border-radius:5px;padding:4px 6px;margin-right:9px}.search-results{position:absolute;top:49px;left:0;right:0;background:rgba(7,14,17,.96);border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:var(--shadow)}.search-result{width:100%;border:0;background:transparent;border-radius:7px;text-align:left;padding:9px 10px;display:flex;justify-content:space-between;cursor:pointer;font-size:12px}.search-result:hover{background:rgba(79,228,208,.09)}.search-result small{color:var(--muted)}
.top-actions{width:300px;display:flex;justify-content:flex-end;align-items:center;gap:8px}.live-pill{font:500 9px DM Mono;letter-spacing:.16em;color:#a9b7b6;border:1px solid var(--line);border-radius:20px;padding:8px 10px}.live-pill span,.online-dot{display:inline-block;width:6px;height:6px;background:var(--cyan);border-radius:50%;margin-right:7px;box-shadow:0 0 10px var(--cyan);animation:pulse 1.8s infinite}.icon-btn,.avatar{width:38px;height:38px;border:1px solid var(--line);border-radius:9px;background:rgba(255,255,255,.035);display:grid;place-items:center;cursor:pointer}.icon-btn:hover,.avatar:hover{border-color:rgba(79,228,208,.5);background:rgba(79,228,208,.08)}.icon-btn svg{width:16px;fill:none;stroke:#b8c8c7;stroke-width:1.5}.avatar{border-radius:50%;font:500 12px DM Mono;color:var(--cyan)}.place-btn{height:36px;border:1px solid rgba(79,228,208,.36);border-radius:8px;background:rgba(79,228,208,.09);color:#c7f9f1;font:500 8px DM Mono;letter-spacing:.12em;padding:0 10px;cursor:pointer}.place-btn span{color:var(--cyan);font-size:13px}.place-btn:hover{background:rgba(79,228,208,.17)}
.left-rail{position:fixed;z-index:9;left:18px;top:104px;width:228px;border-radius:14px;padding:16px 11px 12px}.rail-title,.map-style-label{font:500 9px DM Mono;color:#718080;letter-spacing:.18em;padding:0 7px 10px}.rail-title span{float:right}.layer{position:relative;width:100%;height:59px;border:0;border-radius:9px;background:transparent;display:flex;align-items:center;gap:11px;text-align:left;padding:6px 8px;cursor:pointer}.layer:hover{background:rgba(255,255,255,.035)}.layer>span:nth-child(2){flex:1}.layer b{font-size:11px;font-weight:600;display:block}.layer small{font:300 8px DM Mono;color:#718180;margin-top:3px;display:block}.layer small strong{font-weight:400;color:#95aaa8}.layer-icon{position:relative;width:34px;height:34px;border:1px solid rgba(255,255,255,.11);border-radius:8px;background:rgba(0,0,0,.24);overflow:hidden}.layer-icon:before,.layer-icon:after,.layer-icon i{content:"";position:absolute}.satellite:before{inset:8px 3px;border:1px solid #728886;border-radius:50%;transform:rotate(-20deg)}.satellite:after{width:4px;height:4px;border-radius:50%;background:var(--cyan);left:15px;top:14px;box-shadow:0 0 7px var(--cyan)}.clouds:before{width:20px;height:8px;border-radius:10px;background:#8da09f;left:7px;top:15px;box-shadow:7px -4px 0 -2px #8da09f,-6px 2px 0 -1px #8da09f}.flights:before{width:20px;height:1px;background:#7f9492;top:18px;left:7px;transform:rotate(-25deg)}.flights:after{border-style:solid;border-width:3px 0 3px 9px;border-color:transparent transparent transparent var(--cyan);left:14px;top:12px;transform:rotate(-25deg)}.night:before{width:18px;height:18px;border-radius:50%;box-shadow:-6px 2px 0 #91a3a1;top:6px;left:12px}.switch{width:25px;height:13px;border-radius:8px;border:1px solid rgba(255,255,255,.16);position:relative;transition:.2s}.switch:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#667573;top:2px;left:2px;transition:.2s}.layer.active .switch{border-color:rgba(79,228,208,.55);background:rgba(79,228,208,.14)}.layer.active .switch:after{left:14px;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}.rail-divider{height:1px;background:var(--line);margin:10px 6px 13px}.segmented{display:flex;background:rgba(0,0,0,.22);padding:3px;border-radius:8px}.segmented button{flex:1;border:0;background:none;border-radius:6px;padding:7px 2px;font:400 9px DM Mono;color:#748481;cursor:pointer}.segmented button.active{background:rgba(79,228,208,.1);color:#c5f6ee}
.country-card{position:fixed;z-index:9;right:18px;top:104px;width:326px;border-radius:15px;padding:18px;transform:translateX(0);transition:.35s cubic-bezier(.2,.8,.2,1)}.country-card.hidden{transform:translateX(calc(100% + 30px));opacity:0}.card-close{position:absolute;right:13px;top:11px;border:0;background:none;color:#71807f;font-size:20px;cursor:pointer}.country-heading{display:flex;gap:12px;align-items:center}.flag{width:43px;height:43px;background:rgba(255,255,255,.06);border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;font-size:23px}.country-heading small{font:500 8px DM Mono;color:var(--cyan);letter-spacing:.15em}.country-heading h1{font-size:18px;margin:4px 0 0;letter-spacing:-.02em}.country-subtitle{color:#7f908e;font-size:10px;margin:11px 0 14px}.stat-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--line);border-radius:10px;overflow:hidden}.stat{min-height:72px;padding:11px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(0,0,0,.12)}.stat:nth-child(2n){border-right:0}.stat:nth-child(n+3){border-bottom:0}.stat span,.data-row span,.special span{font:400 7px DM Mono;color:#748481;letter-spacing:.11em;display:block}.stat b{font:500 18px DM Mono;display:block;margin-top:7px}.stat small{font:300 7px DM Mono;color:#687976}.stat.featured b{color:#d7f7f1}.stat.featured{background:linear-gradient(135deg,rgba(79,228,208,.07),transparent)}.online-dot{width:4px;height:4px;margin-right:4px}.data-row{height:52px;margin-top:10px;border:1px solid var(--line);border-radius:9px;display:flex;align-items:center;justify-content:space-between;padding:0 12px}.data-row>div>b{font:500 11px DM Mono;margin-top:4px}.data-row .rate{text-align:right}.data-row .rate b{font-size:14px;color:var(--cyan)}.data-row .rate small{font:400 6px DM Mono;color:#748481;display:block}.special{height:57px;margin-top:9px;background:linear-gradient(100deg,rgba(79,228,208,.12),rgba(79,228,208,.025));border:1px solid rgba(79,228,208,.2);border-radius:9px;display:flex;align-items:center;padding:8px;gap:9px}.special-icon{width:34px;height:34px;border-radius:8px;background:rgba(79,228,208,.12);display:grid;place-items:center;color:var(--cyan);font:500 13px DM Mono}.special>div:nth-child(2){flex:1}.special b{font-size:9px;margin-top:5px;display:block}.special button{border:0;background:none;color:var(--cyan);font-size:17px;cursor:pointer}.card-footer{display:flex;justify-content:space-between;margin-top:13px;color:#647573;font:300 7px DM Mono}.card-footer span i{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--cyan);margin-right:5px}
.bottom-bar{position:fixed;z-index:8;bottom:17px;left:50%;transform:translateX(-50%);display:flex;gap:8px}.coordinates,.hint{height:34px;border-radius:9px;display:flex;align-items:center;padding:0 12px;font:300 8px DM Mono;color:#849593;white-space:nowrap}.coordinates i,.hint i{width:1px;height:12px;background:var(--line);margin:0 10px}.mouse-icon{width:10px;height:14px;border:1px solid #71817f;border-radius:5px;margin-right:7px;position:relative}.mouse-icon:after{content:"";position:absolute;left:4px;top:2px;width:1px;height:3px;background:var(--cyan)}.zoom-level{position:fixed;z-index:8;right:18px;bottom:18px;border-radius:9px;height:33px;padding:0 12px;display:flex;gap:9px;align-items:center;font:400 8px DM Mono;color:#82918f;letter-spacing:.11em}.zoom-level b{color:var(--cyan);font-weight:500}.toast{position:fixed;z-index:20;left:50%;bottom:64px;transform:translate(-50%,16px);padding:10px 14px;border-radius:8px;font-size:10px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
.featured-toggle{width:100%;margin-top:9px;padding:9px 8px;border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.14);display:grid;grid-template-columns:24px 1fr 14px;grid-template-rows:auto auto;text-align:left;align-items:center;cursor:pointer}.featured-toggle>span{grid-row:1/3;color:var(--cyan);font-size:17px}.featured-toggle b{font-size:9px}.featured-toggle small{font:300 7px DM Mono;color:#71817f}.featured-toggle i{grid-column:3;grid-row:1/3;color:var(--cyan);font-style:normal}.featured-toggle:hover{border-color:rgba(79,228,208,.35)}.featured-drawer{position:fixed;z-index:12;left:258px;top:104px;width:270px;max-height:calc(100vh - 128px);border-radius:14px;padding:15px;overflow:auto}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start}.drawer-head small,.placement-card>small,.modal-head small{font:500 7px DM Mono;color:var(--cyan);letter-spacing:.16em}.drawer-head h2{font-size:17px;margin:4px 0 12px}.drawer-head button,.placement-card>button:first-child,.modal-head button{border:0;background:none;color:#778684;font-size:20px;cursor:pointer}.featured-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.featured-city{min-height:50px;border:1px solid var(--line);border-radius:8px;background:rgba(0,0,0,.14);text-align:left;padding:7px 8px;cursor:pointer}.featured-city:hover{border-color:rgba(79,228,208,.38);background:rgba(79,228,208,.06)}.featured-city b{display:block;font-size:9px}.featured-city small{font:300 7px DM Mono;color:#738481}.featured-city span{font:400 7px DM Mono;color:var(--cyan);float:right}
.placement-card{position:fixed;z-index:14;right:18px;bottom:62px;width:305px;border-radius:14px;padding:14px}.placement-card>button:first-child{position:absolute;right:10px;top:7px;z-index:2}.placement-media{height:126px;border-radius:10px;margin-bottom:12px;background:radial-gradient(circle at 55% 30%,rgba(79,228,208,.28),transparent 35%),linear-gradient(135deg,#14353a,#071012);display:grid;place-items:center;overflow:hidden}.placement-media img{width:100%;height:100%;object-fit:cover}.placement-media span{font:500 26px DM Mono;color:rgba(190,255,247,.75);letter-spacing:.08em}.placement-card h2{font-size:18px;margin:5px 0}.placement-card p{font-size:9px;line-height:1.55;color:#879896;max-height:58px;overflow:auto}.placement-meta{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:9px;font:400 8px DM Mono;color:#7b8d8a}.placement-meta span:last-child{color:var(--cyan)}.placement-card>button:last-child{width:100%;margin-top:11px;border:1px solid rgba(79,228,208,.35);background:rgba(79,228,208,.08);border-radius:7px;padding:9px;font:500 8px DM Mono;letter-spacing:.1em;cursor:pointer}.placement-card>button:last-child span{color:var(--cyan);float:right}
.modal-backdrop{position:fixed;z-index:30;inset:0;background:rgba(0,3,5,.72);backdrop-filter:blur(8px);padding:25px;overflow:auto}.placement-modal{width:min(690px,100%);margin:auto;border-radius:18px;padding:21px}.modal-head{display:flex;justify-content:space-between}.modal-head h2{font-size:21px;margin:5px 0 16px}.location-picker{height:54px;border:1px solid rgba(79,228,208,.22);background:rgba(79,228,208,.05);border-radius:9px;padding:8px 10px;display:flex;justify-content:space-between;align-items:center;margin-bottom:13px}.location-picker span,.price-box>div>span{display:block;font:400 7px DM Mono;color:#758784;letter-spacing:.12em}.location-picker b{font:400 9px DM Mono}.location-picker button{border:1px solid var(--line);border-radius:6px;background:rgba(0,0,0,.18);padding:7px 9px;font:500 7px DM Mono;cursor:pointer}.placement-modal form>label,.form-row label{display:block;font:500 8px DM Mono;color:#92a3a1;margin-bottom:10px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.placement-modal input,.placement-modal select,.placement-modal textarea{display:block;width:100%;margin-top:5px;background:rgba(0,0,0,.22);border:1px solid var(--line);border-radius:7px;padding:9px 10px;outline:0;font:400 10px Manrope;color:#dbe8e7}.placement-modal input:focus,.placement-modal select:focus,.placement-modal textarea:focus{border-color:rgba(79,228,208,.5)}.placement-modal select option{background:#0a1416}.placement-modal textarea{height:67px;resize:vertical}.media-drop{position:relative;border:1px dashed rgba(79,228,208,.28);border-radius:9px;padding:12px!important;cursor:pointer}.media-drop input{position:absolute;opacity:0;pointer-events:none}.media-drop span{color:#c2d3d1}.media-drop small{display:block;color:#657572;margin-top:4px}.price-box{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--line);border-radius:9px;padding:10px;margin:11px 0}.price-box b{font-size:10px;display:block;margin:3px 0}.price-box small{font-size:8px;color:#72817f}.price-box label{position:relative}.price-box label span{position:absolute;left:10px;top:13px;color:var(--cyan)}.price-box input{width:88px;padding-left:24px;font:500 15px DM Mono}.consent{display:flex!important;gap:8px;align-items:flex-start!important;font:400 8px Manrope!important;line-height:1.4}.consent input{width:13px;margin:0;accent-color:var(--cyan)}.submit-placement{width:100%;border:1px solid rgba(79,228,208,.42);background:rgba(79,228,208,.12);border-radius:8px;padding:11px 12px;font:500 8px DM Mono;letter-spacing:.11em;cursor:pointer}.submit-placement span{float:right;color:var(--cyan)}body.picking-location #map canvas{cursor:crosshair!important}.picking-banner{position:fixed;z-index:40;top:102px;left:50%;transform:translateX(-50%);background:#0c1c1e;border:1px solid var(--cyan);border-radius:8px;padding:10px 14px;font:500 9px DM Mono;color:#d7fffa}
.welcome{position:fixed;z-index:15;left:50%;bottom:62px;width:min(390px,calc(100vw - 32px));transform:translateX(-50%);border-radius:18px;padding:24px 30px;text-align:center;transition:.5s cubic-bezier(.2,.8,.2,1)}.welcome.hide{opacity:0;transform:translate(-50%,18px) scale(.96);pointer-events:none}.welcome>button:first-child{position:absolute;right:15px;top:10px;border:0;background:none;color:#6f7f7d;font-size:22px;cursor:pointer}.welcome>small{font:500 8px DM Mono;color:var(--cyan);letter-spacing:.24em}.welcome h2{font-size:29px;line-height:1.07;margin:9px 0}.welcome h2 em{font-style:normal;color:var(--cyan)}.welcome p{font-size:10px;line-height:1.55;color:#849492;max-width:290px;margin:0 auto 15px}.explore-btn{border:1px solid rgba(79,228,208,.4);background:rgba(79,228,208,.1);border-radius:8px;padding:10px 15px;font:500 8px DM Mono;letter-spacing:.12em;cursor:pointer}.explore-btn:hover{background:rgba(79,228,208,.18)}.explore-btn span{font-size:13px;margin-left:10px}
.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{display:none}.maplibregl-popup{z-index:7}.maplibregl-popup-content{background:rgba(5,12,14,.9);border:1px solid rgba(79,228,208,.25);border-radius:7px;padding:7px 9px;color:#cfdddc;font:400 9px DM Mono;box-shadow:0 8px 30px #000}.maplibregl-popup-tip{display:none}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
@media(max-width:900px){.left-rail{top:auto;bottom:60px;width:auto;right:14px;left:14px;display:flex;padding:6px}.rail-title,.rail-divider,.map-style-label,.segmented,.featured-toggle{display:none}.layer{flex:1;height:48px;padding:5px;justify-content:center}.layer>span:nth-child(2),.layer .switch{display:none}.topbar{left:10px;right:10px}.brand{width:auto}.brand>span:last-child{display:none}.top-actions{width:auto}.live-pill{display:none}.country-card{right:10px;top:96px}.search-wrap{width:40vw}.bottom-bar{display:none}.featured-drawer{left:10px;top:96px}.placement-card{right:10px}}
@media(max-width:560px){.country-card{left:10px;right:10px;top:auto;bottom:118px;width:auto;max-height:52vh;overflow:auto}.topbar{height:60px;padding:0 10px}.search-wrap{width:auto;flex:1;margin-left:9px}.search-wrap kbd,.top-actions .avatar,.place-btn{display:none}.left-rail{bottom:10px}.welcome{padding:25px 20px}.zoom-level{display:none}.featured-drawer{left:10px;right:10px;width:auto}.placement-card{left:10px;right:10px;bottom:68px;width:auto}.modal-backdrop{padding:10px}.placement-modal{padding:16px}.form-row{grid-template-columns:1fr}.price-box{align-items:flex-end}.placement-modal textarea{height:78px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
