/* Preserve the panel's visual identity while improving reading and keyboard use. */
:root { color-scheme: dark; }
body { font-size: 1rem; line-height: 1.5; }
button, input, select, textarea { font: inherit; }
button, a, input, select, textarea { scroll-margin: 1rem; }
:focus-visible { outline: 3px solid #4edbff !important; outline-offset: 3px; }
button:disabled { cursor: wait; opacity: .65; }
.cosmic-data-table-staff td, .cosmic-data-table-staff th,
.cosmic-data-table-staff td span, .cosmic-data-table-staff button,
.form-group label, .cosmic-input-wrapper label { font-size: .875rem !important; line-height: 1.5; }
.table-wrapper-internal { overflow-x: auto; }
.modal-content { max-height: 90dvh; overflow-y: auto; }
.modal-content input, .modal-content select, .modal-content textarea { min-height: 2.75rem; }
#authStatus { min-height: 3rem; }
#activeVotesContainer section { margin-block: 1rem; }
#activeVotesContainer button { margin: .25rem; min-height: 2.75rem; }
#usersTableBody td:nth-child(2) { overflow-wrap: anywhere; }
@media (max-width: 640px) {
  .modal-content { width: calc(100vw - 1rem) !important; margin: .5rem; padding: 1rem !important; box-sizing: border-box; }
  .input-group-flex { flex-wrap: wrap; }
  .input-group-flex > * { min-width: 0; max-width: 100%; }
  button { min-height: 2.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
