/* Base mobile d'abord (charte de la flotte : jetons --jl-*, voir tokens.css). Aucun style en ligne ailleurs (CSP). */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--jl-bg,#0a0a0f);color:var(--jl-text,#f0ece4);font-family:var(--jl-font-body,system-ui,sans-serif);line-height:1.5;min-height:100vh}
main{max-width:640px;margin:0 auto;padding:24px 16px 64px}
h1,h2{font-family:var(--jl-font-display,system-ui,sans-serif);line-height:1.2;margin:0 0 12px}
a{color:var(--jl-accent,#d4a853)}
.carte{background:var(--jl-surface-1,#12121a);border:1px solid var(--jl-border,rgba(255,255,255,.07));border-radius:16px;padding:20px;margin:16px 0}
.muted{color:var(--jl-text-muted,#c8c4bc)}
.cache{display:none!important}
button,input,select,textarea{font:inherit;color:inherit}
button,.bouton{min-height:44px;padding:10px 18px;border-radius:999px;border:1px solid var(--jl-border-accent,rgba(212,168,83,.2));background:var(--jl-surface-2,#1c1c28);cursor:pointer}
button:hover{border-color:var(--jl-accent,#d4a853)}
button.primaire{background:var(--jl-accent,#d4a853);color:var(--jl-accent-on,#0a0a0f);border-color:transparent;font-weight:700}
button:disabled{opacity:.4;cursor:not-allowed}
input,select,textarea{width:100%;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--jl-border-strong,rgba(255,255,255,.15));background:var(--jl-surface-1,#12121a)}
label{display:block;margin:12px 0 4px;font-size:.9rem}
.langues{display:flex;gap:8px;justify-content:flex-end;margin-bottom:8px}
.langues button{min-height:36px;padding:4px 12px}
.langues button[aria-pressed="true"]{border-color:var(--jl-accent,#d4a853);color:var(--jl-accent,#d4a853)}
.message{font-size:1.6rem;font-weight:700;margin:32px 0 12px}
.rebours{font-size:1.2rem;color:var(--jl-accent,#d4a853);font-variant-numeric:tabular-nums}
.erreur{color:var(--jl-danger,#e85d4a)}
.ligne{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.pastille{display:inline-block;padding:2px 10px;border-radius:999px;background:var(--jl-surface-2,#1c1c28);font-size:.85rem}
.aide{margin:4px 0 0;padding:8px 12px;border-left:3px solid var(--jl-accent,#d4a853);background:var(--jl-surface-2,#1c1c28);font-size:.9rem}
.verrou{opacity:.6}
/* projection : lisible à 10 m */
body.projection{display:flex;align-items:center;justify-content:center;text-align:center}
body.projection main{max-width:none;width:100%;padding:4vh 6vw}
body.projection .message{font-size:clamp(2rem,6vw,5rem)}
body.projection .message.second{font-size:clamp(1.4rem,4vw,3.4rem);color:var(--jl-text-muted,#c8c4bc);font-weight:400}
body.projection .rebours{font-size:clamp(1.6rem,5vw,4rem)}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
input[type=checkbox]{width:auto;min-height:0}
body.projection .qr{width:min(40vh,40vw);height:auto;background:#fff;padding:12px;border-radius:12px;margin-top:3vh}
img.qr-regie{background:#fff;padding:4px;border-radius:8px}
/* Animations (plugins) — mobile d'abord : choix larges, zones tactiles ≥ 44 px ; l'écran de salle agrandit tout. */
.jl-sondage-choix{display:grid;gap:12px;margin:16px 0}
.jl-sondage-option{width:100%;text-align:left;font-size:1.1rem;min-height:56px}
.jl-sondage-option[aria-pressed="true"]{border-color:var(--jl-accent,#d4a853);color:var(--jl-accent,#d4a853)}
.jl-barre{display:grid;grid-template-columns:minmax(6ch,18ch) 1fr 4ch;gap:16px;align-items:center;margin:12px 0}
.jl-barre progress{width:100%;height:28px;accent-color:var(--jl-accent,#d4a853)}
body.projection .animation{font-size:clamp(1.4rem,3vw,2.6rem);width:min(92vw,1400px)}
body.projection #slide-titre{font-size:clamp(2rem,5.5vw,5rem);margin-top:2vh}
body.projection #slide-message{font-size:clamp(1.5rem,3.6vw,3.2rem)}
body.projection #slide-num{font-size:clamp(1rem,1.4vw,1.6rem)}
body.projection #slide{max-width:96vw;overflow-wrap:anywhere}
body.projection .animation h1{font-size:clamp(2rem,5vw,4rem)}
