.fs-account { max-width: 42rem; overflow-wrap: anywhere; }
.fs-account form { margin: 1.5rem 0; display: grid; gap: 1rem; }
.fs-account label { display: grid; gap: .35rem; font-weight: 600; }
.fs-account input { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 44px; padding: .55rem; font: inherit; }
.fs-account button, .fs-account nav a { min-height: 44px; padding: .6rem .9rem; }
.fs-account button { justify-self: start; font: inherit; cursor: pointer; }
.fs-account :focus-visible { outline: 3px solid #176b9c; outline-offset: 3px; }
.fs-account nav { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; }
.fs-account nav a { display: inline-flex; align-items: center; box-sizing: border-box; }
.fs-account .fs-account-trap { display: none; }
.fs-account [hidden] { display: none !important; }
.fs-account [role=status] { white-space: normal; }
.fs-account img { max-width: 100%; }
@media(max-width:480px) { .fs-account { width: 100%; } .fs-account button { max-width: 100%; } }

.fs-account .fs-account-error { color: #a01818; background: #fff4f4; border-left: 4px solid #a01818; padding: .75rem 1rem; margin: 0; font-weight: 600; white-space: normal; }
.fs-account input[aria-invalid="true"] { border: 2px solid #a01818; }
.fs-account .fs-account-error:focus { outline: 3px solid #176b9c; outline-offset: 3px; }
.fs-account .fs-new-password { display: grid; gap: .5rem; }
.fs-account .fs-new-password > p { margin: 0 0 .5rem; font-weight: 400; }

.fs-account .fs-username-field .fs-help { margin:0 0 .35rem; }
.fs-account .fs-username-field .fs-help > label { display:inline; }
.fs-account .fs-username-field .fs-help-toggle { vertical-align:middle; }
.fs-account .fs-recovery-toggle { min-height:44px; padding:.25rem 0; border:0; background:transparent; color:var(--fs-control-color, inherit); text-decoration:underline; font:inherit; cursor:pointer; }
.fs-account + .fs-account { margin-top:2.5rem; }
.fs-account .fs-application-intro:empty { display:none; }

.fs-account .fs-password-heading { font-weight:800; color:var(--fs-setup-accent, #155e75); background:#fff; border-left:6px solid currentColor; padding:.75rem; font-size:1.65rem; }
.fs-account .fs-sign-in-button { display:inline-block; background:#155e75; color:white; font-weight:bold; padding:.75rem 1.25rem; border-radius:4px; }
.fs-account-welcome { border:2px solid currentColor; padding:1rem; margin-block:1rem; }

.fs-profile-overview { display:grid;grid-template-columns:100px minmax(0,1fr);gap:1.5rem;align-items:start; }
.fs-profile-image { width:100px;height:100px;background:#f0f2f4;border:1px solid #c3c4c7;display:flex;align-items:center;justify-content:center;color:#50575e;font-size:.85rem;text-align:center;box-sizing:border-box; }
.fs-profile-image img { width:100%;height:100%;object-fit:contain; }
.fs-profile-overview dl { margin:0;display:grid;grid-template-columns: minmax(7rem,auto) minmax(0,1fr);gap:.5rem 1rem; }
.fs-profile-overview dt { font-weight:600; }
.fs-profile-overview dd { margin:0; }
.fs-account hr { margin:1.5rem 0; }
.fs-profile-disclosure { border-bottom:1px solid #c3c4c7;padding:1rem 0; }
.fs-profile-disclosure > summary { cursor:pointer;font-weight:700;font-size:1.2rem;min-height:44px;align-content:center; }
.fs-account .fs-delete-check { display:flex;align-items:start;gap:.65rem; }
.fs-account .fs-delete-check input { width:1.25rem;min-height:1.25rem;flex:none;margin:.15rem 0; }
.fs-account [data-account-upload-status]:empty, .fs-account [data-account-status]:empty { display:none; }
@media(max-width:480px) { .fs-profile-overview { grid-template-columns:1fr;gap:1rem; } .fs-profile-overview dl { grid-template-columns:1fr;gap:.2rem; } .fs-profile-overview dd { margin-bottom:.65rem; } }
.fs-deletion-complete { margin:1rem auto;padding:1rem;border:2px solid #155e75;background:#fff;color:#17212b; }
