/* mupio: drobne style ponad Bootstrap 5.3 (docs/10 UI-01, UI-02, UI-05). */
html, body { max-width: 100%; overflow-x: hidden; }
body { overflow-wrap: break-word; }
.mupio-sidebar { min-height: calc(100vh - 56px); }
.mupio-nav-icon { display: inline-block; width: 1.5rem; text-align: center; }

/* UI-05: oddech w tabelach, wiersz min. 48 px. */
.table > :not(caption) > * > * { padding-top: .75rem; padding-bottom: .75rem; }
.table tbody tr { min-height: 48px; }
.table td, .table th { overflow-wrap: break-word; hyphens: manual; }
.table-responsive { overflow-y: visible; }

/* Przyciski dotykowe 48x48 na mobile. */
.mupio-touch { min-width: 48px; min-height: 48px; }
.mupio-touch-row { min-height: 48px; }
@media (min-width: 992px) {
  .mupio-touch { min-width: 0; min-height: 0; }
}

/* Formularze allauth (pola renderowane bez klas Bootstrap). */
.mupio-form input:not([type=checkbox]):not([type=radio]):not([type=hidden]),
.mupio-form select, .mupio-form textarea {
  display: block; width: 100%; min-height: 48px; padding: .375rem .75rem;
  color: var(--bs-body-color); background-color: var(--bs-body-bg);
  border: var(--bs-border-width) solid var(--bs-border-color); border-radius: var(--bs-border-radius);
}
.mupio-form input[type=checkbox] { width: 1.25rem; height: 1.25rem; margin-right: .5rem; vertical-align: middle; }
.mupio-form .btn { min-height: 48px; }
.mupio-auth-card { max-width: 440px; margin: 0 auto; }
form .mupio-busy, [aria-busy=true] { opacity: .7; }
h1 .badge, h2 .badge { font-size: .5em; vertical-align: middle; }
