.auth-overlay{position:fixed;inset:0;background:var(--shadow);z-index:2000;display:flex;align-items:center;justify-content:center;padding:20px;animation:authOverlayIn .2s ease}@keyframes authOverlayIn{0%{opacity:0}to{opacity:1}}.auth-modal{background:var(--white);border-radius:24px;width:100%;max-width:400px;max-height:90vh;overflow-y:auto;overflow-x:hidden;position:relative;animation:authModalIn .25s cubic-bezier(.22,1,.36,1);box-shadow:0 8px 40px var(--shadow);scrollbar-width:none}.auth-modal::-webkit-scrollbar{display:none}@keyframes authModalIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.auth-content{padding:32px 28px 28px;position:relative;flex-direction:column}.auth-close,.auth-content{display:flex;align-items:center}.auth-close{position:absolute;top:14px;right:14px;background:transparent;border:none;cursor:pointer;justify-content:center;width:34px;height:34px;border-radius:50%;color:var(--text-2);transition:background .15s,color .15s;padding:0}.auth-close:hover{background:var(--search-bar);color:var(--text-1)}.auth-logo{margin-bottom:14px;display:flex;align-items:center}.auth-title{font-size:24px;font-weight:700;color:var(--text-1);text-align:center;line-height:1.25;margin-bottom:4px}.auth-subtitle{font-size:14px;color:var(--text-2);text-align:center;line-height:1.4}.auth-forgot-content{width:100%}.auth-forgot-subtitle{margin-top:2px}.auth-forgot-form{width:100%}.auth-forgot-send{margin-top:8px}.auth-forgot-send:disabled{background:var(--grey-1);cursor:not-allowed}.auth-forgot-send:disabled:hover{background:var(--grey-1)}.auth-forgot-success{font-size:13px;font-weight:500;color:var(--success);text-align:center}.auth-forgot-footer{margin-top:2px}.auth-form{width:100%;gap:14px;margin-top:20px}.auth-field-group,.auth-form{display:flex;flex-direction:column}.auth-field-group{gap:6px}.auth-label{font-size:14px;font-weight:500;color:var(--text-1);gap:6px}.auth-label,.auth-label-info{display:flex;align-items:center}.auth-label-info{color:var(--text-2)}.auth-input{width:100%;height:50px;border:1.5px solid var(--grey-1);border-radius:12px;padding:0 16px;font-family:var(--font-family-base);font-size:15px;color:var(--text-1);background:var(--white);outline:none;transition:border-color .2s}.auth-input::placeholder{color:var(--text-3)}.auth-input:focus{border-color:var(--text-1)}.auth-password-field{position:relative}.auth-password-field .auth-input{padding-right:50px}.auth-password-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:transparent;border:none;cursor:pointer;display:flex;align-items:center;color:var(--text-2);padding:0;transition:color .15s}.auth-password-toggle:hover{color:var(--text-1)}.auth-input-date{padding:0 14px;color:var(--text-2)}.auth-hint{font-size:12px;color:var(--text-2)}.auth-password-tips-bar{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:var(--text-1)}.auth-tips-icon{background:transparent;border:none;cursor:pointer;display:flex;align-items:center;color:var(--text-2);padding:0;transition:color .15s}.auth-tips-icon:hover{color:var(--text-1)}.auth-forgot{background:transparent;border:none;cursor:pointer;font-size:14px;font-weight:500;color:var(--primary);text-align:left;padding:0;font-family:var(--font-family-base);align-self:flex-start;margin-top:-4px}.auth-forgot:hover{text-decoration:underline}.auth-btn-primary{width:100%;height:50px;background:var(--primary);color:var(--white);border:none;border-radius:24px;font-family:var(--font-family-base);font-size:16px;font-weight:600;cursor:pointer;transition:background .2s;margin-top:2px}.auth-btn-primary:hover{background:var(--primary-hover)}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--text-2);font-size:13px;font-weight:600;letter-spacing:.04em}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--grey-1)}.auth-btn-google{width:100%;height:50px;background:var(--white);border:1.5px solid var(--grey-1);border-radius:24px;font-family:var(--font-family-base);font-size:15px;font-weight:500;color:var(--text-1);cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:background .15s,border-color .15s}.auth-btn-google:hover{background:var(--bg);border-color:var(--text-2)}.auth-terms{font-size:12px;color:var(--text-2);text-align:center;line-height:1.6}.auth-terms a{color:var(--text-2);text-decoration:underline}.auth-terms a:hover{color:var(--text-1)}.auth-footer-links{text-align:center;font-size:14px;color:var(--text-2)}.auth-link{background:transparent;border:none;cursor:pointer;font-size:14px;font-weight:700;color:var(--text-1);font-family:var(--font-family-base);padding:0}.auth-link:hover{text-decoration:underline}.auth-tips-overlay{position:fixed;inset:0;z-index:3000;display:flex;align-items:flex-end;justify-content:center;background:var(--shadow);animation:authOverlayIn .15s ease}@media (min-width:480px){.auth-tips-overlay{align-items:center;padding:20px}}.auth-tips-modal{background:var(--white);border-radius:20px 20px 0 0;padding:28px 24px 36px;width:100%;max-width:480px;display:flex;flex-direction:column;gap:12px;animation:authModalIn .25s cubic-bezier(.22,1,.36,1)}@media (min-width:480px){.auth-tips-modal{border-radius:20px;padding:28px 24px}}.auth-tips-modal h3{font-size:18px;font-weight:700;color:var(--text-1)}.auth-tips-modal p{font-size:14px;color:var(--text-2);line-height:1.6}.auth-tips-modal h4{font-size:15px;font-weight:700;color:var(--text-1)}.auth-tips-modal ul{padding-left:22px;display:flex;flex-direction:column;gap:6px}.auth-tips-modal ul li{font-size:14px;color:var(--text-2);line-height:1.6}.auth-tips-ok{width:100%;height:52px;background:var(--primary);color:var(--white);border:none;border-radius:24px;font-family:var(--font-family-base);font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;transition:background .2s}.auth-tips-ok:hover{background:var(--primary-hover)}.auth-error{color:var(--primary);background:var(--error-pastel)}.auth-error,.auth-success{font-size:13px;border-radius:10px;padding:10px 14px;line-height:1.45}.auth-success{color:var(--success);background:var(--success-pastel)}.auth-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:-4px}.auth-checkbox-label{display:flex;align-items:flex-start;gap:9px;font-size:14px;color:var(--text-1);cursor:pointer;line-height:1.45}.auth-checkbox-label input[type=checkbox]{width:17px;height:17px;min-width:17px;accent-color:var(--primary);cursor:pointer;margin-top:1px}.auth-terms-check{margin-top:-2px}.auth-terms-check a{color:var(--primary);text-decoration:none;font-weight:500}.auth-terms-check a:hover{text-decoration:underline}.auth-otp-input{text-align:center;letter-spacing:.25em;font-size:20px;font-weight:600}.auth-btn-primary:disabled{background:var(--grey-1);cursor:not-allowed}.auth-btn-primary:disabled:hover{background:var(--grey-1)}@media (max-width:480px){.auth-overlay{align-items:flex-end;padding:0}.auth-modal{border-bottom-left-radius:0;border-bottom-right-radius:0;max-height:95vh;animation:authModalSlideUp .3s cubic-bezier(.22,1,.36,1)}@keyframes authModalSlideUp{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}.auth-content{padding:28px 20px 40px}.auth-forgot-content{padding-bottom:36px}}