/* ======================================================================================================================================
   Capa ilustrada genérica de las páginas de módulos (.av-wrap.ill): cabecera de pergamino con el título en rojo, la franja del módulo y
   tarjetas, botones y títulos en el mismo lenguaje que Carta natal y Almas Afines. Excepción acotada (DESIGN.md, 26/10/2026): los
   resultados de cálculo, las tablas y las rondas de juego conservan su estilo plano.
   ====================================================================================================================================== */
.av-wrap.ill{--il-parch:#F7EEDA;--il-card:#FFFCF4;--il-line:#E6D7B3;--il-gold:#C4902D;--il-red:#8A1C1C;--il-navy:#1F3A5C;--il-ink:#2A211B;max-width:1000px}
.ill .ill-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);min-height:260px;align-items:center;margin:0 0 24px;background:linear-gradient(180deg,#F8EBCB,var(--il-parch));border:1px solid var(--il-line);border-radius:14px;overflow:hidden}
.ill .ill-text{position:relative;z-index:2;padding:32px 8px 32px 52px}
.ill .ill-h1{margin:0 0 4px;font:600 clamp(2.3rem,5.4vw,3.75rem)/1.02 var(--av-serif);letter-spacing:-.02em;color:var(--il-red)}
.ill .ill-orn{margin:6px 0 12px;line-height:0;color:var(--il-gold)}.ill .ill-orn svg{width:min(240px,70%);height:14px}
.ill .ill-sub{margin:0;max-width:44ch;font:400 1rem/1.55 var(--av-sans);color:var(--il-ink)}
.ill .ill-art{position:relative;align-self:stretch;min-height:220px;overflow:hidden}
.ill .ill-art .av-banner{position:absolute;inset:0;margin:0;border:0;border-radius:0;background:none}
.ill .ill-art .av-banner img{width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:50% 50%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 22%);mask-image:linear-gradient(90deg,transparent 0,#000 22%)}
.ill .ill-sun{position:absolute;z-index:1;left:-64px;top:50%;width:150px;height:150px;transform:translateY(-50%);color:var(--il-gold);opacity:.35;pointer-events:none;line-height:0}
.ill .ill-sun svg,.ill .ill-sun img{width:100%;height:100%;display:block;object-fit:contain}
/* contenido: tarjetas, botones, títulos */
.ill .av-panel,.ill .hub-card{background:var(--il-card);border:1px solid var(--il-line);border-radius:12px}
.ill .hub-card h2,.ill .av-h,.ill h2.av-h{font-family:var(--av-serif);font-weight:600;color:var(--il-red);letter-spacing:-.01em}
.ill .hub-card h2{font-size:1.25rem}
.ill .av-btn{background:var(--il-red);border-color:var(--il-red);color:#fff;border-radius:8px}
.ill .av-btn:hover:not(:disabled){background:#6E1313;border-color:#6E1313;color:#fff}
.ill .av-btn.is-ghost{background:transparent;color:var(--il-red)}
.ill .av-btn.is-ghost:hover:not(:disabled){background:#FFF1EE;color:var(--il-red)}
.ill .hub-link,.ill .av-link{color:var(--il-red)}
@media (max-width:860px){
  .ill .ill-hero{grid-template-columns:1fr;min-height:0}.ill .ill-text{padding:26px 22px 8px}.ill .ill-art{min-height:170px}.ill .ill-sun{top:64px;transform:none;left:-84px}
}
:root[data-theme="dark"] .av-wrap.ill{--il-parch:#17120D;--il-card:#1D1812;--il-line:#3A2F22;--il-gold:#D1A24A;--il-red:#E58A7A;--il-navy:#8FB3DD;--il-ink:#EDE4D3}
:root[data-theme="dark"] .ill .ill-hero{background:linear-gradient(180deg,#201912,#17120D)}
:root[data-theme="dark"] .ill .av-btn{background:#B24A3C;border-color:#B24A3C}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .av-wrap.ill{--il-parch:#17120D;--il-card:#1D1812;--il-line:#3A2F22;--il-gold:#D1A24A;--il-red:#E58A7A;--il-navy:#8FB3DD;--il-ink:#EDE4D3}
  :root:not([data-theme="light"]) .ill .ill-hero{background:linear-gradient(180deg,#201912,#17120D)}
  :root:not([data-theme="light"]) .ill .av-btn{background:#B24A3C;border-color:#B24A3C}}
