/* Agent sign-in and recovery use the same pink public brand language as registration. */
.agent-login-modal { font-family: 'Plus Jakarta Sans',sans-serif; }
.agent-login-backdrop { background: rgba(31,20,31,.68); backdrop-filter: blur(8px); }
.agent-login-panel { width: min(520px,calc(100vw - 32px)); max-height: calc(100dvh - 32px); padding: 32px 38px 0; overflow-y: auto; border: 1px solid rgba(255,255,255,.78); border-radius: 24px; background: linear-gradient(160deg,#fff 0%,#fff 72%,#fff5f8 135%); box-shadow: 0 34px 100px rgba(50,22,40,.34); }
.agent-login-close { top: 18px; right: 18px; width: 40px; height: 40px; border-radius: 12px; background: var(--brand-gradient,linear-gradient(110deg,#E91E63,#C2185B)); box-shadow: 0 9px 21px rgba(233,30,99,.24); transition: transform .18s ease,box-shadow .18s ease; }
.agent-login-close:hover { transform: translateY(-2px) rotate(2deg); box-shadow: 0 13px 26px rgba(233,30,99,.32); }
.agent-login-popup-head { padding: 0 28px 22px; }
.agent-login-popup-icon { width: 56px; height: 56px; margin-bottom: 15px; border-radius: 17px; background: var(--brand-gradient,linear-gradient(110deg,#E91E63,#C2185B)); box-shadow: 0 13px 29px rgba(233,30,99,.25); }
.agent-login-popup-icon svg { width: 25px; height: 25px; }
.agent-login-popup-head small { color: var(--brand-primary,#E91E63); font-size: 10.5px; letter-spacing: .19em; }
.agent-login-popup-head h2 { margin: 8px 0 6px; color: #332433; font-size: 30px; letter-spacing: -.04em; }
.agent-login-popup-head p { color: #786a75; font-size: 12.5px; line-height: 1.62; }
.agent-login-progress { max-width: 310px; margin-top: 21px; }
.agent-login-progress[hidden] { display: none !important; }
.agent-login-progress::before { background: #ead9e1; }
.agent-login-progress li { color: #95838e; }
.agent-login-progress li span { border-color: #ead9e1; color: #8c7885; }
.agent-login-progress li.active,.agent-login-progress li.complete { color: var(--brand-primary,#E91E63); }
.agent-login-progress li.active span,.agent-login-progress li.complete span { border-color: var(--brand-primary,#E91E63); background: var(--brand-gradient,linear-gradient(110deg,#E91E63,#C2185B)); box-shadow: 0 0 0 4px rgba(233,30,99,.1); }
.agent-login-feedback { margin-bottom: 16px; border-radius: 11px; font-size: 11.5px; }
.agent-login-feedback.is-success { border-color: #bce3d5; color: #087055; background: #edfaf5; }
.agent-popup-form { gap: 17px; }
.agent-popup-form > label { color: #3e303a; font-size: 13px; }
.agent-popup-label button { padding: 2px 0; border: 0; color: var(--brand-primary,#E91E63); background: none; font: 800 10.5px 'Plus Jakarta Sans',sans-serif; cursor: pointer; }
.agent-popup-label button:hover { color: var(--brand-secondary,#C2185B); text-decoration: underline; }
.agent-popup-input input { height: 53px; border-color: #dfcfd7; border-radius: 12px; color: #382b35; background: #fffdfe; font-size: 13.5px; }
.agent-popup-input input:hover { border-color: #cdb5c0; }
.agent-popup-input input:focus { border-color: var(--brand-primary,#E91E63); background: #fff; box-shadow: 0 0 0 4px rgba(233,30,99,.1); }
.agent-popup-input > svg { color: #9d7f8e; }
.agent-popup-input button { color: var(--brand-primary,#E91E63); }
.agent-popup-security { border-color: #f0d7e0; color: #67535f; background: #fff3f7; }
.agent-popup-security svg { color: var(--brand-primary,#E91E63); }
.agent-popup-submit { height: 53px; border-radius: 12px; background: var(--brand-gradient,linear-gradient(110deg,#E91E63,#C2185B)); font-size: 13px; box-shadow: 0 12px 27px rgba(233,30,99,.24); }
.agent-popup-submit:hover:not(:disabled) { box-shadow: 0 16px 32px rgba(233,30,99,.32); }
.agent-login-popup-foot { margin: 24px -38px 0; padding: 18px 20px; border-top-color: #efdee5; border-radius: 0 0 24px 24px; color: #796b76; background: #fff7fa; font-size: 11.5px; }
.agent-login-popup-foot button { color: var(--brand-primary,#E91E63); font-size: 11.5px; }
.agent-otp-delivery { border-color: #efd8e1; background: linear-gradient(135deg,#fff6f9,#fff); }
.agent-otp-delivery > span { color: var(--brand-primary,#E91E63); background: #fff0f5; }
.agent-otp-delivery small,.agent-otp-help svg,.agent-otp-resend { color: var(--brand-primary,#E91E63); }
.agent-otp-resend { background: #fff1f5; }

.agent-forgot-step { padding-bottom: 28px; }
.agent-forgot-intro { display: flex; align-items: flex-start; gap: 13px; margin-bottom: 19px; padding: 15px; border: 1px solid #eed7e0; border-radius: 14px; background: linear-gradient(135deg,#fff4f8,#fff); }
.agent-forgot-intro > span { display: grid; place-items: center; width: 42px; height: 42px; flex: 0 0 42px; border-radius: 12px; color: #fff; background: var(--brand-gradient,linear-gradient(110deg,#E91E63,#C2185B)); box-shadow: 0 8px 18px rgba(233,30,99,.2); }
.agent-forgot-intro > span svg { width: 19px; }
.agent-forgot-intro div { min-width: 0; }
.agent-forgot-intro small { color: var(--brand-primary,#E91E63); font-size: 9px; font-weight: 850; letter-spacing: .12em; }
.agent-forgot-intro h3 { margin: 3px 0 4px; color: #382934; font-size: 17px; }
.agent-forgot-intro p { margin: 0; color: #7b6b76; font-size: 10.5px; line-height: 1.55; }
.agent-forgot-security { margin-top: -2px; }
.agent-forgot-back { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 38px; margin: 16px auto 0; padding: 7px 10px; border: 0; border-radius: 9px; color: #6c5865; background: transparent; font: 800 10.5px 'Plus Jakarta Sans',sans-serif; cursor: pointer; }
.agent-forgot-back:hover { color: var(--brand-primary,#E91E63); background: #fff1f5; }
.agent-forgot-back svg { width: 14px; }

@media(max-width:560px){
 .agent-login-panel{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);padding:28px 20px 0;border-radius:20px}
 .agent-login-popup-head{padding:0 18px 20px}.agent-login-popup-head h2{font-size:26px}
 .agent-login-popup-foot{margin:22px -20px 0;border-radius:0 0 20px 20px}
 .agent-forgot-step{padding-bottom:22px}.agent-forgot-intro{padding:13px}
}

/* Match the coral registration language in a balanced vertical sign-in card. */
@media(min-width:768px){
 .agent-login-panel{width:min(640px,calc(100vw - 56px));padding:34px 38px 0;border-radius:24px;background:#fff;box-shadow:0 32px 90px rgba(20,31,48,.28)}
 .agent-login-popup-head{position:relative;padding:0 0 23px;text-align:left}
 .agent-login-popup-icon{display:none}
 .agent-login-popup-head small{color:#ff7654;font-size:11px;letter-spacing:.18em}
 .agent-login-popup-head h2{margin:8px 0 5px;color:#10233f;font-size:29px;letter-spacing:-.035em}
 .agent-login-popup-head p{max-width:510px;color:#596b82;font-size:12.5px}
 .agent-login-progress{position:static;width:100%;max-width:330px;margin:20px auto 0}
 .agent-popup-form[data-agent-login-credentials]{display:grid;grid-template-columns:1fr;gap:17px;padding-top:3px}
 .agent-popup-form[data-agent-login-credentials]>.agent-popup-security{grid-column:1}
 .agent-popup-form[data-agent-login-credentials]>.agent-popup-submit{grid-column:1;justify-self:stretch;width:100%}
 .agent-login-otp-step{width:100%;margin:0 auto;padding:4px 0 30px}
 .agent-forgot-step{display:grid;grid-template-columns:1fr;gap:18px;padding:4px 0 30px}
 .agent-forgot-step[hidden]{display:none!important}
 .agent-forgot-intro{height:100%;margin:0;padding:18px}
 .agent-forgot-form{align-content:start}
 .agent-forgot-back{grid-column:1;margin:0 auto}
 .agent-login-popup-foot{margin:25px -38px 0;padding:18px 38px;border-radius:0 0 24px 24px;text-align:left}
}
.agent-login-backdrop{background:rgba(28,37,51,.68)}
.agent-login-close{background:#e83b4c;box-shadow:0 9px 21px rgba(232,59,76,.24)}
.agent-login-close:hover{box-shadow:0 13px 26px rgba(232,59,76,.3)}
.agent-login-popup-head small{color:#ff7654}
.agent-login-progress li.active,.agent-login-progress li.complete{color:#f45155}
.agent-login-progress li.active span,.agent-login-progress li.complete span{border-color:#ff7654;background:linear-gradient(135deg,#ff7654,#f45155);box-shadow:0 0 0 4px rgba(255,118,84,.11)}
.agent-popup-label button,.agent-popup-input button,.agent-login-popup-foot button{color:#f45155}
.agent-popup-label button:hover{color:#dc384b}
.agent-popup-input input{border-color:#cbd6e5;background:#fff}
.agent-popup-input input:hover{border-color:#aebed1}
.agent-popup-input input:focus{border-color:#ff7654;box-shadow:0 0 0 4px rgba(255,118,84,.11)}
.agent-popup-input>svg{color:#8697ac}
.agent-popup-security{border-color:#ffd9cf;color:#5e6878;background:#fff5f1}
.agent-popup-security svg{color:#ff7654}
.agent-popup-submit{background:linear-gradient(135deg,#ff7654,#f45155);box-shadow:0 12px 27px rgba(244,81,85,.23)}
.agent-popup-submit:hover:not(:disabled){box-shadow:0 16px 32px rgba(244,81,85,.31)}
.agent-login-popup-foot{border-top-color:#e7edf3;color:#62738a;background:#f8fafc}
.agent-otp-delivery{border-color:#ffdacf;background:linear-gradient(135deg,#fff4ef,#fff)}
.agent-otp-delivery>span{color:#ff7654;background:#fff0eb}
.agent-otp-delivery small,.agent-otp-help svg,.agent-otp-resend{color:#f45155}
.agent-otp-resend{background:#fff0eb}
.agent-forgot-intro{border-color:#ffd9cf;background:linear-gradient(135deg,#fff3ee,#fff)}
.agent-forgot-intro>span{background:linear-gradient(135deg,#ff7654,#f45155);box-shadow:0 8px 18px rgba(244,81,85,.2)}
.agent-forgot-intro small{color:#f45155}
.agent-forgot-back:hover{color:#f45155;background:#fff0eb}

@media(max-width:767px){
 .agent-login-popup-icon{background:linear-gradient(135deg,#ff7654,#f45155);box-shadow:0 12px 27px rgba(244,81,85,.23)}
 .agent-login-popup-head small{color:#f45155}
}
