    body {
      font-family: Arial, Helvetica, sans-serif;
      background: #edf2f7;
      margin: 0;
      padding: 32px;
      color: #172033;
    }

    .card {
      max-width: 1180px;
      margin: auto;
      background: white;
      border: 1px solid #dbe3ef;
      border-radius: 16px;
      padding: 30px;
      box-shadow: 0 18px 42px rgba(15, 47, 102, .10);
    }

    .cabecalhoSistema {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 18px;
      margin: -10px -10px 16px;
      padding: 18px;
      border-radius: 16px;
      background:
        linear-gradient(90deg, rgba(15, 47, 102, .94), rgba(15, 47, 102, .76)),
        url("assets/imagens/arquivo-digital-capa.jpg") center/cover;
      color: #ffffff;
    }

    .cabecalhoMarca {
      display: flex;
      gap: 14px;
      align-items: center;
      min-width: 0;
    }

    .logoSistema {
      width: 62px;
      height: 62px;
      object-fit: contain;
      border-radius: 12px;
      background: rgba(255,255,255,.92);
      padding: 6px;
      flex: 0 0 auto;
    }

    .cabecalhoSistema h1 {
      color: #ffffff;
      margin-bottom: 4px;
    }

    .cabecalhoSistema .subtituloSistema {
      color: #dbeafe;
      margin: 0;
      max-width: 640px;
    }

    .cabecalhoAcoes {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 8px;
      flex-wrap: wrap;
      min-width: 260px;
    }

    .cabecalhoAcoes #status {
      width: 100%;
      margin: 0 0 2px;
      color: #dbeafe;
      font-size: 12px;
      text-align: right;
    }

    .cabecalhoAcoes button {
      margin: 0;
    }

    #usuario.info {
      display: none;
      gap: 8px;
      align-items: center;
      flex-wrap: wrap;
      margin: 0 0 10px;
      padding: 8px 10px;
      border-radius: 10px;
      background: #f8fafc;
      color: #334155;
      font-size: 13px;
    }

    #usuario.info small {
      color: #64748b;
    }

    .telaAcessoRestrito {
      display: none;
      gap: 14px;
      margin-top: 18px;
      padding: 22px;
      border: 1px solid #fecaca;
      border-radius: 14px;
      background: #fff7f7;
      color: #7f1d1d;
    }

    .telaAcessoRestrito h2 {
      margin: 0;
      color: #991b1b;
      font-size: 22px;
    }

    .telaAcessoRestrito p {
      margin: 0;
      color: #7f1d1d;
      line-height: 1.45;
    }

    .acoesAcessoRestrito {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin-top: 4px;
    }

    .statusAcessoRestrito {
      min-height: 18px;
      color: #991b1b;
      font-size: 13px;
      font-weight: 700;
    }

    h1 {
      margin: 0 0 6px;
      color: #0f2f66;
      font-size: 30px;
      line-height: 1.15;
    }

    .subtituloSistema {
      max-width: 720px;
      margin: 0 0 18px;
      color: #5b677a;
      line-height: 1.45;
    }

    .barraLogin {
      display: flex;
      gap: 8px;
      align-items: center;
      flex-wrap: wrap;
      margin: 12px 0;
    }

    button {
      border: 0;
      border-radius: 9px;
      padding: 11px 16px;
      cursor: pointer;
      font-weight: bold;
      background: #0f2f66;
      color: white;
      margin: 0 8px 8px 0;
      transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
    }

    /* REGRA_GLOBAL_BUTTON_HOVER_LIMITADA_20260527
       Antes era button:hover:not(:disabled), muito genérico.
       Agora não atinge componentes que já têm visual próprio.
    */
    button:not(.ignorarHoverGlobal):not(.itemArquivo):not(.abaDocumento):not(.botaoFiltroHistoricoGeral):not(.botaoAplicarFiltroHistorico):not(.botaoOrdemHistoricoGeral):not(.cardHistoricoGeral):not(.cardParesIgnorados):not(.centralDuplicidades):not(.btnUploadSecundario):not(.btnConfirmacaoFecharUpload):not(.btnConfiguracoesTopo):not(.btnNovoDocumentoHero):not(.btnCabecalhoAcao):not(.gavetaCard):not(.btnVersaoSharePoint):not(.btnAlternarVersoes):not(.btnAlterarGaveta):not(.btnFechar):not(.btnFecharUpload):not(.btnCarregarMaisDocumentos):not(#btnRenomear):not(#btnSubstituir):not(#btnArquivar):not(#btnRestaurar):not(#btnMesclar):hover:not(:disabled) {
      background: #123d82;
      box-shadow: 0 5px 14px rgba(15, 47, 102, .16);
    }

    /* REGRA_GLOBAL_BUTTON_ACTIVE_LIMITADA_20260527 */
    button:not(.ignorarHoverGlobal):not(.itemArquivo):not(.abaDocumento):not(.botaoFiltroHistoricoGeral):not(.botaoAplicarFiltroHistorico):not(.botaoOrdemHistoricoGeral):not(.cardHistoricoGeral):not(.cardParesIgnorados):not(.centralDuplicidades):not(.btnUploadSecundario):not(.btnConfirmacaoFecharUpload):not(.btnConfiguracoesTopo):not(.btnNovoDocumentoHero):not(.btnCabecalhoAcao):not(.gavetaCard):not(.btnVersaoSharePoint):not(.btnAlternarVersoes):not(.btnAlterarGaveta):not(.btnFechar):not(.btnFecharUpload):not(.btnCarregarMaisDocumentos):not(#btnRenomear):not(#btnSubstituir):not(#btnArquivar):not(#btnRestaurar):not(#btnMesclar):active:not(:disabled) {
      transform: translateY(1px);
    }

    button:disabled {
      opacity: .68;
      cursor: not-allowed;
      box-shadow: none;
    }

    button.principal,
    .btnNovoDocumento,
    .btnSalvar,
    #btnEntrar,
    #btnConfirmarUploadCentral,
    #btnConcluirUploadCentral {
      background: #0f2f66;
      color: #ffffff;
      border: 1px solid #0f2f66;
    }

    button.principal:hover:not(:disabled),
    .btnNovoDocumento:hover:not(:disabled),
    .btnSalvar:hover:not(:disabled),
    #btnEntrar:hover:not(:disabled),
    #btnConfirmarUploadCentral:hover:not(:disabled),
    #btnConcluirUploadCentral:hover:not(:disabled) {
      background: #123d82;
      color: #ffffff;
    }

    button.secundario,
    #btnSair {
      background: #f8fafc;
      color: #334155;
      border: 1px solid #cbd5e1;
    }

    button.secundario:not(.ignorarHoverGlobal):hover:not(:disabled),
    #btnSair:hover:not(:disabled) {
      background: #e2e8f0;
      color: #0f172a;
    }

    #btnSair {
      display: none;
    }

    .info {
      margin-top: 20px;
      padding: 15px;
      background: #eef4ff;
      border: 1px solid #dbeafe;
      border-radius: 10px;
    }

    #areaSistema {
      margin-top: 25px;
      display: none;
    }

    body.estadoPreLogin #areaSistema,
    body.estadoPreLogin #btnAbrirConfiguracoesTopo,
    body.estadoPreLogin #btnSair,
    body.estadoPreLogin #centralConfiguracoes,
    body.estadoPreLogin #centralUpload,
    body.estadoPreLogin #avisoSessaoUploadInterrompida,
    body.estadoPreLogin .painelLateral {
      display: none !important;
    }

    .dashboardTopo {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      align-items: center;
      margin: 26px 0 12px;
      padding-top: 18px;
      border-top: 1px solid #e5eaf2;
    }

    .dashboardTopo h2 {
      margin: 0;
      color: #0f2f66;
      font-size: 20px;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) {
      display: grid;
      grid-template-columns: repeat(5, minmax(140px, 1fr));
      gap: 12px;
      margin: 14px 0 20px 0;
    }

    .cardDash {
      background: #f9fbfd;
      border: 1px solid #dde6f2;
      border-radius: 12px;
      padding: 16px;
      min-height: 82px;
    }

    .cardDash span {
      display: block;
      font-size: 12px;
      color: #5b677a;
      margin-bottom: 8px;
      text-transform: uppercase;
      letter-spacing: .02em;
    }

    .cardDash strong {
      display: block;
      font-size: 28px;
      color: #0f2f66;
    }

    .cardDash.largo {
      grid-column: span 5;
      min-height: auto;
    }

    .cardDash.largo strong {
      font-size: 14px;
      color: #1f2937;
      line-height: 1.4;
    }




    .busca {
      width: 100%;
      box-sizing: border-box;
      padding: 14px;
      border: 1px solid #cbd5e1;
      border-radius: 10px;
      font-size: 16px;
      margin: 10px 0 8px 0;
      background: #ffffff;
    }

    .contador {
      font-size: 14px;
      color: #64748b;
      margin-bottom: 15px;
    }

ul {
      padding-left: 0;
      list-style: none;
    }

    li {
      margin-bottom: 14px;
      padding: 0;
      background: transparent;
    }

    .itemArquivo {
      display: block;
      width: 100%;
      text-align: left;
      background: #f8fafc;
      color: #1f2937;
      border: 1px solid #e5e7eb;
      border-radius: 10px;
      padding: 14px;
      font-weight: normal;
      transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
    }

.itemArquivo strong {
      display: block;
      color: #0f2f66;
      margin-bottom: 4px;
    }


    .seloGaveta {
      display: inline-block !important;
      width: fit-content;
      margin: 2px 0 8px 0;
      padding: 4px 8px;
      border-radius: 999px;
      background: #e8f5ee;
      color: #17623a !important;
      border: 1px solid #b7e0c7;
      font-size: 12px !important;
      font-weight: 700;
      text-transform: uppercase;
    }

    .linhaMovimentacaoArquivo {
      margin-top: 8px;
      padding: 7px 9px;
      border-radius: 8px;
      background: #eef3ff;
      color: #0f2f66 !important;
      font-weight: 700;
    }

    .erro {
      color: #b00020;
      background: #fff0f0;
      padding: 14px;
      border-radius: 12px;
    }

    .painelLateral {
      position: fixed;
      top: 0;
      right: -520px;
      width: 470px;
      max-width: 94vw;
      height: 100vh;
      background: white;
      box-shadow: -10px 0 30px rgba(0,0,0,.16);
      transition: right .25s ease;
      z-index: 1000;
      display: flex;
      flex-direction: column;
    }

    .painelLateral.aberto {
      right: 0;
    }

    .painelCentralDuplicidades {
      width: 720px;
      max-width: 96vw;
      left: -760px;
      right: auto;
      box-shadow: 10px 0 30px rgba(0,0,0,.16);
    }

    .painelCentralDuplicidades.aberto {
      left: 0;
      right: auto;
    }

    .painelTopo {
      padding: 18px;
      background: #0f2f66;
      color: white;
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
    }

    .painelTopo h2 {
      font-size: 18px;
      margin: 0;
      line-height: 1.25;
    }

    .btnFechar {
      background: rgba(255,255,255,.16);
      color: #ffffff;
      border: 1px solid rgba(255,255,255,.24);
      padding: 7px 10px;
      border-radius: 8px;
      margin: 0;
    }

    .painelConteudo {
      padding: 18px;
      overflow: auto;
      flex: 1;
    }

    .campoInfo {
      margin-bottom: 12px;
      padding: 12px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      border-radius: 10px;
      font-size: 13px;
      word-break: break-word;
    }

    .campoInfo strong {
      display: block;
      margin-bottom: 5px;
      color: #0f2f66;
    }

    .btnAlterarGaveta {
      margin: 8px 0 0 0;
      padding: 7px 9px;
      font-size: 12px;
    }

    .acoes {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 8px;
      margin: 14px 0;
    }

    .acoes button {
      margin: 0;
      padding: 10px;
      font-size: 13px;
    }

    .acoes .principal {
      grid-column: span 2;
      background: #0f2f66;
    }

    #btnConfirmarMesclar,
    .alertaAcao .linhaBotoes button:first-child {
      background: #b45309;
      color: #ffffff;
      border: 1px solid #92400e;
    }

    #btnConfirmarUploadCentral {
      background: #dc2626;
      border-color: #b91c1c;
    }

    #btnConfirmarMesclar:hover:not(:disabled),
    .alertaAcao .linhaBotoes button:first-child:hover:not(:disabled) {
      background: #92400e;
      color: #ffffff;
    }

    #btnConfirmarUploadCentral:hover:not(:disabled) {
      background: #b91c1c;
      color: #ffffff;
    }

    .acoes .desativado {
      background: #94a3b8;
      cursor: not-allowed;
    }
.formAcao {
      display: none;
      margin: 16px 0;
      padding: 12px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      border-radius: 12px;
    }

    .formAcao h3 {
      margin-top: 0;
      margin-bottom: 8px;
    }

    .formAcao input,
    .formAcao select {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #cbd5e1;
      border-radius: 10px;
      padding: 10px;
      font-size: 14px;
      margin-bottom: 8px;
    }

    .formAcao small {
      display: block;
      color: #64748b;
      margin-bottom: 10px;
    }

    .linhaBotoes {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
    }

    .linhaBotoes button {
      margin: 0;
      padding: 9px 10px;
      font-size: 12px;
    }

    .linhaBotoes .secundario {
      background: #f8fafc;
      color: #334155;
      border: 1px solid #cbd5e1;
    }

    .arquivoSelecionadoMesclar,
    .statusMesclar {
      margin: 0 0 8px;
      font-size: 12px;
      font-weight: 700;
      color: #334155;
    }

    .arquivoSelecionadoMesclar {
      padding: 8px 10px;
      border: 1px solid #e2e8f0;
      border-radius: 10px;
      background: #ffffff;
      overflow-wrap: anywhere;
    }

    .statusMesclar {
      color: #0f766e;
    }

    .anotacaoBox {
      margin: 16px 0;
    }

    .anotacaoBox h3 {
      margin-bottom: 8px;
    }

    textarea {
      width: 100%;
      min-height: 110px;
      box-sizing: border-box;
      border: 1px solid #cbd5e1;
      border-radius: 12px;
      padding: 12px;
      font-family: Arial, sans-serif;
      resize: vertical;
    }

    .linhaAnotacao {
      margin-top: 8px;
      display: flex;
      gap: 8px;
      align-items: center;
      justify-content: space-between;
    }

    .linhaAnotacao small {
      color: #64748b;
    }

    .btnSalvar {
      padding: 8px 10px;
      font-size: 12px;
      margin: 0;
      background: #0f2f66;
    }


    .nomesParecidosBox {
      margin: 16px 0;
    }

    .nomeParecido {
      padding: 10px;
      border-radius: 10px;
      background: #fff7ed;
      border: 1px solid #fed7aa;
      margin-bottom: 8px;
      font-size: 13px;
    }

    .nomeParecido strong {
      display: block;
      color: #9a3412;
      margin-bottom: 5px;
    }

    .nomeParecido small {
      display: block;
      color: #64748b;
      margin-top: 5px;
      line-height: 1.35;
    }

    .tagAtivo,
    .tagArquivado {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: fit-content;
      max-width: 100%;
      padding: 3px 7px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: bold;
      line-height: 1.1;
      margin: 1px 4px 3px 0;
      white-space: nowrap;
    }

    .tagAtivo {
      background: #dcfce7;
      color: #166534;
    }

    .tagArquivado {
      background: #e2e8f0;
      color: #475569;
    }
    .itemHistorico {
      padding: 10px;
      border-radius: 10px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      margin-bottom: 8px;
      font-size: 13px;
    }

    .itemHistorico span,
    .itemHistorico small {
      color: #64748b;
    }


    .motivoHistorico {
      margin-top: 8px;
      padding: 8px;
      border-radius: 8px;
      background: #eef3ff;
      color: #334155;
      font-size: 12px;
      line-height: 1.35;
    }

    .motivoHistorico strong {
      color: #0f2f66;
    }

    .motivoHistorico.vazio {
      background: #f8fafc;
      color: #94a3b8;
      font-style: italic;
    }
    .textoErro {
      color: #b00020;
    }

    @media (max-width: 820px) {
      body {
        padding: 16px;
      }

      .card {
        padding: 20px;
      }

      h1 {
        font-size: 25px;
      }

      .dashboard {
        grid-template-columns: repeat(2, minmax(120px, 1fr));
      }

      .cardDash.largo {
        grid-column: span 2;
      }
    }

    .areaUploadNovo {
      margin: 0 0 18px 0;
      padding: 14px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      border-radius: 14px;
      display: flex;
      gap: 12px;
      align-items: center;
      flex-wrap: wrap;
    }

    .areaUploadNovo small {
      color: #64748b;
    }

    .btnNovoDocumento {
      background: #0f2f66;
      color: white;
      margin: 0;
    }

    .centralUpload {
      display: none;
      margin: 0 0 20px 0;
      padding: 16px;
      border: 1px solid #bfdbfe;
      border-radius: 12px;
      background: #f8fbff;
    }

    .centralUpload.aberta {
      display: block;
    }

    .centralUploadTopo {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 12px;
    }

    .centralUploadTopo h2 {
      margin: 0 0 4px 0;
      font-size: 20px;
      color: #0f2f66;
    }

    .centralUploadTopo p {
      margin: 0;
      color: #475569;
      font-size: 13px;
    }

    .centralUploadGrade {
      display: grid;
      grid-template-columns: 1fr 180px minmax(240px, 1.2fr);
      gap: 12px;
      align-items: stretch;
    }

    .campoUpload {
      display: grid;
      gap: 7px;
      align-content: start;
    }

    .campoUpload strong {
      color: #0f2f66;
      font-size: 13px;
    }

    .campoUpload select,
    .campoUpload textarea {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #cbd5e1;
      border-radius: 10px;
      padding: 9px;
      font-size: 13px;
      background: white;
    }

    .campoUpload textarea {
      min-height: 70px;
      resize: vertical;
    }

    .listaArquivosUpload {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 8px;
      margin: 12px 0;
      padding: 0;
    }

    .listaArquivosUpload li {
      margin: 0;
      padding: 8px;
      border: 1px solid #dbeafe;
      border-radius: 8px;
      background: white;
      list-style: none;
    }

    .listaArquivosUpload strong,
    .listaArquivosUpload span {
      display: block;
      overflow-wrap: anywhere;
      font-size: 12px;
    }

    .listaArquivosUpload span {
      color: #64748b;
      margin-top: 2px;
    }

    .listaArquivosUpload small {
      display: inline-block;
      margin-top: 6px;
      padding: 3px 7px;
      border-radius: 999px;
      background: #f1f5f9;
      color: #334155;
      font-weight: 700;
      font-size: 11px;
    }

    .statusUploadEnviando small {
      background: #dbeafe;
      color: #1d4ed8;
    }

    .statusUploadEnviado small {
      background: #dcfce7;
      color: #166534;
    }

    .statusUploadConflito small {
      background: #fef3c7;
      color: #92400e;
    }

    .statusUploadAviso small {
      background: #ffedd5;
      color: #9a3412;
    }

    .statusUploadErro small {
      background: #fee2e2;
      color: #991b1b;
    }

    .statusUploadErroReal small {
      background: #fee2e2;
      color: #991b1b;
    }

    .progressoUpload {
      margin: 12px 0;
      padding: 12px;
      border: 1px solid #dbeafe;
      border-radius: 10px;
      background: white;
    }

    .progressoUploadTopo {
      display: flex;
      justify-content: space-between;
      gap: 10px;
      color: #0f2f66;
      font-weight: 700;
      font-size: 13px;
    }

    .trilhoProgressoUpload {
      height: 12px;
      margin: 8px 0;
      border-radius: 999px;
      background: #e2e8f0;
      overflow: hidden;
    }

    .barraProgressoUpload {
      width: 0%;
      height: 100%;
      background: #1d4ed8;
      transition: width 0.2s ease;
    }

    .detalhesProgressoUpload {
      display: grid;
      gap: 3px;
      color: #475569;
      font-size: 12px;
    }

    .confirmacaoFecharUpload {
      display: none;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
      margin: 12px 0;
      padding: 12px;
      border-radius: 10px;
      border: 1px solid #fed7aa;
      background: #fff7ed;
      color: #7c2d12;
    }

    .avisoSessaoUploadInterrompida,
    .painelSessaoUploadInterrompida {
      margin: 12px 0;
      padding: 12px;
      border: 1px solid #fdba74;
      border-radius: 10px;
      background: #fff7ed;
      color: #7c2d12;
    }

    .avisoSessaoUploadInterrompida {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 12px;
    }

    .avisoSessaoUploadGlobal {
      margin: -6px 0 18px;
      box-shadow: 0 8px 20px rgba(124, 45, 18, 0.08);
    }

    .avisoSessaoUploadInterrompida[hidden],
    .painelSessaoUploadInterrompida[hidden] {
      display: none;
    }

    .avisoSessaoUploadInterrompida strong,
    .avisoSessaoUploadInterrompida span {
      display: block;
    }

    .avisoSessaoUploadInterrompida span,
    .painelSessaoUploadInterrompida p {
      margin: 3px 0 0;
      font-size: 12px;
    }

    .avisoSessaoUploadAcoes,
    .painelSessaoUploadTopo {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      flex-wrap: wrap;
    }

    .painelSessaoUploadTopo h3 {
      margin: 0;
      color: #7c2d12;
      font-size: 16px;
    }

    .gruposSessaoUploadInterrompida {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
      gap: 8px;
      margin: 12px 0;
    }

    .grupoSessaoUpload {
      padding: 10px;
      border: 1px solid #fed7aa;
      border-radius: 8px;
      background: #ffffff;
    }

    .grupoSessaoUpload strong,
    .grupoSessaoUpload small {
      display: block;
    }

    .grupoSessaoUpload ul {
      margin: 7px 0 0;
      padding-left: 18px;
      font-size: 12px;
    }

    .confirmacaoFecharUpload strong,
    .confirmacaoFecharUpload span {
      display: block;
    }

    .confirmacaoFecharUpload span {
      margin-top: 3px;
      font-size: 12px;
    }

    .confirmacaoFecharUploadAcoes {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .confirmacaoFecharUploadAcoes .btnConfirmacaoFecharUpload {
      border-radius: 10px;
      font-weight: 800;
      box-shadow: none;
    }

    .confirmacaoFecharUploadAcoes .btnContinuarUpload {
      background: #0f2f66;
      color: #ffffff;
      border-color: #0f2f66;
    }

    .confirmacaoFecharUploadAcoes .btnContinuarUpload:hover:not(:disabled),
    .confirmacaoFecharUploadAcoes .btnContinuarUpload:focus-visible:not(:disabled) {
      background: #123d82;
      color: #ffffff;
      border-color: #123d82;
      box-shadow: 0 4px 10px rgba(15, 47, 102, .14);
    }

    .confirmacaoFecharUploadAcoes .btnSairUpload {
      background: #fff7ed;
      color: #9a3412;
      border-color: #fdba74;
    }

    .confirmacaoFecharUploadAcoes .btnSairUpload:hover:not(:disabled),
    .confirmacaoFecharUploadAcoes .btnSairUpload:focus-visible:not(:disabled) {
      background: #fed7aa;
      color: #7c2d12;
      border-color: #fb923c;
      box-shadow: 0 4px 10px rgba(124, 45, 18, .12);
    }

    .confirmacaoFecharUploadAcoes .btnConfirmacaoFecharUpload:active:not(:disabled) {
      transform: translateY(1px);
    }

    .btnFecharUpload {
      min-width: 42px;
      min-height: 38px;
      padding: 8px 12px;
      font-weight: 800;
      background: #fee2e2;
      color: #991b1b;
      border: 1px solid #fecaca;
      box-shadow: 0 2px 8px rgba(153, 27, 27, 0.14);
    }

    .btnFecharUpload:hover:not(:disabled),
    .btnFecharUpload:focus-visible:not(:disabled) {
      background: #fecaca;
      color: #7f1d1d;
    }

    .centralUploadAcoes {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    #btnConfirmarUploadCentral {
      background: #dc2626;
      color: #ffffff;
      border: 1px solid #b91c1c;
      border-radius: 10px;
      font-weight: 800;
      box-shadow: 0 6px 14px rgba(220, 38, 38, 0.24);
    }

    #btnConfirmarUploadCentral:hover:not(:disabled) {
      background: #b91c1c;
      color: #ffffff;
    }

    #btnConfirmarUploadCentral:disabled {
      opacity: 0.72;
      cursor: not-allowed;
      box-shadow: none;
    }

    @media (max-width: 860px) {
      .centralUploadGrade {
        grid-template-columns: 1fr;
      }
    }

    .acoesVersaoSharePoint {
      margin-top: 8px;
    }

    .btnVersaoSharePoint {
      margin-top: 4px;
      font-size: 12px;
    }

    .centralDuplicidades {
      margin: 26px 0;
      padding: 18px;
      border-radius: 18px;
      background: #fff7ed;
      border: 1px solid #fed7aa;
    }

    .dashboard .centralDuplicidades {
      margin: 0;
      align-items: stretch;
      text-align: left;
    }

    .centralDuplicidades.discreta {
      padding: 14px;
      background: #f8fafc;
      border-color: #e5e7eb;
    }

    .centralDuplicidades.comAlerta {
      background: #fff7ed;
      border-color: #fdba74;
    }

    .centralDuplicidades.centralFechada {
      padding-bottom: 14px;
    }

    .centralDuplicidadesTopo {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 14px;
      margin-bottom: 12px;
    }

    .dashboard .centralDuplicidadesTopo {
      display: grid;
      grid-template-columns: 1fr;
      gap: 8px;
    }

    .centralDuplicidadesTopo h2 {
      margin: 0 0 4px 0;
      color: #9a3412;
    }

    .dashboard .centralDuplicidadesTopo h2 {
      font-size: 14px;
    }

    .centralDuplicidades.discreta .centralDuplicidadesTopo h2 {
      color: #334155;
    }

    .centralDuplicidadesTopo p {
      margin: 0;
      color: #64748b;
      font-size: 14px;
      line-height: 1.35;
    }

    .dashboard .centralDuplicidadesTopo p {
      display: none;
    }

    .centralDuplicidadesTopo button {
      background: #9a3412;
      white-space: nowrap;
      padding: 10px 12px;
      font-size: 13px;
    }

    .acoesCentralDuplicidades {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .dashboard .acoesCentralDuplicidades {
      justify-content: flex-start;
    }

    .resumoCentralDuplicidades {
      margin: 10px 0 14px 0;
      color: #7c2d12;
      font-weight: bold;
    }

    .centralDuplicidades.discreta .resumoCentralDuplicidades {
      margin-bottom: 0;
      color: #475569;
      font-weight: 600;
    }

    .listaCentralDuplicidades {
      display: grid;
      gap: 12px;
    }

    .cardDuplicidade {
      padding: 14px;
      border-radius: 14px;
      background: white;
      border: 1px solid #fdba74;
    }

    .duplicidadeTopo {
      display: flex;
      justify-content: space-between;
      gap: 12px;
      margin-bottom: 10px;
      color: #9a3412;
    }

    .duplicidadeColunas {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 10px;
      margin-bottom: 10px;
    }

    .duplicidadeArquivo {
      padding: 10px;
      border-radius: 12px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
    }

    .duplicidadeArquivo strong {
      display: block;
      margin: 7px 0;
      color: #0f2f66;
      line-height: 1.3;
      word-break: break-word;
    }

    .duplicidadeArquivo button {
      margin: 0;
      padding: 8px 10px;
      font-size: 12px;
      background: #0f2f66;
    }

    .duplicidadeVazia {
      padding: 14px;
      border-radius: 12px;
      background: white;
      color: #64748b;
      border: 1px dashed #fdba74;
    }

    @media (max-width: 700px) {
      .centralDuplicidadesTopo,
      .duplicidadeColunas {
        grid-template-columns: 1fr;
        display: grid;
      }

      .duplicidadeIgnorada {
        align-items: stretch;
        display: grid;
        grid-template-columns: 1fr;
      }

      .duplicidadeIgnoradaTopo {
        align-items: stretch;
        display: grid;
        grid-template-columns: 1fr;
      }

      .duplicidadeIgnoradaTopo button,
      .duplicidadeIgnorada button {
        width: 100%;
      }
    }

    .duplicidadeAcoes {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      margin: 8px 0 10px 0;
    }

    .btnPessoasDiferentes {
      background: #f8fafc !important;
      color: #334155 !important;
      border: 1px solid #cbd5e1 !important;
      padding: 8px 10px !important;
      font-size: 12px !important;
      margin: 0 !important;
    }

    .paresIgnoradosDuplicidade {
      margin-top: 12px;
      padding-top: 12px;
      border-top: 1px solid #fed7aa;
      color: #475569;
    }

    .centralDuplicidades.discreta .paresIgnoradosDuplicidade {
      border-top-color: #e5e7eb;
    }

    .paresIgnoradosDuplicidade summary {
      cursor: pointer;
      font-size: 13px;
      font-weight: 700;
      color: #475569;
    }

    .listaParesIgnoradosDuplicidade {
      display: grid;
      gap: 8px;
      margin-top: 10px;
    }

    .duplicidadeIgnoradaTopo {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      padding: 10px;
      border-radius: 12px;
      background: #fff7ed;
      border: 1px solid #fed7aa;
      color: #7c2d12;
      font-size: 13px;
      font-weight: 700;
    }

    .duplicidadeIgnoradaTopo button {
      margin: 0;
      padding: 8px 10px;
      font-size: 12px;
      background: #9a3412;
      white-space: nowrap;
    }

    .duplicidadeIgnorada {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 10px;
      padding: 10px;
      border-radius: 12px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
    }

    .duplicidadeIgnorada strong,
    .duplicidadeIgnorada span {
      display: block;
      line-height: 1.3;
      word-break: break-word;
    }

    .duplicidadeIgnorada span {
      margin-top: 3px;
      color: #64748b;
    }

    .duplicidadeIgnorada button {
      margin: 0;
      padding: 8px 10px;
      font-size: 12px;
      background: #0f2f66;
      white-space: nowrap;
    }

    .duplicidadeIgnoradaVazia {
      padding: 10px;
      border-radius: 12px;
      background: #f8fafc;
      border: 1px dashed #cbd5e1;
      color: #64748b;
      font-size: 13px;
    }

    @media (max-width: 700px) {
      .duplicidadeIgnoradaTopo,
      .duplicidadeIgnorada {
        align-items: stretch;
        display: grid;
        grid-template-columns: 1fr;
      }

      .duplicidadeIgnoradaTopo button,
      .duplicidadeIgnorada button {
        width: 100%;
      }
    }

    .itemHistorico.anotacaoEvento {
      border-left: 4px solid #0f2f66;
      background: #eef3ff;
    }

    .anotacaoHistorico {
      white-space: pre-wrap;
    }

    /* CSS_ANOTACAO_LIXEIRA */
    #campoAnotacao {
      min-height: 70px;
      height: 70px;
      max-height: 260px;
      overflow-y: hidden;
      line-height: 1.35;
    }

    .linhaDataArquivo {
      margin-top: 4px;
      font-size: 12px !important;
      color: #64748b !important;
    }

    .itemVersao {
      padding: 10px;
      border-radius: 10px;
      background: #f8fafc;
      border: 1px solid #e5e7eb;
      margin-bottom: 8px;
      font-size: 13px;
    }

    .itemVersao strong,
    .itemVersao span,
    .itemVersao small {
      display: block;
      margin-bottom: 3px;
    }

    .itemVersao strong {
      color: #0f2f66;
    }

    .itemVersao span,
    .itemVersao small {
      color: #64748b;
    }

    /* CSS_ACABAMENTO_FASE5_PAINEL */
    .painelConteudo {
      background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    }

    .campoInfo {
      margin-bottom: 10px;
      background: #ffffff;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .campoInfo span {
      color: #1f2937;
      line-height: 1.35;
    }

    .acoes {
      position: relative;
      padding: 34px 12px 12px;
      background: #eef3ff;
      border: 1px solid #dbeafe;
      border-radius: 14px;
    }

    .acoes::before {
      content: "AÇÕES DO ARQUIVO";
      position: absolute;
      top: 11px;
      left: 12px;
      color: #0f2f66;
      font-size: 12px;
      font-weight: 800;
      letter-spacing: 0;
      text-transform: uppercase;
    }

    .formAcao,
    .anotacaoBox,
    .nomesParecidosBox,
    #versoesSharePoint,
    #historicoArquivo {
      padding: 14px;
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 14px;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .formAcao {
      border-left: 4px solid #0f2f66;
    }

    .formAcao.alertaAcao {
      background: #fff7ed;
      border-color: #fed7aa;
      border-left-color: #b45309;
    }

    .nomesParecidosBox {
      background: #ffffff;
      border-color: #e2e8f0;
      border-left: 4px solid #cbd5e1;
    }

    .nomesParecidosBox h3 {
      color: #0f2f66;
    }

    .nomesParecidosBox.comNomesParecidos {
      background: #fff7ed;
      border-color: #fed7aa;
      border-left-color: #f97316;
    }

    .nomesParecidosBox.comNomesParecidos h3 {
      color: #9a3412;
    }

    .painelConteudo > h3,
    .anotacaoBox h3,
    .nomesParecidosBox h3,
    .formAcao h3 {
      margin: 18px 0 8px;
      color: #0f2f66;
      font-size: 15px;
      line-height: 1.25;
    }

    .formAcao h3,
    .anotacaoBox h3,
    .nomesParecidosBox h3 {
      margin-top: 0;
    }

    .itemHistorico,
    .itemVersao,
    .nomeParecido {
      background: #f8fafc;
      border-color: #e2e8f0;
    }

    .motivoHistorico {
      background: #ffffff;
      border: 1px solid #dbeafe;
    }

    .linhaAnotacao {
      padding-top: 8px;
      align-items: center;
    }

    /* CSS_ACABAMENTO_FASE6_UPLOAD */
    .centralUpload {
      border-color: #c7d2fe;
      border-radius: 16px;
      background: #f8fbff;
      box-shadow: 0 8px 24px rgba(15, 47, 102, .08);
    }

    .centralUploadTopo {
      padding-bottom: 12px;
      border-bottom: 1px solid #dbeafe;
    }

    .centralUploadTopo h2 {
      line-height: 1.2;
    }

    .centralUploadGrade {
      margin-top: 14px;
    }

    .campoUpload {
      padding: 12px;
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 14px;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .campoUpload strong {
      display: block;
      margin-bottom: 2px;
    }

    .campoUpload small {
      color: #64748b;
      line-height: 1.35;
    }

    .campoUpload select,
    .campoUpload textarea {
      min-height: 42px;
    }

    .campoUpload textarea:focus,
    .campoUpload select:focus {
      outline: 2px solid #bfdbfe;
      border-color: #2563eb;
    }

    .listaArquivosUpload {
      padding: 12px;
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 14px;
    }

    .listaArquivosUpload li {
      border-radius: 12px;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .listaArquivosUpload strong {
      color: #0f2f66;
      line-height: 1.3;
    }

    .statusUploadEnviando {
      border-color: #93c5fd !important;
      background: #eff6ff !important;
    }

    .statusUploadEnviado {
      border-color: #86efac !important;
      background: #f0fdf4 !important;
    }

    .statusUploadConflito {
      border-color: #fcd34d !important;
      background: #fffbeb !important;
    }

    .statusUploadAviso {
      border-color: #fdba74 !important;
      background: #fff7ed !important;
    }

    .statusUploadErro {
      border-color: #fca5a5 !important;
      background: #fef2f2 !important;
    }

    .statusUploadErroReal {
      border-color: #fca5a5 !important;
      background: #fef2f2 !important;
    }

    .progressoUpload {
      border-radius: 14px;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .trilhoProgressoUpload {
      overflow: hidden;
      background: #e2e8f0;
    }

    .barraProgressoUpload {
      background: #0f2f66;
    }

    .detalhesProgressoUpload {
      line-height: 1.35;
    }

    .confirmacaoFecharUpload {
      border-radius: 14px;
      box-shadow: 0 4px 14px rgba(180, 83, 9, .10);
    }

    .centralUploadAcoes {
      padding-top: 4px;
    }

    /* CSS_ACABAMENTO_FASE7_DUPLICIDADES */
    .dashboard .centralDuplicidades {
      border-radius: 12px;
      box-shadow: 0 4px 14px rgba(154, 52, 18, .08);
    }

    .centralDuplicidades.comAlerta {
      box-shadow: 0 6px 18px rgba(154, 52, 18, .12);
    }

    .centralDuplicidades.discreta {
      box-shadow: 0 2px 8px rgba(15, 23, 42, .05);
    }

    .resumoCentralDuplicidades {
      line-height: 1.35;
    }

    .painelCentralDuplicidades .painelConteudo {
      background: #fffaf5;
    }

    .listaCentralDuplicidades {
      align-content: start;
    }

    .cardDuplicidade {
      border-color: #fed7aa;
      box-shadow: 0 3px 12px rgba(154, 52, 18, .08);
    }

    .duplicidadeTopo {
      padding-bottom: 8px;
      border-bottom: 1px solid #ffedd5;
    }

    .duplicidadeTopo span {
      padding: 4px 8px;
      border-radius: 999px;
      background: #ffedd5;
      color: #7c2d12;
      font-size: 12px;
      font-weight: 800;
      white-space: nowrap;
    }

    .duplicidadeArquivo {
      background: #ffffff;
      border-color: #e2e8f0;
      box-shadow: 0 1px 0 rgba(15, 23, 42, .03);
    }

    .duplicidadeArquivo .tagAtivo,
    .duplicidadeArquivo .tagArquivado {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: fit-content;
      padding: 3px 7px;
      border-radius: 999px;
      font-size: 11px;
      font-weight: 800;
    }

    .duplicidadeArquivo button {
      width: 100%;
      margin-top: 6px;
    }

    .duplicidadeAcoes {
      padding-top: 2px;
    }

    .cardDuplicidade > small {
      display: block;
      color: #64748b;
      line-height: 1.35;
    }

    .paresIgnoradosDuplicidade {
      margin-top: 16px;
      padding: 12px;
      border: 1px solid #fed7aa;
      border-radius: 14px;
      background: #ffffff;
    }

    .paresIgnoradosDuplicidade summary {
      color: #0f2f66;
    }

    .duplicidadeIgnoradaTopo {
      background: #fff7ed;
    }

    .duplicidadeIgnorada,
    .duplicidadeIgnoradaVazia,
    .duplicidadeVazia {
      background: #ffffff;
    }

    /* PACOTE1_DESEMPENHO_USABILIDADE */
    .cardParesIgnorados {
      display: block;
      width: 100%;
      text-align: left;
      background: #f8fafc;
      color: #1f2937;
      border: 1px solid #e5e7eb;
      box-shadow: none;
      cursor: pointer;
    }

    .cardParesIgnorados:hover:not(:disabled) {
      background: #eef3ff;
      color: #0f2f66;
      border-color: #bfdbfe;
      box-shadow: 0 5px 14px rgba(15, 47, 102, .10);
    }

    .cardParesIgnorados small {
      display: block;
      margin-top: 6px;
      color: #64748b;
      font-size: 12px;
      line-height: 1.35;
    }

.painelLateral,
    .painelConteudo,
    .painelCentralDuplicidades {
      overscroll-behavior: contain;
    }

    .btnAlternarVersoes {
      width: 100%;
      margin-top: 4px;
    }

    /* PACOTE2_GAVETAS_CONFIG_FILTROS */
    .centralConfiguracoes {
      display: none;
      margin: 0 0 20px 0;
      padding: 16px;
      border: 1px solid #dbeafe;
      border-radius: 16px;
      background: #ffffff;
      box-shadow: 0 8px 24px rgba(15, 47, 102, .08);
    }

    .centralConfiguracoes.aberta {
      display: block;
    }

    .centralConfiguracoesTopo {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 12px;
    }

    .centralConfiguracoesTopo h2,
    .areaGavetasTopo h3 {
      margin: 0;
      color: #0f2f66;
      font-size: 18px;
    }

    .gradeConfiguracoes {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
      gap: 10px;
      margin-bottom: 12px;
    }

    .gradeConfiguracoes label {
      display: grid;
      gap: 6px;
      color: #334155;
      font-size: 13px;
      font-weight: 700;
    }

    .gradeConfiguracoes select {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #cbd5e1;
      border-radius: 10px;
      padding: 9px;
      background: #ffffff;
    }

    .configuracoesAviso {
      display: grid;
      gap: 4px;
      margin: 10px 0 12px;
      padding: 12px;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      background: #f8fafc;
      color: #475569;
      font-size: 13px;
      line-height: 1.35;
    }

    .cadastroGavetaBox {
      display: grid;
      gap: 8px;
      margin: 10px 0 12px;
      padding: 12px;
      border: 1px solid #dbeafe;
      border-radius: 12px;
      background: #f8fbff;
      color: #334155;
      font-size: 13px;
    }

    .linhaCadastroGaveta {
      display: grid;
      grid-template-columns: minmax(180px, 1fr) auto;
      gap: 8px;
      align-items: center;
    }

    .linhaCadastroGaveta input {
      width: 100%;
      box-sizing: border-box;
      border: 1px solid #cbd5e1;
      border-radius: 10px;
      padding: 10px;
      font-size: 14px;
    }

    .avisoGavetasFallback {
      grid-column: 1 / -1;
      padding: 8px 10px;
      border: 1px solid #fde68a;
      border-radius: 10px;
      background: #fffbeb;
      color: #92400e;
      font-size: 12px;
      font-weight: 700;
    }

    .listaGavetasConfiguracao {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
      gap: 8px;
    }

    .itemGavetaConfiguracao {
      display: flex;
      justify-content: space-between;
      gap: 8px;
      align-items: center;
      padding: 8px;
      border: 1px solid #dbeafe;
      border-radius: 10px;
      background: #ffffff;
    }

    .itemGavetaConfiguracao strong,
    .indicadorFiltrosAtivos {
      display: inline-flex;
      align-items: center;
      width: fit-content;
      padding: 4px 8px;
      border-radius: 999px;
      background: #eef3ff;
      color: #0f2f66;
      font-size: 12px;
      font-weight: 700;
    }

    .itemGavetaConfiguracao small {
      display: block;
      margin-top: 4px;
      color: #64748b;
      font-size: 11px;
      font-weight: 700;
    }

    .acoesGavetaConfiguracao {
      display: inline-flex;
      gap: 6px;
      flex-shrink: 0;
    }

    .acoesGavetaConfiguracao button {
      min-width: auto;
      padding: 6px 8px;
      border-radius: 8px;
      font-size: 12px;
      line-height: 1;
    }

    .acoesGavetaConfiguracao button:disabled {
      opacity: 0.45;
      cursor: not-allowed;
    }

    .acoesGavetaConfiguracao button.secundario:hover:not(:disabled),
    .acoesGavetaConfiguracao button.secundario:focus-visible:not(:disabled) {
      background: #e2e8f0;
      color: #0f2f66;
      border-color: #94a3b8;
    }

    .acoesGavetaConfiguracao button.perigo:hover:not(:disabled),
    .acoesGavetaConfiguracao button.perigo:focus-visible:not(:disabled) {
      background: #b91c1c;
      color: #ffffff;
      border-color: #991b1b;
    }

    button.hoverSecundarioNeutro:hover:not(:disabled),
    button.hoverSecundarioNeutro:focus-visible:not(:disabled) {
      background: #e2e8f0;
      color: #0f172a;
      border-color: #94a3b8;
    }

    button.perigo {
      background: #dc2626;
      color: #ffffff;
      border-color: #b91c1c;
    }

    button.perigo:not(.ignorarHoverGlobal):hover:not(:disabled) {
      background: #b91c1c;
      color: #ffffff;
    }

.areaGavetas {
      margin: 14px 0;
      padding: 14px;
      border: 1px solid #dbeafe;
      border-radius: 16px;
      background: #f8fbff;
    }






    .barraFiltros,
    .filtrosAvancados {
      display: flex;
      gap: 8px;
      flex-wrap: wrap;
      margin: 10px 0;
    }

    .filtrosAvancados {
      display: none;
      padding: 10px;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      background: #f8fafc;
    }

    .filtrosAvancados.aberto {
      display: flex;
    }

    .filtrosAvancados button.ativo {
      background: #0f2f66;
      color: #ffffff;
      border-color: #0f2f66;
    }

    #btnFiltrosAvancados.ativo {
      background: #0f2f66;
      color: #ffffff;
      border-color: #0f2f66;
    }

    .mensagemListaVazia {
      padding: 14px;
      border: 1px dashed #bfdbfe;
      border-radius: 12px;
      background: #f8fbff;
      color: #475569;
      list-style: none;
    }


    body.modoCompacto .cardDash {
      padding: 10px 12px;
      min-height: auto;
    }

    body.modoCompacto {
      padding: 18px;
    }

    body.modoCompacto .card {
      padding: 18px;
    }

    body.modoCompacto .cabecalhoSistema {
      margin-bottom: 10px;
      padding: 14px;
    }

    body.modoCompacto .logoSistema {
      width: 52px;
      height: 52px;
    }

    body.modoCompacto .dashboard {
      gap: 8px;
      margin: 10px 0 12px;
    }

    body.modoCompacto .areaUploadNovo,
    body.modoCompacto .areaGavetas,
    body.modoCompacto .centralConfiguracoes {
      padding: 10px;
      margin-bottom: 10px;
    }

    body.modoCompacto .busca {
      padding: 10px 12px;
      margin: 6px 0;
    }


    body.detalhesReduzidos .itemArquivo > span:not(.seloGaveta):not(.seloNomeRepetido):not(.statusRecenteArquivo):not(.linhaDataArquivo):not(.linhaMovimentacaoArquivo) {
      display: none;
    }

/* PACOTE3_HISTORICO_RELATORIOS_ACESSO */
    .cardHistoricoGeral {
      display: block;
      width: 100%;
      text-align: left;
      background: #f8fafc;
      color: #1f2937;
      border: 1px solid #e5e7eb;
      cursor: pointer;`r`n      font: inherit;`r`n      box-shadow: none;
    }

    .cardHistoricoGeral:hover:not(:disabled) {
      background: #eef3ff;
      color: #0f2f66;
      border-color: #bfdbfe;
    }

    .cardHistoricoGeral small {
      display: block;
      margin-top: 6px;
      color: #64748b;
      font-size: 12px;
      line-height: 1.35;
    }

    .centralAdministrativa {
      display: none;
      margin: 16px 0;
      padding: 16px;
      border: 1px solid #dbeafe;
      border-radius: 16px;
      background: #ffffff;
      box-shadow: 0 8px 24px rgba(15, 47, 102, .08);
    }

    .centralAdministrativa.aberta {
      display: block;
    }

    .centralAdministrativaTopo {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      gap: 12px;
      margin-bottom: 12px;
    }

    .centralAdministrativaTopo h2 {
      margin: 0;
      color: #0f2f66;
      font-size: 18px;
    }

    .listaHistoricoGeral {
      display: grid;
      gap: 10px;
    }

    .itemHistoricoGeral,
    .relatorioCard {
      padding: 12px;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      background: #f8fafc;
      color: #334155;
      font-size: 13px;
      line-height: 1.35;
      overflow-wrap: anywhere;
    }

    .itemHistoricoGeral strong,
    .relatorioCard strong {
      display: block;
      color: #0f2f66;
      margin-bottom: 4px;
    }

    .itemHistoricoGeral span,
    .itemHistoricoGeral small,
    .relatorioCard span {
      display: block;
      color: #475569;
      margin-top: 2px;
    }

    .relatorioCard ul {
      margin: 8px 0 0 18px;
      padding: 0;
    }

    .relatorioAcesso {
      border-color: #fed7aa;
      background: #fff7ed;
    }

    /* CSS_RESPONSIVIDADE_FASE4 */
    @media (max-width: 1100px) {
      .dashboard:not(.dashboardAcoes):not(.dashboardContadores) {
        grid-template-columns: repeat(3, minmax(150px, 1fr));
      }

      .cardDash.largo,
      .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidades {
        grid-column: span 3;
      }

      .dashboard.dashboardAcoes {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .dashboardAcoes > #centralDuplicidades,
      .dashboardAcoes > .cardHistoricoGeral {
        grid-column: auto;
      }
    }

    @media (max-width: 760px) {
      body {
        padding: 12px;
      }

      .card {
        padding: 16px;
        border-radius: 16px;
      }

      .cabecalhoSistema,
      .cabecalhoMarca,
      .cabecalhoAcoes,
      .linhaCadastroGaveta {
        display: grid;
        grid-template-columns: 1fr;
        min-width: 0;
      }

      .cabecalhoAcoes {
        justify-content: stretch;
      }

      .cabecalhoAcoes #status {
        text-align: left;
      }

      .logoSistema {
        width: 54px;
        height: 54px;
      }

      h1 {
        font-size: 23px;
        line-height: 1.2;
      }

      .subtituloSistema,
      .areaUploadNovo small,
      .centralUploadTopo p {
        font-size: 13px;
      }

      .dashboardTopo,
      .centralUploadTopo,
      .centralConfiguracoesTopo,
      .centralAdministrativaTopo,
      .areaGavetasTopo,
      .linhaAnotacao {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
      }

      .dashboard {
        grid-template-columns: 1fr;
      }

      .cardDash,
      .cardDash.largo,
      .dashboard .centralDuplicidades {
        grid-column: auto;
        min-width: 0;
      }



      .busca {
        font-size: 15px;
        padding: 12px;
      }

      .areaUploadNovo,
      .centralUploadAcoes,
      .confirmacaoFecharUploadAcoes,
      .linhaBotoes,
      .barraFiltros,
      .filtrosAvancados.aberto,
      .duplicidadeAcoes {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
      }

      .areaUploadNovo button,
      .centralUploadAcoes button,
      .confirmacaoFecharUploadAcoes button,
      .linhaBotoes button,
      .barraFiltros button,
      .filtrosAvancados button,
      .linhaAnotacao button,
      .duplicidadeAcoes button,
      .centralDuplicidadesTopo button,
      .duplicidadeArquivo button,
      .btnVersaoSharePoint {
        width: 100%;
      }



      .painelLateral {
        width: min(100vw, 470px);
        right: -100vw;
      }

      .painelCentralDuplicidades {
        left: -100vw;
        right: auto;
      }

      .painelTopo,
      .painelConteudo {
        padding: 14px;
      }

      .painelTopo h2 {
        font-size: 17px;
        overflow-wrap: anywhere;
      }

      .acoes {
        grid-template-columns: 1fr;
      }

      .formAcao,
      .anotacaoBox,
      .itemHistorico,
      .itemVersao,
      .duplicidadeCard {
        overflow-wrap: anywhere;
      }

      .centralUpload {
        padding: 14px;
      }

      .listaArquivosUpload li {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 420px) {
      body {
        padding: 8px;
      }

      .card {
        padding: 12px;
      }



      .painelLateral {
        width: 100vw;
      }
    }

    /* AJUSTE_VISUAL_DASHBOARD_BUSCA_20260526 */
    #areaSistema {
      margin-top: 14px;
    }

    .cabecalhoSistema {
      margin-bottom: 10px;
      padding: 14px 16px;
    }

    .logoSistema {
      width: 54px;
      height: 54px;
    }

    .cabecalhoSistema h1 {
      font-size: 26px;
    }

    .cabecalhoSistema .subtituloSistema {
      font-size: 13px;
    }

    .areaUploadNovo {
      padding: 10px 12px;
      margin-bottom: 10px;
    }

    .areaUploadNovo small {
      margin-top: 4px;
    }

    .navegacaoDocumentosTopo {
      display: grid;
      grid-template-columns: minmax(260px, auto) minmax(340px, 1fr);
      gap: 10px 14px;
      align-items: end;
      margin: 8px 0 12px;
      padding: 10px;
      border: 1px solid #dbeafe;
      border-radius: 12px;
      background: #f8fbff;
    }

    .navegacaoDocumentosTopo .abasDocumentos {
      margin: 0;
    }

    .buscaLinha {
      display: grid;
      gap: 6px;
    }

    .buscaLinha h2 {
      margin: 0;
      color: #0f2f66;
      font-size: 16px;
    }

    .buscaLinha .busca {
      margin: 0;
      padding: 10px 12px;
      font-size: 14px;
    }

    .dashboardTopo {
      margin: 10px 0 8px;
      padding-top: 10px;
    }

    .dashboardTopo h2 {
      font-size: 17px;
    }

    .dashboard {
      grid-template-columns: repeat(6, minmax(118px, 1fr));
      gap: 8px;
      margin: 8px 0 12px;
    }

    .cardDash,
    .dashboard .centralDuplicidades {
      min-height: 66px;
      padding: 10px 12px;
      border-radius: 10px;
    }

    .cardDash span {
      margin-bottom: 5px;
      font-size: 11px;
    }

    .cardDash strong {
      font-size: 23px;
    }

    .cardDash small,
    .cardParesIgnorados small,

    .cardHistoricoGeral small {
      margin-top: 4px;
      font-size: 11px;
      line-height: 1.25;
    }

    .dashboard .centralDuplicidades {
      cursor: pointer;
    }

    .dashboard .centralDuplicidadesTopo {
      margin-bottom: 4px;
    }

    .dashboard .centralDuplicidadesTopo h2 {
      font-size: 13px;
    }

    .dashboard .centralDuplicidadesTopo p {
      display: none;
    }

    .dashboard .acoesCentralDuplicidades button {
      padding: 6px 8px;
      font-size: 11px;
    }

    .resumoCentralDuplicidades {
      font-size: 12px;
    }

    .painelDashboard .painelConteudo {
      background: #f8fbff;
    }


.painelVazio {
      margin: 0;
      color: #64748b;
    }

    .itemHistoricoGeral {
      display: grid;
      gap: 5px;
      padding: 10px;
      border: 1px solid #dbeafe;
      border-radius: 10px;
      background: #ffffff;
      color: #334155;
      margin-bottom: 8px;
    }

    .itemHistoricoGeral strong {
      color: #0f2f66;
    }

    .itemHistoricoGeral span,
    .itemHistoricoGeral small,
    .itemHistoricoGeral div {
      color: #475569;
      line-height: 1.35;
    }

    .itemArquivo {
      padding: 11px 12px;
      border-radius: 10px;
    }

body.modoCompacto {
      padding: 12px;
    }

    body.modoCompacto .card {
      padding: 14px;
      border-radius: 12px;
    }

    body.modoCompacto .cabecalhoSistema {
      padding: 10px 12px;
      margin: -4px -4px 8px;
    }

    body.modoCompacto .logoSistema {
      width: 42px;
      height: 42px;
      padding: 4px;
    }

    body.modoCompacto .cabecalhoSistema h1 {
      font-size: 22px;
    }

    body.modoCompacto .cabecalhoSistema .subtituloSistema {
      font-size: 12px;
    }

    body.modoCompacto .areaUploadNovo,
    body.modoCompacto .navegacaoDocumentosTopo {
      padding: 8px;
      margin-bottom: 8px;
    }

    body.modoCompacto .dashboard {
      gap: 6px;
      margin: 6px 0 8px;
    }

    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .cardDash,
    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidades {
      padding: 8px 9px;
      min-height: 54px;
    }

    body.modoCompacto .cardDash strong {
      font-size: 20px;
    }


    body.modoCompacto .linhaMovimentacaoArquivo {
      margin-top: 5px;
      padding: 5px 7px;
    }

    body.modoCompacto .barraFiltros,
    body.modoCompacto .filtrosAvancados {
      margin: 6px 0;
      padding: 7px;
    }

    @media (min-width: 901px) {
      .card {
        max-width: 1240px;
      }
    }

    @media (max-width: 900px) {
      .navegacaoDocumentosTopo {
        grid-template-columns: 1fr;
      }

      .dashboard {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 560px) {
      .cabecalhoSistema {
        padding: 12px;
      }

      .dashboard {
        grid-template-columns: 1fr;
      }

      .navegacaoDocumentosTopo {
        padding: 8px;
      }

      .buscaLinha .busca {
        font-size: 14px;
      }
    }








    /* UX_FINAL_CURTO_20260526 */
    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) {
      grid-template-columns: repeat(5, minmax(130px, 1fr));
      align-items: stretch;
      margin-bottom: 8px;
    }

    .cardDash,
    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidades {
      min-height: 58px;
      padding: 9px 11px;
      display: grid;
      align-content: center;
    }

    .cardDash strong {
      font-size: 21px;
    }

    .cardParesIgnorados {
      cursor: default;
    }

    .cardParesIgnorados:hover:not(:disabled) {
      background: #f8fafc;
      color: #1f2937;
      border-color: #e5e7eb;
      box-shadow: none;
    }

    .navegacaoDocumentosTopo {
      margin-top: 6px;
    }






    .itemHistoricoGeral {
      padding: 8px 9px;
      margin-bottom: 6px;
      gap: 3px;
    }

    .itemHistoricoGeral strong,
    .itemHistoricoGeral span,
    .itemHistoricoGeral small,
    .itemHistoricoGeral div {
      font-size: 12px;
    }

    .painelLateral {
      transition: right .18s ease, box-shadow .18s ease;
    }

    .painelLateral.aberto {
      box-shadow: -18px 0 36px rgba(15, 23, 42, .18);
    }

    .centralConfiguracoesTopo {
      position: static;
      background: #ffffff;
      padding-bottom: 8px;
    }

    .centralConfiguracoes .btnFechar {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-width: 34px;
      height: 34px;
      padding: 0;
      border-radius: 999px;
    }

    .uploadNomeRepetido {
      border-color: #fde68a !important;
      background: #fffdf5 !important;
    }

    .avisoNomeRepetido {
      display: inline-flex !important;
      width: fit-content;
      margin-top: 4px;
      padding: 3px 7px;
      border-radius: 999px;
      background: #fffbeb;
      color: #92400e !important;
      border: 1px solid #fde68a;
      font-size: 11px !important;
      font-weight: 700;
    }

    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) {
      grid-template-columns: repeat(5, minmax(110px, 1fr));
    }

    body.modoCompacto .cardDash,
    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidades {
      min-height: 48px;
      padding: 7px 8px;
    }

    /* FASE1_UX_BAIXO_RISCO_20260527 */
    .centralConfiguracoes .btnFechar {
      background: #fee2e2;
      color: #991b1b;
      border: 1px solid #fecaca;
      font-weight: 800;
      box-shadow: 0 2px 8px rgba(153, 27, 27, 0.14);
    }

    .centralConfiguracoes .btnFechar:hover:not(:disabled),
    .centralConfiguracoes .btnFechar:focus-visible:not(:disabled) {
      background: #fecaca;
      color: #7f1d1d;
    }

    .listaGavetasConfiguracao {
      grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    }

    .itemGavetaConfiguracao {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 8px;
      align-items: center;
    }

    .itemGavetaConfiguracao > div:first-child {
      min-width: 0;
    }

    .itemGavetaConfiguracao small {
      max-width: 100%;
      white-space: nowrap;
      overflow: hidden;
      text-overflow: ellipsis;
    }

    .dashboard {
      align-items: stretch;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .cardDash,
    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .centralDuplicidades {
      min-height: 74px;
      box-sizing: border-box;
      display: grid;
      align-content: center;
      grid-template-rows: auto;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidades {
      gap: 3px;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .centralDuplicidadesTopo {
      margin-bottom: 2px;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .acoesCentralDuplicidades {
      min-height: 24px;
    }

    .dashboard:not(.dashboardAcoes):not(.dashboardContadores) .resumoCentralDuplicidades {
      display: -webkit-box;
      margin: 0;
      overflow: hidden;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
      line-height: 1.25;
    }

    #listaDocumentos > li {
      margin-bottom: 7px;
    }




    .seloGaveta {
      margin: 1px 0 4px 0;
      padding: 2px 6px;
      font-size: 11px !important;
      line-height: 1.2;
    }

    .linhaMovimentacaoArquivo {
      margin-top: 4px;
      padding: 4px 6px;
      border-radius: 7px;
    }

    .linhaDataArquivo {
      margin-top: 3px;
    }

    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .cardDash,
    body.modoCompacto .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .centralDuplicidades {
      min-height: 64px;
    }


    @media (max-width: 560px) {
      .listaGavetasConfiguracao {
        grid-template-columns: 1fr;
      }

      .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .cardDash,
      .dashboard:not(.dashboardAcoes):not(.dashboardContadores) > .centralDuplicidades {
        min-height: 68px;
      }
    }

    /* FASE3_PAINEIS_DASHBOARD_20260527 */
    .painelCentralDuplicidades {
      transition: left .18s ease, box-shadow .18s ease;
    }

    .painelDashboard {
      transition: right .18s ease, box-shadow .18s ease;
    }

    .cardParesIgnorados,
    .cardParesIgnorados:hover:not(:disabled) {
      cursor: default;
      background: #f8fafc;
      color: #1f2937;
      border-color: #e5e7eb;
      box-shadow: none;
      transform: none;
    }

    /* FASE5_RESPONSIVIDADE_COMPACTA_20260527 */
    .card {
      width: min(100%, 1240px);
      box-sizing: border-box;
    }

    .cabecalhoSistema {
      align-items: center;
      gap: 12px;
      padding: 12px 14px;
    }

    .cabecalhoMarca {
      min-width: 0;
      align-items: center;
    }

    .cabecalhoMarca > div {
      min-width: 0;
    }

    .cabecalhoSistema h1 {
      line-height: 1.08;
      margin: 0 0 3px 0;
    }

    .cabecalhoSistema .subtituloSistema {
      line-height: 1.25;
    }

    .cabecalhoAcoes {
      align-items: center;
      gap: 6px;
    }

    .areaUploadNovo,
    .navegacaoDocumentosTopo,
    .areaGavetas,
    .centralConfiguracoes {
      box-sizing: border-box;
    }

    .areaUploadNovo {
      padding: 8px 10px;
      align-items: center;
    }

    .dashboard {
      grid-template-columns: repeat(6, minmax(116px, 1fr));
      gap: 7px;
      margin: 6px 0 8px;
    }

    .dashboard > .cardDash,
    .dashboard > .centralDuplicidades {
      min-height: 68px;
      padding: 8px 10px;
    }

    .cardDash span {
      margin-bottom: 4px;
      line-height: 1.15;
    }

    .cardDash strong {
      line-height: 1.08;
    }

    .cardDash small,
    .cardParesIgnorados small,

    .cardHistoricoGeral small {
      margin-top: 3px;
      line-height: 1.2;
    }

    .navegacaoDocumentosTopo {
      grid-template-columns: minmax(230px, auto) minmax(300px, 1fr);
      gap: 8px 12px;
      padding: 8px;
      margin: 6px 0 8px;
    }

    .abasDocumentos {
      gap: 6px;
    }


    .buscaLinha {
      gap: 4px;
    }

    .buscaLinha h2 {
      font-size: 15px;
      line-height: 1.15;
    }

    .buscaLinha .busca {
      min-height: 38px;
      padding: 9px 11px;
    }




    .centralConfiguracoes {
      padding: 12px;
      margin-bottom: 12px;
      max-height: min(78vh, 720px);
      overflow: auto;
    }

    .centralConfiguracoesTopo {
      padding-bottom: 6px;
    }

    .gradeConfiguracoes {
      grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
      gap: 8px;
    }

    .listaGavetasConfiguracao {
      grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    }

    .painelLateral {
      width: min(460px, 94vw);
    }

    .painelCentralDuplicidades {
      width: min(700px, 96vw);
    }

    .painelTopo,
    .painelConteudo {
      padding: 14px;
    }

    .painelTopo h2 {
      line-height: 1.15;
    }

    @media (max-width: 1180px) {
      .dashboard {
        grid-template-columns: repeat(3, minmax(150px, 1fr));
      }

      .navegacaoDocumentosTopo {
        grid-template-columns: 1fr;
        align-items: stretch;
      }
    }

    @media (max-width: 760px) {
      body {
        padding: 10px;
      }

      .card {
        padding: 12px;
      }

      .cabecalhoSistema {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
        margin: -4px -4px 8px;
      }

      .cabecalhoAcoes {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .cabecalhoAcoes button {
        width: 100%;
        min-width: 0;
        padding-left: 8px;
        padding-right: 8px;
      }

      .dashboard {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .dashboard > .cardDash,
      .dashboard > .centralDuplicidades {
        min-height: 64px;
      }

      .abasDocumentos {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
      }


      .centralUpload,
      .centralConfiguracoes {
        padding: 10px;
      }

      .painelLateral,
      .painelDashboard {
        width: min(100vw, 470px);
        max-width: 100vw;
      }
    }

    @media (max-width: 480px) {
      body {
        padding: 8px;
      }

      .card {
        padding: 10px;
      }

      .cabecalhoMarca {
        grid-template-columns: auto 1fr;
      }

      .logoSistema {
        width: 42px;
        height: 42px;
      }

      .cabecalhoSistema h1 {
        font-size: 21px;
      }

      .cabecalhoSistema .subtituloSistema {
        font-size: 12px;
      }

      .cabecalhoAcoes {
        grid-template-columns: 1fr;
      }

      .dashboard,
      body.modoCompacto .dashboard {
        grid-template-columns: 1fr;
      }

      .navegacaoDocumentosTopo,
      .areaGavetas {
        padding: 7px;
      }

      .buscaLinha h2 {
        font-size: 14px;
      }

      .buscaLinha .busca {
        min-height: 36px;
        font-size: 14px;
      }

      .itemArquivo {
        padding: 7px 8px;
      }

      .painelLateral,
      .painelDashboard,
      .painelCentralDuplicidades {
        width: 100vw;
        max-width: 100vw;
      }
    }      .dataHistoricoCard {
        text-align: left;
      }

      .listaDetalhesHistorico li {
        display: grid;
        gap: 2px;
      }

      .valorDetalheHistorico {
        text-align: left;
      }
    }

    /* Cards do histórico compactos */
    .itemHistorico {
      padding: 10px 11px;
    }

    .cabecalhoHistoricoCard {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 3px;
    }

    .acaoHistoricoCard {
      display: inline-flex;
      align-items: center;
      gap: 5px;
      font-size: 0.82rem;
      line-height: 1.2;
      letter-spacing: 0.01em;
      color: #0f172a;
    }

    .dataHistoricoCard {
      flex: 0 0 auto;
      font-size: 0.66rem;
      color: #64748b;
      text-align: right;
      line-height: 1.15;
      white-space: nowrap;
    }

    .usuarioHistoricoCard {
      margin-bottom: 5px;
      font-size: 0.7rem;
      color: #64748b;
      line-height: 1.25;
      word-break: break-word;
    }

    #historicoArquivo .itemHistorico {
      border-left: 4px solid #cbd5e1;
    }

    #historicoArquivo .historicoAcaoVisualizou {
      background: #eff6ff;
      border-color: #bfdbfe;
      border-left-color: #60a5fa;
    }

    #historicoArquivo .historicoAcaoEnviou {
      background: #f0fdf4;
      border-color: #bbf7d0;
      border-left-color: #4ade80;
    }

    #historicoArquivo .historicoAcaoRenomeou {
      background: #f5f3ff;
      border-color: #ddd6fe;
      border-left-color: #8b5cf6;
    }

    #historicoArquivo .historicoAcaoSubstituiu {
      background: #fffbeb;
      border-color: #fde68a;
      border-left-color: #f59e0b;
    }

    #historicoArquivo .historicoAcaoMesclou {
      background: #ecfeff;
      border-color: #a5f3fc;
      border-left-color: #06b6d4;
    }

    #historicoArquivo .historicoAcaoLixeira {
      background: #fff1f2;
      border-color: #fecdd3;
      border-left-color: #fb7185;
    }

    #historicoArquivo .historicoAcaoRestaurado {
      background: #ecfdf5;
      border-color: #a7f3d0;
      border-left-color: #10b981;
    }

    #historicoArquivo .historicoAcaoAnotacao {
      background: #f8fafc;
      border-color: #dbeafe;
      border-left-color: #94a3b8;
    }

    .blocoHistoricoCard {
      margin-top: 5px;
      padding: 6px 7px;
      border: 1px solid rgba(148, 163, 184, 0.28);
      border-radius: 9px;
      background: rgba(248, 250, 252, 0.74);
    }

    .tituloBlocoHistorico {
      display: block;
      margin-bottom: 4px;
      font-size: 0.61rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.045em;
      color: #64748b;
    }

    .listaDetalhesHistorico {
      list-style: none;
      display: grid;
      gap: 3px;
      margin: 0;
      padding: 0;
    }

    .listaDetalhesHistorico li {
      display: flex;
      align-items: flex-start;
      justify-content: space-between;
      gap: 8px;
      padding-bottom: 3px;
      border-bottom: 1px dashed rgba(148, 163, 184, 0.32);
    }

    .listaDetalhesHistorico li:last-child {
      border-bottom: 0;
      padding-bottom: 0;
    }

    .rotuloDetalheHistorico {
      flex: 0 0 auto;
      color: #64748b;
      font-size: 0.69rem;
      line-height: 1.25;
    }

    .valorDetalheHistorico {
      color: #0f172a;
      font-size: 0.71rem;
      line-height: 1.25;
      text-align: right;
      word-break: break-word;
    }

    .motivoHistoricoCard p {
      margin: 0;
      color: #1f2937;
      font-size: 0.71rem;
      line-height: 1.32;
      white-space: pre-wrap;
      word-break: break-word;
    }

    @media (max-width: 640px) {
      .cabecalhoHistoricoCard {
        display: grid;
        gap: 2px;
      }

      .dataHistoricoCard {
        text-align: left;
        white-space: normal;
      }

      .listaDetalhesHistorico li {
        display: grid;
        gap: 1px;
      }

      .valorDetalheHistorico {
        text-align: left;
      }
    }
    /* Histórico geral super compacto */
    .itemHistoricoGeral.historicoGeralSuperCompacto {
      display: block;
      margin-bottom: 5px;
      padding: 6px 8px;
      border-radius: 9px;
      border: 1px solid rgba(148, 163, 184, 0.22);
      background: rgba(255, 255, 255, 0.94);
      box-shadow: none;
    }

    .arquivoHistoricoGeralTitulo {
      display: block;
      margin: 0 0 2px;
      color: #0f172a;
      font-size: 0.86rem;
      line-height: 1.14;
      font-weight: 900;
      word-break: normal;
      overflow-wrap: break-word;
    }

    .linhaAcaoHistoricoGeral {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin: 0;
    }

    .acaoHistoricoGeralChip {
      color: #1e3a8a;
      font-size: 0.63rem;
      line-height: 1.1;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.035em;
    }

    .dataHistoricoGeralCard {
      flex: 0 0 auto;
      color: #64748b;
      font-size: 0.61rem;
      line-height: 1.1;
      white-space: nowrap;
      text-align: right;
    }

    .usuarioHistoricoGeralCard {
      margin-top: 2px;
      color: #64748b;
      font-size: 0.62rem;
      line-height: 1.14;
      word-break: break-word;
    }

    .historicoGeralSuperCompacto .blocoHistoricoCard {
      margin-top: 4px;
      padding: 0;
      border: 0;
      border-radius: 0;
      background: transparent;
    }

    .historicoGeralSuperCompacto .tituloBlocoHistorico {
      margin: 0 0 2px;
      font-size: 0.55rem;
      line-height: 1.05;
      letter-spacing: 0.04em;
      color: #64748b;
    }

    .historicoGeralSuperCompacto .listaDetalhesHistorico {
      gap: 0;
    }

    .historicoGeralSuperCompacto .listaDetalhesHistorico li {
      display: flex;
      align-items: baseline;
      justify-content: flex-start;
      gap: 5px;
      padding: 0;
      border-bottom: 0;
      min-height: 0;
    }

    .historicoGeralSuperCompacto .rotuloDetalheHistorico {
      flex: 0 0 auto;
      color: #64748b;
      font-size: 0.62rem;
      line-height: 1.16;
    }

    .historicoGeralSuperCompacto .rotuloDetalheHistorico::after {
      content: ":";
    }

    .historicoGeralSuperCompacto .valorDetalheHistorico {
      color: #0f172a;
      font-size: 0.64rem;
      line-height: 1.16;
      text-align: left;
      word-break: break-word;
    }

    .historicoGeralSuperCompacto .motivoHistoricoCard {
      display: flex;
      align-items: baseline;
      gap: 5px;
    }

    .historicoGeralSuperCompacto .motivoHistoricoCard .tituloBlocoHistorico {
      margin: 0;
      flex: 0 0 auto;
    }

    .historicoGeralSuperCompacto .motivoHistoricoCard .tituloBlocoHistorico::after {
      content: ":";
    }

    .historicoGeralSuperCompacto .motivoHistoricoCard p {
      margin: 0;
      color: #1f2937;
      font-size: 0.64rem;
      line-height: 1.18;
      white-space: normal;
      word-break: break-word;
    }

    @media (max-width: 640px) {
      .linhaAcaoHistoricoGeral {
        display: grid;
        gap: 1px;
      }

      .dataHistoricoGeralCard {
        text-align: left;
        white-space: normal;
      }

      .historicoGeralSuperCompacto .listaDetalhesHistorico li {
        display: grid;
        gap: 0;
      }

      .historicoGeralSuperCompacto .motivoHistoricoCard {
        display: grid;
        gap: 1px;
      }
    }
    /* Fim histórico geral super compacto */

    /* Filtro de datas do Histórico Geral */
    .filtroHistoricoGeral {
      position: sticky;
      top: 0;
      z-index: 2;
      margin-bottom: 7px;
      padding: 7px 8px;
      border: 1px solid rgba(148, 163, 184, 0.28);
      border-radius: 10px;
      background: rgba(248, 250, 252, 0.96);
      backdrop-filter: blur(6px);
    }

    .topoFiltroHistoricoGeral {
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 5px;
    }

    .topoFiltroHistoricoGeral strong {
      color: #0f172a;
      font-size: 0.72rem;
      line-height: 1.1;
    }

    .topoFiltroHistoricoGeral small {
      color: #64748b;
      font-size: 0.61rem;
      line-height: 1.1;
      text-align: right;
    }

    .linhaBotoesFiltroHistoricoGeral {
      display: flex;
      flex-wrap: wrap;
      gap: 4px;
    }

    .botaoFiltroHistoricoGeral,
    .botaoAplicarFiltroHistorico {
      appearance: none;
      border: 1px solid rgba(148, 163, 184, 0.42);
      border-radius: 999px;
      background: #ffffff;
      color: #334155;
      cursor: pointer;
      font-size: 0.61rem;
      font-weight: 800;
      line-height: 1;
      padding: 5px 8px;
      transition: 0.15s ease;
    }

    .botaoFiltroHistoricoGeral:hover,
    .botaoAplicarFiltroHistorico:hover {
      border-color: rgba(37, 99, 235, 0.45);
      color: #1d4ed8;
    }

    .botaoFiltroHistoricoGeral.ativo {
      border-color: rgba(37, 99, 235, 0.4);
      background: rgba(37, 99, 235, 0.08);
      color: #1d4ed8;
    }

    .camposFiltroHistoricoPersonalizado {
      display: none;
      grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
      gap: 5px;
      align-items: end;
      margin-top: 6px;
    }

    .camposFiltroHistoricoPersonalizado.visivel {
      display: grid;
    }

    .camposFiltroHistoricoPersonalizado label {
      display: grid;
      gap: 2px;
      color: #64748b;
      font-size: 0.58rem;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: 0.04em;
    }

    .camposFiltroHistoricoPersonalizado input {
      min-width: 0;
      height: 27px;
      padding: 4px 6px;
      border: 1px solid rgba(148, 163, 184, 0.42);
      border-radius: 8px;
      color: #0f172a;
      font-size: 0.68rem;
    }

    .historicoSemResultado {
      margin: 6px 0 0;
      padding: 8px;
      border-radius: 8px;
      background: rgba(248, 250, 252, 0.9);
      color: #64748b;
      font-size: 0.72rem;
      text-align: center;
    }

    @media (max-width: 640px) {
      .topoFiltroHistoricoGeral {
        display: grid;
        gap: 3px;
      }

      .topoFiltroHistoricoGeral small {
        text-align: left;
      }

      .camposFiltroHistoricoPersonalizado {
        grid-template-columns: 1fr;
      }
    }
    /* Fim filtro de datas do Histórico Geral */
    /* Busca textual do Histórico Geral */
    .linhaBuscaHistoricoGeral {
      margin-top: 6px;
    }

    .buscaHistoricoGeral {
      width: 100%;
      height: 30px;
      padding: 5px 9px;
      border: 1px solid rgba(148, 163, 184, 0.42);
      border-radius: 9px;
      background: #ffffff;
      color: #0f172a;
      font-size: 0.7rem;
      line-height: 1.1;
      outline: none;
      transition: 0.15s ease;
    }

    .buscaHistoricoGeral::placeholder {
      color: #94a3b8;
    }

    .buscaHistoricoGeral:hover {
      border-color: rgba(15, 47, 102, 0.28);
      background: #fbfdff;
    }

    .buscaHistoricoGeral:focus {
      border-color: rgba(15, 47, 102, 0.48);
      box-shadow: 0 0 0 3px rgba(15, 47, 102, 0.08);
      background: #ffffff;
    }
    /* Fim busca textual do Histórico Geral */
    /* Ordenação do Histórico Geral */
    .linhaBuscaHistoricoGeral {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      gap: 5px;
      align-items: center;
    }

    .botoesOrdemHistoricoGeral {
      display: inline-flex;
      gap: 4px;
      align-items: center;
    }

    .botaoOrdemHistoricoGeral {
      width: 30px;
      height: 30px;
      border: 1px solid rgba(148, 163, 184, 0.42);
      border-radius: 9px;
      background: #ffffff;
      color: #334155;
      cursor: pointer;
      font-size: 0.85rem;
      font-weight: 900;
      line-height: 1;
      display: inline-grid;
      place-items: center;
      transition: 0.15s ease;
    }

    .botaoOrdemHistoricoGeral:hover,
    .botaoOrdemHistoricoGeral:focus-visible {
      color: #0f2f66;
      background: #eef4ff;
      border-color: rgba(15, 47, 102, 0.32);
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.10);
      outline: none;
    }

    .botaoOrdemHistoricoGeral.ativo {
      color: #ffffff;
      background: #0f2f66;
      border-color: #0f2f66;
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.18);
    }

    .botaoOrdemHistoricoGeral.ativo:hover,
    .botaoOrdemHistoricoGeral.ativo:focus-visible {
      color: #ffffff;
      background: #123a7a;
      border-color: #123a7a;
    }

    @media (max-width: 640px) {
      .linhaBuscaHistoricoGeral {
        grid-template-columns: 1fr;
      }

      .botoesOrdemHistoricoGeral {
        justify-content: flex-start;
      }
    }
    /* Fim ordenação do Histórico Geral */


    /* Ajuste de hover do filtro do Histórico Geral */
    .filtroHistoricoGeral .botaoFiltroHistoricoGeral {
      color: #334155;
      background: #ffffff;
    }

    .filtroHistoricoGeral .botaoFiltroHistoricoGeral:hover,
    .filtroHistoricoGeral .botaoFiltroHistoricoGeral:focus-visible {
      color: #0f2f66;
      background: #eef4ff;
      border-color: rgba(15, 47, 102, 0.32);
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.10);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral .botaoFiltroHistoricoGeral.ativo {
      color: #ffffff;
      background: #0f2f66;
      border-color: #0f2f66;
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.18);
    }

    .filtroHistoricoGeral .botaoFiltroHistoricoGeral.ativo:hover,
    .filtroHistoricoGeral .botaoFiltroHistoricoGeral.ativo:focus-visible {
      color: #ffffff;
      background: #123a7a;
      border-color: #123a7a;
      box-shadow: 0 1px 5px rgba(15, 47, 102, 0.22);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral .botaoAplicarFiltroHistorico:hover,
    .filtroHistoricoGeral .botaoAplicarFiltroHistorico:focus-visible {
      color: #0f2f66;
      background: #eef4ff;
      border-color: rgba(15, 47, 102, 0.32);
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.10);
      transform: none;
      outline: none;
    }
    /* Fim ajuste de hover do filtro do Histórico Geral */


    /* Correção final de hover dos controles do Histórico Geral */
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral,
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral,
    .filtroHistoricoGeral button.botaoAplicarFiltroHistorico {
      transform: none;
    }

    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral:not(.ativo):hover:not(:disabled),
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral:not(.ativo):focus-visible:not(:disabled) {
      color: #0f2f66;
      background: #eef4ff;
      border-color: rgba(15, 47, 102, 0.32);
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.10);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo,
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo:hover:not(:disabled),
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo:focus-visible:not(:disabled),
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo:active:not(:disabled) {
      color: #ffffff;
      background: #0f2f66;
      border-color: #0f2f66;
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.18);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo:hover:not(:disabled),
    .filtroHistoricoGeral button.botaoOrdemHistoricoGeral.ativo:focus-visible:not(:disabled) {
      background: #123a7a;
      border-color: #123a7a;
    }

    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral:not(.ativo):hover:not(:disabled),
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral:not(.ativo):focus-visible:not(:disabled),
    .filtroHistoricoGeral button.botaoAplicarFiltroHistorico:hover:not(:disabled),
    .filtroHistoricoGeral button.botaoAplicarFiltroHistorico:focus-visible:not(:disabled) {
      color: #0f2f66;
      background: #eef4ff;
      border-color: rgba(15, 47, 102, 0.32);
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.10);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo,
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo:hover:not(:disabled),
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo:focus-visible:not(:disabled),
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo:active:not(:disabled) {
      color: #ffffff;
      background: #0f2f66;
      border-color: #0f2f66;
      box-shadow: 0 1px 4px rgba(15, 47, 102, 0.18);
      transform: none;
      outline: none;
    }

    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo:hover:not(:disabled),
    .filtroHistoricoGeral button.botaoFiltroHistoricoGeral.ativo:focus-visible:not(:disabled) {
      background: #123a7a;
      border-color: #123a7a;
    }
    /* Fim correção final de hover dos controles do Histórico Geral */

    /* REGRA_TECNICA_CSS_BOTOES_20260527
       Botões/componentes novos devem ter classe própria e hover escopado.
       Evitar depender apenas de button:hover global.
       A regra global de hover foi limitada para não atingir:
       itemArquivo, abaDocumento, filtros/ordenação do Histórico Geral,
       cards de dashboard e central de duplicidades.
    */

    /* REGRA_TECNICA_ITEMARQUIVO_HOVER_20260527
       Hover oficial dos cards de arquivo:
       usar button.itemArquivo:hover:not(:disabled) e seus filhos.
       Evitar recriar regras genéricas .itemArquivo:hover, pois elas acumulam conflito
       com versões antigas e com estados internos como seloGaveta, linhaDataArquivo
       e linhaMovimentacaoArquivo.
    */


/* INICIO_HOVER_BOTOES_UPLOAD_CONFIGURACOES_20260527 */
    .centralUpload .btnUploadSecundario,
    #btnAbrirConfiguracoesTopo.btnConfiguracoesTopo {
      background: #f8fafc;
      color: #334155;
      border: 1px solid #cbd5e1;
      box-shadow: none;
    }

    .centralUpload .btnUploadSecundario:hover:not(:disabled),
    #btnAbrirConfiguracoesTopo.btnConfiguracoesTopo:hover:not(:disabled) {
      background: #e2e8f0;
      color: #0f172a;
      border-color: #94a3b8;
      box-shadow: 0 4px 10px rgba(15, 47, 102, .10);
      transform: none;
    }

    .centralUpload .btnUploadSecundario:focus-visible,
    #btnAbrirConfiguracoesTopo.btnConfiguracoesTopo:focus-visible {
      outline: 2px solid #bfdbfe;
      outline-offset: 2px;
    }

    .centralUpload .btnUploadSecundario:active:not(:disabled),
    #btnAbrirConfiguracoesTopo.btnConfiguracoesTopo:active:not(:disabled) {
      background: #dbeafe;
      color: #0f172a;
      transform: translateY(1px);
    }
/* FIM_HOVER_BOTOES_UPLOAD_CONFIGURACOES_20260527 */

/* INICIO_LAYOUT_MODERNO_1A_CABECALHO_UPLOAD_20260527 */
    body.visualModernoFase1A {
      position: relative;
      isolation: isolate;
      min-height: 100vh;
      background:
        radial-gradient(circle at top left, rgba(59, 130, 246, .14), transparent 34%),
        linear-gradient(180deg, #eef4fb 0%, #f8fafc 52%, #eef2f7 100%);
    }

    body.visualModernoFase1A::before {
      content: "";
      position: fixed;
      inset: 0;
      z-index: 0;
      pointer-events: none;
      background:
        linear-gradient(180deg, rgba(239, 246, 255, .78), rgba(248, 250, 252, .88)),
        url("assets/imagens/arquivo-digital-capa.jpg") center/cover no-repeat;
      opacity: .62;
      filter: saturate(.98) contrast(1.04);
    }

    body.visualModernoFase1A .card {
      position: relative;
      z-index: 1;
      border-radius: 24px;
      border: 1px solid rgba(148, 163, 184, .32);
      background: rgba(255, 255, 255, .96);
      box-shadow: 0 24px 70px rgba(15, 23, 42, .12);
      overflow: hidden;
      backdrop-filter: blur(3px);
    }

    body.visualModernoFase1A .cabecalhoSistema {
      position: relative;
      align-items: center;
      margin: -18px -18px 14px;
      padding: 18px 20px;
      border-radius: 24px;
      overflow: hidden;
      background-clip: padding-box;
      background:
        linear-gradient(135deg, rgba(15, 47, 102, .98) 0%, rgba(29, 78, 216, .88) 54%, rgba(14, 116, 144, .78) 100%),
        url("assets/imagens/arquivo-digital-capa.jpg") center/cover;
      box-shadow: inset 0 -1px 0 rgba(255, 255, 255, .20);
    }

    body.visualModernoFase1A .cabecalhoSistema::after {
      content: "";
      position: absolute;
      inset: auto -80px -120px auto;
      width: 320px;
      height: 320px;
      border-radius: 999px;
      background: rgba(255, 255, 255, .10);
      pointer-events: none;
      overflow: hidden;
    }

    body.visualModernoFase1A .cabecalhoMarca {
      position: relative;
      z-index: 1;
      gap: 12px;
      align-items: center;
    }

    body.visualModernoFase1A .logoSistema {
      width: 54px;
      height: 54px;
      border-radius: 18px;
      background: rgba(255, 255, 255, .96);
      box-shadow: 0 10px 26px rgba(15, 23, 42, .20);
    }

    body.visualModernoFase1A .cabecalhoSistema h1 {
      font-size: clamp(24px, 3vw, 34px);
      letter-spacing: -.03em;
      margin: 0 0 2px;
      color: #ffffff;
    }

    body.visualModernoFase1A .cabecalhoSistema .subtituloSistema {
      color: rgba(219, 234, 254, .96);
      font-size: 13px;
      font-weight: 600;
      letter-spacing: .01em;
    }

    body.visualModernoFase1A .cabecalhoAcoes {
      position: relative;
      z-index: 1;
      min-width: 300px;
      gap: 7px;
      align-items: center;
    }

    body.visualModernoFase1A .cabecalhoAcoes #status {
      color: rgba(239, 246, 255, .92);
      font-size: 11px;
      font-weight: 600;
      text-transform: none;
    }

    body.visualModernoFase1A .btnCabecalhoAcao,
    body.visualModernoFase1A #btnAbrirConfiguracoesTopo.btnCabecalhoAcao {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 7px;
      min-height: 34px;
      margin: 0;
      padding: 8px 11px;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, .28);
      background: rgba(255, 255, 255, .14);
      color: #ffffff;
      font-size: 12px;
      font-weight: 800;
      line-height: 1;
      box-shadow: none;
      backdrop-filter: blur(12px);
      white-space: nowrap;
      transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    }

    body.visualModernoFase1A .btnCabecalhoAcao .iconeBotao,
    body.visualModernoFase1A #btnAbrirConfiguracoesTopo.btnCabecalhoAcao .iconeBotao {
      width: 15px;
      height: 15px;
      flex: 0 0 auto;
      filter: brightness(0) invert(1);
    }

    body.visualModernoFase1A .btnCabecalhoAcao:hover:not(:disabled),
    body.visualModernoFase1A #btnAbrirConfiguracoesTopo.btnCabecalhoAcao:hover:not(:disabled) {
      background: rgba(255, 255, 255, .24);
      color: #ffffff;
      border-color: rgba(255, 255, 255, .52);
      transform: translateY(-1px);
      box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
    }

    body.visualModernoFase1A #btnSair.btnCabecalhoSair {
      background: rgba(255, 255, 255, .94);
      color: #0f2f66;
      border-color: rgba(255, 255, 255, .70);
      box-shadow: 0 8px 18px rgba(15, 23, 42, .12);
    }

    body.visualModernoFase1A #btnSair.btnCabecalhoSair .iconeBotao {
      filter: none;
      opacity: .92;
    }

    body.visualModernoFase1A #btnSair.btnCabecalhoSair:hover:not(:disabled) {
      background: #ffffff;
      color: #0b2552;
      border-color: #ffffff;
      transform: translateY(-1px);
      box-shadow: 0 10px 24px rgba(15, 23, 42, .18);
    }

    body.visualModernoFase1A .areaUploadNovo.areaUploadHero {
      display: grid;
      grid-template-columns: auto minmax(220px, 1fr) auto;
      align-items: center;
      gap: 12px;
      margin: 0 0 14px;
      padding: 14px;
      border-radius: 20px;
      border: 1px solid rgba(191, 219, 254, .9);
      background:
        linear-gradient(135deg, rgba(239, 246, 255, .98), rgba(255, 255, 255, .96)),
        radial-gradient(circle at top right, rgba(59, 130, 246, .14), transparent 36%);
      box-shadow: 0 12px 34px rgba(15, 47, 102, .08);
    }

    body.visualModernoFase1A .btnNovoDocumentoHero {
      grid-column: 1;
      grid-row: 1;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      margin: 0;
      min-height: 40px;
      padding: 10px 14px;
      border-radius: 999px;
      background: linear-gradient(135deg, #0f2f66, #1d4ed8);
      color: #ffffff;
      border: 1px solid rgba(29, 78, 216, .25);
      box-shadow: 0 12px 26px rgba(29, 78, 216, .22);
      white-space: nowrap;
      transition: background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
      will-change: transform;
    }

    body.visualModernoFase1A .btnNovoDocumentoHero .iconeBotao {
      width: 17px;
      height: 17px;
      filter: brightness(0) invert(1);
    }

    body.visualModernoFase1A .btnNovoDocumentoHero:hover:not(:disabled) {
      background: linear-gradient(135deg, #123d82, #2563eb);
      color: #ffffff;
      border-color: rgba(96, 165, 250, .45);
      transform: translateY(-1px);
      box-shadow: 0 14px 30px rgba(29, 78, 216, .28);
    }

    body.visualModernoFase1A .btnNovoDocumentoHero:active:not(:disabled) {
      transform: translateY(0);
      box-shadow: 0 8px 18px rgba(29, 78, 216, .20);
    }

    body.visualModernoFase1A .areaUploadTexto {
      grid-column: 2;
      grid-row: 1;
      min-width: 0;
      display: grid;
      gap: 3px;
    }

    body.visualModernoFase1A .areaUploadTexto strong {
      color: #0f2f66;
      font-size: 15px;
      letter-spacing: -.01em;
    }

    body.visualModernoFase1A .areaUploadTexto small {
      color: #64748b;
      margin: 0;
      line-height: 1.35;
    }

    body.visualModernoFase1A .areaUploadIcone {
      grid-column: 3;
      grid-row: 1;
      display: grid;
      place-items: center;
      width: 46px;
      height: 46px;
      border-radius: 16px;
      background: #0f2f66;
      color: #ffffff;
      box-shadow: 0 12px 28px rgba(15, 47, 102, .22);
    }

    body.visualModernoFase1A .areaUploadIcone img {
      width: 24px;
      height: 24px;
      filter: brightness(0) invert(1);
    }

    @media (max-width: 760px) {
      body.visualModernoFase1A .cabecalhoSistema {
        margin: -10px -10px 12px;
        padding: 14px;
        border-radius: 0 0 20px 20px;
      }

      body.visualModernoFase1A .cabecalhoAcoes {
        min-width: 0;
        grid-template-columns: 1fr;
      }

      body.visualModernoFase1A .areaUploadNovo.areaUploadHero {
        grid-template-columns: 1fr auto;
      }

      body.visualModernoFase1A .btnNovoDocumentoHero {
        grid-column: 1 / -1;
        width: 100%;
      }

      body.visualModernoFase1A .areaUploadTexto {
        grid-column: 1;
        grid-row: 2;
      }

      body.visualModernoFase1A .areaUploadIcone {
        grid-column: 2;
        grid-row: 2;
      }
    }
/* FIM_LAYOUT_MODERNO_1A_CABECALHO_UPLOAD_20260527 */

/* INICIO_LAYOUT_MODERNO_1B_DESTAQUE_CARDS_REAIS_20260527 */
    body.visualModernoResumoDestaque h2 {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      color: #0f2f66;
      font-size: 20px;
      letter-spacing: -.03em;
      margin: 14px 0 10px;
    }

    body.visualModernoResumoDestaque h2::before {
      content: "";
      width: 8px;
      height: 21px;
      border-radius: 999px;
      background: linear-gradient(180deg, #1d4ed8, #0f766e);
      box-shadow: 0 6px 18px rgba(29, 78, 216, .24);
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos),
    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira),
    body.visualModernoResumoDestaque .cardDash:has(#dashPessoas),
    body.visualModernoResumoDestaque #cardParesIgnorados,
    body.visualModernoResumoDestaque #centralDuplicidades,
    body.visualModernoResumoDestaque .centralDuplicidades,
    body.visualModernoResumoDestaque .cardHistoricoGeral {
      position: relative;
      min-height: 82px;
      padding: 13px 14px 13px 64px !important;
      border-radius: 18px !important;
      border: 1px solid rgba(191, 219, 254, .78) !important;
      background:
        linear-gradient(135deg, rgba(255, 255, 255, .98), rgba(248, 250, 252, .96)) !important;
      box-shadow:
        0 9px 22px rgba(15, 23, 42, .065),
        inset 0 1px 0 rgba(255, 255, 255, .82) !important;
      overflow: hidden;
      transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease !important;
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos)::before,
    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira)::before,
    body.visualModernoResumoDestaque .cardDash:has(#dashPessoas)::before,
    body.visualModernoResumoDestaque #cardParesIgnorados::before,
    body.visualModernoResumoDestaque #centralDuplicidades::before,
    body.visualModernoResumoDestaque .centralDuplicidades::before,
    body.visualModernoResumoDestaque .cardHistoricoGeral::before {
      content: "";
      position: absolute;
      left: 16px;
      top: 50%;
      width: 36px;
      height: 36px;
      border-radius: 13px;
      transform: translateY(-50%);
      background: rgba(219, 234, 254, .95);
      box-shadow:
        inset 0 0 0 1px rgba(147, 197, 253, .48),
        0 10px 22px rgba(37, 99, 235, .10);
      pointer-events: none;
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos)::after,
    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira)::after,
    body.visualModernoResumoDestaque .cardDash:has(#dashPessoas)::after,
    body.visualModernoResumoDestaque #cardParesIgnorados::after,
    body.visualModernoResumoDestaque #centralDuplicidades::after,
    body.visualModernoResumoDestaque .centralDuplicidades::after,
    body.visualModernoResumoDestaque .cardHistoricoGeral::after {
      content: "";
      position: absolute;
      left: 25px;
      top: 50%;
      width: 18px;
      height: 18px;
      transform: translateY(-50%);
      background: #1d4ed8;
      -webkit-mask: center / contain no-repeat;
      mask: center / contain no-repeat;
      pointer-events: none;
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos)::after {
      -webkit-mask-image: url("assets/icones/arquivo.svg");
      mask-image: url("assets/icones/arquivo.svg");
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira)::before {
      background: rgba(220, 252, 231, .96);
      box-shadow:
        inset 0 0 0 1px rgba(134, 239, 172, .56),
        0 10px 22px rgba(22, 163, 74, .10);
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira)::after {
      background: #15803d;
      -webkit-mask-image: url("assets/icones/lixeira.svg");
      mask-image: url("assets/icones/lixeira.svg");
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashPessoas)::after,
    body.visualModernoResumoDestaque #cardParesIgnorados::after {
      background: #2563eb;
      -webkit-mask-image: url("assets/icones/usuarios.svg");
      mask-image: url("assets/icones/usuarios.svg");
    }

    body.visualModernoResumoDestaque #centralDuplicidades.comAlerta,
    body.visualModernoResumoDestaque .centralDuplicidades.comAlerta {
      border-color: rgba(251, 146, 60, .44) !important;
      background: linear-gradient(135deg, rgba(255, 247, 237, .98), rgba(255, 255, 255, .95)) !important;
    }

    body.visualModernoResumoDestaque #centralDuplicidades.comAlerta::before,
    body.visualModernoResumoDestaque .centralDuplicidades.comAlerta::before {
      background: rgba(255, 237, 213, .98);
      box-shadow:
        inset 0 0 0 1px rgba(251, 146, 60, .44),
        0 10px 22px rgba(234, 88, 12, .10);
    }

    body.visualModernoResumoDestaque #centralDuplicidades.comAlerta::after,
    body.visualModernoResumoDestaque .centralDuplicidades.comAlerta::after {
      background: #ea580c;
      -webkit-mask-image: url("assets/icones/duplicidades.svg");
      mask-image: url("assets/icones/duplicidades.svg");
    }

    body.visualModernoResumoDestaque #centralDuplicidades.discreta,
    body.visualModernoResumoDestaque .centralDuplicidades.discreta {
      border-color: rgba(134, 239, 172, .52) !important;
      background: linear-gradient(135deg, rgba(240, 253, 244, .98), rgba(255, 255, 255, .95)) !important;
    }

    body.visualModernoResumoDestaque #centralDuplicidades.discreta::before,
    body.visualModernoResumoDestaque .centralDuplicidades.discreta::before {
      background: rgba(220, 252, 231, .98);
      box-shadow:
        inset 0 0 0 1px rgba(134, 239, 172, .52),
        0 10px 22px rgba(22, 163, 74, .10);
    }

    body.visualModernoResumoDestaque #centralDuplicidades.discreta::after,
    body.visualModernoResumoDestaque .centralDuplicidades.discreta::after {
      background: #15803d;
      -webkit-mask-image: url("assets/icones/duplicidades.svg");
      mask-image: url("assets/icones/duplicidades.svg");
    }

    body.visualModernoResumoDestaque .cardHistoricoGeral {
      border-color: rgba(20, 184, 166, .42) !important;
      background: linear-gradient(135deg, rgba(240, 253, 250, .98), rgba(255, 255, 255, .95)) !important;
    }

    body.visualModernoResumoDestaque .cardHistoricoGeral::before {
      background: rgba(204, 251, 241, .98);
      box-shadow:
        inset 0 0 0 1px rgba(45, 212, 191, .42),
        0 10px 22px rgba(15, 118, 110, .10);
    }

    body.visualModernoResumoDestaque .cardHistoricoGeral::after {
      background: #0f766e;
      -webkit-mask-image: url("assets/icones/historico.svg");
      mask-image: url("assets/icones/historico.svg");
    }

    body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos):hover,
    body.visualModernoResumoDestaque .cardDash:has(#dashLixeira):hover,
    body.visualModernoResumoDestaque .cardDash:has(#dashPessoas):hover,
    body.visualModernoResumoDestaque #cardParesIgnorados:hover,
    body.visualModernoResumoDestaque #centralDuplicidades:hover,
    body.visualModernoResumoDestaque .centralDuplicidades:hover,
    body.visualModernoResumoDestaque .cardHistoricoGeral:hover {
      transform: translateY(-1px);
      border-color: rgba(37, 99, 235, .38) !important;
      box-shadow:
        0 13px 28px rgba(15, 23, 42, .095),
        inset 0 1px 0 rgba(255, 255, 255, .90) !important;
    }

    body.visualModernoResumoDestaque .dashboardTopo .cardDash span,
    body.visualModernoResumoDestaque .dashboardTopo .centralDuplicidades strong,
    body.visualModernoResumoDestaque .dashboardTopo .cardHistoricoGeral span {
      color: #475569 !important;
      font-weight: 900 !important;
      letter-spacing: .045em !important;
    }

    body.visualModernoResumoDestaque .dashboardTopo .cardDash strong,
    body.visualModernoResumoDestaque .dashboardTopo .cardHistoricoGeral strong {
      color: #0f2f66 !important;
    }

    body.visualModernoResumoDestaque .centralDuplicidades button {
      border-radius: 10px;
      transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
    }

    body.visualModernoResumoDestaque .centralDuplicidades button:hover:not(:disabled) {
      transform: translateY(-1px);
      background: #f97316;
      color: #ffffff;
      box-shadow: 0 9px 18px rgba(234, 88, 12, .22);
    }
/* FIM_LAYOUT_MODERNO_1B_DESTAQUE_CARDS_REAIS_20260527 */


/* INICIO_AJUSTE_LARGURA_DESKTOP_LAYOUT_MODERNO_20260527 */
    @media (min-width: 1500px) {
      body.visualModernoFase1A .card {
        width: min(92vw, 1320px);
        max-width: 1320px;
      }

      body.visualModernoResumoDestaque .dashboardTopo {
        width: 100%;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        align-items: stretch;
      }

      body.visualModernoResumoDestaque .cardDash:has(#dashDocumentos),
      body.visualModernoResumoDestaque .cardDash:has(#dashLixeira),
      body.visualModernoResumoDestaque .cardDash:has(#dashPessoas),
      body.visualModernoResumoDestaque #cardParesIgnorados,
      body.visualModernoResumoDestaque #centralDuplicidades,
      body.visualModernoResumoDestaque .centralDuplicidades,
      body.visualModernoResumoDestaque .cardHistoricoGeral {
        width: auto;
        min-width: 0;
      }
    }

    @media (min-width: 1800px) {
      body.visualModernoFase1A .card {
        width: min(90vw, 1380px);
        max-width: 1380px;
      }
    }

    @media (max-width: 1180px) {
      body.visualModernoResumoDestaque .dashboardTopo {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 720px) {
      body.visualModernoResumoDestaque .dashboardTopo {
        grid-template-columns: 1fr;
      }
    }
/* FIM_AJUSTE_LARGURA_DESKTOP_LAYOUT_MODERNO_20260527 */

/* INICIO_AJUSTE_VISUAL_CONTADORES_DASHBOARD_RC1_20260531
   Layout oficial do resumo: contadores compactos acima e ações abaixo.
   Este bloco substitui a precedência visual dos blocos antigos do dashboard.
*/
    .dashboardSecaoTopo {
      margin: 12px 0 7px;
      padding-top: 10px;
      border-top: 1px solid rgba(226, 232, 240, .95);
    }

    .dashboardSecaoAcoesTopo {
      margin-top: 12px;
    }

    .dashboardSecaoTopo h2 {
      font-size: 15px;
      font-weight: 950;
      letter-spacing: 0;
      color: #0f2f66;
    }

    .dashboardContadores {
      grid-template-columns: repeat(3, minmax(0, 1fr));
      gap: 10px;
      width: 100%;
      margin: 7px 0 12px;
      align-items: stretch;
    }

    .dashboard.dashboardAcoes {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 12px;
      width: 100%;
      margin: 7px 0 16px;
      align-items: stretch;
      grid-auto-rows: 1fr;
    }

    .dashboard.dashboardAcoes > .cardDash {
      width: 100%;
      min-width: 0;
      max-width: none;
      margin: 0;
      grid-column: auto;
    }

    body.visualModernoResumoDestaque .dashboardContadores > .cardDash,
    body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados {
      min-height: 74px !important;
      padding: 9px 12px 9px 50px !important;
      border-radius: 14px !important;
      cursor: default;
      align-content: center;
    }

    body.visualModernoResumoDestaque .dashboardContadores > .cardDash::before,
    body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados::before {
      left: 12px;
      width: 28px;
      height: 28px;
      border-radius: 10px;
    }

    body.visualModernoResumoDestaque .dashboardContadores > .cardDash::after,
    body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados::after {
      left: 19px;
      width: 14px;
      height: 14px;
    }

    .dashboardContadores > .cardDash span {
      margin-bottom: 3px;
      font-size: 10.5px;
      line-height: 1.15;
    }

    .dashboardContadores > .cardDash strong {
      font-size: 22px;
      line-height: 1;
    }

    .dashboardContadores > .cardDash small {
      margin-top: 3px;
      font-size: 10.5px;
      line-height: 1.18;
    }

    body.visualModernoResumoDestaque .dashboardContadores > .cardDash:hover,
    body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados:hover {
      transform: none;
      box-shadow:
        0 9px 22px rgba(15, 23, 42, .065),
        inset 0 1px 0 rgba(255, 255, 255, .82) !important;
    }

    body.visualModernoResumoDestaque .dashboardAcoes > #centralDuplicidades,
    body.visualModernoResumoDestaque .dashboardAcoes > .cardHistoricoGeral {
      min-height: 96px !important;
      width: auto;
      min-width: 0;
      max-width: none;
      height: 100%;
      margin: 0;
      grid-column: auto;
      box-sizing: border-box;
      padding: 14px 16px !important;
      border-radius: 16px !important;
      display: grid;
      align-content: center;
      align-items: center;
      text-align: left;
    }

    body.visualModernoResumoDestaque .dashboardAcoes > #centralDuplicidades::before,
    body.visualModernoResumoDestaque .dashboardAcoes > #centralDuplicidades::after,
    body.visualModernoResumoDestaque .dashboardAcoes > .cardHistoricoGeral::before,
    body.visualModernoResumoDestaque .dashboardAcoes > .cardHistoricoGeral::after {
      content: none;
    }

    .dashboardAcoes .centralDuplicidadesTopo {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      align-items: start;
      gap: 8px;
      margin-bottom: 6px;
    }

    $1900;
      line-height: 1.15;
      text-transform: none;
    }

    .dashboardAcoes .cardAcaoTitulo::before {
      content: "";
      width: 5px;
      height: 18px;
      border-radius: 999px;
      background: #0f766e;
      flex: 0 0 auto;
    }

    .dashboardAcoes #centralDuplicidades.comAlerta .cardAcaoTitulo::before {
      background: #f97316;
    }

    .dashboardAcoes .cardAcaoDescricao {
      display: block;
      margin:  4px 0 0;
      color: #64748b;
      font-size: 12px;
      font-weight: 500;
      line-height: 1.25;
    }

.dashboardAcoes .resumoCentralDuplicidades {
      margin: 0;
      font-size: 12px;
      line-height: 1.25;
    }

@media (max-width: 900px) {
      .dashboardContadores {
        grid-template-columns: 1fr;
      }
    }

    @media (max-width: 560px) {
      .dashboardSecaoTopo {
        margin-top: 12px;
      }

      body.visualModernoResumoDestaque .dashboardContadores > .cardDash,
      body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados {
        padding-left: 52px !important;
      }
    }
/* FIM_AJUSTE_VISUAL_CONTADORES_DASHBOARD_RC1_20260531 */

/* INICIO_ETAPA1_TELA_INICIAL_MOBILE_20260531 */
    body.visualModernoFase1A .cabecalhoAcoes #status {
      font-size: 12px;
      line-height: 1.25;
    }

    body.visualModernoResumoDestaque .dashboardContadores {
      grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    body.visualModernoResumoDestaque .dashboardAcoes > #centralDuplicidades,
    body.visualModernoResumoDestaque .dashboardAcoes > .cardHistoricoGeral {
      min-height: 96px !important;
      padding: 14px 16px !important;
      align-content: center;
      box-sizing: border-box;
    }

body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca {
      min-height: 46px;
      padding: 12px 14px 12px 42px;
      background-image: url("assets/icones/pesquisa.svg");
      background-repeat: no-repeat;
      background-position: 14px center;
      background-size: 17px 17px;
    }

    @media (max-width: 900px) {
      body.visualModernoResumoDestaque .dashboardContadores {
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 760px) {
      body.visualModernoFase1A .card {
        border-radius: 20px;
        overflow: hidden;
      }

      body.visualModernoFase1A .cabecalhoSistema {
        margin: -12px -12px 10px;
        border-radius: 19px 19px 20px 20px;
        overflow: hidden;
        background-clip: padding-box;
      }

      body.visualModernoFase1A .cabecalhoSistema::after {
        inset: auto -84px -122px auto;
      }

      body.visualModernoFase1A .cabecalhoAcoes {
        display: grid;
        grid-template-columns: 1fr auto auto;
        justify-items: end;
        align-items: center;
      }

      body.visualModernoFase1A .cabecalhoAcoes #status {
        grid-column: 1 / -1;
        width: 100%;
      }

      body.visualModernoFase1A .cabecalhoAcoes button,
      body.visualModernoFase1A #btnAbrirConfiguracoesTopo.btnCabecalhoAcao,
      body.visualModernoFase1A #btnSair.btnCabecalhoSair {
        width: auto;
        min-width: 42px;
        max-width: 170px;
        padding-left: 10px;
        padding-right: 10px;
        justify-self: end;
      }

      body.visualModernoFase1A .areaUploadNovo.areaUploadHero {
        gap: 8px;
        margin: 0 0 7px;
        padding: 10px;
        border-radius: 15px;
      }

      body.visualModernoFase1A .areaUploadTexto {
        gap: 1px;
      }

      body.visualModernoFase1A .areaUploadTexto strong {
        font-size: 13px;
      }

      body.visualModernoFase1A .areaUploadTexto small {
        font-size: 11px;
        line-height: 1.2;
      }

      body.visualModernoFase1A .areaUploadIcone {
        width: 38px;
        height: 38px;
        border-radius: 13px;
      }

      body.visualModernoFase1A .areaUploadIcone img {
        width: 20px;
        height: 20px;
      }

      body.visualModernoFase1A .btnNovoDocumentoHero {
        min-height: 36px;
        padding: 8px 12px;
      }

      body.visualModernoResumoDestaque .dashboardSecaoTopo {
        margin: 5px 0 3px;
        padding-top: 4px;
      }

      body.visualModernoResumoDestaque .dashboardSecaoTopo h2 {
        font-size: 13px;
        margin: 0;
      }

      body.visualModernoResumoDestaque .dashboardContadores,
      body.visualModernoResumoDestaque .dashboardAcoes {
        gap: 6px;
        margin: 4px 0 6px;
      }

      body.visualModernoResumoDestaque .dashboardAcoes {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
      }

      body.visualModernoResumoDestaque .dashboardContadores > .cardDash,
      body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados {
        min-height: 58px !important;
        padding: 7px 9px 7px 44px !important;
      }

      body.visualModernoResumoDestaque .dashboardContadores > .cardDash::before,
      body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados::before {
        left: 10px;
        width: 25px;
        height: 25px;
        border-radius: 9px;
      }

      body.visualModernoResumoDestaque .dashboardContadores > .cardDash::after,
      body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados::after {
        left: 16px;
        width: 13px;
        height: 13px;
      }

      .dashboardContadores > .cardDash span,
      .dashboardContadores > .cardDash small {
        font-size: 10px;
      }

      .dashboardContadores > .cardDash strong {
        font-size: 20px;
      }

      body.visualModernoResumoDestaque .dashboardAcoes > #centralDuplicidades,
      body.visualModernoResumoDestaque .dashboardAcoes > .centralDuplicidades,
      body.visualModernoResumoDestaque .dashboardAcoes > .cardHistoricoGeral {
        min-height: 72px !important;
        padding: 9px 10px 9px 46px !important;
      }

      .dashboardAcoes .centralDuplicidadesTopo {
        grid-template-columns: minmax(0, 1fr);
        gap: 7px;
      }

      .dashboardAcoes .centralDuplicidadesTopo p,
      .dashboardAcoes .cardHistoricoGeral small {
        display: none;
      }

      .dashboardAcoes .centralDuplicidadesTopo h2 {
        font-size: 13px;
      }

      .dashboardAcoes .resumoCentralDuplicidades {
        font-size: 11px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo {
        margin-top: 4px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca {
        min-height: 48px;
      }
    }

    @media (max-width: 420px) {
      body.visualModernoFase1A .btnCabecalhoAcao span {
        max-width: 118px;
        overflow: hidden;
        text-overflow: ellipsis;
      }

      body.visualModernoResumoDestaque .dashboardContadores > .cardDash,
      body.visualModernoResumoDestaque .dashboardContadores > #cardParesIgnorados {
        padding-right: 7px !important;
      }
    }
/* FIM_ETAPA1_TELA_INICIAL_MOBILE_20260531 */

/* INICIO_CARD_DOCUMENTO_OFICIAL_FASE5B_20260527
       Bloco oficial final dos cards de documento.
       Não remover ainda regras antigas de .itemArquivo; este bloco consolida a aparência por precedência.
    */
    #listaDocumentos {
      display: grid;
      gap: 9px;
      margin-top: 10px;
    }

    #listaDocumentos li {
      margin: 0;
    }

    .btnCarregarMaisDocumentos {
      display: block;
      width: min(280px, 100%);
      margin: 14px auto 0;
      border: 1px solid rgba(37, 99, 235, .28);
      background: #ffffff;
      color: #0f2f66;
      box-shadow: 0 6px 16px rgba(15, 47, 102, .08);
    }

    .btnCarregarMaisDocumentos[hidden] {
      display: none;
    }

    .btnCarregarMaisDocumentos:hover:not(:disabled),
    .btnCarregarMaisDocumentos:focus-visible:not(:disabled) {
      background: #eff6ff;
      border-color: rgba(37, 99, 235, .42);
      color: #0f2f66;
      transform: none;
    }

    button.itemArquivo {
      position: relative;
      display: grid;
      gap: 5px;
      width: 100%;
      margin: 0;
      padding: 10px 12px;
      text-align: left;
      border-radius: 12px;
      border: 1px solid #dfeaf6;
      background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
      color: #172033;
      box-shadow: 0 7px 18px rgba(15, 47, 102, .055);
      font-weight: 400;
      transform: translateY(0);
      transition:
        background .16s ease,
        border-color .16s ease,
        box-shadow .16s ease,
        transform .16s ease;
    }

    button.itemArquivo::before {
      content: "";
      position: absolute;
      inset: 10px auto 10px 0;
      width: 3px;
      border-radius: 999px;
      background: #0f2f66;
      opacity: .16;
      transition: opacity .16s ease, width .16s ease;
    }

    button.itemArquivo strong {
      display: block;
      color: #0f2f66;
      font-size: 14px;
      line-height: 1.25;
      margin: 0 0 1px;
      padding-left: 2px;
      overflow-wrap: anywhere;
    }

    button.itemArquivo span {
      display: block;
      color: #64748b;
      font-size: 12px;
      line-height: 1.28;
      overflow-wrap: anywhere;
    }

    button.itemArquivo .metadadosArquivo {
      display: flex !important;
      flex-wrap: wrap;
      align-items: center;
      gap: 4px 6px;
      width: auto;
      max-width: 100%;
      margin: 0;
      padding: 0;
      line-height: 1;
    }

    button.itemArquivo .seloGaveta,
    button.itemArquivo .tagAtivo,
    button.itemArquivo .tagArquivado,
    button.itemArquivo .statusRecenteArquivo,
    button.itemArquivo .metadadosArquivo .seloNomeRepetido {
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      width: fit-content;
      max-width: 100%;
      min-height: 22px;
      margin: 0;
      padding: 0 8px;
      border-radius: 999px;
      border: 1px solid #bfe3ce;
      background: #ecfdf3;
      color: #17623a !important;
      font-size: 10.5px !important;
      font-weight: 800;
      line-height: 1;
      letter-spacing: 0;
      text-transform: uppercase;
      white-space: nowrap;
    }

    button.itemArquivo .linhaMovimentacaoArquivo {
      width: fit-content;
      max-width: 100%;
      margin-top: 3px;
      padding: 5px 8px;
      border-radius: 8px;
      border: 1px solid #dbeafe;
      background: #eef5ff;
      color: #183b70 !important;
      font-size: 11px;
      font-weight: 800;
      line-height: 1.2;
    }

    button.itemArquivo .linhaDataArquivo {
      margin-top: 1px;
      color: #64748b !important;
      font-size: 11px;
      line-height: 1.2;
    }

    button.itemArquivo:hover:not(:disabled),
    button.itemArquivo:focus-visible:not(:disabled) {
      background: linear-gradient(180deg, #ffffff 0%, #eef6ff 100%);
      border-color: #bdd1ec;
      box-shadow: 0 10px 24px rgba(15, 47, 102, .10);
      transform: translateY(-1px);
      outline: none;
    }

    button.itemArquivo:hover:not(:disabled)::before,
    button.itemArquivo:focus-visible:not(:disabled)::before {
      opacity: .5;
      width: 4px;
    }

    button.itemArquivo:hover:not(:disabled) strong,
    button.itemArquivo:focus-visible:not(:disabled) strong {
      color: #0b285c;
    }

    button.itemArquivo:hover:not(:disabled) span,
    button.itemArquivo:focus-visible:not(:disabled) span,
    button.itemArquivo:hover:not(:disabled) .linhaDataArquivo,
    button.itemArquivo:focus-visible:not(:disabled) .linhaDataArquivo {
      color: #526174 !important;
    }

    button.itemArquivo:hover:not(:disabled) .seloGaveta,
    button.itemArquivo:focus-visible:not(:disabled) .seloGaveta {
      background: #f0fff6;
      border-color: #a8d8bb;
      color: #14532d !important;
    }

    button.itemArquivo:hover:not(:disabled) .linhaMovimentacaoArquivo,
    button.itemArquivo:focus-visible:not(:disabled) .linhaMovimentacaoArquivo {
      background: #ffffff;
      border-color: #cfe0f7;
      color: #14386e !important;
    }

    body.modoCompacto button.itemArquivo {
      gap: 4px;
      padding: 8px 10px;
      border-radius: 10px;
      box-shadow: 0 4px 12px rgba(15, 47, 102, .045);
    }

    body.modoCompacto button.itemArquivo strong {
      font-size: 13px;
      line-height: 1.18;
    }

    body.modoCompacto button.itemArquivo span {
      font-size: 11px;
      line-height: 1.18;
    }

    body.detalhesReduzidos button.itemArquivo > span:not(.metadadosArquivo):not(.seloGaveta):not(.seloNomeRepetido):not(.statusRecenteArquivo):not(.linhaDataArquivo):not(.linhaMovimentacaoArquivo) {
      display: none;
    }

    @media (max-width: 720px) {
      #listaDocumentos {
        gap: 8px;
      }

      button.itemArquivo {
        padding: 9px 10px;
        border-radius: 11px;
      }

      button.itemArquivo strong {
        font-size: 13px;
      }
    }
    /* FIM_CARD_DOCUMENTO_OFICIAL_FASE5B_20260527 */

    /* INICIO_ABAS_BUSCA_OFICIAL_FASE5C_20260527
       Bloco oficial final da navegação de documentos.
       Consolida visual de Recentes/Gavetas/Lixeira e campo de busca por precedência.
       Não remover ainda as regras antigas nesta etapa.
    */
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo {
      display: grid;
      grid-template-columns: minmax(300px, auto) minmax(320px, 1fr);
      gap: 10px 14px;
      align-items: end;
      margin: 8px 0 12px;
      padding: 10px;
      border-radius: 16px;
      border: 1px solid rgba(191, 219, 254, .80);
      background:
        linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(255, 255, 255, .96)),
        radial-gradient(circle at top right, rgba(59, 130, 246, .08), transparent 34%);
      box-shadow:
        0 12px 26px rgba(15, 23, 42, .045),
        inset 0 1px 0 rgba(255, 255, 255, .88);
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo .abasDocumentos {
      display: grid;
      grid-template-columns: repeat(3, minmax(0, 1fr));
      width: min(390px, 100%);
      gap: 5px;
      margin: 0;
      padding: 4px;
      border-radius: 15px;
      border: 1px solid rgba(203, 213, 225, .72);
      background: rgba(226, 232, 240, .64);
      box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      min-width: 0;
      min-height: 36px;
      margin: 0;
      padding: 8px 10px;
      border-radius: 12px;
      border: 1px solid rgba(203, 213, 225, .92);
      background: rgba(248, 250, 252, .98);
      color: #0f172a;
      font-size: 12.5px;
      font-weight: 900;
      line-height: 1.08;
      letter-spacing: -.01em;
      white-space: nowrap;
      box-shadow: none;
      transform: translateY(0);
      transition:
        background .16s ease,
        color .16s ease,
        border-color .16s ease,
        box-shadow .16s ease,
        transform .16s ease;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento:hover:not(:disabled),
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento:focus-visible:not(:disabled) {
      background: #ffffff;
      color: #0f2f66;
      border-color: rgba(37, 99, 235, .34);
      box-shadow: 0 8px 18px rgba(15, 47, 102, .09);
      transform: translateY(-1px);
      outline: none;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento.ativo,
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento.ativo:hover:not(:disabled),
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento.ativo:focus-visible:not(:disabled) {
      background: linear-gradient(135deg, #0f2f66, #1d4ed8);
      color: #ffffff;
      border-color: rgba(29, 78, 216, .56);
      box-shadow: 0 9px 20px rgba(29, 78, 216, .20);
      transform: none;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo .buscaLinha {
      display: grid;
      gap: 6px;
      margin: 0;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #tituloListaDocumentos {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin: 0;
      color: #0f2f66;
      font-size: 15px;
      font-weight: 950;
      letter-spacing: -.02em;
      line-height: 1.12;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #tituloListaDocumentos::before {
      content: "";
      width: 7px;
      height: 18px;
      flex: 0 0 auto;
      border-radius: 999px;
      background: linear-gradient(180deg, #1d4ed8, #0f766e);
      box-shadow: 0 5px 14px rgba(29, 78, 216, .18);
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca {
      width: 100%;
      min-height: 39px;
      margin: 0;
      padding: 9px 12px;
      border-radius: 13px;
      border: 1px solid rgba(203, 213, 225, .96);
      background: rgba(255, 255, 255, .98);
      color: #0f172a;
      font-size: 14px;
      line-height: 1.2;
      outline: none;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .90),
        0 6px 16px rgba(15, 23, 42, .035);
      transition:
        border-color .16s ease,
        box-shadow .16s ease,
        background .16s ease;
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca:hover {
      background: #ffffff;
      border-color: rgba(148, 163, 184, .95);
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .92),
        0 8px 18px rgba(15, 23, 42, .045);
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca:focus {
      background: #ffffff;
      border-color: rgba(37, 99, 235, .64);
      box-shadow:
        0 0 0 4px rgba(59, 130, 246, .12),
        0 9px 22px rgba(15, 23, 42, .06);
    }

    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca::placeholder {
      color: #64748b;
    }

    body.modoCompacto.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo {
      gap: 8px 10px;
      padding: 8px;
      margin-bottom: 9px;
      border-radius: 14px;
    }

    body.modoCompacto.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento {
      min-height: 33px;
      padding: 7px 8px;
      border-radius: 10px;
      font-size: 12px;
    }

    body.modoCompacto.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca {
      min-height: 36px;
      padding: 8px 10px;
    }

    @media (max-width: 760px) {
      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo {
        grid-template-columns: 1fr;
        align-items: stretch;
        gap: 9px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo .abasDocumentos {
        width: 100%;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 5px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento {
        min-height: 34px;
        padding-left: 6px;
        padding-right: 6px;
        font-size: 12px;
        text-align: center;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #tituloListaDocumentos {
        font-size: 14px;
      }
    }

    @media (max-width: 420px) {
      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo {
        padding: 8px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo .abasDocumentos {
        gap: 4px;
        padding: 3px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento {
        min-height: 32px;
        padding-left: 4px;
        padding-right: 4px;
        font-size: 11.5px;
      }

      body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #campoBusca {
        min-height: 36px;
        padding: 8px 10px;
      }
    }
    /* FIM_ABAS_BUSCA_OFICIAL_FASE5C_20260527 */

    /* INICIO_GAVETAS_VISUAIS_OFICIAL_FASE5D_20260527
       Bloco oficial final das gavetas visuais.
       Consolida visual por precedência sem remover regras antigas nesta etapa.
    */
    body.visualModernoGavetas .areaGavetas {
      margin: 8px 0 11px;
      padding: 10px;
      border-radius: 18px;
      border: 1px solid rgba(191, 219, 254, .80);
      background:
        linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(255, 255, 255, .96)),
        radial-gradient(circle at top right, rgba(15, 118, 110, .08), transparent 34%);
      box-shadow:
        0 12px 26px rgba(15, 23, 42, .045),
        inset 0 1px 0 rgba(255, 255, 255, .82);
    }

    body.visualModernoGavetas .areaGavetasTopo {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      margin-bottom: 8px;
    }

    body.visualModernoGavetas .areaGavetasTopo h3 {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      margin: 0;
      color: #0f2f66;
      font-size: 15px;
      font-weight: 950;
      letter-spacing: -.02em;
      line-height: 1.1;
    }

    body.visualModernoGavetas .areaGavetasTopo h3::before {
      content: "";
      width: 7px;
      height: 18px;
      flex: 0 0 auto;
      border-radius: 999px;
      background: linear-gradient(180deg, #1d4ed8, #0f766e);
      box-shadow: 0 5px 14px rgba(15, 118, 110, .18);
    }

    body.visualModernoGavetas .listaGavetasAtivos {
      display: flex !important;
      flex-wrap: wrap;
      align-items: stretch;
      justify-content: flex-start;
      gap: 5px !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard {
      display: inline-flex !important;
      align-items: center;
      justify-content: space-between;
      gap: 7px;
      width: clamp(158px, 15.5vw, 198px) !important;
      min-height: 38px !important;
      margin: 0 !important;
      padding: 6px 9px !important;
      border-radius: 12px !important;
      border: 1px solid rgba(203, 213, 225, .94) !important;
      background: rgba(255, 255, 255, .98) !important;
      color: #334155 !important;
      text-align: left;
      text-decoration: none !important;
      box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .92),
        0 4px 12px rgba(15, 23, 42, .032) !important;
      transform: translateY(0) !important;
      transition:
        background .14s ease,
        color .14s ease,
        border-color .14s ease,
        box-shadow .14s ease,
        transform .14s ease !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard * {
      text-decoration: none !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard span {
      min-width: 0;
      flex: 1 1 auto;
      color: #334155 !important;
      font-size: 12px;
      font-weight: 850;
      line-height: 1.13;
      letter-spacing: -.01em;
      white-space: normal;
      overflow: hidden;
      display: -webkit-box;
      -webkit-line-clamp: 2;
      -webkit-box-orient: vertical;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard strong {
      flex: 0 0 auto;
      min-width: 30px;
      max-width: 58px;
      padding: 3px 8px;
      border-radius: 999px;
      background: rgba(219, 234, 254, .94) !important;
      color: #0f2f66 !important;
      font-size: 12px;
      font-weight: 950;
      line-height: 1;
      text-align: center;
      box-shadow: inset 0 0 0 1px rgba(147, 197, 253, .48) !important;
      overflow: hidden;
      text-overflow: ellipsis;
      white-space: nowrap;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:hover:not(:disabled),
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:focus-visible:not(:disabled) {
      background: #ffffff !important;
      color: #0f2f66 !important;
      border-color: rgba(37, 99, 235, .46) !important;
      box-shadow:
        0 7px 16px rgba(15, 47, 102, .085),
        inset 0 1px 0 rgba(255, 255, 255, .96) !important;
      transform: translateY(-1px) !important;
      outline: none;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:hover:not(:disabled) span,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:focus-visible:not(:disabled) span {
      color: #0f2f66 !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:hover:not(:disabled) strong,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard:focus-visible:not(:disabled) strong {
      background: #dbeafe !important;
      color: #0f2f66 !important;
      box-shadow: inset 0 0 0 1px rgba(96, 165, 250, .60) !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:hover:not(:disabled),
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:focus-visible:not(:disabled) {
      background: linear-gradient(135deg, #0f2f66, #1d4ed8) !important;
      color: #ffffff !important;
      border-color: rgba(29, 78, 216, .56) !important;
      box-shadow: 0 8px 18px rgba(29, 78, 216, .19) !important;
      transform: translateY(0) !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo span,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:hover:not(:disabled) span,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:focus-visible:not(:disabled) span {
      color: #ffffff !important;
    }

    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo strong,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:hover:not(:disabled) strong,
    body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard.ativo:focus-visible:not(:disabled) strong {
      background: rgba(255, 255, 255, .18) !important;
      color: #ffffff !important;
      box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .30) !important;
    }

    body.modoCompacto.visualModernoGavetas .areaGavetas {
      padding: 8px;
      border-radius: 15px;
    }

    body.modoCompacto.visualModernoGavetas .listaGavetasAtivos {
      gap: 4px !important;
    }

    body.modoCompacto.visualModernoGavetas .listaGavetasAtivos button.gavetaCard {
      width: clamp(148px, 15vw, 180px) !important;
      min-height: 35px !important;
      padding: 5px 8px !important;
      border-radius: 10px !important;
    }

    body.modoCompacto.visualModernoGavetas .listaGavetasAtivos button.gavetaCard span {
      font-size: 11.5px;
      line-height: 1.1;
    }

    body.modoCompacto.visualModernoGavetas .listaGavetasAtivos button.gavetaCard strong {
      font-size: 11.5px;
      min-width: 28px;
      padding: 3px 7px;
    }

    @media (max-width: 760px) {
      body.visualModernoGavetas .areaGavetas {
        padding: 9px;
        border-radius: 16px;
      }

      body.visualModernoGavetas .areaGavetasTopo {
        display: grid;
        grid-template-columns: 1fr;
        align-items: stretch;
        margin-bottom: 7px;
      }
    }
    /* FIM_GAVETAS_VISUAIS_OFICIAL_FASE5D_20260527 */

    /* INICIO_GAVETAS_2_COLUNAS_CELULAR_FASE5D_20260527
       Ajuste pontual após teste real:
       no celular, manter gavetas em 2 colunas para reduzir rolagem.
    */
    @media (max-width: 760px) {
      body.visualModernoGavetas .listaGavetasAtivos {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 5px !important;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard {
        flex: 0 0 calc(50% - 3px) !important;
        width: calc(50% - 3px) !important;
        max-width: calc(50% - 3px) !important;
        min-width: 0 !important;
        min-height: 36px !important;
        padding: 6px 7px !important;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard span {
        font-size: 11.5px;
        line-height: 1.1;
        -webkit-line-clamp: 2;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard strong {
        min-width: 26px;
        max-width: 46px;
        padding: 3px 6px;
        font-size: 11.5px;
      }
    }

    @media (max-width: 420px) {
      body.visualModernoGavetas .listaGavetasAtivos {
        gap: 4px !important;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard {
        flex-basis: calc(50% - 2px) !important;
        width: calc(50% - 2px) !important;
        max-width: calc(50% - 2px) !important;
        min-height: 35px !important;
        padding: 5px 6px !important;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard span {
        font-size: 11px;
        line-height: 1.08;
        -webkit-line-clamp: 2;
      }

      body.visualModernoGavetas .listaGavetasAtivos button.gavetaCard strong {
        min-width: 24px;
        max-width: 42px;
        padding: 3px 5px;
        font-size: 11px;
      }
    }
    /* FIM_GAVETAS_2_COLUNAS_CELULAR_FASE5D_20260527 */

    /* INICIO_ESTADOS_VAZIOS_DOCUMENTOS_FASE6A_20260527
       Estados vazios mais claros para Recentes, Gavetas, Lixeira e Busca.
    */
    .estadoVazioDocumentos {
      list-style: none;
      margin: 10px 0 0;
      padding: 0;
    }

    .estadoVazioDocumentosCard {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 12px;
      align-items: center;
      padding: 16px;
      border-radius: 16px;
      border: 1px dashed rgba(148, 163, 184, .72);
      background:
        linear-gradient(135deg, rgba(248, 250, 252, .98), rgba(255, 255, 255, .96)),
        radial-gradient(circle at top right, rgba(59, 130, 246, .08), transparent 34%);
      box-shadow: 0 10px 22px rgba(15, 23, 42, .045);
    }

    .estadoVazioDocumentosIcone {
      width: 42px;
      height: 42px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 14px;
      background: rgba(219, 234, 254, .95);
      color: #0f2f66;
      font-size: 22px;
      box-shadow: inset 0 0 0 1px rgba(147, 197, 253, .55);
    }

    .estadoVazioDocumentosTitulo {
      margin: 0;
      color: #0f2f66;
      font-size: 15px;
      font-weight: 950;
      line-height: 1.18;
      letter-spacing: -.02em;
    }

    .estadoVazioDocumentosTexto {
      margin: 4px 0 0;
      color: #475569;
      font-size: 13px;
      line-height: 1.35;
    }

    .estadoVazioDocumentosDica {
      display: inline-flex;
      width: fit-content;
      max-width: 100%;
      margin-top: 8px;
      padding: 5px 9px;
      border-radius: 999px;
      background: rgba(239, 246, 255, .98);
      color: #1e3a8a;
      font-size: 11.5px;
      font-weight: 850;
      line-height: 1.15;
    }

    body.modoCompacto .estadoVazioDocumentosCard {
      padding: 12px;
      border-radius: 14px;
    }

    body.modoCompacto .estadoVazioDocumentosIcone {
      width: 36px;
      height: 36px;
      border-radius: 12px;
      font-size: 19px;
    }

    @media (max-width: 560px) {
      .estadoVazioDocumentosCard {
        grid-template-columns: 1fr;
        gap: 9px;
        padding: 13px;
        text-align: left;
      }

      .estadoVazioDocumentosIcone {
        width: 38px;
        height: 38px;
      }

      .estadoVazioDocumentosTitulo {
        font-size: 14px;
      }

      .estadoVazioDocumentosTexto {
        font-size: 12.5px;
      }
    }
    /* FIM_ESTADOS_VAZIOS_DOCUMENTOS_FASE6A_20260527 */

    /*

INICIO_VISUAL_MENSAGENS_FASE6B_20260527
       Visual moderno para mensagens e avisos.
       Apenas CSS: preserva mostrarMensagem(), mostrarMensagemPainel() e textContent.
    */
    .mensagem,
    .mensagemPainel {
      position: relative;
      display: flex;
      align-items: flex-start;
      gap: 9px;
      width: fit-content;
      max-width: min(100%, 720px);
      margin: 8px 0;
      padding: 10px 13px 10px 12px;
      border-radius: 14px;
      border: 1px solid rgba(147, 197, 253, .62);
      background:
        linear-gradient(135deg, rgba(239, 246, 255, .98), rgba(255, 255, 255, .96));
      color: #183b70;
      font-size: 13px;
      font-weight: 800;
      line-height: 1.28;
      box-shadow:
        0 9px 22px rgba(15, 47, 102, .065),
        inset 0 1px 0 rgba(255, 255, 255, .86);
      animation: mensagemEntradaSuave .18s ease-out;
    }

    .mensagem:empty,
    .mensagemPainel:empty {
      display: none;
      margin: 0;
      padding: 0;
      border: 0;
      box-shadow: none;
    }

    .mensagem::before,
    .mensagemPainel::before {
      content: "ℹ";
      flex: 0 0 auto;
      width: 21px;
      height: 21px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      margin-top: -1px;
      border-radius: 999px;
      background: #dbeafe;
      color: #0f2f66;
      font-size: 13px;
      font-weight: 950;
      line-height: 1;
      box-shadow: inset 0 0 0 1px rgba(96, 165, 250, .42);
    }

    .erroBox,
    .erroPainel {
      border-color: rgba(252, 165, 165, .76);
      background:
        linear-gradient(135deg, rgba(254, 242, 242, .99), rgba(255, 255, 255, .96));
      color: #7f1d1d;
      box-shadow:
        0 9px 22px rgba(127, 29, 29, .075),
        inset 0 1px 0 rgba(255, 255, 255, .88);
    }

    .erroBox::before,
    .erroPainel::before {
      content: "!";
      background: #fee2e2;
      color: #991b1b;
      box-shadow: inset 0 0 0 1px rgba(248, 113, 113, .42);
    }

    .mensagemPainel {
      width: 100%;
      max-width: 100%;
      margin: 8px 0 10px;
      padding: 9px 12px;
      border-radius: 13px;
      font-size: 12.5px;
      box-shadow:
        0 6px 16px rgba(15, 47, 102, .052),
        inset 0 1px 0 rgba(255, 255, 255, .86);
    }

    .mensagemPainel::before {
      width: 19px;
      height: 19px;
      font-size: 12px;
    }

    body.modoCompacto .mensagem,
    body.modoCompacto .mensagemPainel {
      padding: 8px 10px;
      border-radius: 12px;
      font-size: 12px;
      gap: 8px;
    }

    @keyframes mensagemEntradaSuave {
      from {
        opacity: 0;
      }
      to {
        opacity: 1;
      }
    }

    @media (max-width: 560px) {
      .mensagem,
      .mensagemPainel {
        width: 100%;
        max-width: 100%;
        font-size: 12.5px;
        padding: 9px 10px;
      }
    }
    /* FIM_VISUAL_MENSAGENS_FASE6B_20260527 */

    /* INICIO_CARREGAMENTOS_VISUAIS_FASE6C_20260527
       Carregamentos visuais compactos para lista, histórico e versões.
    */
    .carregamentoVisual {
      list-style: none;
      margin: 8px 0;
      padding: 0;
    }

    .carregamentoVisualCard {
      display: grid;
      grid-template-columns: auto 1fr;
      gap: 10px;
      align-items: center;
      padding: 12px 13px;
      border-radius: 15px;
      border: 1px solid rgba(191, 219, 254, .74);
      background:
        linear-gradient(135deg, rgba(239, 246, 255, .98), rgba(255, 255, 255, .96));
      color: #183b70;
      box-shadow:
        0 7px 18px rgba(15, 47, 102, .052),
        inset 0 1px 0 rgba(255, 255, 255, .86);
    }

    .carregamentoVisualIcone {
      position: relative;
      width: 34px;
      height: 34px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: 13px;
      background: #dbeafe;
      color: #0f2f66;
      font-size: 17px;
      box-shadow: inset 0 0 0 1px rgba(96, 165, 250, .42);
    }

    .carregamentoVisualIcone::after {
      content: "";
      position: absolute;
      inset: -3px;
      border-radius: 16px;
      border: 2px solid rgba(37, 99, 235, .18);
      border-top-color: rgba(37, 99, 235, .72);
      animation: carregamentoVisualGirar .82s linear infinite;
    }

    .carregamentoVisualTexto {
      min-width: 0;
    }

    .carregamentoVisualTitulo {
      margin: 0;
      color: #0f2f66;
      font-size: 13.5px;
      font-weight: 950;
      line-height: 1.16;
      letter-spacing: -.02em;
    }

    .carregamentoVisualDescricao {
      margin: 3px 0 0;
      color: #526174;
      font-size: 12.5px;
      font-weight: 700;
      line-height: 1.28;
    }

    @keyframes carregamentoVisualGirar {
      to {
        transform: rotate(360deg);
      }
    }

    body.modoCompacto .carregamentoVisualCard {
      padding: 10px 11px;
      border-radius: 13px;
    }

    body.modoCompacto .carregamentoVisualIcone {
      width: 30px;
      height: 30px;
      border-radius: 11px;
      font-size: 15px;
    }

    @media (max-width: 560px) {
      .carregamentoVisualCard {
        grid-template-columns: auto 1fr;
        padding: 11px;
      }

      .carregamentoVisualTitulo {
        font-size: 13px;
      }

      .carregamentoVisualDescricao {
        font-size: 12px;
      }
    }
    /* FIM_CARREGAMENTOS_VISUAIS_FASE6C_20260527 */

    /* INICIO_LEGIBILIDADE_CABECALHO_PAINEL_FASE6D_PRE_20260527
       Correção pontual:
       torna o nome do arquivo legível no cabeçalho do painel lateral.
       Apenas CSS; não altera JS, histórico, versões ou Graph.
    */
    #painelLateral > .painelTopo {
      position: sticky;
      top: 0;
      z-index: 4;
      min-height: 64px;
      padding: 14px 14px 13px;
      border-bottom: 1px solid rgba(147, 197, 253, .28);
      background:
        linear-gradient(135deg, #0f2f66 0%, #1d4ed8 62%, #0f766e 100%);
      box-shadow:
        0 12px 26px rgba(15, 23, 42, .16),
        inset 0 1px 0 rgba(255, 255, 255, .14);
    }

    #painelLateral > .painelTopo #painelTitulo {
      max-width: calc(100% - 48px);
      margin: 0;
      color: #ffffff !important;
      font-size: 16px;
      font-weight: 950;
      line-height: 1.18;
      letter-spacing: -.025em;
      text-shadow: 0 1px 2px rgba(0, 0, 0, .22);
      overflow-wrap: anywhere;
    }

    #painelLateral > .painelTopo .btnFechar {
      min-width: 34px;
      min-height: 34px;
      padding: 0 10px;
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, .30);
      background: rgba(255, 255, 255, .14);
      color: #ffffff !important;
      box-shadow: none;
    }

    #painelLateral > .painelTopo .btnFechar:hover:not(:disabled),
    #painelLateral > .painelTopo .btnFechar:focus-visible:not(:disabled) {
      background: rgba(255, 255, 255, .22);
      border-color: rgba(255, 255, 255, .48);
      color: #ffffff !important;
      transform: none;
    }

    #painelLateral .painelConteudo > .campoInfo:first-of-type {
      border-color: rgba(37, 99, 235, .24);
      background:
        linear-gradient(135deg, rgba(239, 246, 255, .98), rgba(255, 255, 255, .96));
      box-shadow:
        0 8px 18px rgba(15, 47, 102, .045),
        inset 0 1px 0 rgba(255, 255, 255, .86);
    }

    /* AJUSTES_VISUAIS_FINAIS_20260531 */
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #btnVerAtivos:not(.ativo),
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo #btnVerLixeira:not(.ativo),
    body.visualModernoAbasDoc.visualModernoCampoBusca .navegacaoDocumentosTopo button.abaDocumento:not(.ativo) {
      background: rgba(248, 250, 252, .98);
      border-color: rgba(203, 213, 225, .92);
      color: #0f172a;
      box-shadow: none;
    }

    .painelCentralDuplicidades > .painelTopo,
    .painelDashboard > .painelTopo {
      position: sticky;
      top: 0;
      z-index: 5;
      min-height: 60px;
      border-bottom: 1px solid rgba(147, 197, 253, .28);
      background:
        linear-gradient(135deg, #0f2f66 0%, #1d4ed8 68%, #0f766e 100%);
      color: #ffffff !important;
      box-shadow:
        0 12px 26px rgba(15, 23, 42, .16),
        inset 0 1px 0 rgba(255, 255, 255, .14);
    }

    .painelCentralDuplicidades > .painelTopo h2,
    .painelDashboard > .painelTopo h2 {
      color: #ffffff !important;
      text-shadow: 0 1px 2px rgba(0, 0, 0, .22);
    }

    .painelCentralDuplicidades > .painelTopo .btnFechar,
    .painelDashboard > .painelTopo .btnFechar {
      border: 1px solid rgba(255, 255, 255, .30);
      background: rgba(255, 255, 255, .14);
      color: #ffffff !important;
    }

    .painelCentralDuplicidades > .painelTopo .btnFechar:hover:not(:disabled),
    .painelCentralDuplicidades > .painelTopo .btnFechar:focus-visible:not(:disabled),
    .painelDashboard > .painelTopo .btnFechar:hover:not(:disabled),
    .painelDashboard > .painelTopo .btnFechar:focus-visible:not(:disabled) {
      background: rgba(255, 255, 255, .22);
      border-color: rgba(255, 255, 255, .48);
      color: #ffffff !important;
      transform: none;
    }

    .centralConfiguracoesTopo {
      margin: -12px -12px 12px;
      padding: 12px 12px 10px;
      border-bottom: 1px solid rgba(219, 234, 254, .9);
      background: rgba(255, 255, 255, .98);
    }

    /* INICIO_OVERLAY_MENSAGENS_VIEWPORT_20260601
       Overlay unico: mantem as notificacoes fixas na viewport sem empurrar layout.
    */
    #mensagemSistema.mensagem,
    #mensagemSistema.mensagem.erroBox,
    #mensagemPainel.mensagemPainel,
    #mensagemPainel.mensagemPainel.erroPainel {
      position: fixed !important;
      margin: 0 !important;
      left: 50% !important;
      right: auto !important;
      width: min(560px, calc(100vw - 32px)) !important;
      max-width: min(560px, calc(100vw - 32px)) !important;
      transform: translateX(-50%);
      justify-content: flex-start;
      pointer-events: none;
    }

    #mensagemSistema.mensagem,
    #mensagemSistema.mensagem.erroBox {
      top: max(14px, env(safe-area-inset-top)) !important;
      bottom: auto !important;
      z-index: 100000 !important;
    }

    #mensagemPainel.mensagemPainel,
    #mensagemPainel.mensagemPainel.erroPainel {
      top: auto !important;
      bottom: 88px !important;
      z-index: 99999 !important;
    }

    @media (max-width: 720px) {
      #mensagemSistema.mensagem,
      #mensagemSistema.mensagem.erroBox,
      #mensagemPainel.mensagemPainel,
      #mensagemPainel.mensagemPainel.erroPainel {
        right: 10px !important;
        left: 10px !important;
        width: auto !important;
        max-width: none !important;
        transform: none;
      }

      #mensagemSistema.mensagem,
      #mensagemSistema.mensagem.erroBox {
        top: max(10px, env(safe-area-inset-top)) !important;
        bottom: auto !important;
      }

      #mensagemPainel.mensagemPainel,
      #mensagemPainel.mensagemPainel.erroPainel {
        top: auto !important;
        bottom: 82px !important;
      }
    }

    #mensagemSistema.mensagem:empty,
    #mensagemPainel.mensagemPainel:empty {
      display: none !important;
      width: 0 !important;
      height: 0 !important;
      margin: 0 !important;
      padding: 0 !important;
      border: 0 !important;
      box-shadow: none !important;
    }
    /* FIM_OVERLAY_MENSAGENS_VIEWPORT_20260601 */

    #painelLateral .painelConteudo > .campoInfo:first-of-type strong {
      color: #0f2f66;
    }

    #painelLateral .painelConteudo > .campoInfo:first-of-type #painelNome {
      color: #0f172a;
      font-weight: 850;
      overflow-wrap: anywhere;
    }

    /* INICIO_AJUSTES_V1_PAINEL_UPLOAD_DUPLICIDADES_20260601 */
    #painelLateral > .painelTopo {
      display: grid;
      grid-template-columns: minmax(0, 1fr) auto;
      align-items: start;
      gap: 6px 12px;
    }

    #painelLateral > .painelTopo #painelTitulo {
      max-width: 100%;
      letter-spacing: 0;
    }

    #painelLateral > .painelTopo .btnFechar {
      grid-column: 2;
      grid-row: 1 / span 2;
      justify-self: end;
    }

    .painelTituloChips {
      grid-column: 1;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 6px;
      min-height: 24px;
    }

    .statusPainel,
    .chipPainelGaveta,
    .painelTituloChips .seloNomeRepetido,
    .chipsArquivo .tagAtivo,
    .chipsArquivo .tagArquivado,
    .chipsArquivo .seloNomeRepetido {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: fit-content;
      max-width: 100%;
      min-height: 24px;
      padding: 0 9px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 850;
      line-height: 1;
      letter-spacing: 0;
      overflow-wrap: anywhere;
      white-space: nowrap;
      box-sizing: border-box;
    }

    .statusPainelAtivo {
      background: #dcfce7;
      color: #166534;
      border: 1px solid #86efac;
    }

    .statusPainelLixeira {
      background: #fee2e2;
      color: #991b1b;
      border: 1px solid #fecaca;
    }

    .chipPainelGaveta {
      background: #e0f2fe;
      color: #075985;
      border: 1px solid #7dd3fc;
    }

    #painelLateral > .painelTopo .seloNomeRepetido {
      margin: 0;
      background: #fef3c7;
      border-color: #fcd34d;
      color: #92400e;
    }

    .chipsArquivo {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      gap: 6px;
      margin: 7px 0 8px;
    }

    .chipsArquivo .seloNomeRepetido {
      margin: 0;
    }

    #painelLateral .painelConteudo > .campoInfo:nth-of-type(2) {
      border-color: rgba(14, 116, 144, .28);
      background: linear-gradient(135deg, #ecfeff, #ffffff);
      box-shadow: 0 8px 18px rgba(8, 145, 178, .055);
    }

    #painelLateral .painelConteudo > .campoInfo:nth-of-type(2) strong {
      color: #075985;
      text-transform: uppercase;
      font-size: 12px;
      letter-spacing: 0;
    }

    #painelLateral .painelConteudo > .campoInfo:nth-of-type(2) #painelGaveta {
      display: block;
      color: #0f172a;
      font-size: 15px;
      font-weight: 900;
    }

    .avisoArquivoGrande {
      background: #dbeafe !important;
      color: #1d4ed8 !important;
    }
    /* FIM_AJUSTES_V1_PAINEL_UPLOAD_DUPLICIDADES_20260601 */

    @media (max-width: 560px) {
      #painelLateral > .painelTopo {
        min-height: 58px;
        padding: 12px;
      }

      #painelLateral > .painelTopo #painelTitulo {
        font-size: 14px;
        max-width: 100%;
      }

      #painelLateral > .painelTopo .btnFechar {
        min-width: 32px;
        min-height: 32px;
      }
    }
    /* FIM_LEGIBILIDADE_CABECALHO_PAINEL_FASE6D_PRE_20260527 */

    /* INICIO_HOVER_BOTOES_VERSOES_SHAREPOINT_FASE6D_PRE_20260527
       Correção pontual:
       remove o hover antigo dos botões de versões do SharePoint no painel lateral.
       Mantém os botões claros e legíveis no normal, hover, focus e active.
    */
    #painelLateral #versoesSharePoint button.btnVersaoSharePoint,
    #painelLateral #versoesSharePoint button.btnAlternarVersoes {
      background: #eff6ff !important;
      color: #0f2f66 !important;
      border: 1px solid rgba(147, 197, 253, .80) !important;
      box-shadow:
        0 5px 12px rgba(15, 47, 102, .055),
        inset 0 1px 0 rgba(255, 255, 255, .88) !important;
      transform: none !important;
      text-shadow: none !important;
    }

    #painelLateral #versoesSharePoint button.btnVersaoSharePoint:hover:not(:disabled),
    #painelLateral #versoesSharePoint button.btnVersaoSharePoint:focus-visible:not(:disabled),
    #painelLateral #versoesSharePoint button.btnAlternarVersoes:hover:not(:disabled),
    #painelLateral #versoesSharePoint button.btnAlternarVersoes:focus-visible:not(:disabled) {
      background: #ffffff !important;
      color: #0f172a !important;
      border-color: rgba(37, 99, 235, .48) !important;
      box-shadow:
        0 8px 18px rgba(15, 47, 102, .075),
        inset 0 1px 0 rgba(255, 255, 255, .92) !important;
      transform: none !important;
      text-shadow: none !important;
      filter: none !important;
    }

    #painelLateral #versoesSharePoint button.btnVersaoSharePoint:active:not(:disabled),
    #painelLateral #versoesSharePoint button.btnAlternarVersoes:active:not(:disabled) {
      background: #dbeafe !important;
      color: #0f2f66 !important;
      border-color: rgba(37, 99, 235, .52) !important;
      box-shadow:
        inset 0 2px 4px rgba(15, 47, 102, .08) !important;
      transform: none !important;
    }

    #painelLateral #versoesSharePoint button.btnVersaoSharePoint:disabled,
    #painelLateral #versoesSharePoint button.btnAlternarVersoes:disabled {
      opacity: .62;
      cursor: not-allowed;
      transform: none !important;
    }
    /* FIM_HOVER_BOTOES_VERSOES_SHAREPOINT_FASE6D_PRE_20260527 */

    /*

INICIO_HOVER_BOTOES_ACOES_PAINEL_FASE6D_HOVER2_20260527
       Correção pontual:
       botões de ações do painel lateral com hover próprio, legível e sem herdar hover antigo.
    */
    #painelLateral .acoes button,
    #painelLateral .btnAlterarGaveta {
      min-height: 38px;
      border-radius: 12px;
      border: 1px solid rgba(148, 163, 184, .62) !important;
      background: #f8fafc !important;
      color: #0f172a !important;
      box-shadow:
        0 5px 12px rgba(15, 23, 42, .045),
        inset 0 1px 0 rgba(255, 255, 255, .86) !important;
      transform: none !important;
      text-shadow: none !important;
      filter: none !important;
    }

    #painelLateral .acoes button:hover:not(:disabled),
    #painelLateral .acoes button:focus-visible:not(:disabled),
    #painelLateral .btnAlterarGaveta:hover:not(:disabled),
    #painelLateral .btnAlterarGaveta:focus-visible:not(:disabled) {
      background: #ffffff !important;
      color: #0f2f66 !important;
      border-color: rgba(37, 99, 235, .42) !important;
      box-shadow:
        0 8px 18px rgba(15, 47, 102, .075),
        inset 0 1px 0 rgba(255, 255, 255, .92) !important;
      transform: none !important;
      text-shadow: none !important;
      filter: none !important;
      outline: none;
    }

    #painelLateral .acoes button:active:not(:disabled),
    #painelLateral .btnAlterarGaveta:active:not(:disabled) {
      background: #e0f2fe !important;
      color: #0f2f66 !important;
      border-color: rgba(37, 99, 235, .48) !important;
      box-shadow: inset 0 2px 5px rgba(15, 47, 102, .08) !important;
      transform: none !important;
    }

    #painelLateral .acoes .principal {
      background: #1d4ed8 !important;
      color: #ffffff !important;
      border-color: rgba(37, 99, 235, .64) !important;
      box-shadow: 0 8px 18px rgba(37, 99, 235, .18) !important;
    }

    #painelLateral #btnRenomear {
      background: #e0f2fe !important;
      color: #075985 !important;
      border-color: rgba(56, 189, 248, .58) !important;
    }

    #painelLateral #btnSubstituir {
      background: #fffbeb !important;
      color: #92400e !important;
      border-color: rgba(245, 158, 11, .62) !important;
    }

    #painelLateral #btnMesclar {
      background: #eef2ff !important;
      color: #3730a3 !important;
      border-color: rgba(129, 140, 248, .62) !important;
    }

    #painelLateral #btnSubstituir:hover:not(:disabled),
    #painelLateral #btnSubstituir:focus-visible:not(:disabled) {
      background: #fef3c7 !important;
      color: #78350f !important;
      border-color: rgba(245, 158, 11, .72) !important;
      box-shadow: 0 8px 18px rgba(146, 64, 14, .09) !important;
    }

    #painelLateral #btnMesclar:hover:not(:disabled),
    #painelLateral #btnMesclar:focus-visible:not(:disabled) {
      background: #e0e7ff !important;
      color: #312e81 !important;
      border-color: rgba(99, 102, 241, .72) !important;
      box-shadow: 0 8px 18px rgba(67, 56, 202, .09) !important;
    }

    #painelLateral #btnArquivar {
      background: #fef2f2 !important;
      color: #7f1d1d !important;
      border-color: rgba(248, 113, 113, .50) !important;
    }

    #painelLateral #btnArquivar:hover:not(:disabled),
    #painelLateral #btnArquivar:focus-visible:not(:disabled) {
      background: #fff1f2 !important;
      color: #7f1d1d !important;
      border-color: rgba(239, 68, 68, .58) !important;
      box-shadow: 0 8px 18px rgba(127, 29, 29, .08) !important;
    }

    #painelLateral #btnRestaurar {
      background: #ecfdf5 !important;
      color: #064e3b !important;
      border-color: rgba(52, 211, 153, .52) !important;
    }

    #painelLateral #btnRestaurar:hover:not(:disabled),
    #painelLateral #btnRestaurar:focus-visible:not(:disabled) {
      background: #f0fdf4 !important;
      color: #064e3b !important;
      border-color: rgba(16, 185, 129, .58) !important;
      box-shadow: 0 8px 18px rgba(6, 95, 70, .08) !important;
    }

    #painelLateral .acoes button:disabled,
    #painelLateral .btnAlterarGaveta:disabled {
      opacity: .60;
      cursor: not-allowed;
      transform: none !important;
    }

    button.itemArquivo .tagAtivo {
      border-color: #bbf7d0;
      background: #dcfce7;
      color: #166534 !important;
    }

    button.itemArquivo .tagArquivado {
      border-color: #fecdd3;
      background: #fff1f2;
      color: #9f1239 !important;
    }
    /* FIM_HOVER_BOTOES_ACOES_PAINEL_FASE6D_HOVER2_20260527 */

/* INICIO_COMPLEMENTO_NOMES_REPETIDOS_20260601 */
    .seloGaveta,
    .seloNomeRepetido,
    .tagAtivo,
    .tagArquivado,
    .statusRecenteArquivo {
      display: inline-flex !important;
      align-items: center;
      justify-content: center;
      width: fit-content;
      max-width: 100%;
      min-height: 24px;
      margin: 0;
      padding: 0 9px;
      border-radius: 999px;
      font-size: 12px !important;
      font-weight: 800;
      line-height: 1;
      letter-spacing: 0;
      text-transform: uppercase;
      white-space: nowrap;
      box-sizing: border-box;
    }

    .tagAtivo {
      border: 1px solid #bbf7d0;
      background: #dcfce7;
      color: #166534 !important;
    }

    .tagArquivado {
      border: 1px solid #fecdd3;
      background: #fff1f2;
      color: #9f1239 !important;
    }

    .seloGaveta {
      border: 1px solid #bfdbfe;
      background: #eff6ff;
      color: #1e3a8a !important;
    }

    .seloNomeRepetido {
      border: 1px solid #fde68a;
      background: #fffbeb;
      color: #92400e !important;
    }

    .painelCentralDuplicidades .paresIgnoradosDuplicidade {
      margin: 0 0 14px;
    }

    .painelCentralDuplicidades .listaCentralDuplicidades {
      gap: 12px;
    }

    .duplicidadeArquivo {
      display: flex;
      flex-wrap: wrap;
      align-content: flex-start;
      align-items: flex-start;
      gap: 4px 6px;
    }

    .duplicidadeArquivo strong {
      flex: 0 0 100%;
    }

    .seloNomeRepetido {
      box-shadow: none;
    }

    #painelLateral .campoInfo .seloNomeRepetido,
    .duplicidadeArquivo .seloNomeRepetido {
      margin: 6px 0 8px;
    }

    button.itemArquivo:hover:not(:disabled) .seloNomeRepetido,
    button.itemArquivo:focus-visible:not(:disabled) .seloNomeRepetido {
      color: #78350f !important;
      border-color: #fbbf24;
      background: #fef3c7;
    }
/* FIM_COMPLEMENTO_NOMES_REPETIDOS_20260601 */

/* INICIO_ETAPA3_MOBILE_CENTRAIS_20260531 */
    @media (max-width: 760px) {
      .centralConfiguracoesTopo,
      .centralUploadTopo {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        gap: 10px;
      }

      .centralConfiguracoesTopo .btnFechar,
      .centralUploadTopo .btnFechar,
      .centralUploadTopo .btnFecharUpload {
        width: 34px !important;
        min-width: 34px !important;
        max-width: 34px !important;
        height: 34px !important;
        min-height: 34px !important;
        padding: 0 !important;
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        justify-self: end;
        align-self: start;
        flex: 0 0 auto;
        border-radius: 999px;
        line-height: 1;
      }

      .centralUploadTopo > div,
      .centralConfiguracoesTopo > h2 {
        min-width: 0;
      }

      .painelCentralDuplicidades .paresIgnoradosDuplicidade {
        margin: 0 0 12px;
      }
    }
/* FIM_ETAPA3_MOBILE_CENTRAIS_20260531 */
/* AJUSTE_FINAL_V1_DASHBOARD_IRMAOS_20260601
   Regras finais escopadas para a V1:
   - Contadores sempre em 3 colunas no PC/notebook.
   - Central de Duplicidades e Central de histórico sempre em 2 colunas no PC/notebook.
   - Títulos dos dois cards de ação com mesma fonte, cor e marcador vertical.
   - Sem botões internos nos cards de ação.
*/
.dashboard.dashboardContadores {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  width: 100%;
  gap: 10px;
  align-items: stretch;
  grid-auto-rows: 1fr;
  margin: 7px 0 12px;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
  }
}

.dashboard.dashboardContadores > .cardDash {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  grid-column: auto;
  box-sizing: border-box;
}

.dashboard.dashboardAcoes {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  gap: 12px;
  align-items: stretch;
  grid-auto-rows: 1fr;
  margin: 7px 0 16px;
}

.dashboard.dashboardAcoes > .cardDash,
.dashboard.dashboardAcoes > #centralDuplicidades,
.dashboard.dashboardAcoes > .cardHistoricoGeral {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  grid-column: auto;
  box-sizing: border-box;
  min-height: 88px;
  padding: 14px 16px;
  border-radius: 16px;
  display: grid;
  align-content: center;
  text-align: left;
  cursor: pointer;
}

.dashboard.dashboardAcoes > .cardHistoricoGeral {
  appearance: none;
  border: 1px solid #99f6e4;
  background: linear-gradient(135deg, #f0fdfa 0%, #ffffff 100%);
  color: #0f2f66;
  box-shadow: 0 2px 10px rgba(15, 118, 110, .05);
  font: inherit;
}

.dashboard.dashboardAcoes > #centralDuplicidades.discreta {
  border-color: #bbf7d0;
  background: linear-gradient(135deg, #f0fdf4 0%, #ffffff 100%);
}

.dashboard.dashboardAcoes > #centralDuplicidades.comAlerta {
  border-color: #fdba74;
  background: linear-gradient(135deg, #fff7ed 0%, #ffffff 100%);
}

.dashboard.dashboardAcoes .cardAcaoCabecalho,
.dashboard.dashboardAcoes .centralDuplicidadesTopo {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 0 0 8px;
}

.dashboard.dashboardAcoes .cardHistoricoGeral .cardAcaoCabecalho {
  margin-bottom: 0;
}

.dashboard.dashboardAcoes .cardAcaoTitulo {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
  margin: 0;
  color: #0f2f66;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.2;
  letter-spacing: 0;
  text-transform: none;
}

.dashboard.dashboardAcoes .cardAcaoTitulo::before {
  content: "";
  width: 5px;
  height: 18px;
  border-radius: 999px;
  background: #0f766e;
  flex: 0 0 auto;
}

.dashboard.dashboardAcoes #centralDuplicidades.comAlerta .cardAcaoTitulo::before {
  background: #f97316;
}

.dashboard.dashboardAcoes .cardAcaoDescricao,
.dashboard.dashboardAcoes .cardAcaoBotao,
.dashboard.dashboardAcoes .acoesCentralDuplicidades {
  display: none;
}

.dashboard.dashboardAcoes .resumoCentralDuplicidades {
  margin: 0;
  color: #334155;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.28;
}

.dashboard.dashboardAcoes #centralDuplicidades.comAlerta .resumoCentralDuplicidades {
  color: #7c2d12;
}

.dashboard.dashboardAcoes > .cardHistoricoGeral:hover:not(:disabled),
.dashboard.dashboardAcoes > #centralDuplicidades:hover {
  transform: none;
  box-shadow: 0 7px 18px rgba(15, 47, 102, .08);
}

@media (min-width: 761px) {
  .dashboard.dashboardContadores {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .dashboard.dashboardAcoes {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .dashboard.dashboardContadores,
  .dashboard.dashboardAcoes {
    grid-template-columns: 1fr;
  }
}
/* FIM_AJUSTE_FINAL_V1_DASHBOARD_IRMAOS_20260601 */

/* PERFORMANCE_PAINEIS_CARGA_REAL_V4_20260607 */
.painelLateral,
.painelDashboard {
  right: 0 !important;
  transform: translate3d(104%, 0, 0);
  opacity: .98;
  transition: transform .20s ease, opacity .20s ease, box-shadow .20s ease !important;
  will-change: transform;
}

.painelLateral.aberto,
.painelDashboard.aberto {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

.painelCentralDuplicidades {
  left: 0 !important;
  right: auto !important;
  transform: translate3d(-104%, 0, 0);
  opacity: .98;
  transition: transform .20s ease, opacity .20s ease, box-shadow .20s ease !important;
  will-change: transform;
}

.painelCentralDuplicidades.aberto {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .painelLateral,
  .painelDashboard,
  .painelCentralDuplicidades {
    transition: none !important;
    will-change: auto;
  }
}

