:root{--bois:#e2bb85;--bois-fonce:#9a5f2d;--orange:#ff5800;--jaune:#ffd500;--vert:#009e60;--rouge:#c41e3a;--bg:#fafaf7;--surface:#fff;--text:#1c1c1e;--muted:#5f6368;--border:#e3e3de;--accent:var(--bois-fonce);--shadow:0 1px 2px #0000000f, 0 8px 24px #0000000f;--radius:18px;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#121214;--surface:#1c1c20;--text:#f2f2f2;--muted:#a0a0a8;--border:#2e2e34;--accent:#e8b178;--shadow:0 1px 2px #0006, 0 8px 24px #00000059}}*{box-sizing:border-box}[hidden]{display:none!important}body{background:radial-gradient(circle at 10% -10%, #e2bb8547, transparent 40%), radial-gradient(circle at 100% 0%, #ff58001a, transparent 45%), var(--bg);min-height:100vh;color:var(--text);font-family:var(--font);flex-direction:column;margin:0;line-height:1.6;display:flex}.top,main,.bottom{width:100%;max-width:960px;margin:0 auto;padding:0 16px}.top{padding-top:20px}main{flex:1}.bottom{color:var(--muted);padding:32px 16px;font-size:.9rem}.bottom a,main a{color:var(--accent)}.brand{color:var(--text);align-items:center;gap:10px;font-size:1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.logo{flex-direction:column;gap:2px;display:inline-flex}.logo i{background:var(--bois);border-radius:2px;width:26px;height:5px;display:block}.logo i:nth-child(2){background:var(--bois-fonce);margin-left:6px}.hero{padding:clamp(32px,7vw,72px) 0 clamp(20px,4vw,40px)}.kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--accent);font-size:.85rem;font-weight:700;display:inline-block}h1{letter-spacing:-.03em;margin:8px 0 16px;font-size:clamp(2rem,6vw,3.2rem);line-height:1.1}.hl{border-radius:.2em;padding:0 .15em}.hl-bois{background:#e2bb858c}.lead{color:var(--muted);max-width:60ch;margin:0;font-size:1.1rem}.muted{color:var(--muted)}.filtres{flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:12px;display:flex}.puces{flex-wrap:wrap;gap:8px;display:flex}.puce,.modes button{font:inherit;cursor:pointer;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600}.puce[aria-pressed=true],.modes button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.tri select{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:6px 10px}.grille{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin:0;padding:0;list-style:none;display:grid}.carte{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);height:100%;box-shadow:var(--shadow);color:var(--text);flex-direction:column;gap:6px;padding:12px;text-decoration:none;transition:transform .15s;display:flex}.carte:hover,.carte:focus-visible{transform:translateY(-3px)}.carte-image{aspect-ratio:4/3;background:#e2bb8540;border-radius:12px;overflow:hidden}.carte-image img{object-fit:cover;width:100%;height:100%;display:block}.carte-titre{font-size:1.1rem;font-weight:800}.carte-texte{color:var(--muted);font-size:.9rem}.tag{color:#fff;border-radius:999px;align-self:flex-start;padding:2px 10px;font-size:.75rem;font-weight:700}.tag-facile{background:var(--vert)}.tag-moyen{background:var(--orange)}.tag-expert{background:var(--rouge)}.scene{border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(circle at 50% 30%, var(--surface), #e2bb8540);touch-action:none;height:min(62vh,560px);margin:16px 0;position:relative;overflow:hidden}.scene canvas{display:block}.modes{flex-wrap:wrap;gap:8px;display:flex}.barre-notice{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin:12px 0;display:grid}.gros{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:14px;min-width:96px;min-height:56px;padding:0 18px;font-size:1.1rem;font-weight:800}.gros:disabled{opacity:.35;cursor:default}.progression{text-align:center}.progression progress{width:100%;accent-color:var(--orange)}#etape-libelle{font-weight:800}.infos{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;margin:20px 0;display:grid}.infos div{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:10px 14px}.infos dt{color:var(--muted);font-size:.8rem}.infos dd{margin:0;font-weight:700}@media (width<=520px){.barre-notice{grid-template-columns:1fr 1fr}.progression{grid-area:1/1/auto/-1}}
