.MapUI_container__2L5I4{display:flex;flex-direction:column;height:100dvh;max-height:100dvh;background-color:#f5f5f5;overflow:hidden;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,Arial,Noto Sans,sans-serif}.MapUI_header__4cFIM{position:relative;top:0;left:0;right:0;z-index:1001;background-color:white;box-shadow:0 2px 8px rgba(0,0,0,.1);flex-shrink:0}@media (min-width:769px){.MapUI_header__4cFIM{box-shadow:none;border-bottom:1px solid #eee}}.MapUI_statusBar__rU5rI{display:flex;justify-content:space-between;align-items:center;padding:5px 15px;font-size:13px;color:#333}.MapUI_time__r8iyn{font-weight:700}.MapUI_statusIcons___vwoV{display:flex;gap:8px;align-items:center}.MapUI_statusIcons___vwoV span:last-child{font-weight:700}.MapUI_navBar__hCbLv{--height:44px;padding:0 15px;font-size:18px;font-weight:700;color:#333;background-color:white!important;border-bottom:1px solid #eee}.MapUI_navBar__hCbLv .MapUI_adm-nav-bar-left___rEls,.MapUI_navBar__hCbLv .MapUI_adm-nav-bar-right__EEW4e{font-size:16px;padding-left:0;padding-right:0}.MapUI_navBar__hCbLv .MapUI_adm-nav-bar-left___rEls span{font-size:24px;line-height:1}.MapUI_navBar__hCbLv .MapUI_adm-nav-bar-right__EEW4e>div{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}.MapUI_searchBarContainer__AitdE{padding:12px 16px;background:white;border-bottom:1px solid rgba(0,0,0,.08)}.MapUI_searchBarWrapper__ZafFv{display:flex;gap:8px;align-items:center}.MapUI_filterButton__d827A{--border-radius:12px;--border-color:#d1d5db;--text-color:#666;--background-color:white;min-width:44px;height:44px;position:relative;transition:all .2s ease}.MapUI_filterButtonActive__wyDBm,.MapUI_filterButton__d827A:hover{--border-color:#667eea;--text-color:#667eea}.MapUI_filterButtonActive__wyDBm{--background-color:rgba(102,126,234,0.1)}.MapUI_filterIndicator__W7F3v{position:absolute;top:8px;right:8px;width:6px;height:6px;background-color:#667eea;border-radius:50%}.MapUI_searchBar__F_Chp{flex:1 1}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar__ncLLv{--border-radius:12px;--height:44px;background:white;box-shadow:0 2px 12px rgba(0,0,0,.08);border:1px solid rgba(102,126,234,.2);transition:all .3s ease}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar__ncLLv:focus-within{box-shadow:0 4px 20px rgba(102,126,234,.15);border-color:#667eea;transform:translateY(-1px)}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar-input__ipRNS{background:white!important}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar-input-box__nbt8_ input{font-size:15px;font-weight:500;color:#333}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar-input-box__nbt8_ input::placeholder{color:#999;font-weight:400}.MapUI_searchBar__F_Chp .MapUI_adm-search-bar-icon___DG5S{margin-right:10px;color:#667eea;font-size:18px}.MapUI_mainContentWrapper__lOVF2{flex:1 1;display:flex;flex-direction:column;overflow:hidden}@media (min-width:769px){.MapUI_mainContentWrapper__lOVF2{flex-direction:row}}.MapUI_mapArea__a_b6z{position:relative;flex:1 1;background-color:#ccc;overflow:hidden;height:auto;width:100%;padding-bottom:0}@media (min-width:769px){.MapUI_mapArea__a_b6z{flex:1 1;height:100%;padding-bottom:var(--tab-bar-height,64px);padding-bottom:0;width:calc(100% - var(--spot-list-width-desktop, 300px))}}.MapUI_mapIframe__GQHrV{width:100%;height:100%;border:none;display:block}.MapUI_mapPlaceholder__UH2w4{width:100%;height:100%;position:relative;display:flex;justify-content:center;align-items:center;background-color:#e0e0e0;overflow:hidden}.MapUI_mapPlaceholder__UH2w4 img{width:100%;height:100%;object-fit:cover}.MapUI_currentLocationMarker__Nda_5{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;background-color:#007bff;border-radius:50%;border:3px solid white;box-shadow:0 0 0 3px rgba(0,123,255,.4)}.MapUI_locationLabels__A0aXi{position:absolute;top:10px;right:10px;background-color:rgba(255,255,255,.8);padding:5px 10px;border-radius:5px;font-size:14px;font-weight:700;color:#333}.MapUI_districtLabel__OIUT2{font-size:12px;color:#666;text-align:right}.MapUI_mapOverlayButtons__rIXgF{position:absolute;bottom:10px;right:10px;display:flex;flex-direction:column;gap:8px}.MapUI_mapOverlayButton__EJdbD{background-color:white;border:none;border-radius:50%;width:40px;height:40px;display:flex;justify-content:center;align-items:center;box-shadow:0 2px 5px rgba(0,0,0,.2);font-size:18px;cursor:pointer}.MapUI_mapOverlayWatermark__Nt2EX{position:absolute;bottom:10px;left:10px;font-size:12px;color:#666;background-color:rgba(255,255,255,.7);padding:3px 6px;border-radius:3px}.MapUI_mapOverlayWatermark__Nt2EX a{color:#007bff;text-decoration:none}.MapUI_spotListContainer__7Ewj3{transform:translateZ(0);will-change:scroll-position;background:linear-gradient(135deg,#667eea,#764ba2);border-top-left-radius:16px;border-top-right-radius:16px;overflow:hidden;box-shadow:0 -6px 24px rgba(0,0,0,.12);height:var(--spot-list-height-mobile);overflow-y:auto;position:relative;bottom:0;left:0;right:0;z-index:50}@media (min-width:769px){.MapUI_spotListContainer__7Ewj3{position:relative;height:100%;width:var(--spot-list-width-desktop);border-top-left-radius:0;border-bottom-left-radius:16px;box-shadow:-6px 0 24px rgba(0,0,0,.12)}.MapUI_spotCardsContainer___Ry_H{padding-bottom:0}}.MapUI_spotListHeader__bjaCm{animation:MapUI_fadeIn__7u4mh .6s ease-out;padding:12px 20px 8px;background:transparent;color:white;text-align:center;position:relative;flex-shrink:0}@media (min-width:769px){.MapUI_spotListHeader__bjaCm{position:relative;padding:20px;text-align:left}}.MapUI_spotListTitle__jcQnW{margin:0;font-size:16px;font-weight:700;letter-spacing:.3px}.MapUI_spotListSubtitle__vF2vG{margin:2px 0 0;font-size:12px;opacity:.8;font-weight:400}.MapUI_spotCardsContainer___Ry_H{padding:6px 16px 64px;background:#f8f9fa;min-height:120px;border-top-left-radius:12px;border-top-right-radius:12px}.MapUI_spotCard__F2_Ss{background:white;border-radius:12px;margin-bottom:8px;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:all .08s cubic-bezier(.25,.8,.25,1);overflow:hidden;border:none;cursor:pointer;position:relative;transform:translateZ(0);will-change:transform,opacity,box-shadow;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.MapUI_spotCard__F2_Ss:hover{transform:translateY(-2px) scale(1.015) translateZ(0);box-shadow:0 8px 32px rgba(0,0,0,.15);transition:all .06s cubic-bezier(.25,.8,.25,1)}.MapUI_spotCard__F2_Ss:active{transform:translateY(1px) scale(.995) translateZ(0);box-shadow:0 2px 8px rgba(0,0,0,.1);transition:all .03s cubic-bezier(.25,.8,.25,1)}.MapUI_spotCard__F2_Ss:last-child{margin-bottom:0}.MapUI_spotCardContent__J0d95{padding:12px;position:relative}.MapUI_spotCardHeader__zzEmj{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:8px}.MapUI_spotCardMain__t3lqh{flex:1 1;min-width:0}.MapUI_spotCardTitle__R_7ES{font-size:15px;font-weight:700;color:#1a1a1a;margin:0 0 4px;line-height:1.2;display:flex;align-items:center;gap:6px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.MapUI_spotCardGenre__eyTD0{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:white;font-size:10px;font-weight:600;padding:3px 8px;border-radius:10px;margin-bottom:6px;text-transform:uppercase;letter-spacing:.3px;transition:all .3s ease;gap:4px;vertical-align:middle}.MapUI_spotCardDescription__RHjV1{font-size:12px;color:#666;line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.MapUI_spotCardLikeArea__l695P{display:flex;flex-direction:column;align-items:center;gap:2px;margin-left:8px}.MapUI_spotCardLikeButton__bthxY{display:inline-flex!important;align-items:center!important;gap:8px!important;padding:8px 16px!important;border-radius:9999px!important;font-size:14px!important;font-weight:700!important;cursor:pointer!important;transition:all .2s ease-in-out!important;border:1px solid #d1d5db!important;background:#ffffff!important;color:#1f2937!important;box-shadow:0 1px 2px 0 rgb(0 0 0/.05)!important;transform:scale(1)!important}.MapUI_spotCardLikeButton__bthxY:hover{transform:scale(1.05)!important;box-shadow:0 4px 6px -1px rgb(0 0 0/.1),0 2px 4px -2px rgb(0 0 0/.1)!important}.MapUI_spotCardLikeButton__bthxY.MapUI_liked__gDtdF{border-color:transparent!important;background:linear-gradient(135deg,#f857a6,#ff5858)!important;color:white!important;box-shadow:0 4px 14px -2px rgb(252 87 134/40%)!important}.MapUI_spotCardLikeButton__bthxY.MapUI_liked__gDtdF:hover{transform:scale(1.05)!important;box-shadow:0 6px 18px -2px rgb(252 87 134/50%)!important}.MapUI_spotCardLikeButton__bthxY svg{transition:transform .3s cubic-bezier(.175,.885,.32,1.275)}.MapUI_spotCardLikeButton__bthxY.MapUI_liked__gDtdF svg{transform:scale(1.1)}.MapUI_spotCardLikeCount__7IsDo{font-weight:700;font-size:14px;line-height:1;transition:color .2s ease}.MapUI_spotCardLikeButton__bthxY:not(.MapUI_liked__gDtdF) .MapUI_spotCardLikeCount__7IsDo{color:#1f2937}.MapUI_spotCardLikeButton__bthxY.MapUI_liked__gDtdF .MapUI_spotCardLikeCount__7IsDo{color:white}@keyframes MapUI_slideInUp__DtJLV{0%{transform:translateY(20px) translateZ(0);opacity:0}to{transform:translateY(0) translateZ(0);opacity:1}}@keyframes MapUI_fadeIn__7u4mh{0%{opacity:0;transform:translateZ(0)}to{opacity:1;transform:translateZ(0)}}.MapUI_spotCard__F2_Ss{animation:MapUI_slideInUp__DtJLV .15s cubic-bezier(.25,.8,.25,1)}.MapUI_spotCard__F2_Ss:first-child{animation-delay:.02s}.MapUI_spotCard__F2_Ss:nth-child(2){animation-delay:.04s}.MapUI_spotCard__F2_Ss:nth-child(3){animation-delay:.06s}.MapUI_spotCard__F2_Ss:nth-child(4){animation-delay:.08s}.MapUI_spotCard__F2_Ss:nth-child(5){animation-delay:.1s}.MapUI_spotCard__F2_Ss:before{content:"";position:absolute;inset:0;padding:1px;background:linear-gradient(135deg,#667eea,#764ba2,#f093fb);border-radius:16px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);opacity:0;transition:opacity .3s ease}.MapUI_spotCard__F2_Ss:hover:before{opacity:.6}.MapUI_spotCardsContainer___Ry_H{animation:MapUI_slideInUp__DtJLV .5s ease-out .2s both}.MapUI_spotCardGenre__eyTD0.MapUI_food__zfslZ{background:linear-gradient(135deg,#ff6b6b,#ee5a52)}.MapUI_spotCardGenre__eyTD0.MapUI_shopping__vSFz4{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.MapUI_spotCardGenre__eyTD0.MapUI_culture__x_sJL{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#333}.MapUI_spotCardGenre__eyTD0.MapUI_entertainment__2C97x{background:linear-gradient(135deg,#ff9a9e,#fecfef);color:#333}.MapUI_spotCardGenre__eyTD0.MapUI_nature__bD_2o{background:linear-gradient(135deg,#a8e6cf,#7fcdcd);color:#333}.MapUI_spotCard__F2_Ss:after{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(102,126,234,.5);transform:translate(-50%,-50%) translateZ(0);transition:width .2s cubic-bezier(.25,.8,.25,1),height .2s cubic-bezier(.25,.8,.25,1),opacity .1s ease-out;pointer-events:none;opacity:0;will-change:transform,opacity}.MapUI_spotCard__F2_Ss:active:after{width:150px;height:150px;opacity:1;transition:width .1s cubic-bezier(.25,.8,.25,1),height .1s cubic-bezier(.25,.8,.25,1),opacity .02s ease-out}.MapUI_spotListContainer__7Ewj3::-webkit-scrollbar{width:4px}.MapUI_spotListContainer__7Ewj3::-webkit-scrollbar-track{background:rgba(255,255,255,.1)}.MapUI_spotListContainer__7Ewj3::-webkit-scrollbar-thumb{background:rgba(255,255,255,.3);border-radius:2px}.MapUI_spotListContainer__7Ewj3::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.5)}.MapUI_spotList__oo1Fu .MapUI_adm-list-item__eL9EL{border-bottom:1px solid #f0f0f0}.MapUI_spotList__oo1Fu .MapUI_adm-list-item-content__A1nU4{font-size:16px;color:#333}.MapUI_tabBarContainer__Js5Mp{width:100%;position:fixed;bottom:0;left:0;right:0;z-index:200;background-color:white;border-top:1px solid #ddd;box-shadow:0 -2px 12px rgba(0,0,0,.1);padding-bottom:env(safe-area-inset-bottom)}@media (min-width:769px){.MapUI_tabBarContainer__Js5Mp{display:none}}.MapUI_tabBarContainer__Js5Mp:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:white;z-index:-1}.MapUI_tabBarContainer__Js5Mp .MapUI_adm-tab-bar__p0x2V{background:white!important;--height:var(--tab-bar-height)}.MapUI_tabBarContainer__Js5Mp .MapUI_adm-tab-bar-item-icon__9NeHq img{display:block;margin:0 auto}.MapUI_spotCardMeta__3yg4T{display:flex;gap:12px;margin-top:8px;align-items:center;flex-wrap:wrap}.MapUI_spotCardDistance__ePVeY{color:#667eea;background:rgba(102,126,234,.1)}.MapUI_spotCardDistance__ePVeY,.MapUI_spotCardWebsite__CQZIb{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px}.MapUI_spotCardWebsite__CQZIb{color:#764ba2;background:rgba(118,75,162,.1);cursor:pointer;transition:all .2s ease}.MapUI_spotCardWebsite__CQZIb:hover{background:rgba(118,75,162,.2)}.MapUI_emptyState__hfaq5{text-align:center;padding:60px 20px;color:#666}.MapUI_emptyStateIcon__rb09K{font-size:48px;margin-bottom:16px;opacity:.5}.MapUI_emptyStateTitle__y9gp0{font-size:16px;font-weight:600;margin-bottom:8px;color:#333}.MapUI_emptyStateDescription__G1T1Q{font-size:14px;line-height:1.5}.MapUI_loadingState__2fVN5{text-align:center;padding:60px 20px}.MapUI_loadingSpinner__yGnlr{width:40px;height:40px;border:3px solid rgba(102,126,234,.1);border-top-color:#667eea;border-radius:50%;margin:0 auto 20px;animation:MapUI_spin__S2_n_ 1s linear infinite}@keyframes MapUI_spin__S2_n_{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.MapUI_errorState__A0M25{text-align:center;padding:40px 20px}.MapUI_errorIcon__ORQeM{font-size:36px;margin-bottom:12px;color:#e74c3c}.MapUI_errorTitle__qhIEQ{font-size:14px;color:#e74c3c;margin-bottom:16px;line-height:1.4}.GenreFilterModal_modalHeader__1JN1a{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #f0f0f0;background:white;position:-webkit-sticky;position:sticky;top:0;z-index:10}.GenreFilterModal_modalTitle__EjG8x{margin:0;font-size:18px;font-weight:600;color:#333}.GenreFilterModal_modalActions__7hhg9{display:flex;gap:8px;align-items:center}.GenreFilterModal_clearButton__xwp_p{--border-radius:6px;--border-color:#667eea;--text-color:#667eea;font-size:14px;padding:4px 12px}.GenreFilterModal_closeButton__hFaB6{--background-color:transparent;--text-color:#666;--border-radius:6px;font-size:18px;padding:4px;min-width:auto}.GenreFilterModal_genreList__UTk7P{padding:8px 0;background:white}.GenreFilterModal_genreOption__4147_{padding:0 20px;margin-bottom:4px}.GenreFilterModal_genreOption__4147_:last-child{margin-bottom:0}.GenreFilterModal_radioButton__vY3cy{width:100%;padding:12px 0;border-bottom:1px solid #f5f5f5}.GenreFilterModal_radioButton__vY3cy:last-child{border-bottom:none}.GenreFilterModal_genreContent__7X5oU{display:flex;align-items:center;gap:12px;width:100%}.GenreFilterModal_genreIcon__kuKtZ{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:18px;flex-shrink:0}.GenreFilterModal_genreIconImage__UARl9{border-radius:4px;object-fit:cover}.GenreFilterModal_genreName__nWHn1{font-size:16px;color:#333;font-weight:500;flex:1 1}.GenreFilterModal_genreOption__4147_ .GenreFilterModal_adm-radio__BPywM{width:100%}.GenreFilterModal_genreOption__4147_ .GenreFilterModal_adm-radio-wrapper__GU9FA{display:flex;align-items:center;width:100%;padding:0}.GenreFilterModal_genreOption__4147_ .GenreFilterModal_adm-radio-content__bNKcU{flex:1 1;margin-left:8px}.GenreFilterModal_genreOption__4147_:active{background-color:#f8f9fa}@media (max-width:480px){.GenreFilterModal_modalHeader__1JN1a{padding:16px}.GenreFilterModal_modalTitle__EjG8x{font-size:16px}.GenreFilterModal_genreOption__4147_{padding:0 16px}.GenreFilterModal_genreName__nWHn1{font-size:15px}}