.profile-bubble{position:absolute;top:75px;right:75px;background:#333;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;white-space:nowrap;z-index:100;animation:bubbleFadeIn .3s ease-out,bubbleBounce 1.5s ease-in-out infinite;box-shadow:0 2px 8px #0000004d}.profile-bubble-arrow{position:absolute;top:-6px;right:15px;width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #333}@keyframes bubbleFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes bubbleBounce{0%,to{transform:translateY(0)}50%{transform:translateY(3px)}}.map_wrap,.map_wrap *{margin:0;padding:0;font-family:Malgun Gothic,dotum,돋움,sans-serif;font-size:12px}.map_wrap a,.map_wrap a:hover,.map_wrap a:active{color:#007bff;text-decoration:none}.map_wrap{position:relative;width:100%;height:calc(100vh - 52px)}#map{width:100%;height:100%;position:relative;overflow:hidden}#search_wrap{position:absolute;top:10px;left:10px;width:300px;margin:0;padding:0;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:2;font-size:13px;border-radius:12px;box-shadow:0 2px 12px #00000026;overflow:hidden}#menu_wrap{position:absolute;top:90px;left:10px;width:300px;height:80%;margin:0;padding:10px;overflow-y:auto;background:#ffffffb3;z-index:1;font-size:12px;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:none}#menu_wrap hr{height:1px;border:0;border-top:2px solid #5F5F5F;margin:3px 0}#menu_wrap .option{text-align:center}#menu_wrap .option button{margin-left:5px;font-size:14px;padding:8px 16px;border-radius:8px;border:none;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s,transform .2s}#menu_wrap .option button:hover{background-color:#0056b3;transform:scale(1.05)}#placesList li{list-style:none}#placesList .item{position:relative;border-bottom:1px solid #888;cursor:pointer;min-height:65px;display:block}#placesList .item:hover{background-color:transparent}#placesList .item span{display:block;margin-top:4px}#placesList .item h5,#placesList .item .info{text-overflow:ellipsis;overflow:hidden;white-space:nowrap;font-size:12px;color:#000}#placesList .info{padding:10px 0 10px 55px}#placesList .info .gray{color:#8a8a8a}#placesList .info .jibun{padding-left:26px;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/places_jibun.png) no-repeat}#placesList .info .tel{color:#090}#placesList .item .markerbg{position:absolute;left:20px;top:20%;width:36px;height:37px;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/marker_number_blue.png) no-repeat;z-index:10}#pagination{margin:10px auto;text-align:center}#pagination a{display:inline-block;margin-right:10px;font-size:14px;padding:8px 16px;border-radius:8px;border:none;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s,transform .2s}#pagination a:hover{background-color:#0056b3;transform:scale(1.05)}#pagination .on{font-weight:700;cursor:default;color:#777}.edit{position:absolute;top:10px;right:10px;z-index:2;background-color:#f9f9f9;border:2px solid #007BFF;padding:10px;border-radius:8px;box-shadow:0 4px 6px #0000001a;display:flex;align-items:center;gap:10px}.edit button{font-size:16px;padding:10px 20px;border-radius:8px;border:none;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s,transform .2s}.edit button:hover{background-color:#0056b3;transform:scale(1.05)}.edit button:active{background-color:#004085}.edit span{font-size:16px;color:#007bff;font-weight:700}#markerImageButton{all:unset;display:inline-block;cursor:pointer}#category{position:absolute;bottom:10px;right:10px;border-radius:8px;border:2px solid #007BFF;box-shadow:0 4px 6px #0000001a;background:#f9f9f9;overflow:hidden;z-index:2}#category li{float:left;list-style:none;width:50px;border-right:1px solid #acacac;padding:10px 0;text-align:center;cursor:pointer;transition:background-color .3s,transform .2s}#category li.on{background:#e6f2ff}#category li:hover{background:#d0e4ff;border-left:1px solid #007BFF;margin-left:-1px;transform:scale(1.05)}#category li:last-child{margin-right:0;border-right:0}#category li span{display:block;margin:0 auto 3px;width:27px;height:28px}#category li .category_bg{background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/places_category.png) no-repeat}#category li .bank{background-position:-10px 0}#category li .mart{background-position:-10px -36px}#category li .pharmacy{background-position:-10px -72px}#category li .oil{background-position:-10px -108px}#category li .cafe{background-position:-10px -144px}#category li .store{background-position:-10px -180px}#category li.on .category_bg{background-position-x:-46px}.placeinfo_wrap{position:absolute;bottom:28px;left:-150px;width:300px}.placeinfo{position:relative;width:100%;border-radius:8px;border:2px solid #007BFF;padding-bottom:10px;background:#f9f9f9;box-shadow:0 4px 6px #0000001a}.placeinfo_wrap .after{content:"";position:relative;margin-left:-12px;left:50%;width:22px;height:12px;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/vertex_white.png)}.placeinfo a,.placeinfo span{display:block;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.placeinfo .title{font-weight:700;font-size:14px;border-radius:8px 8px 0 0;margin:-1px;padding:10px;color:#fff;background:#007bff url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/arrow_white.png) no-repeat right 14px center;text-decoration:none;display:block}.placeinfo .title:hover{color:#ff8c00}.placeinfo .tel{color:#0f7833}.placeinfo .jibun{color:#999;font-size:11px}.icon-container{position:absolute;right:10px;top:50%;transform:translateY(-50%) scale(.8);display:flex;flex-direction:column;gap:15px;z-index:1000;background-color:#f9f9f9;border:2px solid #007BFF;padding:10px;border-radius:8px;box-shadow:0 4px 6px #0000001a}.icon-container img{width:40px;height:40px;cursor:pointer;transition:transform .2s,background-color .3s;border-radius:8px}.icon-container img:hover{transform:scale(1.2);background-color:#e6f2ff}.dot{float:left;width:12px;height:12px;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/mini_circle.png)}.dotOverlay,.info{position:relative;border-radius:6px;border:1px solid #ccc;border-bottom:2px solid #ddd;font-size:12px;padding:5px;background:#fff;margin:0;list-style:none}.dotOverlay .number,.info .number{font-weight:700}.dotOverlay:after,.info:after{content:"";position:absolute;left:50%;margin-left:-6px;bottom:-8px;width:11px;height:8px;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/vertex_white_small.png)}.distanceInfo{position:relative;top:5px;left:5px}.distanceInfo .label,.info .label{display:inline-block;width:50px}.search-form{display:flex;flex-direction:column}.search-input-group{display:flex;align-items:center;padding:10px 12px;gap:8px}.search-icon-svg{flex-shrink:0}#search_wrap input[type=text]{flex:1;font-size:14px;padding:0;border:none;outline:none;background:transparent;color:#333;min-width:0}#search_wrap input[type=text]::placeholder{color:#aaa}#clearButton{padding:4px;border:none;background:none;cursor:pointer;display:flex;align-items:center;border-radius:50%;transition:background .2s}#clearButton:hover{background:#f0f0f0}.search-actions{display:flex;align-items:center;gap:6px;padding:0 12px 10px}#searchButton{flex:1;padding:8px 0;border:none;background:#007bff;color:#fff;font-size:13px;font-weight:600;border-radius:8px;cursor:pointer;transition:background .2s}#searchButton:hover{background:#0056b3}.location-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;cursor:pointer;color:#999;background:#f5f5f5;transition:all .2s;flex-shrink:0}.location-toggle input{display:none}.location-toggle:has(input:checked){background:#007bff;color:#fff}.location-toggle:hover{background:#e0e0e0}.location-toggle:has(input:checked):hover{background:#0056b3}.bAddr{padding:5px;background-color:#fff;border:1px solid #888;border-radius:5px;box-shadow:0 1px 2px #0000004d;font-size:14px}.bAddr .title{display:block;font-weight:700;margin-bottom:5px}.placeinfo .closeButton{position:absolute;right:2px;bottom:2px;background:none;border:none;color:#007bff;font-size:14px;cursor:pointer;font-weight:700}.placeinfo .closeButton:hover{color:#0056b3}.authButtons{position:absolute;bottom:12%;right:1%;display:flex;gap:10px;z-index:2;align-items:center}#loginButton,#logoutButton{padding:8px 20px;background-color:#007bff;color:#fff;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:background-color .3s;flex-shrink:0}#logoutButton{display:none}#profileImage{width:50px;height:50px;border-radius:50%;margin-left:10px;flex-shrink:0;cursor:pointer}#loginButton:hover,#logoutButton:hover{background-color:#0056b3}#loginButton:active,#logoutButton:active{background-color:#004085}.messageModal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#000000b3}.messageModal-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#007bff;color:#fff;padding:30px;border:none;border-radius:16px;box-shadow:0 8px 24px #0003;width:320px;text-align:center;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:16px}.close{position:absolute;right:20px;top:0;font-size:24px;cursor:pointer;color:#fff;transition:color .3s ease}.close:hover{color:#ff5a5f}#container{position:relative;width:100%;height:100%}#mapWrapper{width:100%;height:100%;position:relative;z-index:1}#rvWrapper{width:70%;height:100%;position:absolute;top:0;right:0;z-index:0;display:none}#container.view_roadview #mapWrapper{width:30%}#roadviewControl{position:absolute;top:25px;right:400px;width:42px;height:42px;z-index:1;cursor:pointer;background:url(https://t1.daumcdn.net/localimg/localimages/07/2018/pc/common/img_search.png) 0 -450px no-repeat}#roadviewControl.active{background-position:0 -350px}#close{position:absolute;padding:4px;top:5px;left:5px;cursor:pointer;background:#fff;border-radius:4px;border:1px solid #c8c8c8;box-shadow:0 1px #888}#close .img{display:block;background:url(https://t1.daumcdn.net/localimg/localimages/07/mapapidoc/rv_close.png) no-repeat;width:14px;height:14px}.bottom-toolbar{position:fixed;bottom:0;left:0;right:0;z-index:100;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid #ddd;padding:8px 12px;display:flex;align-items:center;gap:8px;box-shadow:0 -2px 10px #0000001a}.toolbar-group{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.toolbar-map-types{border-right:1px solid #ddd;padding-right:8px;margin-right:4px}.toggle-chip{display:inline-flex;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none}.toggle-chip input[type=checkbox]{display:none}.toggle-chip span{padding:4px 10px;border-radius:20px;font-size:12px;background:#e9ecef;color:#495057;border:1px solid #ced4da;transition:all .2s;white-space:nowrap}.toggle-chip input:checked+span{background:#007bff;color:#fff;border-color:#007bff}.tb-btn{font-size:12px;padding:6px 12px;border-radius:6px;border:1px solid #007BFF;background:#fff;color:#007bff;cursor:pointer;transition:all .2s;white-space:nowrap}.tb-btn:hover{background:#007bff;color:#fff;transform:translateY(-1px)}.tb-save{background:#007bff;color:#fff;font-weight:700}.tb-save:hover{background:#0056b3}.tb-danger{border-color:#dc3545;color:#dc3545}.tb-danger:hover{background:#dc3545;color:#fff}.toolbar-toggle{display:none}#savedDataList,#customMarkerList{display:none;position:fixed;bottom:52px;left:10px;width:600px;max-width:calc(100vw - 20px);background-color:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #ddd;border-radius:8px;padding:10px;box-shadow:0 -2px 10px #0000001a;z-index:99;overflow-y:auto;max-height:300px}#savedDataList ul,#customMarkerList ul{max-height:none;margin:0;padding:0;list-style-type:none}#savedDataList li,#customMarkerList li{margin-bottom:5px;padding:8px;background-color:#f9f9f9;border:1px solid #007BFF;border-radius:4px;cursor:pointer;transition:background-color .3s}#savedDataList li:hover,#customMarkerList li:hover{background-color:#e6f2ff}#selectObjectCategoryModal,#selectCustomMarkerCategoryModal{position:absolute;bottom:5%;right:10px;width:300px;background-color:#f9f9f9;border:2px solid #007BFF;border-radius:8px;padding:20px;box-shadow:0 4px 6px #0000001a;z-index:1000}#selectObjectCategoryModal h3,#selectCustomMarkerCategoryModal h3{font-size:16px;color:#007bff;margin-bottom:10px}#selectObjectCategoryDropdown,#selectCustomMarkerCategoryDropdown{width:100%;padding:8px;margin-bottom:10px;border:2px solid #007BFF;border-radius:8px}#selectObjectCategoryModal button,#selectCustomMarkerCategoryModal button{font-size:14px;padding:8px 16px;border-radius:8px;border:none;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s,transform .2s;margin-right:5px}#selectObjectCategoryModal button:hover,#selectCustomMarkerCategoryModal button:hover{background-color:#0056b3;transform:scale(1.05)}.load-delete-btn{font-size:12px;padding:4px 8px;border-radius:4px;border:none;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s,transform .2s;margin-left:5px}.load-delete-btn:hover{background-color:#0056b3;transform:scale(1.05)}.sidebar{height:100%;width:0;position:fixed;z-index:1;top:0;right:0;background-color:#007bff;overflow-x:hidden;transition:.5s;padding-top:60px}.sidebar-content{color:#fff;padding:20px}.sidebar-content ul{list-style-type:none;padding:0}.sidebar-content ul li{margin:20px 0}.sidebar-content ul li a{color:#fff;text-decoration:none;font-size:18px}.sidebar-content ul li a:hover{color:red}.sidebar-footer{position:absolute;bottom:100px;width:100%;text-align:center;color:#fff;font-size:14px;padding:10px 0;background-color:#0056b3}.sidebar.open{width:250px}#menuButton{background-color:transparent;border:none;font-size:24px;cursor:pointer;color:#000}#menuButton:hover{color:red}.modal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080}.modal-content{position:relative;background-color:#fff;margin:auto;padding:20px;border:1px solid #888;width:50%;top:20%;border-radius:10px}.marker-images img{width:50px;height:50px;cursor:pointer;margin:5px}.close{position:absolute;right:10px;top:10px;font-size:24px;cursor:pointer}@media only screen and (max-width:1767px){#category{display:none}.kakao-map-drawing-toolbox{position:absolute;left:10px;top:50%;transform:translateY(-50%)}}@media only screen and (max-width:768px){.bottom-toolbar{flex-direction:column;align-items:stretch;padding:6px 8px;max-height:44px;overflow:hidden;transition:max-height .3s ease}.bottom-toolbar.expanded{max-height:300px;overflow-y:auto}.toolbar-map-types{border-right:none;padding-right:0;margin-right:0;padding-bottom:6px;border-bottom:1px solid #ddd}.toolbar-data{flex-wrap:wrap;padding-top:6px}.toolbar-toggle{display:block;order:-1;background:none;border:none;color:#007bff;font-size:13px;font-weight:700;cursor:pointer;padding:4px 0;text-align:center}.bottom-toolbar.expanded .toolbar-toggle:before{content:"▼ "}.bottom-toolbar:not(.expanded) .toolbar-toggle:before{content:"▲ "}.bottom-toolbar:not(.expanded) .toolbar-group{display:none}}#editJsonModal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080}#editJsonModal .modal-content{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:#fff;padding:20px;border-radius:10px;box-shadow:0 4px 8px #0000001a;width:60%;max-width:800px}#editJsonModal .close{position:absolute;right:20px;top:10px;font-size:24px;cursor:pointer;color:#007bff;transition:color .3s ease}#editJsonModal .close:hover{color:#ff5a5f}#jsonEditor{width:100%;height:300px;border:1px solid #ddd;border-radius:5px;padding:10px;font-family:monospace;font-size:14px;resize:vertical}#editJsonModal button{margin-top:10px;padding:10px 20px;background-color:#007bff;color:#fff;border:none;border-radius:8px;cursor:pointer;transition:background-color .3s,transform .2s}#editJsonModal button:hover{background-color:#0056b3;transform:scale(1.05)}body{margin:0;padding:0;font-family:Arial,sans-serif;background-color:#f3f4f6;height:100vh}.main-container{display:flex;gap:20px;padding:20px;height:100vh;box-sizing:border-box;background-color:#f3f4f6;margin:0;font-family:Arial,sans-serif}.profile-container{flex:1}.profile-card{width:200px;padding:20px;text-align:left;background-color:#fff;border-radius:15px;box-shadow:0 4px 12px #0000001a}.profile-header{margin-bottom:20px}.profile-image{width:100px;height:100px;border-radius:50%;margin-bottom:10px;object-fit:cover;border:2px solid #007BFF;cursor:pointer}h2{font-size:24px;color:#333;margin:0}.logout-button{background-color:#007bff;color:#fff;border:none;border-radius:5px;padding:10px 20px;font-size:16px;cursor:pointer;margin-top:20px;transition:background-color .3s ease}.logout-button:hover{background-color:#0056b3}.folder-list-container{flex:2;background-color:#fff;padding:15px;border-radius:10px;box-shadow:0 2px 6px #0000001a;overflow-y:auto;max-height:calc(100vh - 40px)}.folder-list-container ul{list-style:none;padding:0}.folder-list-container li{margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.folder-list-container button{margin-top:10px;padding:10px 20px;border:none;border-radius:5px;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s}.folder-list-container button:hover{background-color:#0056b3;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}.back-button,.create-json-button,.gohome-button,.share-button,.move-button,.delete-button{background-color:#007bff;color:#fff;border:none;border-radius:5px;padding:10px 20px;font-size:16px;cursor:pointer;margin-bottom:10px;transition:background-color .3s ease,box-shadow .3s,transform .3s}.back-button:hover,.create-json-button:hover,.gohome-button:hover{background-color:#0056b3;box-shadow:0 4px 8px #0003;transform:translateY(-2px)}#profileModal,#moveModal,#shareModal,#editModal,#jsonCreationModal,#renameModal{display:none;position:fixed;z-index:1000;left:0;top:0;width:100%;height:100%;background-color:#00000080;justify-content:center;align-items:center}#profileModal .modal-content,#moveModal .modal-content,#shareModal .modal-content,#editModal .modal-content,#jsonCreationModal .modal-content,#renameModal .modal-content{background-color:#fff;padding:20px;border-radius:10px;width:50%;max-width:600px;box-shadow:0 4px 8px #0003}#profileModal .close,#moveModal .close,#shareModal .close,#editModal .close,#jsonCreationModal .close,#renameModal .close{position:absolute;top:10px;right:20px;font-size:24px;font-weight:700;cursor:pointer}#profileModal button,#moveModal button,#shareModal button,#editModal button,#jsonCreationModal button,#renameModal button{margin-top:10px;padding:10px 20px;border:none;border-radius:5px;background-color:#007bff;color:#fff;cursor:pointer;transition:background-color .3s}#profileModal button:hover,#moveModal button:hover,#shareModal button:hover,#editModal button:hover,#jsonCreationModal button:hover #renameModal button:hover{background-color:#0056b3}#moveModal select,#editModal select,#shareModal select,#jsonCreationModal select,#renameModal select,#jsonCreationModal input[type=text]{width:100%;padding:10px;margin-top:10px;border:1px solid #ccc;border-radius:5px;font-size:16px}.button-container{display:flex;gap:10px}.folder-list-container button{padding:5px 10px;border:none;border-radius:5px;cursor:pointer;transition:background-color .3s}.folder-list-container button:hover{background-color:#007bff;color:#fff}.message-button{background-color:#25d366;color:#fff;border:none;border-radius:5px;padding:10px 20px;font-size:16px;cursor:pointer;transition:background-color .3s ease;margin-top:10px}.message-button:hover{background-color:#1da851}.customInfoWindow{position:relative;width:200px;min-height:100px;padding-bottom:25px}.custom-close{position:absolute;bottom:5px;right:5px;background:#fff;border:1px solid #ccc;border-radius:3px;cursor:pointer}
