/* ============================================================
   Live Weekend – Styles publics
   ============================================================ */
:root {
  --lw-primary:    #e63946;
  --lw-primary-dk: #c1121f;
  --lw-accent:     #ffd60a;
  --lw-mauve:      #7c3aed;
  --lw-mauve-lt:   #a78bfa;
  --lw-dark:       #1a1a2e;
  --lw-darker:     #0f0f1a;
  --lw-surface:    #16213e;
  --lw-card:       #1e2a3a;
  --lw-border:     #2d3748;
  --lw-text:       #e2e8f0;
  --lw-muted:      #94a3b8;
  --lw-success:    #22c55e;
  --lw-danger:     #ef4444;
  --lw-fb:         #1877f2;
  --lw-radius:     12px;
  --lw-shadow:     0 4px 24px rgba(0,0,0,.45);
  --lw-font:       'Segoe UI', system-ui, -apple-system, sans-serif;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
.lw-public-page, .lw-room-wrap {
  font-family: var(--lw-font);
  color: var(--lw-text);
  background: var(--lw-darker);
  min-height: 100vh;
}

/* ── Container ───────────────────────────────────────────────*/
.lw-container { max-width: 1160px; margin: 0 auto; padding: 0 24px; }

/* ── Boutons ─────────────────────────────────────────────────*/
.lw-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 13px 26px; border-radius: 9px; font-weight: 700; font-size: 15px;
  cursor: pointer; border: none; transition: all .2s; text-decoration: none;
  font-family: var(--lw-font);
}
.lw-btn--full      { width: 100%; }
.lw-btn--sm        { padding: 8px 16px; font-size: 13px; }
.lw-btn--primary   { background: var(--lw-primary); color: #fff; }
.lw-btn--primary:hover { background: var(--lw-primary-dk); transform: translateY(-1px); box-shadow: 0 6px 20px rgba(230,57,70,.4); }
.lw-btn--secondary { background: var(--lw-surface); color: var(--lw-text); border: 1px solid var(--lw-border); }
.lw-btn--secondary:hover { background: var(--lw-card); }
.lw-btn--ghost     { background: transparent; color: var(--lw-muted); border: 1px solid var(--lw-border); }
.lw-btn--ghost:hover { color: var(--lw-text); }
.lw-btn--live      { background: var(--lw-primary); color: #fff; font-size: 16px; }
.lw-btn--send      { background: var(--lw-primary); color: #fff; padding: 10px 16px; border-radius: 8px; }
.lw-btn--danger    { background: var(--lw-danger); color: #fff; }
.lw-btn--success   { background: var(--lw-success); color: #fff; }
.lw-pulse { animation: lw-pulse 1.6s infinite; }
@keyframes lw-pulse { 0%,100%{box-shadow:0 0 0 0 rgba(230,57,70,.5)} 60%{box-shadow:0 0 0 14px rgba(230,57,70,0)} }

/* ── HERO ────────────────────────────────────────────────────*/
.lw-hero {
  position: relative; min-height: 400px;
  background: var(--lw-dark) center/cover no-repeat;
  display: flex; align-items: center;
}
.lw-hero-overlay {
  position: absolute; inset: 0;
  background: linear-gradient(135deg, rgba(10,10,26,.88) 0%, rgba(124,58,237,.18) 100%);
  display: flex; align-items: center; justify-content: center;
  width: 100%;
}
.lw-hero-content { max-width: 720px; width: 100%; padding: 60px 24px; }
.lw-hero-content--center { text-align: center; margin: 0 auto; }

.lw-badge {
  display: inline-block; padding: 5px 16px; border-radius: 20px;
  font-size: 12px; font-weight: 700; letter-spacing: .8px; margin-bottom: 16px;
}
.lw-badge--a_venir   { background: rgba(96,165,250,.15); color: #60a5fa; border: 1px solid rgba(96,165,250,.3); }
.lw-badge--en_cours  { background: rgba(34,197,94,.15);  color: #4ade80; border: 1px solid rgba(34,197,94,.3); animation: lw-blink 1.5s infinite; }
.lw-badge--termine   { background: rgba(239,68,68,.15);  color: #f87171; border: 1px solid rgba(239,68,68,.3); }
.lw-badge--brouillon { background: rgba(100,116,139,.15);color: #94a3b8; border: 1px solid rgba(100,116,139,.3); }
@keyframes lw-blink { 0%,100%{opacity:1} 50%{opacity:.5} }

.lw-hero-title { font-size: clamp(1.6rem, 4vw, 2.8rem); font-weight: 800; line-height: 1.2; margin-bottom: 14px; color: #fff; }
.lw-hero-date  { font-size: 1rem; color: rgba(255,255,255,.75); margin-bottom: 8px; }
.lw-hero-mode  { font-size: 1rem; font-weight: 700; color: var(--lw-accent); margin-bottom: 20px; }

/* Partage dans le hero */
.lw-hero-share { display: flex; gap: 10px; justify-content: center; flex-wrap: wrap; margin-top: 6px; }
.lw-share-btn  { display: inline-flex; align-items: center; gap: 6px; padding: 8px 16px; border-radius: 20px; font-size: 13px; font-weight: 600; cursor: pointer; border: none; text-decoration: none; transition: all .2s; }
.lw-share-btn--fb   { background: var(--lw-fb); color: #fff; }
.lw-share-btn--fb:hover { background: #0d6efd; }
.lw-share-btn--copy { background: rgba(255,255,255,.12); color: #fff; border: 1px solid rgba(255,255,255,.2); }
.lw-share-btn--copy:hover { background: rgba(255,255,255,.22); }

/* ── Décompte ────────────────────────────────────────────────*/
.lw-countdown-section { text-align: center; padding: 40px 20px; background: linear-gradient(to right, var(--lw-darker), var(--lw-surface), var(--lw-darker)); border-bottom: 1px solid var(--lw-border); }
.lw-countdown-label { font-size: 12px; text-transform: uppercase; letter-spacing: 2px; color: var(--lw-muted); margin-bottom: 18px; }
.lw-countdown { display: flex; align-items: center; justify-content: center; gap: 12px; flex-wrap: wrap; }
.lw-cd-block  { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.lw-cd-num    { font-size: 3rem; font-weight: 800; color: var(--lw-primary); background: var(--lw-card); border: 1px solid var(--lw-border); border-radius: 10px; padding: 10px 20px; min-width: 86px; text-align: center; line-height: 1; }
.lw-cd-block small { font-size: 10px; text-transform: uppercase; color: var(--lw-muted); letter-spacing: 1px; }
.lw-cd-sep { font-size: 2.5rem; font-weight: 900; color: var(--lw-primary); margin-bottom: 20px; }
.lw-live-now-banner { font-size: 1.4rem; font-weight: 700; color: var(--lw-primary); padding: 16px; animation: lw-blink 1s infinite; }

/* ── Layout corps ────────────────────────────────────────────*/
.lw-body-grid { display: grid; grid-template-columns: 1fr 360px; gap: 40px; padding: 48px 24px 60px; align-items: start; }
@media (max-width: 900px) { .lw-body-grid { grid-template-columns: 1fr; } }

/* Médias */
.lw-presentation-media { border-radius: var(--lw-radius); overflow: hidden; margin-bottom: 28px; background: #000; }
.lw-presentation-media video, .lw-presentation-img { width: 100%; display: block; border-radius: var(--lw-radius); }
.lw-video-wrapper { position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.lw-video-wrapper iframe { position: absolute; top:0; left:0; width:100%; height:100%; border:none; }
.lw-video-native { width: 100%; border-radius: var(--lw-radius); }

.lw-live-description { color: var(--lw-text); line-height: 1.85; }
.lw-live-description h2, .lw-live-description h3 { margin: 1em 0 .5em; }

/* CTA Box */
.lw-cta-box {
  background: var(--lw-card); border: 1px solid var(--lw-border);
  border-radius: var(--lw-radius); padding: 28px;
  display: flex; flex-direction: column; gap: 14px;
  position: sticky; top: 24px;
}
.lw-cta-box h3 { font-size: 1.1rem; }
.lw-cta-box h4 { font-size: .95rem; color: var(--lw-muted); }
.lw-cta-info { font-size: 13px; color: var(--lw-muted); line-height: 1.5; }
.lw-cta-divider { border: none; border-top: 1px solid var(--lw-border); margin: 4px 0; }

.lw-registered-confirm {
  background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.2);
  border-radius: 10px; padding: 16px; text-align: center;
}
.lw-check-icon { font-size: 2rem; display: block; margin-bottom: 6px; }
.lw-registered-confirm strong { color: var(--lw-success); display: block; margin-bottom: 4px; }
.lw-registered-confirm p { font-size: 12px; color: var(--lw-muted); }

/* Partage sidebar */
.lw-cta-share { border-top: 1px solid var(--lw-border); padding-top: 14px; }
.lw-share-label { font-size: 11px; color: var(--lw-muted); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 8px; }
.lw-share-row { display: flex; gap: 8px; }
.lw-share-row .lw-share-btn { flex: 1; justify-content: center; border-radius: 8px; }
.lw-share-row .lw-share-btn--copy { background: var(--lw-surface); color: var(--lw-text); border: 1px solid var(--lw-border); }

/* ══════════════════════════════════════════════════════════════
   SALLE DU LIVE
   ══════════════════════════════════════════════════════════════ */
.lw-room-wrap { display: flex; flex-direction: column; height: 100vh; overflow: hidden; background: var(--lw-darker); }

/* Header room */
.lw-room-header { display: flex; align-items: center; justify-content: space-between; background: var(--lw-dark); border-bottom: 1px solid var(--lw-border); padding: 12px 20px; flex-shrink: 0; gap: 16px; }
.lw-room-header__left { display: flex; align-items: center; gap: 16px; min-width: 0; }
.lw-room-header h1 { font-size: 1.05rem; margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 380px; }
.lw-room-header__right { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
.lw-back-link { color: var(--lw-muted); font-size: 13px; text-decoration: none; white-space: nowrap; }
.lw-status-dot--live { color: var(--lw-primary); font-size: 12px; font-weight: 700; animation: lw-blink 1.5s infinite; }
.lw-connected-count { font-size: 13px; color: var(--lw-muted); }
.lw-btn--fb { background: var(--lw-fb); color: #fff; }

/* Body room */
.lw-room-body { display: grid; grid-template-columns: 1fr 360px; flex: 1; overflow: hidden; }
@media (max-width: 900px) { .lw-room-body { grid-template-columns: 1fr; overflow: auto; height: auto; } }

/* Colonne vidéos */
.lw-col-videos { display: flex; flex-direction: column; overflow: hidden; background: #000; }
.lw-vid-tabs { display: flex; gap: 4px; padding: 8px 12px; background: var(--lw-dark); overflow-x: auto; flex-shrink: 0; border-bottom: 1px solid var(--lw-border); scrollbar-width: thin; }
.lw-vid-tab { display: flex; align-items: center; gap: 5px; padding: 7px 14px; border-radius: 6px; border: 1px solid var(--lw-border); background: var(--lw-surface); color: var(--lw-text); font-size: 12px; cursor: pointer; white-space: nowrap; transition: all .2s; flex-shrink: 0; font-family: var(--lw-font); }
.lw-vid-tab:hover { background: var(--lw-card); }
.lw-vid-tab--active  { background: var(--lw-primary); border-color: var(--lw-primary); color: #fff; }
.lw-vid-tab--watched { border-color: var(--lw-success); color: var(--lw-success); }
.lw-vid-tab[data-locked="1"] { opacity: .45; cursor: not-allowed; }
.lw-lock-icon { font-size: 10px; }

.lw-main-player { flex: 1; position: relative; background: #000; overflow: hidden; }
.lw-main-player .lw-video-wrapper { padding-bottom: 0; height: 100%; }
.lw-main-player .lw-video-wrapper iframe, .lw-main-player .lw-video-native { width: 100%; height: 100%; object-fit: contain; border-radius: 0; }
.lw-player-locked-msg { display: none; align-items: center; justify-content: center; height: 100%; flex-direction: column; gap: 10px; }
.lw-locked-content { text-align: center; } .lw-locked-content h3 { margin: 8px 0; } .lw-locked-content p { color: var(--lw-muted); font-size: 14px; }

.lw-progress-bar-wrap { height: 3px; background: var(--lw-border); flex-shrink: 0; }
.lw-progress-bar { height: 100%; background: linear-gradient(90deg, var(--lw-mauve), var(--lw-primary)); transition: width .5s; width: 0; }

/* Colonne chat */
.lw-col-chat { display: flex; flex-direction: column; border-left: 1px solid var(--lw-border); background: var(--lw-dark); overflow: hidden; }
.lw-notif-zone { min-height: 40px; padding: 5px 12px; flex-shrink: 0; }
.lw-notif-entry { display: flex; align-items: center; gap: 8px; background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2); border-radius: 8px; padding: 6px 10px; font-size: 12px; animation: lw-slide-in .3s; }
.lw-notif-entry img { width: 22px; height: 22px; border-radius: 50%; }
@keyframes lw-slide-in { from{opacity:0;transform:translateY(-8px)} to{opacity:1;transform:none} }

/* Staff */
.lw-staff-sidebar { border-bottom: 1px solid var(--lw-border); padding: 8px 12px; flex-shrink: 0; }
.lw-staff-block  { margin-bottom: 6px; }
.lw-staff-label  { font-size: 10px; color: var(--lw-muted); text-transform: uppercase; letter-spacing: 1px; margin-bottom: 5px; }
.lw-staff-list--horizontal { display: flex; gap: 10px; flex-wrap: wrap; }
.lw-staff-list--vertical   { display: flex; flex-direction: column; gap: 5px; }
.lw-staff-item { display: flex; align-items: center; gap: 6px; }
.lw-staff-avatar-wrap { position: relative; }
.lw-staff-avatar-wrap img { width: 30px; height: 30px; border-radius: 50%; }
.lw-online-dot { position: absolute; bottom:1px; right:1px; width:7px; height:7px; background: var(--lw-success); border-radius: 50%; border: 1.5px solid var(--lw-dark); }
.lw-online-dot--blink { animation: lw-blink 1.5s infinite; }
.lw-staff-pseudo { font-size: 11px; font-weight: 600; }
.lw-staff-badge  { font-size: 10px; background: rgba(251,191,36,.15); color: #fbbf24; border-radius: 4px; padding: 2px 7px; }

/* Chat messages */
.lw-chat-header { padding: 7px 14px; font-size: 12px; font-weight: 700; color: var(--lw-muted); border-bottom: 1px solid var(--lw-border); display: flex; justify-content: space-between; align-items: center; flex-shrink: 0; }
.lw-chat-messages { flex: 1; overflow-y: auto; padding: 10px 12px; display: flex; flex-direction: column; gap: 8px; scrollbar-width: thin; }
.lw-msg { display: flex; gap: 8px; }
.lw-msg-avatar { width: 28px; height: 28px; border-radius: 50%; flex-shrink: 0; }
.lw-msg-body { flex: 1; min-width: 0; }
.lw-msg-header { display: flex; align-items: center; gap: 5px; margin-bottom: 1px; }
.lw-msg-pseudo { font-size: 11px; font-weight: 700; }
.lw-msg-time   { font-size: 10px; color: var(--lw-muted); margin-left: auto; }
.lw-msg-text   { font-size: 13px; color: #c8d6e5; word-break: break-word; line-height: 1.5; }
.lw-msg--anim .lw-msg-pseudo { color: var(--lw-accent); }
.lw-msg--mod  .lw-msg-pseudo { color: #60a5fa; }
.lw-sanction-btn { background: none; border: none; cursor: pointer; font-size: 10px; opacity: 0; padding: 0 3px; color: var(--lw-danger); }
.lw-msg:hover .lw-sanction-btn { opacity: 1; }

/* Input chat */
.lw-chat-input-wrap { border-top: 1px solid var(--lw-border); padding: 8px 12px; flex-shrink: 0; }
#lw-chat-input-area { display: flex; gap: 8px; align-items: center; }
#lw-chat-input { flex: 1; background: var(--lw-surface); border: 1px solid var(--lw-border); border-radius: 8px; padding: 8px 12px; color: var(--lw-text); font-size: 13px; outline: none; font-family: var(--lw-font); }
#lw-chat-input:focus { border-color: var(--lw-primary); }
.lw-char-count { text-align: right; font-size: 10px; color: var(--lw-muted); margin-top: 3px; }
.lw-banned-msg { background: rgba(239,68,68,.1); border: 1px solid rgba(239,68,68,.2); color: #f87171; border-radius: 8px; padding: 10px; font-size: 13px; text-align: center; }

/* Participants */
.lw-participants-section { border-top: 1px solid var(--lw-border); padding: 8px 12px; flex-shrink: 0; }
.lw-participants-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; font-size: 12px; color: var(--lw-muted); }
.lw-participants-count { background: var(--lw-surface); border-radius: 10px; padding: 2px 8px; font-weight: 700; font-size: 11px; color: var(--lw-text); }
.lw-participants-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 6px; margin-bottom: 6px; }
.lw-part-item { display: flex; flex-direction: column; align-items: center; gap: 2px; }
.lw-part-item img { width: 34px; height: 34px; border-radius: 50%; border: 2px solid var(--lw-border); }
.lw-part-item span { font-size: 9px; color: var(--lw-muted); overflow: hidden; white-space: nowrap; max-width: 100%; text-align: center; text-overflow: ellipsis; }
.lw-all-part-row { display: flex; align-items: center; gap: 10px; padding: 6px 0; border-bottom: 1px solid var(--lw-border); }
.lw-all-part-row img { width: 30px; height: 30px; border-radius: 50%; }

/* ── Modales ─────────────────────────────────────────────────*/
.lw-modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.8); display: flex; align-items: center; justify-content: center; z-index: 99999; backdrop-filter: blur(4px); }
.lw-modal { background: var(--lw-card); border: 1px solid var(--lw-border); border-radius: 16px; max-width: 580px; width: 94%; max-height: 92vh; overflow-y: auto; box-shadow: var(--lw-shadow); }
.lw-modal--small { max-width: 420px; }
.lw-modal-header { display: flex; align-items: center; gap: 14px; padding: 20px 24px; border-bottom: 1px solid var(--lw-border); }
.lw-modal-header h2, .lw-modal-header h3 { margin: 0; font-size: 1.1rem; }
.lw-modal-icon { font-size: 2rem; }
.lw-modal-close { margin-left: auto; background: none; border: none; color: var(--lw-muted); cursor: pointer; font-size: 18px; }
.lw-modal-body { padding: 20px 24px; }
.lw-modal-footer { padding: 16px 24px; border-top: 1px solid var(--lw-border); display: flex; flex-direction: column; gap: 12px; }
.lw-checkbox-label { display: flex; align-items: flex-start; gap: 10px; cursor: pointer; font-size: 14px; }
.lw-checkbox-label input { margin-top: 2px; flex-shrink: 0; width: 16px; height: 16px; accent-color: var(--lw-primary); }
.lw-rules-content { background: var(--lw-surface); border-radius: 10px; padding: 18px; max-height: 300px; overflow-y: auto; }
.lw-rules-content h3 { margin: 0 0 12px; color: var(--lw-accent); }
.lw-rules-content p  { margin: 0 0 10px; font-size: 13px; color: var(--lw-muted); }
.lw-rules-content ul { padding-left: 0; list-style: none; display: flex; flex-direction: column; gap: 7px; }
.lw-rules-content li { font-size: 13px; line-height: 1.5; }

/* Règlement bas de page */
.lw-rules-footer { border-top: 1px solid var(--lw-border); background: var(--lw-dark); flex-shrink: 0; }
.lw-rules-footer details { padding: 8px 20px; }
.lw-rules-footer summary { cursor: pointer; font-size: 11px; color: var(--lw-muted); user-select: none; }
.lw-rules-reminder ul { display: flex; flex-wrap: wrap; gap: 5px; margin: 6px 0 0; padding: 0; list-style: none; }
.lw-rules-reminder li { font-size: 10px; background: var(--lw-surface); border-radius: 4px; padding: 3px 8px; color: var(--lw-muted); }

/* Sanctions */
.lw-sanction-types { display: flex; flex-direction: column; gap: 10px; margin-bottom: 14px; }
.lw-sanction-types label { display: flex; align-items: center; gap: 8px; font-size: 14px; cursor: pointer; }
#lw-sanction-reason { width: 100%; background: var(--lw-surface); border: 1px solid var(--lw-border); border-radius: 8px; color: var(--lw-text); padding: 10px; font-family: var(--lw-font); font-size: 13px; resize: vertical; }

/* ── Admin media box ─────────────────────────────────────────*/
.lw-video-file-preview { display: flex; align-items: center; gap: 10px; padding: 10px; background: #f9f9f9; border-radius: 6px; border: 1px solid #ddd; }
.lw-video-file-preview span { font-size: 1.4rem; }

/* ── Responsive ──────────────────────────────────────────────*/
@media (max-width: 768px) {
  .lw-hero { min-height: 300px; }
  .lw-hero-title { font-size: 1.5rem; }
  /* Compte à rebours une ligne sur mobile */
  .lw-countdown { gap: 6px; flex-wrap: nowrap; }
  .lw-cd-num { font-size: 1.3rem; min-width: 44px; padding: 6px 8px; border-radius: 7px; }
  .lw-cd-block small { font-size: 9px; }
  .lw-cd-sep { font-size: 1.4rem; margin-bottom: 14px; }
  .lw-countdown-section { padding: 24px 12px; }
  .lw-countdown-label { font-size: 10px; margin-bottom: 10px; }
  .lw-body-grid { grid-template-columns: 1fr; padding: 24px 16px 40px; }
  .lw-room-body { grid-template-columns: 1fr; height: auto; }
  .lw-col-videos { height: 260px; }
  .lw-col-chat   { height: 480px; border-left: none; border-top: 1px solid var(--lw-border); }
}
@media (max-width: 480px) {
  .lw-cd-num { font-size: 1.1rem; min-width: 36px; padding: 5px 6px; }
  .lw-cd-sep { font-size: 1.1rem; }
  .lw-countdown { gap: 4px; }
}

/* ── Formulaire alerte inline (sidebar CTA) ────────────────────────── */
.lw-cta-alert-mini { display:flex; flex-direction:column; gap:8px; }
.lw-cta-alert-label { font-size:12px; font-weight:700; color:var(--lw-muted,#94a3b8); }
.lw-cta-alert-row { display:flex; gap:8px; }
.lw-cta-alert-row input {
  flex:1; padding:9px 12px; border-radius:8px;
  background:var(--lw-surface,#16213e); border:1px solid var(--lw-border,#2d3748);
  color:var(--lw-text,#e2e8f0); font-size:13px; outline:none;
  font-family:var(--lw-font,'Segoe UI',system-ui,sans-serif);
  transition:border-color .2s;
}
.lw-cta-alert-row input:focus { border-color:#7c3aed; }
.lw-cta-alert-row input::placeholder { color:rgba(148,163,184,.5); }
.lw-cta-alert-row button {
  padding:9px 16px; border-radius:8px; border:none; white-space:nowrap;
  background:linear-gradient(135deg,#7c3aed,#9333ea); color:#fff;
  font-size:12px; font-weight:700; cursor:pointer;
  font-family:var(--lw-font,'Segoe UI',system-ui,sans-serif);
  transition:all .2s; box-shadow:0 3px 12px rgba(124,58,237,.3);
}
.lw-cta-alert-row button:hover { background:linear-gradient(135deg,#6d28d9,#7c3aed); transform:translateY(-1px); }
.lw-cta-alert-row button:disabled { opacity:.6; cursor:not-allowed; transform:none; }
.lw-cta-alert-ok {
  background:rgba(34,197,94,.1); border:1px solid rgba(34,197,94,.2);
  border-radius:8px; padding:9px 12px; color:#4ade80;
  font-size:12px; font-weight:600;
}
.lw-cta-alert-err {
  background:rgba(239,68,68,.08); border:1px solid rgba(239,68,68,.2);
  border-radius:6px; padding:7px 10px; color:#f87171; font-size:11px;
}

/* ── RESPONSIVE COUNTDOWN – une ligne sur mobile/tablette ────────────────── */
@media (max-width: 900px) {
  .lw-countdown { gap: 8px; flex-wrap: nowrap; }
  .lw-cd-num { font-size: 1.8rem; min-width: 56px; padding: 8px 12px; }
  .lw-cd-sep { font-size: 1.8rem; }
  .lw-countdown-section { padding: 28px 16px; }
}
@media (max-width: 600px) {
  .lw-countdown { gap: 5px; }
  .lw-cd-num { font-size: 1.3rem; min-width: 40px; padding: 6px 8px; border-radius: 7px; }
  .lw-cd-block small { font-size: 9px; }
  .lw-cd-sep { font-size: 1.2rem; margin-bottom: 12px; }
  .lw-countdown-label { font-size: 10px; letter-spacing: 1px; }
  .lw-countdown-section { padding: 20px 12px; }
}
@media (max-width: 400px) {
  .lw-cd-num { font-size: 1.05rem; min-width: 32px; padding: 5px 5px; }
  .lw-cd-sep { font-size: 1rem; }
}

/* ── RESPONSIVE PAGE LIVE – compte à rebours sur une ligne ──────────────── */
.lw-public-page .lw-countdown { flex-wrap: nowrap !important; }

/* ── CORRECTIFS LIVE ────────────────────────────────────────── */
/* Badge EN DIRECT → vert fluo */
.lw-live-badge,
.lw-badge--en_cours {
  background: rgba(34,197,94,.15) !important;
  color: #22c55e !important;
  border-color: rgba(34,197,94,.3) !important;
}
.lw-badge-en_cours span,
.lw-live-badge::before {
  background: #22c55e !important;
  box-shadow: 0 0 6px #22c55e !important;
}
/* Point clignotant dans les shortcodes */
.lw-avenir-hero__dot--live { background:#22c55e !important; }
