/* Complete membership and legible member dialogs; no inherited public-header styling. */
.member-manager{--white:#193b3e;--muted:#536e69;background:#f5f7f1!important;color:#193b3e!important;border:1px solid #a9c4ba!important;border-radius:14px!important;padding:0!important;width:min(900px,calc(100% - 28px));max-height:calc(100dvh - 28px);overflow:auto;box-shadow:0 25px 90px #071b2860}
.member-manager::backdrop{background:#071e24b8;backdrop-filter:blur(3px)}
body .member-manager>header.member-manager-head{position:sticky!important;top:0!important;z-index:4;display:flex!important;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:20px 24px!important;margin:0!important;border:0!important;border-bottom:3px solid #42ebcb!important;background:#123438!important;color:#f5fbf7!important;box-shadow:none!important}
body .member-manager>header.member-manager-head h2{color:#fff!important;font:800 23px/1.25 Arial,sans-serif!important;letter-spacing:-.5px;margin:5px 0 0!important}
body .member-manager>header.member-manager-head .eyebrow{color:#91ead3!important;font:700 9px/1.4 Arial,sans-serif!important;letter-spacing:1.8px}
body .member-manager>header.member-manager-head>button{display:grid!important;place-items:center;position:static!important;width:44px;min-width:44px;height:44px;min-height:44px;padding:0!important;border:1px solid #527b78!important;border-radius:9px!important;background:#284e50!important;color:#fff!important;font:400 25px/1 Arial,sans-serif;flex:none}
body .member-manager .member-manager-identity{margin:18px 24px;padding:16px;border:1px solid #c5d8cc;border-radius:10px;background:#e8f0e7;color:#244c42;gap:15px}
body .member-manager .member-manager-identity strong{color:#193e3e!important}
body .member-manager .member-manager-tabs{display:flex!important;flex-wrap:wrap;gap:7px;margin:0 24px 15px;padding:0;width:auto;background:none;border:0}
body .member-manager .member-manager-tabs button{flex:1;min-height:44px;padding:10px 12px;background:#e0e9df;border:1px solid #b6cbb9;color:#365a47;border-radius:7px;font:700 12px/1.4 Arial,sans-serif}
body .member-manager .member-manager-tabs button[aria-pressed=true]{background:#126d64;border-color:#126d64;color:#fff}
body .member-manager .member-manager-section{padding:18px 24px;margin:0;background:#f5f7f1;color:#345849}
body .member-manager :is(h3,h4,label,dt,dd){color:#264b41}
body .member-manager p{font-size:13px;line-height:1.65;color:#536e60}
body .member-manager .member-manager-feedback{padding:0 24px 18px;color:#315d49}
body .member-manager :is(input,select,textarea){background:#fffef9!important;border:1px solid #b4cab9!important;border-radius:7px;color:#234f42!important;min-height:44px}
body .member-manager :is(.btn,button[type=submit]){min-height:44px;border:1px solid #006c63;background:#006c63;color:#fff;border-radius:7px;padding:11px 14px;font:700 12px/1.4 Arial,sans-serif}
body .member-manager .btn.secondary{background:#e7eee2;color:#305845;border-color:#b3c8b4}
.has-club-roster #admin-view-members-accounts .admin-pager,.has-club-roster #club-member-counts,.has-club-roster .club-member-tools,.has-club-roster .roster-legacy{display:none!important}
#admin .club-roster{background:#fbfcf7;border:1px solid #c1d3c6;border-radius:12px;padding:20px;color:#234b40;min-width:0}
#admin .club-roster[hidden]{display:none!important}
.roster-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}
.roster-heading>div>span{font:700 9px/1.5 Arial,sans-serif;letter-spacing:1.8px;color:#508171}
#admin .roster-heading h2{font:800 23px/1.3 Arial,sans-serif;letter-spacing:-.5px;margin:4px 0 0;color:#20433c}
.roster-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.roster-summary>div{padding:12px 14px;border:1px solid #c8d9ca;border-radius:8px;background:#e7eee4}
.roster-summary b{display:block;font:800 25px/1.15 Arial,sans-serif;color:#155e4b}
.roster-summary span{font:500 11px/1.5 Arial,sans-serif;color:#53705e}
.roster-summary>div:nth-child(2),.roster-summary>div:nth-child(4){background:#f4eadb;border-color:#e4d4ba}
.roster-summary>div:nth-child(2) b,.roster-summary>div:nth-child(4) b{color:#90622e}
.roster-invitation-setting{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 14px;border:1px solid #c6d8cd;border-left:3px solid #2d8a70;border-radius:7px;margin-bottom:14px;background:#edf3e9}
.roster-invitation-setting strong{display:block;font-size:12px;color:#315b49}
.roster-invitation-setting span{display:block;font-size:11px;line-height:1.6;color:#54705f;margin-top:3px}
.roster-controls{display:grid;grid-template-columns:minmax(180px,1fr) 185px 145px;gap:12px;margin-bottom:12px}
#admin .roster-controls label{font:650 11px/1.5 Arial,sans-serif;color:#466454}
.roster-controls :is(input,select){width:100%;margin-top:5px;min-height:44px}
.roster-table-wrap{overflow:auto;border:1px solid #cad9cd;border-radius:9px}
#admin .roster-table{border-collapse:collapse;width:100%;font-size:12px;min-width:660px;table-layout:fixed}
#admin .roster-table th{padding:12px 13px;text-align:left;background:#e2ebe0;color:#40634b;font:700 10px/1.4 Arial,sans-serif;letter-spacing:.7px;text-transform:uppercase}
.roster-table th:first-child{width:31%}.roster-table th:nth-child(2){width:27%}.roster-table th:nth-child(3){width:17%}.roster-table th:nth-child(4){width:25%}
#admin .roster-table td{padding:11px 13px;border-top:1px solid #d9e2d6;color:#355a49;vertical-align:middle;overflow-wrap:anywhere}
.roster-table small{display:block;color:#65806b;font-size:10px;line-height:1.6;margin-top:3px}
.roster-person{display:flex;gap:10px;align-items:center;min-width:0}
.roster-person>div{min-width:0}
.roster-person>:first-child{width:38px!important;height:38px!important;min-width:38px!important;flex:0 0 38px!important;border-radius:50%!important}
.roster-person :is(img,.roster-initials){width:38px;height:38px;min-width:38px;border-radius:50%;object-fit:cover}
.roster-initials{display:grid;place-items:center;background:#d5e7dc;color:#326354;font-weight:800}
.roster-person strong{font-size:12px;color:#224c43}
.roster-functions{white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.roster-status{display:inline-flex;padding:6px 9px;border-radius:15px;font:700 10px/1.4 Arial,sans-serif;background:#f7e9d4;color:#825a25;border:1px solid #e8cfab}
.roster-status.active{background:#deeddb;border-color:#bad6b5;color:#356744}
.roster-status.paused{background:#f0ddd6;border-color:#d9afa2;color:#8b4e3b}
.roster-status.missing{background:#f3e2d4;border-color:#dbbca4;color:#8b5935}
.roster-actions{display:flex;flex-wrap:wrap;gap:6px}
#admin .club-roster :is(button,.roster-actions a){min-height:40px;padding:8px 10px;border:1px solid #b4c9b8;border-radius:7px;background:#edf3e8;color:#315d49;font:700 11px/1.4 Arial,sans-serif;transition:background .16s,transform .16s}
#admin .club-roster .roster-invite{background:#126f63;border-color:#126f63;color:#fff}
#admin .club-roster button:disabled{opacity:.5;cursor:default;transform:none}
#admin .club-roster button:not(:disabled):hover{transform:translateY(-1px);background:#d8e8d7}
#admin .club-roster .roster-invite:not(:disabled):hover{background:#0c574c}
.roster-pagination{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:13px;width:auto}
.roster-pagination[hidden]{display:none!important}
.roster-pagination span{font-size:11px;color:#57745f}
#admin .roster-feedback{font-size:12px;line-height:1.6;color:#3e6b50;margin:7px 0 12px;min-height:0}
.club-roster :is(button,input,select,a):focus-visible{outline:3px solid #e38c5c;outline-offset:2px}
@media(max-width:1000px){.roster-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.roster-controls{grid-template-columns:minmax(160px,1fr) 160px}.roster-controls>label:last-child{grid-column:1/-1}.roster-invitation-setting{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){#admin .club-roster{padding:14px}.roster-heading{align-items:flex-start}#admin .roster-heading h2{font-size:21px}.roster-controls{grid-template-columns:1fr 1fr}.roster-controls>label:first-child{grid-column:1/-1}.roster-controls>label:last-child{grid-column:auto}.roster-pagination{justify-content:center;gap:8px;flex-wrap:wrap}body .member-manager>header.member-manager-head{padding:16px!important}body .member-manager>header.member-manager-head h2{font-size:20px!important}body .member-manager .member-manager-identity{margin:14px}body .member-manager .member-manager-section{padding:16px}body .member-manager .member-manager-tabs{margin:0 14px 10px}body .member-manager .member-manager-tabs button{min-width:100px}}
@media(prefers-reduced-motion:reduce){#admin .club-roster :is(button,a){transition:none!important;transform:none!important}}
