/* === _comun/r15.css === */
/* Runda 15 (17.10.2026): paginile legale (Politica de confidențialitate, Politica de cookie-uri, Drepturile tale).
   Eroul fără fotografie al setului (fondul .vhero) și o coloană de text lung, cu cuprinsul alături. Fără limbaj vizual nou:
   tabelele sunt .r2-tab, datele firmei sunt .r13-contact (ca pe Contact), formularul e .r5-disc / .r14-form. */

.r15-hero { padding-bottom: 48px; }
.r15-hero .lead { max-width: 760px; }
.r15-data { margin-top: 18px; font-size: 14px; color: var(--muted); }

.r15-legal { padding-top: 64px; }
.r15-g { display: grid; grid-template-columns: minmax(0, 260px) minmax(0, 760px); gap: 64px; align-items: start; }

/* cuprinsul: listă simplă, lipită la derulare pe desktop */
.r15-cup { position: sticky; top: 140px; font-size: 14px; }
.r15-cup-t { font-weight: 700; color: var(--text); margin-bottom: 10px; }
.r15-cup ol { list-style: none; margin: 0; padding: 0; border-left: 1px solid var(--line-2); }
.r15-cup li a { display: block; padding: 5px 0 5px 14px; color: var(--muted); text-decoration: none; line-height: 1.4; }
.r15-cup li a:hover { color: var(--link); text-decoration: underline; text-underline-offset: 3px; }

/* textul: măsura de citire ~70 de caractere */
.r15-text { font-size: 17px; line-height: 1.7; color: var(--text); }
.r15-text > * + * { margin-top: 16px; }
.r15-text h2 { font-size: clamp(24px, 2.2vw, 30px); line-height: 1.25; margin-top: 56px; scroll-margin-top: 140px; }
.r15-text h2:first-child { margin-top: 0; }
.r15-text h3 { margin-top: 32px; font-size: 19px; }
.r15-text h2 + *, .r15-text h3 + * { margin-top: 12px; }
.r15-text p, .r15-text li { color: var(--muted); }
.r15-text strong { color: var(--text); }
.r15-lista { list-style: none; padding: 0; display: grid; gap: 12px; }
.r15-lista li { position: relative; padding-left: 20px; }
.r15-lista li::before { content: ""; position: absolute; left: 2px; top: .72em; width: 6px; height: 6px; border-radius: 50%; background: var(--link); }
.r15-text .u-l { overflow-wrap: anywhere; }
.r15-text code { font: .88em var(--f-code); background: var(--surface-2); padding: 1px 5px; border-radius: 3px; overflow-wrap: anywhere; }
.r15-text .tbc { white-space: normal; display: inline; }

/* tabelele lungi: aceleași rânduri ca .r2-tab, mai dense */
.r15-tab table { font-size: 14px; min-width: 680px; }
.r15-tab th { font-size: 13px; color: var(--text); font-weight: 700; }
.r15-tab td { color: var(--muted); padding: 12px 14px 12px 0; }
.r15-tab td:first-child { color: var(--text); font-weight: 600; }

/* datele firmei și ale autorității: lista de definiții de pe Contact */
.r15-dl { margin: 18px 0 8px; font-size: 16px; }
.r15-dl div { padding: 8px 0; border-bottom: 1px solid var(--line); }
.r15-dl dt { color: var(--text); }
.r15-dl dd { color: var(--muted); }
.r15-text .r15-dl + * { margin-top: 20px; }

/* formularul „Drepturile tale”: pe fondul alb al paginii, într-o casetă cu chenar */
.r15-form { margin-top: 20px; padding: 24px; border: 1px solid var(--line-2); border-radius: var(--r-el, 6px); }
.r15-form label, .r15-form .nota { color: var(--text); }
.r15-form .chk-l { color: var(--muted); }
.r15-form select { height: 46px; }

@media (max-width: 1000px) {
  .r15-g { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .r15-cup { position: static; padding-bottom: 24px; border-bottom: 1px solid var(--line); }
  .r15-cup ol { columns: 2; column-gap: 24px; border-left: 0; }
  .r15-cup li { break-inside: avoid; }
  .r15-cup li a { padding-left: 0; }
}
@media (max-width: 560px) {
  .r15-cup ol { columns: 1; }
  .r15-text { font-size: 16px; }
  .r15-form { padding: 18px 16px; }
}

/* gemenii de mărime a textului (panoul de accesibilitate, generat de _sursa/panou_a11y.py) */
.a11y-text .r15-data { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r15-cup { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r15-text { font-size: calc(17px * var(--a11y-k, 1)); }
.a11y-text .r15-text h2 { font-size: calc(clamp(24px, 2.2vw, 30px) * var(--a11y-k, 1)); }
.a11y-text .r15-text h3 { font-size: calc(19px * var(--a11y-k, 1)); }
.a11y-text .r15-text code { font-size: .88em; }
.a11y-text .r15-tab table { font-size: calc(14px * var(--a11y-k, 1)); }
.a11y-text .r15-tab th { font-size: calc(13px * var(--a11y-k, 1)); }
.a11y-text .r15-dl { font-size: calc(16px * var(--a11y-k, 1)); }
@media (max-width: 560px) {
.a11y-text .r15-text { font-size: calc(16px * var(--a11y-k, 1)); }
}
