/* A native keyboard/touch control shared by public, authentication and workspace layouts. */
html[data-ap-theme-switching] *,html[data-ap-theme-switching] *::before,html[data-ap-theme-switching] *::after { transition:none !important; }
.ap-theme-control { display:inline-flex; align-items:center; gap:.5rem; margin:0; min-width:0; color:var(--ap-text,#172033); font-family:system-ui,-apple-system,"Segoe UI","Microsoft YaHei",sans-serif; font-size:.875rem; line-height:1.4; }
.ap-theme-control select { display:block; width:9.75rem; max-width:100%; min-width:0; min-height:44px; padding:.5rem .375rem; margin:0; border:1px solid var(--ap-control-border,#728196); border-radius:.375rem; background:var(--ap-surface,#fff); color:var(--ap-text,#172033); font:inherit; cursor:pointer; }
.ap-theme-control select:focus-visible { outline:3px solid var(--ap-brand,#1d4ed8); outline-offset:3px; }
.header-actions .ap-theme-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.header-actions .ap-theme-control select { width:8.75rem; }
.workspace-appearance { display:flex; justify-content:flex-end; padding:.5rem clamp(1rem,2vw,2rem); margin-left:var(--sidebar-width); min-height:3.75rem; }
.ap-workspace.collapsed .workspace-appearance { margin-left:var(--sidebar-collapsed-width); }
.ap-workspace .workspace-appearance + main { min-height:calc(100vh - 3.75rem); }
.ap-auth .auth-brand { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
@media(max-width:992px) {
  .ap-workspace .workspace-appearance { position:absolute; top:max(.75rem,env(safe-area-inset-top)); right:max(1rem,env(safe-area-inset-right)); z-index:1030; padding:0; margin:0; min-height:44px; }
  .ap-workspace .workspace-appearance + main { min-height:100vh; }
}
@media(max-width:560px) {
  .header-actions .ap-theme-control select { width:5.75rem; font-size:.875rem; }
  .ap-theme-control select { width:8.75rem; }
  .workspace-appearance .ap-theme-label,.ap-auth .ap-theme-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
}
