@charset "UTF-8";
:root {
  /* — Fond principal (brief : #1F3A5F → #16213E) — */
  --navy-500:#1F3A5F;
  --navy-600:#1A2E4A;
  --navy-700:#16213E;
  --navy-800:#0F1729;
  --navy-400:#2A4C77;
  --navy-300:#2A3A4D;
  --ink-900:#080C12;
  --ink-800:#0B131C;
  --ink-700:#141C26;
  --ink-600:#1B2530;
  --ink-500:#26323F;
  --slate-400:#6E8398;
  --slate-300:#9FB0C4;
  --slate-200:#C3CEDA;
  /* — Papier vieilli & carton (couche « archive ») — */
  --paper-100:#F5F5DC;
  --paper-200:#DCD7BC;
  --kraft-400:#C8B48A;
  --kraft-600:#8A7855;
  /* — Or : matricules, boutons primaires, éléments importants — */
  --gold-400:#FFE356;
  --gold-500:#FFD700;
  --gold-600:#C9A227;
  --gold-700:#8F6F13;
  --gold-ink:#16213E;
  /* — Rouge alerte (bordeaux) — */
  --red-400:#B82626;
  --red-500:#8B0000;
  --red-700:#4D0000;
  /* — Vert succès — */
  --green-400:#6FCF77;
  --green-500:#4CAF50;
  --green-700:#2E6B32;
  /* — Orange « mal placé » / délit secondaire — */
  --orange-500:#C75B12;
  --orange-400:#E8862F;
  /* — Cellules : couleur + ombre (valeurs du brief) — */
  --cell-cameleon:#7C9070;
  --cell-cameleon-shadow:#3E5641;
  --cell-cameleon-soft:#7C907033;
  --cell-cobra:#9B2226;
  --cell-cobra-shadow:#5C0A0E;
  --cell-cobra-soft:#9B222633;
  --cell-hibou:#6B4423;
  --cell-hibou-shadow:#3E2710;
  --cell-hibou-soft:#6B442333;
  --cell-panda:#2C2C2C;
  --cell-panda-shadow:#000000;
  --cell-panda-soft:#2C2C2C;
  --cell-renard:#C75B12;
  --cell-renard-shadow:#7A340A;
  --cell-renard-soft:#C75B1233;
  --cell-scorpion:#1F3A5F;
  --cell-scorpion-shadow:#0F1F33;
  --cell-scorpion-soft:#1F3A5F66;
  /* — Alias sémantiques — */
  --bg-app:var(--navy-700);
  --bg-app-gradient:linear-gradient(165deg,var(--navy-500) 0%,var(--navy-700) 55%,var(--navy-800) 100%);
  --bg-app-glow:radial-gradient(120% 80% at 20% -10%,#1F3A5F 0%,transparent 62%);
  --surface-card:#00000040; /* fond sombre translucide : la carte dossier */
  --surface-card-solid:var(--ink-700);
  --surface-raised:#FFFFFF0F;
  --surface-sunken:#00000059;
  --surface-field:#FFFFFF1A; /* champ dark mode : blanc à 10 % */
  --surface-navy:var(--navy-700);
  --surface-paper:var(--paper-100);
  --text-body:var(--paper-100);
  --text-muted:var(--slate-300);
  --text-faint:var(--slate-400);
  --text-label:var(--kraft-400);
  --text-accent:var(--gold-500);
  --text-on-gold:var(--gold-ink);
  --text-on-red:#F7E3E3;
  --text-on-paper:#1B1608;
  --border-hairline:#FFFFFF1F;
  --border-field:#FFFFFF33;
  --border-gold:var(--gold-600);
  --border-strong:var(--gold-500);
  --accent:var(--gold-500);
  --accent-hover:var(--gold-400);
  --danger:var(--red-500);
  --danger-hover:var(--red-400);
  --success:var(--green-500);
  --redaction:#05080D;
}

:root {
  /* Familles */
  --font-heading:"Poppins",system-ui,sans-serif; /* titres solides et larges */
  --font-body:-apple-system,"Segoe UI","Roboto","Helvetica Neue",sans-serif; /* corps système */
  --font-mono:"Space Mono","JetBrains Mono",ui-monospace,monospace; /* matricules, codes, horodatages */
  --font-typewriter:"Special Elite","Courier New",cursive; /* tampons, mentions d'archive */
  /* Rôles */
  --font-display:var(--font-heading); /* titres d'écran, noms de cellule, boutons */
  --font-data:var(--font-mono); /* matricules, cotes, chronomètre, scores */
  --font-text:var(--font-body); /* corps, formulaires */
  --font-stamp:var(--font-typewriter); /* bandeaux de classification, tampons, footers d'archive */
  /* Échelle (mobile first) */
  --fs-micro:10px;
  --fs-label:11px;
  --fs-caption:12px;
  --fs-sm:13px;
  --fs-base:15px;
  --fs-md:17px;
  --fs-lg:21px;
  --fs-xl:26px;
  --fs-2xl:32px;
  --fs-3xl:44px;
  --fs-4xl:60px;
  /* Interlignes */
  --lh-tight:1.02; /* @kind other */
  --lh-snug:1.2; /* @kind other */
  --lh-body:1.6; /* @kind other */
  --lh-loose:1.75; /* @kind other */
  /* Graisses */
  --fw-regular:400; /* @kind other */
  --fw-medium:500; /* @kind other */
  --fw-semibold:600; /* @kind other */
  --fw-bold:700; /* @kind other */
  --fw-black:800; /* @kind other */
  /* Interlettrage — le suspense se joue au tracking */
  --ls-stamp:0.3em; /* @kind other */
  --ls-brand:0.26em; /* @kind other */
  --ls-label:0.14em; /* @kind other */
  --ls-data:0.16em; /* @kind other */
  --ls-title:0.09em; /* @kind other */
  --ls-body:0; /* @kind other */
}

:root {
  /* Espacement — base 4 */
  --sp-0:0; /* @kind spacing */
  --sp-1:2px;
  --sp-2:4px;
  --sp-3:8px;
  --sp-4:12px;
  --sp-5:16px;
  --sp-6:20px;
  --sp-7:24px;
  --sp-8:32px;
  --sp-9:40px;
  --sp-10:56px;
  --sp-11:72px;
  /* Rythme d'écran mobile */
  --gutter:16px; /* marge latérale d'écran (390px) */
  --gutter-lg:28px; /* marge latérale desktop */
  --stack:16px; /* espacement vertical par défaut entre blocs */
  --stack-lg:24px;
  /* Gabarits */
  --screen-mobile:375px;
  --screen-mobile-h:812px;
  --content-max:720px;
  --tap-min:44px; /* cible tactile minimale */
}

:root {
  /* Rayons — le papier ne s'arrondit pas ; seule la plastique le fait */
  --r-none:0; /* @kind radius */
  --r-xs:2px; /* champs de formulaire, puces */
  --r-sm:4px; /* QR, vignettes */
  --r-badge:14px; /* badge d'agent (format carte bancaire) */
  --r-btn:6px; /* boutons : arrondis subtils (brief) */
  --r-card:10px; /* cartes dossier translucides */
  --r-pill:999px;
  /* Ombres */
  --shadow-card:0 18px 40px #00000088;
  --shadow-badge:0 12px 28px #00000099;
  --shadow-hard:3px 3px 0 var(--gold-600); /* bouton or au repos */
  --shadow-hard-pressed:1px 1px 0 var(--gold-600);
  --shadow-hard-danger:3px 3px 0 var(--red-700);
  --ring-focus:0 0 0 3px #FFD70022;
  --inset-hairline:inset 0 0 0 1px var(--border-hairline);
  /* Bordures */
  --bw-hair:1px;
  --bw-thick:2px;
  --bw-accent:3px;
  --bw-section:4px;
  --border-section:var(--bw-accent) solid var(--gold-500); /* @kind other */
  --border-accordion:4px solid var(--gold-500); /* @kind other */
  --border-double:3px double #B8262699; /* @kind other */
  /* Textures discrètes */
  --texture-scanline:repeating-linear-gradient(0deg,#ffffff06 0 1px,transparent 1px 3px); /* @kind other */
  --texture-hazard:repeating-linear-gradient(45deg,#8B0000,#8B0000 12px,#6D0000 12px,#6D0000 24px); /* @kind other */
  --texture-dots:radial-gradient(#FFD70014 1px,transparent 1px); /* @kind other */
  --texture-dots-size:18px 18px; /* @kind other */
  --glow-gold:0 0 24px #FFD70026;
  --texture-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='.035'/%3E%3C/svg%3E"); /* @kind other */
  /* Mouvement — sec, mécanique, jamais élastique */
  --ease-mech:cubic-bezier(.2,.8,.3,1); /* @kind other */
  --dur-fast:90ms; /* @kind other */
  --dur-base:160ms; /* @kind other */
  --dur-slow:280ms; /* @kind other */
  --transition-base:all var(--dur-base) var(--ease-mech); /* @kind other */
}

/* Réinitialisations minimales + defaults de marque */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  background: var(--navy-700);
  background-image: var(--bg-app-gradient);
  background-attachment: fixed;
  color: var(--text-body);
  font-family: var(--font-text);
  font-size: var(--fs-base);
  line-height: var(--lh-body);
  -webkit-font-smoothing: antialiased;
}

a {
  color: var(--gold-500);
  text-decoration: none;
  border-bottom: 1px solid var(--gold-700);
}

a:hover {
  color: var(--paper-100);
  border-bottom-color: var(--gold-500);
}

::selection {
  background: var(--gold-500);
  color: var(--gold-ink);
}

::placeholder {
  color: rgba(255, 255, 255, 0.4);
}

h1, h2, h3, h4 {
  font-family: var(--font-display);
  font-weight: var(--fw-black);
  letter-spacing: var(--ls-title);
  margin: 0;
  line-height: var(--lh-snug);
}

h1 {
  font-size: var(--fs-2xl);
}

h2 {
  font-size: var(--fs-xl);
}

h3 {
  font-size: var(--fs-lg);
}

h4 {
  font-size: var(--fs-md);
}

p {
  margin: 0;
  text-wrap: pretty;
}

:focus-visible {
  outline: 2px solid var(--gold-500);
  outline-offset: 2px;
}

input, textarea, select {
  font: inherit;
}

.bhp-field:focus {
  border-color: var(--gold-500);
  box-shadow: var(--ring-focus);
}

/* Marque en toutes lettres — aucun logo n'a été fourni : le mot est la marque */
.bhp-wordmark {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  letter-spacing: var(--ls-brand);
  color: var(--gold-500);
  text-transform: uppercase;
}

/* Ligne de formulaire à points de conduite (libellé ....... valeur) */
.bhp-leader {
  display: flex;
  align-items: baseline;
  gap: var(--sp-3);
  width: 100%;
}

.bhp-leader > .fill {
  flex: 1;
  border-bottom: 1px dotted var(--kraft-600);
  transform: translateY(-4px);
}

/* Bande perforée de classeur */
.bhp-punch {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  align-items: center;
  width: 20px;
  background: rgba(0, 0, 0, 0.2);
  border-right: 1px solid var(--border-hairline);
}

.bhp-punch > i {
  width: 9px;
  height: 9px;
  border-radius: var(--r-pill);
  background: var(--navy-800);
  box-shadow: inset 0 1px 2px #000, 0 1px 0 rgba(255, 255, 255, 0.0784313725);
}

/* Le seul moment animé de la marque : le tampon qui s'abat */
@keyframes bhp-stamp {
  0% {
    opacity: 0;
    transform: scale(2.4) rotate(-14deg);
  }
  55% {
    opacity: 1;
    transform: scale(0.94) rotate(-6deg);
  }
  75% {
    transform: scale(1.04) rotate(-6deg);
  }
  100% {
    opacity: 1;
    transform: scale(1) rotate(-6deg);
  }
}
.bhp-stamped {
  animation: bhp-stamp 420ms var(--ease-mech) both;
}

@keyframes bhp-blink {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.25;
  }
}
.bhp-live {
  animation: bhp-blink 1.4s steps(2, end) infinite;
}

@keyframes bhp-fade-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.bhp-enter {
  animation: bhp-fade-up var(--dur-slow) var(--ease-mech) both;
}

@media (prefers-reduced-motion: reduce) {
  .bhp-stamped, .bhp-live, .bhp-enter {
    animation: none;
  }
  * {
    transition-duration: 1ms !important;
  }
}
.bhp-appbar {
  display: flex;
  align-items: center;
  gap: var(--sp-4);
  padding: var(--sp-4) var(--gutter);
  background: var(--navy-700);
  border-bottom: 1px solid var(--border-gold);
}
.bhp-appbar__back {
  border: 1px solid var(--border-field);
  background: transparent;
  color: var(--gold-500);
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  display: grid;
  place-items: center;
  cursor: pointer;
  font-family: var(--font-display);
  font-size: 15px;
  text-decoration: none;
}
.bhp-appbar__titles {
  display: grid;
  gap: 1px;
  min-width: 0;
  flex: 1;
}
.bhp-appbar__code {
  font-family: var(--font-data);
  font-size: var(--fs-micro);
  letter-spacing: var(--ls-label);
  color: var(--kraft-400);
}
.bhp-appbar__title {
  font-family: var(--font-display);
  font-size: var(--fs-md);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.bhp-section-heading {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  border-bottom: 1px solid var(--gold-700);
  padding-bottom: var(--sp-2);
}
.bhp-section-heading__label {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  font-size: var(--fs-caption);
  letter-spacing: 0.16em;
  color: var(--gold-500);
}
.bhp-section-heading__note {
  font-family: var(--font-data);
  font-size: var(--fs-micro);
  color: var(--text-faint);
}

.bhp-listrow {
  --row-accent: var(--gold-500);
  display: flex;
  align-items: center;
  gap: var(--sp-4);
  background: var(--surface-card);
  border: 1px solid var(--border-hairline);
  border-left: var(--bw-accent) solid var(--row-accent);
  padding: var(--sp-4) var(--sp-5);
  min-height: var(--tap-min);
  transition: var(--transition-base);
}
.bhp-listrow:hover, .bhp-listrow:focus-visible {
  background: var(--surface-raised);
}
.bhp-listrow__labels {
  display: grid;
  gap: 3px;
  flex: 1;
  min-width: 0;
}
.bhp-listrow__title {
  font-family: var(--font-display);
  font-size: var(--fs-base);
  color: var(--text-body);
}
.bhp-listrow__meta {
  font-family: var(--font-data);
  font-size: var(--fs-label);
  letter-spacing: 0.06em;
  color: var(--text-faint);
}
.bhp-listrow__chevron {
  color: var(--gold-600);
  font-family: var(--font-display);
}

.bhp-signature {
  display: grid;
  gap: 4px;
  justify-items: center;
  text-align: center;
  padding: var(--sp-6) 0 var(--sp-5);
}
.bhp-signature__procedure {
  font-family: var(--font-stamp);
  font-size: var(--fs-label);
  letter-spacing: 0.06em;
  color: var(--text-faint);
}
.bhp-signature__tagline {
  font-family: var(--font-stamp);
  font-size: var(--fs-caption);
  font-style: italic;
  color: var(--kraft-400);
}

.bhp-stamp {
  display: inline-block;
  font-family: var(--font-stamp);
  font-size: var(--fs-xl);
  letter-spacing: 0.18em;
  color: var(--red-400);
  border: 3px double #b82626;
  padding: 12px 16px;
  transform: rotate(-4deg);
}

.bhp-epreuve-header {
  display: grid;
  gap: var(--sp-3);
  justify-items: center;
  text-align: center;
  padding: var(--sp-7) var(--gutter) var(--sp-5);
}
.bhp-epreuve-header__wordmark {
  font-size: var(--fs-caption);
}
.bhp-epreuve-header__number {
  font-family: var(--font-display);
  font-weight: 900;
  font-size: var(--fs-2xl);
  letter-spacing: 0.06em;
  line-height: 1;
  color: var(--gold-500);
  margin: 0;
}
.bhp-epreuve-header__title {
  font-family: var(--font-text);
  font-weight: var(--fw-semibold);
  font-size: var(--fs-sm);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--paper-100);
}
.bhp-epreuve-header__rule {
  width: 64px;
  height: 1px;
  background: var(--gold-600);
  margin-top: var(--sp-2);
}

.bhp-briefing {
  background: var(--surface-card);
  border-left: var(--border-accordion);
  border-radius: 0 var(--r-card) var(--r-card) 0;
  padding: var(--sp-5);
  font-size: var(--fs-base);
  line-height: var(--lh-body);
  color: rgba(245, 245, 220, 0.9019607843);
}

.bhp-key {
  color: var(--gold-500);
  font-weight: var(--fw-bold);
}

.bhp-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-3);
  padding: 13px 22px;
  min-height: var(--tap-min);
  width: auto;
  font-family: var(--font-display);
  font-weight: var(--fw-black);
  font-size: var(--fs-sm);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  background: var(--gold-500);
  color: var(--text-on-gold);
  border: none;
  border-radius: var(--r-btn);
  box-shadow: var(--shadow-hard);
  cursor: pointer;
  transition: var(--transition-base);
}
.bhp-btn:hover, .bhp-btn:focus-visible {
  background: var(--accent-hover);
}
.bhp-btn:active {
  box-shadow: var(--shadow-hard-pressed);
  transform: translate(2px, 2px);
}
.bhp-btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}
.bhp-btn--full {
  width: 100%;
}

.bhp-formfield {
  display: grid;
  gap: var(--sp-2);
}
.bhp-formfield__head {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--sp-3);
}
.bhp-formfield__label {
  font-family: var(--font-data);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--text-label);
}
.bhp-formfield__hint {
  font-size: var(--fs-caption);
  color: var(--text-faint);
}
.bhp-formfield__error {
  font-family: var(--font-data);
  font-size: var(--fs-label);
  letter-spacing: 0.06em;
  color: var(--red-400);
}

.bhp-input {
  width: 100%;
  min-height: var(--tap-min);
  padding: 12px 14px;
  background: var(--surface-field);
  border: 1px solid var(--border-field);
  border-radius: var(--r-xs);
  color: var(--text-body);
  font-family: var(--font-data);
  font-size: var(--fs-sm);
  outline: none;
  transition: var(--transition-base);
}
.bhp-input:focus {
  border-color: var(--gold-500);
  box-shadow: var(--ring-focus);
}
.bhp-input--invalid {
  border-color: var(--red-400);
}

.bhp-alert {
  --alert-border: var(--red-500);
  --alert-bg: #8b000024;
  --alert-mark: var(--red-400);
  display: grid;
  gap: var(--sp-2);
  border-left: var(--bw-accent) solid var(--alert-border);
  background: var(--alert-bg);
  padding: var(--sp-4) var(--sp-5);
}
.bhp-alert--notice {
  --alert-border: var(--gold-600);
  --alert-bg: #ffd70014;
  --alert-mark: var(--gold-500);
}
.bhp-alert--valid {
  --alert-border: var(--green-500);
  --alert-bg: #4caf5024;
  --alert-mark: var(--green-400);
}
.bhp-alert--quiet {
  --alert-border: var(--border-field);
  --alert-bg: var(--surface-sunken);
  --alert-mark: var(--slate-300);
}
.bhp-alert--framed {
  border: 2px solid var(--alert-border);
  border-radius: var(--r-card);
}
.bhp-alert--tab {
  border-radius: 0 var(--r-card) var(--r-card) 0;
}
.bhp-alert__kicker {
  font-family: var(--font-data);
  font-size: var(--fs-micro);
  letter-spacing: var(--ls-label);
  color: var(--alert-mark);
}
.bhp-alert__title {
  font-family: var(--font-display);
  font-size: var(--fs-md);
}
.bhp-alert__body {
  font-size: var(--fs-sm);
  color: var(--text-muted);
}

.bhp-stamp-result {
  display: grid;
  gap: var(--sp-3);
  justify-items: center;
  padding: var(--sp-6);
}
.bhp-stamp-result--tight {
  padding: var(--sp-3);
}
.bhp-stamp-result__stamp {
  font-family: var(--font-stamp);
  font-size: var(--fs-lg);
  letter-spacing: 0.2em;
  padding: 10px 20px;
  border: 3px double currentcolor;
}
.bhp-stamp-result__stamp--valid {
  color: #4caf50;
}
.bhp-stamp-result__stamp--refused {
  color: #b82626;
}
.bhp-stamp-result__stamp--gold {
  color: var(--gold-500);
}
.bhp-stamp-result__note {
  font-size: var(--fs-caption);
  color: var(--text-faint);
  text-align: center;
}

.bhp-fieldset {
  border: none;
  margin: 0;
  padding: 0;
  min-inline-size: 0;
}

.bhp-radios {
  display: grid;
  gap: var(--sp-2);
}

.bhp-radio {
  display: flex;
  gap: var(--sp-4);
  align-items: flex-start;
  padding: var(--sp-4);
  min-height: var(--tap-min);
  background: transparent;
  border-left: var(--bw-accent) solid var(--border-field);
  cursor: pointer;
  transition: var(--transition-base);
}
.bhp-radio__input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.bhp-radio__marker {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin-top: 3px;
  border-radius: var(--r-pill);
  border: 1px solid var(--border-field);
  background: transparent;
  transition: var(--transition-base);
}
.bhp-radio__input:checked ~ .bhp-radio__marker {
  border-color: var(--gold-500);
  background: var(--gold-500);
  box-shadow: inset 0 0 0 3px var(--surface-field);
}
.bhp-radio__input:focus-visible ~ .bhp-radio__marker {
  outline: 2px solid var(--gold-500);
  outline-offset: 2px;
}
.bhp-radio__labels {
  display: grid;
  gap: 2px;
}
.bhp-radio__label {
  font-family: var(--font-display);
  font-size: var(--fs-base);
}
.bhp-radio__detail {
  font-size: var(--fs-caption);
  color: var(--text-faint);
}
.bhp-radio:has(.bhp-radio__input:checked) {
  background: var(--surface-raised);
  border-left-color: var(--gold-500);
}

.dossiers-index {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  align-content: start;
}
.dossiers-index__body {
  padding: var(--gutter);
  display: grid;
  gap: var(--stack-lg);
  align-content: start;
}
.dossiers-index__list {
  display: grid;
  gap: var(--sp-3);
}
.dossiers-index__hint {
  font-size: var(--fs-caption);
  color: var(--slate-400);
  text-align: center;
}

.dossier-absent {
  min-height: 100%;
  display: grid;
  align-content: center;
  justify-items: center;
  gap: var(--stack);
  padding: var(--gutter);
  text-align: center;
}
.dossier-absent__wordmark {
  font-size: var(--fs-caption);
}
.dossier-absent__lead {
  font-size: var(--fs-base);
  color: var(--paper-200);
}
.dossier-absent__matricule {
  font-family: var(--font-data);
  color: var(--gold-500);
}
.dossier-absent__aside {
  font-size: var(--fs-sm);
  color: var(--slate-400);
}

.mes-indices {
  --cell-color: var(--gold-500);
  min-height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
  grid-template-columns: minmax(0, 1fr);
  align-content: start;
}
.mes-indices__body {
  padding: var(--gutter);
  display: grid;
  gap: var(--stack);
  align-content: start;
  min-width: 0;
}
.mes-indices__form {
  background: var(--surface-sunken);
  border: 1px solid var(--gold-600);
  border-radius: var(--r-card);
  padding: var(--sp-5);
  display: grid;
  gap: var(--sp-5);
}
.mes-indices__compte {
  font-size: var(--fs-sm);
  color: var(--paper-200);
}
.mes-indices__compte strong {
  font-family: var(--font-data);
  font-size: var(--fs-md);
  color: var(--gold-500);
}
.mes-indices__liste {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--stack);
  min-width: 0;
}
.mes-indices__piece {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--sp-3);
  min-width: 0;
}
.mes-indices__origine {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--sp-4);
  border-left: var(--bw-accent) solid var(--cell-color);
  padding-left: var(--sp-3);
}
.mes-indices__rang {
  font-family: var(--font-display);
  font-weight: var(--fw-bold);
  font-size: var(--fs-caption);
  letter-spacing: 0.16em;
  color: var(--gold-500);
}
.mes-indices__source {
  font-family: var(--font-data);
  font-size: var(--fs-micro);
  letter-spacing: var(--ls-label);
  color: var(--text-faint);
}
.mes-indices__rappel {
  font-size: var(--fs-caption);
  font-style: italic;
  color: var(--slate-400);
  text-align: center;
}
.mes-indices__bulletin {
  display: grid;
  gap: var(--sp-2);
  padding: var(--sp-4);
  background: var(--surface-sunken);
  border: 1px solid var(--border-hairline);
  border-left: var(--bw-accent) solid var(--row-accent, var(--gold-500));
}
.mes-indices__bulletin-cible {
  font-family: var(--font-display);
  font-weight: var(--fw-black);
  font-size: var(--fs-md);
  letter-spacing: 0.08em;
  color: var(--paper-100);
}
.mes-indices__bulletin-note {
  font-size: var(--fs-sm);
  color: var(--paper-200);
}

.bhp-screen {
  width: 100%;
  max-width: var(--content-max);
  margin: 0 auto;
  min-height: 100vh;
  display: grid;
  grid-template-rows: 1fr;
}

.bhp-rowlink {
  text-decoration: none;
  border-bottom: none;
  color: inherit;
}
.bhp-rowlink:hover, .bhp-rowlink:focus-visible {
  color: inherit;
  border-bottom: none;
}

/*# sourceMappingURL=app.output.css.map */
