.password-requirements{margin-block:.65rem 1rem;padding:.85rem 1rem;border:1px solid var(--border,#b4cbe1);border-radius:12px;background:var(--surface-solid,#f4f8fc);color:var(--text-soft,#496580);font-size:.85rem;line-height:1.5}
.password-requirements[hidden]{display:none}
.password-requirements__title{margin:0 0 .4rem;font-weight:600;color:var(--text,#052849)}
.password-requirements ul{list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .75rem;margin:0;padding:0;color:inherit}
.password-requirements li{display:flex;align-items:flex-start;gap:.45rem;min-width:0}
.password-requirements li::before{content:none}
.password-requirements [data-password-rule-icon]{flex:none;width:1em;text-align:center;font-weight:700}
.password-requirements li.is-valid,.password-requirements__status.is-valid,.password-confirmation.is-valid{color:var(--success,#147355)}
.password-requirements__status{margin:.5rem 0 0;font-weight:600}
.password-requirements__status:empty{display:none}
.password-confirmation{font-size:.85rem;margin:.5rem 0 0}
.password-confirmation.is-invalid{color:var(--danger,#b5253b)}
.password-confirmation[hidden]{display:none}
@media(max-width:420px){.password-requirements ul{grid-template-columns:1fr}}
