/* SPDX-License-Identifier: MIT */
/* SPDX-FileCopyrightText: 2025-2026 Nikola Milovanovic */
/* talas.fr — ce que les pages de texte ajoutent au gabarit `.public-page` du
   socle (identite/web/socle.css, section 6). Tout le reste vient du socle :
   ce fichier ne redéfinit ni jeton, ni couleur, ni police.

   Il remplace `styles.css`, la feuille de l'ancienne page d'accueil, dont plus
   aucune page ne se servait après la refonte d'octobre 2026. Le nom change
   avec le contenu : un navigateur qui garderait l'ancienne feuille en cache
   habillerait les nouvelles pages avec les règles d'un gabarit disparu. */

/* Numéro de section : sur la même ligne que le titre, pas au-dessus. */
.public-page .p-doc h2 .p-number { display: inline; margin: 0 .7rem 0 0; }

/* Encadré d'ouverture d'une page de texte. */
.public-page .p-doc .p-card { margin: 1.5rem 0; }

/* Pages bilingues sur une seule adresse (confidentialité, mentions) : le choix
   de langue en tête, la traduction séparée du texte qui fait foi. */
.public-page .langues { font-size: .85rem; color: var(--ink-60); }
.public-page .traduction { margin-top: 3rem; padding-top: 2rem; border-top: var(--rule); }

.public-page .back { display: inline-block; margin-top: 3rem; }

/* Registre des certificats : un tableau de données, pas une fiche à deux
   colonnes. */
.public-page .registre table { font-variant-numeric: tabular-nums; }
.public-page .registre td { font-size: .82rem; }
.public-page .registre td:first-child { white-space: nowrap; }
.public-page .registre #registre-table p { color: var(--ink-60); font-size: .82rem; }
/* `word-break: break-all` couperait « talas-analyze » en « talas-anal / yze » :
   une commande cassée au milieu d'un mot ne se recopie pas. */
.public-page .registre code { font-size: .8rem; overflow-wrap: break-word; }
.public-page .registre th:nth-child(n+4), .public-page .registre td:nth-child(n+4) { white-space: nowrap; }
.public-page .registre .field { max-width: 26rem; }
.public-page .registre .field input {
  width: 100%; min-height: 2.75rem; padding: .7rem .8rem;
  background: var(--mr-paper); color: var(--mr-ink);
  border: 1px solid var(--ink-60); border-radius: var(--r); font: inherit;
}
.public-page .registre .field input:focus { border-color: var(--mr-ink); }
.public-page .registre .field input::placeholder { color: var(--ink-45); opacity: 1; }

/* Un tableau suivi d'un paragraphe : le socle ne met pas de marge sous `table`. */
.public-page .p-doc table { margin-bottom: 1.25rem; }

/* Sondage : le socle habille les champs de saisie et les zones de texte, pas
   les listes déroulantes. Mêmes cotes que les champs voisins. */
.public-page .p-form select {
  width: 100%; min-height: 2.75rem; padding: .7rem .8rem;
  background: var(--mr-paper); color: var(--mr-ink);
  border: 1px solid var(--ink-60); border-radius: var(--r); font: inherit;
}
.public-page .p-form select:focus { border-color: var(--mr-ink); }
.public-page .p-form .classement .field { margin-bottom: .8rem; }
.public-page .p-form fieldset .hint { margin: 0 0 .6rem; }
