/* El Poema Ejecutable — sala piloto */
.pe-intro{max-width:64ch}
.pe-tesis{font-family:var(--feria);font-size:clamp(20px,3.2vw,28px);line-height:1.25;color:var(--morado);margin:26px 0 6px;max-width:26ch}
.pe-tesis small{display:block;font-family:var(--sans);font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--tinta2);margin-top:8px}

/* umbral Mallarmé */
.umbral{margin:36px 0 10px;border:2px solid var(--tinta);border-radius:6px;padding:18px 22px;background:var(--papel2);box-shadow:4px 5px 0 rgba(31,26,18,.18)}
.umbral h2{font-family:var(--cartel);font-size:1.35rem;margin:0 0 4px;color:var(--tinta)}
.umbral .quien{font-family:var(--sans);font-size:.78rem;letter-spacing:1px;text-transform:uppercase;color:var(--tinta2);margin:0 0 12px}
.umbral blockquote{margin:0 0 10px;padding-left:14px;border-left:3px solid var(--mostaza);font-style:italic;max-width:66ch}
.umbral blockquote p{margin:0 0 .6em}
.umbral .trad{font-style:normal;color:var(--tinta2)}
.umbral .fuente{font-family:var(--sans);font-size:.72rem;color:var(--tinta2);margin:6px 0 0}

/* ficha */
.ficha{margin-top:40px}
.ficha-cab{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;border-bottom:3px double var(--tinta);padding-bottom:8px}
.ficha-cab h2{font-family:var(--cartel);font-size:clamp(22px,3.4vw,30px);margin:0}
.ficha-cab .autor{font-family:var(--serif);font-size:1.05rem;color:var(--tinta2)}
.ficha-cab .lang{margin-left:auto}
.ficha-por{font-family:var(--sans);font-size:.8rem;color:var(--tinta2);max-width:64ch;margin:10px 0 0}

.existencias{counter-reset:ex;display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px;margin-top:22px}
.ex{position:relative;border:1.5px solid var(--tinta);border-radius:6px;padding:16px 16px 14px 16px;background:var(--papel);min-height:140px;display:flex;flex-direction:column}
.ex.ancha{grid-column:1/-1}
.ex h3{font-family:var(--sans);font-size:.74rem;letter-spacing:2px;text-transform:uppercase;font-weight:600;color:var(--morado);margin:0 0 8px;padding-left:34px;line-height:1.5}
.ex h3::before{counter-increment:ex;content:counter(ex);position:absolute;left:12px;top:11px;width:24px;height:24px;border-radius:50%;background:var(--tinta);color:var(--papel);font-family:var(--cartel);font-size:13px;display:flex;align-items:center;justify-content:center}
.ex .cuerpo{flex:1}
.ex .fuente{font-family:var(--sans);font-size:.7rem;color:var(--tinta2);margin:10px 0 0;word-break:break-word}
.ex.vacia{background:transparent;border-style:dashed;color:var(--tinta2)}
.ex.vacia .porque{font-family:var(--serif);font-style:italic;font-size:.98rem;margin:0}
.ex.abierta{border-color:var(--rojo)}
.ex.abierta h3{color:var(--rojo)}

/* texto y karaoke */
.poema{font-family:var(--serif);font-size:1.08rem;line-height:1.55;margin:0}
.poema .v{display:block;white-space:pre-wrap}
.poema .w{border-radius:3px;padding:0 1px;transition:background .08s}
.poema .w.on{background:var(--mostaza);color:var(--tinta)}
.poema .w.ya{color:var(--tinta2)}
.oir{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.oir audio{width:100%;max-width:340px;height:34px}
.oir .voz{font-family:var(--sans);font-size:.72rem;letter-spacing:1px;text-transform:uppercase;color:var(--tinta2)}
.dur{font-family:var(--sans);font-size:.72rem;color:var(--tinta2)}

/* imágenes */
.lam{margin:0;border:1px solid var(--tinta2);background:#fff;display:block}
.lam img{display:block;width:100%;height:auto}
.lam figcaption{font-family:var(--sans);font-size:.7rem;color:var(--tinta2);padding:5px 7px;border-top:1px solid var(--papel2)}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ex:not(.ancha) .dos{grid-template-columns:1fr}
.ex:not(.ancha) .dos .lam{max-width:520px}
@media (max-width:560px){.dos{grid-template-columns:1fr}}

/* gráfica del ritmo */
.ritmo{overflow-x:auto}
.ritmo svg{display:block;min-width:640px;width:100%;height:auto}
.leyenda{font-family:var(--sans);font-size:.72rem;color:var(--tinta2);margin:6px 0 0;max-width:70ch}
.leyenda b{color:var(--tinta)}

.pe-nota{font-family:var(--sans);font-size:.8rem;color:var(--tinta2);border-top:1px solid var(--tinta2);margin-top:40px;padding-top:10px;max-width:70ch}
.pe-nota b{color:var(--tinta)}
.tabla-albeniz{font-family:var(--sans);font-size:.78rem;border-collapse:collapse;margin:8px 0 0}
.tabla-albeniz td{padding:2px 10px 2px 0;vertical-align:top}
.tabla-albeniz td:first-child{color:var(--morado);font-weight:600;white-space:nowrap}

.subsala{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 4px;font-family:var(--sans);font-size:12.5px;font-weight:600}
.subsala a{color:var(--tinta2);text-decoration:none;border:1.5px solid var(--tinta2);border-radius:20px;padding:4px 13px}
.subsala a:hover{color:var(--rojo);border-color:var(--rojo)}
.subsala a.aqui{background:var(--tinta);color:var(--papel);border-color:var(--tinta)}
