#main .member-head{align-items:center;gap:1rem}
#main .member-head h1{font-size:1.65rem;line-height:1.25;margin:0;color:#f5f9ff}
#main .member-head p{margin:.35rem 0 0;color:#bdcce0;font-size:.92rem}
#main .member-admin-tabs,#main .member-subtabs{display:flex;gap:.25rem;align-items:end;border-bottom:1px solid #cdd8e7;margin:1.1rem 0 0;flex-wrap:wrap}
#main .member-admin-tabs button,#main .member-subtabs button{appearance:none;border:0;background:transparent;color:#c5d5e9;font-size:.94rem;font-weight:650;padding:.72rem 1rem;cursor:pointer;border-bottom:3px solid transparent}
#main .member-admin-tabs button[aria-selected=true],#main .member-subtabs button[aria-selected=true]{color:#1559a9;border-color:#2670d9;background:#eef5ff}
#main .member-filters{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin:.9rem 0}
#main .member-filters .search{display:flex;align-items:center;gap:.4rem;min-width:min(22rem,100%);background:#fff;border:1px solid #c7d3e2;border-radius:.65rem;padding:.4rem .7rem}
#main .member-filters .search input{border:0;outline:0;width:100%;font-size:.94rem;color:#15233b}
#main .member-filters select{border:1px solid #c7d3e2;border-radius:.6rem;padding:.52rem .65rem;background:#fff;color:#15233b;font-size:.94rem}
#main .member-table-wrap{overflow:auto;border:1px solid #cfdae9;border-radius:.8rem;background:#fff;max-height:calc(100vh - 17rem)}
#main .member-directory{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:.93rem;color:#14233b}
#main .member-directory th{position:sticky;top:0;z-index:2;background:#eaf1fa;border-bottom:2px solid #bacbe0;text-align:left;white-space:nowrap;font-weight:700;color:#182e4a}
#main .member-directory th button{border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;display:flex;gap:.35rem;align-items:center;padding:.73rem .7rem;width:100%;text-align:left}
#main .member-directory th button span{color:#64758d}
#main .member-directory td{padding:.65rem .7rem;border-bottom:1px solid #e1e8f1;vertical-align:middle;white-space:nowrap;line-height:1.4}
#main .member-directory tbody tr:nth-child(even){background:#f7faff}
#main .member-directory tbody tr:hover{background:#eaf3ff}
#main .member-directory td:first-child,#main .member-directory th:first-child{position:sticky;left:0;z-index:1;background:inherit;min-width:12.5rem;max-width:17rem}
#main .member-directory th:first-child{z-index:3;background:#eaf1fa}
#main .member-directory .member-person{display:block;padding:0;border:0;background:none;color:#14569f;cursor:pointer;text-align:left;font-size:inherit}
#main .member-directory .member-person strong{font-weight:700}
#main .member-email{max-width:17rem;overflow:hidden;text-overflow:ellipsis}
#main .member-warning{display:block;margin-top:.25rem;padding:.23rem .46rem;border:1px solid #dd7d29;border-radius:.35rem;background:#fff0df;color:#9a340e;font-size:.76rem;font-weight:750;cursor:pointer}
#main .member-warning:hover{background:#ffdfc4}
#main .member-state-buttons{display:flex;gap:.16rem;padding:.16rem;border:1px solid #cad7e7;border-radius:.6rem;background:#eef2f7}
#main .member-state-buttons button{border:0;border-radius:.42rem;background:transparent;color:#465872;padding:.34rem .5rem;cursor:pointer;font-size:.82rem;font-weight:650;white-space:nowrap}
#main .member-state-buttons button.chosen{background:#d9f3df;color:#146533;box-shadow:0 1px 3px #14233b22}
#main .member-state-buttons button.chosen.off{background:#e3e7ed;color:#24364d}
#main .member-directory td>button:not(.member-person):not(.member-warning){border:1px solid #c5d2e5;background:#fff;color:#174e91;border-radius:.45rem;padding:.38rem .65rem;cursor:pointer;font-weight:650}
#main .member-alert{border:1px solid #edaf71;background:#fff3e7;color:#733d0e;border-radius:.6rem;padding:.65rem .8rem;margin:.8rem 0;font-size:.9rem}
#main .member-detail h3{margin:.3rem 0 .8rem}
#main .member-detail>div{display:grid;grid-template-columns:minmax(8rem,auto) 1fr;gap:.55rem .85rem}
#main .member-detail span{color:#52647b}
#main .member-detail strong{overflow-wrap:anywhere}
#dialog .member-form-sections{display:grid;gap:1rem}
#dialog .member-form-sections section{border:1px solid #d7e1ee;border-radius:.7rem;padding:.85rem;background:#f9fbfe}
#dialog .member-form-sections h3{margin:0 0 .75rem;color:#193651}
#dialog .member-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem .8rem}
#dialog .member-readonly{display:grid;gap:.18rem;margin:.6rem 0;padding:.55rem .7rem;background:#eaf2fd;border-radius:.5rem;color:#213e60}
#dialog .member-readonly small{color:#50657e}
#dialog .member-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.3rem .65rem}
#dialog .member-checks label{display:flex;align-items:center;gap:.4rem;font-size:.9rem}
#main .member-catalog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1rem}
#main .member-catalog-card{border:1px solid #cfdae9;border-radius:.8rem;background:#fff;padding:1rem}
#main .member-catalog-card h2{margin:0;font-size:1.2rem;color:#1c344f}
#main .member-catalog-card p{margin:.4rem 0 1rem;color:#5b6b81;font-size:.88rem}
#main .member-catalog-row{display:flex;align-items:center;gap:.35rem;border-top:1px solid #e5ebf2;padding:.52rem 0;color:#1b2d45}
#main .member-catalog-row span{flex:1;min-width:0;overflow-wrap:anywhere}
#main .member-catalog-row small{color:#708198}
#main .member-catalog-row button{border:1px solid #cbd6e4;border-radius:.4rem;background:#fff;padding:.3rem .55rem;color:#245088;cursor:pointer}
#main .member-catalog-card>.primary{margin-top:.8rem}
#main .member-row-leaving{animation:member-leave .24s ease-in forwards}
@keyframes member-leave{to{opacity:0;transform:translateY(-12px)}}
@media(max-width:800px){#main .member-catalog-grid{grid-template-columns:1fr}#dialog .member-form-grid,#dialog .member-checks{grid-template-columns:1fr}#main .member-table-wrap{max-height:none}}
@media(prefers-reduced-motion:reduce){#main .member-row-leaving{animation:none}}

/* Keep the directory in the same dark visual system as the admin shell. */
#main .member-admin-tabs,#main .member-subtabs{border-color:#475469;margin-top:.7rem}
#main .member-admin-tabs button,#main .member-subtabs button{color:#cbd7e8;padding:.56rem .8rem}
#main .member-admin-tabs button[aria-selected=true],#main .member-subtabs button[aria-selected=true]{background:#24517d;color:#fff;border-color:#69aeff}
#main .member-filters{margin:.65rem 0;gap:.5rem}
#main .member-filters .search{min-width:min(20rem,100%)}
#main .member-table-wrap{background:#202a37;border-color:#48586d;border-radius:.55rem;max-height:calc(100vh - 15.5rem)}
#main .member-directory{color:#edf4ff;font-size:.82rem}
#main .member-directory th,#main .member-directory th:first-child{background:#2b4059;color:#fff;border-bottom-color:#7092b9}
#main .member-directory th button{padding:.55rem .5rem}
#main .member-directory th button span{color:#b7cce7}
#main .member-directory td{padding:.52rem .5rem;border-bottom-color:#46576a;line-height:1.3}
#main .member-directory tbody tr:nth-child(odd){background:#243244}
#main .member-directory tbody tr:nth-child(even){background:#2a3a4d}
#main .member-directory tbody tr:hover{background:#36516c}
#main .member-directory td:first-child{min-width:11rem;max-width:13rem;background:inherit}
#main .member-directory .member-person{color:#c7e5ff}
#main .member-directory .member-person:hover{text-decoration:underline}
#main .member-directory .member-warning{color:#ffcbcb;background:#5d2630;border-color:#db6572;font-size:.7rem;padding:.14rem .32rem}
#main .member-directory .member-warning:hover{background:#75313d}
#main .member-directory .member-missing-text{display:inline-block;color:#ffb5b5;font-weight:700;white-space:normal;min-width:5rem}
#main .member-directory .member-muted{color:#9eb0c6}
#main .member-directory .member-inline-select{max-width:9rem;width:100%;min-width:7rem;padding:.34rem .45rem;border:1px solid #7290ad;border-radius:.42rem;background:#e9f3ff;color:#12263e;font:inherit;font-weight:700;cursor:pointer}
#main .member-directory .member-inline-select.member-missing{border-color:#e46b71;background:#fff0f0;color:#8e2432}
#main .member-directory .member-inline-select:disabled{opacity:.8;cursor:default}
#main .member-directory td>button:not(.member-person):not(.member-warning){background:#385778;color:#fff;border-color:#6a92b8;padding:.31rem .5rem}
#main .member-email{max-width:14rem}
#main .member-catalog-card{background:#253448;border-color:#52647a;color:#eef5ff}
#main .member-catalog-card h2{color:#fff}
#main .member-catalog-card p,#main .member-catalog-row small{color:#cad6e7}
#main .member-catalog-row{color:#fff;border-top-color:#4b5e73}

/* Member-management clarity and compact catalog layout. */
#main .member-admin-tabs,#main .member-subtabs{display:inline-flex;align-items:center;gap:.2rem;padding:.25rem;background:#233246;border:1px solid #52677f;border-radius:.7rem;margin:.9rem 0 .15rem;vertical-align:top}
#main .member-subtabs{margin:.7rem 0 .2rem}
#main .member-admin-tabs button,#main .member-subtabs button{border:0;border-radius:.48rem;padding:.56rem .9rem;color:#e1eaf7;transition:background .16s ease,color .16s ease,box-shadow .16s ease}
#main .member-admin-tabs button:hover,#main .member-subtabs button:hover{background:#39536f;color:#fff}
#main .member-admin-tabs button[aria-selected=true],#main .member-subtabs button[aria-selected=true]{background:#3674b5;color:#fff;box-shadow:0 2px 7px #101b2990}
#main .member-directory{font-size:.89rem}
#main .member-directory td{padding:.6rem .62rem;line-height:1.38}
#main .member-directory th button{padding:.65rem .6rem}
#main .member-directory tbody tr{transition:background .16s ease}
#main .member-directory tbody tr:hover{background:#3b5b79}
#main .member-directory .member-warning{font-size:.75rem}
#main .member-directory .member-inline-select{min-width:8.2rem}
#main .member-catalog-card{min-width:0;padding:1rem;transition:border-color .18s ease,box-shadow .18s ease}
#main .member-catalog-card:hover{border-color:#769fc9;box-shadow:0 8px 22px #07111e38}
#main .member-catalog-head,#main .member-catalog-row{display:grid;align-items:center;gap:.6rem;min-width:0}
#main .member-catalog-head{padding:.55rem .45rem;color:#b7cee7;font-weight:700;font-size:.77rem;text-transform:uppercase;letter-spacing:.03em;border-bottom:1px solid #6b8098}
#main .member-catalog-head.department,#main .member-catalog-row.department{grid-template-columns:minmax(8rem,1.35fr) minmax(6rem,.85fr) auto}
#main .member-catalog-head.designation,#main .member-catalog-row.designation{grid-template-columns:minmax(8rem,1fr) auto}
#main .member-catalog-row{padding:.6rem .45rem;border-top:0;border-bottom:1px solid #40556b;transition:background .16s ease,transform .16s ease}
#main .member-catalog-row:hover{background:#324b66;transform:translateX(2px)}
#main .member-catalog-row strong{font-size:.9rem;overflow-wrap:anywhere}
#main .member-catalog-row code{font-size:.78rem;color:#bcdcfb;background:#182b40;border:1px solid #4c6581;border-radius:.32rem;padding:.2rem .35rem;overflow-wrap:anywhere}
#main .member-catalog-actions{display:flex;justify-content:end;gap:.35rem;white-space:nowrap}
#main .member-catalog-row button{background:#324e6a;border-color:#6e8cad;color:#fff;transition:background .16s ease,transform .16s ease}
#main .member-catalog-row button:hover{background:#4778a5;transform:translateY(-1px)}
#main .member-catalog-add{margin-top:.8rem}
#dialog .member-form-sections section{background:#27384d;border-color:#58708a;color:#f0f6ff;padding:1rem}
#dialog .member-form-sections h3{color:#fff;font-size:1.02rem}
#dialog .member-form-sections .field,#dialog .member-form-sections label{color:#e9f2ff}
#dialog .member-form-sections input:not([type=checkbox]),#dialog .member-form-sections select{background:#f5f9ff;color:#162c43;border:1px solid #9bb4ce;border-radius:.45rem}
#dialog .member-form-sections input:not([type=checkbox]):focus,#dialog .member-form-sections select:focus{outline:2px solid #79b9ff;outline-offset:1px}
#dialog .member-readonly{background:#1c2c3e;color:#eff7ff;border:1px solid #4e6884}
#dialog .member-readonly small{color:#bfcee0}
#dialog .member-checks{gap:.48rem .7rem}
#dialog .member-checks label{background:#31455b;border-radius:.4rem;padding:.36rem .45rem;line-height:1.35}
#dialog .member-catalog-help{color:#d7e7fa;background:#263e57;border:1px solid #6a8cad;padding:.6rem .7rem;border-radius:.45rem}
#main button:focus-visible,#dialog button:focus-visible{outline:2px solid #9dccff;outline-offset:2px}
@media(max-width:1050px){#main .member-catalog-grid{grid-template-columns:1fr}}
@media(max-width:600px){#main .member-catalog-head.department,#main .member-catalog-row.department{grid-template-columns:minmax(6rem,1fr) minmax(5rem,.75fr) auto}#main .member-catalog-row button{padding:.32rem}}
@media(prefers-reduced-motion:reduce){#main .member-catalog-card,#main .member-catalog-row,#main .member-catalog-row button,#main .member-admin-tabs button,#main .member-subtabs button,#main .member-directory tbody tr{transition:none}#main .member-catalog-row:hover,#main .member-catalog-row button:hover{transform:none}}

#main .member-overview{display:grid;gap:.45rem;margin:.8rem 0 .15rem;padding:.65rem .75rem;border:1px solid #52677f;border-radius:.7rem;background:#223247;color:#eaf3ff}
#main .member-overview-numbers{display:flex;gap:.55rem;flex-wrap:wrap}
#main .member-overview-numbers>span{display:flex;align-items:baseline;gap:.4rem;padding:.26rem .55rem;border-radius:.4rem;background:#314862;font-size:.8rem}
#main .member-overview-numbers strong{font-size:1.15rem;color:#fff}
#main .member-overview-departments{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;font-size:.76rem}
#main .member-overview-departments>b{margin-right:.3rem;color:#bcd0e6}
#main .member-overview-departments>span{padding:.2rem .4rem;border:1px solid #64819d;border-radius:.35rem;background:#2b4056}
#main .member-overview-departments strong{margin-left:.2rem;color:#fff}
#main .member-catalog-tabs{display:inline-flex;gap:.15rem;padding:.2rem;margin:.2rem 0 .45rem;border:1px solid #5d7791;border-radius:.5rem;background:#182c42}
#main .member-catalog-tabs button{border:0;border-radius:.35rem;background:transparent;color:#d0e0f3;padding:.45rem .6rem;font-size:.8rem;font-weight:700;cursor:pointer}
#main .member-catalog-tabs button[aria-selected=true]{background:#3674b5;color:#fff}
#main .member-catalog-tabs button:hover{background:#456989;color:#fff}
#main .member-catalog-empty{padding:.8rem;color:#c1d0e0}
