@font-face{font-family:'PT Serif';font-style:normal;font-weight:700;font-display:swap;src:url('/pt-serif-v12-latin-700.woff2') format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:400;font-display:swap;src:url('/roboto-latin-regular.woff2') format('woff2')}
@font-face{font-family:'Roboto';font-style:normal;font-weight:700;font-display:swap;src:url('/roboto-latin-700.woff2') format('woff2')}

/* PEAU « Le Bureau de Référence » (préfixe fic-), FOURCHE « marée de Chesapeake » de fishfearus.com (voir peau/FOURCHE.md).
   Archétype portail-rubriques en version sombre, direction 13 « The Reference Desk » : le fichier d'un bureau de
   référence à l'heure de la fermeture, passé à la couleur de la baie. Eau profonde au lieu du papier de nuit, ferrures de
   laiton, un tiroir par rubrique, une fiche bristol perforée par entrée, une question par tiroir.
   CE QUI S'ÉCARTE DE LA BIBLIOTHÈQUE (voulu, déclaré) : palette de marée (:root), coins de 10 à 22 px, ombres douces
   sous chaque papier et chaque façade, dégradés d'eau (verticaux, deux tons d'une même teinte, jamais de violet) ;
   l'accueil ouvre sur la planche photo de la dernière fiche.
   RÈGLES NÉGATIVES (tenues) :
   - le laiton ne s'écrit que sur le sombre (liens, numéros, cadres) ; sur le bristol, le texte est à l'encre et le
     rouge de fiche ne sert qu'au filet de tête et aux numéros ;
   - la machine (chasse fixe) n'écrit que ce qui se tape sur une fiche ou un bordereau ; jamais un paragraphe ni un titre ;
   - trous de tringle et vis prennent la couleur du fond porteur (--porteur), jamais une couleur fixe ;
   - deux largeurs de page seulement : --large et --etroite.
   contraste: trace/nuit trace/tiroir plomb/nuit plomb/tiroir laiton/nuit laiton/tiroir canard/nuit canard/tiroir encre/bristol tampon/bristol bristol/nuit nuit/laiton
   direction-peau : {"rayons":{"min":5,"max_px":22},"ombres":{"min":3,"regle":"libres"},"aplats":{"min":2},"contrastes":[["--trace","--nuit",4.5],["--encre","--bristol",4.5]]} */
:root {
  /* palette : 9 matières */
  --nuit: #0d1b21;       /* eau profonde : fond de la salle */
  --tiroir: #152a33;       /* chenal : façades de tiroir, onglets, registre, brouillon */
  --trace: #eef3f0;       /* écume : texte sur le sombre */
  --plomb: #a3b6b5;       /* mine de plomb : mentions et comptes sur le sombre */
  --laiton: #e2a63d;       /* laiton : liens, numéros, cadres, filets de tête */
  --canard: #3fbfb0;       /* canard : focus, survol, devise */
  --bristol: #f2ead6;       /* bristol : fiches, étiquettes, bordereau */
  --encre: #122029;       /* encre : texte sur bristol */
  --tampon: #c1492b;       /* rouge de balise : filet de tête, numéros et survol sur bristol */
  /* piles système : une scolaire pour les titres, une lisible d'écran pour la lecture, une machine pour ce qui se tape */
  --titre-police: "PT Serif", "Century Schoolbook", "Bookman Old Style", Georgia, serif;
  --texte-police: Roboto, Verdana, Geneva, "DejaVu Sans", sans-serif;
  --machine-police: Consolas, "Liberation Mono", "DejaVu Sans Mono", "Lucida Console", Menlo, monospace;
  /* forme et rythme */
  --rayon: 14px;          /* coins des fiches et des étiquettes (fourche : 10 à 22 px) */
  --pas: 1.5rem;          /* densité : unité de rythme vertical */
  --mesure: 68ch;         /* largeur de lecture */
  --large: 76rem;         /* largeur du fichier */
  --etroite: 46rem;       /* largeur des pages sans fichier (404, service) */
}

/* ------------------------------------------------------------------ base */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; color-scheme: dark; }
body { --porteur: var(--nuit); margin: 0; background: var(--nuit); color: var(--trace); font-family: var(--texte-police); font-size: clamp(.97rem, .93rem + .2vw, 1.06rem); line-height: 1.72; overflow-wrap: break-word; }
img { max-width: 100%; height: auto; display: block; }
h1, h2, h3, h4 { font-family: var(--titre-police); font-weight: 600; line-height: 1.1; margin: 0 0 .5em; text-wrap: balance; hyphens: auto; -webkit-hyphenate-limit-before: 6; -webkit-hyphenate-limit-after: 6; hyphenate-limit-chars: 16 6 6; }
h1 { font-size: clamp(2.2rem, 1.45rem + 3vw, 3.9rem); letter-spacing: -.012em; }
/* japonais : couper les titres aux frontières de mots (« どの紙 » ne se coupe plus en « ど / の紙 ») */
:lang(ja) :is(h1, h2, h3, h4) { word-break: auto-phrase; }
h2 { font-size: clamp(1.45rem, 1.25rem + .9vw, 2rem); }
h3 { font-size: clamp(1.18rem, 1.08rem + .45vw, 1.42rem); }
h4 { font-size: 1.06rem; line-height: 1.2; }
p, ul, ol, dl, figure { margin: 0 0 var(--pas); }
a { color: var(--laiton); text-decoration-thickness: 1px; text-underline-offset: .22em; }
a:hover { color: var(--trace); text-decoration-color: var(--canard); text-decoration-thickness: 2px; }
:focus-visible { outline: 3px solid var(--canard); outline-offset: 3px; }
time { font-variant-numeric: lining-nums tabular-nums; }
/* grilles à une colonne (avant leurs points de rupture) : piste bornée à la largeur, jamais à la largeur min-content d'un
   mot long (un composé de 42 lettres élargissait la fiche d'en-tête de 38 px à 390 px). :where() : aucune spécificité,
   toute grille réglée plus bas l'emporte. */
:where(.fic-fiche, .fic-tiroir, .fic-tiroir__facade, .fic-tiroir__fiches, .fic-autres, .fic-autres__tiroir, .fic-reponse__rang, .fic-reponse__plan,
  .fic-colophon__colonnes, .fic-consultation__rang, .fic-nouvelles__table, .fic-nouvelles__pile, .fic-registre__domaine, .fic-suite,
  .fic-suite__texte, .fic-guichet__noms, .fic-marge__sources a, .fic-marge__sources li > span) { grid-template-columns: minmax(0, 1fr); }
.fic-largeur { width: min(100% - 2rem, var(--large)); margin-inline: auto; }
.fic-largeur--etroite { width: min(100% - 2rem, var(--etroite)); }
.fic-passe { position: absolute; left: -9999px; top: 0; z-index: 40; padding: .6rem 1rem; background: var(--bristol); color: var(--encre); }
.fic-passe:focus { left: .5rem; top: .5rem; }

/* ------------------------------------------------------------------ la machine : ce qui se tape */
.fic-tape { font-family: var(--machine-police); font-size: .86em; letter-spacing: .01em; font-variant-numeric: tabular-nums; }
.fic-tape--adresse { overflow-wrap: anywhere; }
.fic-fiche__legende .fic-tape, .fic-reponse__champs .fic-tape, .fic-bordereau .fic-tape { white-space: nowrap; }

/* ------------------------------------------------------------------ geste A : le numéro de laiton */
/* 2,4 rem, calé en haut à droite de son tiroir ; le haut des chiffres déborde de 6 px au-dessus du filet de laiton */
.fic-numero-laiton { position: absolute; top: calc(-6px - .16em - 1px); right: clamp(.6rem, 2vw, 1.1rem); z-index: 2; padding-inline: .3rem; background: var(--porteur); color: var(--laiton); font: 600 2.4rem/1 var(--titre-police); font-variant-numeric: lining-nums tabular-nums; letter-spacing: -.02em; pointer-events: none; }

/* ------------------------------------------------------------------ geste B : le porte-étiquette de laiton */
.fic-porte-etiquette { display: inline-flex; flex-direction: column; align-items: center; max-width: 100%; margin: 0 0 var(--pas); font: 600 clamp(.9rem, .86rem + .2vw, 1rem)/1.25 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-porte-etiquette__carton { position: relative; display: block; max-width: 100%; padding: .3rem .9rem .26rem; background: var(--bristol); color: var(--encre); border: 3px solid var(--laiton); border-inline-width: 1.05rem; border-radius: var(--rayon); box-shadow: 0 2px 6px rgba(8,12,16,.35); }
/* les deux vis, sur les oreilles du cadre */
.fic-porte-etiquette__carton::before, .fic-porte-etiquette__carton::after { content: ""; position: absolute; top: 50%; width: 6px; height: 6px; margin-top: -3px; background: var(--porteur); clip-path: circle(50%); }
.fic-porte-etiquette__carton::before { left: calc(-.525rem - 3px); }
.fic-porte-etiquette__carton::after { right: calc(-.525rem - 3px); }
.fic-porte-etiquette a { color: var(--encre); text-decoration: none; }
.fic-porte-etiquette a:hover { color: var(--tampon); text-decoration: underline; text-decoration-color: var(--tampon); }
.fic-porte-etiquette a:focus-visible { outline-color: var(--tampon); outline-offset: 2px; }
/* sur un tiroir : étiquette plus grande et poignée en barre sous le cadre */
.fic-porte-etiquette--tiroir { font-size: clamp(1.02rem, .95rem + .35vw, 1.2rem); letter-spacing: .06em; }
.fic-porte-etiquette--tiroir .fic-porte-etiquette__carton { padding: .42rem 1.2rem .36rem; background: var(--laiton); color: var(--nuit); border-color: var(--nuit); }
.fic-porte-etiquette--tiroir::after { content: ""; display: block; width: 3.6rem; height: .6rem; margin-top: .6rem; border: 3px solid var(--laiton); border-top: 0; }

/* ------------------------------------------------------------------ geste D : l'intitulé et sa note tapée */
.fic-intitule { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem 1.6rem; margin: 0 0 calc(var(--pas) * 1.15); padding-bottom: .75rem; border-bottom: 1px solid var(--laiton); }
.fic-intitule .fic-porte-etiquette { margin: 0; }
.fic-intitule__note { margin: 0; color: var(--plomb); font-family: var(--machine-police); font-size: .76rem; line-height: 1.4; letter-spacing: .12em; text-transform: uppercase; }
.fic-intitule__note .fic-tape { font-size: 1em; }

/* ------------------------------------------------------------------ guichet (en-tête) et barre des tiroirs */
.fic-guichet { background: var(--nuit); }
.fic-guichet__rang { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .6rem 2rem; padding-block: .8rem .7rem; }
.fic-guichet__marque { display: inline-flex; align-items: center; gap: .85rem; color: var(--trace); text-decoration: none; }
.fic-guichet__marque:hover { color: var(--laiton); }
.fic-monogramme { flex: none; width: 2.9rem; height: 2.9rem; }
.fic-monogramme__facade { fill: var(--tiroir); stroke: var(--laiton); stroke-width: 1.5; }
.fic-monogramme__cadre { fill: var(--bristol); stroke: var(--laiton); stroke-width: 2.2; }
.fic-monogramme__poignee { fill: none; stroke: var(--laiton); stroke-width: 2.2; }
.fic-monogramme__rivet { fill: var(--laiton); }
.fic-guichet__noms { display: grid; }
.fic-guichet__nom { font: 600 clamp(1.25rem, 1.1rem + .6vw, 1.62rem)/1.1 var(--titre-police); }
.fic-guichet__devise { font-size: .82rem; line-height: 1.4; color: var(--plomb); }
.fic-onglets { background: var(--tiroir); border-block: 1px solid var(--laiton); }
.fic-onglets__liste { display: flex; flex-wrap: wrap; list-style: none; margin-block: 0; padding: 0; }
.fic-onglets__liste li { display: flex; align-items: baseline; margin-bottom: -1px; border-right: 1px solid color-mix(in srgb, var(--laiton) 38%, var(--tiroir)); }
.fic-onglets__liste li:first-child { border-left: 1px solid color-mix(in srgb, var(--laiton) 38%, var(--tiroir)); }
.fic-onglets__lien { display: flex; align-items: baseline; gap: .5rem; padding: .58rem clamp(.8rem, 2vw, 1.25rem) .54rem; border-bottom: 1px solid transparent; color: var(--trace); text-decoration: none; font: 600 .98rem/1.2 var(--titre-police); }
.fic-onglets__lien:hover { background: var(--nuit); color: var(--laiton); }
.fic-onglets__lien[aria-current] { background: var(--nuit); border-bottom-color: var(--nuit); color: var(--laiton); }
.fic-onglets__lien--service { color: var(--plomb); }
.fic-onglets__numero { color: var(--laiton); font: 600 .84em/1 var(--titre-police); font-variant-numeric: lining-nums tabular-nums; }

/* ------------------------------------------------------------------ chemin (fil d'Ariane) */
.fic-chemin ol { display: flex; flex-wrap: wrap; gap: .15rem .55rem; list-style: none; margin: 0; padding: 1.1rem 0 0; color: var(--plomb); font-size: .84rem; }
.fic-chemin li + li::before { content: "›"; margin-right: .55rem; color: var(--laiton); }
.fic-chemin [aria-current] { color: var(--trace); text-decoration: none; }

/* ------------------------------------------------------------------ salle de consultation (ouverture de l'accueil) */
.fic-consultation { padding-block: clamp(2rem, 5vw, 3.6rem) clamp(1.6rem, 4vw, 2.6rem); }
.fic-consultation__rang { display: grid; gap: 2rem 3.5rem; }
@media (min-width: 60rem) { .fic-consultation__rang { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: end; } }
.fic-consultation h1 { max-width: 15ch; margin-top: .2rem; }
.fic-consultation__intro { max-width: 50ch; font-size: clamp(1.04rem, .98rem + .3vw, 1.2rem); line-height: 1.62; }
.fic-consultation__note { max-width: 58ch; margin: 0; padding: .95rem 1.15rem 1rem; background: var(--tiroir); border-top: 1px solid var(--laiton); font-size: .9rem; line-height: 1.62; }
.fic-consultation__note p { margin: 0; }
.fic-consultation__note .fic-consultation__note-titre { margin-bottom: .35rem; color: var(--laiton); font: 600 1.02rem/1.3 var(--titre-police); }
/* le bordereau de fermeture : un feuillet bristol tapé, filet double rouge sous le titre */
.fic-bordereau { align-self: end; padding: 1.1rem 1.25rem .9rem; background: var(--bristol); color: var(--encre); border-radius: var(--rayon); box-shadow: 0 2px 8px rgba(8,12,16,.28); }
.fic-bordereau__titre { margin: 0 0 .5rem; padding-bottom: .4rem; border-bottom: 3px double var(--tampon); font: 600 1.05rem/1.2 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-bordereau__champs { margin: 0; }
.fic-bordereau__champs div { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 0 1rem; padding-block: .38rem .32rem; border-bottom: 1px dotted var(--encre); }
.fic-bordereau__champs div:last-child { border-bottom: 0; }
.fic-bordereau__champs dt { font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.fic-bordereau__champs dd { margin: 0; font-size: 1.02rem; }
.fic-bordereau a { color: var(--encre); text-decoration-color: var(--tampon); }  /* laiton jamais sur bristol (1,87:1) */
.fic-bordereau a:hover { color: var(--tampon); }
.fic-bordereau :focus-visible { outline-color: var(--tampon); }

/* ------------------------------------------------------------------ geste C : la fiche perforée */
.fic-fiche { position: relative; display: grid; align-content: start; gap: .2rem 1rem; margin: 0; padding: .95rem 1rem 2.05rem; background: var(--bristol); color: var(--encre); border-radius: var(--rayon); box-shadow: 0 3px 10px rgba(8,12,16,.30); }
/* le trou de tringle, découpé au bas de la fiche */
.fic-fiche::after { content: ""; position: absolute; left: 50%; bottom: .62rem; width: .82rem; height: .82rem; margin-left: -.41rem; background: var(--porteur); clip-path: circle(50%); }
/* le fond porteur : ce que l'on voit à travers un trou ou autour d'une vis */
.fic-tiroir, .fic-facade__rang, .fic-reponse__rang, .fic-registre, .fic-autres__tiroir, .fic-brouillon { --porteur: var(--tiroir); }
.fic-fiche > .fic-numero-laiton { top: calc(-6px - .16em); background: var(--porteur); }
.fic-fiche a { color: var(--encre); text-decoration-color: var(--tampon); }
.fic-fiche a:hover { color: var(--tampon); }
.fic-fiche :focus-visible { outline-color: var(--tampon); }
.fic-fiche__planche { margin: 0; }
.fic-cliche { display: block; }
.fic-cliche img { width: 100%; object-fit: cover; }
.fic-cliche--portrait img { aspect-ratio: 3 / 4; }
.fic-cliche--paysage img { aspect-ratio: 4 / 3; }
.fic-fiche .fic-cliche img { border: 1px solid var(--encre); }
.fic-fiche__legende { margin-top: .3rem; font-size: .72rem; line-height: 1.35; display: flex; flex-wrap: wrap; gap: 0 .6rem; }
.fic-fiche__texte { min-width: 0; }
/* le filet rouge de tête : sous la tête de fiche, ou sous le titre quand la fiche n'a pas de tête */
.fic-fiche__tete { margin: 0 0 .55rem; padding: .32rem .6rem .28rem; background: var(--tampon); color: var(--bristol); font: 600 .78rem/1.3 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-fiche .fic-onglets__numero { color: var(--tampon); }
/* sur le filet rouge, tout s'écrit au bristol : la règle .fic-fiche a (encre, 2,2:1) et le numéro rouge (1:1, invisible)
   passaient devant par l'ordre de la feuille */
.fic-fiche .fic-fiche__tete a, .fic-fiche .fic-fiche__tete .fic-onglets__numero { color: var(--bristol); text-decoration: none; }
.fic-fiche .fic-fiche__tete a:hover { color: var(--bristol); text-decoration: underline; text-decoration-color: var(--bristol); }
.fic-fiche .fic-fiche__tete :focus-visible { outline-color: var(--bristol); }
.fic-fiche__titre { margin: 0 0 .45rem; font-size: clamp(1.06rem, 1rem + .3vw, 1.22rem); line-height: 1.18; }
.fic-fiche__titre:first-child { padding-bottom: .4rem; border-bottom: 1px solid var(--tampon); }
.fic-fiche__titre a { text-decoration: none; }
.fic-fiche__titre a:hover { text-decoration: underline; }
.fic-fiche__usage { margin: 0; font-size: .86rem; line-height: 1.55; }
.fic-fiche__questions-mot { margin: .9rem 0 .3rem; padding-bottom: .22rem; border-bottom: 1px solid var(--tampon); font: 600 .74rem/1.3 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-fiche__questions { margin: 0; padding-left: 1.4rem; font-size: .86rem; line-height: 1.45; }
.fic-fiche__questions li { padding-block: .16rem; }
.fic-fiche__questions li::marker { color: var(--tampon); font-family: var(--titre-police); font-weight: 600; }
.fic-fiche__questions a { text-decoration: none; }
.fic-fiche__questions a:hover { text-decoration: underline; }
.fic-fiche__mesure { display: flex; flex-wrap: wrap; gap: .1rem 1.1rem; margin: .8rem 0 0; padding-top: .5rem; border-top: 1px dotted var(--encre); font-size: .8rem; }
/* modes */
.fic-fiche--rangee { grid-template-columns: 5.6rem minmax(0, 1fr); }
.fic-fiche--courte { grid-template-columns: 4.4rem minmax(0, 1fr); padding: .75rem .85rem 1.6rem; }
.fic-fiche--courte .fic-fiche__titre { font-size: .98rem; }
.fic-fiche--courte::after { width: .66rem; height: .66rem; margin-left: -.33rem; bottom: .48rem; }
.fic-fiche--courte .fic-fiche__tete { margin-bottom: .45rem; font-size: .72rem; }
.fic-fiche--ouverte .fic-fiche__titre { font-size: clamp(1.15rem, 1.05rem + .45vw, 1.4rem); margin-top: .5rem; }
.fic-fiche--grande { padding: 2rem clamp(1rem, 2.5vw, 1.6rem) 2.5rem; }  /* haut : le numéro de laiton descend de 1,6 rem dans la fiche, il couvrait le coin de la planche ou le filet de tête */
.fic-fiche--grande .fic-fiche__titre { font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.15rem); line-height: 1.1; }
.fic-fiche--grande .fic-fiche__usage { font-size: .98rem; line-height: 1.6; }
.fic-fiche--grande::after { width: 1rem; height: 1rem; margin-left: -.5rem; bottom: .75rem; }
@media (min-width: 40rem) {
  .fic-fiche--grande { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: clamp(1.1rem, 2.5vw, 1.8rem); }
  .fic-fiche--rangee { grid-template-columns: 6.4rem minmax(0, 1fr); }
}

/* ------------------------------------------------------------------ nouvelles fiches */
.fic-nouvelles { padding-block: calc(var(--pas) * 1.4) var(--pas); }
.fic-nouvelles__table { display: grid; gap: 1.3rem; margin-bottom: 1.3rem; }
.fic-nouvelles__pile { display: grid; gap: .9rem; align-content: start; }
@media (min-width: 60rem) {
  .fic-nouvelles__table { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); align-items: start; gap: 1.6rem; }
  .fic-nouvelles__table > .fic-fiche:only-child { grid-column: 1 / -1; }
}
/* rangées de fiches et d'autres tiroirs : jamais une fiche orpheline ni une rangée trouée. Deux colonnes : la dernière
   fiche d'un nombre impair prend la rangée. Trois colonnes, posées sur six pistes (chaque fiche en couvre deux) :
   un reste de deux se partage la dernière rangée, un reste d'un fait deux rangées de deux, une fiche seule prend la
   moitié de la rangée. */
@media (min-width: 48rem) {
  .fic-nouvelles__pile--large, .fic-autres { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fic-nouvelles__pile--large { gap: 1.2rem; }
}
@media (min-width: 48rem) and (max-width: 71.99rem) {
  :is(.fic-nouvelles__pile--large, .fic-autres) > :last-child:nth-child(odd) { grid-column: 1 / -1; }
}
@media (min-width: 72rem) {
  .fic-nouvelles__pile--large, .fic-autres { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  :is(.fic-nouvelles__pile--large, .fic-autres) > * { grid-column: span 2; }
  :is(.fic-nouvelles__pile--large, .fic-autres) > :is(:nth-child(3n+1):nth-last-child(2), :nth-child(3n+2):last-child,
    :nth-child(3n+1):nth-last-child(4), :nth-child(3n+2):nth-last-child(3), :nth-child(3n+3):nth-last-child(2), :nth-child(3n+4):last-child,
    :only-child) { grid-column: span 3; }
}

/* ------------------------------------------------------------------ le fichier : les tiroirs */
.fic-meuble { padding-block: calc(var(--pas) * 1.6) calc(var(--pas) * 1.2); }
.fic-meuble__tiroirs { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); gap: 3rem 1.4rem; padding-top: .4rem; }
.fic-tiroir { position: relative; grid-column: span 12; display: grid; align-content: start; gap: 1.3rem 1.8rem; padding: 1.9rem clamp(1rem, 2.4vw, 1.7rem) 1.5rem; background: var(--tiroir); border-top: 1px solid var(--laiton); }
.fic-tiroir:not(:has(> .fic-tiroir__fiches)) { align-self: start; }
.fic-tiroir__facade { display: grid; justify-items: start; align-content: start; min-width: 0; }
.fic-tiroir__facade .fic-porte-etiquette { margin-bottom: 1rem; }
.fic-tiroir__question { margin: 0 0 .7rem; max-width: 46ch; font-size: 1rem; line-height: 1.6; }
.fic-tiroir__compte { display: flex; flex-wrap: wrap; gap: .1rem 1rem; margin: 0 0 .9rem; color: var(--plomb); font-size: .86rem; }
.fic-tiroir__ouvrir { margin: 0; font: 600 1rem/1.3 var(--titre-police); }
.fic-tiroir__ouvrir a::after { content: " ›"; }
.fic-tiroir__fiches { display: grid; gap: .8rem; margin: 0; padding: 0; list-style: none; min-width: 0; }
.fic-voir-aussi { margin: 0 0 1rem; padding: .55rem .75rem .6rem; border: 1px solid color-mix(in srgb, var(--plomb) 55%, var(--tiroir)); color: var(--plomb); font-size: .84rem; line-height: 1.5; }
.fic-voir-aussi__mot { display: block; color: var(--trace); font: 600 .78rem/1.3 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
/* façade et fiches côte à côte seulement quand le tiroir montre des fiches : sans elles, la seconde colonne restait vide */
@media (min-width: 40rem) and (max-width: 59.99rem) {
  .fic-tiroir:has(> .fic-tiroir__fiches) { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
}
@media (min-width: 60rem) {
  .fic-tiroir--empan-4 { grid-column: span 4; }
  .fic-tiroir--empan-5 { grid-column: span 5; }
  .fic-tiroir--empan-7 { grid-column: span 7; }
  .fic-tiroir--empan-8 { grid-column: span 8; }
  .fic-tiroir--empan-12:has(> .fic-tiroir__fiches) { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
  :is(.fic-tiroir--empan-4, .fic-tiroir--empan-5):has(> .fic-tiroir__fiches) { grid-template-columns: minmax(0, 1fr); }
  /* tiroir seul en pleine largeur : la fiche ouverte tient deux rangées, les fiches courtes s'empilent à côté
     (la seconde colonne ne portait qu'une fiche courte, le reste en blanc) ; une fiche seule prend la largeur */
  .fic-tiroir--empan-12 .fic-tiroir__fiches { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: auto 1fr; align-items: start; }
  .fic-tiroir--empan-12 .fic-tiroir__fiches > li:first-child:not(:only-child) { grid-row: span 2; }
  .fic-tiroir--empan-12 .fic-tiroir__fiches > li:only-child { grid-column: 1 / -1; }
}

/* un tiroir de 7 ou 8 colonnes ne partage sa largeur entre façade et fiches qu'à partir de 72 rem : entre 60 et 72,
   la façade tombait à 190 px et l'étiquette du tiroir se cassait en syllabes (« WERKZEUG DER WERKBANK ») */
@media (min-width: 72rem) {
  :is(.fic-tiroir--empan-7, .fic-tiroir--empan-8):has(> .fic-tiroir__fiches) { grid-template-columns: minmax(0, 2fr) minmax(0, 3fr); }
}

/* ------------------------------------------------------------------ registre des sources consultées */
.fic-registre { margin-block: calc(var(--pas) * 1.2) 0; padding-block: calc(var(--pas) * 1.6) calc(var(--pas) * 1.2); background: var(--tiroir); }
.fic-registre__note { max-width: 62ch; color: var(--plomb); font-size: .92rem; }
.fic-registre__liste { margin: 0; padding: 0; list-style: none; }
.fic-registre__domaine { display: grid; gap: .2rem 2rem; padding-block: .8rem .7rem; border-top: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--tiroir)); }
.fic-registre__hote { margin: 0; font: 600 1.04rem/1.35 var(--titre-police); }
.fic-registre__adresses { margin: 0; padding: 0; list-style: none; }
.fic-registre__adresses li { display: grid; justify-items: start; gap: .1rem; padding-block: .12rem; }
.fic-registre__lue { color: var(--plomb); font-size: .84rem; }
.fic-registre__lue .fic-tape > span { white-space: nowrap; }  /* une cote ne se coupe pas à son trait d'union (« OU- / 007 ») */
@media (min-width: 48rem) { .fic-registre__domaine { grid-template-columns: 15rem minmax(0, 1fr); } }

/* ------------------------------------------------------------------ renvois (section réseau) */
.fic-renvois { padding-block: calc(var(--pas) * 1.6) var(--pas); }
.fic-renvois__phrase { max-width: 62ch; color: var(--plomb); }
.fic-renvois__liste { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; }
.fic-renvois__liste li { padding-block: .7rem .6rem; border-top: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--nuit)); }
.fic-renvois__liste p { margin: 0; max-width: 70ch; }
@media (min-width: 60rem) { .fic-renvois__liste { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 2.4rem; } }

/* ------------------------------------------------------------------ façade de tiroir (rubrique) et autres tiroirs */
.fic-facade { padding-block: 2.4rem 1rem; }
.fic-facade__rang { position: relative; display: grid; justify-items: center; padding: 2.2rem clamp(1rem, 3vw, 2.4rem) 1.6rem; background: var(--tiroir); border-top: 1px solid var(--laiton); text-align: center; }
.fic-facade__rang .fic-porte-etiquette { margin-bottom: 1.2rem; }
.fic-facade h1 { max-width: 20ch; }
.fic-facade__question { max-width: 52ch; font-size: clamp(1.02rem, .98rem + .25vw, 1.16rem); }
.fic-facade .fic-tiroir__compte { justify-content: center; }
.fic-facade .fic-voir-aussi { max-width: 52ch; }
.fic-autres { display: grid; gap: 2.4rem 1.2rem; margin: .6rem 0 2rem; padding: 0; list-style: none; }
.fic-autres__tiroir { position: relative; display: grid; align-content: start; gap: .3rem; padding: 1.7rem 1.2rem 1.1rem; background: var(--tiroir); border-top: 1px solid var(--laiton); }
.fic-autres__lien { max-width: calc(100% - 4.4rem); font: 600 1.28rem/1.2 var(--titre-police); }
.fic-autres__question { font-size: .9rem; line-height: 1.55; }
.fic-autres__tiroir > .fic-tape { color: var(--plomb); font-size: .8rem; }

/* ------------------------------------------------------------------ la réponse (article) */
.fic-reponse__entete { padding-block: 2.6rem 2rem; }
.fic-reponse__rang { position: relative; display: grid; gap: 1.5rem 2.4rem; padding: 2.1rem clamp(.8rem, 3vw, 2.4rem) 2rem; background: var(--tiroir); border-top: 1px solid var(--laiton); }
.fic-fiche--entete { padding: 1.3rem clamp(1rem, 3vw, 2.1rem) 2.7rem; }
.fic-fiche--entete h1 { max-width: 22ch; margin-bottom: .6rem; font-size: clamp(1.9rem, 1.35rem + 2.4vw, 3.3rem); }
.fic-reponse__chapo { max-width: 60ch; margin: 0 0 1.1rem; font-size: clamp(1.02rem, .98rem + .25vw, 1.15rem); line-height: 1.62; }
.fic-reponse__champs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; border-top: 1px solid var(--tampon); }
/* les champs se rangent sur la largeur de la fiche (conteneur), pas de l'écran : deux colonnes, puis trois sur six
   pistes (un reste de deux partage la rangée), puis tous sur une ligne ; jamais un champ seul sous quatre autres */
.fic-fiche--entete { container-type: inline-size; }
.fic-reponse__champs > div:last-child:nth-child(odd) { grid-column: 1 / -1; }
@container (min-width: 30rem) {
  .fic-reponse__champs { grid-template-columns: repeat(6, minmax(0, 1fr)); }
  .fic-reponse__champs > div, .fic-reponse__champs > div:last-child:nth-child(odd) { grid-column: span 2; }
  .fic-reponse__champs > div:is(:nth-child(3n+1):nth-last-child(2), :nth-child(3n+2):last-child) { grid-column: span 3; }
}
@container (min-width: 44rem) {
  .fic-reponse__champs { grid-template-columns: none; grid-auto-flow: column; grid-auto-columns: minmax(0, 1fr); }
  .fic-reponse__champs > div:is(:nth-child(n):nth-last-child(n)) { grid-column: auto; }
}
.fic-reponse__champs div { padding: .45rem .7rem .4rem 0; border-bottom: 1px dotted var(--encre); }
.fic-reponse__champs dt { font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; }
.fic-reponse__champs dd { margin: 0; font-size: 1rem; }
.fic-planche { width: min(100%, 20rem); margin: 0; }
.fic-planche .fic-cliche img { border: 1px solid var(--laiton); }
.fic-planche__legende { margin-top: .45rem; color: var(--plomb); font-size: .8rem; line-height: 1.5; }
.fic-reponse__plan { display: grid; gap: 2.4rem; padding-block: .4rem 2rem; }
.fic-feuillet { min-width: 0; max-width: var(--mesure); }
.fic-feuillet__usage { margin: 0 0 1.8rem; padding: .8rem 1rem .9rem; background: var(--bristol); color: var(--encre); border-radius: var(--rayon); font-size: 1rem; line-height: 1.6; }
.fic-feuillet__usage-mot { display: block; margin-bottom: .4rem; padding-bottom: .28rem; border-bottom: 1px solid var(--tampon); font: 600 .78rem/1.3 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-feuillet__texte > p:first-child { font-size: 1.08em; }
.fic-feuillet__texte h2 { margin: 2.4rem 0 .8rem; padding-top: 1rem; border-top: 1px solid var(--laiton); font-size: clamp(1.35rem, 1.18rem + .75vw, 1.8rem); scroll-margin-top: 1rem; }
.fic-feuillet__texte h3 { margin: 1.8rem 0 .5rem; color: var(--laiton); }
.fic-feuillet__texte ul, .fic-feuillet__texte ol { padding-left: 1.3rem; }
.fic-feuillet__texte li { margin-bottom: .35rem; }
.fic-feuillet__texte li::marker { color: var(--laiton); }
.fic-feuillet__texte table { display: block; max-width: 100%; overflow-x: auto; margin: 0 0 var(--pas); border-collapse: collapse; font-size: .9rem; }
.fic-feuillet__texte th, .fic-feuillet__texte td { padding: .45rem .8rem .4rem 0; border-bottom: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--nuit)); text-align: left; vertical-align: top; }
.fic-feuillet__texte th { color: var(--laiton); font: 600 .95rem/1.3 var(--titre-police); border-bottom-color: var(--laiton); }
.fic-feuillet__texte code { font-family: var(--machine-police); font-size: .88em; }
.fic-feuillet__texte pre { max-width: 100%; overflow-x: auto; }
.fic-feuillet__texte :is(iframe, video, embed, object, svg) { max-width: 100%; }
.fic-feuillet__texte blockquote { margin: 0 0 var(--pas); padding: .2rem 0 .2rem 1.2rem; border-left: 1px solid var(--laiton); color: var(--plomb); }
.fic-feuillet__retour { margin: 2.2rem 0 0; padding-top: .9rem; border-top: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--nuit)); font: 600 1rem/1.3 var(--titre-police); }
.fic-marge { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; gap: 1.8rem; min-width: 0; }
.fic-marge > * { min-width: 0; }
.fic-marge__bloc .fic-porte-etiquette { margin-bottom: .8rem; font-size: .84rem; }
.fic-marge__sommaire, .fic-marge__sources { margin: 0; padding: 0; list-style: none; font-size: .88rem; line-height: 1.5; }
.fic-marge__sommaire li, .fic-marge__sources li { padding-block: .5rem .45rem; border-top: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--nuit)); }
.fic-marge__sommaire a { text-decoration: none; overflow-wrap: anywhere; hyphens: auto; }
.fic-brouillon__liste li, .fic-fiche__questions a, .fic-tiroir__question, .fic-autres__lien, .fic-autres__question, .fic-suite__titre, .fic-registre__hote, .fic-marge__hote, .fic-colophon__liste a { overflow-wrap: anywhere; }
.fic-marge__sommaire a:hover { text-decoration: underline; }
.fic-marge__sources a { display: grid; text-decoration: none; }
.fic-marge__sources a:hover .fic-tape { text-decoration: underline; }
.fic-marge__sources li > span { display: grid; }
.fic-marge__hote { color: var(--trace); font: 600 .98rem/1.35 var(--titre-police); }
.fic-marge__sources .fic-tape { color: var(--laiton); font-size: .8rem; }
.fic-marge__sources li > span .fic-tape { color: var(--plomb); }
.fic-brouillon--marge { margin-top: 0; }
@media (min-width: 46rem) and (max-width: 55.99rem) {
  .fic-reponse__rang:has(> .fic-planche) { grid-template-columns: minmax(0, 1fr) 13rem; align-items: start; }
  .fic-reponse__rang > .fic-planche { width: 100%; margin-top: .4rem; }
}
@media (min-width: 56rem) {
  .fic-reponse__rang { grid-template-columns: minmax(0, 1fr) 16rem; align-items: start; }
  .fic-reponse--service .fic-reponse__rang { grid-template-columns: minmax(0, 1fr); margin-inline-start: calc((100% - min(100% - 2rem, var(--large))) / 2); }
  .fic-planche { width: 100%; margin-top: .4rem; }
}
@media (min-width: 64rem) { .fic-reponse__plan { grid-template-columns: minmax(0, 1fr) 18.5rem; gap: 3.6rem; } }

/* fiche précédente et suivante du tiroir */
.fic-suite { display: grid; gap: 1rem; padding-block: .6rem 2.2rem; }
.fic-suite__lien { display: grid; grid-template-columns: 4.6rem minmax(0, 1fr); gap: 1rem; align-items: start; padding: 1rem 1.1rem; background: var(--tiroir); border-top: 1px solid var(--laiton); color: var(--trace); text-decoration: none; }
.fic-suite__lien:hover { color: var(--laiton); }
.fic-suite__planche { margin: 0; }
.fic-suite__planche .fic-fiche__legende { color: var(--plomb); }
.fic-suite__texte { display: grid; gap: .2rem; }
.fic-suite__sens { color: var(--plomb); font-size: .74rem; letter-spacing: .1em; text-transform: uppercase; }
.fic-suite__titre { font: 600 1.1rem/1.25 var(--titre-police); }
@media (min-width: 48rem) {
  .fic-suite { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fic-suite__lien--apres { grid-column: 2; grid-template-columns: minmax(0, 1fr) 4.6rem; text-align: right; }
  .fic-suite__lien--apres .fic-suite__planche { order: 2; }
  .fic-suite__lien--apres .fic-fiche__legende { justify-content: flex-end; }
}

/* ------------------------------------------------------------------ geste E : colophon en trois colonnes et brouillon */
.fic-colophon { margin-top: calc(var(--pas) * 2); padding-block: 2.4rem 1.4rem; background: var(--nuit); border-top: 3px double var(--laiton); font-size: .9rem; line-height: 1.6; }
.fic-colophon__colonnes { display: grid; gap: 2rem 2.6rem; }
.fic-colophon__colonne { min-width: 0; }
.fic-colophon__colonne .fic-porte-etiquette { margin-bottom: .9rem; font-size: .8rem; }
.fic-colophon__marque { display: flex; align-items: center; gap: .7rem; margin-bottom: .8rem; }
.fic-monogramme--colophon { width: 2.3rem; height: 2.3rem; }
.fic-colophon__bornes { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem 1rem; margin: 0; }
.fic-colophon__bornes dt { color: var(--plomb); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }
.fic-colophon__bornes dd { margin: 0; }
.fic-colophon__liste { margin: 0; padding: 0; list-style: none; }
.fic-colophon__liste li { display: flex; flex-wrap: nowrap; align-items: baseline; justify-content: space-between; gap: 0 1rem; padding-block: .38rem .32rem; border-top: 1px solid color-mix(in srgb, var(--plomb) 40%, var(--nuit)); }
.fic-colophon__liste a { display: inline-flex; gap: .5rem; min-width: 0; text-decoration: none; }
.fic-colophon__liste .fic-tape, .fic-colophon__liste .fic-onglets__numero { flex: none; }
.fic-colophon__liste a:hover { text-decoration: underline; }
.fic-colophon__liste .fic-tape { color: var(--plomb); }
.fic-brouillon { margin-top: 2.2rem; padding: 1rem 1.2rem .9rem; background: var(--tiroir); border: 1px dashed var(--plomb); border-radius: var(--rayon); }
.fic-brouillon__titre { margin: 0 0 .5rem; color: var(--laiton); font: 600 .86rem/1.3 var(--titre-police); letter-spacing: .08em; text-transform: uppercase; }
.fic-brouillon__liste { margin: 0; padding: 0; list-style: none; color: var(--plomb); font-size: .86rem; line-height: 1.55; }
.fic-brouillon__liste li { break-inside: avoid; margin-bottom: .55rem; }
.fic-colophon__ligne { margin-top: 1.4rem; margin-bottom: 0; color: var(--plomb); font-size: .8rem; }
/* trois colonnes à partir de 64 rem ; entre 48 et 64, le bureau en tête et les deux listes côte à côte (en trois
   colonnes à 768 px, l'étiquette « DER ZETTELKATALOG » tenait dans 110 px et se cassait en trois lignes) */
@media (min-width: 48rem) {
  .fic-colophon__colonnes { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .fic-colophon__colonne:first-child { grid-column: 1 / -1; }
  .fic-colophon__colonne + .fic-colophon__colonne + .fic-colophon__colonne { padding-left: 2.6rem; border-left: 1px solid color-mix(in srgb, var(--laiton) 45%, var(--nuit)); margin-left: -1.3rem; }
  .fic-colophon .fic-brouillon > .fic-brouillon__liste { columns: 2; column-gap: 2.4rem; }
}
@media (min-width: 64rem) {
  .fic-colophon__colonnes { grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) minmax(0, 1fr); }
  .fic-colophon__colonne:first-child { grid-column: auto; }
  .fic-colophon__colonne + .fic-colophon__colonne { padding-left: 2.6rem; border-left: 1px solid color-mix(in srgb, var(--laiton) 45%, var(--nuit)); margin-left: -1.3rem; }
}

/* ------------------------------------------------------------------ 404 : la fiche fantôme */
.fic-fantome { padding-block: clamp(2.4rem, 6vw, 4rem) 1rem; }
.fic-fantome__place { position: relative; padding: 1.6rem clamp(1rem, 4vw, 2.6rem) 3rem; border: 2px dashed var(--plomb); border-radius: var(--rayon); text-align: center; }
.fic-fantome__place::after { content: ""; position: absolute; left: 50%; bottom: .9rem; width: 1rem; height: 1rem; margin-left: -.5rem; background: var(--plomb); clip-path: circle(50%); }
.fic-fantome__cote { margin: .8rem 0 .2rem; color: var(--laiton); font-size: clamp(3.6rem, 2.6rem + 5vw, 6.4rem); line-height: 1; letter-spacing: .06em; }
.fic-fantome__cote .fic-tape { font-size: 1em; }
.fic-fantome h1 { font-size: clamp(1.8rem, 1.4rem + 1.8vw, 2.6rem); }
.fic-fantome__phrase { max-width: 44ch; margin-inline: auto; }
.fic-fantome__texte p { margin-bottom: 0; color: var(--plomb); }

/* ------------------------------------------------------------------ mobile étroit */
@media (max-width: 30rem) {
  .fic-porte-etiquette__carton { border-inline-width: .8rem; padding-inline: .6rem; }
  .fic-porte-etiquette__carton::before { left: calc(-.4rem - 3px); }
  .fic-porte-etiquette__carton::after { right: calc(-.4rem - 3px); }
  .fic-numero-laiton { font-size: 2rem; }
  .fic-onglets__lien { padding-inline: .7rem; font-size: .92rem; }
  .fic-fiche--rangee { grid-template-columns: 4.8rem minmax(0, 1fr); }
  .fic-tiroir, .fic-reponse__rang { padding-inline: .8rem; }
  .fic-fiche--entete { padding-inline: .9rem; }
}

/* couleur par tiroir : --fic-rc est posée en ligne sur le li de l'onglet (elle l'était sur le lien voisin : le numéro,
   hors de sa portée, perdait le laiton). Le numéro reste au laiton (contraste tenu sur le sombre) et la couleur du
   tiroir se lit en filet sous lui : une couleur de rubrique sombre sur le tiroir tomberait sous 4,5:1. */
.fic-onglets__liste li .fic-onglets__numero{color:var(--laiton);margin-left:clamp(.7rem,1.8vw,1.1rem);padding-bottom:.18rem;border-bottom:3px solid var(--fic-rc,transparent)}
.fic-planche__humaine{font-weight:400}

/* ------------------------------------------------------------------ fourche « marée de Chesapeake » (fishfearus.com) */
body{background:linear-gradient(180deg,#0d1b21 0%,#0f2229 42%,#0d1b21 100%);line-height:1.7}
.fic-guichet{background:linear-gradient(180deg,#132a33,#0f242c);box-shadow:0 10px 28px rgba(3,10,14,.55)}
.fic-guichet__nom{font-size:clamp(1.3rem,1.12rem+.7vw,1.7rem);text-shadow:0 1px 0 rgba(0,0,0,.45)}
.fic-guichet__devise{color:var(--canard)}
.fic-monogramme__facade{fill:#123039}
.fic-monogramme__cadre{fill:var(--laiton)}
.fic-monogramme__poignee{stroke:var(--laiton)}
.fic-onglets{background:#123039;box-shadow:0 6px 18px rgba(3,10,14,.45)}
.fic-onglets__liste li{border-right-color:rgba(226,166,61,.35)}
.fic-onglets__liste li:first-child{border-left-color:rgba(226,166,61,.35)}
.fic-onglets__lien{border-radius:10px 10px 0 0;transition:background .18s ease,color .18s ease}
.fic-onglets__liste li{transition:background .18s ease}
.fic-onglets__liste li:hover,.fic-onglets__liste li:has(> .fic-onglets__lien[aria-current]){background:#0d1b21}
.fic-onglets__liste li:has(> .fic-onglets__lien[aria-current]){box-shadow:inset 0 -3px 0 var(--laiton)}
.fic-onglets__lien:hover,.fic-onglets__lien[aria-current]{background:transparent}
.fic-guichet__rang,.fic-onglets__liste{flex-wrap:wrap}
.fic-consultation{padding-block:clamp(2.4rem,6vw,4.2rem) clamp(1.8rem,4vw,3rem)}
.fic-consultation__rang{gap:2.2rem 3.6rem}
.fic-consultation h1{text-shadow:0 3px 16px rgba(0,0,0,.5);letter-spacing:-.018em}
.fic-consultation__intro{max-width:52ch;color:#dde8e4}
.fic-consultation__note{background:linear-gradient(180deg,#173843,#132c35);border-top:3px solid var(--canard);border-radius:16px;box-shadow:0 14px 30px rgba(3,10,14,.5);padding:1.15rem 1.3rem 1.25rem}
.fic-consultation__note-titre{color:var(--canard);font-size:1.08rem}
.fic-bordereau{background:linear-gradient(170deg,#fbf5e6,#e9dfc6);border-radius:16px;box-shadow:0 18px 40px rgba(3,10,14,.55),0 2px 0 rgba(255,255,255,.5) inset}
.fic-bordereau__titre{border-bottom:3px double var(--tampon);color:#1c2c33}
.fic-bordereau__champs div{border-bottom:1px dotted rgba(18,32,41,.45)}
.fic-porte-etiquette__carton{border-color:var(--laiton);background:linear-gradient(180deg,#fbf5e6,#ece2cb);border-radius:12px;box-shadow:0 6px 16px rgba(3,10,14,.4)}
.fic-porte-etiquette--tiroir .fic-porte-etiquette__carton{background:linear-gradient(180deg,#efb955,#d99a2c);color:#10222a;border-color:#0d1b21;box-shadow:0 8px 20px rgba(3,10,14,.45)}
.fic-porte-etiquette--tiroir::after{border-color:var(--laiton)}
.fic-intitule{border-bottom:2px solid var(--laiton)}
.fic-intitule__note{color:var(--canard)}
.fic-numero-laiton{color:var(--laiton);text-shadow:0 2px 8px rgba(0,0,0,.5)}
.fic-fiche{background:linear-gradient(175deg,#fbf5e6,#e9dfc6);border-radius:16px;box-shadow:0 14px 34px rgba(3,10,14,.45),0 1px 0 rgba(255,255,255,.65) inset;border:1px solid rgba(18,32,41,.12)}
.fic-fiche--grande{border-radius:18px;box-shadow:0 24px 54px rgba(3,10,14,.6),0 1px 0 rgba(255,255,255,.65) inset}
.fic-fiche--courte,.fic-fiche--rangee{border-radius:14px;box-shadow:0 10px 24px rgba(3,10,14,.4),0 1px 0 rgba(255,255,255,.6) inset}
.fic-fiche--entete{border-radius:18px;box-shadow:0 22px 50px rgba(3,10,14,.6),0 1px 0 rgba(255,255,255,.7) inset}
.fic-fiche__tete{background:linear-gradient(180deg,#cf5734,#ab3c20);border-radius:10px;letter-spacing:.09em}
.fic-fiche__titre{letter-spacing:-.012em}
.fic-fiche--grande .fic-fiche__titre,.fic-fiche--entete h1,.fic-facade h1,.fic-fantome h1,.fic-consultation h1{font-family:var(--titre-police)}
.fic-fiche__questions-mot{border-bottom:2px solid var(--tampon)}
.fic-fiche__titre:first-child{border-bottom:2px solid var(--tampon)}
.fic-cliche img{transition:transform .35s ease}
.fic-cliche{border-radius:12px;overflow:hidden}
.fic-cliche--portrait img,.fic-cliche--paysage img{background:#123039}
.fic-fiche .fic-cliche{border-radius:12px;overflow:hidden;box-shadow:0 6px 16px rgba(3,10,14,.35)}
.fic-fiche .fic-cliche img{border:0}
.fic-planche .fic-cliche{border-radius:14px;box-shadow:0 16px 38px rgba(3,10,14,.55)}
.fic-planche .fic-cliche img{border:0}
.fic-planche__legende{color:var(--plomb)}
.fic-tiroir{background:linear-gradient(180deg,#173039,#13262e);border-top:2px solid var(--laiton);border-radius:18px;box-shadow:0 18px 44px rgba(3,10,14,.5);padding-top:2.1rem}
.fic-tiroir__question{color:#dce8e3}
.fic-tiroir__compte{color:var(--canard)}
.fic-tiroir__ouvrir a{color:var(--laiton)}
.fic-tiroir__ouvrir a:hover{color:var(--canard)}
.fic-voir-aussi{border-color:rgba(63,191,176,.5);border-radius:12px;background:rgba(63,191,176,.08)}
.fic-voir-aussi__mot{color:var(--canard)}
.fic-nouvelles__pile,.fic-tiroir__fiches{gap:.95rem}
.fic-meuble{padding-block:calc(var(--pas)*1.8) calc(var(--pas)*1.4)}
.fic-meuble__tiroirs{gap:3.2rem 1.5rem}
.fic-registre{background:linear-gradient(180deg,#152a33,#11222a);border-radius:22px 22px 0 0;box-shadow:0 -14px 34px rgba(3,10,14,.35)}
.fic-registre__note{color:var(--plomb)}
.fic-registre__domaine{border-top-color:rgba(163,182,181,.4)}
.fic-registre__hote{color:var(--canard)}
.fic-registre__adresses a{color:var(--laiton)}
/* registre en deux temps : l'intitulé et la note à gauche, la liste des sources dans la colonne de lecture à droite
   (la liste ne court plus sur toute la largeur du fichier) */
.fic-registre__liste{max-width:42rem}
@media (min-width:60rem){
  .fic-registre>.fic-largeur{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,42rem);column-gap:clamp(2rem,5vw,4.5rem);align-items:start}
  .fic-registre>.fic-largeur>*{grid-column:1}
  .fic-registre>.fic-largeur>.fic-registre__liste{grid-column:2;grid-row:1 / span 3}
  .fic-registre__domaine{grid-template-columns:12rem minmax(0,1fr)}
}
.fic-renvois__liste li{border-top-color:rgba(163,182,181,.35)}
.fic-renvois__phrase{color:var(--plomb)}
.fic-facade__rang{background:linear-gradient(180deg,#173039,#12262e);border-top:3px solid var(--laiton);border-radius:20px;box-shadow:0 20px 48px rgba(3,10,14,.5)}
.fic-facade h1{text-shadow:0 3px 14px rgba(0,0,0,.45)}
.fic-autres__tiroir{background:linear-gradient(180deg,#173039,#12262e);border-top:2px solid var(--laiton);border-radius:16px;box-shadow:0 14px 32px rgba(3,10,14,.45)}
.fic-autres__lien{color:var(--trace)}
.fic-autres__lien:hover{color:var(--laiton)}
.fic-autres__tiroir>.fic-tape{color:var(--canard)}
.fic-reponse__rang{background:linear-gradient(180deg,#173039,#12262e);border-top:3px solid var(--laiton);border-radius:22px;box-shadow:0 22px 52px rgba(3,10,14,.55)}
.fic-reponse__chapo{color:#e2ece7}
.fic-fiche .fic-reponse__chapo{color:#33444c}
.fic-reponse__champs{border-top-color:var(--tampon)}
.fic-reponse__champs div{border-bottom:1px dotted rgba(18,32,41,.45)}
.fic-feuillet{max-width:68ch}
.fic-feuillet__text{max-width:68ch}
.fic-feuillet__texte{max-width:68ch}
.fic-feuillet__usage{background:linear-gradient(180deg,#fbf5e6,#ece2cb);border-radius:14px;box-shadow:0 10px 26px rgba(3,10,14,.35)}
.fic-feuillet__usage-mot{border-bottom:2px solid var(--tampon);color:#1c2c33}
.fic-feuillet__texte h2{margin:2.6rem 0 .9rem;border-top:2px solid var(--laiton);color:var(--trace)}
.fic-feuillet__texte h3{color:var(--canard)}
.fic-feuillet__texte p,.fic-feuillet__texte li{color:#e9f0ec;max-width:68ch}
.fic-feuillet__texte a{color:var(--canard);text-decoration-color:var(--laiton)}
.fic-feuillet__texte a:hover{color:var(--laiton)}
.fic-feuillet__texte li::marker{color:var(--canard)}
.fic-feuillet__texte blockquote{border-left:3px solid var(--canard);background:rgba(63,191,176,.07);border-radius:0 12px 12px 0;padding:.9rem 1.1rem;color:#dce8e4}
.fic-feuillet__texte th{color:var(--canard);border-bottom-color:var(--canard)}
.fic-feuillet__texte th,.fic-feuillet__texte td{border-bottom-color:rgba(163,182,181,.35)}
.fic-feuillet__retour{border-top-color:rgba(163,182,181,.35)}
.fic-suite__lien{border-radius:16px;border-top:2px solid var(--laiton);background:linear-gradient(180deg,#173039,#12262e);box-shadow:0 12px 28px rgba(3,10,14,.45)}
.fic-suite__lien:hover{background:#1b3843}
.fic-suite__planche .fic-cliche{border-radius:10px;box-shadow:0 6px 16px rgba(3,10,14,.4)}
.fic-marge__bloc .fic-porte-etiquette{font-size:.82rem}
.fic-marge__sommaire li,.fic-marge__sources li{border-top-color:rgba(163,182,181,.3)}
.fic-marge__hote{color:var(--canard)}
.fic-marge__sources a .fic-tape{color:var(--laiton)}
.fic-brouillon{background:linear-gradient(180deg,#173039,#12262e);border:1px dashed rgba(63,191,176,.55);border-radius:14px;box-shadow:0 10px 24px rgba(3,10,14,.35)}
.fic-brouillon__titre{color:var(--canard)}
.fic-colophon{border-top:3px double var(--laiton);background:linear-gradient(180deg,#0d1b21,#0b171d);box-shadow:0 -10px 30px rgba(0,0,0,.4)}
.fic-colophon__colonne .fic-porte-etiquette__carton{border-radius:12px}
.fic-colophon__bornes dt{color:var(--canard)}
.fic-colophon__liste li{border-top-color:rgba(163,182,181,.3)}
.fic-colophon__liste a{color:var(--laiton)}
.fic-colophon__marque .fic-guichet__nom{text-shadow:0 1px 0 rgba(0,0,0,.45)}
.fic-colophon__ligne{color:var(--plomb)}
.fic-chemin ol{gap:.2rem .6rem;color:var(--plomb)}
.fic-chemin a{color:var(--canard)}
.fic-fantome__place{border:2px dashed rgba(63,191,176,.55);border-radius:20px;background:linear-gradient(180deg,rgba(63,191,176,.06),transparent)}
.fic-fantome__cote{color:var(--laiton);text-shadow:0 4px 18px rgba(0,0,0,.5)}
.fic-fantome__texte p{color:var(--plomb)}
.fic-tape{color:var(--plomb)}
.fic-fiche .fic-tape{color:#5d6b6d}
.fic-fiche__legende .fic-tape{color:#5d6b6d}
@media (min-width:60rem){.fic-consultation__rang{align-items:start}.fic-bordereau{align-self:start;margin-top:4.4rem;position:sticky;top:1.5rem}}
@media (max-width:30rem){.fic-onglets__lien{padding-inline:.7rem}.fic-fiche--entete{padding-inline:1rem}.fic-fiche{padding:.85rem .9rem 2rem}.fic-consultation h1{font-size:clamp(1.9rem,1.5rem+4vw,2.6rem)}}
@media (prefers-reduced-motion:no-preference){.fic-fiche:hover .fic-cliche img{transform:scale(1.03)}}
/* Photo-first repair */
.fic-consultation__planche{margin:0 0 1.1rem;border-radius:14px;overflow:hidden}
.fic-consultation__planche img{aspect-ratio:16/9;object-fit:cover;border-radius:14px;box-shadow:0 18px 40px rgba(3,10,14,.55)}
.fic-consultation__planche a{display:block}
.fic-consultation__legende{display:flex;flex-wrap:wrap;align-items:baseline;gap:.15rem .7rem;margin-top:.55rem;font-size:.82rem;line-height:1.4}
.fic-consultation__legende .fic-onglets__numero{color:var(--laiton)}
.fic-consultation__legende a{color:var(--canard);text-decoration:none}
.fic-consultation__legende a:hover{text-decoration:underline;color:var(--laiton)}
.fic-consultation__legende-titre{font:600 1rem/1.25 var(--titre-police);color:var(--trace)}
.fic-consultation__legende-humaine{color:var(--plomb);font-size:.8rem}
@media (min-width:60rem){.fic-consultation__planche{margin-bottom:1.4rem}}
@media (max-width:47.99rem){.fic-consultation__planche img{aspect-ratio:4/3}.fic-consultation__legende-titre{font-size:.95rem}}
.fic-planche__credit{display:block;margin-top:.25rem;color:var(--plomb);font-size:.72rem;letter-spacing:.02em}
.fic-fiche__planche{}.fic-fiche--courte .fic-cliche img{aspect-ratio:3/4;object-fit:cover}
/* Les fiches hors sujet : rangées au bas de l'accueil, sans la mise en fiche des tiroirs (bibliothèque, 23/09/2026) */
.fic-meuble--hors{margin-top:2.2rem}
.fic-hors__liste{list-style:none;margin:0;padding:0;columns:2 17rem;column-gap:2.4rem}
.fic-hors__liste li{break-inside:avoid;margin:0 0 .55rem;font-size:.92rem;line-height:1.45}
.fic-hors__meta{display:block;font-size:.8em;color:var(--plomb)}
.fic-hors__meta a{color:inherit}
