/* Componente visual de unidade: AIH/APAC compartilham o mesmo card.
   Os controles e seus vínculos de cadastro permanecem nos módulos existentes. */
body #conteudoPrincipal .form-section.estabelecimento-card {
    --estab-fundo-perfis:#f4f8ff;
}
body.dark-mode #conteudoPrincipal .form-section.estabelecimento-card {
    --estab-fundo-perfis:#1e2d42;
    border-color:var(--border);
}

body #conteudoPrincipal .estabelecimento-card .estabelecimento-subtitulo-apac,
body.modulo-apac #conteudoPrincipal .estabelecimento-card .estabelecimento-subtitulo-aih { display:none; }
body.modulo-apac #conteudoPrincipal .estabelecimento-card .estabelecimento-subtitulo-apac { display:block; }
body #conteudoPrincipal .estabelecimento-card .bloco-perfil-hospital {
    display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;
    margin:0 0 12px;padding:14px;border:0;border-radius:16px;background:var(--estab-fundo-perfis);
}
body #conteudoPrincipal .estabelecimento-card .profile-toolbar { display:contents; }
body #conteudoPrincipal .estabelecimento-card .profile-toolbar > label {
    grid-column:1 / -1;margin:0;color:var(--text-muted);font-size:14px;font-weight:500;
}
body #conteudoPrincipal .estabelecimento-card .profile-toolbar > label .icone { display:none; }
body #conteudoPrincipal .estabelecimento-card .profile-actions {
    grid-column:2;grid-row:2;order:0;display:flex;flex-wrap:wrap;gap:8px;margin:0;width:auto;
}
body #conteudoPrincipal .estabelecimento-card .bloco-perfil-hospital > select {
    grid-column:1;grid-row:2;order:0;align-self:center;width:100%;min-width:0;min-height:40px;
    margin:0;padding:8px 12px;border-radius:20px;font-size:14px;background:var(--bg-card);
}

body #conteudoPrincipal .estabelecimento-card .profile-actions .btn-acao-perfil-del {
    min-height:40px;padding:8px 10px;border-radius:12px;font-size:13px;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-campos {
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-items:start;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-campos > div {
    display:flex;flex-direction:column;grid-column:auto;min-width:0;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-campos label {
    margin:0 0 4px;color:var(--text-muted);font-size:14px;font-weight:500;
}

body #conteudoPrincipal .estabelecimento-card #atEnderecoLocalResumo {
    margin:8px 0 10px;font-size:13px;overflow-wrap:anywhere;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento { margin-top:10px; }
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > summary {
    display:flex;align-items:center;justify-content:center;gap:8px;width:fit-content;max-width:100%;
    margin-left:auto;padding:10px 12px;min-height:40px;border-radius:16px;list-style:none;
    background:var(--acao-complementar-fundo);color:var(--acao-complementar-texto);
    font-size:14px;font-weight:600;cursor:pointer;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > summary::-webkit-details-marker { display:none; }
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > summary::marker { content:''; }
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > summary .icone {
    border:1px solid currentColor;border-radius:50%;padding:2px;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento[open] > summary .icone { transform:rotate(45deg); }
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > summary:focus-visible {
    outline:3px solid var(--primary);outline-offset:3px;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > .field-note { margin:10px 0; }
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento > label {
    margin:10px 0 4px;font-size:14px;
}
body #conteudoPrincipal .estabelecimento-card .estabelecimento-complemento label:has(input[type="checkbox"]) {
    display:flex;align-items:center;gap:8px;margin:10px 0;
}
@media(max-width:600px) {
    body #conteudoPrincipal .estabelecimento-card .estabelecimento-campos { grid-template-columns:minmax(0,1fr); }
    body #conteudoPrincipal .estabelecimento-card .estabelecimento-campos > div { grid-column:1 / -1; }
    body #conteudoPrincipal .estabelecimento-card .bloco-perfil-hospital { grid-template-columns:minmax(0,1fr);padding:12px; }
    body #conteudoPrincipal .estabelecimento-card .profile-actions { grid-column:1;grid-row:3; }
    body #conteudoPrincipal .estabelecimento-card .profile-actions button { flex:1 1 auto; }
}
