/* DGRM sign-in pages — EzzVote design language (loaded after each page's own styles) */
:root{--ink:#06194A;--ink-2:#0D2F8C;--text:#0F1B2D;--muted:#4A5668;--line:#DDE3EC;--mist:#F2F5F9;--blue:#0D2F8C;--blue-d:#0A2470;--blue-bg:#EAF0FC;--gold:#C9972B;--gold-d:#A87B1C;--green:#137A3F;--green-bg:#E6F4EC;--red:#B4332B;--red-bg:#FBEDEC;--radius:4px;--font:"Schibsted Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
html body{font-family:var(--font);color:var(--text);-webkit-font-smoothing:antialiased}
body button,body input{font-family:inherit}
/* Ink brand panel with EzzVote dot grid + gold stripe */
.brand-panel{background:var(--ink)!important;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.07) 1px,transparent 0)!important;background-size:22px 22px!important;border-right:3px solid var(--gold)}
.brand-panel::before{background:rgba(255,255,255,.03)!important}
.brand-panel::after{background:rgba(201,151,43,.10)!important}
.brand-logo{border-radius:var(--radius)!important;box-shadow:0 1px 0 rgba(255,255,255,.1),0 18px 40px -20px rgba(0,0,0,.6)!important}
.brand-title{font-weight:800!important;letter-spacing:-.025em}
.brand-sub{color:#B9C6E2!important}
.brand-point{color:#D6DFEA!important}
.brand-point i{border-radius:var(--radius)!important;background:rgba(255,255,255,.08)!important;color:var(--gold)!important}
.form-panel{background:var(--mist)!important}
.login-card,.card{border-radius:var(--radius)!important;border:1px solid var(--line)!important;box-shadow:0 1px 0 var(--line),0 18px 40px -26px rgba(6,25,74,.35)!important;border-top:3px solid var(--gold)!important}
.login-title{color:var(--ink)!important;font-weight:700!important;letter-spacing:-.02em;font-size:1.45rem!important}
.login-sub,.sub,.hint,.footer-note{color:var(--muted)!important}
.login-sub strong{color:var(--ink)!important}
.verify-icon,.sent-icon,.icon-wrap{border-radius:var(--radius)!important;background:var(--ink)!important;color:var(--gold)!important}
.form-group label{color:var(--ink)!important;text-transform:none!important;letter-spacing:0!important;font-size:.875rem!important;font-weight:600!important}
.form-control,.otp-boxes input,.otp-digit{border:1px solid #CDD2DB!important;border-radius:var(--radius)!important;min-height:46px}
.form-control:focus,.otp-boxes input:focus,.otp-digit:focus{border-color:var(--blue)!important;box-shadow:0 0 0 3px var(--blue-bg)!important}
.btn-login,.btn,.btn-primary,button[type=submit]{border-radius:var(--radius)!important;background:var(--blue)!important;color:#fff!important;font-weight:600!important;min-height:48px;box-shadow:none!important;border:0}
.btn-login:hover,.btn:hover,button[type=submit]:hover{background:var(--blue-d)!important}
.step-dot{border-radius:2px!important;height:4px!important}
.step-dot.done{background:var(--gold)!important}
.msg-error,.msg-success{border-radius:var(--radius)!important;border:1px solid var(--line)!important;border-left:3px solid!important;color:var(--ink)!important}
.msg-error{background:var(--red-bg)!important;border-left-color:var(--red)!important}
.msg-success{background:var(--green-bg)!important;border-left-color:var(--green)!important}
a{color:var(--blue)}
.back-link,.staff-link,.resend-row a,.resend-row button{color:var(--blue)!important;font-weight:600}
.login-logo{border-radius:var(--radius)!important}
