/* IDM Eswatini sign-in pages: clean white layout, no background colours or images. */
:root{--brand:#00843D;--brand-d:#006B31;--ink:#14231B;--muted:#5F6F66;--line:#DCE3DF;--bad:#B3261E;--ok:#1E7A45;--gold:#C98A12}
*{box-sizing:border-box}
html,body{background:#fff!important}
body{margin:0!important;min-height:100vh;display:flex!important;flex-direction:column;align-items:center;justify-content:center;padding:32px 18px!important;
 font-family:"Figtree","Segoe UI",system-ui,sans-serif;color:var(--ink);grid-template-columns:none!important}
aside.side,.roles,.steps,.new{display:none!important}
main{display:block!important;width:100%;max-width:400px;padding:0!important;background:none!important;border:0!important;box-shadow:none!important}
body>form,main>form,body>.card,.login-card{width:100%;max-width:400px!important;background:#fff!important;color:var(--ink)!important;border:0!important;border-radius:0!important;box-shadow:none!important;
 padding:0!important;display:grid!important;gap:16px!important;text-align:left;margin:0 auto}
.lg,.login-logo{display:block!important;width:132px!important;height:84px!important;margin:0 0 6px!important;background:url("../images/logo-ink.png") left center/contain no-repeat!important}
h1,h2{font-family:"Poppins","Segoe UI",system-ui,sans-serif!important;font-weight:600!important;font-size:1.6rem!important;letter-spacing:-.01em;margin:0!important;text-align:left!important;color:var(--ink)}
p,.sub{margin:0;color:var(--muted);text-align:left!important;font-size:.95rem;line-height:1.5}
.note{background:none!important;border:0!important;border-left:3px solid var(--gold)!important;padding:2px 0 2px 12px!important;color:var(--muted);font-size:.9rem}
label{display:block;font-weight:600;font-size:.86rem;margin:0 0 6px;color:var(--ink);text-align:left}
input:not([type=checkbox]):not([type=hidden]){width:100%;height:48px;padding:0 14px;border:1px solid var(--line)!important;border-radius:10px!important;font:inherit;font-size:1rem;background:#fff!important;color:var(--ink)!important;
 transition:border-color .15s,box-shadow .15s;text-align:left!important}
input:focus{outline:none;border-color:var(--brand)!important;box-shadow:0 0 0 3px rgba(0,132,61,.15)!important}
input[aria-invalid="true"]{border-color:var(--bad)!important}
.pw{position:relative}.pw input{padding-right:52px!important}
.pw button,.au-eye{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:40px;height:36px;border:0!important;background:none!important;color:var(--muted)!important;cursor:pointer;border-radius:8px;display:grid;place-items:center;padding:0!important;font-size:0!important}
.pw button:hover,.au-eye:hover{color:var(--ink)!important;background:#F2F5F3!important}
.pw button::before,.au-eye::before{content:"";width:20px;height:20px;background:currentColor;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2"><path d="M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z"/><circle cx="12" cy="12" r="3"/></svg>') center/contain no-repeat;mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2"><path d="M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z"/><circle cx="12" cy="12" r="3"/></svg>') center/contain no-repeat}
.pw button.on::before,.au-eye.on::before{-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2"><path d="M3 3l18 18M10.6 5.1A10.6 10.6 0 0 1 12 5c6.4 0 10 7 10 7a17 17 0 0 1-3.2 4M6.6 6.6A17 17 0 0 0 2 12s3.6 7 10 7a9.7 9.7 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="black" stroke-width="2"><path d="M3 3l18 18M10.6 5.1A10.6 10.6 0 0 1 12 5c6.4 0 10 7 10 7a17 17 0 0 1-3.2 4M6.6 6.6A17 17 0 0 0 2 12s3.6 7 10 7a9.7 9.7 0 0 0 5.4-1.6M9.9 9.9a3 3 0 0 0 4.2 4.2"/></svg>')}
.hint,small.hint{display:block;margin-top:6px;font-size:.8rem;color:var(--muted)}
.au-caps{display:none;margin-top:6px;font-size:.8rem;font-weight:600;color:var(--gold)}.au-caps.on{display:block}
.au-row{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:.86rem;color:var(--muted)}
.au-row label{display:flex;align-items:center;gap:8px;margin:0;font-weight:500;color:var(--muted);cursor:pointer}
.au-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand)}
button.btn,form>button,.btn{width:100%;height:48px;border:0!important;border-radius:10px!important;background:var(--brand)!important;color:#fff!important;font:600 1rem "Poppins","Segoe UI",sans-serif!important;cursor:pointer;
 display:flex!important;align-items:center;justify-content:center;gap:10px;text-decoration:none;transition:background .15s}
button.btn:hover,form>button:hover,.btn:hover{background:var(--brand-d)!important;filter:none!important}
button.btn[disabled],form>button[disabled]{opacity:.75;cursor:progress}
button.btn.busy::before,form>button.busy::before{content:"";width:16px;height:16px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:auSpin .7s linear infinite}
@keyframes auSpin{to{transform:rotate(360deg)}}
.msg,.good,.ok{margin:0!important;padding:12px 14px!important;border-radius:10px!important;font-size:.9rem!important;text-align:left!important;background:none!important;border:1px solid!important;line-height:1.45}
.msg{color:var(--bad)!important;border-color:rgba(179,38,30,.35)!important}
.good,.ok{color:var(--ok)!important;border-color:rgba(30,122,69,.35)!important}
.foot{display:flex!important;justify-content:space-between!important;flex-wrap:wrap;gap:8px 16px!important;font-size:.86rem;color:var(--muted);text-align:left!important}
a{color:var(--brand);font-weight:600;text-decoration:none}a:hover{text-decoration:underline}
.au-legal{margin-top:36px;font-size:.78rem;color:#8A968F;text-align:center}
.au-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;margin-bottom:4px}
.au-tabs a{display:block;text-align:center;padding:8px 6px;border-radius:7px;font-size:.84rem;color:var(--muted);font-weight:600}
.au-tabs a.on{background:#F2F7F4;color:var(--brand)}
.au-tabs a:hover{text-decoration:none;color:var(--ink)}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
.pwm,.pw-meter{margin-top:6px}
@media (max-width:420px){h1,h2{font-size:1.4rem!important}}
/* Centred, minimal sign-in */
html,body{background:#fff!important;background-image:none!important}
body{justify-content:center!important}
body>form,main>form,body>.card,.login-card{max-width:380px!important;gap:18px!important}
.lg,.login-logo{width:150px!important;height:96px!important;margin:0 auto 10px!important;background-position:center!important}
/* IDM logo with the flag of the Kingdom of Eswatini beside it (small static image, 30 KB). */
.lg,.login-logo{width:224px!important;background:url("../images/logo-ink.png") left center/auto 96px no-repeat,url("../images/eswatini-flag-sm.png") right center/54px 36px no-repeat!important}
@media (max-width:360px){.lg,.login-logo{width:190px!important;background-size:auto 80px,45px 30px!important}}
h1,h2{text-align:center!important;font-size:1.5rem!important}
.sub{text-align:center!important;margin-top:-10px!important;font-size:.9rem}
.foot{justify-content:center!important;text-align:center!important;font-size:.84rem}
.au-links{gap:6px 22px!important;margin-top:-6px}
.au-row{justify-content:flex-start}
.msg,.good,.ok{text-align:center!important}
