/* ============================================================
   BOTÃO INFO
============================================================ */
#app-info-btn {
  position: fixed;
  bottom:76px;
  right:24px;
  z-index: 99999;

  width: 40px;
  height: 40px;

  border: none;
  border-radius: 50%;

  background: #12B3B6;
  color: #fff;

  font-size: 20px;

  cursor: pointer;

  box-shadow: 0 4px 14px rgba(0,0,0,.25);

  transition: background .25s ease, transform .25s ease;
}

#app-info-btn:hover {
  background: #0f9fa2;
  transform: scale(1.07);
}


/* ============================================================
   MODAL
============================================================ */
#app-info-modal {
  position: fixed;
  inset: 0;

  background: rgba(0,0,0,.45);

  display: none;
  justify-content: center;
  align-items: center;

  backdrop-filter: blur(4px);

  z-index: 999999;
}


/* ============================================================
   CAIXA INTERNA
============================================================ */
#app-info-modal .info-box {

  background: #ffffff;
  color: #0e1720;

  max-width: 580px;
  width: 94%;

  padding: 28px;

  border-radius: 18px;

  box-shadow: 0 10px 40px rgba(0,0,0,.2);

  font-family: "IBM Plex Sans", system-ui, sans-serif;

  /* BASE TIPOGRÁFICA */
  font-size: 15px;
  line-height: 1.6;

  max-height: 80vh;
  overflow-y: auto;

  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
}


/* ============================================================
   TEXTOS
============================================================ */

#app-info-modal p {
  margin: 10px 0;
}

#app-info-modal ul {
  margin: 10px 0 20px;
  padding-left: 20px;
}

#app-info-modal li {
  margin-bottom: 6px;
}


/* ============================================================
   TÍTULOS
============================================================ */

#app-info-modal h2 {

  font-size: 24px;
  margin-top: 0;
  margin-bottom: 10px;

  color: #12B3B6;

  font-weight: 600;
}

#app-info-modal h3 {

  margin-top: 20px;
  margin-bottom: 6px;

  font-size: 18px;

  color: #0e1720;

  font-weight: 600;
}


/* ============================================================
   TOGGLE PT/EN
============================================================ */

#lang-toggle {
  display: flex;
  justify-content: center;
  gap: 6px;

  margin-bottom: 18px;
}

#lang-toggle button {

  padding: 6px 14px;

  border-radius: 999px;
  border: 1px solid #12B3B6;

  background: #ffffff;
  color: #12B3B6;

  font-size: 14px;

  cursor: pointer;

  transition: all .18s ease;
}

#lang-toggle button.active {
  background: #12B3B6;
  color: #ffffff;
}


/* ============================================================
   EN escondido por defeito
============================================================ */

.lang-en {
  display: none;
}


/* ============================================================
   TOOLTIP DE LICENÇAS (ⓘ)
============================================================ */

.lic-tip {
  display: inline-block;

  margin-left: 6px;

  cursor: pointer;

  font-size: 14px;

  color: #12B3B6;

  border-radius: 50%;
  padding: 0 4px;

  position: relative;

  transition: color .2s ease;
}

.lic-tip:hover {
  color: #0f9fa2;
}


/* ============================================================
   TOOLTIP REAL
============================================================ */

.lic-tip::after {

  content: attr(data-url);

  position: absolute;

  left: 50%;
  bottom: 140%;

  transform: translateX(-50%) translateY(-6px);

  background: #ffffff;
  color: #0e1720;

  border: 1px solid #e1e5ea;

  padding: 6px 10px;

  border-radius: 6px;

  font-size: 12px;

  white-space: nowrap;

  box-shadow: 0 4px 14px rgba(0,0,0,.18);

  opacity: 0;
  pointer-events: none;

  transition: opacity .20s ease;

  z-index: 999999999;
}

.lic-tip:hover::after {
  opacity: 1;
}


/* ============================================================
   MOBILE
============================================================ */

@media (max-width: 600px) {

  #app-info-modal .info-box {
    max-width: 370px;
    width: 88%;

    padding: 20px;

    border-radius: 14px;

    max-height: 78vh;

    font-size: 14px;
  }

  #app-info-modal h2 {
    font-size: 20px;
  }

  #app-info-modal h3 {
    font-size: 16px;
  }

}