:root{--blue:#293b9d;--dark:#17255f;--purple:#8f4de8;--gold:#d9a928;--text:#182136;--muted:#687389;--line:#e5e9f4}*{box-sizing:border-box}html,body{min-height:100%;margin:0}.auth-page{font-family:"Noto Sans Thai",Poppins,sans-serif;color:var(--text);background:radial-gradient(circle at 8% 18%,rgba(66,90,234,.14),transparent 29%),radial-gradient(circle at 92% 84%,rgba(162,78,232,.13),transparent 31%),linear-gradient(135deg,#fbfcff,#f6f5ff 55%,#fff)}.auth-site{min-height:100vh;display:flex;flex-direction:column}.auth-container{width:min(1180px,calc(100% - 40px));margin:auto}.auth-topbar{border-bottom:1px solid var(--line);background:rgba(255,255,255,.86);backdrop-filter:blur(14px)}.auth-topbar-inner{min-height:48px;display:flex;align-items:center;justify-content:space-between;color:#536078;font-size:14px}.auth-topbar nav{display:flex;align-items:center;gap:20px}.auth-topbar a{text-decoration:none;color:#303b55;font-weight:600}.auth-guide{padding:8px 16px;border-radius:999px;color:#fff!important;background:linear-gradient(100deg,#3154db,var(--purple));box-shadow:0 8px 22px rgba(74,76,206,.2)}.auth-header{background:rgba(255,255,255,.94);border-bottom:1px solid var(--line)}.auth-header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px}.auth-header img{display:block;width:min(455px,58vw)}.auth-header span{color:var(--dark);font-family:Poppins,"Noto Sans Thai",sans-serif;font-size:15px;font-weight:700}.auth-main{flex:1;display:grid;align-items:center;padding:42px 0 58px}.auth-back{display:inline-flex;margin-bottom:20px;color:#58647b;font-size:14px;font-weight:600;text-decoration:none}.auth-back:hover{color:var(--blue)}.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,500px);overflow:hidden;border:1px solid rgba(45,65,155,.12);border-radius:30px;background:rgba(255,255,255,.88);box-shadow:0 26px 80px rgba(38,48,99,.14)}.auth-intro{position:relative;isolation:isolate;min-height:560px;padding:58px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;background:linear-gradient(145deg,#21358e,#3f58ce 58%,#7651dc)}.auth-public .auth-intro{background:linear-gradient(145deg,#28388c,#6350ce 58%,#a34cdd)}.auth-intro:before,.auth-intro:after{content:"";position:absolute;z-index:-1;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.auth-intro:before{width:380px;height:380px;right:-170px;top:-130px}.auth-intro:after{width:250px;height:250px;left:-120px;bottom:-100px}.auth-eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;color:#f4cc66}.auth-symbol{width:84px;height:84px;display:grid;place-items:center;margin:22px 0;border:1px solid rgba(255,255,255,.25);border-radius:24px;background:rgba(255,255,255,.13);box-shadow:0 15px 35px rgba(8,18,68,.2);backdrop-filter:blur(8px)}.auth-symbol svg{width:43px;height:43px}.auth-intro h1{max-width:460px;margin:0;font-family:Poppins,"Noto Sans Thai",sans-serif;font-size:clamp(28px,3.2vw,43px);line-height:1.2}.auth-intro>p{max-width:460px;margin:15px 0 28px;color:rgba(255,255,255,.82);font-size:16px;line-height:1.7}.auth-support{display:flex;flex-direction:column;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:13px;color:rgba(255,255,255,.78)}.auth-support strong{color:#fff}.auth-card{padding:58px 50px;display:flex;flex-direction:column;justify-content:center}.auth-card-eyebrow{color:var(--gold);font-family:Poppins,sans-serif;font-size:12px;font-weight:800;letter-spacing:.14em}.auth-card h2{margin:9px 0 5px;color:var(--dark);font-size:30px;line-height:1.3}.auth-card-subtitle{margin:0 0 30px;color:var(--muted);font-size:14px}.modern-login-form{display:grid;gap:19px}.field-group label{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:8px;color:#29334b;font-size:14px;font-weight:700}.field-group label span{color:#8a92a4;font-family:Poppins,sans-serif;font-size:11px;font-weight:500}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap input{width:100%;height:54px;padding:0 48px;border:1px solid #dce1ed;border-radius:13px;outline:0;background:#fafbff;color:#172038;font:500 15px "Noto Sans Thai",Poppins,sans-serif;transition:.2s}.input-wrap input:focus{border-color:#5269dd;background:#fff;box-shadow:0 0 0 4px rgba(59,83,213,.1)}.field-icon{position:absolute;left:16px;width:20px;color:#727d95}.has-prefix input{padding-left:54px}.input-prefix{position:absolute;left:17px;z-index:1;color:var(--blue);font-family:Poppins,sans-serif;font-weight:800}.password-toggle{position:absolute;right:10px;width:36px;height:36px;padding:8px;border:0;border-radius:9px;background:transparent;color:#707b92;cursor:pointer}.password-toggle:hover{background:#edf0fb;color:var(--blue)}.password-toggle svg{display:block;width:20px}.form-links{margin-top:-7px;text-align:right}.form-links a{color:var(--blue);font-size:13px;font-weight:700;text-decoration:none}.login-submit{height:55px;border:0;border-radius:13px;color:#fff;background:linear-gradient(100deg,#3154db,var(--purple));box-shadow:0 12px 28px rgba(69,75,206,.25);font:700 16px "Noto Sans Thai",Poppins,sans-serif;cursor:pointer;transition:.2s}.login-submit:hover{transform:translateY(-2px);box-shadow:0 16px 32px rgba(69,75,206,.31)}.login-submit.is-loading{pointer-events:none;opacity:.86}.login-spinner{display:inline-block;width:17px;height:17px;margin-right:7px;vertical-align:-3px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite}.register-box{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:5px;padding:15px;border-radius:13px;background:#f4f2ff;color:#737c90;font-size:13px}.register-box a{color:#7042c4;font-weight:800;text-decoration:none}.auth-footer{padding:18px 0;border-top:1px solid var(--line);background:rgba(255,255,255,.72);color:#758095;font-size:12px}.auth-footer .auth-container{display:flex;justify-content:space-between;gap:20px}@keyframes spin{to{transform:rotate(360deg)}}
@media(max-width:900px){.auth-layout{grid-template-columns:1fr}.auth-intro{min-height:0;padding:38px}.auth-intro h1{font-size:30px}.auth-support{display:none}.auth-card{padding:42px}.auth-symbol{width:68px;height:68px;margin:18px 0}.auth-symbol svg{width:36px;height:36px}}
@media(max-width:767px){.auth-topbar-inner{justify-content:center}.auth-topbar nav>a:not(.auth-guide){display:none}.auth-header-inner{min-height:76px}.auth-header span{display:none}.auth-main{padding:28px 0 42px}.auth-intro{padding:30px}.auth-intro>p{margin-bottom:0;font-size:14px}.auth-card{padding:30px}.auth-footer .auth-container{display:block;text-align:center}.auth-footer span+span{display:block;margin-top:4px}}
@media(max-width:479px){.auth-container{width:min(100% - 28px,1180px)}.auth-topbar nav{gap:0}.auth-guide{padding:7px 12px;font-size:12px}.auth-layout{border-radius:22px}.auth-intro{padding:25px}.auth-intro h1{font-size:25px}.auth-symbol{width:58px;height:58px;border-radius:18px}.auth-card{padding:26px 22px}.auth-card h2{font-size:25px}.field-group label{display:block}.field-group label span{display:block;margin-top:2px}.input-wrap input{height:52px}}
.field-help{display:block;margin-top:7px;color:#818a9e;font-size:11px;line-height:1.5}.recovery-note{padding:14px 16px;display:flex;flex-direction:column;border:1px solid #e1e5f2;border-radius:13px;background:#f7f8fe;color:#737d92;font-size:12px;line-height:1.55}.recovery-note strong{color:#2b3860;font-size:13px}.account-consent{display:flex;align-items:flex-start;gap:10px;color:#687389;font-size:12px;line-height:1.55;cursor:pointer}.account-consent input{width:17px;height:17px;flex:0 0 auto;margin:1px 0 0;accent-color:#425add}.auth-card:has(#form1){padding-top:36px;padding-bottom:36px}.auth-card:has(#form1) .modern-login-form{gap:15px}
.account-summary{display:flex;flex-direction:column;gap:3px;padding:12px 15px;border:1px solid #e1e5f2;border-radius:13px;background:#f7f8fe;color:#7b8498;font-size:11px}.account-summary strong{color:#28365e;font-size:13px;font-weight:700;overflow-wrap:anywhere}.password-rules{display:flex;flex-direction:column;gap:3px;padding:13px 15px;border-left:3px solid var(--gold);border-radius:5px 12px 12px 5px;background:#fff9e9;color:#75663b;font-size:11px;line-height:1.55}.password-rules strong{color:#5e4d20;font-size:12px}
/* v1.2: align both login pages with the 1340px Mainpage canvas. */
.auth-container{width:min(1340px,calc(100% - 40px))!important}
@media(max-width:479px){.auth-container{width:min(100% - 28px,1340px)!important}}
/* Login pages share the portal theme and accessibility controls. */
html[data-mugr-theme="dark"] .auth-page{--text:#edf2ff;--muted:#aab5ca;--line:#2f3d57;background:radial-gradient(circle at 8% 18%,rgba(66,90,234,.18),transparent 29%),radial-gradient(circle at 92% 84%,rgba(162,78,232,.16),transparent 31%),#0d1627}
html[data-mugr-theme="dark"] .auth-layout{border-color:#30405b;background:rgba(17,27,45,.94);box-shadow:0 26px 80px rgba(0,0,0,.28)}
html[data-mugr-theme="dark"] .auth-card h2,html[data-mugr-theme="dark"] .field-group label{color:#f1f4ff}
html[data-mugr-theme="dark"] .auth-card-subtitle,html[data-mugr-theme="dark"] .auth-back{color:#aab5ca}
html[data-mugr-theme="dark"] .input-wrap input{border-color:#34445e;background:#151f32;color:#f2f5ff}
html[data-mugr-theme="dark"] .input-wrap input:focus{border-color:#7188eb;background:#19253a}
html[data-mugr-theme="dark"] .password-toggle{color:#aab5ca}
html[data-mugr-theme="dark"] .register-box{background:#1b2740;color:#aab5ca}
html[data-mugr-theme="dark"] .auth-footer{border-color:#26344d;background:#111b2d;color:#9eabc1}
