
:root{--ink:#12324a;--muted:#668093;--sky:#67c9ee;--skysoft:#e9f8fe;--turq:#22c7bd;--turq2:#079690;--gold:#d8ad42;--goldsoft:#fff5d7;--coral:#f18a76;--line:#d2ebf4;--white:#fff;--good:#22a879;--bad:#d95d5d}
*{box-sizing:border-box}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:linear-gradient(155deg,#effaff 0,#fff 50%,#e9fcf8 100%);min-height:100vh}.shell{max-width:1150px;margin:auto;padding:18px}.back{position:fixed;top:12px;left:12px;z-index:5;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:99px;padding:9px 12px;color:var(--ink);font-size:.72rem;font-weight:900;box-shadow:0 6px 18px #1c809818}header{text-align:center;padding:42px 10px 24px}.eyebrow{font-size:.68rem;font-weight:900;letter-spacing:.18em;color:var(--turq2)}header h1{font-size:clamp(3.5rem,12vw,7rem);line-height:.82;margin:16px 0;letter-spacing:-.05em}header h1 span{color:var(--gold)}header p{color:var(--muted);font-weight:600}.panel{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;box-shadow:0 14px 35px #1c809810}.intro{text-align:center;max-width:760px;margin:auto}.hero-ball{font-size:3rem}.home-actions{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:24px}.btn,.mini{border:0;border-radius:13px;font-weight:900;cursor:pointer}.btn{padding:14px 18px}.mini{padding:9px 11px;background:var(--skysoft);color:var(--ink)}.primary{background:var(--turq);color:#fff}.secondary{background:var(--skysoft);color:var(--ink);border:1px solid #b8e4f4}.gold{background:linear-gradient(135deg,var(--gold),#f0ce70);color:var(--ink)}.wide{width:100%;margin-top:18px}.hidden{display:none!important}.muted{color:var(--muted)}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:12px 0}.toolbar label{margin-left:auto;font-size:.8rem;font-weight:700}.toolbar select{padding:7px;border:1px solid var(--line);border-radius:8px}.people{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:7px}.person{border:1px solid var(--line);border-radius:10px;padding:9px;background:#fbfeff}.add-row{display:flex;gap:8px;margin-top:14px}.add-row input{flex:1;padding:11px;border:1px solid var(--line);border-radius:10px}.room-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.room-head small{display:block;color:var(--muted);font-weight:800}.room-head strong{font-size:2rem;letter-spacing:.12em}.host-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:12px}.links-list{display:grid;gap:7px;max-height:520px;overflow:auto}.link-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;background:#f6fcff;border:1px solid var(--line);border-radius:12px;padding:9px}.link-row small{display:block;color:var(--muted)}.host-question{background:var(--skysoft);border-radius:16px;padding:15px;margin:10px 0}.timer{font-size:3.4rem;font-weight:950;text-align:center;font-variant-numeric:tabular-nums}.timer.warn{color:#c98814}.timer.over{color:var(--bad)}.answer-count{text-align:center;font-weight:900;color:var(--turq2)}.host-player{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid var(--line)}.answered{color:var(--good)}.player-top{display:flex;justify-content:space-between;max-width:760px;margin:0 auto 10px;font-weight:900}.question-panel{max-width:760px;margin:auto;text-align:center}.level{display:inline-block;padding:7px 10px;border-radius:99px;background:var(--goldsoft);color:#9b7113;font-size:.7rem;font-weight:900}.qtext{font-size:clamp(1.35rem,5vw,2.1rem);line-height:1.15;margin:18px 0}.choices{display:grid;gap:9px}.choice{padding:14px;border:2px solid var(--line);background:#fff;border-radius:14px;font-weight:800;color:var(--ink);cursor:pointer}.choice:hover,.choice.selected{border-color:var(--turq);background:#e8fbf8}.free-input{width:100%;padding:15px;border:2px solid var(--line);border-radius:14px;font-size:1rem}.waiting{padding:40px 10px}.pulse{font-size:3.3rem;animation:pulse 1.2s infinite}@keyframes pulse{50%{transform:scale(1.12)}}.result-good{color:var(--good)}.result-bad{color:var(--bad)}.podium{display:grid;gap:8px;margin-top:20px}.rank{display:grid;grid-template-columns:50px 1fr auto;align-items:center;text-align:left;background:#f7fcff;padding:12px;border-radius:13px}.rank.me{border:2px solid var(--turq)}.rank:first-child{background:var(--goldsoft)}.toast{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:11px 15px;border-radius:10px;font-weight:800;z-index:9}
@media(max-width:800px){.host-grid{grid-template-columns:1fr}.shell{padding:12px}.panel{padding:18px}.room-head{align-items:flex-start;gap:10px}.room-head strong{font-size:1.6rem}.back{position:absolute}.toolbar label{margin-left:0}.people{grid-template-columns:repeat(2,1fr)}}

/* V1.1 corrections */
.free-input{
  min-height:54px;
  background:#fff !important;
  color:var(--ink) !important;
  -webkit-user-select:text;
  user-select:text;
  touch-action:manipulation;
}
.free-input:focus{
  outline:3px solid rgba(34,199,189,.18);
  border-color:var(--turq);
}
.link-row small{
  overflow-wrap:anywhere;
  user-select:text;
}

#solo-room{max-width:820px;margin:24px auto}.solo-head{display:flex;justify-content:space-between;align-items:center}.solo-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.solo-answer{padding:18px;border-radius:14px;border:1px solid #cbd8e8;background:#fff;font:inherit;font-weight:700;cursor:pointer}.solo-answer.correct{border-color:#35a56f;background:#e9f8f0}.solo-answer.wrong{border-color:#d75b64;background:#fff0f1}.solo-question{font-size:1.35rem}.solo-final{text-align:center;padding:24px}.solo-final h2{font-size:3rem;margin:0 0 8px}@media(max-width:650px){.solo-options{grid-template-columns:1fr}}

.howto-btn{position:fixed;right:14px;bottom:14px;z-index:9000;border:0;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer;box-shadow:0 5px 18px rgba(0,0,0,.18)}
.howto-modal{position:fixed;inset:0;z-index:10000;background:rgba(5,15,35,.7);display:grid;place-items:center;padding:18px}.howto-modal.hidden{display:none!important}.howto-card{position:relative;max-width:600px;width:100%;background:#fff;color:#14233b;border-radius:20px;padding:24px;box-sizing:border-box;box-shadow:0 20px 60px rgba(0,0,0,.3)}.howto-card h2{margin-top:0}.howto-card li{margin:10px 0;line-height:1.45}.howto-close{position:absolute;right:12px;top:10px;border:0;background:none;font-size:28px;cursor:pointer}

.solo-text-answer{display:flex;gap:10px;margin:20px 0}.solo-text-answer input{flex:1;min-width:0;padding:16px;border:1px solid #cbd8e8;border-radius:14px;font:inherit;font-size:1rem}@media(max-width:650px){.solo-text-answer{flex-direction:column}}

/* V15.2 — aide toujours visible */
.howto-btn.howto-visible{
 position:fixed!important;top:12px!important;right:12px!important;bottom:auto!important;
 z-index:2147483000!important;display:block!important;visibility:visible!important;opacity:1!important;
 background:#ffffff!important;color:#102b45!important;border:2px solid #d9aa32!important;
 border-radius:999px!important;padding:10px 15px!important;font-size:12px!important;font-weight:900!important;
 box-shadow:0 6px 20px rgba(0,0,0,.16)!important;cursor:pointer!important
}
@media(max-width:700px){.howto-btn.howto-visible{top:max(8px,env(safe-area-inset-top))!important;right:8px!important;padding:8px 11px!important;font-size:10px!important}}

.howto-inline{display:block;margin:12px auto 18px;max-width:260px;width:auto;padding:10px 16px;border-radius:999px;font-weight:800;cursor:pointer}

/* V16 — culture G / Le savais-tu */
.did-you-know{margin:16px 0;padding:14px 16px;border-radius:15px;background:#fff5d7;border:1px solid #efd581;text-align:left}
.did-you-know b{font-size:.76rem;letter-spacing:.06em;color:#8b6500}
.did-you-know p{margin:7px 0 0;line-height:1.5;color:#334d60}

.global-home{position:fixed;left:10px;top:10px;z-index:2147483000;text-decoration:none;background:#fff;color:#102b45;border:1px solid #d9aa32;border-radius:999px;padding:8px 12px;font-size:11px;font-weight:900;box-shadow:0 5px 16px rgba(0,0,0,.14)}
@media(max-width:700px){.global-home{top:max(8px,env(safe-area-inset-top));left:8px;padding:7px 9px;font-size:10px}}
