/* ============================= */
/* ✅ Ajustes do cabeçalho glass */
/* ============================= */

.cabecalho-glass {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: rgba(255, 255, 255, 0.4);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.08);
  padding: 14px 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo-container {
  display: flex;
  align-items: center;
  gap: 4px;
}

.logo-glass {
  height: 48px;
  max-width: 160px;
  object-fit: contain;
}

.titulo-glass {
  display: flex;
  flex-direction: column;
  color: #2c3e50;
}

.titulo-principal {
  font-size: 18px;
  font-weight: 700;
}

.subtitulo-principal {
  font-size: 13px;
  color: #444;
}

/* ============================= */
/* ✅ Espaço para o cabeçalho    */
/* ============================= */

body.page-node-type-paciente {
  padding-top: 100px !important;
}

body.page-node-type-paciente.toolbar-fixed {
  padding-top: 130px !important;
}

/* ============================= */
/* ✅ Ajustes de fundo  FICHA  */
/* ============================= */

.region-content {
  background-color: #fafbfc;
  padding: 20px;
  border-radius: 6px;
}

/* ============================= */
/* ✅ Título página (agenda)    */
/* ============================= */

.page-title,
h1.title {
  font-size: 26px;
  font-weight: 700;
  margin: 14px 0 18px;
  color: #222;
}

/* ============================= */
/* ✅ Botões padrão Drupal       */
/* ============================= */

.button,
input[type="submit"] {
  background-color: #007bff;
  border: none;
  border-radius: 4px;
  color: white;
  padding: 8px 14px;
  font-weight: 600;
  cursor: pointer;
  transition: background-color 0.2s ease-in-out;
}

.button:hover,
input[type="submit"]:hover {
  background-color: #0056b3;
}

/* ============================= */
/* ✅ Ajuste da foto do paciente */
/* ============================= */

.foto-paciente {
  border: 0px solid #e0e0e0;
  border-radius: 0px;
  padding: 0px;
  background: white;
  box-shadow: 0 0px 0px rgba(0,0,0,0);
  display: inline-block;
}

.foto-paciente img {
  display: block;
  width: 0%;
  height: auto;
  border-radius: 0px;
}


/* ===============================
   Ajuste do nome do paciente no modal
   =============================== */
.ui-dialog .ui-dialog-title {
  font-size: 22px;      /* ajuste conforme preferir */
  line-height: 1.2;
  font-weight: 600;
  color: #2563EB;       /* azul LifeDent */
  white-space: normal;  /* quebra linha em vez de cortar */
  text-overflow: unset; /* remove "..." */
  overflow: visible;
}

/* Oculta o bloco "Status / Configurações do menu / Informações da revisão"
   APENAS no tipo de conteúdo Consulta */
form.node-consulta-form .form-item.js-form-type-vertical-tabs.form-no-label {
  display: none !important;
}

/* ===== MENU MINI (só ícones) ===== */
body.wd-menu-mini .wd-unimenu,
body.wd-menu-mini .wd-prime-side,
body.wd-menu-mini .menu-lateral-azul,
body.wd-menu-mini .wd-prime-nav {
  width: 76px !important;
  min-width: 76px !important;
}

/* esconde textos */
body.wd-menu-mini .wd-unimenu__tx,
body.wd-menu-mini .wd-prime-nav .lbl,
body.wd-menu-mini .wd-unimenu__brand {
  display: none !important;
}

/* centraliza itens */
body.wd-menu-mini .wd-unimenu__item,
body.wd-menu-mini .wd-prime-nav a {
  justify-content: center !important;
  padding: 10px 8px !important;
}

/* se seu layout usa grid */
body.wd-menu-mini .wd-prime-shell{
  grid-template-columns: 76px 1fr !important;
}

/* ===== UNIMENU MINI ULTRA COMPACTO (só ícones) ===== */

body.wd-menu-mini .wd-prime-nav a .ico,
body.wd-menu-mini .wd-unimenu__ic{
  width: 18px !important;
  height: 18px !important;
  border-radius: 7px !important;
}

/* ícone menor */
body.wd-menu-mini .wd-prime-nav a .ico i,
body.wd-menu-mini .wd-prime-nav a .ico svg,
body.wd-menu-mini .wd-unimenu__ic i,
body.wd-menu-mini .wd-unimenu__ic svg{
  font-size: 10px !important;
  width: 10px !important;
  height: 10px !important;
}

/* item mais baixo */
body.wd-menu-mini .wd-prime-nav a,
body.wd-menu-mini .wd-unimenu__item{
  padding: 7px 5px !important;
  margin: 5px 3px !important;
}

/* reduz o “trilho” do menu */
body.wd-menu-mini .wd-unimenu,
body.wd-menu-mini .wd-prime-side{
  padding: 16px 15px !important;
}


/* ==============================
   SIDEBAR PRIME DEFINITIVA
   ============================== */

/* largura da barra */
.wd-sidebar {
  width: 68px !important;
  padding-top: 10px !important;
  background: linear-gradient(180deg, #2f4f86, #4e6fa8);
}

/* itens do menu */
.wd-sidebar a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 38px !important;
  padding: 6px 10px !important;
  border-radius: 12px;
  margin: 6px 10px;
  text-decoration: none;
  transition: all 0.2s ease;
  background: transparent !important;
  box-shadow: none !important;
}

/* ícones menores */
.wd-sidebar a i,
.wd-sidebar .icon {
  font-size: 16px !important;
  width: 18px;
  text-align: center;
  color: white;
}

/* texto escondido por padrão */
.wd-sidebar a span.label {
  opacity: 0;
  width: 0;
  overflow: hidden;
  white-space: nowrap;
  transition: all 0.2s ease;
  color: white;
  font-weight: 500;
}

/* mostra texto ao passar o mouse */
.wd-sidebar a:hover span.label {
  opacity: 1;
  width: auto;
}

/* efeito de hover elegante */
.wd-sidebar a:hover {
  background: rgba(255,255,255,0.12) !important;
}

/* item ativo */
.wd-sidebar a.active,
.wd-sidebar a.is-active {
  background: rgba(255,255,255,0.18) !important;
}



/* Acessos NFS-e com aparência de botão, sem sublinhado de hiperlink */
.exec-actions a,
.exec-actions a:hover,
.exec-actions a:focus,
.exec-actions a:visited,
.d-flex.align-items-center.flex-wrap.gap-2.mt-2.mb-4 a,
.d-flex.align-items-center.flex-wrap.gap-2.mt-2.mb-4 a:hover,
.d-flex.align-items-center.flex-wrap.gap-2.mt-2.mb-4 a:focus,
.d-flex.align-items-center.flex-wrap.gap-2.mt-2.mb-4 a:visited { text-decoration: none !important; }

/* Pílula compacta do acesso à identificação */
#resumo .wd-actions.wd-actions-top a.btn-suave--sm,
#resumo .wd-actions.wd-actions-top a.btn-suave--sm:hover,
#resumo .wd-actions.wd-actions-top a.btn-suave--sm:focus {
  display:inline-flex !important; width:max-content !important; min-width:0 !important; padding:5px 11px !important; margin:0 !important; line-height:1.2 !important; text-decoration:none !important; white-space:nowrap !important; align-items:center !important; justify-content:center !important;
}

/* ID: rótulo e valor na mesma linha */
#resumo > .field--label-inline { display:flex !important; align-items:center !important; gap:8px !important; }
#resumo > .field--label-inline .field__label { margin:0 !important; white-space:nowrap !important; }
#resumo > .field--label-inline .field__items, #resumo > .field--label-inline .field__item { display:inline !important; margin:0 !important; }

/* Revisão: rótulo e valor alinhados na mesma linha */
#revisao > .field--label-inline { display:flex !important; align-items:center !important; gap:8px !important; }
#revisao > .field--label-inline .field__label { margin:0 !important; white-space:nowrap !important; }
#revisao > .field--label-inline .field__items, #revisao > .field--label-inline .field__item { display:inline !important; margin:0 !important; }

/* Revisão: alinhar também campos internos na mesma linha */
#revisao .field--label-inline, #revisao [class*='field--name-field-'] { display:flex !important; align-items:center !important; gap:8px !important; }
#revisao .field--label-inline .field__label, #revisao [class*='field--name-field-'] .field__label { margin:0 !important; white-space:nowrap !important; }
#revisao .field--label-inline .field__items, #revisao .field--label-inline .field__item, #revisao [class*='field--name-field-'] .field__items, #revisao [class*='field--name-field-'] .field__item { display:inline !important; margin:0 !important; }

/* Endodontia: evitar sobreposição entre campos */
#esp-endo .wd-table-st { width:100% !important; table-layout:fixed !important; }
#esp-endo .wd-table-st th, #esp-endo .wd-table-st td { box-sizing:border-box !important; vertical-align:top !important; }
#esp-endo .wd-table-st th:nth-child(1), #esp-endo .wd-table-st td:nth-child(1) { width:140px !important; }
#esp-endo .wd-table-st th:nth-child(2), #esp-endo .wd-table-st td:nth-child(2) { width:115px !important; }
#esp-endo .wd-table-st th:nth-child(3), #esp-endo .wd-table-st td:nth-child(3) { width:250px !important; }
#esp-endo .wd-table-st th:nth-child(5), #esp-endo .wd-table-st td:nth-child(5) { width:74px !important; }
#esp-endo .wd-table-st input, #esp-endo .wd-table-st textarea { width:100% !important; max-width:100% !important; min-width:0 !important; box-sizing:border-box !important; }
#esp-endo .wd-table-st textarea { min-height:122px !important; resize:vertical !important; }
#esp-endo .wd-table-st td { padding:10px !important; }
#esp-endo .wd-rx-edit-link { display:inline-flex !important; margin:10px 0 18px !important; text-decoration:none !important; }
@media (max-width:760px) { #esp-endo .wd-table-st { table-layout:auto !important; } #esp-endo .wd-table-st th, #esp-endo .wd-table-st td { width:auto !important; } #esp-endo .wd-table-st { min-width:720px !important; } #esp-endo .json-grid-wrapper { overflow-x:auto !important; } }

/* ISG: ações como botões, sem sublinhado */
#lab .wd-container > div:first-of-type a.btn-suave--outline, #lab .wd-lab-isg-block a { display:inline-flex !important; align-items:center !important; justify-content:center !important; text-decoration:none !important; white-space:nowrap !important; border-radius:10px !important; padding:8px 13px !important; font-weight:650 !important; }
#lab .wd-lab-isg-block p a { margin-top:4px !important; background:#f8fafc !important; border:1px solid #cbd5e1 !important; color:#334155 !important; }
#lab .wd-lab-isg-block p a:hover { background:#eef2f7 !important; color:#0f172a !important; }

/* Prontuário digital: acesso direto aos campos mesmo quando vazios */
.wd-pront-edit-link { display:inline-flex !important; margin:6px 0 14px !important; text-decoration:none !important; }

/* Prontuário digital: ação principal para abrir a documentação externa */
.wd-pront-open-link { display:inline-flex !important; align-items:center !important; gap:7px !important; margin-top:10px !important; padding:9px 16px !important; border-radius:999px !important; background:linear-gradient(135deg,#16213d,#243b6b) !important; border:1px solid #16213d !important; color:#fff !important; font-size:13px !important; font-weight:700 !important; text-decoration:none !important; box-shadow:0 4px 10px rgba(22,33,61,.18) !important; transition:transform .18s ease, box-shadow .18s ease, background .18s ease !important; }
.wd-pront-open-link:hover,.wd-pront-open-link:focus-visible { background:linear-gradient(135deg,#0e172d,#1e315a) !important; color:#fff !important; transform:translateY(-1px); box-shadow:0 6px 14px rgba(22,33,61,.26) !important; text-decoration:none !important; }



/* Tipografia unificada das seções principais */
.tab-pane > h2,
.tab-pane > h3 {
  font-family: Metropolis, "Segoe UI", sans-serif;
  font-weight: 700;
  letter-spacing: -0.01em;
  color: #24364b;
}

.tab-pane > h3 {
  font-size: 1.35rem;
}


/* Ficha clínica: ações minimalistas e encaminhamentos discretos */
#ficha .tab-pane .button:not(.nav-link),
#ficha .tab-pane button:not(.nav-link),
#ficha .tab-pane input[type="submit"],
#ficha .tab-pane input[type="button"],
#ficha .tab-pane a.btn {
  background: #111827 !important;
  border: 1px solid #111827 !important;
  color: #fff !important;
  border-radius: 7px !important;
  box-shadow: none !important;
  font-family: "Segoe UI", Arial, sans-serif !important;
  font-weight: 600 !important;
  font-size: .82rem !important;
  line-height: 1.2 !important;
  padding: .55rem .85rem !important;
  transition: background-color .15s ease, border-color .15s ease, transform .15s ease;
}
#ficha .tab-pane .button:not(.nav-link):hover,
#ficha .tab-pane button:not(.nav-link):hover,
#ficha .tab-pane input[type="submit"]:hover,
#ficha .tab-pane input[type="button"]:hover,
#ficha .tab-pane a.btn:hover {
  background: #2d3748 !important;
  border-color: #2d3748 !important;
  transform: translateY(-1px);
}
#ficha .tab-pane .field--name-field-encaminhamentos {
  display: flex !important;
  align-items: center;
  gap: .55rem;
  flex-wrap: wrap;
  margin-top: .8rem !important;
  padding: .5rem 0 !important;
  border: 0 !important;
  border-top: 1px solid #e5e7eb !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #475569;
  font-size: .82rem;
}
#ficha .tab-pane .field--name-field-encaminhamentos .field__label {
  margin: 0 !important;
  color: #334155;
  font-weight: 600;
}
#ficha .tab-pane .field--name-field-encaminhamentos .field__items {
  margin: 0 !important;
}
#ficha .tab-pane .field--name-field-encaminhamentos a {
  color: #334155 !important;
  text-decoration: underline;
  text-underline-offset: 2px;
}
#ficha .tab-pane .field--name-field-encaminhamentos a:hover {
  color: #111827 !important;
}


/* Ações da ficha com o mesmo padrão minimalista */
a.prescricao, a.atestado, a.formularios, a.interativa {
  display: inline-flex !important;
  align-items: center;
  gap: .3rem;
  background: #111827 !important;
  border: 1px solid #111827 !important;
  color: #fff !important;
  border-radius: 7px !important;
  box-shadow: none !important;
  font-family: "Segoe UI", Arial, sans-serif !important;
  font-weight: 600 !important;
  font-size: .82rem !important;
  padding: .55rem .85rem !important;
  text-decoration: none !important;
}
a.prescricao:hover, a.atestado:hover, a.formularios:hover, a.interativa:hover {
  background: #2d3748 !important;
  border-color: #2d3748 !important;
}
