.brand img{width:34px;height:34px;object-fit:contain;border-radius:50%;background:white;flex:none}
.auth-screen{--auth-ink:#102447;min-height:100vh;min-height:100svh;background:#eef2f8;color:var(--auth-ink);display:flex;flex-direction:column;padding:0 56px;font-size:15px}
.auth-header,.auth-footer{width:100%;max-width:1320px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:24px}
.auth-header{padding:28px 0}
.auth-ministry{display:flex;align-items:center;gap:16px}
.auth-ministry img{flex:none;width:60px;height:60px;object-fit:contain;border-radius:50%;background:white}
.auth-ministry strong{display:block;font-size:17px;font-weight:700;line-height:1.8}
.auth-ministry span{display:block;font-size:12px;color:#526581;margin-top:3px;letter-spacing:.1px}
.auth-language{display:flex;align-items:center;padding:4px;background:#fff;border:1px solid #d6dfec;border-radius:9px;flex-shrink:0;gap:3px}
.auth-language button{border:0;background:transparent;color:#4d5d76;min-width:69px;min-height:36px;padding:5px 12px;font-size:12px;border-radius:5px}
.auth-language button[aria-pressed=true]{color:white;background:#163d8b}
.auth-screen button:focus-visible,.auth-screen input:focus-visible{outline:3px solid #669aff;outline-offset:3px}
.auth-center{width:100%;max-width:1240px;margin:28px auto;flex:1;display:flex;align-items:center}
.auth-frame{width:100%;display:grid;grid-template-columns:1fr 1fr;border-radius:18px;background:white;overflow:hidden;box-shadow:0 18px 65px #18386910;border:1px solid #dce3ef}
.auth-intro{position:relative;isolation:isolate;overflow:hidden;background:#102950;color:white;padding:46px 54px 34px;display:flex;flex-direction:column;min-width:0}
.auth-intro:after{content:'';position:absolute;z-index:-1;bottom:0;right:0;width:120px;height:190px;background:#17478f;clip-path:polygon(100% 0,100% 100%,0 100%)}
.auth-product{display:flex;align-items:center;gap:10px;font-size:18px;font-weight:750;letter-spacing:.1px}
.auth-product-line{width:5px;height:24px;background:#ffcd55;border-radius:1px}
.auth-product-sub{font-size:9px;letter-spacing:1.3px;border-left:1px solid #486183;padding-left:14px;margin-left:4px;color:#c2d0e8;font-weight:500}
.auth-story{margin:auto 0;padding:56px 0 42px}
.auth-eyebrow{font-size:11px;letter-spacing:2px;font-weight:600;color:#b0caff;margin:0 0 22px}
.auth-story h2{font-size:clamp(38px,3.6vw,56px);line-height:1.12;letter-spacing:-1.9px;font-weight:750;margin:0 0 25px;color:#fff}
.auth-description{font-size:15px;line-height:1.8;max-width:365px;color:#c5d5ed;margin:0}
.auth-features{display:grid;grid-template-columns:repeat(3,1fr);gap:17px;padding:24px 0 26px;border-top:1px solid #355074}
.auth-features>div{display:flex;flex-direction:column;gap:12px}
.auth-features svg{width:25px;height:25px;color:#9ebfff}
.auth-features span{font-size:11px;line-height:1.6;color:#e0e9f9}
.auth-intro-footer{display:flex;align-items:center;gap:9px;font-size:10px;color:#bdcee8;padding-top:10px;line-height:1.8}
.auth-gold-dot{width:5px;height:5px;flex-shrink:0;border-radius:50%;background:#ffcd55}
.auth-card{padding:44px 58px 34px;align-self:center;width:100%;min-width:0}
.auth-mode{display:flex;align-items:center;gap:9px;color:#2455b2;font-size:10px;letter-spacing:1.6px;font-weight:700;margin-bottom:18px}
.auth-mode svg{width:18px;height:18px}
.auth-card h1{font-size:30px;line-height:1.3;font-weight:750;letter-spacing:-.8px;margin:0 0 12px}
.auth-card-heading>p{color:#61728a;font-size:13px;line-height:1.8;margin:0 0 27px}
.auth-card .field{margin:0 0 18px}
.auth-card .field label{display:flex;align-items:baseline;gap:5px;font-size:12px;font-weight:600;color:#203756;margin:0 0 8px}
.auth-required{color:#2860c5}
.auth-optional{font-size:10px;font-weight:400;color:#71809a;margin-left:auto}
.auth-card input{background:#fff;border:1px solid #ccd7e6;border-radius:7px;min-height:47px;box-shadow:0 1px 2px #0f234405;padding:11px 13px;color:#132c50;font-size:14px;width:100%;transition:border-color .15s,box-shadow .15s}
.auth-card input::placeholder{color:#8796ac;font-weight:400}
.auth-card input:hover{border-color:#99afd0}
.auth-card input:focus{border-color:#2155e8;box-shadow:0 0 0 3px #2155e813}
.auth-card input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #f3f7ff inset;-webkit-text-fill-color:#132c50}
.auth-input-hint{color:#697b95;font-size:11px;line-height:1.6;margin:7px 0 0}
.auth-password{position:relative}
.auth-password input{padding-right:52px}
.auth-password button{position:absolute;right:4px;top:4px;bottom:4px;width:39px;min-height:36px;padding:7px;border:0;border-radius:4px;background:transparent;color:#71829b}
.auth-password button:hover{background:#eaf0fa;color:#194797}
.auth-password svg{width:20px;height:20px}
.auth-card .form-error:empty{display:none}
.auth-card .form-error{font-size:12px;line-height:1.7;background:#fff1f3;border:1px solid #f4c1cb;border-radius:6px;padding:10px 12px;margin:0 0 16px}
.auth-card .auth-submit{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:49px;background:#2155e8;border-color:#2155e8;border-radius:7px;color:#fff;font-size:13px;font-weight:650;box-shadow:0 4px 9px #2155e821}
.auth-card .auth-submit:hover{background:#1745c6;border-color:#1745c6}
.auth-card .auth-submit:disabled{opacity:.65;cursor:wait}
.auth-submit svg{width:18px;height:18px}
.auth-next,.auth-help{margin-top:24px;padding-top:22px;border-top:1px solid #e4e9f1}
.auth-next{display:flex;gap:12px;align-items:flex-start}
.auth-step-number{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:7px;background:#eaf0ff;color:#2455b2;font-size:11px;font-weight:700}
.auth-next strong,.auth-help strong{font-size:11px;font-weight:650;color:#3d5375;display:block}
.auth-next p,.auth-help p{font-size:11px;color:#6b7e98;margin:4px 0 0;line-height:1.8}
.auth-footer{padding:22px 0 25px;color:#71839c;font-size:10px;letter-spacing:.15px}
.auth-footer span span{margin:0 8px;color:#a8b5c7}
html[lang=km] .auth-story h2{font-size:42px;line-height:1.65;letter-spacing:0}
html[lang=km] .auth-card h1{font-size:25px;line-height:1.8;letter-spacing:0}
html[lang=km] .auth-eyebrow,html[lang=km] .auth-mode,html[lang=km] .auth-product-sub{letter-spacing:.2px}
html[lang=km] .auth-story{padding:32px 0}
html[lang=km] .auth-card .field label{line-height:1.8}
@media(min-width:1700px){.auth-center{max-width:1320px}.auth-card{padding:54px 72px 44px}.auth-intro{padding:54px 64px 44px}.auth-card h1{font-size:34px}.auth-card-heading>p{font-size:14px}.auth-card .field{margin-bottom:22px}.auth-card input{min-height:51px;font-size:15px}.auth-card .field label{font-size:13px}.auth-story h2{font-size:64px}.auth-description{font-size:17px}.auth-card .auth-submit{min-height:52px;font-size:14px}.auth-features span{font-size:12px}.auth-story{padding:65px 0 56px}}
@media(max-width:1100px){.auth-screen{padding:0 30px}.auth-intro{padding:38px 34px 30px}.auth-card{padding:36px 34px 30px}.auth-product-sub{display:none}.auth-card h1{font-size:27px}.auth-header{padding:22px 0}.auth-center{margin:16px auto}.auth-story h2{font-size:45px}html[lang=km] .auth-story h2{font-size:33px}}
@media(max-width:800px){.auth-screen{padding:0 22px}.auth-header{align-items:center;gap:18px}.auth-ministry{gap:10px}.auth-ministry img{width:48px;height:48px}.auth-ministry strong{font-size:13px}.auth-ministry span{font-size:10px}.auth-language button{padding:5px 9px;min-width:52px}.auth-frame{grid-template-columns:1fr;max-width:560px;margin:auto}.auth-intro{padding:25px 30px 28px}.auth-product{font-size:15px}.auth-product-sub{display:block;font-size:8px}.auth-story{padding:25px 0 0}.auth-story h2{font-size:30px;letter-spacing:-.7px;margin-bottom:12px}.auth-story h2 br{display:none}.auth-story h2 br:after{content:' '}.auth-story h2{max-width:350px}.auth-eyebrow,.auth-features,.auth-intro-footer{display:none}.auth-description{font-size:12px;line-height:1.8;max-width:400px}.auth-card{padding:32px 30px}.auth-mode{margin-bottom:13px}.auth-card-heading>p{margin-bottom:23px}.auth-footer{max-width:560px;font-size:9px}html[lang=km] .auth-story{padding:16px 0 0}html[lang=km] .auth-story h2{font-size:25px;line-height:1.75}html[lang=km] .auth-card h1{font-size:24px}}
@media(max-width:520px){.auth-screen{padding:0 16px}.auth-header{flex-wrap:wrap;gap:16px;padding:22px 4px 15px}.auth-ministry{flex:1;min-width:250px}.auth-language{margin-left:auto}.auth-ministry img{width:47px;height:47px}.auth-ministry strong{font-size:13px}.auth-ministry span{font-size:10px}.auth-center{margin:6px auto 10px}.auth-frame{border-radius:12px}.auth-intro{padding:24px}.auth-product-sub{margin-left:auto;padding-left:10px;letter-spacing:.6px;font-size:7px}.auth-story{padding-top:20px}.auth-story h2{font-size:29px;line-height:1.3}.auth-card{padding:28px 24px}.auth-card h1{font-size:26px}.auth-card input{font-size:16px}.auth-footer{padding:16px 4px 24px;flex-wrap:wrap;gap:8px}.auth-footer>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.auth-card input{transition:none}}
