.account-onboarding { max-width: 36rem; margin: 2rem auto; padding: clamp(1rem, 4vw, 2rem); background: var(--edfy-surface, #fff); border-radius: 16px; }
.account-onboarding[hidden] { display: none; }
.account-onboarding-active .v2-auth-layout, .account-onboarding-active #account-dashboard { display: none !important; }
.account-onboarding h1 { font-size: clamp(1.6rem, 4vw, 2rem); line-height: 1.2; margin: 0 0 1rem; }
.account-onboarding .btn, .account-profile-dialog .btn, #account-verification-wait .btn, #account-register-form .btn { width: fit-content; max-width: 100%; justify-self: start; align-self: start; }
.account-onboarding .btn, .account-profile-dialog .btn { display: inline-flex; align-items: center; gap: .5rem; }
.account-onboarding .btn img, .account-profile-dialog .btn img { width: 20px; height: 20px; flex: 0 0 20px; }
.account-profile-dialog { box-sizing: border-box; width: min(64rem, calc(100vw - 2rem)); max-width: calc(100vw - 2rem); max-height: calc(100dvh - 2rem); padding: clamp(1rem, 4vw, 2rem); border: 0; border-radius: 16px; color: inherit; background: #fff; }
.account-profile-dialog::backdrop { background: rgba(43, 31, 34, .36); }
.account-profile-dialog[open] { display: flex; flex-direction: column; overflow: hidden; }
.account-profile-dialog h2 { margin: 0 0 1.25rem; }
.account-profile-dialog > h2, .account-profile-dialog > .account-profile-status, .account-profile-actions { flex: 0 0 auto; }
.account-profile-form { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; min-height: 0; overflow: auto; padding: .25rem; }
.account-profile-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1rem; }
.account-profile-form > *, .account-profile-form input, .account-profile-form select { min-width: 0; max-width: 100%; }
.account-profile-form h3 { margin: 1rem 0 0; }
.account-profile-form p { margin: 0; }
.account-profile-form > .form-field:has(#profile-display-name) { width: min(100%, 34rem); }
.account-school-search-row { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1rem; align-items: end; }
.account-school-search-row > .form-field { min-width: 0; }
.account-school-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-block: 1rem; }
.account-school-fields .form-field, .account-school-fields input, .account-school-fields select { min-width: 0; max-width: 100%; }
.account-school-fields > .form-field:first-child:has(#profile-school-name) { grid-column: 1 / -1; }
.account-school-results { display: flex; flex-direction: column; align-items: flex-start; gap: .75rem; }
.account-school-results .btn { white-space: normal; text-align: left; }
.account-school-results a { font-size: .875rem; overflow-wrap: anywhere; }
.account-profile-status { min-height: 1.5em; margin-block: 1rem; overflow-wrap: anywhere; }
.account-school-details summary, .account-school-sources summary, #account-verification-correction summary { cursor: pointer; width: fit-content; max-width: 100%; white-space: normal; overflow-wrap: anywhere; padding-block: .5rem; }
.work-profile-card .work-profile-top { align-items: flex-start; }
.work-profile-card .work-profile-identity { flex: 1 1 18rem; }
.work-profile-card .work-profile-identity h2 { line-height: 1.3; margin-bottom: .25rem; }
.work-profile-card .work-profile-school { margin-top: 1.5rem; }
.work-profile-card .work-profile-school h3 { margin: 0; font: 600 1.125rem/1.45 var(--font-body); overflow-wrap: anywhere; text-transform: none; }
.work-profile-card .work-profile-school-number { margin: .25rem 0 0; font-size: .875rem; color: var(--color-base-700); text-transform: none; }
.work-profile-contact { display: flex; flex-wrap: wrap; align-items: flex-start; gap: .25rem 1.5rem; margin: .75rem 0 0; }
.work-profile-card .work-profile-contact-item { display: inline-flex; align-items: center; gap: .625rem; min-height: 44px; max-width: 100%; min-width: 0; color: var(--color-base-700); font-size: 1rem; line-height: 1.45; }
.work-profile-contact-item > span { min-width: 0; overflow-wrap: anywhere; text-transform: none; }
.work-profile-contact img { width: 20px; height: 20px; flex: 0 0 20px; }
.work-profile-card .work-profile-contact a { text-decoration-thickness: 1px; }
.work-profile-card .work-profile-contact a:hover { color: var(--color-text-strong); text-decoration-thickness: 2px; }
.work-profile-card .work-profile-school-empty { margin: 1.25rem 0 0; color: var(--color-base-700); }
.work-profile-card .work-profile-facts { grid-template-columns: minmax(0, 1fr) minmax(0, .75fr) minmax(0, 1.5fr); gap: 1rem 1.5rem; margin-top: 1.25rem; padding-top: 1rem; }
.work-profile-card .work-profile-facts > div { min-width: 0; }
.work-profile-card .work-profile-facts dd { font-weight: 500; line-height: 1.45; }
.work-profile-account.btn { display: inline-flex; align-items: center; gap: .5rem; width: fit-content; max-width: 100%; flex: 0 0 auto; justify-self: start; align-self: start; }
.work-profile-account.btn img { width: 20px; height: 20px; flex: 0 0 20px; }
.work-profile-card .work-profile-initials.work-profile-placeholder { border-radius: 50%; }
.work-profile-silhouette { display: block; width: 80%; height: 80%; background: var(--color-base-600); background: color-mix(in srgb, var(--color-base-600) 94%, var(--color-surface)); -webkit-mask: url('/public/assets/profile/pfp-silhouette.png') center / contain no-repeat; mask: url('/public/assets/profile/pfp-silhouette.png') center / contain no-repeat; }
.work-profile-access { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 1.25rem; padding-top: 1rem; }
.work-profile-access > div { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .75rem; min-width: 0; }
.work-profile-access-label { font: 600 1rem/1.45 var(--font-body); text-transform: none; overflow-wrap: anywhere; }
.work-profile-card .work-profile-plus-badge { display: block; width: 150px; height: 36px; max-width: 100%; object-fit: contain; }
.work-profile-access-detail { font-size: .875rem; color: var(--color-base-700); text-transform: none; overflow-wrap: anywhere; }
.work-profile-access a, .work-profile-credit-retry { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; font-size: .875rem; }
.work-profile-credit-retry { padding: 0; border: 0; background: transparent; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
@media (max-width: 900px) { .work-profile-card .work-profile-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } .work-profile-card .work-profile-facts > div:last-child { grid-column: 1 / -1; } }
@media (max-width: 520px) { .work-profile-card .work-profile-identity { flex-basis: 100%; gap: .75rem; } .work-profile-card .work-profile-initials { width: 48px; height: 48px; border-radius: 12px; font-size: 20px; } .work-profile-card .work-profile-identity h2 { font-size: 20px; } .work-profile-card .work-profile-school { margin-top: 1.25rem; } .work-profile-card .work-profile-facts { grid-template-columns: minmax(0, 1fr); gap: .75rem; } .work-profile-card .work-profile-facts > div:last-child { grid-column: auto; } .work-profile-contact { flex-direction: column; gap: .25rem; } }
@media (max-width: 480px) { .account-school-fields { grid-template-columns: minmax(0, 1fr); } .account-onboarding { margin: 1rem 0; } }
@media (min-width: 760px) { .account-school-search-row { grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); } }
