.member-account295{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:20px}.member-panel295{background:#fff;border:1px solid #cbd9e8;border-radius:6px;overflow:hidden;margin:0}.member-panel295>h2{display:flex;align-items:center;gap:12px;background:#245d9c;color:#fff;font-size:17px;font-weight:700;letter-spacing:.3px;margin:0;padding:16px 20px}.member-panel295>h2 svg{width:22px;height:22px;flex:0 0 22px}.member-panel295>h2>span{font-size:12px;padding:4px 8px;background:#e5eef9;color:#173c60;border-radius:5px}.member-contact295{display:grid;grid-template-columns:130px minmax(0,1fr);gap:20px;padding:22px}.member-photo295{display:flex;flex-direction:column;align-items:center;gap:12px}.member-photo295>div{display:flex;align-items:center;justify-content:center;width:100px;height:100px;border-radius:50%;overflow:hidden;background:#e5eef9;color:#173c60;font-size:32px;font-weight:700}.member-photo295 img{width:100%;height:100%;object-fit:cover}.member-photo295 button{background:#edf1f5;color:#40566d;border:1px solid #cbd5df;font-size:13px;padding:9px 12px}.member-fields295{display:grid;grid-template-columns:1fr 1fr;gap:16px}.member-account295 label{display:flex;flex-direction:column;gap:8px;color:#173c60;font-size:14px;font-weight:600;margin:0}.member-account295 input{margin:0;min-height:42px;box-sizing:border-box;width:100%;font-size:15px}.member-account295 .muted{font-size:13px;line-height:1.5}.member-contact295 form>.primary{float:right;background:#245d9c;color:#fff;padding:10px 18px;min-height:42px}.member-access295{padding:22px}.member-access295 .account-access135{background:transparent;border:0;padding:20px 0 0}.member-access295 .account-access135 h3,.member-access295 .account-access135>p{display:none}.member-access295 .account-access-actions135{display:flex;gap:10px;flex-wrap:wrap}.member-access295 .account-access-actions135 button{background:#e5eef9;border-color:#cbd9e8;color:#173c60}.member-children295{grid-column:1/-1}.member-children295 table{width:100%;border-collapse:collapse}.member-children295 th{background:#e8eef6;color:#173c60;text-align:left;text-transform:none;padding:14px 18px;font-size:14px}.member-children295 td{padding:14px 18px;color:#173c60;font-size:14px}.member-children295 tbody tr:nth-child(even){background:#f0f3f7}.member-children295 td button{background:#e5eef9;color:#245d9c;border-color:#cbd9e8;padding:9px 12px;font-weight:600}.member-children295>.muted{margin:14px 20px}.member-group295{display:inline-block;padding:5px 8px;margin:3px;background:#e7f0fb;border-radius:5px}.child-review295{padding:18px 20px;border-bottom:1px solid #d5dfeb;color:#173c60}.child-review295 small{display:block;margin:7px 0;color:#61758d}.child-review295 button{margin-right:10px}.child-review295 .primary{background:#245d9c;color:#fff}.member-panel295#child-corrections295{margin-top:20px}.member-panel295#child-corrections295>p{padding:20px}@media(max-width:1100px){.member-account295{grid-template-columns:1fr}}@media(max-width:650px){.member-contact295{grid-template-columns:1fr}.member-fields295{grid-template-columns:1fr}.member-children295 table{min-width:620px}}

/* Instructor groups use the shared role-table palette without child-table sizing. */
.instructor-groups340{grid-column:1/-1;min-width:0;align-self:start}
#main .instructor-groups340 .table-wrap{min-width:0}
#main .instructor-groups340 table{width:100%;min-width:620px;table-layout:fixed;height:auto}
#main .instructor-groups340 th{background:#eaf1f8;color:#173c60;font-size:13px;font-weight:700;text-transform:none;letter-spacing:0;text-align:left;padding:14px 16px;border-bottom:1px solid #d4e2ef}
#main .instructor-groups340 th:nth-child(1){width:32%}
#main .instructor-groups340 th:nth-child(2){width:25%}
#main .instructor-groups340 th:nth-child(3){width:28%}
#main .instructor-groups340 th:nth-child(4){width:15%}
#main .instructor-groups340 th,#main .instructor-groups340 td{box-sizing:border-box}
#main .instructor-groups340 tr{height:auto}
#main .instructor-groups340 td{height:auto;padding:16px;color:#173c60;font-size:14px;line-height:1.6;vertical-align:middle;text-align:left;overflow-wrap:anywhere;border-bottom:1px solid #e0e9f2}
#main .instructor-groups340 tbody tr:nth-child(even){background:#f8fbfe}
#main .instructor-groups340 tbody tr:hover{background:#f3f7f8}
#main .instructor-groups340 td strong{font-weight:600}
#main .instructor-groups340 td.instructor-groups-empty340{text-align:center;padding:24px 16px;color:#526477}

/* 4.523: tenant account details are information, rather than editable fields. */
.tenant-account523 .tenant-details523{display:grid;gap:20px;margin:0}
.tenant-account523 .tenant-details523>div{min-width:0}
.tenant-account523 .tenant-details523 dt{margin:0 0 8px;color:#25435f;font-size:14px;font-weight:500;line-height:1.5}
.tenant-account523 .tenant-details523 dd{margin:0;padding:12px 14px;min-height:46px;box-sizing:border-box;border-radius:5px;background:#f3f6fa;color:#173c60;font-family:inherit;font-size:15px;font-weight:400;line-height:1.5;overflow-wrap:anywhere}
.tenant-account523 .tenant-details523 dd.tenant-missing523{color:#61758b}
.tenant-account523 .member-access295>.muted{margin:16px 0 0}
#main .tenant-account523 .member-access295 .account-access135{background:transparent;border:0;padding:20px 0 0;margin:0}

/* 4.527: tenant profile follows the instructor account layout. */
#main[data-panel-role87=reservation][data-panel-page87=account] .page-heading{gap:20px;align-items:center;margin-bottom:24px}
#main[data-panel-role87=reservation][data-panel-page87=account] .page-heading h1{display:flex;align-items:center;gap:12px;font-size:30px;line-height:1.3;color:#173c60}
.tenant-account523 .tenant-contact527{align-items:start}
.tenant-account523 .tenant-contact-body527{min-width:0}
.tenant-account523 .tenant-contact-body527 .tenant-details523{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tenant-account523 .tenant-name527{grid-column:1/-1}
.tenant-account523 .tenant-details523 dt{font-weight:600}
.tenant-account523 .tenant-details523 dd{min-height:46px;font-size:15px;font-weight:400}
.tenant-account523 .tenant-contact-body527>.muted{margin:16px 0 0;line-height:1.5}
.tenant-account523 .member-access295 .account-access-actions135{gap:12px}
.tenant-account523 .member-access295 .account-access-actions135 button{min-height:42px;padding:10px 14px;font-family:inherit;font-size:13px;line-height:1.4}
@media(max-width:650px){.tenant-account523 .tenant-contact-body527 .tenant-details523{grid-template-columns:1fr}.tenant-account523 .tenant-name527{grid-column:auto}#main[data-panel-role87=reservation][data-panel-page87=account] .page-heading h1{font-size:24px}}

/* 4.528: account-level help text has consistent separation from fields/actions. */
#main[data-panel-role87=instructor] #instructor-contact340>.muted,
#main[data-panel-role87=member] #member-contact-form295>.muted{margin:16px 0 12px}
#main:is([data-panel-role87=instructor],[data-panel-role87=member]) .member-access295>.muted{margin:16px 0 0}

/* 4.529: email and optional login share the same account information layout. */
.member-access295 .account-credentials529{display:grid;gap:16px;margin:0}
.member-access295 .account-credentials529>div{min-width:0}
.member-access295 .account-credentials529 dt{margin:0 0 8px;font-size:14px;font-weight:600;line-height:1.5;color:#25435f}
.member-access295 .account-credentials529 dt span{font-weight:400;color:#61758b}
.member-access295 .account-credentials529 dd{margin:0;min-height:46px;padding:12px 14px;border-radius:5px;background:#f3f6fa;color:#173c60;font-size:15px;font-weight:400;line-height:1.5;overflow-wrap:anywhere;box-sizing:border-box}
.member-access295 .account-credentials529 dd.account-login-empty529{color:#61758b}
.member-access295 .account-credentials529~.muted{margin-top:16px}
