/* SIMULATEUR 3D (simulateur-3d.html) : styles propres à la page, chargés seulement par elle.
   Les jetons (couleurs, polices, rayons) sont ceux de style.css. */
.p3d-choix{margin-bottom:12px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.p3d-label{font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;color:var(--muted)}
#p3d-scenarios{flex:1 1 260px;min-width:0;max-width:100%;background:var(--bg);color:var(--fg);border:1px solid var(--line-2);border-radius:999px;padding:10px 14px;font:inherit;font-weight:700}
.p3d-mode{margin:0}
.p3d-mode[hidden]{display:none}
/* Mode quiz : la question s'affiche sous la scène, la lecture reprend après la réponse */
.p3d-quiz{margin-top:12px;padding:16px 18px;border:1px solid var(--sand);border-radius:var(--r);background:rgba(255,181,71,.07)}
.p3d-quiz[hidden],.p3d-quiz-explication[hidden],#p3d-quiz-suite[hidden]{display:none}
.p3d-quiz-score{margin:0 0 4px;color:var(--sand);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
.p3d-quiz h3{margin:0 0 12px;outline:none}
.p3d-quiz-choix{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.p3d-quiz-choix button{font:inherit;font-weight:700;text-align:left;color:var(--fg);background:var(--bg);border:1px solid var(--line-2);border-radius:12px;padding:12px 14px;cursor:pointer;min-height:44px}
.p3d-quiz-choix button:hover:not(:disabled){border-color:var(--turf)}
.p3d-quiz-choix button:disabled{cursor:default;opacity:.75}
.p3d-quiz-choix button.bonne{border-color:var(--turf);color:var(--turf);opacity:1}
.p3d-quiz-choix button.fausse{border-color:var(--coral);color:var(--coral);opacity:1}
.p3d-quiz-choix button.bonne::before{content:"✓ "}
.p3d-quiz-choix button.fausse::before{content:"✗ "}
.p3d-quiz-explication{margin:12px 0 0;color:var(--fg)}
#p3d-quiz-suite{margin-top:12px}
.p3d-scene{position:relative;width:100%;aspect-ratio:16/9;max-height:78vh;min-height:260px;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:#0b1019;touch-action:none;outline:none}
.p3d-scene:focus-visible{box-shadow:0 0 0 3px var(--turf)}
.p3d-scene canvas{display:block;width:100%;height:100%}
.p3d-chargement{position:absolute;inset:0;display:grid;place-items:center;color:var(--muted);font-weight:700;letter-spacing:.04em}
.p3d-etiquettes{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.p3d-etiquette{position:absolute;left:0;top:0;font-size:.7rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;padding:3px 8px;border-radius:999px;background:rgba(7,11,20,.78);border:1px solid var(--line-2);white-space:nowrap;will-change:transform}
.p3d-etiquette.eq-A{color:var(--turf)}
.p3d-etiquette.eq-B{color:var(--coral)}
.p3d-geste{position:absolute;left:12px;top:12px;max-width:calc(100% - 24px);font-size:.78rem;font-weight:800;padding:6px 12px;border-radius:999px;background:rgba(7,11,20,.85);border:1px solid var(--sand);color:var(--sand)}
.p3d-geste[hidden]{display:none}
.p3d-commandes{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:12px}
.p3d-commandes .btn{padding:10px 16px;font-size:.8rem}
.p3d-commandes .btn.primary{min-width:7.5em;justify-content:center}
.p3d-temps{flex:1 1 180px;min-width:140px;accent-color:var(--turf)}
.p3d-chrono{font-variant-numeric:tabular-nums;color:var(--muted);font-weight:700;min-width:4.2em;text-align:right}
.p3d-commandes select{background:var(--bg);color:var(--fg);border:1px solid var(--line-2);border-radius:999px;padding:9px 12px;font:inherit;font-weight:700}
.p3d-vues{margin-top:12px}
.p3d-aide-libre{color:var(--dim);font-size:.82rem;min-height:1.3em;margin-top:4px}
.p3d-panneau{margin-top:18px;padding:18px;border:1px solid var(--line);border-radius:var(--r);background:var(--glass)}
.p3d-etape-num{color:var(--turf);font-weight:800;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem}
.p3d-panneau h2{font-size:clamp(1.6rem,4vw,2.2rem);margin:6px 0 8px}
.p3d-etape-texte{color:var(--fg);max-width:46em}
.p3d-etapes{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:14px 0 0;counter-reset:etape}
.p3d-etapes button{counter-increment:etape;font:inherit;font-size:.78rem;font-weight:700;color:var(--muted);background:transparent;border:1px solid var(--line-2);border-radius:999px;padding:6px 12px;cursor:pointer}
.p3d-etapes button::before{content:counter(etape) " · "}
.p3d-etapes button[aria-current="step"]{border-color:var(--turf);color:var(--turf)}
.p3d-etapes[hidden]{display:none}
.p3d-sans-3d{padding:18px;border:1px solid var(--sand);border-radius:var(--r);background:rgba(255,181,71,.08)}
.p3d-sans-3d[hidden],.p3d-scene[hidden],.p3d-vues[hidden],.p3d-chargement[hidden]{display:none}
.p3d-fiche{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}
.p3d-fiche > div{padding:18px;border:1px solid var(--line);border-radius:var(--r);background:var(--glass)}
.p3d-fiche h3{margin-bottom:8px}
.p3d-fiche ul{margin:0;padding-left:1.2em;color:var(--muted)}
.p3d-fiche li + li{margin-top:6px}
.p3d-fiche p{color:var(--muted)}
.p3d-limites{color:var(--muted);max-width:52em}
.p3d-cle{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:12px 0}
.p3d-cle dt{color:var(--muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;padding-top:2px}
.p3d-cle dd{margin:0;font-weight:700}
.p3d-cle-titre{margin:0 0 6px;color:var(--coral);font-weight:800;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem}
#fiche-coup .lvl{vertical-align:middle;margin-left:6px}
.p3d-deroule{max-width:52em;padding-left:1.4em;color:var(--muted)}
.p3d-deroule li+li{margin-top:8px}
.p3d-deroule b{color:var(--fg)}
.p3d-tous ul{list-style:none;padding:0}
.p3d-tous li+li{margin-top:6px}
.p3d-tous a{color:var(--turf);font-weight:700}
.p3d-limites li + li{margin-top:6px}
@media (max-width:640px){
  .p3d-scene{aspect-ratio:4/5;max-height:70vh}
  .p3d-commandes .btn{padding:9px 12px}
  .p3d-etiquette{font-size:.6rem;padding:2px 6px;letter-spacing:.03em}
  .p3d-geste{font-size:.7rem;padding:4px 10px;left:8px;top:8px}
}
