/* Password form readability + visibility toggle */
.password-wrap{position:relative;display:block;width:100%}
.password-wrap input{width:100%!important;padding-right:48px!important}
.password-toggle-btn{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:36px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d1d5db;background:#fff;color:#475569;border-radius:0;cursor:pointer;padding:0;line-height:1}
.password-toggle-btn:hover{background:#f8fafc;color:#111827}
.password-toggle-btn:focus-visible{outline:3px solid #a855f7;outline-offset:2px}
.password-toggle-btn svg{width:18px;height:18px;display:block}
.password-toggle-btn.is-visible{background:#eef2ff;border-color:#a5b4fc;color:#4338ca}

html[data-theme="dark"] .field label{color:#aeb9c9!important}
html[data-theme="dark"] .field input{background:#121826!important;border-color:#334155!important;color:#eef2f7!important}
html[data-theme="dark"] .field input::placeholder{color:#8fa0b4!important;opacity:1!important}
html[data-theme="dark"] .field input:focus{border-color:#a855f7!important;box-shadow:0 0 0 4px rgba(168,85,247,.18)!important}
html[data-theme="dark"] .password-toggle-btn{background:#0f172a!important;border-color:#475569!important;color:#dbe5f2!important}
html[data-theme="dark"] .password-toggle-btn:hover{background:#1e293b!important;color:#fff!important}
html[data-theme="dark"] .password-toggle-btn.is-visible{background:#312e81!important;border-color:#a78bfa!important;color:#fff!important}
html[data-theme="dark"] .password-panel{background:#111827!important;border-color:#334155!important;color:#dbe5f2!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)!important}
html[data-theme="dark"] .strength-head strong{color:#eef2f7!important}
html[data-theme="dark"] .strength-label{color:#fca5a5!important}
html[data-theme="dark"] .strength-label.ok{color:#86efac!important}
html[data-theme="dark"] .strength-label.medium{color:#facc15!important}
html[data-theme="dark"] .strength-bar{background:#334155!important}
html[data-theme="dark"] .password-panel .req{color:#cbd5e1!important}
html[data-theme="dark"] .password-panel .req:before{background:#334155!important;color:#cbd5e1!important}
html[data-theme="dark"] .password-panel .req.ok{color:#bbf7d0!important;background:rgba(34,197,94,.10)!important}
html[data-theme="dark"] .password-panel .req.ok:before{background:#166534!important;color:#dcfce7!important}
html[data-theme="dark"] .match-hint{color:#aeb9c9!important}
html[data-theme="dark"] .match-hint.ok{color:#86efac!important}
html[data-theme="dark"] .match-hint.bad{color:#fca5a5!important}
html[data-theme="dark"] .consent-label,html[data-theme="dark"] .consent-copy,html[data-theme="dark"] .row{color:#cbd5e1!important}
html[data-theme="dark"] .consent-copy a,html[data-theme="dark"] .row a{color:#a78bfa!important}
html[data-theme="dark"] .card p{color:#cbd5e1!important}
html[data-theme="dark"] .security{background:#052e2b!important;border-color:#0f766e!important;color:#a7f3d0!important}
html[data-theme="dark"] .note,html[data-theme="dark"] .notice{background:#0f1f3a!important;border-color:#1d4ed8!important;color:#bfdbfe!important}

.auth-topbar ~ .shell .card input:is(:-webkit-autofill,:autofill),
.auth-topbar ~ .shell .card input:is(:-webkit-autofill,:autofill):hover,
.auth-topbar ~ .shell .card input:is(:-webkit-autofill,:autofill):focus{
  box-shadow:0 0 0 1000px #101827 inset!important;
  -webkit-text-fill-color:#f8fafc!important;
  caret-color:#f8fafc!important;
  transition:background-color 999999s ease-in-out 0s!important;
}
@media(prefers-color-scheme:dark){
  html:not([data-theme="light"]) .auth-topbar ~ .shell .card input,
  html:not([data-theme="light"]) .auth-topbar ~ .shell .card .password-wrap input{
    background:#101827!important;
    border-color:#3a465d!important;
    color:#f8fafc!important;
    -webkit-text-fill-color:#f8fafc!important;
    caret-color:#f8fafc!important;
  }
  html:not([data-theme="light"]) .auth-topbar ~ .shell .card input::placeholder{color:#8ea0b8!important;opacity:1!important}
}
