:root { --fond: #f4f5f7; --surface: #fff; --encre: #1c2126; --discret: #5b6570;
        --ligne: #d5dae0; --accent: #9a6a00; --p1: #c23b2e; --p2: #de8a1b; --p3: #7f8c98; }
@media (prefers-color-scheme: dark) {
  :root { --fond: #15191d; --surface: #1e2328; --encre: #e8ecef; --discret: #9aa5af;
          --ligne: #343b42; --accent: #ebb33a; }
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--fond); color: var(--encre);
       font: 16px/1.5 system-ui, "Segoe UI", sans-serif; }
.entete { display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center;
          padding: .75rem 1rem; background: var(--surface); border-bottom: 1px solid var(--ligne); }
.marque { font-weight: 700; color: var(--encre); text-decoration: none; }
.sous-titre { color: var(--discret); font-size: .9rem; }
.deconnexion { margin-left: auto; }
main { max-width: 52rem; margin: 0 auto; padding: 1rem; }
.carte { background: var(--surface); border: 1px solid var(--ligne); border-radius: 8px;
         padding: 1rem; display: grid; gap: .5rem; max-width: 28rem; }
input, button { font: inherit; padding: .5rem .75rem; border-radius: 6px;
                border: 1px solid var(--ligne); }
button { background: var(--encre); color: var(--surface); cursor: pointer; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
a { color: inherit; text-decoration-color: var(--accent); }
.note, .pied { color: var(--discret); font-size: .9rem; }
.pied { text-align: center; padding: 2rem 1rem; }
table { border-collapse: collapse; width: 100%; }
th, td { text-align: left; padding: .4rem .5rem; border-bottom: 1px solid var(--ligne); }
button.lien { background: none; color: inherit; border: none; padding: .25rem 0; margin-right: 1rem;
              text-decoration: underline; text-decoration-color: var(--accent); min-height: 2.75rem; }
.photo { display: inline-grid; margin: .25rem .5rem .25rem 0; }
.feuille-de-route { list-style: none; padding-left: 0; }  /* le numéro de visite est écrit */

/* Feuille de route du parcours (006 FR-009) : une page A4 pour une vingtaine de points. */
@page { size: A4; margin: 12mm; }
@media print {
  :root { --fond: #fff; --surface: #fff; --encre: #000; --discret: #333; --ligne: #999; }
  body { font-size: 10pt; line-height: 1.25; }
  .entete, .pied, .ecran { display: none; }
  main { max-width: none; padding: 0; }
  .carte { max-width: none; border: none; padding: 0; }
  h1 { font-size: 14pt; margin: 0 0 .3em; }
  h2 { font-size: 11pt; margin: .8em 0 .3em; }
  p { margin: .2em 0; }
  ul { margin: .2em 0; padding-left: 1.6em; }
  ol { margin: .2em 0; }
  .feuille-de-route li { break-inside: avoid; margin-bottom: .1em; }
  .feuille-de-route .petit { font-size: 9pt; color: var(--discret); }
  .feuille-de-route .petit::before { content: " — "; }
  a { text-decoration: none; }
}
