.concursosPainel{
   display: grid;
   width: min(1120px, 100%);
   gap: 18px;
   border: 1px solid #d7e7f3;
   border-radius: 22px;
   padding: 22px;
   background: rgba(255,255,255,.95);
   box-shadow: 0 10px 30px rgba(30,75,110,.09);
}

.concursosFiltros{
   display: grid;
   grid-template-columns: minmax(140px,.85fr) minmax(160px,1fr) minmax(160px,1fr) minmax(220px,1.5fr);
   gap: 12px;
}

.concursoCampo{
   display: grid;
   min-width: 0;
   gap: 7px;
}

.concursoCampo > span{
   color: #334155;
   font-size: .85rem;
   font-weight: 800;
}

.concursoCampo select{
   width: 100%;
   min-width: 0;
   height: 48px;
   border: 1px solid #cbdbea;
   border-radius: 13px;
   padding: 0 38px 0 13px;
   color: #17345f;
   font: inherit;
   background-color: #f8fbfe;
   cursor: pointer;
   transition: border-color .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.concursoCampo select:hover{
   border-color: #7abddd;
   background-color: #fff;
}

.concursoCampo select:focus{
   border-color: #218cbc;
   outline: 0;
   background-color: #fff;
   box-shadow: 0 0 0 3px rgba(33,140,188,.14);
}

.concursosAcoes{
   display: grid;
   grid-template-columns: repeat(4, minmax(0, 1fr));
   gap: 12px;
   padding-top: 17px;
   border-top: 1px solid #e5eef5;
}

.concursoAcao{
   --cor-acao: #2563eb;
   display: flex;
   min-width: 0;
   min-height: 68px;
   align-items: center;
   justify-content: center;
   gap: 10px;
   border: 1px solid color-mix(in srgb, var(--cor-acao) 35%, white);
   border-radius: 16px;
   padding: 12px 14px;
   color: var(--cor-acao);
   font: inherit;
   font-weight: 800;
   text-align: center;
   background: color-mix(in srgb, var(--cor-acao) 7%, white);
   cursor: pointer;
   transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.concursoAcao:hover,
.concursoAcao:focus-visible{
   outline: 0;
   background: color-mix(in srgb, var(--cor-acao) 12%, white);
   box-shadow: 0 9px 22px color-mix(in srgb, var(--cor-acao) 18%, transparent);
   transform: translateY(-2px);
}

.concursoAcao svg{
   flex: 0 0 30px;
   width: 30px;
   height: 30px;
   fill: currentColor;
}

.concursoAcaoDupla{ --cor-acao: #0f9f78; }
.concursoAcaoSala{ --cor-acao: #7c3aed; }
.concursoAcaoCodigo{ --cor-acao: #1769aa; }

@media (max-width: 860px){
   .concursosFiltros{
      grid-template-columns: repeat(2, minmax(0, 1fr));
   }

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

@media (max-width: 520px){
   .concursosPainel{
      gap: 15px;
      border-radius: 18px;
      padding: 14px;
   }

   .concursosFiltros,
   .concursosAcoes{
      grid-template-columns: 1fr;
   }

   .concursoAcao{
      min-height: 58px;
      justify-content: flex-start;
   }
}
