/* V19: universal, first-row identity controls for authenticated Master/Tester ONLY.
   The shared partial is server-guarded; regular Admin and visitors never receive these controls. */
.skypine-identity-switch{display:inline-flex;align-items:center;justify-content:flex-end;gap:4px;flex:0 0 auto;margin:0;white-space:nowrap}
.skypine-identity-switch form{display:inline-flex;align-items:center;margin:0;padding:0}
.skypine-identity-switch .skypine-identity-choice{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:5px 9px;border:1px solid #a8bbc6;border-radius:5px;background:transparent;color:#274459;font-family:inherit;font-size:11px;font-weight:650;line-height:1.2;letter-spacing:0;cursor:pointer;text-decoration:none;white-space:nowrap}
.skypine-identity-switch .skypine-identity-choice.is-current{background:#17384f;border-color:#17384f;color:#fff;cursor:default}
.skypine-identity-switch .skypine-identity-choice.is-login{border-style:dashed;font-weight:550}
.skypine-identity-switch button:hover,.skypine-identity-switch a:hover{background:#e8f1f5;color:#0e334b;border-color:#47758c}
.skypine-identity-switch .skypine-identity-choice:focus-visible{outline:2px solid #238ba7;outline-offset:2px}
/* Public website: stay at the far right of the FIRST menu row; no second header bar. */
.site-header .main-nav>.skypine-identity-switch{margin-left:4px}
@media(min-width:1024px){
 .site-header .nav-shell{gap:clamp(6px,.85vw,13px)}
 .site-header .main-nav,.site-header .main-nav.open{gap:clamp(6px,.8vw,12px)}
 .site-header .nav-shell:has(.skypine-identity-switch) .brand-wordmark small{letter-spacing:.03em}
}
@media(min-width:1024px) and (max-width:1199px){
 .site-header .main-nav,.site-header .main-nav.open{gap:6px}
 .site-header .main-nav>.nav-cta{padding:10px 7px}
 .site-header .skypine-identity-choice{padding:5px 6px;font-size:10px}
}
/* Mobile: controls remain a part of the open first-level menu, not the content. */
@media(max-width:1023px){
 .site-header .main-nav>.skypine-identity-switch{align-self:flex-start;margin:12px 0 2px;justify-content:flex-start}
 .site-header .skypine-identity-choice{min-height:34px;padding:7px 12px;font-size:12px}
}
/* Private administration: switch sits immediately after the nav, before logout. */
.admin-shell-bar .skypine-identity-switch{margin-left:auto;gap:5px}
.admin-shell-bar .skypine-identity-choice{color:#f1f6fb;border-color:#7088a0;font-size:11px}
.admin-shell-bar .skypine-identity-choice.is-current{background:#e9ddc8;color:#172a40;border-color:#e9ddc8}
.admin-shell-bar .skypine-identity-choice.is-login{color:#c9d9e6}
.admin-shell-bar .skypine-identity-switch button:hover,.admin-shell-bar .skypine-identity-switch a:hover{background:#314b64;color:#fff;border-color:#a6c0d6}
@media(max-width:780px){.admin-shell-bar .skypine-identity-switch{margin-left:0}.admin-shell-bar .admin-shell-logout{margin-left:auto}}

/* V19 login lockout: restrained one-line action after verified lockout event only. */
.master-recovery-entry{display:block;max-width:100%;padding:8px 11px;margin:9px 0 13px}
.master-recovery-entry summary{display:list-item;width:max-content;max-width:100%;white-space:nowrap;line-height:1.2;font-size:.82rem;font-weight:600}
.master-recovery-entry label{font-size:.83rem}
.skypine-lockout-reset{margin:10px 0 12px;font-size:.84rem;font-weight:600;white-space:nowrap}
.skypine-lockout-reset a{color:inherit;text-underline-offset:3px}
