/* Ajustes pontuais dos filtros, sem alterar a identidade visual vigente. */
.checklist-filtros-unificados {
  display:grid !important;
  grid-template-columns:170px 190px 122px 122px 88px 72px;
  align-items:end !important;
  justify-content:start !important;
  gap:8px !important;
}
.checklist-filtros-unificados > select { width:100% !important; min-width:0 !important; }
.checklist-data-campo { display:flex; min-width:0; flex-direction:column; gap:4px; }
.checklist-data-campo > span { color:var(--text-muted); font-size:9px; font-weight:800; text-transform:uppercase; }
.checklist-data-campo input[type="date"] { width:122px !important; min-width:0 !important; padding-inline:8px !important; }
.checklist-limpar-unico { white-space:nowrap; padding-inline:9px !important; }

@media (max-width:900px) {
  .checklist-filtros-unificados { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .checklist-data-campo input[type="date"] { width:100% !important; }
}
@media (max-width:560px) {
  .checklist-filtros-unificados { grid-template-columns:1fr; }
}

/* Compact desktop: notebooks de 15 polegadas e janelas entre tablet e desktop. */
@media (min-width: 901px) and (max-width: 1440px) {
  :root {
    --cd-compact-control: 36px;
    --cd-compact-gap: 8px;
  }

  .content {
    padding: 12px 14px 22px !important;
  }
  .pagina {
    gap: 10px !important;
  }
  .pagina.ativa > .page-title {
    margin-bottom: 8px !important;
    font-size: 12px !important;
  }
  .pagina.ativa .card {
    padding: 14px !important;
    border-radius: 14px !important;
  }
  .pagina.ativa .card + .card {
    margin-top: 10px !important;
  }
  .pagina.ativa .card-title {
    font-size: 13px !important;
    line-height: 1.2 !important;
  }
  .pagina.ativa .form-row,
  .pagina.ativa [class*="-filters"],
  .pagina.ativa [class*="-filtros"] {
    gap: var(--cd-compact-gap) !important;
  }
  .pagina.ativa input:not([type="checkbox"]):not([type="radio"]),
  .pagina.ativa select,
  .pagina.ativa textarea,
  .pagina.ativa .btn {
    min-height: var(--cd-compact-control) !important;
    padding: 7px 10px !important;
    border-radius: 9px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
  }
  .pagina.ativa .campo-label,
  .pagina.ativa label > span:first-child {
    font-size: 10px !important;
  }

  /* Checklists: nomes curtos nao precisam ocupar metade do painel. */
  #cardChecklistsLancados > .checklist-filtros-unificados {
    display: grid !important;
    grid-template-columns:170px 190px 122px 122px 88px 72px !important;
    align-items: end !important;
    justify-content: start !important;
  }

  /* Topo uniforme: todos os controles compartilham a mesma altura e eixo. */
  .topbar {
    display:flex !important;
    align-items:center !important;
    min-height:50px !important;
    height:50px !important;
    padding:4px 10px !important;
    gap:5px !important;
  }
  .topbar-main { display:flex !important; align-items:center !important; flex:1 1 auto !important; min-width:0 !important; gap:4px !important; }
  .topbar-main .mobile-menu-btn { display:none !important; }
  .topbar-main .theme-switcher { width:126px !important; min-width:112px !important; height:38px !important; }
  .topbar-main .theme-switcher select { height:38px !important; min-height:38px !important; padding:5px 25px 5px 9px !important; font-size:10px !important; }
  .topbar-clock,.topbar-business-day { width:86px !important; min-width:86px !important; height:38px !important; min-height:38px !important; padding:4px 6px !important; }
  .topbar-info-label,.topbar-user-label { font-size:6.5px !important; letter-spacing:.35px !important; }
  .topbar-clock-time,.topbar-business-day-date { font-size:15px !important; }
  #topbarVersionBadge { min-height:16px !important; padding:2px 5px !important; font-size:6.5px !important; }
  .topbar-store { width:210px !important; min-width:180px !important; max-width:220px !important; height:40px !important; min-height:40px !important; padding:3px 5px 3px 9px !important; gap:5px !important; }
  .topbar-store-name { font-size:11px !important; }
  .topbar-store-switch { min-height:32px !important; height:32px !important; padding:5px 8px !important; font-size:9px !important; }
  .topbar-actions { display:flex !important; align-items:center !important; flex:0 0 auto !important; gap:4px !important; min-width:0 !important; }
  #topbarUserInfo { display:flex !important; width:116px !important; min-width:116px !important; max-width:116px !important; height:40px !important; min-height:40px !important; padding:0 !important; }
  #topbarUserInfo[hidden] { display:none !important; }
  .account-menu-trigger { width:100% !important; height:40px !important; min-height:40px !important; padding:3px 6px 3px 4px !important; gap:5px !important; border-radius:10px !important; }
  .account-avatar { width:32px !important; height:32px !important; flex:0 0 32px !important; font-size:12px !important; }
  .account-menu-trigger .topbar-user-name { display:block !important; flex:1 1 auto !important; max-width:62px !important; font-size:10px !important; overflow:hidden !important; text-overflow:ellipsis !important; white-space:nowrap !important; }
  .account-menu-trigger > span[aria-hidden="true"] { font-size:8px !important; }
  .topbar-actions .notification-btn { width:38px !important; min-width:38px !important; height:38px !important; min-height:38px !important; padding:8px !important; }
  #cardChecklistsLancados > .checklist-filtros-unificados select {
    width: 100% !important;
    flex: none !important;
  }
  #cardChecklistsLancados .checklist-data-campo { display:flex; min-width:0; flex-direction:column; gap:4px; }
  #cardChecklistsLancados .checklist-data-campo > span { color:var(--text-muted); font-size:9px !important; font-weight:800; text-transform:uppercase; }
  #cardChecklistsLancados .checklist-data-campo input[type="date"] {
    width:122px !important;
  }
  #cardChecklistsLancados .checklist-limpar-unico { padding-inline:9px !important; white-space:nowrap; }

  /* Execucoes: campos de funcionario compactos e quebra previsivel. */
  #cardFiltrosExecucao > .form-row {
    display: grid !important;
    grid-template-columns: 132px 104px 104px repeat(3, minmax(118px, 1fr)) 116px auto auto !important;
    align-items: center !important;
  }
  #cardFiltrosExecucao > .form-row > * {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    flex: none !important;
  }
  #cardFiltrosExecucao > .form-row > .btn {
    width: auto !important;
    white-space: nowrap;
  }

  /* Cadastro de validade: formulario e acao na mesma faixa visual. */
  #produtos_vencimento .pv-card:first-of-type {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 10px !important;
  }
  #produtos_vencimento .pv-card:first-of-type > .card-title,
  #produtos_vencimento .pv-card:first-of-type > .pv-form-grid,
  #produtos_vencimento .pv-card:first-of-type > .msg {
    grid-column: 1 / -1;
  }
  #produtos_vencimento .pv-form-grid {
    grid-template-columns: minmax(190px,2fr) 90px minmax(140px,1fr) 150px 110px !important;
    gap: 9px !important;
  }
  #produtos_vencimento .pv-alert-row {
    grid-column: 1 / -1;
    min-height: 48px;
    padding: 8px 10px !important;
    gap: 8px 12px !important;
  }
  #produtos_vencimento .pv-actions {
    align-self: center;
    margin:0 0 0 auto !important;
  }
  #produtos_vencimento .pv-actions .btn {
    white-space: nowrap;
  }
  #produtos_vencimento .pv-check,
  #produtos_vencimento .pv-inline {
    font-size: 12px !important;
  }
  #produtos_vencimento .pv-inline input[type="number"] { width: 64px !important; }
  #produtos_vencimento .pv-inline input[type="time"] { width: 106px !important; }
}

@media (min-width: 901px) and (max-width: 1220px) {
  #cardFiltrosExecucao > .form-row {
    grid-template-columns: 128px 100px 100px repeat(3, minmax(112px, 1fr)) !important;
  }
  #cardFiltrosExecucao > .form-row > :nth-child(n+7) {
    width: auto !important;
  }
  #produtos_vencimento .pv-form-grid {
    grid-template-columns: minmax(180px,2fr) 86px minmax(135px,1fr) 145px 105px !important;
  }
}
