/* Shared responsive refinements for the operational application pages. */
.bk-brand-logo,
.bk-login-brand {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
}

.bk-logo-img {
  width: 164px;
  max-width: 100%;
  height: auto;
  display: block;
}

.bk-login-logo-img {
  width: 230px;
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

.bk-logo-mark {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  filter: drop-shadow(0 10px 18px rgba(37, 99, 235, 0.24));
}

.bk-logo-mark svg {
  width: 100%;
  height: 100%;
  display: block;
}

.bk-logo-text {
  display: inline-flex;
  flex-direction: column;
  line-height: 1.1;
  min-width: 0;
}

.bk-logo-name {
  color: var(--bs-heading-color);
  font-size: 1rem;
  font-weight: 800;
  letter-spacing: 0;
  white-space: nowrap;
}

.bk-logo-subtitle {
  color: var(--bs-body-color);
  font-size: 0.66rem;
  font-weight: 600;
  opacity: 0.7;
  text-transform: uppercase;
  letter-spacing: 0;
  white-space: nowrap;
}

.nav-header .bk-brand-logo {
  padding-left: 18px;
}

.nav-header .bk-logo-img {
  width: 150px;
}

.nav-header .bk-logo-mark {
  width: 40px;
  height: 40px;
}

.nav-header .bk-logo-name,
.nav-header .bk-logo-subtitle {
  color: #fff;
}

.nav-header .bk-logo-subtitle {
  opacity: 0.78;
}

.bk-login-brand {
  justify-content: center;
}

.bk-login-brand .bk-logo-mark {
  width: 58px;
  height: 58px;
}

.bk-login-brand .bk-logo-name {
  font-size: 1.35rem;
}

@media (max-width: 767.98px) {
  .content-body .container-fluid { padding-left: 15px; padding-right: 15px; }
  .content-body .page-title { padding-left: 15px; padding-right: 15px; }
  .content-body .card-header { align-items: stretch; }
  .content-body .card-header > .d-flex,
  .content-body .d-flex.flex-wrap { width: 100%; }
  .content-body .card-header input.form-control,
  .content-body .card-header select.form-select { min-width: 0 !important; width: 100%; }
  .content-body .table-responsive { -webkit-overflow-scrolling: touch; }
  .content-body table { white-space: nowrap; }
  .content-body table td:first-child,
  .content-body table th:first-child { padding-left: 16px; }
  .content-body table td:last-child,
  .content-body table th:last-child { padding-right: 16px; }
  .modal-dialog { margin: 10px; }
  .modal-footer { gap: 8px; }
  .modal-footer .btn { flex: 1 1 auto; margin: 0; }
  .page-title .breadcrumb { flex-wrap: wrap; }
}

@media (max-width: 420px) {
  .content-body h3 { font-size: 1.25rem; }
  .content-body .btn { white-space: normal; }
  .content-body .avatar-md { min-width: 42px; width: 42px; height: 42px; }
  .auth-form { padding-left: 18px; padding-right: 18px; }
}

/* Formulários em modal: o calendário fica dentro do formulário e nunca bloqueia os outros campos. */
.modal .flatpickr-wrapper {
  display: block;
  width: 100%;
}

.modal .flatpickr-calendar {
  z-index: 1080;
}

.modal-dialog-scrollable .modal-body {
  overscroll-behavior: contain;
}

/* O painel da plataforma tem navegação própria e não mistura funções dos clientes. */
.platform-admin-view #menu > li:not(.admin-navigation) {
  display: none !important;
}

.platform-admin-view #menu > li.admin-navigation {
  display: list-item !important;
}
