/* ═══════════════════════════════════════════════
   HEADER MODIFICADO
═══════════════════════════════════════════════ */
.hdr {
  background: var(--white);
  border-radius: var(--r2);
  box-shadow: var(--shadow-md);
  overflow: hidden;
  border: 1px solid var(--line);
}

.hdr__top {
  display: grid;
  grid-template-columns: 250px 1fr;
  border-bottom: 2px solid var(--plum-pale);
  align-items: stretch;
}

.hdr__logo-box {
  display: flex;
  align-items: center;
  justify-content: center;
  /* Contenedor intacto */
  padding: 15px; 
  border-right: 2px solid var(--plum-pale);
  background: var(--plum-ghost);
  height: 160px; 
  overflow: hidden; /* Evita que el aumento de tamaño salga de la caja */
}

.hdr__logo-box img { 
  width: 100%;
  height: 100%;
  object-fit: contain;
  /* Hacemos que la imagen ocupe más espacio visualmente */
  transform: scale(1.3); 
  display: block;
}

.hdr__info {
  padding: 20px 30px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 6px;
}

.logo-ph {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 140px; height: 75px;
  border: 2px dashed var(--mist);
  border-radius: var(--r);
  color: var(--mist);
  font-family: var(--ff-serif);
  font-size: 18px;
  letter-spacing: 2px;
}



.hdr__title {
  font-family: var(--ff-serif);
  font-size: 22px;
  color: var(--plum);
  line-height: 1.2;
}

.hdr__subtitle {
  font-size: 11px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--ink-soft);
  font-weight: 500;
}

.hdr__meta {
  display: flex;
  gap: 20px;
  margin-top: 6px;
  font-size: 11px;
  color: var(--ink-soft);
}

.hdr__meta span { display: flex; align-items: center; gap: 5px; }
.hdr__meta svg { opacity: .5; }

/* ── Datos paciente ── */
.hdr__patient {
  padding: 20px 24px 24px;
}

.section-label {
  font-size: 10px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--plum);
  font-weight: 600;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.section-label::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--plum-pale);
}

.patient-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px 16px;
}

.pf { display: flex; flex-direction: column; gap: 4px; }
.pf--wide { grid-column: span 2; }
.pf--full { grid-column: span 4; }

.pf__lbl {
  font-size: 10px;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ink-soft);
  font-weight: 500;
}
.pf__inp {
  background: var(--plum-ghost);
  border: 1.5px solid transparent;
  border-radius: var(--r);
  padding: 8px 11px;
  font-family: var(--ff-sans);
  font-size: 13px;
  color: var(--ink);
  transition: border-color .2s, box-shadow .2s;
  outline: none;
  width: 100%;
}
.pf__inp:focus {
  border-color: var(--plum-light);
  box-shadow: 0 0 0 3px rgba(91,45,142,.12);
  background: var(--white);
}
.pf__inp::placeholder { color: var(--mist); }

/* Doc type row */
.doc-row { display: flex; align-items: center; gap: 6px; }
.doc-type {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 7px 10px;
  background: var(--plum-ghost);
  border: 1.5px solid transparent;
  border-radius: var(--r);
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  color: var(--ink-soft);
  transition: all .18s;
  white-space: nowrap;
  user-select: none;
}
.doc-type:hover { border-color: var(--plum-light); color: var(--plum); }
.doc-type.selected { background: var(--plum); color: var(--white); border-color: var(--plum); }
.doc-type__dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: .5; }
.doc-type.selected .doc-type__dot { opacity: 1; }
.doc-num { flex: 1; }

/* ═══════════════════════════════════════════════
   INTERPRETACIÓN BAR
═══════════════════════════════════════════════ */
.interp-bar {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--r2);
  padding: 14px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
  box-shadow: var(--shadow);
}
.interp-bar__label {
  font-size: 10px;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--plum);
  font-weight: 600;
  flex: 1;
}
.yn-pair { display: flex; gap: 6px; }
.yn-btn {
  padding: 6px 18px;
  border-radius: 30px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 1px;
  cursor: pointer;
  border: 1.5px solid var(--line);
  background: var(--white);
  color: var(--ink-soft);
  transition: all .18s;
  user-select: none;
}
.yn-btn:hover { border-color: var(--plum-light); color: var(--plum); }
.yn-btn.sel-si { background: var(--green); border-color: var(--green); color: var(--white); }
.yn-btn.sel-no { background: var(--red); border-color: var(--red); color: var(--white); }

/* HTML-only fallback classes */
.logo-ph {
  display: none;
}
.logo-ph.is-visible {
  display: flex;
}
.patient-divider {
  grid-column: span 4;
  height: 1px;
  background: var(--plum-pale);
  margin: 4px 0;
}

.pf__inp:-webkit-autofill,
.pf__inp:-webkit-autofill:hover, 
.pf__inp:-webkit-autofill:focus, 
.pf__inp:-webkit-autofill:active {
  /* Crea una sombra interna gigante del color de tu diseño para tapar el amarillo/azul */
  -webkit-box-shadow: 0 0 0px 1000px #f3f0ff inset !important;
  
  /* Mantiene el color del texto que tú elegiste */
  -webkit-text-fill-color: #333 !important;
  
  /* Evita que el navegador intente cambiar el color con una transición infinita */
  transition: background-color 5000s ease-in-out 0s !important;
}