.terms-modal-overlay{z-index:10000}.terms-modal-content{background:var(--bg-color);width:90%;max-width:800px;max-height:90vh;color:var(--text-color);flex-direction:column;display:flex}.terms-modal-header{border-bottom:2px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:flex-start;padding:1.5rem;display:flex}.terms-modal-header h2{color:var(--text-color);margin:0;font-size:1.5rem}.terms-last-updated{color:#999;margin:.5rem 0 0;font-size:.875rem;font-style:italic}.terms-modal-body{flex:1;padding:0;overflow-y:auto}.terms-content{padding:1.5rem}.terms-section{margin-bottom:2rem}.terms-section:last-child{margin-bottom:0}.terms-section-title{color:var(--primary-color);border-bottom:2px solid var(--border-color);margin:0 0 1rem;padding-bottom:.5rem;font-size:1.125rem;font-weight:700}.terms-section-content{color:var(--text-color);white-space:pre-line;text-align:justify;margin:0;font-size:.9375rem;line-height:1.7}.terms-modal-footer{border-top:2px solid var(--border-color);background:var(--bg-color);flex-shrink:0;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.terms-modal-footer .btn-primary,.terms-modal-footer .btn-secondary{cursor:pointer;-webkit-tap-highlight-color:transparent;border:none;border-radius:8px;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s}.terms-modal-footer .btn-primary{color:#fff;background:linear-gradient(135deg,#32bcad 0%,#28a89a 100%)}.terms-modal-footer .btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px #32bcad4d}.terms-modal-footer .btn-secondary{background:var(--secondary-bg);color:var(--text-color);border:2px solid var(--border-color)}.terms-modal-footer .btn-secondary:hover{background:var(--hover-bg);border-color:var(--primary-color)}.terms-modal-body::-webkit-scrollbar{width:8px}.terms-modal-body::-webkit-scrollbar-track{background:var(--secondary-bg);border-radius:4px}.terms-modal-body::-webkit-scrollbar-thumb{background:var(--primary-color);border-radius:4px}.terms-modal-body::-webkit-scrollbar-thumb:hover{background:#28a89a}@media (max-width:768px){.terms-modal-content{width:95%;max-height:95vh}.terms-modal-header{padding:1rem}.terms-modal-header h2{font-size:1.25rem}.terms-content{padding:1rem}.terms-section-title{font-size:1rem}.terms-section-content{font-size:.875rem}.terms-modal-footer{flex-direction:column-reverse;padding:1rem}.terms-modal-footer .btn-primary,.terms-modal-footer .btn-secondary{width:100%}}
.password-recovery-overlay{-webkit-backdrop-filter:blur(8px);z-index:10000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.password-recovery-modal{border-radius:20px;width:100%;max-width:480px;max-height:90vh;padding:2.5rem;animation:.3s cubic-bezier(.4,0,.2,1) slideUp;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d;-webkit-backdrop-filter:blur(20px)saturate(180%)!important;background:#ffffff0a!important;border:1px solid #ffffff2e!important}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.close-btn{color:var(--text-secondary-color);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:2rem;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.close-btn:hover{background:var(--secondary-color);color:var(--text-color)}.recovery-header{text-align:center;margin-bottom:2rem}.recovery-icon{margin-bottom:1rem;font-size:4rem}.recovery-header h2{color:var(--text-color);margin:0 0 .5rem;font-family:Agrandir,sans-serif;font-size:1.75rem;font-weight:700}.recovery-subtitle{color:var(--text-secondary-color);margin:0;font-size:.95rem;line-height:1.5}.error-message{color:#ef4444;background:#ef44441a;border:1px solid #ef44444d;border-radius:12px;margin-bottom:1.5rem;padding:1rem;font-size:.95rem;line-height:1.5}.recovery-form{flex-direction:column;gap:1.5rem;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-color);font-size:.95rem;font-weight:600}.password-input-wrapper{align-items:center;display:flex;position:relative}.password-input-wrapper .form-input{flex:1;padding-right:3rem}.toggle-password-btn{cursor:pointer;color:var(--text-secondary-color);background:0 0;border:none;justify-content:center;align-items:center;padding:.5rem;font-size:1.25rem;transition:opacity .2s;display:flex;position:absolute;right:.75rem}.toggle-password-btn:hover:not(:disabled){opacity:.7}.toggle-password-btn:disabled{opacity:.4;cursor:not-allowed}.form-input{border:2px solid var(--glass-border);background:var(--secondary-color);color:var(--text-color);border-radius:12px;padding:.875rem 1rem;font-family:inherit;font-size:1rem;transition:all .2s}.form-input:focus{border-color:var(--accent-color);background:var(--primary-color);outline:none}.form-input:disabled{opacity:.6;cursor:not-allowed}.form-input.input-error{background:#ef44440d;border-color:#ef4444}input[type=text][inputmode=numeric]{letter-spacing:.5rem;text-align:center;font-family:Courier New,monospace;font-size:1.5rem;font-weight:600}.field-error{color:#ef4444;margin-top:-.25rem;font-size:.85rem}.resend-code-section{text-align:center;margin:-.5rem 0}.countdown-text{color:var(--accent-color);margin:0;font-size:.95rem}.countdown-text strong{font-weight:700}.resend-link{color:var(--accent-color);cursor:pointer;margin:0;font-size:.95rem;font-weight:600;text-decoration:underline;transition:opacity .2s}.resend-link:hover{opacity:.8}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:12px;padding:1rem 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary{background:var(--accent-color);color:#fff;box-shadow:0 4px 12px #1c79f44d}.btn-primary:hover:not(:disabled){background:#1565d8;transform:translateY(-2px);box-shadow:0 6px 16px #1c79f466}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{background:var(--secondary-color);color:var(--text-color);border:2px solid var(--glass-border)}.btn-secondary:hover:not(:disabled){background:var(--glass-bg);border-color:var(--accent-color)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width:768px){.password-recovery-modal{border-radius:16px;max-width:100%;padding:2rem 1.5rem}.recovery-icon{font-size:3rem}.recovery-header h2{font-size:1.5rem}.recovery-subtitle{font-size:.9rem}.form-input{padding:1rem;font-size:16px}.btn-primary,.btn-secondary{padding:.875rem 1.25rem}}
