/* Shared optional-password controls across family and school accounts. */
.family-auth .auth-methods{border:0;padding:0;margin:0 0 8px;display:grid;grid-template-columns:1fr 1fr;gap:10px;min-width:0}.family-auth .auth-methods legend{font-weight:700;margin-bottom:10px}.family-auth .auth-methods label{display:flex;align-items:center;gap:9px;border:1px solid #bacbdb;border-radius:12px;padding:12px;font-size:15px;line-height:1.4;cursor:pointer;background:#fff;min-width:0}.family-auth .auth-methods label:has(input:checked){border-color:#2d60a2;box-shadow:inset 0 0 0 1px #2d60a2;background:#f1f6fc}.family-auth .auth-methods input{width:18px;height:18px;margin:0;flex:0 0 18px;accent-color:#2d60a2}.family-auth .password-field{display:flex;align-items:stretch;gap:8px;min-width:0;margin-top:6px}.family-auth .password-field input{min-width:0;flex:1;width:100%;margin:0}.password-toggle{flex:0 0 auto;min-width:64px;min-height:44px;padding:8px 12px;background:#fff;color:#173453;border:1px solid #bacbdb;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}.family-auth [hidden]{display:none!important}.family-auth input:focus-visible,.password-toggle:focus-visible,.optional-password-offer a:focus-visible,.optional-password-offer button:focus-visible{outline:3px solid #3074bc;outline-offset:3px}.optional-password-offer{max-width:920px;margin:24px auto;padding:24px;background:#edf6ef;border:1px solid #bbd4bf;border-radius:18px;color:#173453}.optional-password-offer h2{font-size:24px;margin:0 0 10px}.optional-password-offer p{line-height:1.6;margin-bottom:18px}.optional-password-offer .text-link{margin-left:16px;min-height:44px}.auth-settings{max-width:650px;margin:24px auto}.auth-settings .family-auth{max-width:none}.auth-settings input{font-size:16px}.auth-notice{line-height:1.6;overflow-wrap:anywhere}.auth-settings h2{font-size:24px}.auth-settings .text-link{display:inline-block;margin-top:12px}.auth-settings .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:12px;padding:12px 20px;background:#2d60a2;color:#fff;border:1px solid #b99448;font:inherit;font-weight:700;text-decoration:none;cursor:pointer}.auth-settings button:disabled{opacity:.65;cursor:wait}@media(max-width:480px){.family-auth .auth-methods{grid-template-columns:1fr}.optional-password-offer{padding:20px;margin:20px 0}.optional-password-offer .text-link{display:block;margin:12px 0 0}.auth-settings{padding:22px 18px}.password-toggle{min-width:58px;padding:8px}.auth-settings .family-auth{gap:16px}}

.family-auth .password-field input{padding:.72rem .9rem;border:1px solid #83948a;border-radius:.6rem;background:white;color:#173453;font:inherit;font-size:16px}.family-auth .password-toggle{color:#173453;background:#fff;border:1px solid #bacbdb}.auth-settings{margin:24px auto}.auth-settings .family-auth input[readonly]{background:#f4f5f2}.optional-password-offer .btn{display:inline-flex;align-items:center;min-height:44px;border:1px solid #b99448;background:#2d60a2;color:white;padding:10px 18px;border-radius:10px;font-weight:700;text-decoration:none}
