/* Official Microsoft symbol; see Microsoft's sign-in branding guidelines. */
.account-content .microsoft-button { display:flex; align-items:center; justify-content:center; gap:.75rem; min-height:44px; border:1px solid #8c8c8c; border-radius:4px; background:#fff; color:#333!important; font-weight:600; }
.account-content .microsoft-button:hover { background:#f2f2f2; }
.microsoft-button img { flex:none; width:21px; height:21px; }
.signin-panel { max-width:440px; margin:0 auto; }
.account-content:has(.signin-panel) { padding-top:2rem; padding-bottom:2rem; }
.account-content .signin-panel h1 { margin:0 0 1.25rem; font-size:2.4rem; }
.signin-panel form { max-width:none; gap:.75rem; }
.signin-panel form p { margin:0; }
.signin-panel label { margin-bottom:.25rem; }
.signin-panel label:has(input[type=checkbox]) { display:flex; align-items:center; gap:.4rem; font-weight:400; }
.signin-panel input[type=checkbox] { width:1rem; height:1rem; }
.signin-panel .helptext { display:block; margin-top:.25rem; font-size:.9rem; }
.signin-panel .signin-caption { margin:.45rem 0 0; font-size:.9rem; color:#555; }
.signin-divider { display:flex; align-items:center; gap:.75rem; margin:1.1rem 0; color:#555; font-size:.9rem; }
.signin-divider::before,.signin-divider::after { content:""; flex:1; border-top:1px solid var(--line); }
.signin-links { display:grid; gap:.4rem; margin-top:1rem; font-size:.95rem; }
.signin-help { margin-top:1rem; padding-top:.75rem; border-top:1px solid var(--line); font-size:.9rem; }
.signin-help summary { cursor:pointer; }
.signin-help p { margin:.65rem 0; }
.signin-panel button:focus-visible,.signin-panel summary:focus-visible { outline:3px solid #255b98; outline-offset:3px; }
.signin-panel .errorlist { color:#a11d18; padding-left:1.25rem; margin:.25rem 0; }
@media(max-width:480px) { .signin-panel { max-width:100%; } .account-content:has(.signin-panel) { padding-top:1.25rem; } }
.registration-panel { max-width:520px; }
.account-content .registration-panel h1,.learner-setup h1 { font-size:clamp(1.9rem,5vw,2.4rem); line-height:1.15; }
.form-intro { margin:0 0 1.1rem; }
.signin-panel .form-caption { font-size:.88rem; color:#555; line-height:1.5; }
.field-guidance { margin-top:.3rem; font-size:.88rem; }
.field-guidance summary { cursor:pointer; }
.field-guidance ul { margin:.4rem 0; padding-left:1.25rem; }
.microsoft-confirmation { display:flex; align-items:center; gap:.65rem; font-size:.95rem; }
.signin-panel .signin-links { display:block; }
.learner-setup { max-width:600px; margin:1.5rem auto 0; }
.learner-setup h1 { margin:0 0 1rem; }
.learner-setup .learner-setup-form { gap:1rem; margin:0; max-width:none; }
.learner-identity { display:grid; grid-template-columns:1fr 1fr; gap:.8rem 1rem; }
.learner-identity .family-field { min-width:0; }
.learner-full-width { grid-column:1 / -1; }
.learner-optional summary { cursor:pointer; padding:.25rem 0; }
.learner-optional .family-field { margin-top:.7rem; }
.learner-setup .family-actions .button { border:0; cursor:pointer; font:700 1rem 'DM Sans',sans-serif; }
.learner-setup summary:focus-visible { outline:3px solid #255b98; outline-offset:3px; }
@media(max-width:480px) { .learner-identity { grid-template-columns:1fr; } .learner-setup { margin-top:1rem; } }

.my-account-panel { max-width:520px; }
.account-name-fields { display:grid; grid-template-columns:1fr 1fr; gap:.8rem 1rem; }
.account-name-fields .signin-field { min-width:0; }
.account-bio summary { cursor:pointer; padding:.25rem 0; }
.account-bio .signin-field { margin-top:.6rem; }
.account-compact-section { margin-top:1.25rem; padding-top:1rem; border-top:1px solid var(--line); }
.account-compact-section h2 { font-family:'DM Sans',sans-serif; font-size:1.1rem; margin:0 0 .5rem; }
.account-email { margin:0 0 .6rem; overflow-wrap:anywhere; }
.account-action-links { display:flex; flex-wrap:wrap; gap:.4rem 1.25rem; font-size:.95rem; }
.account-microsoft-link { margin-top:.9rem; }
.account-compact-section .signin-help { border-top:0; padding-top:0; margin-top:.6rem; }
@media(max-width:480px) { .account-name-fields { grid-template-columns:1fr; } }

.learner-registration-option { padding:1rem; margin-bottom:1.25rem; border:1px solid var(--line); border-radius:6px; background:#fff; }
.learner-registration-option h2,.learner-setup .learner-link-heading { font-family:'DM Sans',sans-serif; font-size:1.15rem; margin:0 0 .6rem; }
.learner-registration-option p { margin:.5rem 0 .8rem; }
.learner-registration-option .microsoft-button { display:flex; align-items:center; justify-content:center; gap:.65rem; color:#333!important; background:#fff; border:1px solid #8c8c8c; font-weight:600; }
.learner-registration-option .form-caption { font-size:.88rem; margin:.8rem 0 0; color:#555; }
