.aw-profile-saving {
    position: fixed; z-index: 10100; inset: 0; display: grid; place-items: center;
    box-sizing: border-box; padding: 24px; background: #062f4680;
}
.aw-profile-saving__card {
    box-sizing: border-box; width: min(480px, 100%); padding: 30px 24px;
    border: 1px solid #c2deec; border-radius: 16px; background: #fff; color: #073b5a;
    box-shadow: 0 24px 80px #062f4640; text-align: center;
}
.aw-profile-saving__card p { margin: 18px 0 0; font-size: 18px; line-height: 1.6; }
.aw-profile-saving__spinner {
    display: inline-block; box-sizing: border-box; width: 38px; height: 38px;
    border: 4px solid #dcecf5; border-top-color: #087fdb; border-radius: 50%;
    animation: aw-profile-saving-spin .8s linear infinite;
}
@keyframes aw-profile-saving-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .aw-profile-saving__spinner { animation: none; } }
body:has(.admissionWorkspace) dialog.aw-profile-saved {
    position: fixed; inset: 0; margin: auto; height: fit-content; box-sizing: border-box; width: min(520px, calc(100vw - 28px)); max-height: calc(100dvh - 28px);
    padding: 32px 24px 24px; border: 1px solid #c2deec; border-radius: 16px; background: #fff; color: #073b5a;
    box-shadow: 0 24px 80px #062f4640; text-align: center; overflow: auto;
}
.admissionWorkspace .aw-profile-saved::backdrop { background: #062f4680; }
.admissionWorkspace .aw-profile-saved form { margin: 0; }
.admissionWorkspace .aw-profile-saved__close { position: absolute; top: 6px; right: 6px; display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 0; border-radius: 8px; background: transparent; color: #073b5a; cursor: pointer; }
.admissionWorkspace .aw-profile-saved .aw-profile-saved__icon { margin: 8px 0 12px; color: #188868; font-size: 58px; }
.admissionWorkspace .aw-profile-saved h2 { margin: 0 0 12px; font-size: 25px; }
.admissionWorkspace .aw-profile-saved h2:focus { outline: none; }
.admissionWorkspace .aw-profile-saved p { margin: 0 0 22px; line-height: 1.6; }
.admissionWorkspace .aw-profile-saved__actions { display: grid; gap: 10px; }
.admissionWorkspace .aw-profile-saved .aw-button { box-sizing: border-box; width: 100%; min-width: 0; height: auto; min-height: 46px; padding: 12px 14px; justify-content: center; white-space: normal; line-height: 1.4; }
.admissionWorkspace .aw-profile-saved .aw-button .material-icons { flex: none; font-size: 20px; }
.admissionWorkspace .aw-profile-required { margin: 20px 0; padding: 24px; border: 1px solid #bfddec; border-radius: 12px; background: #f2faff; color: #073b5a; }
.admissionWorkspace .aw-profile-required > .material-icons { color: #087fdb; font-size: 36px; }
.admissionWorkspace .aw-profile-required h2 { margin: 12px 0; }
.admissionWorkspace .aw-profile-required p { max-width: 760px; line-height: 1.6; }
.admissionWorkspace .aw-profile-required .aw-button { margin: 6px 8px 0 0; }
@media (max-width: 600px) { .admissionWorkspace .aw-profile-required { padding: 18px; } .admissionWorkspace .aw-profile-saved .aw-button { width: 100%; } }

.admissionWorkspace #awProfile .aw-choice-grid--education .aw-answer-card > span { height: 100%; }
.admissionWorkspace #awProfile .aw-profile-second-higher {
    margin-top: 16px; padding: 16px; border: 1px solid #c8dfed;
    border-radius: 8px; background: #f3f9fd; color: #17445d;
}
.admissionWorkspace #awProfile .aw-profile-second-higher h4 { margin: 0 0 7px; font-size: 16px; font-weight: 650; line-height: 1.4; }
.admissionWorkspace #awProfile .aw-profile-second-higher p { margin: 0; font-size: 14px; line-height: 1.5; }
.admissionWorkspace #awProfile .aw-profile-second-higher__actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 10px; }
.admissionWorkspace #awProfile .aw-profile-second-higher__actions .aw-button { min-width: 0; min-height: 44px; height: auto; padding: 10px 14px; white-space: normal; line-height: 1.4; }
.admissionWorkspace #awProfile .aw-profile-second-higher small { display: block; color: #607987; font-size: 12px; line-height: 1.5; }

/* Keep missing-answer guidance beside readable, actionable navigation. */
.admissionWorkspace #awProfile .aw-profile-actions .aw-profile-next-hint {
    order: 3; flex: 1 1 220px; max-width: 460px; margin: 0; padding: 9px 12px;
    border: 1px solid #c9e1f2; border-radius: 7px; background: #eff7fd;
    color: #244f67; font-size: 13px; font-weight: 650; line-height: 1.45;
}
.admissionWorkspace #awProfile .aw-profile-actions > [data-aw-profile-position] { order: 4; }
.admissionWorkspace #awProfile .aw-profile-actions [data-aw-profile-next].is-awaiting-answer {
    /* Shared primary buttons force white text, including on pale inactive states. */
    border-color: #90bdd9; background: #e4f1f9; color: #174f72 !important; box-shadow: none; opacity: 1; cursor: pointer;
}
.admissionWorkspace #awProfile .aw-profile-actions [data-aw-profile-next].is-awaiting-answer:hover {
    border-color: #087fdb; background: #d8ecf9; color: #063d61 !important;
}
.admissionWorkspace #awProfile .aw-profile-actions [data-aw-profile-next]:focus-visible {
    outline: 3px solid #087fdb; outline-offset: 3px;
}
.admissionWorkspace #awProfile .aw-profile-actions [data-aw-profile-next]:disabled {
    border-color: #b4cedf; background: #e4edf3; color: #42647a !important; box-shadow: none; opacity: 1; cursor: wait;
}
.admissionWorkspace #awProfile [data-aw-profile-invalid] {
    outline: 2px solid #ca8c32; outline-offset: 4px; border-radius: 8px; scroll-margin-block: 110px;
}
/* Explicitly preserve hidden on details even when shared site CSS sets display. */
.admissionWorkspace #awProfile [data-aw-city-picker][hidden] { display: none !important; }
.admissionWorkspace #awProfile .aw-city-picker__tools [data-aw-city-done] { margin-left: auto; font-weight: 700; }
.admissionWorkspace #awProfile [data-aw-city-search-clear] { flex: none; display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 0; border-radius: 5px; background: #edf6fc; cursor: pointer; }
.admissionWorkspace #awProfile [data-aw-city-search-clear][hidden] { display: none !important; }
.admissionWorkspace #awProfile .aw-city-search input::-webkit-search-cancel-button { -webkit-appearance: none; }
.admissionWorkspace #awProfile .aw-city-picker__selection { flex: 0 0 auto; padding-top: 10px; margin-top: 8px; border-top: 1px solid #d5e6ef; }
.admissionWorkspace #awProfile .aw-city-picker__selection button { padding: 6px 0; border: 0; color: #9c3844; background: transparent; text-align: left; font: inherit; font-size: 12px; cursor: pointer; }
@media (max-width: 760px) {
    .admissionWorkspace #awProfile .aw-profile-second-higher__actions .aw-button { flex: 1 1 100%; }
    .admissionWorkspace #awProfile .aw-profile-actions .aw-profile-next-hint { order: 0; grid-column: 1 / -1; flex-basis: 100%; max-width: none; }
    .admissionWorkspace #awProfile .aw-profile-tabs--steps {
        grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr);
        gap: 2px; padding: 6px 10px 0;
    }
    .admissionWorkspace #awProfile .aw-profile-tabs--steps button > span { width: min(28px, 100%); height: 28px; }
    .admissionWorkspace #awProfile .aw-profile-step-status { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; padding: 2px 12px 10px; }
    .admissionWorkspace #awProfile .aw-profile-step-status > div { min-width: 0; }
    .admissionWorkspace #awProfile .aw-profile-step-status__meta { margin-left: auto; }
    .admissionWorkspace #awProfile [data-aw-profile-position-copy] { white-space: nowrap; }
    .admissionWorkspace #awProfile [data-aw-profile-live-count] { min-height: 24px; padding: 4px 7px; font-size: 11px; }
    .admissionWorkspace #awProfile .aw-profile-actions .aw-button { flex: 1 1 0; }
    /* The section entrance animation otherwise makes fixed children relative to the section. */
    .admissionWorkspace #awProfile [data-aw-profile-section="cities"] { animation: none; transform: none; }
    .admissionWorkspace #awProfile .aw-city-picker__menu {
        position: fixed; z-index: 960; top: auto; bottom: calc(76px + var(--aw-profile-keyboard-offset, 0px) + env(safe-area-inset-bottom));
        left: 10px; right: 10px; width: auto; min-width: 0; box-sizing: border-box;
        max-height: min(420px, calc(var(--aw-profile-viewport-height, 100dvh) - 100px));
        padding: 12px; border-radius: 12px; overflow: hidden; display: flex; flex-direction: column;
        box-shadow: 0 0 0 100vmax #073b5a33, 0 12px 32px #073b5a40;
    }
    .admissionWorkspace #awProfile .aw-city-search,
    .admissionWorkspace #awProfile .aw-city-picker__tools { flex: 0 0 auto; }
    .admissionWorkspace #awProfile .aw-city-picker__tools { gap: 8px; }
    .admissionWorkspace #awProfile .aw-city-options { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
}
