/* Scoped to the public roster and Officer landing page. */
.landing-members-pilot [hidden] { display:none!important; }
.landing-members-pilot .page-shell { padding:24px var(--site-gutter) 48px; }
.landing-members-pilot .page-heading { margin-bottom:20px; }
.landing-members-pilot h1 { font-size:clamp(26px,3vw,34px); margin:8px 0; overflow-wrap:anywhere; }
.landing-members-pilot h2 { font-size:20px; border-left:3px solid var(--accent); padding-left:12px; margin:24px 0 12px; }
.landing-members-pilot h3 { font-size:17px; margin:0 0 8px; }
.landing-members-pilot :focus-visible { outline:2px solid var(--text); outline-offset:3px; }
.landing-members-pilot .button { min-height:40px; width:auto; padding:9px 12px; background:#285e99; border-color:#285e99; color:white; }
.landing-members-pilot .button:hover { background:#316faa; border-color:#316faa; }
.landing-members-pilot .button.secondary { background:var(--surface-alt); border-color:#647896; color:var(--text); }
.landing-members-pilot summary { display:inline-flex; align-items:center; gap:12px; min-height:40px; padding:9px 12px; border:1px solid #647896; border-radius:6px; background:var(--surface-alt); cursor:pointer; list-style:none; font-size:14px; }
.landing-members-pilot summary::-webkit-details-marker { display:none; }
.landing-members-pilot summary::after { content:'+'; }
.landing-members-pilot details[open] > summary::after { content:'−'; }
.landing-members-pilot .officer-account { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:12px; margin:0 0 24px; }
.landing-members-pilot .account-identity { margin:0; color:var(--text-secondary); overflow-wrap:anywhere; }
.landing-members-pilot .account-identity strong { color:var(--text); font-weight:400; }
.landing-members-pilot .account-details { grid-column:1/-1; min-width:0; }
.landing-members-pilot .account-details-content { max-width:720px; margin-top:8px; padding:16px; border:1px solid #2b3d57; border-radius:8px; background:var(--surface); }
.landing-members-pilot .account-details-content p { font:13px/1.65 var(--font-label); color:var(--text-secondary); margin:12px 0 0; }
.landing-members-pilot .account-details-content .button-row { margin:0; }
.landing-members-pilot .officer-tool-group { margin-bottom:24px; }
.landing-members-pilot .officer-tool-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.landing-members-pilot .officer-tool-card { display:block; min-width:0; padding:18px 20px; border:1px solid #2b3d57; border-radius:8px; background:var(--surface); text-decoration:none; color:var(--text); }
.landing-members-pilot .officer-tool-card:hover { background:var(--surface-alt); border-color:#647896; }
.landing-members-pilot .officer-tool-card h3 { color:var(--primary); overflow-wrap:anywhere; }
.landing-members-pilot .officer-tool-card p { font-size:14px; line-height:1.6; margin:0; color:var(--text-secondary); }
.landing-members-pilot .roster-summary-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin:0 0 12px; }
.landing-members-pilot .stat-card { padding:18px 20px; min-width:0; min-height:0; border:1px solid #2b3d57; border-radius:8px; background:var(--surface); box-shadow:none; }
.landing-members-pilot .stat-card::before { display:none; }
.landing-members-pilot .stat-card span { padding-top:0; color:var(--text-secondary); }
.landing-members-pilot .stat-card strong { font-size:24px; white-space:nowrap; }
.landing-members-pilot .roster-note { font:13px/1.6 var(--font-label); color:var(--text-secondary); margin:12px 0; }
.landing-members-pilot .roster-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:12px; padding:16px; margin:20px 0 12px; border:1px solid #2b3d57; border-radius:8px; background:var(--surface); position:relative; z-index:5; }
.landing-members-pilot .member-search-form { display:contents; }
.landing-members-pilot .member-search-form label { display:grid; gap:6px; flex:1 1 240px; max-width:480px; min-width:0; font-size:14px; }
.landing-members-pilot .member-search-form label span { margin:0; }
.landing-members-pilot .member-search-form input { width:100%; min-width:0; min-height:40px; padding:8px 10px; border:1px solid #647896; border-radius:6px; background:var(--surface-alt); color:var(--text); font-size:14px; }
.landing-members-pilot .official-filter-actions { display:contents; }
.landing-members-pilot .table-panel { background:transparent; border:0; box-shadow:none; padding:0; overflow:visible; }
.landing-members-pilot .profile-table-toolbar { margin:0; }
.landing-members-pilot .profile-column-menu { position:absolute; z-index:20; top:auto; left:0; width:min(440px,100%); max-width:100%; overflow:auto; padding:16px; border:1px solid #647896; border-radius:8px; background:var(--surface); box-shadow:var(--shadow-soft); }
.landing-members-pilot .profile-column-menu.opens-above { transform:translateY(calc(-100% - 44px)); }
.landing-members-pilot .profile-column-menu fieldset { border:0; margin:0; padding:0; }
.landing-members-pilot .profile-column-menu legend { margin-bottom:8px; }
.landing-members-pilot [data-column-options] { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px 12px; margin-bottom:12px; }
.landing-members-pilot [data-column-options] label { display:flex; align-items:center; gap:8px; font-size:13px; min-height:32px; overflow-wrap:anywhere; }
.landing-members-pilot [data-column-options] input { width:auto; flex-shrink:0; }
.landing-members-pilot .table-wrap { max-width:100%; overflow:auto; max-height:70vh; border-radius:8px; }
.landing-members-pilot table { width:max-content; min-width:100%; table-layout:auto; }
.landing-members-pilot :is(th,td) { padding:10px 12px; font-size:14px; white-space:nowrap; }
.landing-members-pilot th { position:sticky; top:0; z-index:2; background:var(--surface-alt); }
.landing-members-pilot th,.landing-members-pilot th button { text-transform:none; letter-spacing:normal; font-weight:600; }
.landing-members-pilot td { border-bottom:1px solid #23334a; background:transparent; }
.landing-members-pilot td:nth-child(2) { white-space:normal; overflow-wrap:anywhere; min-width:160px; max-width:280px; }
.landing-members-pilot .profile-mobile-nav { display:none; }
@media(max-width:1100px) { .landing-members-pilot .officer-tool-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:760px) {
 .landing-members-pilot .page-shell { padding-top:16px; }
 .landing-members-pilot .profile-desktop-nav { display:none; }
 .landing-members-pilot .profile-mobile-nav { display:block; position:relative; }
 .landing-members-pilot .site-header .header-inner { display:flex; flex-direction:row; align-items:center; flex-wrap:nowrap; gap:12px; padding:10px var(--site-gutter); }
 .landing-members-pilot .site-header .guild-name { font-size:15px; min-width:0; }
 .landing-members-pilot .brand-mark { width:32px; height:32px; flex-shrink:0; }
 .landing-members-pilot .profile-mobile-nav summary { min-height:44px; white-space:nowrap; }
 .landing-members-pilot .profile-mobile-nav nav { position:absolute; right:0; top:100%; width:240px; display:flex; flex-direction:column; align-items:stretch; padding:12px; border:1px solid var(--border); border-radius:8px; background:var(--surface); box-shadow:var(--shadow-soft); z-index:30; }
 .landing-members-pilot .profile-mobile-nav nav a,.landing-members-pilot .button,.landing-members-pilot summary { min-height:44px; }
 .landing-members-pilot .stat-card,.landing-members-pilot .officer-tool-card { padding:16px; }
 .landing-members-pilot .roster-summary-grid { grid-template-columns:1fr; }
}
@media(max-width:600px) { .landing-members-pilot .officer-tool-grid { grid-template-columns:1fr; } }
@media(max-width:480px) { .landing-members-pilot [data-column-options] { grid-template-columns:1fr; } }
