/* ==========================================================================
   style_robert.css — contenu des articles du dictionnaire
   ========================================================================== */

/* --------------------------------------------------------------------------
   Sections de l'article (intro / milieu / fin)
   -------------------------------------------------------------------------- */
.intro  { background-color: rgba(0, 35, 0, 0.45); }
.milieu { background-color: rgba(0, 0, 18, 0.35); margin: 0; }
.fin    { background-color: rgba(50, 0, 0, 0.45); margin: 0; }

/* --------------------------------------------------------------------------
   Mot principal et entrée secondaire
   -------------------------------------------------------------------------- */
.s_ent {
  color: #fff;
  background: linear-gradient(135deg, #7f1d1d 0%, #c0392b 100%);
  padding: 0.15em 1em;
  font-weight: 700;
  font-size: 165%;
  line-height: 1.5;
  border-radius: 6px;
  display: inline-block;
  letter-spacing: 0.02em;
  margin-bottom: 2px;
}

.s_esa {
  color: #fff;
  background: linear-gradient(135deg, #7f1d1d 0%, #c0392b 100%);
  padding: 0.12em 0.9em;
  font-weight: 700;
  font-size: 1.4em;
  line-height: 1.5;
  border-radius: 6px;
  display: inline-block;
  letter-spacing: 0.01em;
}

/* --------------------------------------------------------------------------
   Sections hiérarchiques (A → D)
   -------------------------------------------------------------------------- */
.section_A {
  display: flow-root; /* contient les badges flottants */
  border-left: 4px solid rgba(185, 28, 28, 0.65);
  padding-left: 0.7em;
  margin: 1em 0 0.5em;
}

.section_B {
  display: flow-root;
  border-left: 3px solid rgba(22, 101, 52, 0.6);
  padding-left: 0.7em;
  margin: 1em 0 0.5em;
}

.section_C {
  display: flow-root;
  border-left: 2px solid rgba(67, 56, 202, 0.55);
  padding-left: 0.7em;
  margin: 1em 0 0.5em;
}

.section_D {
  display: flow-root;
  border-left: 1px solid rgba(126, 34, 206, 0.4);
  padding-left: 0.7em;
  margin: 1em 0 0.5em;
  background-color: rgba(0, 0, 40, 0.35);
}

/* Badges de numérotation */
.num_A {
  color: #fff;
  background-color: #7f1d1d;
  font-size: 0.9em;
  font-weight: 700;
  padding: 0.05em 0.75em;
  border-radius: 4px;
  display: block;
  float: left;
  margin-left: -0.1em;
  margin-right: 0.45em;
}

.num_B {
  color: #fff;
  background-color: #14532d;
  font-size: 1em;
  font-weight: 700;
  padding: 0.05em 0.5em;
  border-radius: 4px;
  display: block;
  float: left;
  margin-left: -0.1em;
  margin-right: 0.45em;
}

.num_C {
  color: #fff;
  background-color: #312e81;
  font-size: 0.9em;
  font-weight: 700;
  padding: 0.05em 0.55em;
  border-radius: 4px;
  display: block;
  float: left;
  clear: both;
  margin-left: -0.1em;
  margin-right: 0.45em;
}

.num_D {
  color: #fff;
  background-color: #581c87;
  font-size: 1em;
  font-weight: 700;
  padding: 0.05em 0.35em;
  border-radius: 4px;
  display: block;
  float: left;
  clear: both;
  margin-left: -0.1em;
  margin-right: 0.45em;
}

/* --------------------------------------------------------------------------
   Citations
   -------------------------------------------------------------------------- */
.citation {
  display: block;
  padding: 10px 14px 10px 16px;
  margin: 12px 0;
  background-color: rgba(10, 28, 65, 0.65);
  border-left: 4px solid #d4a020;
  border-top: 1px solid rgba(212, 160, 32, 0.2);
  border-right: 1px solid rgba(90, 10, 90, 0.25);
  border-bottom: 1px solid rgba(90, 10, 90, 0.25);
  border-radius: 0 6px 6px 0;
  font-family: inherit;
  font-weight: 400;
  font-size: 0.85em;
  line-height: 1.55;
}

/* Source bibliographique */
.citation_info {
  color: rgba(212, 160, 32, 0.9);
  font-size: 0.88em;
  font-weight: 500;
  font-style: italic;
  margin-top: 6px;
}

/* Numéro de citation */
.s_ncth {
  color: #d4a020;
  font-size: 0.78em;
  font-weight: 600;
  border: 1px solid rgba(212, 160, 32, 0.5);
  border-radius: 4px;
  padding: 0 5px;
  margin-right: 8px;
  vertical-align: middle;
}

/* Fragment de citation dans le corps du texte */
.s_rfc {
  color: #d4a020;
  font-size: 0.85em;
}

/* --------------------------------------------------------------------------
   Étymologie
   -------------------------------------------------------------------------- */
.etymo {
  border-left: 3px solid rgba(212, 160, 32, 0.5);
  border-top: 1px solid rgba(212, 160, 32, 0.15);
  padding: 5px 10px;
  font-size: 0.82em;
  background: rgba(212, 160, 32, 0.04);
  border-radius: 0 4px 4px 0;
}

/* --------------------------------------------------------------------------
   Conjugaison
   -------------------------------------------------------------------------- */
.conjugaison {
  border-left: 3px solid rgba(52, 211, 153, 0.5);
  padding: 5px 10px;
  margin-bottom: 1em;
  color: #6ee7b7;
  font-size: 0.75em;
  background: rgba(52, 211, 153, 0.04);
  border-radius: 0 4px 4px 0;
}

/* --------------------------------------------------------------------------
   Définitions et exemples
   -------------------------------------------------------------------------- */
.s_dfn {
  font-weight: 600;
  font-size: 1em;
  color: #d4a020;
}

.s_xpl {
  font-weight: 400;
  font-style: italic;
  font-size: 0.9em;
  line-height: 1.5;
  color: #bbf7d0;
}

.s_ctd {
  color: #f87171;
  font-style: italic;
  font-weight: 400;
}

.s_dtr {
  font-weight: 400;
}

/* --------------------------------------------------------------------------
   Remarques
   -------------------------------------------------------------------------- */
.rq {
  font-weight: 400;
  font-style: italic;
  font-size: 0.9em;
  line-height: 1.5;
  color: #fef08a;
}

.rq2 {
  color: #7dd3fc;
  border-left: 3px solid rgba(125, 211, 252, 0.4);
  border-top: 1px solid rgba(125, 211, 252, 0.12);
  padding: 4px 10px;
  margin-bottom: 0.6em;
  font-size: 0.78em;
  border-radius: 0 4px 4px 0;
}

/* --------------------------------------------------------------------------
   Relations (dérivées, complémentaires…)
   -------------------------------------------------------------------------- */
.relations {
  border-left: 3px solid rgba(232, 121, 249, 0.5);
  border-top: 1px solid rgba(232, 121, 249, 0.15);
  border-radius: 0 4px 4px 0;
  padding-left: 0.6em;
}

.derivee:before {
  content: "dér. :";
  text-transform: uppercase;
  font-size: 0.85em;
  font-weight: 600;
}

.complementaire:before {
  content: "comp. :";
  text-transform: uppercase;
  font-size: 0.85em;
  font-weight: 600;
}

.contraire:before {
  content: "contr. :";
  text-transform: uppercase;
  font-size: 0.85em;
  font-weight: 600;
}

/* --------------------------------------------------------------------------
   Losanges (locutions, homonymes…)
   -------------------------------------------------------------------------- */
.losange:before {
  content: "◆";
  color: #e879f9;
}

.losange {
  border-left: 2px solid rgba(232, 121, 249, 0.35);
  padding-left: 0.5em;
  margin-bottom: 0.8em;
}

/* --------------------------------------------------------------------------
   Métadonnées textuelles
   -------------------------------------------------------------------------- */

/* Catégorie grammaticale (n., v., adj…) */
.s_cat {
  font-weight: 600;
  font-size: 0.82em;
  letter-spacing: 0.03em;
}

/* Prononciation */
.s_pho {
  color: #93c5fd;
  font-size: 0.82em;
  font-weight: 400;
}

/* Date / époque */
.s_etm {
  color: #9ca3af;
  font-size: 0.8em;
  font-weight: 400;
}

/* Indicateurs de domaine (Sc., Mus., …) */
.s_mrqd {
  font-weight: 600;
  font-style: italic;
  font-size: 0.85em;
}

/* Indicateurs régionaux */
.s_mrqr {
  font-weight: 600;
  font-size: 0.85em;
  color: #fda4af;
}

/* Indication grammaticale / d'usage */
.s_mta {
  font-weight: 600;
  font-style: italic;
  color: #7dd3fc;
  font-size: 0.82em;
}

/* Numérotations secondaires */
.s_noh {
  font-size: 0.82em;
  font-weight: 400;
}

/* Renvois externes */
.s_rvd {
  font-weight: 600;
  font-size: 0.78em;
  color: #f9a8d4;
}

/* Références internes */
.s_rvi {
  font-size: 0.85em;
  font-weight: 400;
}

/* Renvois secondaires */
.s_rvs {
  font-size: 0.78em;
  font-weight: 400;
}

/* Référence à l'entrée */
.s_entc {
  color: #fde68a;
  font-weight: 600;
}

/* Groupes */
.s_grp {
  font-weight: 600;
  color: #5ba4d4;
}

/* Locutions */
.s_lca {
  font-weight: 600;
  font-variant: small-caps;
  color: #fca5a5;
}

/* Remarques balisées */
.s_etq1, .s_etq3, .s_etq4 { font-weight: 600; }
.s_gls  { font-weight: 400; }
.s_cnj  { font-size: 0.82em; font-weight: 400; }
.s_cf   { font-size: 0.8em;  font-weight: 400; }
.s_rem  { font-size: 0.82em; }

.s_nrem {
  background-color: rgba(204, 250, 218, 0.1);
  border: 1px solid rgba(204, 250, 218, 0.18);
  border-radius: 4px;
  font-weight: 600;
  padding: 1px 5px;
}

.s_per   { color: #f87171; }
.s_x_mta { font-style: italic; color: #e879f9; }

/* --------------------------------------------------------------------------
   Séparateurs
   -------------------------------------------------------------------------- */
.s_hr1 { width: 100px; height: 1px; color: #990033; margin: 0 0 5px; text-align: center; }
.s_hr2 { width: 200px; color: #990033; margin: 25px auto; text-align: center; }

/* --------------------------------------------------------------------------
   Divers
   -------------------------------------------------------------------------- */
.s_par4 {
  margin: 4px 20px;
  text-align: left;
  line-height: 1.4;
}

.s_zrem {
  border-left: 3px solid rgba(204, 249, 211, 0.4);
  border-top: 1px solid rgba(234, 252, 233, 0.15);
  border-radius: 0 4px 4px 0;
  margin: 14px 28px 14px 18px;
  padding-left: 10px;
  line-height: 1.4;
}

.s_uni { font-size: 120%; }

/* Couleur générique "rose" */
.c      { color: #f9a8d4; }

/* Lien croisé */
.lien_a       { color: #c084fc; }
.lien_a:hover { text-decoration: underline; }

/* Séparateur de définitions */
.ss_ctd { color: #fb923c; font-size: 0.8em; }
.ss_xpl { color: #f87171; }

.selection { background-color: rgba(255, 255, 204, 0.1); }

.highlight {
  color: #fff;
  background-color: rgb(193, 0, 79);
  padding: 1px 3px;
  border: 1px solid orange;
  border-radius: 3px;
}

.damier { text-align: center; margin: 0; }

/* --------------------------------------------------------------------------
   Liens
   -------------------------------------------------------------------------- */
a:link    { color: #c084fc; text-decoration: none; }
a:active  { color: #e879f9; text-decoration: underline; }

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width: 600px) {
  .num_A, .num_B, .num_C, .num_D {
    float: none;
    display: inline-block;
    margin-right: 4px;
  }
}

@media (max-width: 768px) {
  .s_ent  { font-size: 115%; padding: 0.12em 0.6em; }
  .s_esa  { font-size: 105%; padding: 0.1em 0.6em; }
}
