body.woocommerce-lost-password { background: #fbfcfd; }
.farabak-recovery, .farabak-recovery *, .farabak-recovery *::before, .farabak-recovery *::after { box-sizing: border-box; }
.farabak-recovery { display: grid; place-items: center; min-height: 70svh; padding: 56px 24px; color: #0f172a; font-family: Arial, Helvetica, sans-serif; }
.farabak-recovery__card { width: min(640px, 100%); min-width: 0; padding: 48px 52px; border-radius: 24px; background: #fff; box-shadow: 0 20px 45px #152b4810; }
.farabak-recovery__header { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 20px; margin-bottom: 30px; }
.farabak-recovery__header h1 { margin: 0; font-size: 26px; font-weight: 400; line-height: 1.4; }
.farabak-recovery__brand { display: inline-flex; align-items: center; flex-shrink: 0; gap: 2px; color: #000; text-decoration: none; font: italic 900 24px/1 Arial, Helvetica, sans-serif; letter-spacing: -.8px; }
.farabak-recovery__mark { display: inline-grid; place-items: center; width: 18px; height: 17px; margin-right: 1px; background: #BE1C1D; color: #fff; font: italic 15px/1 Georgia, serif; transform: skewX(-14deg); }
.farabak-recovery__card p { margin: 0 0 20px; color: #667b9b; font-size: 14px; line-height: 1.7; overflow-wrap: anywhere; }
.farabak-recovery .woocommerce-message { margin: 0 0 20px; padding: 16px 16px 16px 48px; border: 0; border-left: 3px solid #BE1C1D; border-radius: 14px; background: #edf2f8; color: #667b9b; font-size: 14px; line-height: 1.5; }
.farabak-recovery .woocommerce-message::before { top: 50%; left: 16px; transform: translateY(-50%); color: #BE1C1D; }
.farabak-recovery .woocommerce-message .farabak-notice__icon { top: 50%; transform: translateY(-50%); }
.woocommerce .farabak-recovery__form .form-row { float: none; width: 100%; margin: 0 0 20px; padding: 0; }
.woocommerce .farabak-recovery__form label { display: block; margin-bottom: 8px; color: #667b9b; font-size: 14px; line-height: 1.5; }
.woocommerce .farabak-recovery__form input.input-text { display: block; width: 100%; min-width: 0; min-height: 58px; padding: 16px 18px; border: 1px solid transparent; border-radius: 14px; background: #edf2f8; color: #0f172a; font: 15px/1.4 Arial, Helvetica, sans-serif; }
.woocommerce .farabak-recovery__form input::placeholder { color: #8b9ebb; opacity: 1; }
.woocommerce .farabak-recovery__form button.button { position: relative; display: block; overflow: hidden; width: 100%; min-height: 58px; padding: 16px 18px; border: 0; border-radius: 9px; background: #BE1C1D; color: #fff; font: 600 16px/1.5 Arial, Helvetica, sans-serif; cursor: pointer; }
.woocommerce .farabak-recovery__form button.button:hover { background: #a1181a; color: #fff; }
.farabak-recovery__form .farabak-hover-btn::before { content: ''; position: absolute; top: 0; left: -75%; width: 50%; height: 100%; background: linear-gradient(120deg, #ffffff33, #ffffff99, #ffffff33); transform: skewX(-20deg); pointer-events: none; }
.farabak-recovery__form .farabak-hover-btn:hover::before { animation: farabak-recovery-shine .4s ease forwards; }
@keyframes farabak-recovery-shine { from { left: -75%; } to { left: 125%; } }
.farabak-recovery__back { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 40px; padding: 8px 14px; border-radius: 9px; background: #e8edf5; color: #0f172a; font: 600 14px/1.5 Arial, Helvetica, sans-serif; text-decoration: none; }
.farabak-recovery__back svg { flex-shrink: 0; }
.farabak-recovery :is(input,button,a):focus-visible { outline: 2px solid #667b9b; outline-offset: 3px; }
.farabak-recovery__form .woocommerce-password-strength { margin-top: 10px; border-radius: 9px; }
@media (max-width: 600px) { .farabak-recovery { padding: 32px 16px; } .farabak-recovery__card { padding: 32px 24px; border-radius: 20px; } .farabak-recovery__header { gap: 16px; } .farabak-recovery__brand { font-size: 22px; } .woocommerce .farabak-recovery__form input.input-text { font-size: 16px; } }
@media (prefers-reduced-motion: reduce) { .farabak-recovery__form .farabak-hover-btn::before { display: none; animation: none; } }
