:root{--vt-c-white: #ffffff;--vt-c-white-soft: #f8f8f8;--vt-c-white-mute: #f2f2f2;--vt-c-black: #181818;--vt-c-black-soft: #222222;--vt-c-black-mute: #282828;--vt-c-indigo: #2c3e50;--vt-c-divider-light-1: rgba(60, 60, 60, .29);--vt-c-divider-light-2: rgba(60, 60, 60, .12);--vt-c-divider-dark-1: rgba(84, 84, 84, .65);--vt-c-divider-dark-2: rgba(84, 84, 84, .48);--vt-c-text-light-1: var(--vt-c-indigo);--vt-c-text-light-2: rgba(60, 60, 60, .66);--vt-c-text-dark-1: var(--vt-c-white);--vt-c-text-dark-2: rgba(235, 235, 235, .64)}:root{--color-background: var(--vt-c-white);--color-background-soft: var(--vt-c-white-soft);--color-background-mute: var(--vt-c-white-mute);--color-border: var(--vt-c-divider-light-2);--color-border-hover: var(--vt-c-divider-light-1);--color-heading: var(--vt-c-text-light-1);--color-text: var(--vt-c-text-light-1);--section-gap: 160px}@media (prefers-color-scheme: dark){:root{--color-background: var(--vt-c-black);--color-background-soft: var(--vt-c-black-soft);--color-background-mute: var(--vt-c-black-mute);--color-border: var(--vt-c-divider-dark-2);--color-border-hover: var(--vt-c-divider-dark-1);--color-heading: var(--vt-c-text-dark-1);--color-text: var(--vt-c-text-dark-2)}}*,*:before,*:after{box-sizing:border-box;margin:0;font-weight:400}body{min-height:100vh;color:var(--color-text);background:var(--color-background);transition:color .5s,background-color .5s;line-height:1.6;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;font-size:15px;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{max-width:1280px;margin:0 auto;padding:2rem;font-weight:400}a,.green{text-decoration:none;color:#00bd7e;transition:.4s;padding:3px}@media (hover: hover){a:hover{background-color:#00bd7e33}}@media (min-width: 1024px){body{display:flex;place-items:center}#app{display:grid;grid-template-columns:1fr 1fr;padding:0 2rem}}body{color:#333}#map{width:100vw;height:100vh;position:absolute;top:0;left:0}#icp-info{position:fixed;bottom:2px;left:248px;font-size:10px;opacity:.6;color:#000;border-radius:2px}#place-info{position:fixed;top:10px;right:5px;font-size:14px;color:#000;background-color:#fffc;padding:5px 10px;border-radius:5px}.input-card{position:fixed;background-color:#fffffff2;padding:10px;border-radius:11px;bottom:16px;right:60px}#info-panel{position:absolute;top:10px;left:10px;width:300px;background:#fff;padding:10px;box-shadow:0 2px 5px #0003;border-radius:5px}.image-container{position:relative}.image-container img{width:100%;cursor:pointer}.image-nav{position:absolute;top:50%;width:100%;display:flex;justify-content:space-between}.image-nav button{background:#00000080;color:#fff;border:none;cursor:pointer;padding:5px}.close-btn{position:absolute;top:5px;right:10px;background:#00000080;color:#fff;border:none;font-size:18px;border-radius:50%;z-index:1000}.place-popup{width:300px;padding:16px;border:1px solid #17191f;border-radius:8px;background:#fff;color:#17191f}.place-popup h3,.place-popup p{margin:0 0 8px}.place-popup__image{position:relative;display:block;width:100%;padding:0;border:0;cursor:zoom-in}.place-popup__image img{display:block;width:100%;height:150px;object-fit:cover}.place-popup__image span{position:absolute;bottom:8px;left:8px;padding:3px 7px;border-radius:4px;background:#000000b8;color:#fff;font-size:12px}.place-popup__empty{color:#64748b}.image-preview{position:fixed;z-index:3000;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;background:#000000d6}.image-preview img{max-width:min(100%,1200px);max-height:100%;object-fit:contain}.image-preview button{position:fixed;width:40px;height:40px;border:1px solid #fff;border-radius:50%;background:#111;color:#fff;font-size:24px}.image-preview__close{top:20px;right:20px}.image-preview__previous{left:20px;top:calc(50% - 20px)}.image-preview__next{right:20px;top:calc(50% - 20px)}.image-preview__count{position:fixed;bottom:20px;left:50%;transform:translate(-50%);color:#fff}.place-drawer{position:fixed;z-index:1100;top:16px;bottom:16px;left:0;width:0;overflow:visible;border:0;border-radius:0 8px 8px 0;background:#fffffff5;box-shadow:none;pointer-events:none;transition:width .2s ease,box-shadow .2s ease}.place-drawer.is-open{width:min(320px,calc(100vw - 48px));border:1px solid #cfd6df;border-left:0;box-shadow:0 10px 30px #0f172a2e;pointer-events:auto}.place-drawer__toggle{position:absolute;z-index:1;top:50%;left:100%;display:grid;width:32px;height:48px;padding:0;transform:translateY(-50%);border:1px solid #cfd6df;border-left:0;border-radius:0 6px 6px 0;background:#fff;color:#1e293b;cursor:pointer;font-size:15px;place-items:center;pointer-events:auto}.place-drawer__toggle:hover{background:#f1f5f9}.place-drawer__list{display:flex;height:100%;min-width:0;flex-direction:column;overflow-y:auto;padding:8px}.place-drawer__item{display:flex;width:100%;flex:0 0 auto;flex-direction:column;gap:5px;padding:10px;border:0;border-bottom:1px solid #e2e8f0;background:transparent;color:#1e293b;text-align:left;cursor:pointer}.place-drawer__item:hover{background:#f1f5f9}.place-drawer__item-name{overflow:hidden;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.place-drawer__item-location{overflow:hidden;color:#475569;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.place-drawer__item-meta{color:#64748b;font-size:12px}.place-drawer__item-meta i{display:inline-block;width:7px;height:7px;margin-right:5px;border-radius:50%}.place-drawer__item-meta .is-free{background:#0f766e}.place-drawer__item-meta .is-paid{background:#b45309}.place-drawer__pagination{position:sticky;bottom:-8px;display:flex;min-height:44px;align-items:center;justify-content:center;gap:16px;margin:auto -8px -8px;border-top:1px solid #e2e8f0;background:#fff}.place-drawer__pagination button{width:28px;height:28px;padding:0;border:0;border-radius:4px;background:transparent;color:#1e293b;cursor:pointer}.place-drawer__pagination button:hover:not(:disabled){background:#e2e8f0}.place-drawer__pagination button:disabled{color:#cbd5e1;cursor:default}.place-drawer__pagination span{color:#475569;font-size:13px}@media (max-width: 640px){.place-drawer{top:8px;bottom:8px}.place-drawer.is-open{width:min(300px,calc(100vw - 40px))}}
