/* ===========================================================================
   BUG-133 — TIPOGRAFIA DOCUMENTELOR LEGALE, ÎNTR-UN SINGUR LOC
   ===========================================================================

   ⚠⚠ DE CE UN FIȘIER PROPRIU, ȘI NU REGULI ÎN `admin.css` + `auth.css`

   Documentele legale se randează în TREI contexte, servite din două foi de stil
   diferite:

     · `.legal-render`      — previzualizarea din administrare  (admin.css, layout admin)
     · `.legal-view__body`  — pagina publică din subsol         (auth.css,  layout auth)
     · `.legal-doc__scroll` — caseta din poarta de acceptare    (auth.css,  layout auth)

   Până la BUG-133 fiecare avea propria tipografie, iar cele trei NU coincideau:

     container      corp     h1      h2      h3     lățime de rând
     .legal-render  (moșt.)  20px    17px    15px   78ch
     .legal-view…   15px     16px    16px    16px   760px (pe părinte)
     .legal-doc…    14px     15px    15px    15px   — (niciuna)

   Două consecințe, exact cele raportate de owner:
     1. TITLURILE NU SE DISTING. În caseta de acceptare un `h2` e cu 1px mai mare
        decât textul din jur; în pagina publică, tot cu 1px. Un document juridic
        își pierde structura tocmai unde e citit cel mai atent.
     2. ACELAȘI DOCUMENT ARATĂ ALTFEL în funcție de unde e deschis — ceea ce e o
        problemă în sine, nu doar una estetică (FR-5).

   FR-5/AC-3 cer randare IDENTICĂ în toate trei. Asta se obține cel mai sigur cu o
   SINGURĂ definiție, nu cu trei care trebuie ținute în sincron: o clasă comună,
   `.legal-prose`, pusă pe toate cele trei containere, cu regulile aici.

   ⚠ FIȘIERUL E INCLUS ÎN AMPRENTA US-081 AC-8, ca celelalte trei. Altfel mutarea
   regulilor aici ar fi fost o cale de a scoate CSS de sub invariant — exact ce
   invariantul trebuie să împiedice.

   ⚠ ZERO TOKENI NOI (FR-6, AC-6). Culorile sunt cele existente din `tokens.css`
   (`--anevar-text`, `--anevar-text-muted`, `--anevar-border`, `--anevar-primary`),
   iar SCARA TIPOGRAFICĂ e cea care exista deja în `.legal-render` — 20/17/15 pe
   titluri, `1.65` interlinie, `78ch` măsură. Nu s-a inventat nicio valoare: s-a
   ales, dintre cele trei variante existente, singura care avea deja ierarhie și
   lățime de rând, și s-a aplicat peste tot.

   ⚠ CE NU E AICI: proprietățile de CUTIE ale casetei de acceptare (`max-height`,
   `overflow-y`, bordura). Acelea sunt FUNCȚIONALE — BR-06 cere derulare până la
   final — și rămân în `auth.css`, pe `.legal-doc__scroll`.
   =========================================================================== */

.legal-prose {
    color: var(--anevar-text, #333333);
    font-size: 15px;
    line-height: 1.65;

    /* FR-3 — măsura. ~78 de caractere: sub pragul la care ochiul pierde rândul,
       peste care un text juridic pe un ecran de 1920px devine greu de urmărit.
       Valoarea vine din `.legal-render`, unde exista deja. */
    max-width: 78ch;
}

/* FR-1 — ierarhia, prin DIMENSIUNE și SPAȚIERE, nu prin culoare (FR-6).
   Marja de sus e mai mare decât cea de jos, deliberat: un titlu aparține
   secțiunii care urmează, nu celei care tocmai s-a încheiat. */
.legal-prose h1 { font-size: 20px; margin: 0 0 .6em; }
.legal-prose h2 { font-size: 17px; margin: 1.6em 0 .5em; }
.legal-prose h3,
.legal-prose h4 { font-size: 15px; margin: 1.4em 0 .4em; }

/* Primul titlu nu împinge documentul în jos: fără asta, fiecare context ar fi
   început cu un gol de 1.6em care nu are ce separa. */
.legal-prose > :first-child { margin-top: 0; }

.legal-prose p { margin: 0 0 .9em; }

/* FR-4 — listele: indentare proprie și aer între elemente. */
.legal-prose ul,
.legal-prose ol { margin: 0 0 .9em; padding-left: 1.4em; }
.legal-prose li { margin-bottom: .35em; }

/* Listele imbricate se disting (FR-4): alt marcator și spațiere mai strânsă,
   ca un sub-punct să nu arate ca un punct de sine stătător. */
.legal-prose ul ul,
.legal-prose ol ol,
.legal-prose ul ol,
.legal-prose ol ul { margin: .35em 0 .35em; }
.legal-prose ul ul { list-style-type: circle; }
.legal-prose ul ul ul { list-style-type: square; }

.legal-prose strong { font-weight: 600; }

.legal-prose a { color: var(--anevar-primary, #9D2235); }

/* Tabelele NU se pot crea din editor (US-132 FR-2), dar un document vechi poate
   conține unul. Randarea rămâne definită, ca să arate la fel în toate trei. */
.legal-prose table { border-collapse: collapse; margin: 0 0 .9em; }
.legal-prose th,
.legal-prose td {
    border: 1px solid var(--anevar-border, #E6E6E6);
    padding: 6px 10px;
    text-align: left;
}

/* FR-7 — sub 1025px măsura cedează în favoarea marginilor: `78ch` pe un ecran de
   390px ar fi fost oricum mai lat decât ecranul, iar `max-width` n-ar fi făcut
   nimic. Se scrie explicit ca intenția să fie citibilă, nu dedusă dintr-un
   accident de aritmetică. */
@media (max-width: 1024px) {
    .legal-prose {
        max-width: 100%;
    }
}
