:root{--primary-color:#007bff;--primary-hover:#3182ce;--error-bg:#fed7d7;--error-text:#c53030;--success-bg:#c6f6d5;--success-text:#2f855a;--input-border:#e2e8f0;--text-primary:#2d3748;--text-secondary:#718096}*,:after,:before{box-sizing:border-box;margin:0;padding:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.forgot-password-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f7fa,#c3cfe2);padding:20px;scroll-behavior:smooth}.forgot-password-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px rgba(0,0,0,.1);padding:clamp(20px,5vw,40px);width:100%;max-width:450px;animation:fadeIn .5s ease-out;transform:translateZ(0);backface-visibility:hidden}.card-header{text-align:center;margin-bottom:30px}.card-header h1{color:var(--text-primary);font-size:clamp(1.5rem,4vw,2rem);margin-bottom:10px;font-weight:700}.card-header p{color:var(--text-secondary);font-size:clamp(.9rem,2vw,1rem);line-height:1.5}.forgot-password-form{display:flex;flex-direction:column;gap:20px}.form-group{position:relative}.email-input{width:100%;padding:15px;border:2px solid var(--input-border);border-radius:10px;font-size:1rem;transition:border-color .3s ease;outline:none;font-size:16px}.email-input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px rgba(66,153,225,.1)}.email-input::-moz-placeholder{color:var(--text-secondary);opacity:.8}.email-input::placeholder{color:var(--text-secondary);opacity:.8}.email-input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 30px #fff}.reset-button{background:var(--primary-color);color:#fff;padding:15px;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:manipulation}.reset-button:hover:not(:disabled){background:var(--primary-hover);transform:translateY(-1px)}.reset-button:active:not(:disabled){transform:translateY(1px)}.reset-button:disabled{background:var(--primary-color);opacity:.6;cursor:not-allowed}.reset-button.loading{position:relative;pointer-events:none}.message{padding:15px;border-radius:10px;text-align:center;font-size:.9rem;animation:slideIn .3s ease-out}.message.success{background:var(--success-bg);color:var(--success-text)}.message.error{background:var(--error-bg);color:var(--error-text)}.message.info{background-color:#e6f7ff;border:1px solid #b3e6ff;color:#0077b6}.additional-links{text-align:center;margin-top:20px}.back-to-login{color:var(--primary-color);text-decoration:none;font-size:.9rem;transition:color .3s ease;padding:5px}.back-to-login:focus,.back-to-login:hover{color:var(--primary-hover);text-decoration:underline}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media print{.forgot-password-container{background:none;padding:0}.forgot-password-card{box-shadow:none;border:1px solid #ccc}}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-color-scheme:dark){:root{--text-primary:#f7fafc;--text-secondary:#cbd5e0;--input-border:#4a5568}.forgot-password-card{background:#2d3748}.email-input{background:#1a202c;color:#f7fafc}.email-input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 30px #1a202c;-webkit-text-fill-color:#f7fafc}}