/* Contenido de WordPress dentro de las plantillas de entradas (.post-content = elemento Post Content de Oxygen).
   Va en el plugin porque insert-stylesheet de Oxygen no admite selectores de etiqueta. Tipografía del artículo
   de hoy: texto de .9rem, títulos en el color de marca, tablas con filete. */
.post-content { font-size: .9rem; line-height: 1.5; overflow-wrap: break-word; }
.post-content > :first-child { margin-top: 0; }
.post-content h2 { margin: 1.6em 0 .6em; font-size: var(--fs-lg); }
.post-content h3 { margin: 1.4em 0 .6em; font-size: var(--fs-md); }
.post-content h4 { margin: 1.2em 0 .5em; font-size: var(--fs-base); }
.post-content h2, .post-content h3, .post-content h4 { scroll-margin-top: 1.5rem; }
.post-content p { margin: 0 0 .5em; }
.post-content ul, .post-content ol { margin: 0 0 .75em; padding-left: 1.5em; }
.post-content li { margin: 0 0 .25em; }
.post-content img { max-width: 100%; height: auto; }
.post-content figure { margin: 1em 0; }
.post-content table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.post-content td, .post-content th { padding: .35em .6em; border: 1px solid var(--line-strong); text-align: left; vertical-align: top; }
.post-content iframe, .post-content video { max-width: 100%; }
.post-content .alignleft { float: left; margin: 0 1.5em 1em 0; }
.post-content .alignright { float: right; margin: 0 0 1em 1.5em; }
.post-content .aligncenter { display: block; margin-left: auto; margin-right: auto; }
.post-content blockquote { margin: 1em 0; padding: .75em 1.25em; border-left: .3rem solid var(--accent); background: #F3F3F3; }
.post-content::after { content: ""; display: table; clear: both; }
.toc-item--d1 { padding-left: .75rem; }
.toc-item--d2 { padding-left: 1.5rem; }
/* Bloques «preformatted» y «verse» (notas de los casos): recuadro turquesa claro como hoy, con la letra del texto */
.post-content pre { margin: 0 0 1em; padding: .9em 1.25em; background: #E5F3F5; font-family: inherit; font-size: inherit; line-height: 1.5; white-space: pre-wrap; }

/* Migas (Rank Math) y archivos: enlaces sin subrayar, como hoy; paginación numerada de Oxygen (ul > li > a). */
.rank-math-breadcrumb a { color: var(--accent-600); text-decoration: none; }
.rank-math-breadcrumb a:hover { color: var(--brand); }
.arc-card-terms a { color: inherit; text-decoration: none; }
.arc-card-terms a:hover { color: var(--brand); }
.arc .bde-posts-pagination { grid-column: 1 / -1; margin-top: var(--space-2); } /* en las rejillas, fila propia */
.arc .bde-posts-pagination ul { display: flex; flex-wrap: wrap; gap: .25rem; margin: 0; padding: 0; list-style: none; }
.arc .bde-posts-pagination a { display: block; min-width: 1.75rem; padding: .2rem .35rem; color: var(--accent-600); font-size: .85rem; text-align: center; text-decoration: none; }
.arc .bde-posts-pagination a:hover { color: var(--brand); }
.arc .bde-posts-pagination a.is-active { color: var(--text); font-weight: 700; }

/* Huecos sin contenido (p. ej. sin subcategorías): fuera, para que no sumen el espacio entre bloques. */
.pub-slot:empty { display: none; }

/* Tabla de publicaciones ([amg_pub_table]): cabecera oscura, filas alternas, columnas 42,5 / 42,5 / 15 % como hoy. */
.pub-table th { padding: 15px; border: 2px solid #fff; background: var(--brand); color: #fff; font-weight: 900; text-align: left; vertical-align: top; }
.pub-table td { width: 42.5%; padding: 15px; border: 2px solid #fff; vertical-align: top; }
.pub-table td + td + td { width: 15%; }
.pub-table tbody tr:nth-child(odd) td { background: rgba(128, 128, 128, .07); }
.pub-extract p { margin: 0 0 .5em; }
.pub-extract > :last-child { margin-bottom: 0; }

/* Páginas legales: el texto es un Rich Text de Oxygen (.legal-text). Medidas de hoy: H2 1,6rem, H3 1,4rem, H4 1,2rem,
   párrafos de 1rem con 1rem debajo, listas con sangría de 40 px. */
.legal-text > :first-child { margin-top: 0; }
.legal-text h2, .legal-text h3, .legal-text h4, .legal-text h5 { margin: .5rem 0 1rem; color: var(--brand); font-weight: 700; line-height: 1.35; }
.legal-text h2 { font-size: var(--fs-xl); }
.legal-text h3 { font-size: var(--fs-lg); }
.legal-text h4 { margin-top: 1.25rem; font-size: var(--fs-md); }
.legal-text h5 { font-size: var(--fs-base); }
.legal-text p { margin: 0 0 1rem; }
.legal-text ul, .legal-text ol { margin: 0 0 1rem; padding-left: 40px; }
.legal-text li { margin: 0; }
.legal-text li > h3, .legal-text li > h4 { margin-top: 1rem; } /* política de cookies: lista numerada de apartados */
.legal-text ol > li::marker { color: var(--brand); font-weight: 700; }
.legal-text a { color: var(--brand-600); text-decoration: none; }
.legal-text a:hover { color: var(--accent-600); }
@media (max-width: 767px) { .legal-text ul, .legal-text ol { padding-left: 1.4rem; } } /* en móvil, sangría menor (listas anidadas de cookies) */

/* Formulario de violación de datos ([amg_breach_form], includes/breach-form.php): etiqueta en negrita encima, campo con
   filete, botón ancho oscuro, como hoy. */
.amg-form { display: flex; flex-direction: column; gap: 1.5rem; }
.amg-form-field { display: flex; flex-direction: column; gap: .35rem; margin: 0; padding: 0; border: 0; min-width: 0; }
.amg-form-label { margin: 0 0 .35rem; padding: 0; color: #000; font-size: .9rem; font-weight: 700; line-height: 1.3; }
.amg-form-field > .amg-form-label { margin-bottom: 0; }
.amg-form-required { margin-left: .25rem; color: var(--danger); }
.amg-form-input { box-sizing: border-box; width: 100%; min-height: 2.6rem; padding: .45rem .7rem; border: 1px solid #69727D; border-radius: 3px;
  background: #fff; color: var(--text); font-family: var(--font-body); font-size: .9rem; line-height: 1.4; }
textarea.amg-form-input { min-height: 5.5rem; resize: vertical; }
.amg-form-input:focus { border-color: var(--brand-600); outline: 2px solid var(--accent-50); }
.amg-form-check { display: flex; align-items: center; gap: .4rem; font-size: .9rem; font-weight: 600; }
.amg-form-check input { margin: 0; accent-color: var(--brand-600); }
.amg-form-head { margin: 1rem 0 0; color: var(--brand); font-size: var(--fs-md); line-height: 1.35; }
.amg-form-submit { width: 100%; min-height: 2.6rem; margin-top: 1.5rem; padding: .7rem 1rem; border: 0; border-radius: 0; background: var(--brand-600);
  color: #fff; font-family: var(--font-head); font-size: var(--fs-base); font-weight: 700; cursor: pointer; }
.amg-form-submit:hover, .amg-form-submit:focus-visible { background: var(--brand); }
.amg-form-msg { margin: 0; padding: .75rem 1rem; border-left: .3rem solid var(--accent); background: var(--accent-50); color: var(--brand); font-weight: 600; }
.amg-form-msg--ko, .amg-form-msg--invalid { border-left-color: var(--danger); background: #FDECEC; color: var(--danger); }
.amg-form-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }

/* Guides de pratique clinique internationaux (.guide-doc): tabla con organismos agrupados (un <tbody> por organismo),
   filetes en todas las celdas, fondo alterno por organismo y filete grueso entre organismos; todo alineado arriba. */
.guide-table { margin: 1.5rem 0 2rem; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.guide-doc table { width: 100%; border-collapse: collapse; font-size: .85rem; line-height: 1.45; font-variant-numeric: lining-nums; }
.guide-doc th, .guide-doc td { padding: .55rem .7rem; border: 1px solid #C5D3D5; text-align: left; vertical-align: top; }
.guide-doc thead th { border-color: #286C6D; background: #286C6D; color: #fff; font-weight: 700; text-align: center; vertical-align: middle; }
.guide-doc thead th + th { border-left-color: rgba(255, 255, 255, .35); }
.guide-doc tbody th { color: var(--brand); font-weight: 700; }
.guide-doc tbody:nth-of-type(even) { background: #EEF4F5; }
.guide-doc tbody + tbody { border-top: 3px solid #286C6D; }
.guide-doc sup, .guide-sub sup { font-size: .85em; line-height: 0; vertical-align: super; }
.guide-doc sup a { font-weight: 700; }
.guide-doc ol { font-size: .85rem; }
.guide-doc ol li { margin-bottom: .45rem; }
.guide-doc li:target { background: var(--accent-50); }
.guide-sub { margin: 0 0 .5rem; color: var(--brand); font-size: var(--fs-lg); line-height: 1.3; }
@media (max-width: 767px) { .guide-doc table { min-width: 56rem; } }

/* Questions et réponses: acordeones <details> con «+» / «–» a la izquierda, como hoy; pregunta abierta en turquesa. */
.qr-q::-webkit-details-marker { display: none; }
.qr-q::before { content: "+"; flex: none; width: 1.1rem; color: var(--brand); font-size: 1.5rem; font-weight: 700; line-height: 1; text-align: center; }
.qr-item[open] > .qr-q { color: var(--accent-600); }
.qr-item[open] > .qr-q::before { content: "–"; }
.qr-q:hover { color: var(--accent-600); }
.qr-a p { margin: 0 0 .75em; }
.qr-a ul, .qr-a ol { margin: 0 0 .75em; padding-left: 1.5em; }
.qr-a > :last-child { margin-bottom: 0; }

/* Formularios Zoho ([amg_form], includes/forms.php): como hoy, sin etiquetas visibles (placeholder), campos blancos con
   filete, aceptación en letra pequeña y botón turquesa a todo el ancho. Comparten .amg-form-* con el de violación de datos. */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); border: 0; white-space: nowrap; }
.amg-form--contact, .amg-form--revue, .amg-form--demo { gap: .75rem; }
.amg-form--contact .amg-form-input, .amg-form--revue .amg-form-input, .amg-form--demo .amg-form-input { min-height: 2.75rem; border-color: #A9B4B7; border-radius: 6px; font-size: .85rem; }
.amg-form-input::placeholder { color: #8A9599; }
select.amg-form-input:invalid { color: #8A9599; } /* placeholder del desplegable en gris, como los demás */
.amg-form-checks { display: flex; flex-wrap: wrap; gap: .4rem 1.25rem; }
.amg-form-accept { align-items: flex-start; font-size: .75rem; font-weight: 400; line-height: 1.4; }
.amg-form-accept input { margin-top: .15rem; }
.amg-form--contact .amg-form-submit, .amg-form--revue .amg-form-submit, .amg-form--demo .amg-form-submit { margin-top: .5rem; background: var(--accent); }
.amg-form--contact .amg-form-submit:hover, .amg-form--revue .amg-form-submit:hover, .amg-form--demo .amg-form-submit:hover { background: var(--accent-600); }
/* Revue y Demo a dos columnas como hoy (Revue: nombre | apellido, e-mail, teléfono | país, función; Demo: pares y la
   lista de dispositivo/función/país en tres). En móvil, una columna. Página Contact: sin el bloque del pie. */
.amg-form--revue, .amg-form--demo { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem; }
.amg-form--revue > *, .amg-form--demo > * { grid-column: 1 / -1; }
.amg-form--revue .amg-form-k-prenom, .amg-form--revue .amg-form-k-nom, .amg-form--revue .amg-form-k-telephone, .amg-form--revue .amg-form-k-pays,
.amg-form--demo .amg-form-k-prenom, .amg-form--demo .amg-form-k-nom, .amg-form--demo .amg-form-k-telephone, .amg-form--demo .amg-form-k-email,
.amg-form--demo .amg-form-k-fonction, .amg-form--demo .amg-form-k-pays { grid-column: auto; }
.amg-form--revue .amg-form-k-email { order: 3; } .amg-form--revue .amg-form-k-telephone { order: 4; } .amg-form--revue .amg-form-k-pays { order: 5; }
.amg-form--revue .amg-form-k-fonction { order: 6; } .amg-form--revue .amg-form-accept, .amg-form--revue .amg-form-submit { order: 7; }
.amg-form--revue .amg-form-k-prenom, .amg-form--revue .amg-form-k-nom { order: 2; } .amg-form--revue .amg-form-msg { order: 1; }
.amg-form--demo .amg-form-label { color: var(--brand); font-size: 1rem; font-weight: 700; }
.amg-no-footer-form .ftr-contact { display: none; }
@media (max-width: 767px) { .amg-form--revue, .amg-form--demo { grid-template-columns: minmax(0, 1fr); } }
.contact-addr a { color: inherit; text-decoration: none; }
.contact-addr a:hover { color: var(--accent-600); }
