/* Réinitialisation minimale + gabarit de base — squelette Phase 1, pas l'intégration finale. */
*, *::before, *::after { box-sizing: border-box; }
body {
  margin: 0;
  background: var(--pg-lavande);
  color: var(--pg-encre);
  font-family: var(--pg-font-display);
  font-weight: 500; /* 400 indisponible dans le bundle source, voir tokens.css */
  line-height: 1.5;
}
a { color: var(--pg-violet); }
a:hover { color: var(--pg-encre); }

/* Anneau de focus à deux tons : reste visible quel que soit le fond (clair ou sombre) */
:focus-visible {
  outline: 3px solid transparent;
  box-shadow: 0 0 0 3px #fff, 0 0 0 6px var(--pg-encre);
}

.pg-shell-header {
  display: flex; justify-content: space-between; align-items: center;
  padding: var(--pg-space-5) var(--pg-space-6);
  border-bottom: var(--pg-border);
}
.pg-shell-header a { text-decoration: none; font-weight: 700; }

.pg-shell-main {
  padding: var(--pg-space-8) var(--pg-space-6);
  max-width: 720px;
}
.pg-shell-main h1 {
  font-weight: 800;
  letter-spacing: -0.02em;
}
.pg-shell-badge {
  display: inline-block;
  padding: var(--pg-space-1) var(--pg-space-3);
  background: var(--pg-turquoise);
  color: var(--pg-encre);
  border-radius: 999px;
  font-family: var(--pg-font-mono);
  font-weight: 400;
  font-size: 12px;
}
.pg-shell-nav {
  margin-top: var(--pg-space-6);
  display: flex; flex-direction: column; gap: var(--pg-space-2);
}
