.auth-view { min-height:100svh; display:grid; align-content:center; justify-items:center; padding:40px 24px; background:var(--paper); border-top:4px solid var(--color-brand-primary); }
.auth-shell { width:min(100%,400px); position:relative; }
.auth-brand { display:flex; align-items:center; gap:24px; margin:0 0 32px; }
.auth-brand img { width:120px; height:auto; object-fit:contain; }
.auth-brand>span { font-size:20px; font-weight:600; color:var(--color-text-secondary); border-left:1px solid var(--line); padding-left:24px; }
.account-locale { display:block; min-height:36px; max-width:100%; padding:4px 8px; margin:0 0 24px auto; font-size:13px; }
.auth-panel { width:100%; display:grid; gap:16px; padding:0; border:0; border-radius:0; background:none; box-shadow:none; }
.auth-panel h1 { font-size:var(--font-size-heading-lg); line-height:var(--line-height-heading-lg); margin:0 0 8px; font-weight:600; }
.auth-panel label { font-size:14px; color:var(--ink); }
.auth-panel input { width:100%; min-height:48px; font-size:16px; }
.auth-panel .primary-button { width:100%; min-height:48px; }
.auth-panel .text-button { min-height:44px; }
.auth-footnote { border-top:1px solid var(--line); padding-top:20px; margin:0; text-align:center; color:var(--muted); font-size:13px; }
.account-surface p { line-height:1.6; overflow-wrap:anywhere; }
.account-surface label input,.account-surface label select { min-height:44px; }
.account-surface .form-error:empty { min-height:0; }
.account-surface .form-error:not(:empty) { padding:10px 12px; border-left:3px solid var(--color-feedback-danger-content); background:var(--color-feedback-danger-bg); }
.otp-input { font-family:var(--font-family-mono); font-variant-numeric:tabular-nums; }
.enrollment-fields { display:grid; gap:16px; min-width:0; }
.setup-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--space-4); list-style:none; padding:0; margin:0; }
.setup-steps li { display:flex; flex-direction:column; gap:var(--space-2); font-size:var(--font-size-label); border-top:var(--border-width-focus) solid var(--color-border-muted); padding-top:var(--space-4); color:var(--color-text-secondary); overflow-wrap:anywhere; }
.setup-steps li[aria-current="step"] { border-color:var(--color-brand-primary); color:var(--color-text-brand); }
.setup-steps span { color:var(--color-text-brand); font-family:var(--font-family-mono); }
.setup-steps strong { font-weight:600; }
.setup-section { display:grid; gap:var(--space-6); min-width:0; }
.setup-section p,.setup-help p { margin:0; }
.setup-help { border-block:var(--border-width-default) solid var(--color-border-muted); padding:var(--space-4) 0; }
.setup-help summary { display:list-item; align-content:center; min-height:var(--size-control-touch); cursor:pointer; color:var(--color-text-link); }
.setup-help[open]>*:not(summary) { margin-top:var(--space-6); }
.store-links { display:grid; gap:var(--space-4); }
.enrollment-fields button,.enrollment-fields a { white-space:normal; overflow-wrap:anywhere; }
.authenticator-qr { width:220px; height:220px; aspect-ratio:1; max-width:100%; object-fit:contain; justify-self:center; background:white; }
.copy-field { display:flex; gap:8px; min-width:0; align-items:center; }
.copy-field input { min-width:0; font-family:var(--font-family-mono); font-size:13px; }
.inline-notice { margin:0; padding:12px; background:var(--color-feedback-info-bg); border-left:3px solid var(--color-feedback-info-content); color:var(--color-feedback-info-content); font-size:13px; }
.brand-company { color:var(--color-text-brand); font-size:18px; }
.account-form { display:grid; gap:16px; margin:24px 0 32px; padding:24px 0; border-block:1px solid var(--line); }
.account-form .primary-button { justify-self:start; }
.invite-fields { display:grid; grid-template-columns:minmax(100px,1fr) minmax(180px,1.8fr) minmax(100px,1fr) minmax(100px,1fr); gap:16px; }
.admin-view h1 { font-size:var(--font-size-heading-lg); font-weight:600; }
.admin-view h2 { font-size:var(--font-size-heading-sm); font-weight:600; margin:0; }
.admin-view .audit-heading { margin-top:32px; }
.admin-view>.account-locale { margin-bottom:16px; }
.account-badge,.recovery-badge { display:inline-block !important; padding:3px 7px; margin-right:8px; border-radius:var(--radius-small); font-size:12px; }
.user-row>div>.account-badge.active { color:var(--color-feedback-success-content); background:var(--color-feedback-success-bg); }
.user-row>div>.account-badge.disabled { color:var(--muted); background:var(--color-bg-subtle); }
.user-row>div>.account-badge.pending,.user-row>div>.recovery-badge { color:var(--color-feedback-warning-content); background:var(--color-feedback-warning-bg); }
.user-row>div:first-child { flex:1 1 200px; }
.user-actions { align-items:center; }
.user-actions .secondary-button { min-height:40px; }
.dialog-content { display:grid; gap:16px; padding:24px; min-width:0; }
.dialog-content header { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.dialog-content h2 { margin:0; font-size:var(--font-size-heading-md); font-weight:600; }
.dialog-content p { margin:0; }
.dialog-content textarea { width:100%; padding:12px; resize:vertical; overflow-wrap:anywhere; font-size:13px; font-family:var(--font-family-mono); }
.dialog-content .consent { color:var(--ink); font-size:14px; }
.dialog-content .consent input { width:18px; height:18px; min-height:18px; accent-color:var(--action); }
.account-surface button[disabled] { opacity:1; background:var(--color-control-disabled-bg); color:var(--color-text-secondary); border-color:var(--color-control-disabled-border); }
.account-surface [aria-busy="true"]>button[type="submit"] .lucide { opacity:.5; }
.text-button { min-height:36px; padding:6px 8px; }
.text-button:hover { background:var(--color-action-ghost-bg-hover); border-radius:var(--radius-control); }
.primary-button:active { background:var(--color-action-primary-bg-active); }
.secondary-button:active { background:var(--color-action-secondary-bg-active); }
.icon-button:hover { background:var(--color-action-ghost-bg-hover); }
.meeting-item.active { background:var(--color-bg-brand-subtle); box-shadow:inset 3px 0 var(--action); }
.toast { max-width:calc(100% - 32px); overflow-wrap:anywhere; background:var(--color-bg-inverse); line-height:1.5; transition-duration:var(--motion-duration-normal); }
dialog { box-shadow:var(--shadow-dialog); }
@media (max-width:1000px) { .invite-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:600px) {
  .account-surface input,.account-surface select { font-size:16px; }
  .auth-view { padding:24px 20px; }
  .auth-brand { gap:20px; margin-bottom:24px; }
  .auth-brand>span { padding-left:20px; font-size:18px; }
  .auth-panel { padding:0; }
  .auth-panel h1 { font-size:24px; }
  .invite-fields { grid-template-columns:1fr; }
  .user-row { padding:16px 0; }
  .user-actions { gap:8px; }
  .user-actions .secondary-button { min-height:44px; }
  .dialog-content { padding:20px; }
  .topbar { height:auto; min-height:62px; flex-wrap:wrap; gap:8px; padding-block:8px; }
  .brand { font-size:13px; gap:6px; }
  .brand-company { font-size:16px; }
  .account-menu { gap:4px; margin-left:auto; }
}
