/* Scoped account and assignment presentation; no global authentication changes. */
.account-pilot .page-shell { padding:24px var(--site-gutter) 48px; }
.account-pilot .page-heading { margin:0 0 16px; }
.account-pilot h1 { font-size:clamp(26px,3vw,34px); margin:8px 0; }
.account-pilot h2 { font-size:20px; margin:20px 0 12px; border-left:3px solid var(--accent); padding-left:12px; }
.account-pilot h3 { font-size:18px; margin:0; overflow-wrap:anywhere; }
.account-pilot h4 { font-size:17px; margin:0; }
.account-pilot :is(.admin-panel,.table-panel) { padding:0; margin:0 0 24px; border:0; background:transparent; box-shadow:none; min-width:0; overflow:visible; }
.account-pilot :is(.officer-account-help,.officer-auth-help,small,.empty-state,.notice) { font:13px/1.6 var(--font-label); overflow-wrap:anywhere; }
.account-pilot .notice { margin:12px 0; padding:12px 16px; }
.account-pilot .account-facts { display:flex; flex-wrap:wrap; gap:12px 24px; margin:0; }
.account-pilot :is(dt,.account-role) { color:var(--text-secondary); font:13px/1.5 var(--font-label); }
.account-pilot dd { margin:4px 0 0; overflow-wrap:anywhere; }
.account-pilot .account-list { display:grid; gap:12px; }
.account-pilot .account-row { padding:16px; border:1px solid #2b3d57; border-radius:8px; background:var(--surface); min-width:0; }
.account-pilot .account-row-header { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr) auto; gap:12px 24px; align-items:center; }
.account-pilot .account-row-header > * { min-width:0; }
.account-pilot .account-row-header dl { margin:0; }
.account-pilot .account-role { margin:4px 0 0; }
.account-pilot .account-details { margin-top:12px; }
.account-pilot summary { cursor:pointer; width:fit-content; max-width:100%; padding:9px 12px; border:1px solid #647896; border-radius:8px; background:var(--surface-alt); font:14px/1.5 var(--font-control); }
.account-pilot .account-details[open] > summary { margin-bottom:16px; }
.account-pilot .account-editors { display:grid; grid-template-columns:repeat(2,minmax(0,360px)); gap:24px; align-items:start; }
.account-pilot .settings-form { display:grid; gap:12px; margin:0; min-width:0; align-content:start; }
.account-pilot .settings-form > .button { justify-self:start; }
.account-pilot .account-details > .settings-form { max-width:520px; }
.account-pilot .account-actions { grid-column:1/-1; border-top:1px solid #2b3d57; padding-top:16px; }
.account-pilot .officer-account-actions { display:flex; flex-wrap:wrap; gap:12px; }
.account-pilot .officer-account-form { border:0; padding:0; }
.account-pilot .officer-account-actions { border:0; margin:0; padding:0; }
.account-pilot .force-adept-chip-list a { color:var(--primary); }
.account-pilot .officer-account-actions form { margin:0; }
.account-pilot .button { min-height:40px; padding:9px 12px; width:auto; background:#285e99; border:1px solid #285e99; color:white; }
.account-pilot .button:hover { background:#316faa; border-color:#316faa; }
.account-pilot .button.secondary { background:var(--surface-alt); border-color:#647896; color:var(--text); }
.account-pilot .button.danger { background:#633238; border-color:#b6757d; color:white; }
.account-pilot :is(button,a,input,summary,[tabindex]):focus-visible { outline:2px solid var(--text); outline-offset:3px; }
.account-pilot label { display:grid; gap:6px; font-size:14px; min-width:0; }
.account-pilot input:not([type=hidden]) { box-sizing:border-box; width:100%; max-width:100%; min-width:0; padding:10px 12px; border:1px solid #647896; border-radius:8px; background:var(--surface-alt); color:var(--text); font:16px var(--font-control); }
.account-pilot .account-auth { max-width:520px; }
.account-pilot .account-auth .settings-form { padding:20px; background:var(--surface); border:1px solid #2b3d57; border-radius:8px; }
.account-pilot .table-scroll { overflow:auto; max-width:100%; border:1px solid #2b3d57; border-radius:8px; }
.account-pilot .force-adept-roster-table { width:100%; min-width:520px; table-layout:auto; }
.account-pilot .force-adept-roster-table :is(th,td) { padding:10px 12px; font:14px/1.5 Arial,Helvetica,sans-serif; text-transform:none; letter-spacing:normal; border-bottom:1px solid #2b3d57; white-space:normal; }
.account-pilot .force-adept-roster-table th { position:sticky; top:0; background:var(--surface-alt); z-index:1; }
.account-pilot .force-adept-roster-table td:first-child { overflow-wrap:anywhere; }
.account-pilot .assignment-control { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; }
.account-pilot .assignment-control form { margin:0; }
.account-pilot .force-adept-chip-list { display:flex; flex-wrap:wrap; gap:8px 16px; padding:0; margin:12px 0; list-style:none; }
.account-pilot .force-adept-chip-list li { margin:0; padding:0; border:0; background:transparent; }
.account-pilot [id] { scroll-margin-top:130px; }
.account-pilot .profile-mobile-nav { display:none; }
@media(max-width:759px) {
 .account-pilot .page-shell { padding-top:16px; }
 .account-pilot .account-row-header { grid-template-columns:minmax(0,1fr); gap:12px; }
 .account-pilot .account-editors { grid-template-columns:minmax(0,1fr); }
 .account-pilot .account-row-header .status { justify-self:start; }
 .account-pilot .account-auth .settings-form { padding:16px; }
 .account-pilot :is(.button,summary) { min-height:44px; }
 .account-pilot .profile-desktop-nav { display:none; }
 .account-pilot .profile-mobile-nav { display:block; position:relative; }
 .account-pilot .site-header .header-inner { display:flex; flex-direction:row; align-items:center; flex-wrap:nowrap; gap:12px; padding:10px var(--site-gutter); }
 .account-pilot .site-header .guild-name { font-size:15px; min-width:0; }
 .account-pilot .brand-mark { width:32px; height:32px; flex-shrink:0; }
 .account-pilot .profile-mobile-nav summary { white-space:nowrap; }
 .account-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); z-index:30; }
 .account-pilot .profile-mobile-nav nav a { min-height:44px; }
}
