/* Atelier 2.5.4 — HOMOGENEIZACIÓN DE COMPONENTES DE CUADERNO
 * Carga final; no modifica datos, curvas, instrumentos SVG, canvas o interacciones.
 * La especificidad se limita a la piel visual y a las funciones tipográficas.
 */
body.kv-atelier-sketchbook :is(.kv-sketch-nav, .kv-nav, .kv-sketch-top-button,
  .kv25-energy-main, .kv25-day-notebook, .kv25-elab, .kv34-learning,
  .kv-learning-quiz, .kv-programa-index, .kv-atelier-mini-controls,
  .kv-article, .kv-academy-page, .kv-portal-inner, .kvkg-theme-page,
  .kvs-theme-page, .kvsci-page, .kvv-theme-page, .kvst-theme-page,
  .kvx-library, .kvbl-app, .kvbl8-app, .kvbl9-app, .kvat-app, .kvad,
  .kvpb, .kv25-capstone, .kv34-panel, .kv32-lab)
  :is(button, input, select, textarea, output, label, legend, summary,
      table, th, td, caption, .kv-unit, .kv-value, .kv-number,
      .kv-result, .kv-legend, .kv-axis, .kv-tick, .kv-scale, .kv-data,
      .kv34-equation, .kv-atelier-mini-formula) {
  font-family: var(--atelier-label);
}
/* Las referencias, pies de figura y ejes son etiquetas legibles, nunca manuscritas. */
body.kv-atelier-sketchbook :is(.kv-category, .kv-card-number, .kv-portal-index,
  .kv-sketch-axis-text, .kv-sketch-mark text,
  .kv-sketch-map-legend, .kv-sketch-chart-footer,
  .kv25-elab-count, .kv25-energy-result, .kv25-energy-modes, .kv34-tracking)
  {font-family:var(--atelier-label);}
body.kv-atelier-sketchbook :is(figcaption, .wp-caption-text, .kv-figure-caption,
  .kv-sketch-figure figcaption) {
  font-family:var(--atelier-label);
  color:var(--atelier-secondary);
}
/* Etiquetas dentro de SVG: solo tipografía, sin tocar posición, escala, fill ni trazo. */
body.kv-atelier-sketchbook :is(.kv-sketch-frequency, .kv-sketch-figure,
  .kv-atelier-mini-graph, .kvsci-lab, .kvv-machine, .kv32-lab,
  .kv25-elab-selected, .kvst-theme-page, .kvbl-app, .kvbl8-app, .kvbl9-app,
  .kvkg-theme-page, .kvad, .kvx-library) svg text {
  font-family:var(--atelier-label);
}
/* Notas breves: el resto de la página mantiene la jerarquía editorial. */
body.kv-atelier-sketchbook :is(.kv-sketch-hand, .kv-atelier-home-hand,
  .kv-ateliersafe-note, .kvv-caveat, .kvsci-hand, .kv-handnote,
  .kv-note-hand, .kv-pencil-note) {
  font-family:var(--atelier-hand);
}
/* En una nota manuscrita, cualquier magnitud, fórmula o control se rotula con DM Sans. */
body.kv-atelier-sketchbook :is(.kv-sketch-hand, .kv-atelier-home-hand,
  .kv-ateliersafe-note, .kvv-caveat, .kvsci-hand, .kv-handnote,
  .kv-note-hand, .kv-pencil-note)
  :is(code, kbd, samp, var, output, input, button, select, .value,
      .unit, .formula, .result, .number) {
  font-family:var(--atelier-label)!important;
}
/* Marcos neutrales, no semáforos ni elementos de series de datos. */
body.kv-atelier-sketchbook :is(.kv-lesson-experiment,
  .kv-atelier-mini-lab, .kv-atelier-mini-graph, .kv-learning-model,
  .kv25-elab-selected) {
  border-color:var(--atelier-line);
}
body.kv-atelier-sketchbook :is(.kv-atelier-mini-controls,
  .kv-learning-task-steps, .kv25-energy-modes, .kv34-tracking-controls)
  :is(button, input, select) {
  font-family:var(--atelier-label);
}

/* Atelier 2.5.8 — mismo marco exterior de 1180 px para TODOS los kv_lesson.
 * El selector se restringe al tipo de contenido y evita que las capas genéricas
 * de Core/Atelier (max-width:100%) ensanchen una clase sin experimento.
 * No modifica la anchura de las demás entradas ni páginas de WordPress. */
body.kv-atelier-sketchbook.single-kv_lesson article.kv-article-academy.kv-wrap {
  width: min(calc(100% - 40px), var(--atelier-lesson-width, 1180px));
  max-width: var(--atelier-lesson-width, 1180px);
  margin-inline: auto;
}
@media (max-width: 760px) {
  body.kv-atelier-sketchbook.single-kv_lesson article.kv-article-academy.kv-wrap {
    width: calc(100% - 28px);
  }
}


/* Atelier 2.5.9 — Corrección de la discrepancia observada en iPad REAL.
 * El 2.5.8 fijaba el marco exterior pero no todos los bloques internos y
 * calculaba la anchura sobre el contenedor padre. Aquí la referencia es el
 * viewport, de modo que el contenido coincide con la tarjeta de tres niveles.
 * Solo lecciones kv_lesson, sin alterar modelos científicos, datos ni curvas. */
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-article-academy.kv-fullwidth-lesson {
  box-sizing:border-box;
  width:min(var(--atelier-lesson-width,1180px),calc(100vw - 48px)) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
  padding-inline:0;
  min-width:0;
}
/* Los bloques nacen de dos fuentes distintas: texto de Core y niveles de Atelier.
 * Se eliminan límites internos heredados, sin cambiar la composición vertical. */
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson > :is(
  .kv-chapter-reading, .kv34-learning, .kv-lesson-experiment, .kv-lesson-shortcuts,
  .kv-lesson-formula, .kv-lesson-metadata, .kv-lesson-lead,
  .kv-chapter-intro-nav, .kv-lesson-back
),
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading > :is(
  .kv-chapter-longform, .kv-learning-checkpoint, .kv-lesson-quiz, .kv-lesson-reference,
  .kv-lesson-completion, .kv-learning-task, section, article, div
) {
  box-sizing:border-box;
  width:100% !important;
  max-width:none !important;
  min-width:0;
  margin-left:0 !important;
  margin-right:0 !important;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading {
  width:100% !important;
  max-width:none !important;
  min-width:0;
  margin-left:0 !important;
  margin-right:0 !important;
}
/* No quedan anchuras tipográficas heredadas que desalineen cuadros y textos.
 * En tablas/figuras mantenemos adaptación dentro de su marco sin cambiar escala. */
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading :is(
  .kv-chapter-longform > p, .kv-chapter-longform > ul, .kv-chapter-longform > ol,
  .kv-learning-checkpoint > p, .kv-lesson-reference > p
){ max-width:100%; }
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson :is(
  img,video,canvas,svg,iframe
){max-width:100%;}
@media(max-width:600px){
 body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-article-academy.kv-fullwidth-lesson{
  width:calc(100vw - 28px) !important;
 }
}


/* Atelier 2.5.10 · Los tres apartados de clase comparten un mismo cuadro exterior. */
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson{
  display:grid;
  gap:34px;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson :is(
  .kv-chapter-reading,
  .kv-lesson-experiment,
  .kv34-learning
){
  border:1px solid #c9b69c;
  border-radius:16px;
  background:#f8f0e3;
  box-shadow:0 10px 25px rgba(68,45,26,.045);
  overflow:hidden;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading{
  padding:clamp(20px,3vw,34px);
  margin:0 !important;
  color:#35322e;
}
body.kv-atelier-sketchbook.single-kv_lesson .kv-reading-panel-head{
  margin:0 0 22px;
  padding:0 0 16px;
  border-bottom:1px solid #cbbcaa;
}
body.kv-atelier-sketchbook.single-kv_lesson .kv-reading-panel-kicker{
  display:block;
  font:700 11px/1.5 var(--font-label);
  text-transform:uppercase;
  letter-spacing:.15em;
  color:#685a4d;
}
body.kv-atelier-sketchbook.single-kv_lesson .kv-reading-panel-head h2{
  font:500 clamp(30px,3vw,44px)/1.08 var(--font-editorial);
  margin:8px 0 8px;
  color:#332d29;
}
body.kv-atelier-sketchbook.single-kv_lesson .kv-reading-panel-head p{
  font:500 15px/1.5 var(--font-label);
  color:#594f48;
  max-width:76ch;
  margin:0;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading > :last-child{
  margin-bottom:0;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading .kv-chapter-longform > h2:first-child,
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-chapter-reading > h2:first-child{
  margin-top:0;
}
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv-lesson-experiment,
body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson .kv34-learning{
  margin:0 !important;
}
@media (max-width: 600px){
  body.kv-atelier-sketchbook.single-kv_lesson #contenido > article.kv-fullwidth-lesson{
    gap:22px;
  }
  body.kv-atelier-sketchbook.single-kv_lesson .kv-reading-panel-head h2{
    font-size:clamp(26px,7.2vw,34px);
  }
}
