/* Navigation commune, sans stockage ni pistage. Un petit script facultatif (doctrine-share.js) ajoute le bouton Partager. */
.doctrine-navigation{box-sizing:border-box;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;margin:0;padding:12px 16px;background:#f5f0e5;border-bottom:1px solid #d4c8b5;font:600 14px/1.4 system-ui,-apple-system,sans-serif;color:#173650;}
.doctrine-navigation a{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:44px;max-width:100%;padding:10px 16px;border:1px solid #173650;border-radius:5px;color:#173650;background:#fff;text-decoration:none;text-align:center;overflow-wrap:anywhere;}
.doctrine-navigation a.doctrine-navigation-drive{background:#173650;color:#fff;}
.doctrine-navigation a:hover{text-decoration:underline;}
.doctrine-navigation a:focus-visible,.doctrine-pillar-drive:focus-visible{outline:3px solid #9b3028;outline-offset:3px;}
.doctrine-pillar-drive{display:block;margin:8px 0;padding:12px 14px;min-height:44px;border:1px solid currentColor;border-radius:4px;text-align:center;font-size:14px;font-weight:700;line-height:1.4;text-decoration:none;}
.doctrine-pillar-drive:hover{text-decoration:underline;}
@media print{.doctrine-navigation{display:none;}}

.doctrine-navigation .doctrine-navigation-share{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;max-width:100%;padding:10px 16px;border:1px solid #9b3028;border-radius:5px;background:#9b3028;color:#fff;font:600 14px/1.4 system-ui,-apple-system,sans-serif;box-shadow:0 3px 0 #6b1f1a;cursor:pointer}
.doctrine-navigation .doctrine-navigation-share:active{transform:translateY(3px);box-shadow:none}
.doctrine-navigation .doctrine-share-menu{position:fixed;z-index:10000;box-sizing:border-box;min-width:230px;max-width:calc(100vw - 16px);padding:6px;background:#fff;border:1px solid #d4c8b5;border-radius:10px;box-shadow:0 8px 24px #0003;text-align:left}
.doctrine-share-menu[hidden]{display:none}
.doctrine-navigation .doctrine-share-menu>*{box-sizing:border-box;display:flex;align-items:center;min-height:44px;width:100%;max-width:100%;padding:10px 12px;border:0;border-radius:5px;background:#fff;color:#173650;font:600 14px/1.4 system-ui,-apple-system,sans-serif;text-align:left;text-decoration:none;cursor:pointer}
.doctrine-navigation .doctrine-share-menu>*:hover{background:#f5f0e5}
.doctrine-navigation .doctrine-navigation-share:focus-visible,.doctrine-navigation .doctrine-share-menu>*:focus-visible{outline:3px solid #9b3028;outline-offset:3px}
.doctrine-share-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* === Ergonomie tactile : boutons en relief (opt-in) ===
   Convention commune : principal = relief net (.btn-touch), secondaire = relief discret (.btn-touch--soft).
   Enfoncement ~3 px au toucher/clic, retour immédiat au relâchement, focus clavier visible,
   cible >= 44 px, animation 100 ms désactivée si prefers-reduced-motion. Aucune dépendance. */
.btn-touch{--touch-bg:#9b3028;--touch-fg:#fff;--touch-edge:rgba(0,0,0,.38);--touch-focus:#9b3028;box-sizing:border-box;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:44px;max-width:100%;padding:12px 20px;border:1px solid var(--touch-edge);border-radius:10px;background:var(--touch-bg);color:var(--touch-fg);font-weight:700;line-height:1.35;text-align:center;text-decoration:none;overflow-wrap:anywhere;cursor:pointer;box-shadow:0 4px 0 var(--touch-edge),0 6px 10px rgba(0,0,0,.18);transform:translateY(0);transition:transform .1s ease-out,box-shadow .1s ease-out;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}
.btn-touch:active{transform:translateY(3px);box-shadow:0 1px 0 var(--touch-edge),0 1px 2px rgba(0,0,0,.18)}
.btn-touch:focus-visible{outline:3px solid var(--touch-focus);outline-offset:3px}
.btn-touch--fluid{display:flex;width:100%}
.btn-touch--soft{--touch-bg:transparent;--touch-fg:var(--touch-focus);--touch-edge:currentColor;border:1.5px solid currentColor;box-shadow:0 2px 0 currentColor;color:var(--touch-fg)}
.btn-touch--soft:active{transform:translateY(2px);box-shadow:0 0 0 currentColor;background:rgba(127,127,127,.12)}
@media (hover:hover){.btn-touch:hover{filter:brightness(1.08)}}
@media (min-width:601px){.btn-touch--fluid{display:inline-flex;width:auto;min-width:260px}}
@media (prefers-reduced-motion:reduce){.btn-touch{transition:none}}
@media print{.btn-touch{box-shadow:none}}

/* === Ergonomie tactile (lot 2) : harmonisation des questionnaires ===
   Activé page par page par <body class="touch-ui">. Ne modifie ni couleurs, ni textes, ni boutons de réponse,
   curseurs, cases, menus ou boîtes de dialogue : uniquement relief, enfoncement ~3 px, zone tactile >= 44 px. */
body.touch-ui .btn-primary:not(:disabled),body.touch-ui .primary-button:not(:disabled),body.touch-ui .next,body.touch-ui .restart,body.touch-ui .mode .go,body.touch-ui #nextBtn:not(.ghost-button),body.touch-ui button[onclick^="startQuiz"],body.touch-ui button[onclick^="showBriefing"],body.touch-ui button[onclick^="restart"]{min-height:44px;box-shadow:0 4px 0 rgba(0,0,0,.38),0 6px 10px rgba(0,0,0,.15);transition:transform .1s ease-out,box-shadow .1s ease-out;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.touch-ui .btn-ghost,body.touch-ui .btn-secondary,body.touch-ui .secondary-button,body.touch-ui .ghost-button,body.touch-ui button.secondary[onclick]{min-height:44px;box-shadow:0 2px 0 rgba(0,0,0,.26);transition:transform .1s ease-out,box-shadow .1s ease-out;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.touch-ui .mode,body.touch-ui .mode-card{box-shadow:0 4px 0 rgba(0,0,0,.2),0 6px 12px rgba(0,0,0,.1);transition:transform .1s ease-out,box-shadow .1s ease-out,border-color .15s;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
body.touch-ui .btn-primary:not(:disabled):active,body.touch-ui .primary-button:not(:disabled):active,body.touch-ui .next:active,body.touch-ui .restart:active,body.touch-ui #nextBtn:not(.ghost-button):active,body.touch-ui button[onclick^="startQuiz"]:active,body.touch-ui button[onclick^="showBriefing"]:active,body.touch-ui button[onclick^="restart"]:active,body.touch-ui .mode:active,body.touch-ui .mode-card:active{transform:translateY(3px);box-shadow:0 1px 0 rgba(0,0,0,.38),0 1px 2px rgba(0,0,0,.15)}
body.touch-ui .btn-ghost:active,body.touch-ui .btn-secondary:active,body.touch-ui .secondary-button:active,body.touch-ui .ghost-button:active,body.touch-ui button.secondary[onclick]:active{transform:translateY(2px);box-shadow:0 0 0 rgba(0,0,0,.26)}
body.touch-ui .btn:focus-visible,body.touch-ui .primary-button:focus-visible,body.touch-ui .secondary-button:focus-visible,body.touch-ui .ghost-button:focus-visible,body.touch-ui .mode:focus-visible,body.touch-ui .mode-card:focus-visible,body.touch-ui button.secondary[onclick]:focus-visible,body.touch-ui .next:focus-visible,body.touch-ui .restart:focus-visible,body.touch-ui .btn-primary:focus-visible,body.touch-ui .btn-ghost:focus-visible,body.touch-ui .btn-secondary:focus-visible,body.touch-ui #nextBtn:focus-visible,body.touch-ui button[onclick^="startQuiz"]:focus-visible,body.touch-ui button[onclick^="showBriefing"]:focus-visible,body.touch-ui button[onclick^="restart"]:focus-visible,body.touch-ui button[onclick^="goHome"]:focus-visible,body.touch-ui button[onclick^="simulate"]:focus-visible,body.touch-ui button[onclick^="toggleSources"]:focus-visible{outline:3px solid #9b3028;outline-offset:3px}
@media (prefers-reduced-motion:reduce){body.touch-ui .btn,body.touch-ui .primary-button,body.touch-ui .secondary-button,body.touch-ui .ghost-button,body.touch-ui .mode,body.touch-ui .mode-card,body.touch-ui .next,body.touch-ui .restart,body.touch-ui button{transition:none}}
