/* Escala administrativa para notebooks e desktops */
    @media (min-width:1101px) {
      body.admin-mode .header {
        position:sticky;
        top:0;
        z-index:1200;
      }

      .main.admin-wrapper.relatorio-full {
        width:100%;
        max-width:1680px;
        padding-left:clamp(14px, 1.2vw, 22px);
        padding-right:clamp(14px, 1.2vw, 22px);
      }

      .admin-dashboard-shell,
      .qas-shell {
        grid-template-columns:minmax(210px, 240px) minmax(0, 1fr);
        gap:clamp(14px, 1vw, 18px);
      }

      .admin-sidebar,
      .qas-sidebar {
        position:sticky;
        top:74px;
        align-self:start;
        min-height:calc(100dvh - 82px);
        max-height:calc(100dvh - 82px);
        padding:20px 14px 12px;
        overflow-y:auto;
      }

      .admin-sidebar-kicker,
      .qas-sidebar-kicker {
        font-size:10px;
      }

      .admin-sidebar-title,
      .qas-sidebar-title {
        font-size:17px;
      }

      .admin-sidebar-link,
      .qas-sidebar-link {
        min-height:40px;
        padding:9px 11px;
        font-size:clamp(11px, .72vw, 13px);
      }

      .admin-sidebar-icon,
      .qas-sidebar-link .admin-sidebar-icon {
        width:19px;
        font-size:13px;
      }

      .admin-report-header,
      .qas-header {
        position:sticky;
        top:70px;
        z-index:700;
        min-height:58px;
        margin-bottom:12px;
        padding:10px 4px;
        background:rgba(245,247,251,.96);
        backdrop-filter:blur(8px);
      }

      .admin-report-title h1,
      .qas-title h2 {
        font-size:clamp(22px, 1.35vw, 25px);
      }

      .admin-report-title p,
      .qas-title p {
        font-size:12px;
      }

      .admin-profile-badge {
        padding:8px 12px;
        font-size:11px;
      }

      .dashboard-cards {
        gap:12px;
        margin-bottom:12px;
      }

      .dashboard-card {
        min-height:98px;
        padding:16px 50px 14px 15px;
      }

      .dashboard-card-label,
      .qas-metric-label {
        font-size:10px;
      }

      .dashboard-card-value,
      .qas-metric-value {
        font-size:25px;
      }

      .dashboard-card-detail,
      .qas-metric-detail {
        font-size:10px;
      }

      .dashboard-overview,
      .qas-grid {
        gap:12px;
      }

      .dashboard-overview-card,
      .admin-records-panel,
      .qas-card {
        padding:15px 16px;
      }

      .dashboard-overview-title,
      .qas-card-title {
        font-size:15px;
      }

      .dashboard-overview-desc,
      .qas-card-desc,
      .admin-table-heading .section-desc {
        font-size:11px;
      }

      .dashboard-overview-link,
      .recent-activity-row,
      .operation-label,
      .operation-value {
        font-size:11px;
      }

      .recent-activity-head,
      .recent-activity-person small,
      .recent-activity-plan,
      .recent-activity-status,
      .operation-detail,
      .operation-updated {
        font-size:10px;
      }

      .report-filters {
        gap:11px;
        padding:14px 15px;
        margin-bottom:12px;
      }

      .report-filters label,
      .report-results-count,
      .admin-dashboard-content .table thead th {
        font-size:10px;
      }

      .report-filters .form-control,
      .report-filters .form-select {
        min-height:38px;
        font-size:12px;
      }

      .report-filter-actions .btn,
      .admin-table-actions .btn,
      .qas-header-actions .btn {
        min-height:38px;
        padding:7px 12px;
        font-size:11px;
      }

      .admin-table-heading .section-title {
        font-size:15px;
      }

      .admin-dashboard-content .table {
        font-size:11px;
      }

      .admin-dashboard-content .table thead th,
      .admin-dashboard-content .table tbody td {
        padding:10px 9px;
      }

      .qas-header-actions .btn {
        min-height:40px;
      }

      .qas-tabs {
        margin-bottom:12px;
      }

      .qas-tab {
        min-height:43px;
        padding:10px 15px;
        font-size:12px;
      }

      .qas-metrics {
        gap:11px;
        margin-bottom:12px;
      }

      .qas-metric {
        min-height:96px;
        padding:15px 42px 13px 14px;
      }

      .qas-metric-value.is-small {
        font-size:14px;
      }

      .qas-status,
      .qas-table th,
      .qas-table-actions .btn,
      .qas-test-warning,
      .qas-feed-detail,
      .qas-feed-time,
      .qas-live-time,
      .qas-level {
        font-size:10px;
      }

      .qas-table {
        font-size:11px;
      }

      .qas-table th,
      .qas-table td {
        padding:10px 9px;
      }

      .qas-table-actions .btn {
        min-height:34px;
        padding:6px 9px;
      }

      .qas-test-name,
      .qas-feed-title,
      .qas-trace-item strong,
      .qas-live-state,
      .qas-live-step,
      .qas-live-message {
        font-size:12px;
      }

      .qas-danger-note,
      .qas-live-detail,
      .qas-trace-item span {
        font-size:11px;
      }

      .qas-live-bar {
        padding:13px 15px;
      }

      .qas-live-filters .form-select,
      .qas-live-filters .form-control,
      .qas-live-filters .btn,
      .qas-log-filter .form-select,
      .qas-log-filter .btn {
        min-height:40px;
        font-size:12px;
      }
    }

    @media (min-width:1600px) {
      .admin-dashboard-shell,
      .qas-shell {
        grid-template-columns:250px minmax(0, 1fr);
      }

      .admin-sidebar-link,
      .qas-sidebar-link {
        font-size:13px;
      }
    }

/* LAYOUT_ADMIN_FIXO_FINAL */
@media (min-width: 1101px) {
  html,
  body.admin-mode {
    width: 100%;
    height: 100%;
    overflow: hidden;
  }

  body.admin-mode .main.admin-wrapper.relatorio-full {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: 100vw;
    max-width: none !important;
    height: 100dvh;
    margin: 0 !important;
    padding: 8px 16px 10px !important;
    overflow: hidden;
  }

  body.admin-mode .main.admin-wrapper.relatorio-full > .header {
    position: relative;
    flex: 0 0 auto;
    width: 100%;
    min-height: 70px;
    margin: 0 0 8px !important;
    z-index: 1200;
  }

  body.admin-mode #appView:not(.d-none) {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
  }

  body.admin-mode #relatorioView:not(.d-none),
  body.admin-mode #devAdminHome:not(.d-none) {
    display: block;
    flex: 1 1 auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    overflow: hidden;
  }

  body.admin-mode .admin-dashboard-shell,
  body.admin-mode .qas-shell {
    display: grid;
    width: 100%;
    max-width: none;
    height: 100%;
    min-height: 0;
    grid-template-columns: clamp(220px, 14vw, 255px) minmax(0, 1fr);
    gap: 14px;
    align-items: stretch;
  }

  body.admin-mode .admin-sidebar,
  body.admin-mode .qas-sidebar {
    position: relative;
    top: auto;
    width: 100%;
    height: 100%;
    min-height: 0;
    max-height: none;
    overflow-x: hidden;
    overflow-y: auto;
    scrollbar-width: thin;
  }

  body.admin-mode .admin-dashboard-content,
  body.admin-mode .qas-main {
    width: 100%;
    min-width: 0;
    height: 100%;
    min-height: 0;
    padding-right: 4px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  body.admin-mode .admin-report-header,
  body.admin-mode .qas-header {
    position: sticky;
    top: 0;
    z-index: 700;
    margin-top: 0;
    background: rgba(245, 247, 251, 0.97);
    backdrop-filter: blur(8px);
  }

  body.admin-mode .dashboard-cards {
    grid-template-columns: repeat(5, minmax(145px, 1fr));
  }
}

@media (min-width: 1101px) and (max-width: 1450px) {
  body.admin-mode .main.admin-wrapper.relatorio-full {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.admin-mode .admin-dashboard-shell,
  body.admin-mode .qas-shell {
    grid-template-columns: 215px minmax(0, 1fr);
    gap: 10px;
  }

  body.admin-mode .admin-sidebar-link,
  body.admin-mode .qas-sidebar-link {
    min-height: 37px;
    padding: 8px 9px;
    font-size: 11px;
  }
}


/* ROLAGEM_ADMIN_CORRIGIDA */
@media (min-width: 1101px) {
  html,
  body.admin-mode:not(.admin-login-active) {
    width: 100%;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.admin-mode:not(.admin-login-active) .main.admin-wrapper {
    display: flex !important;
    flex-direction: column !important;
    width: 100%;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: 100dvh !important;
    padding-bottom: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box;
  }

  body.admin-mode:not(.admin-login-active) .header {
    position: relative !important;
    top: auto !important;
    z-index: 1200;
    flex: 0 0 auto;
  }

  body.admin-mode:not(.admin-login-active) #appView:not(.d-none) {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    padding-bottom: 35px;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-shell,
  body.admin-mode:not(.admin-login-active) .qas-shell {
    height: auto !important;
    min-height: 100%;
    max-height: none !important;
    overflow: visible !important;
    align-items: start;
  }

  body.admin-mode:not(.admin-login-active) .admin-sidebar,
  body.admin-mode:not(.admin-login-active) .qas-sidebar {
    position: sticky !important;
    top: 10px !important;
    align-self: start;
    max-height: calc(100dvh - 125px);
    overflow-x: hidden;
    overflow-y: auto;
  }

  body.admin-mode:not(.admin-login-active) .admin-report-header,
  body.admin-mode:not(.admin-login-active) .qas-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 700;
  }

  body.admin-mode:not(.admin-login-active) #cadastroView,
  body.admin-mode:not(.admin-login-active) #relatorioView,
  body.admin-mode:not(.admin-login-active) .admin-dashboard-content,
  body.admin-mode:not(.admin-login-active) .admin-content-panel,
  body.admin-mode:not(.admin-login-active) .form-card {
    height: auto !important;
    min-height: 0;
    max-height: none !important;
    overflow: visible !important;
  }
}

@media (max-width: 1100px) {
  html,
  body.admin-mode:not(.admin-login-active),
  body.admin-mode:not(.admin-login-active) .main.admin-wrapper,
  body.admin-mode:not(.admin-login-active) #appView {
    height: auto !important;
    min-height: 100%;
    max-height: none !important;
    overflow-y: visible !important;
  }
}


/* CABECALHO_INTERNO_PADRAO_PORTAL_TI */
.admin-header-context,
.admin-header-svg-filters {
  display: none;
}

body.admin-mode:not(.admin-login-active) .header {
  display: flex;
  flex: 0 0 auto;
  align-items: stretch;
  min-height: 76px;
  margin: 0 0 14px;
  padding: 0;
  overflow: hidden;
  border: 0;
  border-top: 3px solid #ed1c24;
  border-radius: 0 0 10px 10px;
  color: #ffffff;
  background:
    linear-gradient(90deg, #082846 0%, #0a3155 62%, #0d3c65 100%);
  box-shadow: 0 7px 20px rgba(4, 33, 61, 0.18);
}

body.admin-mode:not(.admin-login-active) .header::after {
  display: none;
}

body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  display: flex;
  align-self: stretch;
  justify-content: center;
  width: 215px;
  min-width: 215px;
  padding: 10px 23px;
  border-right: 1px solid rgba(255, 255, 255, 0.11);
  background: rgba(2, 26, 50, 0.38);
}

body.admin-mode:not(.admin-login-active) .header .logo {
  width: 155px;
  max-height: 57px;
  object-fit: contain;
  filter: url("#adminBrandWhiteRed");
}

body.admin-mode:not(.admin-login-active) .admin-header-context {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  justify-content: center;
  min-width: 0;
  padding: 10px 24px;
}

body.admin-mode:not(.admin-login-active) .admin-header-context span {
  margin-bottom: 2px;
  color: #74b9ef;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.13em;
}

body.admin-mode:not(.admin-login-active) .admin-header-context strong {
  overflow: hidden;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.2;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.admin-mode:not(.admin-login-active) .admin-header-context small {
  margin-top: 2px;
  overflow: hidden;
  color: #b8cce0;
  font-size: 10px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.admin-mode:not(.admin-login-active) .header-title {
  align-self: stretch;
  justify-content: center;
  min-width: 205px;
  padding: 9px 20px;
  border-left: 1px solid rgba(255, 255, 255, 0.11);
  color: #ffffff;
  background: rgba(2, 25, 47, 0.18);
}

body.admin-mode:not(.admin-login-active) .header-title .header-badge {
  border-color: rgba(105, 190, 255, 0.45);
  color: #8ed0ff;
  background: rgba(10, 80, 135, 0.35);
}

body.admin-mode:not(.admin-login-active) .header-title p {
  margin: 1px 0 0;
  color: #d3e2ef;
  font-size: 10px;
}

body.admin-mode:not(.admin-login-active) .header-title > span:last-child {
  color: #89a8c3 !important;
  font-size: 9px !important;
}

@media (max-width: 900px) {
  body.admin-mode:not(.admin-login-active) .header {
    min-height: 67px;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 150px;
    min-width: 150px;
    padding: 8px 16px;
  }

  body.admin-mode:not(.admin-login-active) .header .logo {
    width: 118px;
  }

  body.admin-mode:not(.admin-login-active) .admin-header-context {
    padding: 8px 14px;
  }

  body.admin-mode:not(.admin-login-active) .admin-header-context span,
  body.admin-mode:not(.admin-login-active) .admin-header-context small {
    display: none;
  }

  body.admin-mode:not(.admin-login-active) .admin-header-context strong {
    font-size: 15px;
  }

  body.admin-mode:not(.admin-login-active) .header-title {
    min-width: 150px;
    padding: 7px 12px;
  }

  body.admin-mode:not(.admin-login-active) .header-title p,
  body.admin-mode:not(.admin-login-active) .header-title > span:last-child {
    display: none;
  }
}

@media (max-width: 620px) {
  body.admin-mode:not(.admin-login-active) .header {
    min-height: 59px;
    border-radius: 0;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 120px;
    min-width: 120px;
    padding: 7px 12px;
  }

  body.admin-mode:not(.admin-login-active) .header .logo {
    width: 96px;
  }

  body.admin-mode:not(.admin-login-active) .admin-header-context {
    padding: 7px 10px;
  }

  body.admin-mode:not(.admin-login-active) .admin-header-context strong {
    font-size: 13px;
  }

  body.admin-mode:not(.admin-login-active) .header-title {
    min-width: auto;
    padding: 7px 9px;
  }

  body.admin-mode:not(.admin-login-active) .header-title .header-badge {
    padding: 4px 6px;
    font-size: 8px;
  }
}


/* ROLAGEM_DEFINITIVA_TODOS_PERFIS */
html {
  width: 100% !important;
  height: auto !important;
  min-height: 100% !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.admin-mode:not(.admin-login-active),
body.public-mode:not(.token-access-active) {
  width: 100% !important;
  height: auto !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

body.admin-mode:not(.admin-login-active) .main.admin-wrapper,
body.public-mode:not(.token-access-active) .main.public-wrapper {
  height: auto !important;
  min-height: 100vh !important;
  max-height: none !important;
  overflow: visible !important;
}

body.admin-mode:not(.admin-login-active) #appView:not(.d-none),
body.public-mode:not(.token-access-active) #appView:not(.d-none) {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  padding-bottom: 40px !important;
  overflow: visible !important;
}

body.admin-mode:not(.admin-login-active) #cadastroView,
body.admin-mode:not(.admin-login-active) #relatorioView,
body.admin-mode:not(.admin-login-active) .admin-dashboard-content,
body.admin-mode:not(.admin-login-active) .admin-content-panel,
body.admin-mode:not(.admin-login-active) .form-card,
body.public-mode:not(.token-access-active) #cadastroView,
body.public-mode:not(.token-access-active) .form-card {
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  overflow: visible !important;
}

@media (min-width: 1101px) {
  body.admin-mode:not(.admin-login-active) .header {
    position: sticky !important;
    top: 0 !important;
    z-index: 1200 !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-shell,
  body.admin-mode:not(.admin-login-active) .qas-shell {
    height: auto !important;
    min-height: calc(100vh - 108px) !important;
    max-height: none !important;
    overflow: visible !important;
    align-items: start !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-sidebar,
  body.admin-mode:not(.admin-login-active) .qas-sidebar {
    position: sticky !important;
    top: 108px !important;
    align-self: start !important;
    height: calc(100vh - 118px) !important;
    min-height: calc(100vh - 118px) !important;
    max-height: calc(100vh - 118px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-report-header,
  body.admin-mode:not(.admin-login-active) .qas-header {
    position: sticky !important;
    top: 94px !important;
    z-index: 700 !important;
  }
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .admin-sidebar,
  body.admin-mode:not(.admin-login-active) .qas-sidebar {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }
}


/* LOGO_CABECALHO_SEM_BLOCO */
.logo-admin-portal {
  display: none;
}

body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-width: 240px !important;
  padding: 0 20px !important;
  border-right: 1px solid rgba(255, 255, 255, 0.12);
  background: transparent !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-public {
  display: none !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  display: block !important;
  width: 205px !important;
  height: 78px !important;
  max-height: 78px !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 180px !important;
    min-width: 180px !important;
    padding: 0 12px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 155px !important;
    height: 65px !important;
  }
}

@media (max-width: 620px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 125px !important;
    min-width: 125px !important;
    padding: 0 7px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 112px !important;
    height: 57px !important;
  }
}


/* CORRECAO_VISUAL_EMERGENCIAL_20260813 */
html,
body {
  margin: 0 !important;
  padding: 0 !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

body.admin-mode:not(.admin-login-active) .main.admin-wrapper {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 8px !important;
  box-sizing: border-box !important;
}

body.admin-mode:not(.admin-login-active) .header {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 14px !important;
  box-sizing: border-box !important;
}

body.admin-mode:not(.admin-login-active) #appView,
body.admin-mode:not(.admin-login-active) .admin-dashboard-shell,
body.admin-mode:not(.admin-login-active) .qas-shell,
body.admin-mode:not(.admin-login-active) .admin-dashboard-content {
  position: relative !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.admin-mode:not(.admin-login-active) .admin-dashboard-shell,
body.admin-mode:not(.admin-login-active) .qas-shell {
  grid-template-columns: 240px minmax(0, 1fr) !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-width: 240px !important;
  padding: 0 14px !important;
  overflow: hidden !important;
  background: transparent !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-public {
  display: none !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  display: block !important;
  width: 205px !important;
  height: 78px !important;
  max-width: 205px !important;
  max-height: 78px !important;
  margin: 0 !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .main.admin-wrapper {
    padding: 0 !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-shell,
  body.admin-mode:not(.admin-login-active) .qas-shell {
    grid-template-columns: 1fr !important;
  }
}


/* LOGO_VETORIAL_TRANSPARENTE_FINAL */
body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  width: 240px !important;
  min-width: 240px !important;
  padding: 0 16px !important;
  overflow: hidden !important;
  border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: #082846 !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  display: block !important;
  width: 208px !important;
  height: 80px !important;
  max-width: 208px !important;
  max-height: 80px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 180px !important;
    min-width: 180px !important;
    padding: 0 10px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 158px !important;
    height: 66px !important;
  }
}

@media (max-width: 620px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 125px !important;
    min-width: 125px !important;
    padding: 0 6px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 113px !important;
    height: 57px !important;
  }
}


/* LOGO_OFICIAL_EXATO_20260813 */
body.admin-mode:not(.admin-login-active) .header {
  background: linear-gradient(
    90deg,
    #021a40 0%,
    #09396a 28%,
    #0a3155 65%,
    #0d3c65 100%
  ) !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  display: flex !important;
  align-items: stretch !important;
  justify-content: stretch !important;
  width: 240px !important;
  min-width: 240px !important;
  height: 91px !important;
  padding: 0 !important;
  overflow: hidden !important;
  border-right: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: #021a40 !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-public {
  display: none !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  display: block !important;
  width: 240px !important;
  height: 91px !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: cover !important;
  object-position: center !important;
  filter: none !important;
  background: #021a40 !important;
  box-shadow: none !important;
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap,
  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 180px !important;
    min-width: 180px !important;
    height: 71px !important;
  }
}

@media (max-width: 620px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap,
  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 125px !important;
    min-width: 125px !important;
    height: 57px !important;
  }
}


/* LOGO_TRANSPARENTE_SEM_BORDA_FINAL */
body.admin-mode:not(.admin-login-active) .header {
  border-right: 0 !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  background: #082846 !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-width: 240px !important;
  padding: 8px 18px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-right: 0 !important;
  background: #082846 !important;
  box-shadow: none !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  display: block !important;
  width: 205px !important;
  height: 76px !important;
  max-width: 205px !important;
  max-height: 76px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.admin-mode:not(.admin-login-active) .admin-header-context,
body.admin-mode:not(.admin-login-active) .header-title {
  border: 0 !important;
  background: #082846 !important;
}

@media (max-width: 1100px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 180px !important;
    min-width: 180px !important;
    padding: 6px 12px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 155px !important;
    height: 63px !important;
  }
}

@media (max-width: 620px) {
  body.admin-mode:not(.admin-login-active) .header .logo-wrap {
    width: 125px !important;
    min-width: 125px !important;
    padding: 5px 7px !important;
  }

  body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
    width: 111px !important;
    height: 53px !important;
  }
}


/* CABECALHO_PUBLICO_PLANO_III_AZUL */
body.public-mode.public-form-active {
  background: #f4f7fb !important;
}

body.public-mode.public-form-active .main.public-wrapper {
  width: 100% !important;
  max-width: 1280px !important;
  min-height: 100vh !important;
  margin: 0 auto !important;
  padding: 0 18px 36px !important;
  background: transparent !important;
}

body.public-mode.public-form-active .header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1200 !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 94px !important;
  margin: 0 0 18px !important;
  padding: 0 22px !important;
  overflow: hidden !important;
  border: 0 !important;
  border-top: 3px solid #ed1c24 !important;
  border-radius: 0 0 10px 10px !important;
  color: #ffffff !important;
  background: #082846 !important;
  box-shadow: 0 7px 20px rgba(4, 33, 61, 0.18) !important;
  box-sizing: border-box !important;
}

/* Alinhamento final: cabeçalho e formulário usam a mesma largura. */
body.public-mode.public-form-active .main.public-wrapper,
body.admin-mode:not(.admin-login-active) #cadastroView {
  width: min(calc(100% - 36px), 1280px) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

body.public-mode.public-form-active .header,
body.admin-mode:not(.admin-login-active):has(#cadastroView:not(.d-none)) .header {
  width: min(calc(100% - 36px), 1280px) !important;
  max-width: 1280px !important;
  margin-right: auto !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
}

body.admin-mode:not(.admin-login-active) .header .logo-admin-portal {
  object-fit: cover !important;
  object-position: center !important;
}

@media (max-width: 700px) {
  body.public-mode.public-form-active .main.public-wrapper,
  body.admin-mode:not(.admin-login-active) #cadastroView,
  body.public-mode.public-form-active .header,
  body.admin-mode:not(.admin-login-active):has(#cadastroView:not(.d-none)) .header {
    width: 100% !important;
    max-width: 100% !important;
  }
}

body.public-mode.public-form-active .header::after {
  display: none !important;
}

body.public-mode.public-form-active .header .logo-wrap {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 240px !important;
  min-width: 240px !important;
  padding: 8px 18px !important;
  border: 0 !important;
  background: #082846 !important;
  box-shadow: none !important;
}

body.public-mode.public-form-active .header .logo-public {
  display: none !important;
}

body.public-mode.public-form-active .header .logo-admin-portal {
  display: block !important;
  width: 205px !important;
  height: 76px !important;
  max-width: 205px !important;
  max-height: 76px !important;
  object-fit: contain !important;
  filter: none !important;
  background: transparent !important;
}

body.public-mode.public-form-active .admin-header-context {
  display: none !important;
}

body.public-mode.public-form-active .header-title {
  flex: 1 1 auto !important;
  align-items: flex-end !important;
  justify-content: center !important;
  padding: 12px 0 !important;
  border: 0 !important;
  color: #ffffff !important;
  background: #082846 !important;
}

body.public-mode.public-form-active .header-title .header-badge {
  border: 1px solid rgba(105, 190, 255, 0.45) !important;
  color: #8ed0ff !important;
  background: rgba(10, 80, 135, 0.35) !important;
}

body.public-mode.public-form-active .header-title p {
  color: #d3e2ef !important;
}

@media (max-width: 700px) {
  body.public-mode.public-form-active .main.public-wrapper {
    padding: 0 12px 30px !important;
  }

  body.public-mode.public-form-active .header {
    min-height: 70px !important;
    padding: 0 10px !important;
    border-radius: 0 !important;
  }

  body.public-mode.public-form-active .header .logo-wrap {
    width: 150px !important;
    min-width: 150px !important;
    padding: 6px 8px !important;
  }

  body.public-mode.public-form-active .header .logo-admin-portal {
    width: 138px !important;
    height: 58px !important;
  }
}


/* CABECALHO_FORMULARIO_LIMITADO_FINAL */
body.public-mode.public-form-active .main.public-wrapper {
  width: calc(100% - 36px) !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 0 0 36px !important;
}

body.public-mode.public-form-active .header {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 18px auto !important;
  border-radius: 10px !important;
}

@media (max-width: 700px) {
  body.public-mode.public-form-active .main.public-wrapper {
    width: 100% !important;
    padding: 0 12px 30px !important;
  }

  body.public-mode.public-form-active .header {
    width: 100% !important;
    margin: 0 auto 12px !important;
    border-radius: 0 0 9px 9px !important;
  }
}

/* MOBILE_ADMIN_FLOW_START */
@media (max-width: 768px) {
  html,
  body {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: clip !important;
    overscroll-behavior-x: none !important;
  }

  body.admin-mode:not(.admin-login-active) {
    height: auto !important;
    min-height: 100dvh !important;
    overflow-x: clip !important;
    overflow-y: auto !important;
    touch-action: pan-y !important;
  }

  body.admin-mode:not(.admin-login-active) .main.admin-wrapper {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.admin-mode:not(.admin-login-active) #appView:not(.d-none) {
    display: block !important;
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 8px 24px !important;
    transform: none !important;
  }

  body.admin-mode:not(.admin-login-active) #devAdminHome:not(.d-none),
  body.admin-mode:not(.admin-login-active) #relatorioView:not(.d-none) {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding-top: 0 !important;
    transform: none !important;
  }
}
/* MOBILE_ADMIN_FLOW_END */

/* MOBILE_ADMIN_DASHBOARD_POSITION_START */
@media (max-width: 768px) {
  body.admin-mode:not(.admin-login-active) #relatorioView.report-card {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-shell {
    display: block !important;
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  /* O menu mobile deve ficar fora do fluxo. Quando ele vira `relative`,
     permanece invisivel a esquerda, mas ocupa a altura inteira e empurra
     o dashboard para baixo. */
  body.admin-mode:not(.admin-login-active) .admin-sidebar {
    position: fixed !important;
    z-index: 120 !important;
    inset: 0 auto 0 0 !important;
    top: 0 !important;
    width: min(84vw, 320px) !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translateX(-105%) !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-shell.menu-open .admin-sidebar {
    transform: translateX(0) !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-sidebar-overlay {
    position: fixed !important;
    inset: 0 !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-dashboard-content {
    display: block !important;
    position: static !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    translate: none !important;
  }

  body.admin-mode:not(.admin-login-active) .admin-report-header {
    position: static !important;
    top: auto !important;
    margin-top: 0 !important;
  }
}
/* MOBILE_ADMIN_DASHBOARD_POSITION_END */
