/* Public pages use the full viewport; authenticated pages keep the desktop rail. */
.public-nav + .app-shell { margin-left: 0; }
.public-nav .brand { width: auto; max-width: none; margin: 0 auto 0 0; }
.public-nav nav { margin-left: auto; }
.password-field { position: relative; display: block; width: 100%; }
.password-field input { width: 100%; padding-right: 44px !important; }
.password-toggle { position: absolute; top: 50%; right: 7px; transform: translateY(-50%); display: grid; place-items: center; width: 32px; height: 32px; border: 0; border-radius: 6px; background: transparent; color: var(--muted); cursor: pointer; }
.password-toggle:hover, .password-toggle:focus-visible { background: var(--cream); color: var(--ink); outline: none; }
.password-toggle svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
