.speed-page{
  display:grid;
  gap:20px;
}

.speed-hero,
.speed-preview,
.speed-panel{
  background:#fff;
  border:4px solid var(--line);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--line);
}

.speed-hero{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(260px,.8fr);
  gap:20px;
  align-items:stretch;
  background:
    radial-gradient(circle at top left, rgba(46,213,115,.38), transparent 34%),
    linear-gradient(135deg, #ffffff, #fff8e7);
  padding:24px;
}

.speed-kicker{
  display:inline-flex;
  width:max-content;
  background:#2ed573;
  color:#111;
  border:3px solid var(--line);
  border-radius:999px;
  box-shadow:4px 4px 0 var(--line);
  padding:7px 12px;
  font-weight:1000;
  text-transform:uppercase;
  font-size:.78rem;
}

.speed-hero h2{
  margin:14px 0 8px;
  font-size:clamp(2rem,4vw,3.6rem);
  line-height:.95;
  font-weight:1000;
  letter-spacing:-.04em;
}

.speed-hero p{
  margin:0;
  max-width:760px;
  font-size:1.05rem;
  font-weight:800;
  color:#333;
  line-height:1.55;
}

.speed-rules-card{
  display:grid;
  gap:10px;
  background:#111;
  color:#fff;
  border:4px solid var(--line);
  border-radius:22px;
  box-shadow:6px 6px 0 var(--line);
  padding:18px;
  align-content:center;
}

.speed-rules-card strong{
  font-size:1.2rem;
  text-transform:uppercase;
}

.speed-rules-card span{
  background:#fff;
  color:#111;
  border:2px solid var(--line);
  border-radius:14px;
  padding:9px 10px;
  font-weight:900;
}

.speed-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
}

.speed-actions button,
.speed-link,
.quick-friend-row button{
  border:4px solid var(--line);
  border-radius:18px;
  box-shadow:5px 5px 0 var(--line);
  padding:12px 16px;
  font-weight:1000;
  cursor:pointer;
  text-decoration:none;
}

.speed-actions button:first-child{
  background:#ff4757;
  color:#fff;
}

.speed-actions button:nth-child(2){
  background:#2ed573;
  color:#111;
}

.speed-link{
  background:#ffd32a;
  color:#111;
}

.speed-preview{
  padding:18px;
}

.speed-preview h3{
  margin:0 0 8px;
  font-weight:1000;
  text-transform:uppercase;
}

.speed-preview p{
  margin:0;
  font-weight:800;
  line-height:1.5;
}

.quick-bot-panel,
.quick-friend-panel{
  display:none;
}

.quick-bot-panel.open,
.quick-friend-panel.open{
  display:grid;
  gap:14px;
}

.quick-friend-row{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  background:#fff8e7;
  border:3px solid var(--line);
  border-radius:16px;
  box-shadow:4px 4px 0 var(--line);
  padding:12px;
  font-weight:900;
}

.speed-game-premium{
  display:grid;
  gap:18px;
}

.speed-top{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  align-items:center;
}

.speed-badge{
  display:grid;
  place-items:center;
  min-width:92px;
  min-height:92px;
  background:
    radial-gradient(circle at 30% 25%, #ffffff, transparent 32%),
    linear-gradient(145deg, #2ed573, #139d4c);
  color:#111;
  border:5px solid var(--line);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--line);
  font-size:2.2rem;
  font-weight:1000;
}

.speed-info{
  display:grid;
  gap:6px;
  background:#111;
  color:#fff;
  border:4px solid var(--line);
  border-radius:20px;
  box-shadow:6px 6px 0 var(--line);
  padding:14px 16px;
  font-weight:900;
}

.speed-arena{
  display:grid;
  gap:16px;
  background:#fff;
  border:4px solid var(--line);
  border-radius:26px;
  box-shadow:8px 8px 0 var(--line);
  padding:18px;
}

.speed-signal{
  display:grid;
  place-items:center;
  min-height:260px;
  border:5px solid var(--line);
  border-radius:30px;
  box-shadow:8px 8px 0 var(--line);
  color:#fff;
  text-align:center;
  padding:20px;
  font-weight:1000;
  user-select:none;
}

.speed-signal.wait{
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.25), transparent 30%),
    linear-gradient(145deg, #ff4757, #b51224);
}

.speed-signal.ready{
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.35), transparent 30%),
    linear-gradient(145deg, #2ed573, #139d4c);
  color:#111;
  animation:speedPulse .7s infinite alternate;
}

.speed-signal.done{
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.35), transparent 30%),
    linear-gradient(145deg, #1e90ff, #0057b8);
}

.speed-signal.false-start{
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.25), transparent 30%),
    linear-gradient(145deg, #111, #444);
}

.speed-signal strong{
  display:block;
  font-size:clamp(2rem,5vw,4rem);
  line-height:1;
}

.speed-signal span{
  display:block;
  margin-top:10px;
  font-size:1.05rem;
}

@keyframes speedPulse{
  from{transform:translateY(0)}
  to{transform:translateY(-6px)}
}

.speed-main-button{
  border:5px solid var(--line);
  border-radius:24px;
  box-shadow:7px 7px 0 var(--line);
  padding:18px 22px;
  font-size:1.25rem;
  font-weight:1000;
  background:#ffd32a;
  color:#111;
  cursor:pointer;
}

.speed-main-button:disabled{
  opacity:.65;
  cursor:default;
}

.speed-score-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.speed-score-card{
  background:#fff8e7;
  border:3px solid var(--line);
  border-radius:18px;
  box-shadow:4px 4px 0 var(--line);
  padding:12px;
  font-weight:900;
  text-align:center;
}

.speed-score-card strong{
  display:block;
  font-size:1.8rem;
}

.speed-result-box{
  background:#fffa85;
  border:4px solid var(--line);
  border-radius:20px;
  box-shadow:5px 5px 0 var(--line);
  padding:14px;
  font-weight:900;
}

.speed-actions-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}

.speed-actions-row button{
  border:4px solid var(--line);
  border-radius:18px;
  box-shadow:5px 5px 0 var(--line);
  padding:12px 16px;
  font-weight:1000;
  cursor:pointer;
  background:#2ed573;
  color:#111;
}

.quick-bot-level{
  display:grid;
  gap:6px;
  font-weight:900;
  max-width:280px;
}

.quick-bot-level select{
  border:4px solid var(--line);
  border-radius:18px;
  box-shadow:5px 5px 0 var(--line);
  padding:12px 16px;
  font-weight:1000;
  background:#fff8e7;
}

@media(max-width:800px){
  .speed-hero,
  .speed-score-grid{
    grid-template-columns:1fr;
  }

  .speed-signal{
    min-height:210px;
  }
}

/* === DUEL RAPIDITE V930 : clic vert actif === */

[data-speed-click]{
  pointer-events:auto !important;
  cursor:pointer !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  touch-action:manipulation !important;
}

[data-speed-click]:disabled{
  opacity:1 !important;
  filter:none !important;
  cursor:pointer !important;
}

.speed-click-zone,
.duel-speed-zone,
.speed-signal,
.duel-signal,
.quick-room-card{
  pointer-events:auto !important;
}

/* === FIN DUEL RAPIDITE V930 === */

/* === DUEL RAPIDITE V931 : bot auto + clic vert fonctionnel === */

.duel-speed-card{
  display:grid;
  gap:18px;
  background:#fff;
  border:4px solid #111;
  border-radius:24px;
  box-shadow:7px 7px 0 #111;
  padding:20px;
}

.speed-top{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
}

.speed-badge{
  background:#111;
  color:#fff;
  border-radius:999px;
  padding:9px 13px;
  font-weight:1000;
}

.speed-info{
  display:grid;
  gap:3px;
}

.speed-info span{
  text-transform:uppercase;
  font-size:.78rem;
  font-weight:1000;
  color:#555;
}

.speed-info strong{
  font-size:1.35rem;
  color:#111;
}

.speed-info small{
  color:#333;
  font-weight:800;
}

.speed-main-button{
  min-height:150px;
  border:5px solid #111;
  border-radius:26px;
  box-shadow:8px 8px 0 #111;
  font-size:clamp(2rem, 5vw, 4rem);
  font-weight:1000;
  cursor:pointer;
  color:#111;
  background:linear-gradient(180deg,#e5e7eb,#94a3b8);
  touch-action:manipulation;
  user-select:none;
}

.duel-speed-card.is-waiting .speed-main-button{
  background:linear-gradient(180deg,#ffd166,#f59e0b);
}

.duel-speed-card.is-green .speed-main-button{
  background:linear-gradient(180deg,#8cffb1,#22c55e 55%,#15803d);
  color:#052e16;
  animation:duelGreenPulse .55s ease-in-out infinite alternate;
}

.duel-speed-card.is-false .speed-main-button{
  background:linear-gradient(180deg,#ff9aa2,#ef4444);
  color:#fff;
}

.duel-speed-card.is-done .speed-main-button{
  background:linear-gradient(180deg,#93c5fd,#3b82f6);
  color:#fff;
}

.speed-main-button:hover{
  transform:translateY(-2px);
}

.speed-main-button:active{
  transform:translateY(2px);
  box-shadow:4px 4px 0 #111;
}

.speed-result-box{
  background:#fff3b0;
  border:4px solid #111;
  border-radius:18px;
  box-shadow:5px 5px 0 #111;
  padding:14px;
  font-weight:900;
  color:#111;
}

.speed-actions{
  display:flex;
  justify-content:flex-end;
}

.speed-actions button{
  border:4px solid #111;
  border-radius:16px;
  background:#fff;
  color:#111;
  box-shadow:4px 4px 0 #111;
  padding:11px 15px;
  font-weight:1000;
  cursor:pointer;
}

@keyframes duelGreenPulse{
  from{ filter:brightness(1); }
  to{ filter:brightness(1.18); }
}

/* === FIN DUEL RAPIDITE V931 === */

/* === DUEL RAPIDITE V932 : visuel retravaillé uniquement === */

.quick-bot-panel.open,
.duel-rapidite-page .quick-bot-panel.open,
.speed-page .quick-bot-panel.open{
  display:grid !important;
  gap:18px !important;
}

/* Carte principale */
.duel-speed-card{
  position:relative !important;
  overflow:hidden !important;
  max-width:780px !important;
  margin:0 auto !important;
  padding:24px !important;
  border:5px solid #111 !important;
  border-radius:28px !important;
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,.85), transparent 24%),
    linear-gradient(145deg, #ffffff 0%, #fff6dd 100%) !important;
  box-shadow:
    10px 10px 0 #111,
    inset 0 4px 0 rgba(255,255,255,.85),
    inset 0 -8px 0 rgba(0,0,0,.06) !important;
}

.duel-speed-card::before{
  content:"" !important;
  position:absolute !important;
  right:-80px !important;
  top:-80px !important;
  width:220px !important;
  height:220px !important;
  border-radius:50% !important;
  background:rgba(255,211,42,.35) !important;
  border:4px solid rgba(17,17,17,.16) !important;
  pointer-events:none !important;
}

.duel-speed-card::after{
  content:"" !important;
  position:absolute !important;
  left:-70px !important;
  bottom:-90px !important;
  width:240px !important;
  height:240px !important;
  border-radius:50% !important;
  background:rgba(56,173,169,.20) !important;
  border:4px solid rgba(17,17,17,.10) !important;
  pointer-events:none !important;
}

.duel-speed-card > *{
  position:relative !important;
  z-index:2 !important;
}

/* Haut de carte */
.speed-top{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:16px !important;
  padding:14px !important;
  background:#111 !important;
  color:#fff !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:5px 5px 0 #111 !important;
}

.speed-badge{
  display:inline-grid !important;
  place-items:center !important;
  min-width:82px !important;
  min-height:82px !important;
  padding:10px !important;
  border-radius:20px !important;
  background:
    radial-gradient(circle at 30% 20%, rgba(255,255,255,.52), transparent 26%),
    linear-gradient(145deg, #ffd32a, #f59e0b) !important;
  color:#111 !important;
  border:4px solid #fff !important;
  box-shadow:
    4px 4px 0 rgba(255,255,255,.22),
    inset 0 5px 0 rgba(255,255,255,.35),
    inset 0 -7px 0 rgba(0,0,0,.18) !important;
  text-align:center !important;
  font-size:.9rem !important;
  line-height:1.15 !important;
}

.speed-info span{
  color:#ffd32a !important;
  font-size:.78rem !important;
  letter-spacing:.08em !important;
  text-transform:uppercase !important;
}

.speed-info strong{
  display:block !important;
  margin-top:2px !important;
  color:#fff !important;
  font-size:clamp(1.5rem, 3vw, 2.4rem) !important;
  line-height:1 !important;
  letter-spacing:-.04em !important;
}

.speed-info small{
  display:block !important;
  margin-top:7px !important;
  color:#e5e7eb !important;
  font-weight:850 !important;
}

/* Gros bouton central */
.speed-main-button{
  position:relative !important;
  min-height:190px !important;
  width:100% !important;
  border:6px solid #111 !important;
  border-radius:34px !important;
  box-shadow:
    10px 10px 0 #111,
    inset 0 8px 0 rgba(255,255,255,.35),
    inset 0 -14px 0 rgba(0,0,0,.18) !important;
  font-size:clamp(2.3rem, 7vw, 5.4rem) !important;
  font-weight:1000 !important;
  letter-spacing:-.04em !important;
  text-transform:uppercase !important;
  transition:
    transform .08s ease,
    box-shadow .08s ease,
    filter .12s ease !important;
  overflow:hidden !important;
}

.speed-main-button::before{
  content:"" !important;
  position:absolute !important;
  left:12% !important;
  right:12% !important;
  top:12% !important;
  height:24% !important;
  border-radius:999px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,0)) !important;
  pointer-events:none !important;
}

.speed-main-button::after{
  content:"" !important;
  position:absolute !important;
  inset:auto 8% 8% 8% !important;
  height:18% !important;
  border-radius:999px !important;
  background:linear-gradient(0deg, rgba(0,0,0,.22), rgba(0,0,0,0)) !important;
  pointer-events:none !important;
}

.speed-main-button:hover{
  transform:translate(-2px,-2px) !important;
  box-shadow:
    13px 13px 0 #111,
    inset 0 8px 0 rgba(255,255,255,.38),
    inset 0 -14px 0 rgba(0,0,0,.18) !important;
}

.speed-main-button:active{
  transform:translate(3px,3px) !important;
  box-shadow:
    5px 5px 0 #111,
    inset 0 6px 0 rgba(255,255,255,.28),
    inset 0 -9px 0 rgba(0,0,0,.22) !important;
}

/* États */
.duel-speed-card.is-idle .speed-main-button{
  background:
    radial-gradient(circle at 30% 22%, #ffffff 0 8%, transparent 27%),
    linear-gradient(145deg, #dbeafe 0%, #93c5fd 48%, #2563eb 100%) !important;
  color:#fff !important;
  text-shadow:2px 2px 0 rgba(0,0,0,.32) !important;
}

.duel-speed-card.is-waiting .speed-main-button{
  background:
    radial-gradient(circle at 30% 22%, #fff8ce 0 8%, transparent 27%),
    linear-gradient(145deg, #ffe880 0%, #f59e0b 55%, #b45309 100%) !important;
  color:#111 !important;
  text-shadow:1px 1px 0 rgba(255,255,255,.35) !important;
}

.duel-speed-card.is-waiting .speed-main-button::before{
  animation:duelWaitMove 1.1s ease-in-out infinite alternate !important;
}

.duel-speed-card.is-green .speed-main-button{
  background:
    radial-gradient(circle at 30% 22%, #d8ffe5 0 8%, transparent 27%),
    linear-gradient(145deg, #9cffb9 0%, #22c55e 55%, #15803d 100%) !important;
  color:#052e16 !important;
  text-shadow:1px 1px 0 rgba(255,255,255,.40) !important;
  animation:duelGreenPulseV932 .38s ease-in-out infinite alternate !important;
}

.duel-speed-card.is-false .speed-main-button{
  background:
    radial-gradient(circle at 30% 22%, #ffd1d1 0 8%, transparent 27%),
    linear-gradient(145deg, #ff7b7b 0%, #ef4444 54%, #991b1b 100%) !important;
  color:#fff !important;
  text-shadow:2px 2px 0 rgba(0,0,0,.34) !important;
}

.duel-speed-card.is-done .speed-main-button{
  background:
    radial-gradient(circle at 30% 22%, #dbeafe 0 8%, transparent 27%),
    linear-gradient(145deg, #93c5fd 0%, #3b82f6 54%, #1d4ed8 100%) !important;
  color:#fff !important;
  text-shadow:2px 2px 0 rgba(0,0,0,.30) !important;
}

/* Analyse */
.speed-result-box{
  background:
    linear-gradient(145deg, #ffffff, #fff8dc) !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:6px 6px 0 #111 !important;
  padding:18px !important;
  color:#111 !important;
  font-weight:900 !important;
  line-height:1.55 !important;
}

.speed-result-box strong{
  font-weight:1000 !important;
}

/* Actions */
.speed-actions{
  display:flex !important;
  justify-content:flex-end !important;
  gap:12px !important;
}

.speed-actions button{
  min-height:48px !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:11px 16px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
}

.speed-actions button:hover{
  transform:translate(-1px,-1px) !important;
  box-shadow:5px 5px 0 #111 !important;
}

@keyframes duelGreenPulseV932{
  from{
    filter:brightness(1) saturate(1);
    box-shadow:
      10px 10px 0 #111,
      0 0 0 rgba(34,197,94,0),
      inset 0 8px 0 rgba(255,255,255,.35),
      inset 0 -14px 0 rgba(0,0,0,.18);
  }
  to{
    filter:brightness(1.14) saturate(1.18);
    box-shadow:
      10px 10px 0 #111,
      0 0 28px rgba(34,197,94,.78),
      inset 0 8px 0 rgba(255,255,255,.42),
      inset 0 -14px 0 rgba(0,0,0,.16);
  }
}

@keyframes duelWaitMove{
  from{ transform:translateX(-8px); opacity:.35; }
  to{ transform:translateX(8px); opacity:.65; }
}

/* Mobile */
@media(max-width:640px){
  .duel-speed-card{
    padding:16px !important;
    border-radius:22px !important;
  }

  .speed-top{
    grid-template-columns:1fr !important;
    text-align:center !important;
  }

  .speed-badge{
    justify-self:center !important;
    min-width:72px !important;
    min-height:72px !important;
  }

  .speed-main-button{
    min-height:150px !important;
    border-radius:26px !important;
  }

  .speed-actions{
    justify-content:stretch !important;
  }

  .speed-actions button{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V932 === */

/* === DUEL RAPIDITE V933 : sélecteur niveau bot === */

.duel-bot-level-bar{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:14px !important;
  margin:12px 0 16px !important;
}

.duel-bot-level-bar label{
  display:grid !important;
  gap:7px !important;
  font-weight:1000 !important;
  color:#111 !important;
}

.duel-bot-level-bar select{
  min-height:46px !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:0 14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
}

.duel-bot-level-bar select:focus{
  outline:4px solid #ffd32a !important;
  outline-offset:3px !important;
}

@media(max-width:640px){
  .duel-bot-level-bar{
    justify-content:stretch !important;
  }

  .duel-bot-level-bar label,
  .duel-bot-level-bar select{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V933 === */

/* === DUEL RAPIDITE V934 : mode multijoueur + amis en haut === */

.duel-actions{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin:14px 0 !important;
}

.duel-actions [data-open-bot],
.duel-actions [data-open-friends],
.duel-actions .duel-link{
  min-height:48px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:11px 16px !important;
  font-weight:1000 !important;
  text-decoration:none !important;
  cursor:pointer !important;
}

.duel-actions [data-open-bot]{
  background:#ffd32a !important;
  color:#111 !important;
}

.duel-actions [data-open-friends]{
  background:#111 !important;
  color:#fff !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

.duel-actions [data-open-friends]::before{
  content:"👥 ";
  margin-right:6px;
}

.duel-actions .duel-link{
  background:#fff !important;
  color:#111 !important;
}

.duel-friend-panel,
.quick-friend-panel.duel-friend-panel{
  order:-20 !important;
  margin:16px 0 18px !important;
}

.duel-friend-panel.open,
.quick-friend-panel.duel-friend-panel.open{
  display:grid !important;
  gap:14px !important;
  background:#fff !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:7px 7px 0 #111 !important;
  padding:16px !important;
}

/* Titre visuel en haut du panneau amis */
.duel-friend-panel.open::before{
  content:"Amis connectés";
  display:block;
  font-size:1.15rem;
  font-weight:1000;
  color:#111;
  padding-bottom:8px;
  border-bottom:3px solid #111;
}

/* Les noms/cartes amis doivent être visibles en haut et bien alignés */
.duel-friend-panel.open button,
.duel-friend-panel.open a,
.duel-friend-panel.open .friend,
.duel-friend-panel.open [class*="friend"],
.duel-friend-panel.open [class*="user"],
.duel-friend-panel.open [data-friend]{
  font-weight:1000 !important;
}

/* Le panneau bot reste sous la liste d'amis */
.duel-bot-panel,
.quick-bot-panel.duel-bot-panel{
  order:10 !important;
}

@media(max-width:640px){
  .duel-actions{
    align-items:stretch !important;
  }

  .duel-actions [data-open-bot],
  .duel-actions [data-open-friends],
  .duel-actions .duel-link{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V934 === */

/* === DUEL RAPIDITE V935 : boutons réparés + bot auto === */

.duel-rapidite-page{
  display:grid !important;
  gap:18px !important;
}

.duel-actions{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin:14px 0 !important;
}

.duel-actions [data-open-bot],
.duel-actions [data-open-friends],
.duel-actions .duel-link{
  min-height:48px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:11px 16px !important;
  font-weight:1000 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  opacity:1 !important;
  visibility:visible !important;
}

.duel-actions [data-open-bot]{
  background:#ffd32a !important;
  color:#111 !important;
}

.duel-actions [data-open-friends]{
  background:#111 !important;
  color:#fff !important;
}

.duel-actions [data-open-friends]::before{
  content:"👥 ";
  margin-right:6px;
}

.duel-actions .duel-link{
  background:#fff !important;
  color:#111 !important;
}

.duel-actions [data-open-bot]:hover,
.duel-actions [data-open-friends]:hover,
.duel-actions .duel-link:hover{
  transform:translate(-2px,-2px) !important;
  box-shadow:6px 6px 0 #111 !important;
}

.duel-actions [data-open-bot]:active,
.duel-actions [data-open-friends]:active,
.duel-actions .duel-link:active{
  transform:translate(2px,2px) !important;
  box-shadow:2px 2px 0 #111 !important;
}

/* Le panneau amis reste au-dessus du panneau bot */
.duel-friend-panel{
  order:5 !important;
  margin:10px 0 12px !important;
}

.duel-bot-panel{
  order:10 !important;
}

.duel-friend-panel.open{
  display:grid !important;
  gap:14px !important;
  background:#fff !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:7px 7px 0 #111 !important;
  padding:16px !important;
}

.duel-friend-panel.open::before{
  content:"Amis connectés";
  display:block;
  font-size:1.15rem;
  font-weight:1000;
  color:#111;
  padding-bottom:8px;
  border-bottom:3px solid #111;
}

/* Sélecteur niveau bot */
.duel-bot-level-bar{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:14px !important;
  margin:0 0 10px !important;
}

.duel-bot-level-bar label{
  display:grid !important;
  gap:7px !important;
  font-weight:1000 !important;
  color:#111 !important;
}

.duel-bot-level-bar select{
  min-height:46px !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:0 14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
}

/* Sécurité : les panneaux ne doivent pas bloquer les boutons */
.quick-bot-panel,
.quick-friend-panel,
.duel-actions,
.duel-actions *{
  pointer-events:auto !important;
}

@media(max-width:640px){
  .duel-actions{
    align-items:stretch !important;
  }

  .duel-actions [data-open-bot],
  .duel-actions [data-open-friends],
  .duel-actions .duel-link,
  .duel-bot-level-bar,
  .duel-bot-level-bar label,
  .duel-bot-level-bar select{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V935 === */

/* === DUEL RAPIDITE V936 : amis entre boutons et niveau bot === */

.duel-rapidite-page{
  display:grid !important;
  gap:16px !important;
}

.duel-actions{
  order:1 !important;
}

.duel-friend-panel,
.quick-friend-panel.duel-friend-panel{
  order:2 !important;
  margin:0 0 4px !important;
}

.duel-bot-level-bar{
  order:3 !important;
}

.duel-bot-panel,
.quick-bot-panel.duel-bot-panel{
  order:4 !important;
}

.duel-friend-panel.open,
.quick-friend-panel.duel-friend-panel.open{
  display:grid !important;
  gap:14px !important;
  background:#fff !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:7px 7px 0 #111 !important;
  padding:16px !important;
}

.duel-friend-panel.open::before{
  content:"Amis connectés";
  display:block;
  font-size:1.15rem;
  font-weight:1000;
  color:#111;
  padding-bottom:8px;
  border-bottom:3px solid #111;
}

.duel-bot-level-bar{
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  gap:14px !important;
  margin:0 0 4px !important;
}

.duel-bot-level-bar label{
  display:grid !important;
  gap:7px !important;
  font-weight:1000 !important;
  color:#111 !important;
}

.duel-bot-level-bar select{
  min-height:46px !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:0 14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
}

.duel-bot-level-bar select:focus{
  outline:4px solid #ffd32a !important;
  outline-offset:3px !important;
}

@media(max-width:640px){
  .duel-bot-level-bar{
    justify-content:stretch !important;
  }

  .duel-bot-level-bar label,
  .duel-bot-level-bar select{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V936 === */

/* === DUEL RAPIDITE V937 : réparation boutons + ordre amis === */

.duel-rapidite-page{
  display:grid !important;
  gap:16px !important;
}

.duel-actions{
  order:1 !important;
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin:14px 0 0 !important;
  pointer-events:auto !important;
}

.duel-actions [data-open-bot],
.duel-actions [data-open-friends],
.duel-actions .duel-link{
  min-height:48px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:11px 16px !important;
  font-weight:1000 !important;
  text-decoration:none !important;
  cursor:pointer !important;
  pointer-events:auto !important;
  opacity:1 !important;
  visibility:visible !important;
  position:relative !important;
  z-index:5 !important;
}

.duel-actions [data-open-bot]{
  background:#ffd32a !important;
  color:#111 !important;
}

.duel-actions [data-open-friends]{
  background:#111 !important;
  color:#fff !important;
}

.duel-actions [data-open-friends]::before{
  content:"👥 ";
  margin-right:6px;
}

.duel-actions .duel-link{
  background:#fff !important;
  color:#111 !important;
}

.duel-actions [data-open-bot]:hover,
.duel-actions [data-open-friends]:hover,
.duel-actions .duel-link:hover{
  transform:translate(-2px,-2px) !important;
  box-shadow:6px 6px 0 #111 !important;
}

.duel-friend-panel{
  order:2 !important;
  margin:0 !important;
}

.duel-friend-panel.open{
  display:grid !important;
  gap:14px !important;
  background:#fff !important;
  border:4px solid #111 !important;
  border-radius:22px !important;
  box-shadow:7px 7px 0 #111 !important;
  padding:16px !important;
}

.duel-friend-panel.open::before{
  content:"Amis connectés";
  display:block;
  font-size:1.15rem;
  font-weight:1000;
  color:#111;
  padding-bottom:8px;
  border-bottom:3px solid #111;
}

.duel-bot-level-bar{
  order:3 !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  margin:0 !important;
}

.duel-bot-level-bar label{
  display:grid !important;
  gap:7px !important;
  font-weight:1000 !important;
  color:#111 !important;
}

.duel-bot-level-bar select{
  min-height:46px !important;
  border:4px solid #111 !important;
  border-radius:16px !important;
  background:#fff !important;
  color:#111 !important;
  box-shadow:4px 4px 0 #111 !important;
  padding:0 14px !important;
  font-weight:1000 !important;
  cursor:pointer !important;
}

.duel-bot-panel{
  order:4 !important;
}

.quick-bot-panel,
.quick-friend-panel{
  pointer-events:auto !important;
}

@media(max-width:640px){
  .duel-actions{
    align-items:stretch !important;
  }

  .duel-actions [data-open-bot],
  .duel-actions [data-open-friends],
  .duel-actions .duel-link,
  .duel-bot-level-bar,
  .duel-bot-level-bar label,
  .duel-bot-level-bar select{
    width:100% !important;
  }
}

/* === FIN DUEL RAPIDITE V937 === */

/* === DUEL RAPIDITE V941 : suppression bloc Bot niveau / Mode bot === */

.duel-speed-card .speed-top{
  display:none !important;
}

/* Réduit l'espace maintenant que le haut est supprimé */
.duel-speed-card{
  padding-top:20px !important;
}

/* === FIN DUEL RAPIDITE V941 === */
