.auth-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.75);display:flex;align-items:flex-start;justify-content:center;z-index:9999;padding:60px 20px;animation:overlayFadeIn .2s ease-out;overflow-y:auto}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}.auth-modal-content{background:white;width:100%;max-width:480px;max-height:90vh;overflow-y:auto;border:3px solid black;box-shadow:12px 12px 0 rgba(0,0,0,.2);position:relative;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-modal-close{position:absolute;top:15px;right:15px;width:36px;height:36px;border:2px solid black;background:white;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;transition:all .2s;z-index:10}.auth-modal-close:hover{background:black;color:white;transform:rotate(90deg)}.auth-modal-content .auth-header{text-align:center;padding:30px 30px 0;margin-bottom:20px}.auth-modal-content .auth-title{font-family:Times New Roman,serif;font-size:24px;font-weight:900;text-transform:uppercase;margin:0;letter-spacing:1px}.auth-modal-content .auth-subtitle{font-family:Courier New,monospace;font-size:11px;color:#666;margin-top:5px}.auth-modal-content .auth-tabs{display:flex;border-bottom:2px solid black;background:#f0f0f0}.auth-modal-content .auth-tab{flex:1 1;padding:12px;background:transparent;font-family:Courier New,monospace;font-weight:700;font-size:13px;cursor:pointer;text-transform:uppercase;transition:all .2s;border:none;border-right:1px solid #ccc}.auth-modal-content .auth-tab:last-child{border-right:none}.auth-modal-content .auth-tab:hover{background:#e0e0e0}.auth-modal-content .auth-tab.active{background:white;border-bottom:2px solid white;margin-bottom:-2px;color:#008e18}.auth-modal-content .auth-form-container{padding:25px}.auth-modal-content .auth-form-group{margin-bottom:16px}.auth-modal-content .auth-label{display:block;font-family:Courier New,monospace;font-size:11px;font-weight:700;text-transform:uppercase;margin-bottom:6px;color:#333}.auth-modal-content .auth-input{width:100%;padding:10px 12px;border:2px solid #333;background:#fafafa;font-family:Courier New,monospace;font-size:14px;outline:none;transition:all .2s;box-sizing:border-box}.auth-modal-content .auth-input:focus{background:white;border-color:black;box-shadow:3px 3px 0 #008e18}.auth-modal-content .auth-btn{width:100%;padding:12px;background:black;color:white;border:none;font-family:Courier New,monospace;font-weight:700;font-size:14px;text-transform:uppercase;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:10px;margin-top:10px}.auth-modal-content .auth-btn:hover:not(:disabled){background:#008e18;transform:translate(-2px,-2px);box-shadow:4px 4px 0 black}.auth-modal-content .auth-btn:disabled{background:#999;cursor:not-allowed}.auth-modal-content .auth-footer{text-align:center;margin-top:16px;font-family:Courier New,monospace;font-size:11px;color:#666}.auth-back-btn{background:none;border:none;cursor:pointer;display:flex;align-items:center;gap:8px;font-family:Courier New,monospace;font-size:13px;font-weight:700;color:#333;padding:0;margin-bottom:20px;text-transform:uppercase}.auth-back-btn:hover{color:#000;text-decoration:underline}.auth-modal-content .auth-link{color:black;text-decoration:underline;cursor:pointer;font-weight:700}.auth-modal-content .error-text{color:#dc2626;font-family:Courier New,monospace;font-size:11px;margin-top:4px}.auth-modal-content .input-error{border-color:#dc2626}.server-error-box{background-color:#fef2f2;border:2px solid #dc2626;padding:12px;margin-bottom:20px;display:flex;align-items:center;gap:10px;animation:shake .4s cubic-bezier(.36,.07,.19,.97) both}.server-error-box p{color:#dc2626;font-family:Courier New,monospace;font-size:13px;font-weight:700;margin:0}@keyframes shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,0,0)}30%,50%,70%{transform:translate3d(-4px,0,0)}40%,60%{transform:translate3d(4px,0,0)}}.auth-modal-content .checkbox-wrapper{display:flex;align-items:center;gap:8px;margin-top:8px}.auth-modal-content .checkbox-input{width:16px;height:16px;accent-color:black}.auth-modal-content .checkbox-label{font-family:Courier New,monospace;font-size:11px;cursor:pointer}.auth-modal-success{text-align:center;padding:40px 30px}.auth-modal-success .success-icon{color:#10b981;margin-bottom:20px}.auth-modal-success h2{font-family:Times New Roman,serif;font-size:22px;font-weight:900;text-transform:uppercase;margin:0 0 15px}.auth-modal-success p{font-family:Courier New,monospace;font-size:14px;color:#444;margin:10px 0;line-height:1.5}.auth-modal-success .email-note{color:#666;font-size:12px}.auth-modal-success .back-to-login-btn{margin-top:25px;padding:12px 30px;background:black;color:white;border:none;font-family:Courier New,monospace;font-weight:700;font-size:13px;text-transform:uppercase;cursor:pointer;transition:all .2s}.auth-modal-success .back-to-login-btn:hover{background:#008e18}.auth-modal-content .spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:520px){.auth-modal-overlay{padding:10px}.auth-modal-content{max-height:95vh}.auth-modal-content .auth-form-container{padding:20px}.auth-modal-content .auth-title{font-size:20px}}.google-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:10px 16px;border:2px solid #e5e7eb;background:white;cursor:pointer;font-size:14px;font-weight:600;color:#374151;transition:all .2s;letter-spacing:.02em}.google-btn:hover{border-color:#9ca3af;background:#f9fafb}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:#9ca3af;font-size:13px}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:#e5e7eb}