.session-pending #sidebar, .session-pending .shell { visibility: hidden; }
.auth-mode #sidebar, .auth-mode #topbar { display: none; }
.auth-mode .shell { margin-left: 0; }
.auth-mode #content { max-width: none; margin: 0; padding: 0; }
.auth-layout {
  min-height: 100dvh;
  display: grid;
  grid-template-columns: minmax(420px, .95fr) minmax(0, 1fr);
}
.auth-main {
  padding: clamp(28px, 5vw, 80px) clamp(36px, 7vw, 115px);
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.auth-brand { display:flex; align-items:center; width:max-content; gap:9px; color:var(--text); font-size:29px; font-weight:800; line-height:1; letter-spacing:-1.6px; }
.auth-brand img { width:34px; height:34px; }
.auth-brand span { margin-left:-9px; color:var(--accent); }
.auth-panel { width:100%; max-width:405px; padding:clamp(48px,9vh,100px) 0; margin:auto 0; }
.auth-panel h1 { font-size:clamp(32px,3.1vw,48px); font-weight:740; line-height:1.1; text-wrap:balance; }
.auth-intro { max-width:335px; margin:14px 0 26px; color:var(--muted); line-height:1.65; }
.auth-form { display:grid; gap:15px; }
.auth-form .field { font-size:13px; gap:6px; }
.auth-form input:not([type=checkbox]) { min-height:45px; font-size:16px; }
.passcode-input { font-family:var(--mono); letter-spacing:.3em; }
.auth-form .btn { min-height:44px; margin-top:7px; font-size:14px; }
.auth-photo { margin:15px 15px 15px 0; border-radius:12px; background:#5b4735 url('/assets/transmission.jpg') 71% center/cover no-repeat; }
.auth-mode #toast { left:50%; }
.team-list { border:1px solid var(--border); background:var(--panel); border-radius:9px; overflow:hidden; }
.team-list ul { margin:0; padding:0; list-style:none; }
.team-row,.account-identity { display:flex; align-items:center; gap:13px; padding:17px 19px; }
.team-row + .team-row { border-top:1px solid var(--border); }
.member-icon { width:37px; height:37px; display:grid; flex:none; place-items:center; border-radius:7px; border:1px solid var(--border); background:var(--raised); color:var(--muted); }
.member-name,.account-identity>div { display:grid; min-width:0; gap:2px; }
.member-name strong,.account-identity strong { font-size:14px; overflow-wrap:anywhere; font-weight:650; }
.member-name small,.account-identity small { font-size:12px; color:var(--muted); }
.team-row>.btn { margin-left:auto; flex:none; }
.account-identity { padding:0; }
[data-role-help] { color:var(--muted); margin-top:2px; }
@media(max-width:740px) {
  .auth-layout { grid-template-columns:1fr; position:relative; }
  .auth-photo { display:none; }
  .auth-main { width:min(100%,490px); margin:auto; padding:32px 28px; align-self:stretch; min-height:100dvh; }
  .auth-panel { max-width:none; padding:44px 0 70px; }
  .auth-panel h1 { font-size:35px; }
  .team-row { gap:10px; padding:14px 12px; }
  .team-row .btn { padding-inline:10px; }
}
