:root { --fondo: #f7f5f0; --tinta: #2b2a28; --suave: #6b6760; --acento: #4e6482; --linea: #e2ddd3; }
@media (prefers-color-scheme: dark) { :root { --fondo: #1d1c1a; --tinta: #ece8e1; --suave: #a9a397; --acento: #9db3d1; --linea: #3a3833; } }
* { box-sizing: border-box; }
body { margin: 0; background: var(--fondo); color: var(--tinta); font: 16px/1.6 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
main { max-width: 760px; margin: 0 auto; padding: 48px 16px 32px; }
header.portada { text-align: center; padding: 40px 0 24px; }
h1 { font-size: 2rem; margin: 0 0 8px; letter-spacing: -0.01em; }
h2 { font-size: 1.2rem; margin: 32px 0 8px; }
p, li { color: var(--tinta); }
.sub { color: var(--suave); font-size: 1.1rem; margin: 0 auto; max-width: 560px; }
a { color: var(--acento); }
.boton { display: inline-block; margin-top: 28px; padding: 12px 28px; border-radius: 8px; background: var(--acento); color: #fff; text-decoration: none; font-weight: 600; }
.ficha { border-top: 1px solid var(--linea); margin-top: 40px; padding-top: 20px; color: var(--suave); font-size: 0.95rem; }
footer { max-width: 760px; margin: 0 auto; padding: 16px 16px 40px; border-top: 1px solid var(--linea); color: var(--suave); font-size: 0.9rem; }
footer a { margin-right: 16px; }
table { border-collapse: collapse; width: 100%; font-size: 0.95rem; }
td, th { border: 1px solid var(--linea); padding: 6px 8px; text-align: left; vertical-align: top; }
.fecha { color: var(--suave); font-size: 0.9rem; }
