/*!
Theme Name: Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Template: kadence
Author: Kadence WP
Author URI: https://www.kadencewp.com/
Description: A child theme for the Kadence Theme.
Version: 1.0.0
License: GNU General Public License v3.0 (or later)
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Text Domain: kadence-child
*/

/* Theme customization starts here
-------------------------------------------------------------- */

/* =========================================================
   AÇÕES DOS CURSOS LIVRES
   ========================================================= */
.db-error {
  display: none !important;
}
.stbg-links-curso {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}

.stbg-link-curso,
.stbg-inscricao-fechada {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;

  min-width: 0;
  min-height: 72px;
  padding: 18px 24px;

  border: 1px solid #d0d0d0;
  border-radius: 8px;

  font-size: 17px;
  font-weight: 700;
  text-align: center;
}

/* Programação e Requerimento */

.stbg-link-curso {
  background: #f7f7f7;
  color: #292929;
  text-decoration: none;
  cursor: pointer;

  transition:
    border-color 0.2s ease,
    color 0.2s ease,
    background-color 0.2s ease,
    transform 0.2s ease;
}

.stbg-link-curso i {
  flex-shrink: 0;
  font-size: 22px;
  color: #8f1519;
}

.stbg-link-curso:hover {
  color: #8f1519;
  border-color: #8f1519;
  transform: translateY(-2px);
}

/* Fazer Inscrição */

.stbg-botao-inscricao,
.stbg-botao-inscricao:focus,
.stbg-botao-inscricao:active,
.stbg-botao-inscricao:visited {
  background: #8f1519 !important;
  border-color: #8f1519 !important;
  color: #ffffff !important;
}

.stbg-botao-inscricao i {
  color: #ffffff !important;
}

.stbg-botao-inscricao:hover {
  background: #721114 !important;
  border-color: #721114 !important;
  color: #ffffff !important;
}

.stbg-botao-inscricao:focus-visible {
  outline: 3px solid rgba(143, 21, 25, 0.3);
  outline-offset: 3px;
}

/* Inscrição fechada */

.stbg-inscricao-fechada {
  background: #f7f7f7;
  color: #666666;
}

.stbg-inscricao-fechada i {
  flex-shrink: 0;
  font-size: 22px;
  color: #8f1519;
}

/* =========================================================
   MODAL DE INSCRIÇÃO
   ========================================================= */

.stbg-modal-inscricao {
  position: fixed;
  inset: 0;
  z-index: 99999 !important;

  display: flex;
  align-items: center;
  justify-content: center;

  padding: 30px;

  visibility: hidden;
  opacity: 0;
  pointer-events: none;

  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}

.stbg-modal-inscricao.ativo {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.stbg-modal-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;

  background: rgba(0, 0, 0, 0.65);
}

.stbg-modal-conteudo {
  position: relative;
  z-index: 2;

  width: 100%;
  max-width: 760px;
  max-height: 90vh;
  overflow-y: auto;

  padding: 36px;

  background: #ffffff;
  border-radius: 12px;

  transform: translateY(20px);

  transition: transform 0.25s ease;
}

.stbg-modal-inscricao.ativo .stbg-modal-conteudo {
  transform: translateY(0);
}

.stbg-modal-fechar {
  position: absolute;
  top: 14px;
  right: 18px;

  width: 42px;
  height: 42px;

  padding: 0;

  border: 0;
  background: transparent;

  font-size: 34px;
  line-height: 1;
  color: #292929;

  cursor: pointer;
}

.stbg-modal-cabecalho {
  margin-bottom: 28px;
  padding-right: 45px;
}

.stbg-modal-cabecalho h2 {
  margin: 0 0 6px;
}

.stbg-modal-cabecalho p {
  margin: 0;
  color: #666666;
}

body.stbg-modal-aberto {
  overflow: hidden;
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {
  .stbg-informacoes-curso,
  .stbg-informacoes-curso[data-total] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .stbg-informacoes-curso[data-total] .stbg-info-curso {
    grid-column: auto;
  }

  .stbg-informacoes-curso[data-total="1"] {
    grid-template-columns: 1fr;
  }

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

/* =========================================================
   CELULAR
   ========================================================= */

@media (max-width: 600px) {
  .stbg-informacoes-curso,
  .stbg-informacoes-curso[data-total] {
    grid-template-columns: 1fr;
  }

  .stbg-informacoes-curso[data-total] .stbg-info-curso {
    grid-column: auto;
  }

  /* Ações */

  .stbg-links-curso {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  /* Modal */

  .stbg-modal-inscricao {
    padding: 0;
    align-items: stretch;
  }

  .stbg-modal-conteudo {
    width: 100%;
    max-width: none;

    height: 100dvh;
    min-height: 100dvh;
    max-height: 100dvh;

    padding: calc(24px + env(safe-area-inset-top)) 20px
      calc(24px + env(safe-area-inset-bottom));

    border-radius: 0;
    overflow-y: auto;
  }

  .stbg-modal-fechar {
    position: fixed;
    top: calc(12px + env(safe-area-inset-top));
    right: 16px;
    z-index: 3;
  }

  .stbg-modal-cabecalho {
    padding-right: 50px;
    margin-bottom: 28px;
  }
}
