:root{color:var(--web-ink);background:var(--web-bg)}
body.web-auth{background:var(--web-bg);color:var(--web-ink)}
.auth-screen{background:radial-gradient(ellipse at top,color-mix(in srgb,var(--web-accent) 14%,var(--web-bg)) 0,var(--web-bg) 72%)}
.auth-card{background:color-mix(in srgb,var(--web-surface) 95%,transparent);border-color:var(--web-border);box-shadow:var(--web-shadow);color:var(--web-ink);backdrop-filter:blur(18px)}
.auth-brand strong span,.auth-options a,.auth-back,.auth-secondary{color:var(--web-accent)}
.auth-brand small,.auth-intro,.auth-remember{color:var(--web-muted)!important}
.auth-card label{color:var(--web-ink)}
.auth-card input{background:var(--web-surface-2);border-color:var(--web-border);color:var(--web-ink)}
.auth-card input:focus{border-color:var(--web-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--web-accent) 18%,transparent)}
.auth-submit{background:var(--web-accent);color:var(--web-on-accent)}
.auth-submit:hover{filter:brightness(.94);background:var(--web-accent)}
.auth-secondary{background:var(--web-soft);border-color:var(--web-border)}
.auth-divider{color:var(--web-muted)}
.auth-divider:before,.auth-divider:after{border-color:var(--web-border)}
.auth-message{background:var(--web-accent);border-color:var(--web-border);color:var(--web-on-accent)}
:is(a,button):focus-visible{outline-color:color-mix(in srgb,var(--web-accent) 55%,transparent)}
