/* ══════════════════════════════════════════════════════════════════════
   Estilo común de los documentos legales.
   Sobrio, legible y con la identidad de LawnTrail: verde y blanco.
   Sin CDN de terceros: un documento legal tiene que poder leerse aunque
   un CDN esté caído.
   ══════════════════════════════════════════════════════════════════════ */
:root {
    --lg-verde: #16a34a;
    --lg-texto: #1c1917;
    --lg-suave: #57534e;
    --lg-borde: #e7e5e4;
    --lg-fondo: #ffffff;
}
@media (prefers-color-scheme: dark) {
    :root { --lg-texto: #f3f4f6; --lg-suave: #9ca3af; --lg-borde: #374151; --lg-fondo: #0b0f19; }
}
* { box-sizing: border-box; }
body {
    margin: 0; background: var(--lg-fondo); color: var(--lg-texto);
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    line-height: 1.65; font-size: 16px;
}
.lg-wrap { max-width: 760px; margin: 0 auto; padding: 1.25rem 1.25rem 4rem; }
.lg-top {
    display: flex; align-items: center; gap: .75rem; flex-wrap: wrap;
    padding: 1rem 0; border-bottom: 1px solid var(--lg-borde); margin-bottom: 1.5rem;
}
.lg-logo { display: flex; align-items: center; gap: .5rem; font-weight: 800; color: var(--lg-verde); text-decoration: none; font-size: 1.05rem; }
.lg-logo img { width: 28px; height: 28px; }
.lg-langs { margin-left: auto; display: flex; gap: .25rem; }
.lg-lang {
    min-height: 44px; min-width: 52px; border: 1px solid var(--lg-borde); background: transparent;
    color: var(--lg-suave); border-radius: .5rem; font-weight: 700; font-size: .8125rem; cursor: pointer;
}
.lg-lang-on { background: var(--lg-verde); color: #fff; border-color: var(--lg-verde); }
.lg-lang:focus-visible { outline: 3px solid #86efac; outline-offset: 2px; }

h1 { font-size: 1.6rem; line-height: 1.25; margin: 0 0 .35rem; }
h2 { font-size: 1.1rem; margin: 2rem 0 .5rem; color: var(--lg-verde); }
h3 { font-size: .98rem; margin: 1.25rem 0 .35rem; }
p, li { color: var(--lg-texto); }
ul, ol { padding-left: 1.25rem; }
li { margin: .3rem 0; }
.lg-meta { color: var(--lg-suave); font-size: .8125rem; margin: 0 0 1.5rem; }
.lg-note {
    border-left: 3px solid var(--lg-verde); background: rgba(22, 163, 74, .07);
    padding: .75rem .9rem; border-radius: 0 .5rem .5rem 0; margin: 1rem 0;
}
.lg-foot { margin-top: 3rem; padding-top: 1rem; border-top: 1px solid var(--lg-borde); color: var(--lg-suave); font-size: .8125rem; }
.lg-foot a { color: var(--lg-verde); }
a { color: var(--lg-verde); }

/* Marcador sin completar: imposible de pasar por alto. */
.lg-pend {
    background: #fee2e2; color: #991b1b; font-weight: 700;
    padding: .05rem .3rem; border-radius: .25rem; border: 1px dashed #dc2626;
}
.lg-warning {
    background: #fef2f2; color: #991b1b; border-bottom: 2px solid #dc2626;
    padding: .75rem 1.25rem; font-size: .875rem; font-weight: 600;
}
.lg-warning-list { font-weight: 400; }

@media (max-width: 380px) {
    body { font-size: 15px; }
    .lg-wrap { padding: 1rem .9rem 3rem; }
    h1 { font-size: 1.35rem; }
}
