.login-overlay{background:#00000080;inset:0;padding:20px;position:fixed;z-index:10000}.login-inline,.login-overlay{align-items:center;display:flex;justify-content:center}.login-inline{background:var(--u-bg-page,#f7f5f0);min-height:calc(100vh - 200px);padding:48px 20px}.login-inline .login-modal{border:1px solid var(--u-border,#e8e4dc);box-shadow:0 2px 12px #0000000a;max-width:420px}@media(max-width:480px){.login-inline{min-height:calc(100vh - 120px);padding:24px 14px}.login-inline .login-modal{padding:28px 22px}}.login-modal{background:#fff;border-radius:16px;max-height:90vh;max-width:420px;overflow-y:auto;padding:36px 32px;position:relative;width:100%}.modal-close{background:none;border:none;color:#999;cursor:pointer;font-size:18px;padding:4px;position:absolute;right:16px;top:16px}.modal-close:hover{color:#333}.modal-logo{align-items:center;display:flex;gap:10px;justify-content:center;margin-bottom:20px}.modal-logo-text{color:#1a1207;font-size:20px;font-weight:800;letter-spacing:-.5px}.modal-logo .logo-icon{align-items:center;background:#fee500;border-radius:10px;color:#3c1e1e;display:flex;font-size:16px;height:36px;justify-content:center;width:36px}.modal-tabs{border-bottom:1px solid #f0ece4;display:flex;gap:0;margin-bottom:24px}.modal-tab{background:none;border:none;border-bottom:2px solid transparent;color:#999;cursor:pointer;flex:1;font-family:inherit;font-size:15px;font-weight:600;padding:12px;text-align:center;transition:color .2s,border-color .2s}.modal-tab.active{border-bottom-color:#fee500;color:#1a1207}.modal-form{gap:12px;margin-bottom:16px}.modal-field,.modal-form{display:flex;flex-direction:column}.modal-field{gap:4px}.modal-field-error{color:#dc2626;font-size:12px;padding-left:2px}.modal-input{background:#fff;border:1px solid #e8e4dc;border-radius:10px;color:#333;font-family:inherit;font-size:15px;outline:none;padding:13px 16px;transition:border-color .2s;width:100%}.modal-input:focus{background:#fff;border-color:#fee500}.modal-input::-moz-placeholder{color:#bbb}.modal-input::placeholder{color:#bbb}.modal-input.error{border-color:#dc2626}.modal-error{background:#fef2f2;border-radius:10px;color:#dc2626;font-size:13px;padding:12px 16px;text-align:center}.modal-btn-primary{background:#fee500;border:none;border-radius:10px;color:#3c1e1e;cursor:pointer;font-family:inherit;font-size:15px;font-weight:700;padding:14px;transition:background .2s;width:100%}.modal-btn-primary:hover{background:#e5c800}.modal-btn-primary:disabled{cursor:not-allowed;opacity:.7}.modal-switch{color:#888;font-size:14px;margin-bottom:20px;text-align:center}.modal-link-btn{background:none;border:none;color:#1a1207;cursor:pointer;font-family:inherit;font-size:14px;font-weight:600}.modal-link-btn:hover{text-decoration:underline}.modal-agree{align-items:center;color:#1a1207;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:10px;line-height:1.5;white-space:nowrap;word-break:keep-all}.modal-agree>span{flex:1;min-width:0}.modal-agree input[type=checkbox]{accent-color:var(--u-amber);cursor:pointer;flex-shrink:0;height:18px;margin:0;width:18px}.modal-divider{align-items:center;display:flex;gap:16px;margin-bottom:20px}.modal-divider:after,.modal-divider:before{background:#f0ece4;content:"";flex:1;height:1px}.modal-divider span{color:#bbb;font-size:13px;white-space:nowrap}.login-modal .social-buttons{display:flex;flex-direction:column;gap:12px}.login-modal .social-btn{align-items:center;border-radius:10px;cursor:pointer;display:flex;font-family:inherit;font-size:15px;font-weight:600;gap:10px;justify-content:center;padding:13px;text-decoration:none;transition:opacity .2s;width:100%}.login-modal .social-btn:hover{opacity:.9}.login-modal .social-btn.kakao{background:#fee500;color:#3c1e1e}.login-modal .social-btn.naver{background:#03c75a;color:#fff}.login-modal .social-btn.google{background:#fff;border:1px solid #ddd;color:#333}.modal-terms{color:#555;font-size:12px;line-height:1.6;margin-top:24px;text-align:center}.modal-link{color:#dd1c2d;font-weight:600}.modal-link:hover{text-decoration:underline}.modal-fade-enter-active,.modal-fade-leave-active{transition:opacity .2s}.modal-fade-enter-from,.modal-fade-leave-to{opacity:0}@media(max-width:480px){.login-modal{padding:28px 20px}.modal-agree{font-size:12px;gap:8px}}@media(max-width:374px){.modal-agree{font-size:11px;gap:7px}}
