MediaWiki:Common.css: Difference between revisions

From determinar.ia.br - Determine suas informações
No edit summary
No edit summary
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
/* ============================================================
/* ===== Infobox Médico v3.1 ===== */
  MedicoInfobox folha de estilo completa
  Projeto: página do médico (web + celular)
  ============================================================ */
 
/* ---------- Card principal ---------- */
.infobox-medico {
.infobox-medico {
    position: relative;
  max-width: 520px; margin: 0 auto;
    overflow: hidden;
  background: #ffffff; border: 1px solid #e5e7eb;
    max-width: 560px;
  border-radius: 16px; padding: 20px;
    margin: 0 auto;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
    background: #ffffff;
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    border: 1px solid #e6e9ef;
    border-radius: 14px;
    padding: 20px 22px 22px;
    box-shadow: 0 4px 20px rgba(15, 40, 80, 0.06);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    color: #1f2933;
    line-height: 1.55;
    font-size: 15px;
}
}
/* Barra decorativa no topo do card */
.infobox-medico-imagem { text-align: center; margin-bottom: 12px; }
.infobox-medico::before {
.infobox-medico-imagem img { border-radius: 12px; }
    content: "";
.infobox-medico-titulo { font-size: 1.45rem; font-weight: 800; color: #111827; line-height: 1.25; }
    position: absolute;
.infobox-medico-descricao { color: #6b7280; font-size: .95rem; margin-top: 2px; }
    top: 0; left: 0; right: 0;
.infobox-medico-chips { margin-top: 10px; }
    height: 5px;
.chip-especialidade {
    background: linear-gradient(90deg, #0b6bcb, #1eb857, #f5a623);
  display: inline-block; background: #eef2ff; color: #3730a3;
  border: 1px solid #c7d2fe; border-radius: 999px;
  padding: 3px 12px; margin: 3px 4px 0 0; font-size: .78rem; font-weight: 600;
}
}
 
.medico-avaliacao { margin-top: 12px; font-size: .92rem; color: #374151; }
/* ---------- Links dentro do card ---------- */
.medico-estrelas { color: #f59e0b; letter-spacing: 2px; }
.infobox-medico a { color: #0b6bcb; }
.medico-nota { font-weight: 700; }
.infobox-medico a:hover { text-decoration: underline; }
.infobox-medico-tabela { width: 100%; border-collapse: collapse; margin-top: 12px; }
 
.infobox-medico-tabela th {
/* ---------- Foto ---------- */
  text-align: left; vertical-align: top; color: #6b7280;
.infobox-medico-imagem {
  font-weight: 600; font-size: .82rem; text-transform: uppercase;
    text-align: center;
  padding: 6px 10px 6px 0; width: 110px; border-bottom: 1px solid #f3f4f6;
    margin-bottom: 10px;
}
}
.infobox-medico-imagem img {
.infobox-medico-tabela td { padding: 6px 0; font-size: .92rem; color: #111827; border-bottom: 1px solid #f3f4f6; }
    width: 160px;
.infobox-medico-bio { margin-top: 14px; color: #374151; font-size: .95rem; line-height: 1.6; }
    height: 160px;
.infobox-medico-secao {
    border-radius: 50%;
  margin-top: 18px; font-size: .78rem; font-weight: 700; text-transform: uppercase;
    object-fit: cover;
  letter-spacing: .05em; color: #6b7280; border-bottom: 2px solid #e5e7eb; padding-bottom: 6px;
    border: 4px solid #ffffff;
    outline: 1px solid #e6e9ef;
    box-shadow: 0 6px 18px rgba(15, 40, 80, 0.12);
}
}
.infobox-medico-pubs { margin: 8px 0 0; padding-left: 20px; font-size: .9rem; }
.infobox-medico-pubs li { margin: 4px 0; }
.infobox-medico-rodape { margin-top: 16px; font-size: .75rem; color: #9ca3af; border-top: 1px dashed #e5e7eb; padding-top: 10px; }
.infobox-medico a.external { background-image: none; padding-right: 0; }


/* ---------- Nome e descrição ---------- */
/* CTA — azul de verdade (vence Timeless e Minerva) */
.infobox-medico-titulo {
.cta-agendar { margin: 18px 0 6px; text-align: center; }
    font-size: 1.45em;
.cta-agendar a.external,
    font-weight: 700;
.cta-agendar a,
    color: #0b3d63;
.content .cta-agendar a.external {
    text-align: center;
  display: block !important;
    margin: 4px 0 2px;
  background: #0d6efd !important;
    line-height: 1.25;
  color: #ffffff !important;
}
  padding: 14px 18px !important;
.infobox-medico-descricao {
  border-radius: 14px !important;
    text-align: center;
  font-weight: 700 !important;
    color: #5f6b76;
  font-size: 1.05rem !important;
    font-size: 0.95em;
  text-decoration: none !important;
    margin: 0 0 8px;
  box-shadow: 0 4px 14px rgba(13,110,253,.35) !important;
}
}
.cta-agendar a.external:hover,
.cta-agendar a:hover { background: #0a58ca !important; color: #ffffff !important; }


/* ---------- Chips (especialidades e procedimentos) ---------- */
/* Desambiguação — card âmbar */
.infobox-medico-chips {
.medico-desamb {
    margin: 6px 0 10px;
  margin: 18px 0 0; border: 1px solid #e5e7eb; border-left: 4px solid #f59e0b;
    text-align: center;
  border-radius: 10px; background: #fffbeb; overflow: hidden;
}
}
.chip-especialidade {
.medico-desamb-titulo {
    display: inline-block;
  padding: 10px 14px; font-size: .9rem; color: #92400e; font-weight: 600;
    background: #eaf4ff;
  cursor: pointer; user-select: none;
    color: #0b6bcb;
    border: 1px solid #cfe6ff;
    border-radius: 999px;
    padding: 0.3em 0.85em;
    margin: 0.18em 0.18em 0.18em 0;
    font-size: 0.88em;
    font-weight: 500;
    line-height: 1.5;
}
}
.medico-desamb-titulo::after { content: " ▴"; }
.medico-desamb.fechado .medico-desamb-titulo::after { content: " ▾"; }
.medico-desamb-lista { margin: 0; padding: 4px 16px 12px 34px; color: #78350f; font-size: .85rem; line-height: 1.5; }
.medico-desamb.fechado .medico-desamb-lista { display: none; }


/* ---------- Avaliação (estrelas Doctoralia) ---------- */
/* FAQ — cards abaixo da desambiguação */
.medico-avaliacao {
.medico-faq {
    display: flex;
  margin: 10px 0 0; border: 1px solid #e5e7eb; border-radius: 10px;
    align-items: center;
  background: #f9fafb; overflow: hidden;
    gap: 8px;
    flex-wrap: wrap;
    background: #fffaf0;
    border: 1px solid #fdeccb;
    border-radius: 10px;
    padding: 8px 12px;
    margin: 10px 0;
    font-size: 0.92em;
}
}
.medico-estrelas {
.medico-faq-q {
    color: #f5a623;
  padding: 12px 14px; font-weight: 600; font-size: .92rem; color: #111827;
    font-size: 1.05em;
  cursor: pointer; user-select: none;
    letter-spacing: 2px;
}
}
.medico-nota {
.medico-faq-q::before { content: "❓ "; }
    font-weight: 700;
.medico-faq-q::after { content: " ▴"; color: #9ca3af; }
    color: #1f2933;
.medico-faq.fechado .medico-faq-q::after { content: " ▾"; }
.medico-faq-a {
  padding: 10px 14px; color: #374151; font-size: .88rem; line-height: 1.55;
  border-top: 1px dashed #d1d5db;
}
}
.medico-avaliacao a { font-weight: 600; }
.medico-faq-a::before { content: "R: "; font-weight: 600; color: #0d6efd; }
.medico-faq.fechado .medico-faq-a { display: none; }


/* ---------- Tabela de dados (registro, endereço, horário...) ---------- */
/* Mapa / publicações */
.infobox-medico-tabela {
.medico-mapa { margin: 16px 0 0; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,.08); }
    width: 100%;
.medico-mapa iframe { display: block; border: 0; width: 100%; }
    border-collapse: collapse;
.medico-mapa-link { margin: 14px 0 0; }
    margin: 10px 0;
.medico-mais-pubs { margin-top: 10px; font-size: .9rem; font-weight: 600; }
 
/* Dark mode */
html.skin-theme-clientpref-night .infobox-medico { background: #111827; border-color: #374151; }
html.skin-theme-clientpref-night .infobox-medico-titulo { color: #f3f4f6; }
html.skin-theme-clientpref-night .medico-desamb { background: #2a2414; border-color: #444; }
html.skin-theme-clientpref-night .medico-desamb-titulo { color: #fbbf24; }
html.skin-theme-clientpref-night .medico-desamb-lista { color: #d6c8a8; }
html.skin-theme-clientpref-night .medico-faq { background: #1f2937; border-color: #374151; }
html.skin-theme-clientpref-night .medico-faq-q { color: #f3f4f6; }
html.skin-theme-clientpref-night .medico-faq-a { color: #d1d5db; }
/* URLs longas não estouram o card */
.infobox-medico-tabela td,
.infobox-medico-pubs li,
.medico-mais-pubs {
  overflow-wrap: anywhere;
  word-break: break-word;
}
}
.infobox-medico-tabela th,
/* ============================================================
.infobox-medico-tabela td {
  HERO — Mapa do Brasil + Grafo Vivo (determinar.ia.br)
    text-align: left;
  Substitui o bloco "Banner Hero com Canvas Interativo" do
    vertical-align: top;
  Common.css atual. Não precisa mais do canvas de partículas
    padding: 7px 6px;
  nem do jQuery: a animação agora é 100% SVG nativo (SMIL),
    font-size: 0.94em;
  mais leve e sem custo de CPU do canvas.
  ============================================================ */
 
.wiki-hero-wrapper {
  position: relative;
  background: radial-gradient(120% 140% at 15% 20%, #0c3626 0%, #062a20 45%, #041a13 100%);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
  margin-bottom: 24px;
  padding: 0;
}
}
.infobox-medico-tabela th {
 
    width: 38%;
.wiki-hero-wrapper::before {
    color: #52606d;
  content: "";
    font-weight: 600;
  position: absolute;
  top: 50%;
  right: 8%;
  transform: translateY(-50%);
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(16, 185, 129, .22) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}
}
.infobox-medico-tabela td {
 
    color: #1f2933;
.wiki-hero-content {
    overflow-wrap: anywhere; /* URLs longas não estouram o card */
  position: relative;
  z-index: 2;
  max-width: 1180px;
  margin: 0 auto;
  padding: 56px 32px;
}
}
.infobox-medico-tabela tr + tr th,
 
.infobox-medico-tabela tr + tr td {
.wiki-hero-grid {
    border-top: 1px solid #f0f3f7;
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  align-items: center;
  gap: 24px;
}
}


/* ---------- Bio (dentro do escopo) ---------- */
/* ---- Coluna de texto ---- */
.infobox-medico-bio {
 
    background: #f7fafc;
.wiki-hero-eyebrow {
    border-left: 4px solid #0b6bcb;
  display: inline-block;
    border-radius: 0 8px 8px 0;
  border: 1px solid rgba(245, 200, 0, .45);
    padding: 12px 14px;
  color: #f5c800;
    margin: 12px 0;
  background: rgba(245, 200, 0, .08);
    font-size: 0.95em;
  font-size: .74rem;
    color: #33404c;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 999px;
  margin-bottom: 18px;
}
}


/* ---------- Cabeçalhos de seção ---------- */
.wiki-hero-title {
.infobox-medico-secao {
  font-size: clamp(1.7rem, 3.4vw, 2.6rem);
    font-size: 1.02em;
  font-weight: 800;
    font-weight: 700;
  line-height: 1.22;
    color: #0b3d63;
  color: #ffffff !important;
    margin: 18px 0 6px;
  border-bottom: none !important;
    padding-top: 14px;
  padding-bottom: 0 !important;
    border-top: 1px solid #eef1f5;
  margin: 0 0 16px;
}
}


/* ---------- Botão CTA (Agendar consulta / WhatsApp) ---------- */
.wiki-hero-title .hl { color: #f5c800; }
.cta-agendar {
 
    margin-top: 14px;
.wiki-hero-subtitle {
  font-size: 1rem;
  color: #9db9ab;
  line-height: 1.65;
  margin-bottom: 26px;
  max-width: 46ch;
}
}
.cta-agendar a {
 
    display: block;
.wiki-hero-ctas {
    text-align: center;
  display: flex;
    background: linear-gradient(135deg, #25d366, #1eb857);
  flex-wrap: wrap;
    color: #ffffff !important;
  gap: 12px;
    font-weight: 700;
  margin-bottom: 30px;
    font-size: 1.05em;
    padding: 13px 18px;
    border-radius: 999px;
    text-decoration: none !important;
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.35);
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}
}
.cta-agendar a:hover {
 
    transform: translateY(-1px);
.wiki-hero-ctas a {
    box-shadow: 0 6px 16px rgba(37, 211, 102, 0.45);
  display: inline-block;
  padding: 12px 20px;
  border-radius: 10px;
  font-weight: 700;
  font-size: .95rem;
  text-decoration: none !important;
}
}


/* ---------- Mapa (iframe da tag perfilexterno / Google Maps) ---------- */
.wiki-hero-btn-primary {
.infobox-medico iframe {
  background: #10b981 !important;
    width: 100% !important;
  color: #062a20 !important;
    border: 0;
  box-shadow: 0 4px 14px rgba(16, 185, 129, .35);
    border-radius: 10px;
    margin-top: 10px;
    display: block;
}
}
.wiki-hero-btn-primary:hover { background: #34d399 !important; }


/* ---------- Publicações científicas ---------- */
.wiki-hero-btn-outline {
.infobox-medico-pubs {
  background: transparent !important;
    margin: 6px 0;
  color: #ffffff !important;
    padding: 0;
  border: 1.5px solid rgba(255, 255, 255, .25);
    list-style: none;
}
}
.infobox-medico-pubs li {
.wiki-hero-btn-outline:hover { border-color: rgba(245, 200, 0, .6); color: #f5c800 !important; }
    position: relative;
 
    padding: 4px 0 4px 20px;
.wiki-hero-stats {
    font-size: 0.9em;
  display: flex;
  gap: 28px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding-top: 18px;
}
}
.infobox-medico-pubs li::before {
 
    content: "";
.wiki-hero-stats div { display: flex; flex-direction: column; }
    position: absolute;
 
    left: 2px;
.wiki-hero-stats strong {
    top: 11px;
  color: #f5c800;
    width: 7px;
  font-size: 1.5rem;
    height: 7px;
  font-weight: 800;
    border-radius: 50%;
  line-height: 1;
    background: #0b6bcb;
}
}
.infobox-medico-pubs a {
 
    overflow-wrap: anywhere;
.wiki-hero-stats span {
  color: #9db9ab;
  font-size: .78rem;
  margin-top: 4px;
}
}
.infobox-medico-mais {
    font-size: 0.9em;
    margin: 6px 0 2px;
}
.infobox-medico-mais a { font-weight: 600; }


/* ---------- Desambiguação (fora do escopo) ---------- */
/* ---- Coluna do grafo ---- */
details.medico-detalhes {
 
    margin: 12px 0;
.wiki-hero-graph {
    background: #fafbfc;
  position: relative;
    border: 1px solid #e6e9ef;
  width: 100%;
    border-radius: 10px;
    padding: 8px 14px;
    font-size: 0.9em;
}
details.medico-detalhes summary {
    cursor: pointer;
    font-weight: 600;
    color: #52606d;
}
details.medico-detalhes summary:hover { color: #0b6bcb; }
details.medico-detalhes[open] summary { margin-bottom: 6px; }
details.medico-detalhes ul {
    margin: 4px 0 2px 18px;
    padding: 0;
}
details.medico-detalhes li {
    margin: 3px 0;
    color: #5f6b76;
}
}


/* ---------- Rodapé de proveniência ---------- */
.wiki-hero-graph svg {
.infobox-medico-rodape {
  width: 100%;
    margin-top: 16px;
  height: auto;
    padding-top: 10px;
  display: block;
    border-top: 1px dashed #d9dee5;
    font-size: 0.78em;
    color: #7b8794;
}
}


/* ============================================================
/* ---- Responsivo ---- */
  CELULAR (mobile-first: Timeless responsivo, Minerva, etc.)
  ============================================================ */
@media (max-width: 768px) {
    .infobox-medico {
        border-radius: 0;
        border-left: none;
        border-right: none;
        padding: 16px 14px 20px;
        box-shadow: none;
        margin-bottom: 96px; /* espaço para o CTA fixo não cobrir o rodapé */
    }
    .infobox-medico-titulo { font-size: 1.3em; }
 
    /* Foto um pouco menor no celular */
    .infobox-medico-imagem img {
        width: 130px;
        height: 130px;
    }


    /* Tabela vira blocos empilhados */
@media (max-width: 860px) {
    .infobox-medico-tabela th {
  .wiki-hero-grid { grid-template-columns: 1fr; }
        display: block;
  .wiki-hero-content { padding: 40px 20px; }
        width: 100%;
  .wiki-hero-graph { order: -1; max-width: 360px; margin: 0 auto 8px; }
        padding: 8px 0 1px;
  .wiki-hero-subtitle { max-width: none; }
        font-size: 0.8em;
  .wiki-hero-stats { gap: 20px; flex-wrap: wrap; }
        text-transform: uppercase;
        letter-spacing: 0.4px;
        color: #7b8794;
    }
    .infobox-medico-tabela td {
        display: block;
        width: 100%;
        padding: 0 0 10px;
    }
    .infobox-medico-tabela tr + tr th {
        border-top: 1px solid #f0f3f7;
        padding-top: 12px;
    }
 
    /* CTA fixo na base da tela (sempre visível) */
    .cta-agendar {
        position: fixed;
        left: 0;
        right: 0;
        bottom: 0;
        margin: 0;
        padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
        background: rgba(255, 255, 255, 0.92);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
        border-top: 1px solid #e6e9ef;
        z-index: 1000;
    }
    .cta-agendar a {
        border-radius: 12px;
        padding: 14px 18px;
        font-size: 1.1em;
    }
}
}


/* ---------- Impressão ---------- */
/* ---- Acessibilidade: respeita "reduzir movimento" ---- */
@media print {
@media (prefers-reduced-motion: reduce) {
    .cta-agendar { display: none; }
  .wiki-hero-graph svg * { animation: none !important; }
    .infobox-medico {
        max-width: 100%;
        border: none;
        box-shadow: none;
    }
}
}


/* ============================================================
/* ---- Dark mode do skin (mantém coerência, hero já é escuro) ---- */
  MODO ESCURO (Minerva/Vector com tema escuro ativo)
html.skin-theme-clientpref-night .wiki-hero-wrapper { box-shadow: 0 10px 30px rgba(0,0,0,.4); }
  ============================================================ */
html.skin-theme-clientpref-night .infobox-medico {
    background: #14181d;
    border-color: #262c33;
    box-shadow: none;
    color: #d7dde3;
}
html.skin-theme-clientpref-night .infobox-medico-titulo { color: #9ec9f0; }
html.skin-theme-clientpref-night .infobox-medico-descricao { color: #8b98a5; }
html.skin-theme-clientpref-night .chip-especialidade {
    background: #1c2733;
    color: #7db9f0;
    border-color: #2c3c4d;
}
html.skin-theme-clientpref-night .medico-avaliacao {
    background: #241f12;
    border-color: #4a3f1f;
}
html.skin-theme-clientpref-night .infobox-medico-tabela th { color: #8b98a5; }
html.skin-theme-clientpref-night .infobox-medico-tabela td { color: #d7dde3; }
html.skin-theme-clientpref-night .infobox-medico-tabela tr + tr th,
html.skin-theme-clientpref-night .infobox-medico-tabela tr + tr td { border-color: #232a31; }
html.skin-theme-clientpref-night .infobox-medico-bio {
    background: #181e24;
    border-left-color: #4a90d9;
    color: #c8d2db;
}
html.skin-theme-clientpref-night .infobox-medico-secao {
    border-top-color: #232a31;
    color: #9ec9f0;
}
html.skin-theme-clientpref-night details.medico-detalhes {
    background: #171c21;
    border-color: #262c33;
}
html.skin-theme-clientpref-night .infobox-medico-rodape {
    border-top-color: #2a3139;
    color: #6f7d8a;
}
html.skin-theme-clientpref-night .infobox-medico a { color: #7db9f0; }

Latest revision as of 01:53, 12 August 2026

/* ===== Infobox Médico — v3.1 ===== */
.infobox-medico {
  max-width: 520px; margin: 0 auto;
  background: #ffffff; border: 1px solid #e5e7eb;
  border-radius: 16px; padding: 20px;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}
.infobox-medico-imagem { text-align: center; margin-bottom: 12px; }
.infobox-medico-imagem img { border-radius: 12px; }
.infobox-medico-titulo { font-size: 1.45rem; font-weight: 800; color: #111827; line-height: 1.25; }
.infobox-medico-descricao { color: #6b7280; font-size: .95rem; margin-top: 2px; }
.infobox-medico-chips { margin-top: 10px; }
.chip-especialidade {
  display: inline-block; background: #eef2ff; color: #3730a3;
  border: 1px solid #c7d2fe; border-radius: 999px;
  padding: 3px 12px; margin: 3px 4px 0 0; font-size: .78rem; font-weight: 600;
}
.medico-avaliacao { margin-top: 12px; font-size: .92rem; color: #374151; }
.medico-estrelas { color: #f59e0b; letter-spacing: 2px; }
.medico-nota { font-weight: 700; }
.infobox-medico-tabela { width: 100%; border-collapse: collapse; margin-top: 12px; }
.infobox-medico-tabela th {
  text-align: left; vertical-align: top; color: #6b7280;
  font-weight: 600; font-size: .82rem; text-transform: uppercase;
  padding: 6px 10px 6px 0; width: 110px; border-bottom: 1px solid #f3f4f6;
}
.infobox-medico-tabela td { padding: 6px 0; font-size: .92rem; color: #111827; border-bottom: 1px solid #f3f4f6; }
.infobox-medico-bio { margin-top: 14px; color: #374151; font-size: .95rem; line-height: 1.6; }
.infobox-medico-secao {
  margin-top: 18px; font-size: .78rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .05em; color: #6b7280; border-bottom: 2px solid #e5e7eb; padding-bottom: 6px;
}
.infobox-medico-pubs { margin: 8px 0 0; padding-left: 20px; font-size: .9rem; }
.infobox-medico-pubs li { margin: 4px 0; }
.infobox-medico-rodape { margin-top: 16px; font-size: .75rem; color: #9ca3af; border-top: 1px dashed #e5e7eb; padding-top: 10px; }
.infobox-medico a.external { background-image: none; padding-right: 0; }

/* CTA — azul de verdade (vence Timeless e Minerva) */
.cta-agendar { margin: 18px 0 6px; text-align: center; }
.cta-agendar a.external,
.cta-agendar a,
.content .cta-agendar a.external {
  display: block !important;
  background: #0d6efd !important;
  color: #ffffff !important;
  padding: 14px 18px !important;
  border-radius: 14px !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
  text-decoration: none !important;
  box-shadow: 0 4px 14px rgba(13,110,253,.35) !important;
}
.cta-agendar a.external:hover,
.cta-agendar a:hover { background: #0a58ca !important; color: #ffffff !important; }

/* Desambiguação — card âmbar */
.medico-desamb {
  margin: 18px 0 0; border: 1px solid #e5e7eb; border-left: 4px solid #f59e0b;
  border-radius: 10px; background: #fffbeb; overflow: hidden;
}
.medico-desamb-titulo {
  padding: 10px 14px; font-size: .9rem; color: #92400e; font-weight: 600;
  cursor: pointer; user-select: none;
}
.medico-desamb-titulo::after { content: " ▴"; }
.medico-desamb.fechado .medico-desamb-titulo::after { content: " ▾"; }
.medico-desamb-lista { margin: 0; padding: 4px 16px 12px 34px; color: #78350f; font-size: .85rem; line-height: 1.5; }
.medico-desamb.fechado .medico-desamb-lista { display: none; }

/* FAQ — cards abaixo da desambiguação */
.medico-faq {
  margin: 10px 0 0; border: 1px solid #e5e7eb; border-radius: 10px;
  background: #f9fafb; overflow: hidden;
}
.medico-faq-q {
  padding: 12px 14px; font-weight: 600; font-size: .92rem; color: #111827;
  cursor: pointer; user-select: none;
}
.medico-faq-q::before { content: "❓ "; }
.medico-faq-q::after { content: " ▴"; color: #9ca3af; }
.medico-faq.fechado .medico-faq-q::after { content: " ▾"; }
.medico-faq-a {
  padding: 10px 14px; color: #374151; font-size: .88rem; line-height: 1.55;
  border-top: 1px dashed #d1d5db;
}
.medico-faq-a::before { content: "R: "; font-weight: 600; color: #0d6efd; }
.medico-faq.fechado .medico-faq-a { display: none; }

/* Mapa / publicações */
.medico-mapa { margin: 16px 0 0; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,.08); }
.medico-mapa iframe { display: block; border: 0; width: 100%; }
.medico-mapa-link { margin: 14px 0 0; }
.medico-mais-pubs { margin-top: 10px; font-size: .9rem; font-weight: 600; }

/* Dark mode */
html.skin-theme-clientpref-night .infobox-medico { background: #111827; border-color: #374151; }
html.skin-theme-clientpref-night .infobox-medico-titulo { color: #f3f4f6; }
html.skin-theme-clientpref-night .medico-desamb { background: #2a2414; border-color: #444; }
html.skin-theme-clientpref-night .medico-desamb-titulo { color: #fbbf24; }
html.skin-theme-clientpref-night .medico-desamb-lista { color: #d6c8a8; }
html.skin-theme-clientpref-night .medico-faq { background: #1f2937; border-color: #374151; }
html.skin-theme-clientpref-night .medico-faq-q { color: #f3f4f6; }
html.skin-theme-clientpref-night .medico-faq-a { color: #d1d5db; }
/* URLs longas não estouram o card */
.infobox-medico-tabela td,
.infobox-medico-pubs li,
.medico-mais-pubs {
  overflow-wrap: anywhere;
  word-break: break-word;
}
/* ============================================================
   HERO — Mapa do Brasil + Grafo Vivo (determinar.ia.br)
   Substitui o bloco "Banner Hero com Canvas Interativo" do
   Common.css atual. Não precisa mais do canvas de partículas
   nem do jQuery: a animação agora é 100% SVG nativo (SMIL),
   mais leve e sem custo de CPU do canvas.
   ============================================================ */

.wiki-hero-wrapper {
  position: relative;
  background: radial-gradient(120% 140% at 15% 20%, #0c3626 0%, #062a20 45%, #041a13 100%);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
  margin-bottom: 24px;
  padding: 0;
}

.wiki-hero-wrapper::before {
  content: "";
  position: absolute;
  top: 50%;
  right: 8%;
  transform: translateY(-50%);
  width: 480px;
  height: 480px;
  background: radial-gradient(circle, rgba(16, 185, 129, .22) 0%, transparent 70%);
  pointer-events: none;
  z-index: 1;
}

.wiki-hero-content {
  position: relative;
  z-index: 2;
  max-width: 1180px;
  margin: 0 auto;
  padding: 56px 32px;
}

.wiki-hero-grid {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  align-items: center;
  gap: 24px;
}

/* ---- Coluna de texto ---- */

.wiki-hero-eyebrow {
  display: inline-block;
  border: 1px solid rgba(245, 200, 0, .45);
  color: #f5c800;
  background: rgba(245, 200, 0, .08);
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 5px 12px;
  border-radius: 999px;
  margin-bottom: 18px;
}

.wiki-hero-title {
  font-size: clamp(1.7rem, 3.4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.22;
  color: #ffffff !important;
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin: 0 0 16px;
}

.wiki-hero-title .hl { color: #f5c800; }

.wiki-hero-subtitle {
  font-size: 1rem;
  color: #9db9ab;
  line-height: 1.65;
  margin-bottom: 26px;
  max-width: 46ch;
}

.wiki-hero-ctas {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.wiki-hero-ctas a {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 10px;
  font-weight: 700;
  font-size: .95rem;
  text-decoration: none !important;
}

.wiki-hero-btn-primary {
  background: #10b981 !important;
  color: #062a20 !important;
  box-shadow: 0 4px 14px rgba(16, 185, 129, .35);
}
.wiki-hero-btn-primary:hover { background: #34d399 !important; }

.wiki-hero-btn-outline {
  background: transparent !important;
  color: #ffffff !important;
  border: 1.5px solid rgba(255, 255, 255, .25);
}
.wiki-hero-btn-outline:hover { border-color: rgba(245, 200, 0, .6); color: #f5c800 !important; }

.wiki-hero-stats {
  display: flex;
  gap: 28px;
  border-top: 1px solid rgba(255, 255, 255, .12);
  padding-top: 18px;
}

.wiki-hero-stats div { display: flex; flex-direction: column; }

.wiki-hero-stats strong {
  color: #f5c800;
  font-size: 1.5rem;
  font-weight: 800;
  line-height: 1;
}

.wiki-hero-stats span {
  color: #9db9ab;
  font-size: .78rem;
  margin-top: 4px;
}

/* ---- Coluna do grafo ---- */

.wiki-hero-graph {
  position: relative;
  width: 100%;
}

.wiki-hero-graph svg {
  width: 100%;
  height: auto;
  display: block;
}

/* ---- Responsivo ---- */

@media (max-width: 860px) {
  .wiki-hero-grid { grid-template-columns: 1fr; }
  .wiki-hero-content { padding: 40px 20px; }
  .wiki-hero-graph { order: -1; max-width: 360px; margin: 0 auto 8px; }
  .wiki-hero-subtitle { max-width: none; }
  .wiki-hero-stats { gap: 20px; flex-wrap: wrap; }
}

/* ---- Acessibilidade: respeita "reduzir movimento" ---- */
@media (prefers-reduced-motion: reduce) {
  .wiki-hero-graph svg * { animation: none !important; }
}

/* ---- Dark mode do skin (mantém coerência, hero já é escuro) ---- */
html.skin-theme-clientpref-night .wiki-hero-wrapper { box-shadow: 0 10px 30px rgba(0,0,0,.4); }