/*
 * Padrão visual compartilhado do portal Master.
 * Consolida as ações superiores em uma única barra e aplica aos filtros o
 * mesmo tratamento dos formulários novos: rótulo fora do controle.
 */

.layout > .content .topbar {
  flex-wrap: wrap !important;
}

.layout > .content .topbar > :first-child {
  min-width: min(240px, 100%) !important;
}

.layout > .content .topbar-action-bar {
  display: flex !important;
  flex: 1 1 540px !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 0 !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 5px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #078ed1 0%, #0b78c6 100%) !important;
  box-shadow: 0 8px 20px rgba(10, 102, 174, 0.14) !important;
  scrollbar-width: thin;
  scrollbar-color: rgba(255, 255, 255, 0.35) transparent;
}

.layout > .content .topbar-action-bar > form {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: stretch !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.layout > .content .topbar-action-bar :where(.btn, button.btn, input[type="submit"], input[type="button"]) {
  flex: 0 0 auto !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 9px 13px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #ffffff !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  max-width: 100% !important;
  transform: none !important;
}

.layout > .content .topbar-action-bar :where(.btn, button.btn, input[type="submit"], input[type="button"]):hover,
.layout > .content .topbar-action-bar :where(.btn, button.btn, input[type="submit"], input[type="button"]):focus-visible {
  border: 0 !important;
  background: rgba(255, 255, 255, 0.15) !important;
  box-shadow: none !important;
  color: #ffffff !important;
}

.layout > .content .topbar-action-bar :where(.btn, button.btn, input[type="submit"], input[type="button"]):disabled {
  background: transparent !important;
  color: rgba(255, 255, 255, 0.55) !important;
}

/* Filtros e formulários: o contêiner deixa de ser a moldura do campo. */
.layout > .content .master-form-surface .field {
  gap: 6px !important;
  min-width: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.layout > .content .master-form-surface .field:focus-within {
  border: 0 !important;
  box-shadow: none !important;
}

.layout > .content .master-form-surface .field > span:first-child,
.layout > .content .master-form-surface label.field > span:first-child {
  display: block !important;
  min-height: 0 !important;
  padding: 0 2px !important;
  border: 0 !important;
  background: transparent !important;
  color: #24425f !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

.layout > .content .master-form-surface .field :where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  select,
  textarea
) {
  width: 100% !important;
  min-height: 42px !important;
  padding: 9px 11px !important;
  border: 1px solid #b9ccdc !important;
  border-radius: 9px !important;
  background: #ffffff !important;
  color: #152b40 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  box-shadow: inset 0 1px 2px rgba(23, 65, 108, 0.03) !important;
}

.layout > .content .master-form-surface .field :where(
  input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
  select,
  textarea
):focus {
  outline: none !important;
  border-color: #118fd2 !important;
  box-shadow: 0 0 0 3px rgba(17, 143, 210, 0.15) !important;
}

.layout > .content .master-filter-card {
  border: 0 !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(19, 77, 111, 0.08) !important;
}

.layout > .content .master-filter-card .toolbar {
  align-items: end !important;
  margin: 0 !important;
}

.layout > .content .master-filter-surface .checkbox-item {
  min-height: 42px !important;
  padding: 9px 12px !important;
  border: 1px solid #d6e3ed !important;
  border-radius: 9px !important;
  background: #f7fbfe !important;
}

@media screen and (max-width: 900px) {
  .layout > .content .topbar {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .layout > .content .topbar > :first-child,
  .layout > .content .topbar-action-bar {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  .layout > .content .topbar-action-bar {
    justify-content: flex-start !important;
  }
}

