/* All rules stay within the authenticated member interface. */
.fam-member-enrollment{--fam-ink:#17344d;--fam-border:#dce5ed;max-width:1120px;margin:28px auto;padding:0 20px 32px;color:var(--fam-ink);line-height:1.65;text-align:start}
.fam-member-enrollment *{box-sizing:border-box}
.fam-member-enrollment>h2{font-size:clamp(1.5rem,3vw,2rem);margin:0 0 24px;color:var(--fam-ink)}
.fam-member-enrollment .fam-member-card{min-width:0;margin:0 0 24px;border:1px solid var(--fam-border);border-radius:18px;background:#fff;box-shadow:0 6px 24px #17344d0a;overflow:hidden}
.fam-member-card-heading{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:18px 24px;background:#f1f5fa;border-bottom:1px solid var(--fam-border)}
.fam-member-enrollment .fam-member-card-heading h3{flex:1;min-width:120px;margin:0;font-size:1.15rem;line-height:1.5;color:inherit}
.fam-member-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#fff;font-weight:700;font-size:1.2rem}
.fam-member-count{font-size:.875rem;font-weight:650;white-space:nowrap}
.fam-member-identity{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:24px}
.fam-member-identity dt{font-size:.875rem;color:#496075}
.fam-member-identity dd{margin:6px 0 0;font-size:1.1rem;font-weight:650;overflow-wrap:anywhere}
.fam-member-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.fam-member-enrollments .fam-member-card-heading{background:#eaf6ee;color:#175732;border-color:#c7e2cf}
.fam-member-requests .fam-member-card-heading{background:#eaf2fc;color:#174b7e;border-color:#ccdef1}
.fam-member-enrollment .fam-member-list{list-style:none;margin:0;padding:0 24px}
.fam-member-list li{padding:20px 0;border-bottom:1px solid #e5ebf0;overflow-wrap:anywhere}
.fam-member-list li:last-child{border-bottom:0}
.fam-member-enrollment .fam-member-list h4{font-size:1rem;line-height:1.6;margin:0 0 8px;color:var(--fam-ink)}
.fam-member-enrollment .fam-member-list p{margin:6px 0 0;font-size:.9rem}
.fam-member-badge{display:inline-block;max-width:100%;padding:3px 10px;border-radius:20px;font-size:.8rem;font-weight:650;vertical-align:middle}
.fam-status-success{color:#165632;background:#e6f4eb}.fam-status-pending{color:#684800;background:#fff3cf}.fam-status-danger{color:#84252d;background:#fcebed}.fam-status-review{color:#62368a;background:#f2eafb}.fam-status-neutral{color:#374e62;background:#edf1f5}
.fam-member-empty{color:#496075}
.fam-member-new-course .fam-student-registration{padding:24px}
.fam-member-new-course form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px}
.fam-member-new-course form>p{margin:0;min-width:0}
.fam-member-new-course form>input[type=hidden]{display:none}
.fam-member-new-course form>div,.fam-member-new-course form>p:last-child{grid-column:1/-1}
.fam-member-new-course .fam-registration-instructor{grid-column:1;grid-row:1}
.fam-member-new-course .fam-registration-course{grid-column:2;grid-row:1}
.fam-member-new-course label{display:inline-block;margin-bottom:8px;color:var(--fam-ink)}
.fam-member-new-course label+br{display:none}
.fam-member-new-course input:not([type=hidden]):not([type=checkbox]),.fam-member-new-course select{width:100%;max-width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #8fa5ba;border-radius:8px;background:#fff;color:var(--fam-ink);font:inherit}
.fam-member-new-course select:disabled{color:#526475;background:#f1f4f7;opacity:1}
.fam-member-new-course input[type=file]{font-size:.875rem;overflow:hidden}
.fam-member-new-course small{display:block;margin-top:8px;line-height:1.6;color:#496075}
.fam-member-new-course img{max-width:100%;height:auto}
.fam-member-new-course #fam_student_registration_submit{min-width:180px;min-height:48px;padding:12px 24px;border:1px solid #155a96;border-radius:9px;background:#1765a8;color:#fff;font:inherit;font-weight:600;cursor:pointer}
.fam-member-new-course :is(input,select,button,a):focus-visible{outline:3px solid #1765a8;outline-offset:3px}
.fam-member-enrollment [role=alert],.fam-member-enrollment [role=status]{overflow-wrap:anywhere}
@media(max-width:780px){.fam-member-overview{grid-template-columns:1fr;gap:0}.fam-member-identity{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.fam-member-enrollment{padding:0 12px 24px;margin-top:20px}.fam-member-identity,.fam-member-new-course form{grid-template-columns:1fr}.fam-member-new-course .fam-registration-instructor,.fam-member-new-course .fam-registration-course{grid-column:auto;grid-row:auto}.fam-member-card-heading{padding:16px;gap:10px}.fam-member-identity,.fam-member-new-course .fam-student-registration{padding:18px}.fam-member-enrollment .fam-member-list{padding:0 18px}.fam-member-new-course #fam_student_registration_submit{width:100%;min-width:0}}
