@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box}.header{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#fff;border-bottom:1px solid #eee}.header .header-logo{position:relative;width:180px;height:50px}.header .header-logo img{width:100%;display:block;object-fit:contain;padding:0;cursor:pointer}.header .header-button-wrap{display:flex;align-items:center;gap:20px}.header .header-button-wrap .header-button{background:#f8f8f8;border:none;padding:8px 14px;border-radius:8px;cursor:pointer;font-size:1rem;transition:all .2s ease}.header .header-button-wrap .header-button:hover{background:#efefef}.header .header-button-wrap .place-add-button{background:#3885c0;color:#fff}.header .header-button-wrap .place-add-button:hover{background:#5196d6}.header .header-button-wrap .profile-menu{position:relative;border:1px solid #ddd;border-radius:8px}.header .header-button-wrap .profile-menu .profile-icon{background:none;border:none;cursor:pointer;padding:8px 12px;display:flex;align-items:center;justify-content:center;color:#888}.header .header-button-wrap .profile-menu .profile-icon:hover{background-color:#999;color:#fff}.header .header-button-wrap .profile-menu .profile-dropdown{position:absolute;top:110%;right:0;background:#fff;border:1px solid #ddd;border-radius:10px;box-shadow:0 6px 20px #0000001f;min-width:160px;z-index:1000;padding:6px 0;opacity:0;transform:translateY(-8px);animation:dropdownFade .25s ease forwards}.header .header-button-wrap .profile-menu .profile-dropdown .dropdown-item{display:block;width:100%;text-align:left;background:none;border:none;padding:12px 18px;font-size:14px;cursor:pointer;color:#333;transition:all .2s ease}.header .header-button-wrap .profile-menu .profile-dropdown .dropdown-item:hover{background:#f5f7fa;color:#5196d6}@keyframes dropdownFade{to{opacity:1;transform:translateY(0)}}.search-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;z-index:900;display:flex;align-items:center;justify-content:center}.search-modal-box{width:720px;max-height:80vh;min-height:720px;background:#fff;border-radius:12px;box-shadow:0 6px 24px #0003;padding:1.5rem;z-index:1000;display:flex;flex-direction:column;gap:1rem;animation:fadeIn .5s ease}.search-modal-top-wrap{display:flex;gap:.5rem}.search-modal-top-wrap .search-input{flex:1;padding:.6rem .8rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem}.search-modal-top-wrap .search-input:focus{outline:none;border-color:#5196d6;box-shadow:0 0 0 2px #2563eb33}.search-modal-top-wrap .search-button{padding:.6rem 1rem;background:#3885c0;color:#fff;font-size:.9rem;border:none;border-radius:8px;cursor:pointer;transition:background .2s}.search-modal-top-wrap .search-button:hover{background:#5196d6}.results-list{flex:1 1 auto;overflow-y:auto;padding:.5rem;display:flex;flex-direction:column;gap:.75rem}.results-list .result-item{display:flex;gap:.75rem;border:1px solid #e5e7eb;border-radius:12px;padding:.75rem;background:#fff;box-shadow:0 2px 6px #0000000d;transition:transform .15s ease,box-shadow .15s ease}.results-list .result-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.results-list .result-item .place-photo{width:80px;height:80px;border-radius:8px;object-fit:cover;flex-shrink:0;background:#f3f4f6}.results-list .result-item .place-info{display:flex;flex-direction:column;justify-content:space-between;flex:1}.results-list .result-item .place-info .place-name{font-weight:600;font-size:1rem;color:#111827}.results-list .result-item .place-info .place-address{font-size:.875rem;color:#6b7280}.results-list .result-item .place-info .place-rating{font-size:.875rem;color:#f59e0b}.results-list .result-item .select-radio{display:flex;align-items:center;margin-left:auto}.results-list .result-item .select-radio input[type=radio]{accent-color:#5196d6;width:18px;height:18px}.page-wrap{flex:0 0 auto;display:flex;justify-content:center;gap:.5rem}.page-wrap button{padding:.4rem .8rem;border-radius:6px;border:1px solid #d1d5db;background:#f3f4f6;cursor:pointer;transition:all .2s ease;font-size:.85rem}.page-wrap button:hover:not(:disabled){background:#e5e7eb}.page-wrap button:disabled{opacity:.5;cursor:not-allowed}.search-modal-button-wrap{flex:0 0 auto;display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.search-modal-button-wrap .search-modal-button{padding:.6rem 1rem;border-radius:8px;font-size:.9rem;cursor:pointer;border:none;transition:background .2s ease}.search-modal-button-wrap .search-modal-button:first-of-type{background:#3885c0;color:#fff}.search-modal-button-wrap .search-modal-button:first-of-type:hover{background:#5196d6}.search-modal-button-wrap .search-modal-button:last-of-type{background:#f3f4f6;color:#374151}.search-modal-button-wrap .search-modal-button:last-of-type:hover{background:#e5e7eb}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.loading-wrap{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.loading-wrap .loading-text{margin-top:.8rem;font-size:1.1rem;color:#555}.auth-wrap,.login-wrap{width:100%;max-width:500px;margin:80px auto;padding:40px 30px;background-color:#fff;border-radius:16px;box-shadow:0 12px 28px #0000001f;display:flex;flex-direction:column;align-items:center;gap:1.5rem;transition:transform .2s ease}.auth-wrap:hover,.login-wrap:hover{transform:translateY(-2px)}.auth-wrap .login-logo,.login-wrap .login-logo{width:180px;height:80px}.auth-wrap .login-logo img,.login-wrap .login-logo img{width:100%;height:auto;display:block;object-fit:contain;padding:0;margin:0 auto}.auth-wrap .login-info,.login-wrap .login-info{font-size:.95rem;color:#6b7280;text-align:center;margin-bottom:1.5rem;line-height:1.4}.auth-wrap form,.login-wrap form{width:100%;display:flex;flex-direction:column;gap:1rem}.auth-wrap form .form-wrap,.login-wrap form .form-wrap{display:flex;flex-direction:column}.auth-wrap form .form-wrap .form-label,.login-wrap form .form-wrap .form-label{font-size:.95rem;font-weight:500;margin-bottom:6px;color:#4b5563}.auth-wrap form .form-wrap .form-input,.login-wrap form .form-wrap .form-input{width:100%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;transition:border-color .3s}.auth-wrap form .form-wrap .form-input:focus,.login-wrap form .form-wrap .form-input:focus{border-color:#5196d6;outline:none}.auth-wrap form .form-wrap .form-input.input-error,.login-wrap form .form-wrap .form-input.input-error{border-color:#f87171}.auth-wrap form .form-wrap .error-message,.login-wrap form .form-wrap .error-message{margin-top:5px;font-size:.85rem;color:#f87171}.auth-wrap form .auth-btn-wrap,.auth-wrap form .login-btn-wrap,.login-wrap form .auth-btn-wrap,.login-wrap form .login-btn-wrap{display:flex;flex-direction:column;gap:12px;margin-top:15px}.auth-wrap form .auth-btn-wrap .auth-btn,.auth-wrap form .auth-btn-wrap .login-btn,.auth-wrap form .login-btn-wrap .auth-btn,.auth-wrap form .login-btn-wrap .login-btn,.login-wrap form .auth-btn-wrap .auth-btn,.login-wrap form .auth-btn-wrap .login-btn,.login-wrap form .login-btn-wrap .auth-btn,.login-wrap form .login-btn-wrap .login-btn{width:100%;padding:12px 0;font-size:1rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s;color:#fff;background:#3885c0}.auth-wrap form .auth-btn-wrap .auth-btn:disabled,.auth-wrap form .auth-btn-wrap .login-btn:disabled,.auth-wrap form .login-btn-wrap .auth-btn:disabled,.auth-wrap form .login-btn-wrap .login-btn:disabled,.login-wrap form .auth-btn-wrap .auth-btn:disabled,.login-wrap form .auth-btn-wrap .login-btn:disabled,.login-wrap form .login-btn-wrap .auth-btn:disabled,.login-wrap form .login-btn-wrap .login-btn:disabled{background-color:#93c5fd;cursor:not-allowed}.auth-wrap form .auth-btn-wrap .auth-btn.secondary,.auth-wrap form .auth-btn-wrap .login-btn.secondary,.auth-wrap form .login-btn-wrap .auth-btn.secondary,.auth-wrap form .login-btn-wrap .login-btn.secondary,.login-wrap form .auth-btn-wrap .auth-btn.secondary,.login-wrap form .auth-btn-wrap .login-btn.secondary,.login-wrap form .login-btn-wrap .auth-btn.secondary,.login-wrap form .login-btn-wrap .login-btn.secondary{background:#e5e7eb;color:#374151}.auth-wrap form .auth-btn-wrap .auth-btn.secondary:hover:not(:disabled),.auth-wrap form .auth-btn-wrap .login-btn.secondary:hover:not(:disabled),.auth-wrap form .login-btn-wrap .auth-btn.secondary:hover:not(:disabled),.auth-wrap form .login-btn-wrap .login-btn.secondary:hover:not(:disabled),.login-wrap form .auth-btn-wrap .auth-btn.secondary:hover:not(:disabled),.login-wrap form .auth-btn-wrap .login-btn.secondary:hover:not(:disabled),.login-wrap form .login-btn-wrap .auth-btn.secondary:hover:not(:disabled),.login-wrap form .login-btn-wrap .login-btn.secondary:hover:not(:disabled){background:#d1d5db}.auth-wrap form .signup-text,.login-wrap form .signup-text{font-size:.875rem;color:#6b7280;text-align:center;margin-top:.75rem}.auth-wrap form .signup-text .signup-link,.login-wrap form .signup-text .signup-link{margin-left:.25rem;color:#3885c0;font-weight:600;cursor:pointer;transition:color .2s}.auth-wrap form .signup-text .signup-link:hover,.login-wrap form .signup-text .signup-link:hover{color:#5196d6}.auth-wrap form .auth-email-button-wrap,.login-wrap form .auth-email-button-wrap{display:flex;gap:.5rem;flex-direction:column;width:100%}.auth-wrap form .auth-email-button-wrap .email-row,.login-wrap form .auth-email-button-wrap .email-row{display:flex;gap:.5rem;align-items:flex-start}.auth-wrap form .auth-email-button-wrap .email-row .form-wrap,.login-wrap form .auth-email-button-wrap .email-row .form-wrap{flex:1}.auth-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary,.login-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary{position:relative;top:28px;flex-shrink:0;height:44px;padding:0 12px;font-size:.9rem;border-radius:10px;background-color:#e5e7eb;color:#374151;cursor:pointer;transition:all .2s;border:1px solid #ddd}.auth-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:hover:not(:disabled),.login-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:hover:not(:disabled){background-color:#d1d5db}.auth-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:disabled,.login-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:disabled{opacity:.6;cursor:not-allowed}.auth-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:focus,.login-wrap form .auth-email-button-wrap .email-row .auth-btn.secondary:focus{outline:none}.auth-wrap form .auth-email-button-wrap .form-wrap .error-message,.login-wrap form .auth-email-button-wrap .form-wrap .error-message{margin-top:5px;font-size:.85rem;color:#f87171}@media screen and (max-width: 480px){.auth-wrap,.login-wrap{padding:30px 20px}.auth-wrap .auth-title,.auth-wrap .login-title,.login-wrap .auth-title,.login-wrap .login-title{font-size:1.6rem}}.my-page-container{display:flex;min-height:calc(100vh - 60px);background:#f9fafb}.my-page-side-bar{width:260px;background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;padding:2rem 1rem}.my-page-profile-wrap{text-align:center;margin-bottom:2rem}.my-page-profile-wrap .my-page-profile-icon{color:#999}.my-page-profile-wrap .my-page-profile-wrap-row{margin:.5rem 0}.my-page-profile-wrap .my-page-side-user-name{font-size:1.1rem;font-weight:600;color:#111827}.my-page-profile-wrap .my-page-side-user-email{font-size:.9rem;color:#6b7280}.my-page-side-menu{display:flex;flex-direction:column;gap:.25rem}.my-page-side-menu .my-page-side-menu-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;color:#374151;font-size:.95rem;font-weight:500;text-decoration:none;transition:background .2s ease,color .2s ease,border-left .2s ease;border-left:2px solid transparent}.my-page-side-menu .my-page-side-menu-row:hover{background:#f3f4f6;color:#111827}.my-page-side-menu .my-page-side-menu-row.selected{background:#f3f4f6;color:#111827;font-weight:600;border-left:4px solid #2563eb}.my-page-side-menu .my-page-side-menu-row .menu-icon{font-size:1rem;color:#6b7280;transition:color .2s ease}.my-page-side-menu .my-page-side-menu-row.selected .menu-icon{color:#2563eb}.my-page-content-wrap{flex:1;padding:2rem;background:#f9fafb}.user-places-title{margin-bottom:20px}.user-places-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.2rem;padding-bottom:2rem}.place-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 6px #00000014;display:flex;flex-direction:column;transition:transform .2s;max-height:400px;max-width:300px}.place-thumbnail{width:100%;height:140px;overflow:hidden}.place-thumbnail img{width:100%;height:100%;object-fit:cover}.place-info{padding:.8rem;flex:1}.place-info .place-name{font-size:1rem;font-weight:700;margin-bottom:.3rem;display:-webkit-box;overflow:hidden;text-overflow:ellipsis;height:2.4em}.place-info .place-rating{display:flex;align-items:center;gap:.3rem;color:#ff9500;font-size:.85rem}.place-info .place-rating .star-icon{color:#ffb400}.place-info .place-address{margin-top:.4rem;display:flex;align-items:center;font-size:.8rem;color:#666}.place-info .place-address .map-icon{margin-right:4px;color:#888}.place-info .place-meta{margin-top:.5rem;display:flex;justify-content:flex-end;font-size:.75rem;color:#555}.place-info .place-meta .price-level{color:#444;font-weight:700}.place-info .place-button-wrap{display:flex;flex-direction:row;gap:30px;margin:15px 0;border-top:1px solid #ddd;padding-top:5px}.place-info .place-button-wrap .detail-button{margin-top:.6rem;width:100%;background:#3885c0;color:#fff;padding:.5rem;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s}.place-info .place-button-wrap .detail-button:hover{background:#5196d6}.place-info .place-button-wrap .delete-button{margin-top:.6rem;width:100%;background:#e74c3c;color:#fff;padding:.5rem;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s}.place-info .place-button-wrap .delete-button:hover{background:#c0392b}.place-info .places-button{margin-top:.6rem;width:100%;background:#f5f5f5;color:#333;padding:.5rem;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.85rem;transition:background .2s}.place-info .places-button:hover{background:#e0e0e0;color:#000}.empty-text{text-align:center;color:#888;font-size:.95rem;padding:2rem}.my-page-content-title{font-size:1.5rem;font-weight:700;margin-bottom:24px}.my-page-content-menu-wrap{display:flex;gap:16px;margin-bottom:16px}.my-page-content-menu-item{padding:8px 12px;cursor:pointer;border-bottom:2px solid transparent;transition:border-color .2s,font-weight .2s}.my-page-content-menu-item.active{border-bottom:2px solid #007aff;font-weight:600}.my-page-content-menu-item:hover{border-bottom:2px solid rgba(0,122,255,.2)}.basic-settings,.security-settings{padding:16px;border:1px solid #ddd;border-radius:6px;background-color:#fff}.save-button{margin-top:10px;padding:8px 16px;border:none;border-radius:6px;background-color:#3885c0;color:#fff;cursor:pointer}.save-button:hover{background-color:#5196d6}.basic-settings .form-wrap,.security-settings .form-wrap{display:flex;flex-direction:column;margin-bottom:12px}.basic-settings .form-wrap .form-label,.security-settings .form-wrap .form-label{font-size:.95rem;font-weight:500;margin-bottom:6px;color:#4b5563}.basic-settings .form-wrap .form-input,.security-settings .form-wrap .form-input{width:50%;padding:12px 14px;border:1px solid #d1d5db;border-radius:10px;font-size:1rem;transition:border-color .3s}.basic-settings .form-wrap .form-input:focus,.security-settings .form-wrap .form-input:focus{border-color:#5196d6;outline:none}.basic-settings .form-wrap .form-input.input-error,.security-settings .form-wrap .form-input.input-error{border-color:#f87171}.basic-settings .form-wrap .error-message,.security-settings .form-wrap .error-message{margin-top:5px;font-size:.85rem;color:#f87171}
