/* Provider-only presentation. Other tenants keep customer-portal.css unchanged. */
body.customer-portal--provider-login{background:#fff;color:#102d48;min-height:100vh;min-height:100dvh}
.customer-portal--provider-login .portal-main{display:block;width:100%;max-width:none;margin:0;padding:0;flex:1}
.provider-login{min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(400px,36%) minmax(0,1fr);direction:rtl}
.provider-login__panel{display:flex;flex-direction:column;min-width:0;padding:clamp(20px,3vw,48px);background:#fff}
.provider-login__top{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;max-width:440px;margin-inline:auto}
.provider-login__brand img{display:block;max-width:128px;height:64px;object-fit:contain}
.provider-login__back{font-size:11px;color:#526279;display:flex;align-items:center;gap:8px;min-height:44px}
.provider-login__content{width:100%;max-width:440px;margin:auto; padding-block:24px}
.provider-login__content h1{font-size:clamp(22px,1.9vw,32px);line-height:1.6;margin:0 0 8px;font-weight:800;letter-spacing:-.6px}
.provider-login__subtitle{font-size:13px;color:#526279;margin:0 0 28px}
.provider-login .portal-access-tabs{margin:0 0 24px;padding:4px;border-color:#dce4e9;background:#f2f5f7;border-radius:12px}
.provider-login .portal-access-tabs>*{font-size:12px;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:9px}
.provider-login .portal-access-tabs>.is-active{color:#fff;background:#087c7e;box-shadow:0 2px 6px #0d55531a}
.provider-login .portal-form{margin:0}
.provider-login .portal-field{margin:0 0 22px}
.provider-login .portal-field label{font-size:13px;color:#172f49;margin-bottom:8px}
.provider-login .portal-field input{height:52px;min-height:48px;border:1px solid #d7dfe7;border-radius:11px;background:#fff;font-size:13px;padding:12px 15px;color:#102d48}
.provider-login .portal-mobile{text-align:right}
.provider-login .portal-password input{padding-inline-start:70px}
.provider-login .portal-password__toggle{color:#126f70;min-height:52px}
.provider-login input:focus-visible,.provider-login a:focus-visible,.provider-login button:focus-visible{outline:3px solid #43bca5;outline-offset:3px}
.provider-login__recover{display:block;width:fit-content;margin:-8px 0 24px;font-size:12px;font-weight:700;color:#087678;min-height:24px}
.provider-login .provider-login__submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:50px;margin:0;background:#087c7e;border:1px solid #087c7e;border-radius:10px;font-size:14px;box-shadow:none;cursor:pointer}
.provider-login .provider-login__submit:hover{background:#066969;border-color:#066969}
.provider-login a{transition:color .18s,background-color .18s}
.provider-login__signup{margin-top:26px;text-align:center;display:grid;gap:12px;font-size:12px;color:#526279}
.provider-login__signup>span{display:flex;align-items:center;gap:14px}
.provider-login__signup>span::before,.provider-login__signup>span::after{content:"";height:1px;background:#e0e6eb;flex:1}
.provider-login__signup>a{font-size:14px;font-weight:700;color:#087678;min-height:32px;display:grid;place-items:center}
.provider-login__footnote{font-size:10px;line-height:1.8;color:#526279;text-align:center;margin:0}
.provider-login__visual{position:relative;isolation:isolate;overflow:hidden;background:#062a42;min-width:0}
.provider-login__art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1}
.provider-login__visual-copy{padding:clamp(28px,4vw,64px);text-align:center;color:#fff}
.provider-login__wordmark{display:block;text-align:left;font-family:Arial,sans-serif;font-size:28px;font-weight:700;letter-spacing:1px;margin-bottom:24px}
.provider-login__visual h2{font-size:clamp(24px,2.8vw,44px);line-height:1.6;margin:0 0 10px;font-weight:800}
.provider-login__visual p{font-size:clamp(13px,1.4vw,21px);margin:0;color:#d0e9ed}
.provider-login .portal-errors:has(.validation-summary-valid){display:none}
.provider-login .portal-errors ul{margin:0;padding:12px 28px;font-size:12px}
.provider-login .portal-errors .validation-summary-errors{margin-bottom:16px}
@media(min-width:901px) and (max-height:800px){
 .provider-login__panel{padding:18px 32px}.provider-login__brand img{height:48px;max-width:110px}
 .provider-login__content{padding-block:12px}.provider-login__content h1{font-size:25px}.provider-login__subtitle{margin-bottom:18px;font-size:12px}
 .provider-login .portal-access-tabs{margin-bottom:18px}.provider-login .portal-field{margin-bottom:16px}
 .provider-login__recover{margin-bottom:16px}.provider-login__signup{margin-top:18px;gap:8px}
 .provider-login__visual-copy{padding-top:24px}.provider-login__wordmark{margin-bottom:12px}
}
@media(max-width:900px){
 .provider-login{grid-template-columns:minmax(0,1fr)}.provider-login__visual{display:none}
 .provider-login__panel{padding:24px;min-height:100vh;min-height:100dvh}.provider-login__content{max-width:440px;padding-block:28px}
}
@media(max-height:600px){.provider-login__panel{padding-block:12px}.provider-login__content{padding-block:12px}.provider-login__subtitle{margin-bottom:14px}.provider-login .portal-field{margin-bottom:12px}.provider-login__signup{margin-top:14px}}
@media(prefers-reduced-motion:reduce){.provider-login a{transition:none}}
