/* Textos legales de Tiza: los usan legal.php (página), la ventana «Términos / Privacidad» del sistema y las páginas legales del sitio web.
   Solo estilos de lectura; todo color tiene un valor por omisión por si la página que lo carga no define las variables de la marca. */

.legal-doc { color: var(--ink, #13243B); font-size: 1rem; line-height: 1.65; overflow-wrap: anywhere; }
.legal-doc > :first-child { margin-top: 0; }
.legal-doc h2 { color: var(--tiza-profundo, #0F2D5B); font-size: 1.18rem; line-height: 1.3; margin: 1.9em 0 .55em; font-weight: 700; scroll-margin-top: 1rem; }
.legal-doc p { margin: .7em 0; }
.legal-doc ul, .legal-doc ol { margin: .6em 0; padding-left: 1.35em; }
.legal-doc li { margin: .38em 0; }
.legal-doc a { color: var(--tiza-accion, #1268D2); text-decoration: underline; text-underline-offset: 2px; }
.legal-doc a:hover { color: var(--tiza-accion-osc, #0F5CC0); }
.legal-doc code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: .9em; background: var(--tiza-claro, #F4F7FB); border: 1px solid var(--line, #E1E7F0); border-radius: 5px; padding: .05em .35em; overflow-wrap: anywhere; }
.legal-doc em { font-style: italic; }

.legal-intro { background: var(--tiza-claro, #F4F7FB); border-left: 4px solid var(--tiza-azul, #1E88FF); border-radius: 0 10px 10px 0; padding: .85em 1.1em; font-size: 1.04rem; }

.legal-tabla-caja { overflow-x: auto; margin: .9em 0; border: 1px solid var(--line, #E1E7F0); border-radius: 10px; -webkit-overflow-scrolling: touch; }
.legal-tabla { border-collapse: collapse; width: 100%; min-width: 34rem; font-size: .93rem; line-height: 1.5; }
.legal-tabla th, .legal-tabla td { padding: .6em .8em; text-align: left; vertical-align: top; border-bottom: 1px solid var(--line, #E1E7F0); }
.legal-tabla tr:last-child td { border-bottom: 0; }
.legal-tabla th { background: var(--tiza-claro, #F4F7FB); color: var(--tiza-profundo, #0F2D5B); font-weight: 700; white-space: nowrap; }
.legal-tabla td:first-child { font-weight: 600; min-width: 8rem; }

.legal-version { color: var(--muted, #5A6A82); font-size: .88rem; margin: 2.2em 0 0; padding-top: .9em; border-top: 1px solid var(--line, #E1E7F0); }
.legal-borrador { background: #FFF6E0; border: 1px solid #E8C877; color: #5E4310; border-radius: 10px; padding: .75em 1em; margin: 0 0 1.2em; font-size: .94rem; }

/* ---- Página completa (legal.php) ---- */
.legal-cuerpo { margin: 0; background: var(--tiza-claro, #F4F7FB); color: var(--ink, #13243B); font-family: 'Outfit', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; -webkit-text-size-adjust: 100%; }
.legal-cab { background: #fff; border-bottom: 1px solid var(--line, #E1E7F0); }
.legal-cab-in { max-width: 62rem; margin: 0 auto; padding: .7rem max(1rem, env(safe-area-inset-right, 0px)) .7rem max(1rem, env(safe-area-inset-left, 0px)); display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.legal-marca { display: inline-flex; align-items: center; gap: .55rem; color: var(--ink, #13243B); text-decoration: none; font-weight: 700; font-size: 1.45rem; letter-spacing: -.01em; }
.legal-marca img { height: 2.3rem; width: auto; display: block; }
.legal-volver { margin-left: auto; color: var(--tiza-accion, #1268D2); font-weight: 600; text-decoration: none; font-size: .95rem; }
.legal-volver:hover { text-decoration: underline; }
.legal-nav { background: #fff; border-bottom: 1px solid var(--line, #E1E7F0); }
.legal-nav-in { max-width: 62rem; margin: 0 auto; padding: 0 max(1rem, env(safe-area-inset-right, 0px)) 0 max(1rem, env(safe-area-inset-left, 0px)); display: flex; gap: .2rem; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.legal-nav a { flex: 0 0 auto; padding: .7rem .75rem; color: var(--muted, #5A6A82); text-decoration: none; font-size: .93rem; font-weight: 600; border-bottom: 3px solid transparent; white-space: nowrap; }
.legal-nav a:hover { color: var(--tiza-profundo, #0F2D5B); }
.legal-nav a[aria-current="page"] { color: var(--tiza-profundo, #0F2D5B); border-bottom-color: var(--tiza-azul, #1E88FF); }
.legal-pagina { max-width: 62rem; margin: 0 auto; padding: 1.6rem max(1rem, env(safe-area-inset-right, 0px)) 3rem max(1rem, env(safe-area-inset-left, 0px)); }
.legal-hoja { background: #fff; border: 1px solid var(--line, #E1E7F0); border-radius: 14px; padding: clamp(1.1rem, 3.5vw, 2.2rem); }
.legal-hoja > h1 { color: var(--tiza-profundo, #0F2D5B); font-size: clamp(1.5rem, 4.5vw, 2rem); line-height: 1.2; margin: 0 0 .3em; text-wrap: balance; }
.legal-meta { color: var(--muted, #5A6A82); font-size: .9rem; margin: 0 0 1.2em; }
.legal-pie { max-width: 62rem; margin: 0 auto; padding: 0 max(1rem, env(safe-area-inset-right, 0px)) 2.4rem max(1rem, env(safe-area-inset-left, 0px)); color: var(--muted, #5A6A82); font-size: .88rem; }
.legal-pie a { color: var(--tiza-accion, #1268D2); }
.legal-indice { list-style: none; margin: 1rem 0 0; padding: 0; display: grid; gap: .8rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); }
.legal-indice li { margin: 0; }
.legal-indice a { display: block; height: 100%; box-sizing: border-box; padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--line, #E1E7F0); border-radius: 12px; text-decoration: none; color: inherit; }
.legal-indice a:hover { border-color: var(--tiza-azul, #1E88FF); box-shadow: 0 2px 10px rgba(30, 136, 255, .12); }
.legal-indice strong { display: block; color: var(--tiza-profundo, #0F2D5B); font-size: 1.05rem; margin-bottom: .25rem; }
.legal-indice span { color: var(--muted, #5A6A82); font-size: .92rem; line-height: 1.5; }

@media (max-width: 520px) { .legal-doc { font-size: .98rem; } .legal-marca { font-size: 1.3rem; } }
@media print {
  .legal-cuerpo { background: #fff; }
  .legal-cab, .legal-nav, .legal-pie { display: none; }
  .legal-pagina { padding: 0; max-width: none; }
  .legal-hoja { border: 0; padding: 0; }
  .legal-tabla-caja { overflow: visible; border: 0; }
  .legal-tabla { min-width: 0; }
  .legal-doc a { color: inherit; text-decoration: none; }
  .legal-doc h2 { break-after: avoid; }
  .legal-tabla tr { break-inside: avoid; }
}
