/* Account and consent screens share the existing OGM colours and typography. */
.login-card{min-width:0}
.login-card h2{overflow-wrap:anywhere}
.login-card input{max-width:100%;min-width:0}
.login-card .error,.login-card .success{overflow-wrap:anywhere}
.admin-user{overflow-wrap:anywhere}
.privacy-consent{max-height:calc(100dvh - 36px);overflow-y:auto}
.privacy-options{display:grid;gap:10px;margin:14px 0}
.privacy-options label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.5}
.privacy-options input{width:18px;height:18px;margin:2px 0 0;flex:0 0 auto;accent-color:var(--wine)}
.privacy-actions{flex-basis:auto}
.privacy-actions .btn{white-space:normal;text-align:center}
@media(max-width:850px){.privacy-actions{flex-basis:auto;width:100%}.privacy-actions .btn{flex:1 1 155px}}
@media(max-width:760px){
 .login-page .login-visual{min-height:0;padding:24px;gap:12px}
 .login-page .login-visual>div,.login-page .login-visual>small{display:none}
 .login-panel{padding:20px 16px;align-items:start}
 .login-card{padding:24px 22px;border-radius:20px}
 .login-card h2{font-size:clamp(26px,8vw,36px);line-height:1.08}
 .admin-top{flex-wrap:wrap;gap:14px}
 .admin-top h1{font-size:clamp(28px,8vw,42px);line-height:1.04}
 .admin-user{text-align:left}
 .privacy-consent{left:10px;right:10px;bottom:10px;max-height:calc(100dvh - 20px);padding:18px;gap:18px}
}
