/* ============================================================
   Glossário (/glossario/) - estilos escopados (prefixo mdv-glo)
   Carregado por css.php quando $pag == "glossario/detalhes".
   Escopo: nao conflita com bootstrap.min.css / style.css / lightblue.css
   Mesmos tokens de /css/faq.css - manter os dois em sincronia.
   ============================================================ */
.mdv-glo{
  --mdv-navy:#013766;
  --mdv-navy-deep:#012647;
  --mdv-blue:#1466b8;
  --mdv-gold:#ff9205;
  --mdv-ink:#3b4249;
  --mdv-muted:#767b7f;
  --mdv-line:#e3e8ee;
  --mdv-radius:8px;
  color:var(--mdv-ink);
  line-height:1.7;
  /* mesma fonte do restante do site (style.css aplica Lato em p/a/span/ul/input);
     details, summary e div NAO estao naquela lista e cairiam no Helvetica do bootstrap */
  font-family:Lato,sans-serif;
}
.mdv-glo *,.mdv-glo *::before,.mdv-glo *::after{box-sizing:border-box}
/* h1-h6 do style.css sao Merriweather/serif (fonte nem carregada no head) */
.mdv-glo h2,.mdv-glo h3,.mdv-glo summary,.mdv-glo-search input,.mdv-glo-cats button{font-family:Lato,sans-serif}

/* ---- Busca ---- */
.mdv-glo-search{position:relative;margin:0 0 18px}
.mdv-glo-search input{
  width:100%;padding:14px 18px 14px 46px;font-size:15px;border:1px solid var(--mdv-line);
  border-radius:var(--mdv-radius);box-shadow:0 2px 10px rgba(1,55,102,.06);outline:none;
  background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23767b7f' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") no-repeat 16px center;
}
.mdv-glo-search input:focus{border-color:var(--mdv-navy);box-shadow:0 2px 12px rgba(1,55,102,.16)}
.mdv-glo-empty{display:none;text-align:center;color:var(--mdv-muted);padding:26px 0}

/* ---- Filtro por categoria ---- */
.mdv-glo-cats{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px;padding:0;list-style:none}
.mdv-glo-cats button{
  display:inline-block;padding:7px 15px;border-radius:999px;border:1px solid var(--mdv-line);
  background:#fff;color:var(--mdv-navy);font-size:13px;font-weight:700;cursor:pointer;
  line-height:1.4;
}
.mdv-glo-cats button:hover,.mdv-glo-cats button:focus{border-color:var(--mdv-navy)}
.mdv-glo-cats button.is-active{background:var(--mdv-navy);border-color:var(--mdv-navy);color:#fff}

/* ---- Navegacao A-Z ---- */
.mdv-glo-az{
  display:flex;flex-wrap:wrap;gap:4px;margin:0 0 8px;padding:12px;
  background:#f7f9fc;border:1px solid var(--mdv-line);border-radius:var(--mdv-radius);
}
.mdv-glo-az a,.mdv-glo-az span{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:30px;height:30px;border-radius:6px;font-size:13px;font-weight:700;text-decoration:none;
}
.mdv-glo-az a{color:var(--mdv-navy);background:#fff;border:1px solid var(--mdv-line)}
.mdv-glo-az a:hover,.mdv-glo-az a:focus{background:var(--mdv-navy);color:#fff;text-decoration:none}
.mdv-glo-az span{color:#c3cad2}

/* ---- Secoes por letra ---- */
.mdv-glo-letra{margin:30px 0}
.mdv-glo-letra h2{
  font-size:20px;color:var(--mdv-navy);margin:0 0 14px;font-weight:700;
  display:flex;align-items:center;gap:10px;scroll-margin-top:110px;
}
.mdv-glo-letra h2::after{content:'';flex:1 1 auto;height:2px;background:var(--mdv-line);border-radius:2px}
.mdv-glo-letra h2::before{content:'';width:22px;height:3px;background:var(--mdv-gold);border-radius:2px;flex:none}

/* ---- Verbetes ---- */
.mdv-glo-item{
  background:#fff;border:1px solid var(--mdv-line);border-radius:var(--mdv-radius);
  margin-bottom:10px;overflow:hidden;transition:box-shadow .2s;scroll-margin-top:110px;
}
.mdv-glo-item[open]{box-shadow:0 4px 16px rgba(1,55,102,.08);border-color:#c9d7e5}
.mdv-glo-item summary{
  list-style:none;cursor:pointer;padding:15px 50px 15px 18px;
  position:relative;user-select:none;
}
.mdv-glo-item summary::-webkit-details-marker{display:none}
.mdv-glo-item summary::after{
  content:'';position:absolute;right:20px;top:50%;width:11px;height:11px;
  border-right:2.5px solid var(--mdv-navy);border-bottom:2.5px solid var(--mdv-navy);
  transform:translateY(-70%) rotate(45deg);transition:transform .25s;
}
.mdv-glo-item[open] summary::after{transform:translateY(-30%) rotate(225deg)}
.mdv-glo-item summary:focus-visible{outline:3px solid var(--mdv-gold);outline-offset:-3px}
.mdv-glo-termo{display:block;font-weight:700;color:var(--mdv-navy);font-size:16px;line-height:1.4}
.mdv-glo-alt{display:block;font-size:13px;color:var(--mdv-muted);margin-top:2px;line-height:1.4}

.mdv-glo-def{padding:0 18px 16px;font-size:15px}
.mdv-glo-def p{margin:0 0 12px}
.mdv-glo-def ul,.mdv-glo-def ol{margin:0 0 12px;padding-left:22px}
.mdv-glo-def li{margin-bottom:6px}
.mdv-glo-def a{color:var(--mdv-navy);font-weight:700;text-decoration:underline}
.mdv-glo-def strong{color:var(--mdv-navy)}
.mdv-glo-tag{margin:0!important}
.mdv-glo-tag span{
  display:inline-block;padding:3px 11px;border-radius:999px;background:#f0f4f9;
  color:var(--mdv-navy);font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.4px;
}

/* ---- Paginas relacionadas ---- */
.mdv-glo-rel{margin:44px 0 0;padding:26px 24px;background:#f7f9fc;border:1px solid var(--mdv-line);border-radius:var(--mdv-radius)}
.mdv-glo-rel h2{font-size:18px;color:var(--mdv-navy);font-weight:700;margin:0 0 16px}
.mdv-glo-rel ul{margin:0;padding:0;list-style:none}
.mdv-glo-rel li{margin-bottom:9px;font-size:14px;color:var(--mdv-muted);line-height:1.6}
.mdv-glo-rel li:last-child{margin-bottom:0}
.mdv-glo-rel a{color:var(--mdv-navy);font-weight:700;text-decoration:underline}

/* ---- CTA final ---- */
.mdv-glo-cta{
  background:linear-gradient(135deg,var(--mdv-navy-deep) 0%,var(--mdv-navy) 100%);
  border-radius:var(--mdv-radius);color:#fff;padding:30px 28px;margin:30px 0 10px;
  display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px;
}
.mdv-glo-cta h2{margin:0 0 6px;font-size:21px;font-weight:700;color:#fff}
.mdv-glo-cta p{margin:0;color:#d6e2f0;font-size:15px}
.mdv-glo-cta .mdv-glo-cta-btn{
  display:inline-block;background:var(--mdv-gold);color:#fff;
  font-weight:700;padding:13px 26px;border-radius:999px;text-decoration:none;white-space:nowrap;
}
.mdv-glo-cta .mdv-glo-cta-btn:hover,.mdv-glo-cta .mdv-glo-cta-btn:focus{filter:brightness(1.06);color:#fff;text-decoration:none}

@media (max-width:640px){
  .mdv-glo-az{padding:10px;gap:3px}
  .mdv-glo-az a,.mdv-glo-az span{min-width:27px;height:27px;font-size:12px}
  .mdv-glo-cta{padding:24px 20px}
  .mdv-glo-cta .mdv-glo-cta-btn{width:100%;text-align:center}
  .mdv-glo-rel{padding:22px 18px}
}
@media (prefers-reduced-motion:reduce){
  .mdv-glo *{transition:none!important}
}
