/* ============================================================================
   LCDD — Design system front (v0.7)
   Palette neutre (Figma : #333 / #F2F2F2) + accents personnalisables par page.
   Objectif : rendu média moderne, lisible, accessible, parfait desktop/tablette/mobile.
   ========================================================================== */

/* @socle-jeu */
:root {
	--lcdd-primary:#113F59; --lcdd-primary-600:#0d3247;
	/* 0.12.77 — l'APLAT (fond de bouton, de bandeau) séparé de l'ENCRE : un thème
	   sombre passe --lcdd-primary en crème pour les titres, et les fonds ne
	   doivent pas le suivre. Par défaut, les deux coïncident. */
	--lcdd-aplat:var(--lcdd-primary); --lcdd-secondary:#19BEC0; --lcdd-secondary-ink:#0c6d6f;
	--lcdd-accent:#19BEC0; --lcdd-cream:#F3EDD3; --lcdd-text:#1b2733; --lcdd-muted:#5f7078;
	--lcdd-bg:#ffffff; --lcdd-surface:#f4f7f8; --lcdd-surface-2:#e9eff1;
	--lcdd-border:#e2e8ea; --lcdd-live:#D54F58;
	--lcdd-radius:16px; --lcdd-radius-sm:11px; --lcdd-radius-xs:8px;
	--lcdd-font:"Segoe UI",-apple-system,BlinkMacSystemFont,Roboto,Helvetica,Arial,sans-serif;
	--lcdd-shadow:0 1px 2px rgba(16,24,40,.04),0 6px 24px rgba(16,24,40,.06);
	--lcdd-shadow-lg:0 18px 50px rgba(16,24,40,.16);
	--lcdd-ring:0 0 0 3px color-mix(in srgb, var(--lcdd-accent) 40%, transparent);
}
/* @fin-socle-jeu */

/* ---------- Base & accessibilité ---------- */
.lcdd{font-family:var(--lcdd-font);color:var(--lcdd-text);line-height:1.55;-webkit-font-smoothing:antialiased;}
.lcdd *,.lcdd *::before,.lcdd *::after{box-sizing:border-box;}
.lcdd-page{max-width:1220px;margin:0 auto;padding:1.5rem 1.1rem 3.5rem;}
.lcdd-page--narrow{max-width:760px;}
.lcdd-section{margin:2.5rem 0;}
.lcdd-muted{color:var(--lcdd-muted);}
body.lcdd-noscroll{overflow:hidden;}
.lcdd-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;}
.lcdd :focus-visible,.lcdd-topbar-wrap :focus-visible{outline:none;box-shadow:var(--lcdd-ring);border-radius:8px;}
@media (prefers-reduced-motion:reduce){.lcdd *,.lcdd-topbar-wrap *{animation:none!important;transition:none!important;}}

/* ---------- Titres ---------- */
.lcdd-h2{font-size:clamp(1.35rem,2.4vw,1.7rem);margin:0 0 1.1rem;letter-spacing:-.01em;}
.lcdd-h3{font-size:1.15rem;margin:0 0 .8rem;letter-spacing:-.01em;}
.lcdd-eyebrow{font-size:.875rem;font-weight:600;color:var(--lcdd-muted);margin:0 0 .35rem;}

/* ---------- Hero ---------- */
.lcdd-hero{position:relative;overflow:hidden;background-color:var(--lcdd-aplat);
	background:linear-gradient(135deg,var(--lcdd-aplat),color-mix(in srgb,var(--lcdd-aplat) 62%,#000));
	color:#fff;border-radius:var(--lcdd-radius);padding:clamp(1.6rem,4vw,2.6rem);margin-bottom:1.75rem;box-shadow:var(--lcdd-shadow);}
.lcdd-hero::after{content:"";position:absolute;right:-80px;top:-80px;width:280px;height:280px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--lcdd-secondary) 45%,transparent),transparent 70%);}
.lcdd-hero__title{margin:0 0 .55rem;font-size:clamp(1.7rem,3.4vw,2.5rem);line-height:1.12;letter-spacing:-.02em;}
.lcdd-hero__sub{margin:0;max-width:62ch;opacity:.94;font-size:clamp(1rem,1.4vw,1.12rem);}
.lcdd-hero__cta{margin-top:1.4rem;}

/* ---------- Boutons ---------- */
/* @socle-jeu */
.lcdd-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;padding:.65rem 1.35rem;
	border:2px solid transparent;border-radius:999px;background:var(--lcdd-aplat);color:#fff;font:inherit;font-weight:650;cursor:pointer;
	text-decoration:none;transition:transform .08s ease,box-shadow .15s ease,filter .15s ease;box-shadow:0 1px 2px rgba(16,24,40,.12);}
.lcdd-btn:hover{filter:brightness(1.07);box-shadow:0 6px 18px rgba(31,58,95,.28);}
.lcdd-btn:active{transform:translateY(1px);}
.lcdd-btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none;}
.lcdd-btn--lg{min-height:54px;padding:.85rem 1.8rem;font-size:1.05rem;}
.lcdd-btn--block{width:100%;}
.lcdd-btn--ghost{background:transparent;color:var(--lcdd-primary);border-color:currentColor;box-shadow:none;}
.lcdd-hero .lcdd-btn--ghost{color:#fff;}
.lcdd-btn--live{background:var(--lcdd-live);}
.lcdd-btn--stop{background:#111827;}
/* @fin-socle-jeu */

/* ---------- Cartes / panneaux ---------- */
.lcdd-panel{background:var(--lcdd-bg);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);padding:1.4rem 1.5rem;box-shadow:var(--lcdd-shadow);}
.lcdd-panel .lcdd-h3{color:var(--lcdd-primary);}
.lcdd-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;align-items:stretch;}

/* ---------- Badges ---------- */
.lcdd-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.3rem .8rem;border-radius:999px;font-size:.76rem;font-weight:800;letter-spacing:.02em;background:var(--lcdd-surface-2);color:var(--lcdd-text);white-space:nowrap;}
.lcdd-badge--role{background:var(--lcdd-secondary);color:var(--lcdd-primary);}
.lcdd-badge--soon{background:var(--lcdd-cream);color:#6b5a1e;}
.lcdd-badge--live{background:var(--lcdd-live);color:#fff;}
/* Les deux états qui manquaient : un atelier fini sans sa vidéo, et un replay
   en ligne. Sans eux, « Bientôt » restait affiché sur un atelier terminé. */
.lcdd-badge--done{background:var(--lcdd-surface-2);color:var(--lcdd-muted,#5b6570);}
/* ⚠ Blanc sur crème la nuit (1,1:1) : le thème fait de --lcdd-ink un crème. Couleurs fixes. (0.13.0) */
.lcdd-badge--replay{background:#F3EDD3;color:#0B2A3B;box-shadow:inset 0 0 0 1px rgba(11,42,59,.25);}
.lcdd-dot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block;animation:lcdd-pulse 1.4s infinite;}
@keyframes lcdd-pulse{0%,100%{opacity:1;transform:scale(1);}50%{opacity:.35;transform:scale(.65);}}

/* ---------- Formulaires (soignés, cohérents) ---------- */
.lcdd-form label{display:block;margin:.9rem 0;font-weight:650;color:var(--lcdd-text);}
.lcdd-input,.lcdd-form input[type=text],.lcdd-form input[type=email],.lcdd-form input[type=datetime-local],
.lcdd-form textarea,.lcdd-form select,.lcdd-searchbar input,.lcdd-question-form__form textarea{
	display:block;width:100%;margin-top:.35rem;min-height:48px;padding:.7rem .95rem;color:var(--lcdd-text);
	border:1.5px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm);font:inherit;background:var(--lcdd-bg,#fff);transition:border-color .15s,box-shadow .15s;}
.lcdd-form textarea,.lcdd-question-form__form textarea{min-height:96px;resize:vertical;line-height:1.5;}
.lcdd-form input:focus,.lcdd-form textarea:focus,.lcdd-form select:focus,.lcdd-searchbar input:focus,.lcdd-question-form__form textarea:focus{
	outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-question-form__form{display:grid;gap:.7rem;}
.lcdd-question-form__feedback{margin:0;font-size:.9rem;color:var(--lcdd-muted);}
.lcdd-question-form__form .lcdd-btn{justify-self:start;}
.lcdd-alert{padding:.8rem 1.1rem;border-radius:var(--lcdd-radius-sm);margin-bottom:1rem;font-weight:600;}
.lcdd-alert--ok{background:#e7f7ee;color:#0f5132;}
.lcdd-alert--err{background:#fdecec;color:#842029;}

/* ---------- Dashboard ---------- */
.lcdd-dashboard{max-width:1220px;margin:0 auto;padding:1.5rem 1.1rem 3.5rem;}
.lcdd-dash__head{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:1.6rem;}
.lcdd-dash__title{margin:0;font-size:clamp(1.5rem,3vw,2.1rem);letter-spacing:-.02em;}
.lcdd-dash__meta{margin:.6rem 0 0;color:var(--lcdd-muted);}
.lcdd-dash__n{font-variant-numeric:tabular-nums;}
.lcdd-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.9rem;margin-bottom:1.8rem;}
.lcdd-stat{display:flex;align-items:center;gap:.9rem;padding:.85rem 1rem;border-radius:var(--lcdd-radius);
	background:linear-gradient(180deg,var(--lcdd-bg),var(--lcdd-surface));border:1px solid var(--lcdd-border);box-shadow:var(--lcdd-shadow);}
.lcdd-stat__ico{flex:none;width:2.7rem;height:2.7rem;display:flex;align-items:center;justify-content:center;font-size:1.4rem;background:var(--lcdd-surface-2);border-radius:12px;}
.lcdd-stat__txt{display:flex;flex-direction:column;min-width:0;}
.lcdd-stat__value{font-size:1.1rem;font-weight:800;color:var(--lcdd-primary);letter-spacing:-.01em;line-height:1.2;overflow:hidden;text-overflow:ellipsis;}
.lcdd-stat__label{color:var(--lcdd-muted);font-size:.82rem;}

.lcdd-qlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;}
.lcdd-qlist li{display:flex;align-items:center;gap:.7rem;padding:.6rem .8rem;background:var(--lcdd-surface);border-radius:var(--lcdd-radius-sm);}
.lcdd-qlist__votes{flex:none;min-width:2.1rem;height:2.1rem;display:inline-flex;align-items:center;justify-content:center;background:var(--lcdd-aplat);color:#fff;border-radius:8px;font-weight:800;font-size:.85rem;}

/* ---------- Cartes ateliers ---------- */
.lcdd-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:1.25rem;}
.lcdd-acard{display:flex;flex-direction:column;background:var(--lcdd-bg);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);overflow:hidden;box-shadow:var(--lcdd-shadow);transition:transform .14s,box-shadow .14s;}
.lcdd-acard:hover{transform:translateY(-4px);box-shadow:var(--lcdd-shadow-lg);}
.lcdd-acard__thumb{height:140px;display:flex;align-items:center;justify-content:center;font-size:2.3rem;background:linear-gradient(135deg,var(--lcdd-surface),var(--lcdd-surface-2));color:var(--lcdd-primary);}
.lcdd-acard--live .lcdd-acard__thumb{background:linear-gradient(135deg,#2a0a12,#4a0f1e);}
.lcdd-acard__body{display:flex;flex-direction:column;gap:.55rem;padding:1.15rem 1.3rem;flex:1;}
.lcdd-acard__title{margin:0;font-size:1.12rem;letter-spacing:-.01em;}
.lcdd-acard__desc{margin:0;color:var(--lcdd-muted);font-size:.92rem;}
.lcdd-acard__time{color:var(--lcdd-secondary-ink);font-weight:700;font-size:.85rem;}
.lcdd-acard .lcdd-btn{margin-top:auto;align-self:flex-start;}

/* ---------- Recherche ---------- */
.lcdd-searchbar{display:flex;gap:.6rem;margin-bottom:1.6rem;}
.lcdd-searchbar input{margin:0;min-height:52px;border-radius:999px;padding-inline:1.2rem;}
.lcdd-hits{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.2rem;}
.lcdd-hit{display:flex;align-items:center;gap:.7rem;padding:.8rem .6rem;border-bottom:1px solid var(--lcdd-border);}
.lcdd-hit a{color:var(--lcdd-accent);text-decoration:none;font-weight:600;}
.lcdd-hit a:hover{text-decoration:underline;}

/* ============================================================================
   DIRECT — scène média + panneau questions
   ========================================================================== */
/* ⚠ « meta panel », et non « meta meta » (0.20.8) : le panneau de droite est
   épinglé (`sticky`) et sa course est la grille ENTIÈRE. Quand les cartes
   (intervenants, description, références) occupaient toute la largeur de la
   seconde rangée, le panneau des chapitres descendait sur la carte
   « Références » au défilement — mesuré : dès 600 px, à 1100 et 1400 px de
   large. La colonne de droite n appartient plus qu à lui : il reste épinglé
   pendant toute la lecture, et rien ne passe dessous. */
.lcdd-live{display:grid;gap:1.5rem;grid-template-columns:minmax(0,1fr) 380px;grid-template-areas:"stage panel" "meta panel";align-items:start;}
.lcdd-stage{grid-area:stage;min-width:0;}
.lcdd-qpanel{grid-area:panel;}
.lcdd-live__meta{grid-area:meta;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.25rem;align-items:start;}

/* -- Scène -- */
.lcdd-stage__bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.9rem;}
.lcdd-stage__title{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .7rem;min-width:0;}
.lcdd-stage__title .lcdd-badge{flex:none;}
.lcdd-stage__h1{margin:0;font-size:clamp(1.25rem,2.2vw,1.9rem);letter-spacing:-.02em;line-height:1.2;}
.lcdd-stage__tools{display:flex;gap:.5rem;flex:none;}
.lcdd-iconbtn{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:.4rem .8rem;border:1.5px solid var(--lcdd-border);
	background:var(--lcdd-bg);color:var(--lcdd-text);border-radius:999px;font:inherit;font-weight:600;font-size:.88rem;cursor:pointer;transition:background .15s,border-color .15s;}
.lcdd-iconbtn:hover{background:var(--lcdd-surface);border-color:var(--lcdd-primary);}
.lcdd-iconbtn[hidden]{display:none;}
.lcdd-iconbtn[aria-pressed=true]{background:var(--lcdd-aplat);color:#fff;border-color:var(--lcdd-primary);}

.lcdd-stage__video{position:relative;aspect-ratio:16/9;width:min(100%,calc((100vh - 260px)*16/9));margin-inline:auto;
	background:radial-gradient(120% 120% at 50% 0%,#16233b,#0a0f1a);border-radius:var(--lcdd-radius);overflow:hidden;box-shadow:var(--lcdd-shadow-lg);}
.lcdd-stage__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.lcdd-stage__video{background:linear-gradient(135deg,#0e2f43,#0b2233);}
.lcdd-stage__placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;color:#e7eefb;text-align:center;padding:1.5rem;background:linear-gradient(135deg,#0e2f43,#0b2233);}
.lcdd-stage__ph-label{margin:0;opacity:.75;font-size:.8125rem;}
.lcdd-countdown--xl{font-size:clamp(1.7rem,5vw,3rem);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.01em;}
.lcdd-countdown--xl small{font-size:.42em;font-weight:600;opacity:.7;margin:0 .55em 0 .22em;}
.lcdd-stage__controls{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap;margin-top:1.1rem;}
.lcdd-stage__hint{color:var(--lcdd-muted);font-size:.88rem;}

/* -- Panneau questions -- */
.lcdd-qpanel{align-self:stretch;height:100%;max-height:calc(100vh - 2rem);display:flex;flex-direction:column;overflow:hidden;
	background:var(--lcdd-bg);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);box-shadow:var(--lcdd-shadow);}
.lcdd-qpanel__head{padding:1.15rem 1.25rem .8rem;border-bottom:1px solid var(--lcdd-border);}
.lcdd-qpanel__headrow{display:flex;align-items:center;justify-content:space-between;gap:.5rem;}
.lcdd-qpanel__title{margin:0;font-size:1.15rem;letter-spacing:-.01em;}
.lcdd-qpanel__sub{margin:.3rem 0 0;color:var(--lcdd-muted);font-size:.86rem;}
.lcdd-qpanel__close{display:none;min-width:36px;min-height:36px;border:0;background:var(--lcdd-surface);border-radius:8px;cursor:pointer;font-size:1rem;}
.lcdd-qcount{font-size:.85rem;color:var(--lcdd-muted);font-weight:700;}
.lcdd-qcount--warn{color:var(--lcdd-live);}
.lcdd-qpanel__scroll{flex:1 1 auto;min-height:0;overflow-y:auto;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:1.1rem;scrollbar-width:thin;}
.lcdd-qlist-live{display:flex;flex-direction:column;gap:.65rem;}
.lcdd-qpanel__pending{border-top:1px dashed var(--lcdd-border);padding-top:.9rem;}
.lcdd-qpanel__ph{margin:0 0 .6rem;font-size:.82rem;color:var(--lcdd-muted);}
.lcdd-live__empty{color:var(--lcdd-muted);font-style:italic;margin:.2rem 0;}

/* Carte question votable */
.lcdd-q{display:flex;gap:.8rem;align-items:flex-start;padding:.85rem .95rem;background:var(--lcdd-surface);border:1px solid transparent;border-radius:var(--lcdd-radius-sm);will-change:transform;}
.lcdd-q--pending{background:rgba(229,180,90,.12);border-color:rgba(229,180,90,.40);}
.lcdd-q__body{min-width:0;flex:1;}
.lcdd-q__author{display:block;font-weight:800;font-size:.78rem;color:var(--lcdd-primary);}
.lcdd-q__text{margin:.12rem 0 0;font-size:.95rem;overflow-wrap:anywhere;}
.lcdd-q__vote{flex:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-width:50px;min-height:54px;padding:.35rem;
	border:1.5px solid var(--lcdd-border);border-radius:12px;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);cursor:pointer;font:inherit;line-height:1;transition:transform .12s,background .15s,border-color .15s,color .15s;}
.lcdd-q__vote:hover{border-color:var(--lcdd-primary);transform:translateY(-1px);}
.lcdd-q__arrow{font-size:.8rem;}
.lcdd-q__count{font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums;}
.lcdd-q__vote.is-voted{background:var(--lcdd-aplat);border-color:var(--lcdd-primary);color:#fff;}
.lcdd-q__mod{display:flex;flex-direction:column;gap:.3rem;}
.lcdd-q__mod button{min-width:40px;min-height:40px;border:0;border-radius:9px;cursor:pointer;font-size:1rem;box-shadow:0 1px 2px rgba(0,0,0,.08);}
.lcdd-q__ok{background:#e7f7ee;color:#0f5132;}
.lcdd-q__no{background:#fdecec;color:#842029;}
.lcdd-q__no--soft{background:transparent;box-shadow:none;color:var(--lcdd-live);opacity:.45;}
.lcdd-q:hover .lcdd-q__no--soft,.lcdd-q__no--soft:focus-visible{opacity:1;}

/* Composer (corrigé : plus de débordement) */
.lcdd-composer{display:flex;gap:.55rem;padding:.9rem 1.1rem;border-top:1px solid var(--lcdd-border);background:var(--lcdd-bg);align-items:center;}
.lcdd-composer--login{display:block;}
.lcdd-composer__input{flex:1 1 auto;min-width:0;margin:0;min-height:46px;padding:.6rem .9rem;border:1.5px solid var(--lcdd-border);border-radius:999px;font:inherit;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);}
.lcdd-composer__input:focus{outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-composer__send{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;min-height:46px;padding:.55rem 1.1rem;border:0;border-radius:999px;background:var(--lcdd-aplat);color:#fff;font:inherit;font-weight:700;cursor:pointer;}
.lcdd-composer__send:hover{filter:brightness(1.07);}
.lcdd-composer__toast{margin:0;padding:.4rem 1.1rem .9rem;color:var(--lcdd-primary);font-size:.86rem;font-weight:600;}

/* ---- Tablette / mobile ---- */
@media (max-width:1000px){
	.lcdd-live{grid-template-columns:1fr;grid-template-areas:"stage" "panel" "meta";gap:1.25rem;}
	.lcdd-qpanel{position:static;max-height:none;}
	.lcdd-qpanel__scroll{max-height:56vh;}
	.lcdd-live__meta{grid-template-columns:1fr;}
	.lcdd-stage__video{width:100%;}
}
@media (max-width:520px){
	.lcdd-stage__h1{white-space:normal;font-size:1.2rem;}
	.lcdd-iconbtn span:not(.lcdd-ico){display:none;} /* icônes seules sur petit écran */
	.lcdd-composer__sendtxt{display:none;}
}

/* ============================================================================
   MODE CINÉMA (overlay page) & PLEIN ÉCRAN (API) — concentration absolue
   ========================================================================== */
/* (ancienne règle « cinéma » supprimée : voir le bloc MODE IMMERSIF en fin de fichier) */
@media (prefers-reduced-motion:reduce){}

/* ============================================================================
   Bandeau global (au-dessus du header)
   ========================================================================== */
.lcdd-topbar-wrap[hidden]{display:none;}
.lcdd-topbar{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;padding:.65rem 1rem;font-family:var(--lcdd-font);font-size:.95rem;color:#fff;}
.lcdd-topbar--live{background:linear-gradient(90deg,var(--lcdd-live),#b3123b);}
.lcdd-topbar--soon{background:linear-gradient(90deg,var(--lcdd-aplat),var(--lcdd-primary-600));}
.lcdd-topbar__badge{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;}
.lcdd-topbar__label{font-weight:500;}
.lcdd-topbar__cta{color:#fff;font-weight:800;text-decoration:none;border-bottom:2px solid rgba(255,255,255,.55);}
.lcdd-topbar__cta:hover{border-color:#fff;}
.lcdd-countdown{font-variant-numeric:tabular-nums;font-weight:800;}

/* ============================================================================
   Équilibrage & fignolage (v0.7.1)
   ========================================================================== */
/* Empêche l'étirement des cartes et neutralise les marges de thème */
.lcdd-live__meta{align-items:start;}
.lcdd-live{align-items:start;}
.lcdd-panel > *:first-child{margin-top:0;}
.lcdd-panel > *:last-child{margin-bottom:0;}
.lcdd-panel p{margin:.35rem 0 0;}

/* Bouton de connexion : compact & centré (fin du bouton pleine largeur) */
.lcdd-composer--login{display:flex;justify-content:center;padding:1.1rem;border-top:1px solid var(--lcdd-border);}
.lcdd-composer--login .lcdd-btn{width:auto;}

/* État vide des questions : centré, respirant */
.lcdd-live__empty{margin:0;padding:1.25rem .25rem;text-align:center;color:var(--lcdd-muted);font-style:italic;}

/* Barre d'outils : jolie sur mobile (centrée, pleine largeur des pilules) */
@media (max-width:620px){
	.lcdd-stage__bar{gap:.65rem;}
	.lcdd-stage__title{width:100%;}
	.lcdd-stage__tools{width:100%;}
	.lcdd-stage__tools .lcdd-iconbtn{flex:1;justify-content:center;}
	.lcdd-live__meta .lcdd-panel{padding:1.15rem 1.2rem;}
}

/* Placeholder vidéo : hauteur mini agréable sur petits écrans */
.lcdd-stage__video{min-height:190px;}/* Mode cinéma : barre d'outils compacte au-dessus de la vidéo, bien lisible *//* Le tiroir de questions en cinéma hérite d'un fond net */

/* ---- Resserrage mobile (équilibre général) ---- */
@media (max-width:600px){
	.lcdd-page{padding:1.1rem .9rem 2.5rem;}
	.lcdd-panel{padding:1.15rem 1.2rem;}
	.lcdd-grid{gap:1rem;}
	.lcdd-hero{padding:1.4rem 1.3rem;}
	.lcdd-dash__title{font-size:1.5rem;}
	.lcdd-dash__head{margin-bottom:1.1rem;}
	.lcdd-searchbar{flex-direction:column;}
	.lcdd-searchbar .lcdd-btn{width:100%;}
}

/* Références & mots-clés (page direct) */
.lcdd-reflabel{margin:.6rem 0 .25rem;font-weight:700;font-size:.82rem;color:var(--lcdd-muted);}
.lcdd-reflist{list-style:none;margin:0 0 .3rem;padding:0;display:flex;flex-wrap:wrap;gap:.4rem;}
.lcdd-reflist li{background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:999px;padding:.2rem .7rem;font-size:.85rem;}

/* Sélecteurs de références (création d'atelier) : autocomplétion + puces */
.lcdd-field{margin:.9rem 0;}
.lcdd-field__label{display:block;font-weight:650;margin-bottom:.35rem;}
.lcdd-hint{margin:.35rem 0 0;font-size:.875rem;line-height:1.5;color:var(--lcdd-muted);}
.lcdd-refsearch{display:block;width:100%;min-height:46px;padding:.6rem .9rem;border:1.5px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm);font:inherit;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);}
.lcdd-refsearch:focus{outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-ac{position:relative;display:block;}
/* Signaler (0.15.23) : un point d'exclamation discret, en bas à droite ;
   au-dessus de la barre d'onglets sur téléphone ; jamais dans l'app iOS,
   qui a le sien. */
.lcdd-signaler{position:fixed;right:18px;bottom:18px;z-index:55;width:40px;height:40px;border-radius:50%;border:1px solid var(--lcdd-t-filet,#d9d6cc);background:var(--lcdd-t-surface,#fff);color:var(--lcdd-t-encre-douce,#4a5560);font:600 18px/1 var(--wp--preset--font-family--mono,ui-monospace,monospace);cursor:pointer;opacity:.72;box-shadow:0 2px 10px rgba(0,0,0,.12);transition:opacity .2s,transform .2s;}
.lcdd-signaler:hover,.lcdd-signaler:focus-visible{opacity:1;transform:translateY(-1px);}
@media (max-width:600px){.lcdd-signaler{bottom:96px;right:14px;}}
html.lcdd-app .lcdd-signaler{display:none!important;}
@media print{.lcdd-signaler{display:none;}}
/* La fenêtre de signalement (0.15.24, sur le modèle choisi par Ambroise) :
   en-tête et pied fixes, corps qui défile ; plein écran sur téléphone. */
.lcdd-signal{width:min(760px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:12px;background:var(--lcdd-t-fond,#fff);color:var(--lcdd-t-encre,#111);box-shadow:0 24px 70px rgba(0,0,0,.4);overflow:hidden;}
.lcdd-signal[open]{display:flex;}
.lcdd-signal::backdrop{background:rgba(5,15,25,.6);}
.lcdd-signal__form{display:flex;flex-direction:column;width:100%;max-height:inherit;margin:0;}
.lcdd-signal__tete{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--lcdd-t-filet,#d9d6cc);}
.lcdd-signal__tete h2{margin:0;font-size:1.3125rem;line-height:1.25;font-weight:600;}
.lcdd-signal__x{width:44px;height:44px;margin:-8px -10px -8px 0;border:0;background:none;color:inherit;font-size:28px;line-height:1;cursor:pointer;border-radius:8px;}
.lcdd-signal__x:hover{background:var(--lcdd-t-surface,#f4f3ef);}
.lcdd-signal__corps{flex:1 1 auto;overflow:auto;padding:20px 24px 8px;display:flex;flex-direction:column;gap:18px;}
.lcdd-signal__depuis{margin:0;align-self:flex-start;max-width:100%;padding:10px 16px;border-radius:8px;background:var(--lcdd-t-surface,#f4f3ef);font-size:.9375rem;color:var(--lcdd-t-encre-douce,#4a5560);}
.lcdd-signal__depuis strong{margin-left:6px;color:var(--lcdd-t-encre,#111);}
.lcdd-signal__aide,.lcdd-signal__note,.lcdd-signal__ou{margin:0;font-size:.9375rem;line-height:1.5;color:var(--lcdd-t-encre-douce,#4a5560);}
.lcdd-signal__note{font-size:.875rem;}
.lcdd-signal__natures{margin:0;padding:0;border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.lcdd-signal__natures legend,.lcdd-signal__champ label,.lcdd-signal__images h3{display:block;margin:0 0 8px;padding:0;font-size:1rem;font-weight:600;color:var(--lcdd-t-encre,#111);}
.lcdd-signal__nature{position:relative;display:block;}
.lcdd-signal__nature input{position:absolute;opacity:0;pointer-events:none;}
.lcdd-signal__nature span{display:flex;flex-direction:column;gap:3px;min-height:64px;box-sizing:border-box;padding:12px 16px;border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s;}
.lcdd-signal__nature strong{font-size:.9844rem;font-weight:600;}
.lcdd-signal__nature small{font-size:.875rem;color:var(--lcdd-t-encre-douce,#4a5560);}
.lcdd-signal__nature input:checked+span{border:2px solid #20D6C7;padding:11px 15px;background:color-mix(in srgb,#20D6C7 10%,transparent);}
.lcdd-signal__nature input:focus-visible+span{outline:2px solid var(--lcdd-t-encre,#111);outline-offset:2px;}
.lcdd-signal__champ input[type=text],.lcdd-signal textarea{box-sizing:border-box;width:100%;padding:12px 14px;border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:8px;background:var(--lcdd-t-surface,#fff);color:inherit;font:inherit;font-size:1rem;}
.lcdd-signal__champ input[type=text]{height:52px;}
.lcdd-signal textarea{min-height:130px;resize:vertical;}
.lcdd-signal__champ .lcdd-signal__note{margin-top:6px;}
.lcdd-signal__images{display:flex;flex-direction:column;gap:10px;align-items:flex-start;}
.lcdd-signal__images h3{margin:0;}
.lcdd-signal__case{display:flex;gap:10px;align-items:flex-start;font-size:.9375rem;line-height:1.5;cursor:pointer;}
.lcdd-signal__case input{width:20px;height:20px;margin:2px 0 0;flex:none;accent-color:#20D6C7;}
.lcdd-signal__fichier{position:relative;align-self:stretch;justify-content:center;cursor:pointer;}
.lcdd-signal__fichier input{position:absolute;inset:0;opacity:0;cursor:pointer;}
.lcdd-signal__vignettes{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:12px;}
.lcdd-signal__vignettes li{display:flex;flex-direction:column;gap:4px;width:150px;font-size:.8125rem;color:var(--lcdd-t-encre-douce,#4a5560);}
.lcdd-signal__vignettes img{width:150px;height:96px;object-fit:cover;border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:6px;}
.lcdd-signal__vignettes button{align-self:flex-start;min-height:32px;padding:0;border:0;background:none;color:inherit;text-decoration:underline;cursor:pointer;font-size:.8125rem;}
.lcdd-signal__auto>summary,.lcdd-signal__brut>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600;color:var(--lcdd-t-lien,#0f6b66);}
.lcdd-signal__auto dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:6px 20px;margin:4px 0 12px;font-size:.9375rem;}
.lcdd-signal__auto dt{color:var(--lcdd-t-encre-douce,#4a5560);}
.lcdd-signal__auto dd{margin:0;word-break:break-word;}
.lcdd-signal__auto .lcdd-signal__case{margin-top:10px;}
.lcdd-signal__brut pre{max-height:240px;overflow:auto;margin:6px 0 0;padding:10px;font-size:.75rem;line-height:1.45;background:var(--lcdd-t-surface,#f6f6f4);border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:6px;white-space:pre-wrap;word-break:break-word;}
.lcdd-signal__retour{margin:0;min-height:1.4em;font-size:.9375rem;font-weight:600;}
.lcdd-signal__pied{display:flex;justify-content:flex-end;gap:12px;padding:14px 24px;border-top:1px solid var(--lcdd-t-filet,#d9d6cc);background:var(--lcdd-t-surface,#f4f3ef);}
.lcdd-signal__pied .lcdd-btn{min-height:48px;min-width:120px;justify-content:center;}
@media (max-width:600px){
	.lcdd-signal{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;}
	.lcdd-signal__natures{grid-template-columns:1fr;}
	.lcdd-signal__tete,.lcdd-signal__corps,.lcdd-signal__pied{padding-left:16px;padding-right:16px;}
	.lcdd-signal__pied{padding-bottom:calc(14px + env(safe-area-inset-bottom));}
	.lcdd-signal__pied .lcdd-btn{flex:1;}
	.lcdd-signal__auto dl{grid-template-columns:1fr;gap:2px;}
	.lcdd-signal__auto dd{margin-bottom:8px;}
}
/* Pendant une capture « textes illisibles » : la mise en page reste, les
   mots et les images deviennent des formes floues. */
/* ⚠ Un flou sur les blocs de la page, et non une couleur transparente sur
   chaque élément : le thème impose ses couleurs de titres en !important, plus
   spécifique ; le grand titre et le chapeau restaient lisibles (vu sur la
   capture d'essai, 0.15.24). Le flou, lui, ne se discute pas. */
html.lcdd-masque :is(.wp-site-blocks,#wpadminbar,body>.lcdd-topbar,body>main,body>header,body>footer){filter:blur(11px)!important;}
html.lcdd-masque .lcdd-signaler{visibility:hidden;}
.lcdd-ac__list{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm);box-shadow:var(--lcdd-shadow-lg);max-height:300px;overflow-y:auto;}
.lcdd-ac__item{padding:.6rem .8rem;cursor:pointer;font-size:.92rem;border-bottom:1px solid var(--lcdd-surface);}
.lcdd-ac__item:last-child{border-bottom:0;}
.lcdd-ac__item:hover,.lcdd-ac__item.is-active{background:#eef4ff;color:#113F59;} /* encre explicite (0.13.2) : la nuit, le texte crème hérité disparaissait sur ce fond clair */
.lcdd-ac__msg{padding:.65rem .8rem;color:var(--lcdd-muted);font-size:.88rem;}
.lcdd-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin:0 0 .5rem;}
.lcdd-chip{display:inline-flex;align-items:center;gap:.4rem;padding:.28rem .35rem .28rem .7rem;background:#eef4ff;color:#113F59;border:1px solid #cfe0ff;border-radius:999px;font-size:.86rem;max-width:100%;} /* color : même raison (0.13.2) */
.lcdd-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:min(70vw,420px);}
.lcdd-chip button{display:inline-flex;align-items:center;justify-content:center;border:0;background:#d7e3fb;color:#113F59;border-radius:50%;width:22px;height:22px;font-size:.95rem;line-height:1;padding:0;cursor:pointer;flex:none;}
.lcdd-chip button:hover{background:#c2d5f7;}

/* ============================================================================
   Corrections d'intégration thème (Kadence / GeneratePress) — contraste & boutons
   ========================================================================== */
/* Le thème force une couleur foncée sur les titres : on garantit le blanc dans les hero. */
.lcdd-hero .lcdd-hero__title,
.lcdd-hero h1,
.lcdd-hero h2,
.lcdd-hero h3 { color: #fff !important; }
.lcdd-hero .lcdd-hero__sub { color: #fff !important; opacity: .94; }

/* Les boutons ne doivent jamais couper leur libellé sur deux lignes. */
/* @socle-jeu */
.lcdd-btn { white-space: nowrap; }
/* @fin-socle-jeu */
.lcdd-searchbar .lcdd-btn { flex: 0 0 auto; }

/* ============================================================================
   Formulaire d'atelier — champ unifié (tout aligné, hyper clean)
   ========================================================================== */
.lcdd-formstack{display:flex;flex-direction:column;gap:1.15rem;}
.lcdd-formstack .lcdd-field{margin:0;}
.lcdd-formstack .lcdd-field__label{display:block;font-weight:700;margin:0 0 .45rem;color:var(--lcdd-text);}
.lcdd-control{display:block;width:100%;box-sizing:border-box;min-height:48px;padding:.7rem .95rem;margin:0;
	border:1.5px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm);font:inherit;font-size:1rem;
	background:var(--lcdd-bg,#fff);color:var(--lcdd-text);transition:border-color .15s,box-shadow .15s;line-height:1.4;}
select.lcdd-control{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%235f7078' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .9rem center;padding-right:2.4rem;}
textarea.lcdd-control{min-height:110px;resize:vertical;line-height:1.55;}
.lcdd-control:focus,.lcdd-refsearch:focus{outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-refsearch{box-sizing:border-box;width:100%;min-height:48px;padding:.7rem .95rem;border:1.5px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm);font:inherit;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);}
.lcdd-formstack .lcdd-hint{margin:.4rem 0 0;font-size:.82rem;color:var(--lcdd-muted);}
.lcdd-formstack .lcdd-btn{align-self:flex-start;margin-top:.3rem;}

/* ============================================================================
   Références alignées (neutralise l'indentation de liste du thème) + Intervenants
   ========================================================================== */
.lcdd .lcdd-reflist{list-style:none;margin:.2rem 0 1.5rem;padding:0;display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-start;}
.lcdd .lcdd-reflist li{margin:0;list-style:none;background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:999px;padding:.3rem .85rem;font-size:.85rem;line-height:1.3;}
.lcdd .lcdd-reflabel{margin:1.8rem 0 .85rem;padding:0;font-weight:600;font-size:.8125rem;color:var(--lcdd-secondary-ink);}
.lcdd .lcdd-reflabel:first-child{margin-top:0;}
.lcdd-refblock{margin:0;}

/* Intervenants */
.lcdd-people{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem;}
.lcdd-person{display:flex;align-items:center;gap:.7rem;}
.lcdd-person img,.lcdd-person .lcdd-person__ph{width:44px;height:44px;border-radius:50%;flex:none;object-fit:cover;background:var(--lcdd-surface-2);
	display:flex;align-items:center;justify-content:center;color:var(--lcdd-secondary-ink);font-weight:800;}
.lcdd-person__meta{display:flex;flex-direction:column;line-height:1.25;min-width:0;}
.lcdd-person__name{font-weight:700;color:var(--lcdd-text);}
.lcdd-person__role{font-size:.8rem;color:var(--lcdd-secondary-ink);font-weight:700;}

/* ============================================================================
   Page « Proposer un atelier » : pleine largeur (hero + formulaire), alignés.
   ========================================================================== */
.lcdd-page--form{max-width:1220px;}
.lcdd-page--form .lcdd-hero{margin-bottom:1.5rem;}

/* Indice de source dans les suggestions d'autocomplétion */
.lcdd-ac__item{display:flex;align-items:center;justify-content:space-between;gap:.8rem;}
.lcdd-ac__hint{flex:none;font-size:.8125rem;font-weight:700;color:var(--lcdd-secondary-ink);opacity:.9;}
.lcdd-ac__item.is-active .lcdd-ac__hint{color:#fff;opacity:.85;}
.lcdd-ac__grouplabel{padding:.45rem .8rem .2rem;font-size:.8125rem;font-weight:600;color:var(--lcdd-muted);}

/* La barre de recherche accueille le dropdown de suggestions */
.lcdd-searchbar .lcdd-ac{flex:1 1 auto;min-width:0;}
.lcdd-searchbar .lcdd-ac input{width:100%;}

/* ============================================================================
   Popup « Proposer ma question » (recherche sans résultat) — responsive
   ========================================================================== */
.lcdd-noresult{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem;margin-top:.4rem;}
.lcdd-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:center;justify-content:center;padding:1rem;}
.lcdd-modal[hidden]{display:none;}
.lcdd-modal__backdrop{position:absolute;inset:0;background:rgba(9,17,28,.55);}
.lcdd-modal__dialog{position:relative;z-index:1;width:min(560px,100%);max-height:90vh;overflow:auto;background:var(--lcdd-bg,#ffffff);color:var(--lcdd-text);
	border-radius:var(--lcdd-radius);box-shadow:var(--lcdd-shadow-lg);padding:1.7rem 1.6rem 1.5rem;}
.lcdd-modal__dialog *{color:inherit;}
.lcdd-modal__close{position:absolute;top:.7rem;right:.7rem;border:0;background:var(--lcdd-surface);width:34px;height:34px;
	border-radius:50%;cursor:pointer;font-size:1rem;line-height:1;color:var(--lcdd-text) !important;display:inline-flex;align-items:center;justify-content:center;}
.lcdd-modal__close:hover{background:var(--lcdd-surface-2);}
.lcdd-modal__title{margin:.1rem 0 .5rem;color:var(--lcdd-primary) !important;font-size:1.35rem;letter-spacing:-.01em;font-weight:800;}
.lcdd-modal__intro{margin:0 0 1.1rem;color:var(--lcdd-muted) !important;line-height:1.6;}
.lcdd-modal__form textarea{width:100%;box-sizing:border-box;min-height:100px;padding:.75rem .9rem;border:1.5px solid var(--lcdd-border);
	border-radius:var(--lcdd-radius-sm);font:inherit;margin:0 0 .9rem;resize:vertical;color:var(--lcdd-text);background:var(--lcdd-bg,#fff);}
.lcdd-modal__form textarea::placeholder{color:#8a97a5;}
.lcdd-modal__form textarea:focus{outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-modal__form .lcdd-btn{width:100%;}
.lcdd-modal__form .lcdd-question-form__feedback{margin:.7rem 0 0;color:var(--lcdd-secondary-ink);font-weight:600;}
@media (max-width:520px){.lcdd-modal__dialog{padding:1.3rem 1.1rem 1.2rem;}}

/* Champ à étiquettes (mots-clés libres) */
.lcdd-tagfield .lcdd-chips{margin-bottom:.5rem;}

/* ============================================================================
   Fiche intervenant (édition + fiche publique) — sobre et pro
   ========================================================================== */
.lcdd-grid2{display:grid;grid-template-columns:1fr 1fr;gap:1.15rem;}
.lcdd-avatar-edit{display:flex;align-items:center;gap:1.1rem;margin-bottom:.6rem;}
.lcdd-avatar-lg{width:96px;height:96px;border-radius:50%;object-fit:cover;border:3px solid var(--lcdd-surface-2);background:var(--lcdd-surface-2);flex:none;}
.lcdd-avatar-edit__actions{display:flex;flex-direction:column;gap:.3rem;}
.lcdd-avatar-edit__actions .lcdd-hint{margin:0;}
/* @socle-jeu */
.lcdd-btn--ghost{background:transparent;color:var(--lcdd-primary);border:1.5px solid var(--lcdd-primary);cursor:pointer;}
.lcdd-btn--ghost:hover{background:var(--lcdd-aplat);color:#fff;}
/* @fin-socle-jeu */
.lcdd-formstack__actions{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;margin-top:.5rem;}
.lcdd-profile{display:flex;gap:1.7rem;align-items:flex-start;}
.lcdd-profile__photo{width:170px;height:170px;border-radius:22px;object-fit:cover;flex:none;background:var(--lcdd-surface-2);}
.lcdd-profile__name{margin:.1rem 0 .35rem;color:var(--lcdd-primary);font-size:1.7rem;letter-spacing:-.01em;}
.lcdd-profile__city{margin:0 0 .9rem;color:var(--lcdd-secondary-ink);font-weight:700;}
.lcdd-profile__bio{margin:0;color:var(--lcdd-text);line-height:1.65;}
.lcdd-person__link{display:flex;align-items:center;gap:.7rem;text-decoration:none;color:inherit;}
.lcdd-person__link:hover .lcdd-person__name{text-decoration:underline;}
@media (max-width:560px){
	.lcdd-grid2{grid-template-columns:1fr;}
	.lcdd-profile{flex-direction:column;align-items:center;text-align:center;}
	.lcdd-profile__photo{width:140px;height:140px;}
}

/* Widget d'upload d'image (front) */
.lcdd-mediaup__preview{margin:0 0 .6rem;}
.lcdd-mediaup__preview img{max-width:100%;max-height:240px;border-radius:12px;display:block;}
.lcdd-mediaup label.lcdd-btn{cursor:pointer;}

/* Bouton « bannir » (modération direct) */
.lcdd-q__ban{border:0;background:transparent;cursor:pointer;font-size:1rem;line-height:1;padding:.15rem .3rem;border-radius:6px;opacity:.7;}
.lcdd-q__ban:hover{opacity:1;background:rgba(213,79,88,.14);}

/* ============================================================================
   Attentes des participants — carte immersive (atelier à venir)
   ========================================================================== */
.lcdd-expect{margin-top:1.6rem;padding:2.3rem 2rem;border-radius:var(--lcdd-radius);
	background:linear-gradient(135deg,var(--lcdd-aplat),var(--lcdd-secondary-ink));color:#fff;box-shadow:var(--lcdd-shadow);position:relative;overflow:hidden;}
.lcdd-expect::after{content:"";position:absolute;top:-40%;right:-10%;width:340px;height:340px;border-radius:50%;
	background:radial-gradient(circle,rgba(25,190,192,.35),transparent 70%);pointer-events:none;}
.lcdd-expect__head{position:relative;z-index:1;}
.lcdd-expect__title{margin:0 0 .55rem;color:#fff;font-size:1.45rem;letter-spacing:-.01em;}
.lcdd-expect__sub{margin:0 0 1.7rem;color:rgba(255,255,255,.86);max-width:62ch;line-height:1.6;}
.lcdd-expect__form{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-start;margin-bottom:1.4rem;}
.lcdd-expect__form textarea{flex:1 1 100%;min-height:128px;border-radius:12px;border:0;padding:1rem 1.15rem;font:inherit;line-height:1.55;resize:vertical;color:var(--lcdd-text);}
.lcdd-expect__form .lcdd-btn{background:var(--lcdd-live);white-space:nowrap;align-self:flex-start;}
.lcdd-expect__form .lcdd-btn:hover{filter:brightness(1.05);}
.lcdd-expect__feedback{flex-basis:100%;margin:.2rem 0 0;color:var(--lcdd-cream);font-weight:600;min-height:1.2em;}
.lcdd-expect__login{position:relative;z-index:1;margin:0 0 1.2rem;}
.lcdd-expect__login .lcdd-btn--ghost{color:#fff;border-color:rgba(255,255,255,.7);}
.lcdd-expect__login .lcdd-btn--ghost:hover{background:#fff;color:#113F59;}
.lcdd-expect__list{position:relative;z-index:1;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;margin-top:.4rem;}
.lcdd-expect__item{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:14px;padding:.9rem 1rem;}
.lcdd-expect__item.is-new{animation:lcdd-pop .35s ease;}
.lcdd-expect__text{margin:0 0 .55rem;color:#fff;line-height:1.5;}
.lcdd-expect__author{font-size:.8rem;font-weight:600;color:var(--lcdd-secondary);}
.lcdd-expect__empty{color:rgba(255,255,255,.85) !important;}
@keyframes lcdd-pop{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:none;}}
@media (max-width:560px){.lcdd-expect__list{grid-template-columns:1fr;}.lcdd-expect__form textarea{flex-basis:100%;}}

/* ============================================================================
   Phase Questions — arène de vote + atelier de qualification
   ========================================================================== */
.lcdd .lcdd-h2{font-size:1.5rem;color:var(--lcdd-primary);margin:2rem 0 1rem;letter-spacing:-.01em;}
.lcdd .lcdd-h2:first-of-type{margin-top:1rem;}

/* Filtre thématique (rangée défilante) */
.lcdd-themefilter{display:flex;gap:.5rem;overflow-x:auto;padding:.3rem .1rem 1rem;scrollbar-width:thin;}
.lcdd-themechip{flex:0 0 auto;display:inline-block;padding:.4rem .85rem;border-radius:999px;background:var(--lcdd-surface-2);
	border:1px solid var(--lcdd-border);color:var(--lcdd-text);text-decoration:none;font-size:.85rem;font-weight:600;white-space:nowrap;transition:all .15s;}
.lcdd-themechip:hover{border-color:var(--lcdd-secondary);}
.lcdd-themechip.is-active{background:var(--lcdd-aplat);color:#fff;border-color:var(--lcdd-primary);}

/* Liste de vote (leaderboard) */
.lcdd-vlist{display:flex;flex-direction:column;gap:.7rem;}
.lcdd-vitem{display:flex;gap:1rem;align-items:flex-start;background:var(--lcdd-surface);border:1px solid var(--lcdd-border);
	border-radius:var(--lcdd-radius);padding:1rem 1.1rem;transition:box-shadow .15s,transform .15s;}
.lcdd-vitem:hover{box-shadow:var(--lcdd-shadow);}
.lcdd-vitem.is-top{border-color:var(--lcdd-secondary);box-shadow:0 0 0 1px var(--lcdd-secondary) inset;}
.lcdd-vitem__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:.4rem;}
.lcdd-vitem__text{margin:0;color:var(--lcdd-text);line-height:1.55;font-size:1.02rem;}
.lcdd-vrank{align-self:flex-start;font-weight:800;color:var(--lcdd-secondary-ink);font-size:.8rem;letter-spacing:.03em;}
.lcdd-vbtn{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.1rem;width:60px;min-height:60px;
	border:1.5px solid var(--lcdd-border);border-radius:14px;background:var(--lcdd-surface-2);color:var(--lcdd-primary);cursor:pointer;
	font-weight:800;transition:all .15s;}
.lcdd-vbtn:hover{border-color:var(--lcdd-secondary);color:var(--lcdd-secondary-ink);transform:translateY(-2px);}
.lcdd-vbtn__arrow{font-size:1.1rem;line-height:1;}
.lcdd-vbtn__count{font-size:1.05rem;line-height:1;}
.lcdd-vbtn.is-voted{background:var(--lcdd-secondary);border-color:var(--lcdd-secondary);color:#fff;cursor:default;}

/* Listes simples (programmées / traitées) */
.lcdd-qsimple{display:flex;flex-direction:column;gap:.5rem;}
.lcdd-qsimple__item{background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:12px;padding:.7rem .95rem;color:var(--lcdd-text);}
.lcdd-qsimple__item.is-done{opacity:.85;}
.lcdd-qsimple__item.is-done::before{content:"✓ ";color:var(--lcdd-secondary-ink);font-weight:800;}

/* Atelier de qualification */
.lcdd-qwork{display:flex;flex-direction:column;gap:1.2rem;}
.lcdd-qcard{background:var(--lcdd-surface);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);padding:1.3rem 1.4rem;box-shadow:var(--lcdd-shadow);}
.lcdd-qcard__orig{border-left:3px solid var(--lcdd-secondary);padding:.2rem 0 .2rem .9rem;margin-bottom:1rem;}
.lcdd-qcard__label{display:block;font-size:.8125rem;font-weight:600;color:var(--lcdd-secondary-ink);margin-bottom:.25rem;}
.lcdd-qcard__orig p{margin:0;color:var(--lcdd-text);font-size:1.05rem;line-height:1.5;}
.lcdd-qcard__ai{background:rgba(25,190,192,.10);border:1px solid rgba(25,190,192,.35);border-radius:12px;padding:.8rem 1rem;margin-bottom:1rem;}
.lcdd-qcard__airesume{margin:.3rem 0 .1rem;font-style:italic;color:#3a4a52;}
.lcdd-qcard textarea,.lcdd-qcard .lcdd-control{margin-bottom:.3rem;}
.lcdd-qcard__actions{display:flex;gap:.7rem;flex-wrap:wrap;align-items:center;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--lcdd-border);}
.lcdd-qcard__feedback{color:var(--lcdd-secondary-ink);font-weight:600;}

/* Sujet d'atelier suggéré (privé, admin/intervenant) — atelier de qualification */
.lcdd-atelsug{margin:0 0 1rem;padding:.85rem 1rem;background:var(--lcdd-cream);border:1px solid #e6dcae;border-radius:12px;}
.lcdd-atelsug__tag{display:inline-block;font-size:.8125rem;font-weight:600;color:#8a6d1a;margin-bottom:.35rem;}
.lcdd-atelsug__subject{margin:.2rem 0 .45rem;font-weight:700;color:var(--lcdd-primary);}
.lcdd-atelsug__structure{margin:.2rem 0 0 1.1rem;color:var(--lcdd-text);}
.lcdd-atelsug__structure li{margin:.15rem 0;}

/* ============================================================================
   Ajustements UI/UX (v0.9.10) — direct sans panneau, titres, espacements
   ========================================================================== */
/* Atelier à venir : pas de panneau Questions → scène pleine largeur. */
.lcdd-live.is-nopanel{grid-template-columns:1fr;grid-template-areas:"stage" "meta";}/* En mode cinéma/plein écran, le titre reste sur une ligne. */
/* Badge « Bientôt/EN DIRECT » : bien calé avec le titre. */
.lcdd-badge--soon,.lcdd-badge--live,.lcdd-badge--done,.lcdd-badge--replay{align-self:center;}
/* Attentes : resserre l'état vide. */
.lcdd-expect__empty{margin-top:.2rem;}
/* Pastilles de mots-clés/références : taille homogène et lisible. */
.lcdd .lcdd-reflist li{padding:.32rem .8rem;font-size:.86rem;line-height:1.35;}

/* Attentes des participants — panneau du tableau de bord */
.lcdd-expdash{display:flex;flex-direction:column;gap:1rem;}
.lcdd-expdash__group{border-left:3px solid var(--lcdd-secondary);padding-left:.85rem;}
.lcdd-expdash__atelier{display:inline-block;font-weight:800;color:var(--lcdd-primary);text-decoration:none;margin-bottom:.4rem;}
.lcdd-expdash__atelier:hover{text-decoration:underline;}
.lcdd-expdash__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem;}
.lcdd-expdash__list li{display:flex;flex-direction:column;background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:10px;padding:.5rem .7rem;}
.lcdd-expdash__who{font-size:.76rem;font-weight:700;color:var(--lcdd-secondary-ink);margin-top:.2rem;}

/* Co-auteurs (édition d'atelier) */
.lcdd-coauthors{list-style:none;margin:0 0 1rem;padding:0;display:flex;flex-direction:column;gap:.5rem;}
.lcdd-coauthors li{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:10px;padding:.5rem .8rem;}
.lcdd-coauthors__name{font-weight:700;}
.lcdd-coauthors__role{font-size:.8125rem;font-weight:600;color:var(--lcdd-secondary-ink);}
.lcdd-coauthors__add{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center;}
.lcdd-coauthors__add .lcdd-control{flex:1 1 220px;}
/* Le champ e-mail est enveloppé par sa liste de suggestions (0.13.2) : l'enveloppe prend sa place dans la ligne. */
.lcdd-coauthors__add .lcdd-ac{flex:1 1 220px;min-width:0;}
.lcdd-coauthors__add .lcdd-ac .lcdd-control{width:100%;box-sizing:border-box;}
.lcdd-ac__hint{margin-left:auto;opacity:.75;font-size:.82em;white-space:nowrap;}
.lcdd-linkbtn{margin-left:auto;background:none;border:0;color:var(--lcdd-live);font-weight:700;cursor:pointer;padding:.2rem .4rem;}
.lcdd-linkbtn:hover{text-decoration:underline;}

/* ============================================================================
   Navigation LCDD adaptative par rôle
   ========================================================================== */
.lcdd-nav{font-family:var(--lcdd-font);margin:0 0 1.25rem;}
.lcdd-nav__wrap{margin:0;}
.lcdd-nav__toggle{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;font-weight:800;color:var(--lcdd-primary);background:var(--lcdd-surface);border:1px solid var(--lcdd-border);border-radius:999px;padding:.55rem 1rem;box-shadow:var(--lcdd-shadow);}
.lcdd-nav__toggle::-webkit-details-marker{display:none;}
.lcdd-nav__burger{font-size:1.05rem;}
.lcdd-nav__inner{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem .9rem;background:var(--lcdd-surface);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);padding:.55rem .8rem;margin-top:.5rem;box-shadow:var(--lcdd-shadow);}
.lcdd-nav__list{display:flex;flex-wrap:wrap;gap:.25rem;list-style:none;margin:0;padding:0;}
.lcdd-nav__link{display:inline-block;padding:.42rem .8rem;border-radius:999px;text-decoration:none;color:var(--lcdd-primary);font-weight:700;font-size:.92rem;transition:background .15s,color .15s;}
.lcdd-nav__link:hover{background:var(--lcdd-surface-2);}
.lcdd-nav__link.is-active{background:var(--lcdd-aplat);color:#fff;}
.lcdd-nav__auth{display:flex;align-items:center;gap:.7rem;margin-left:auto;}
.lcdd-nav__user{font-weight:700;color:var(--lcdd-secondary-ink);font-size:.88rem;}
.lcdd-nav__login,.lcdd-nav__logout{text-decoration:none;font-weight:700;color:var(--lcdd-live);font-size:.88rem;}
.lcdd-nav__login:hover,.lcdd-nav__logout:hover{text-decoration:underline;}
@media (min-width:783px){
	.lcdd-nav__toggle{display:none;}
	.lcdd-nav__inner{margin-top:0;display:flex!important;}
}

/* Vignette d'atelier = image de couverture */
.lcdd-acard__thumb--img{background-size:cover;background-position:center;}

/* Attentes : note pour les non-intervenants */
.lcdd-expect__note{position:relative;z-index:1;margin:.5rem 0 0;color:var(--lcdd-cream);font-size:.9rem;opacity:.92;}

/* ============================================================================
   Suivi des ateliers (dashboard) — badges de statut + actions
   ========================================================================== */
.lcdd-atl{list-style:none;margin:0 0 .8rem;padding:0;display:flex;flex-direction:column;gap:.6rem;}
.lcdd-atl__item{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:12px;padding:.7rem .85rem;}
.lcdd-atl__main{display:flex;flex-direction:column;gap:.3rem;min-width:0;flex:1 1 220px;}
.lcdd-atl__title{font-weight:700;color:var(--lcdd-text);}
.lcdd-atl__meta{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem;font-size:.82rem;}
.lcdd-atl__actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin-left:auto;}
.lcdd-linklike{color:var(--lcdd-secondary-ink);font-weight:700;text-decoration:none;font-size:.86rem;}
.lcdd-linklike:hover{text-decoration:underline;}
/* @socle-jeu */
.lcdd-btn--sm{padding:.35rem .8rem;font-size:.82rem;}
/* @fin-socle-jeu */
.lcdd-statusbadge{display:inline-block;padding:.22rem .6rem;border-radius:999px;font-size:.8125rem;font-weight:600;}
.lcdd-statusbadge--suggere{background:#fff3d6;color:#8a5a00;}
.lcdd-statusbadge--a_venir{background:#d6f4f4;color:#0c6d6f;}
.lcdd-statusbadge--en_live{background:#fde0e2;color:#b02a34;}
.lcdd-statusbadge--inedit{background:#eef1f4;color:#556;}
.lcdd-statusbadge--publie{background:#d9f2e4;color:#1c7a4a;}
.lcdd-statusbadge--archive{background:#eef1f4;color:#889;}

/* Menu LCDD intégré dans l'en-tête/déroulé du thème (remplacement de menu) */
.lcdd-nav__list--themed{display:flex;flex-wrap:wrap;align-items:center;gap:.2rem .35rem;list-style:none;margin:0;padding:0;font-family:var(--lcdd-font);}
.lcdd-nav__list--themed .lcdd-nav__item--auth{display:flex;align-items:center;gap:.6rem;margin-left:.4rem;}

/* Enregistrements & sous-titres (staff) sur la page atelier */
.lcdd-recordings{margin-top:1.4rem;padding:1.2rem 1.3rem;background:var(--lcdd-surface);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);}
.lcdd-recordings__head{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem 1rem;justify-content:space-between;}
.lcdd-recordings__actions{display:flex;flex-wrap:wrap;gap:.5rem;}
/* Mesuré à 375 px : « Récupérer la VOD + sous-titres FR » faisait 340 px et
   dépassait la fenêtre d'un pixel — jamais entier à l'écran. Le libellé se
   coupe, le bouton ne déborde plus. */
.lcdd-recordings__actions .lcdd-btn{flex:0 1 auto;min-width:0;max-width:100%;white-space:normal;text-align:center;}
.lcdd-recordings__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:.9rem;}
.lcdd-recording{background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:12px;padding:.6rem;}
.lcdd-recording__player{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;background:#0b1622;}
.lcdd-recording__player iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.lcdd-recording__meta{margin:.5rem .1rem 0;font-size:.82rem;color:var(--lcdd-secondary-ink);font-weight:600;}

/* Résultats de recherche « passage vidéo » (contexte + surlignage + timecode) */
.lcdd-hit--video{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1rem;justify-content:space-between;background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:12px;padding:.8rem 1rem;}
.lcdd-hit__body{flex:1 1 320px;min-width:0;}
.lcdd-hit__source{display:block;font-size:.78rem;font-weight:800;color:var(--lcdd-secondary-ink);margin-bottom:.35rem;}
.lcdd-hit__transcript{margin:0;line-height:1.55;color:var(--lcdd-text);}
.lcdd-hit__ctx{color:#6b7785;}
/* ⚠ ON SURLIGNE LE TERME, PAS TOUT L'EXTRAIT.
   Le segment entier portait un fond teinté : le mot cherché s'y noyait, et
   l'on ne voyait plus POURQUOI un résultat remontait. Le segment se distingue
   maintenant par son poids et sa couleur d'encre ; seul le terme est surligné. */
.lcdd-hit__match{background:transparent;color:var(--lcdd-text);font-weight:500;}
.lcdd-hit__match strong{background:var(--lcdd-secondary);color:#08303a;border-radius:3px;padding:.02rem .22rem;font-weight:700;box-decoration-break:clone;-webkit-box-decoration-break:clone;}
.lcdd-hit__play{flex:none;white-space:nowrap;}

/* ============================================================================
   v0.9.18 — modale de connexion, vidéo sticky mobile, lecteur inline recherche
   ========================================================================== */
/* Modale de connexion (sans coupure du direct) */
.lcdd-authmodal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(11,34,51,.55);padding:1rem;}
.lcdd-authmodal[hidden]{display:none;}
.lcdd-authmodal__box{position:relative;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);border-radius:16px;max-width:400px;width:100%;padding:1.6rem 1.5rem;box-shadow:0 24px 60px rgba(0,0,0,.35);font-family:var(--lcdd-font);}
.lcdd-authmodal__close{position:absolute;top:.6rem;right:.7rem;border:0;background:none;font-size:1.6rem;line-height:1;cursor:pointer;color:#6b7785;}
.lcdd-authmodal__title{margin:.2rem 0 .3rem;color:var(--lcdd-primary);}
.lcdd-authmodal__sub{margin:0 0 1rem;color:#556;font-size:.92rem;}
.lcdd-authmodal__form{display:flex;flex-direction:column;gap:.7rem;}
.lcdd-authmodal__remember{display:flex;align-items:center;gap:.4rem;font-size:.86rem;color:#556;}
.lcdd-authmodal__err{margin:0;color:#b02a34;font-weight:600;font-size:.88rem;}
.lcdd-authmodal__lost{font-size:.82rem;color:var(--lcdd-secondary-ink);text-align:center;text-decoration:none;}
.lcdd-authmodal__lost:hover{text-decoration:underline;}

/* ==========================================================================
   LE LECTEUR RESTE À SA PLACE, ET RESTE VISIBLE
   --------------------------------------------------------------------------
   ⚠ PLUS DE LECTEUR FLOTTANT. La vidéo se détachait en vignette déplaçable
     dans un coin dès qu'on faisait défiler : elle passait par-dessus le
     contenu, changeait de taille et de place. Tout ce dispositif — `is-mini`,
     la poignée de déplacement, le substitut de hauteur — a été retiré.

   L'épinglage est désormais un simple `position:sticky` : le lecteur garde sa
   largeur, sa colonne et sa place, et se contente de rester en haut tant que
   la colonne défile. `--lcdd-sticky-top` porte la hauteur de la barre
   d'administration, que le CSS seul ne peut pas connaître.

   ⚠ Le plein écran et le mode cinéma ne sont pas touchés : `sticky` y est
     neutralisé pour que la vidéo reprenne le flux normal.
   @since 0.12.38
   ========================================================================== */
.lcdd-live .lcdd-stage__video{
	position:sticky;top:var(--lcdd-sticky-top,8px);z-index:20;
}
/* Sur mobile le lecteur se cale en haut de l'écran, sans décalage. */
@media (max-width:782px){
	.lcdd-live .lcdd-stage__video{
		top:0;box-shadow:0 6px 18px rgba(11,34,51,.18);
	}
}
/* Cinéma et plein écran : la vidéo reprend le flux. */
.lcdd-live.is-theater .lcdd-stage__video,
.lcdd-live:fullscreen .lcdd-stage__video{position:relative;top:auto;}

/* ── Le chapitre en cours : une zone qui ne se vide jamais ───────────────── */
.lcdd-nowch{
	display:grid;grid-template-columns:auto 1fr;gap:.15rem .6rem;align-items:baseline;
	padding:.75rem 1.25rem;border-bottom:1px solid var(--lcdd-border);
	background:var(--lcdd-surface,#f7f9fa);
}
.lcdd-nowch__l{
	grid-column:1 / -1;font-size:.8125rem;font-weight:700;color:var(--lcdd-muted);
}
/* Ce qui se compte : chiffres tabulaires, chasse fixe. */
.lcdd-nowch__tc{
	font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.82rem;
	font-variant-numeric:tabular-nums;color:var(--lcdd-secondary-ink,#2B4C5E);
}
.lcdd-nowch__t{font-size:.95rem;font-weight:600;line-height:1.35;min-height:1.35em;}
/* La zone reste occupée même repliée : c'est le seul repère qui subsiste. */
.lcdd-live.chapters-collapsed .lcdd-nowch{display:grid;}

/* Lecteur inline dans les résultats de recherche */
.lcdd-hit__side{display:flex;flex-direction:column;gap:.6rem;align-items:flex-end;}
.lcdd-hit__player{width:min(460px,82vw);aspect-ratio:16/9;border-radius:10px;overflow:hidden;background:#0b1622;}
.lcdd-hit__player[hidden]{display:none;}
.lcdd-hit__player iframe{width:100%;height:100%;border:0;}
@media (max-width:640px){ .lcdd-hit__side{align-items:stretch;width:100%;} .lcdd-hit__player{width:100%;} }

/* ============================================================================
   v0.9.19 — plein écran robuste, vidéo sticky, bouton « Activer le son »
   ========================================================================== */
/* Vidéo qui reste visible en scrollant (desktop ET mobile), hors plein écran. */
/* Épinglage de la vidéo géré en JS (position:fixed + placeholder). */
@media (max-width:640px){}

/* Bouton « Activer le son » superposé au lecteur en direct. */
.lcdd-unmute{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);z-index:25;display:inline-flex;align-items:center;gap:.4rem;
	background:var(--lcdd-live);color:#fff;border:0;border-radius:999px;padding:.5rem 1rem;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(213,79,88,.4);}
.lcdd-unmute[hidden]{display:none;}/* Plein écran : mise en page simple et fiable (vidéo 16:9 + panneau visible avec composer). */

/* ============================================================================
   v0.9.20 — recherche façon Légifrance : onglets + vignette vidéo cliquable
   ========================================================================== */
.lcdd-searchtabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.2rem;}
.lcdd-searchtab{border:1.5px solid var(--lcdd-border);background:var(--lcdd-bg);color:var(--lcdd-text);border-radius:999px;padding:.4rem .95rem;font:inherit;font-weight:700;font-size:.88rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.lcdd-searchtab span{opacity:.65;font-weight:800;margin-left:.15rem;}
.lcdd-searchtab:hover{border-color:var(--lcdd-primary);}
.lcdd-searchtab.is-active{background:var(--lcdd-aplat);color:#fff;border-color:var(--lcdd-primary);}
.lcdd-searchtab.is-active span{opacity:.85;}
.lcdd-hit--q .lcdd-hit__qtext strong,.lcdd-hit__match strong{background:var(--lcdd-secondary);color:#08303a;border-radius:3px;padding:0 .12rem;}

/* Vignette vidéo cliquable (lecture au timecode) */
.lcdd-hit__poster{position:relative;width:min(240px,40vw);aspect-ratio:16/9;border:0;border-radius:10px;overflow:hidden;cursor:pointer;
	background-size:cover;background-position:center;background-color:#0b1622;box-shadow:0 4px 14px rgba(11,34,51,.25);}
.lcdd-hit__poster::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.45));}
.lcdd-hit__playicon{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:2;font-size:1.6rem;color:#fff;
	text-shadow:0 2px 8px rgba(0,0,0,.5);transition:transform .15s;}
.lcdd-hit__poster:hover .lcdd-hit__playicon{transform:scale(1.18);}
.lcdd-hit__tc{position:absolute;left:8px;bottom:8px;z-index:2;background:rgba(0,0,0,.7);color:#fff;font-size:.72rem;font-weight:800;border-radius:5px;padding:.12rem .4rem;letter-spacing:.02em;}
@media (max-width:640px){ .lcdd-hit__side{align-items:stretch;width:100%;} .lcdd-hit__poster{width:100%;} }

/* ============================================================================
   v0.9.21 — panneau Légifrance (contenu + surlignage)
   ========================================================================== */
.lcdd-legif{margin-top:2rem;padding:1.5rem;border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);background:var(--lcdd-surface);}
.lcdd-legif__head{display:flex;align-items:center;gap:.7rem;}
.lcdd-legif__badge{background:var(--lcdd-aplat);color:#fff;font-size:.8125rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;}
.lcdd-legif__sub{margin:.3rem 0 1rem;color:var(--lcdd-muted);font-size:.9rem;}
.lcdd-legif__tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.1rem;}
.lcdd-legiftab{border:1.5px solid var(--lcdd-border);background:var(--lcdd-bg);color:var(--lcdd-text);border-radius:999px;padding:.4rem .95rem;font:inherit;font-weight:700;font-size:.86rem;cursor:pointer;transition:background .15s,border-color .15s,color .15s;}
.lcdd-legiftab:hover{border-color:var(--lcdd-primary);}
.lcdd-legiftab.is-active{background:var(--lcdd-aplat);color:#fff;border-color:var(--lcdd-primary);}
.lcdd-legif__list{display:flex;flex-direction:column;gap:1rem;}
.lcdd-legifcard{border:1px solid var(--lcdd-border);border-left:4px solid var(--lcdd-secondary);border-radius:12px;padding:1rem 1.15rem;background:var(--lcdd-bg);}
.lcdd-legifcard__title{font-weight:800;color:var(--lcdd-primary);margin-bottom:.35rem;line-height:1.35;}
.lcdd-legifcard__sub{display:inline-block;margin-left:.4rem;font-size:.8rem;font-weight:700;color:var(--lcdd-secondary-ink);background:rgba(25,190,192,.12);padding:.05rem .5rem;border-radius:6px;}
/* Étiquette de provenance (CLAUDE.md § 3 — nommer les sources).
   Contour et non fond plein : elle informe sans concurrencer le numéro
   d'article. Teinte neutre — le § 3 interdit qu'une couleur oriente la
   lecture avant qu'elle ait commencé. */
.lcdd-legifcard__prov{display:inline-block;margin-left:.4rem;font-size:.72rem;font-weight:600;letter-spacing:.02em;color:var(--lcdd-muted-ink,#5b6470);border:1px solid currentColor;padding:.02rem .42rem;border-radius:4px;vertical-align:.08em;white-space:nowrap;}
.lcdd-legifcard__extract{margin:.2rem 0 .8rem;color:var(--lcdd-text);line-height:1.6;}
.lcdd-legifcard__extract strong{background:var(--lcdd-secondary);color:#08303a;border-radius:3px;padding:0 .12rem;}

/* ============================================================================
   v0.9.22 — chapitrage LMS + import vidéo
   ========================================================================== */
.lcdd-chapterspanel{display:flex;flex-direction:column;min-height:0;}
.lcdd-chapters__list{display:flex;flex-direction:column;gap:.5rem;overflow:auto;padding:.2rem;}
.lcdd-chapter{border:1px solid var(--lcdd-border);border-radius:10px;padding:.55rem .65rem;background:var(--lcdd-bg);position:relative;transition:border-color .15s,background .15s;}
.lcdd-chapter.is-current{border-color:var(--lcdd-secondary);background:rgba(25,190,192,.08);box-shadow:0 0 0 1px var(--lcdd-secondary) inset;}
.lcdd-chapter__head{display:flex;gap:.6rem;align-items:baseline;width:100%;border:0;background:none;text-align:left;cursor:pointer;font:inherit;padding:0;color:var(--lcdd-text);}
.lcdd-chapter__tc{flex:none;font-variant-numeric:tabular-nums;font-weight:800;color:var(--lcdd-secondary-ink);font-size:.85rem;background:rgba(25,190,192,.12);border-radius:5px;padding:.05rem .4rem;}
.lcdd-chapter__title{font-weight:700;line-height:1.35;}
.lcdd-chapter__refs{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.4rem;}
.lcdd-chapter__ref{font-size:.72rem;font-weight:700;color:var(--lcdd-primary);background:rgba(17,63,89,.08);border:1px solid rgba(17,63,89,.15);border-radius:5px;padding:.05rem .4rem;}
.lcdd-chapter__kws{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.3rem;}
.lcdd-chapter__kw{font-size:.7rem;color:var(--lcdd-muted);}
.lcdd-chapter__kw::before{content:"#";opacity:.6;}
.lcdd-chapter__del{position:absolute;top:.4rem;right:.4rem;border:0;background:none;color:#b02a34;cursor:pointer;font-size:.85rem;opacity:.5;}
.lcdd-chapter__del:hover{opacity:1;}
.lcdd-ched{margin-top:.8rem;border-top:1px solid var(--lcdd-border);padding-top:.7rem;}
.lcdd-ched summary{cursor:pointer;font-weight:700;color:var(--lcdd-primary);}
.lcdd-ched__ai{display:flex;align-items:center;gap:.5rem;margin:.7rem 0;flex-wrap:wrap;}
.lcdd-ched__aistatus{font-size:.82rem;color:var(--lcdd-muted);}
.lcdd-ched__proposal{background:var(--lcdd-surface-2);border:1px solid var(--lcdd-border);border-radius:10px;padding:.7rem;margin-bottom:.8rem;display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;}
.lcdd-chprop{line-height:1.4;}
.lcdd-ched__form{display:flex;flex-direction:column;gap:.5rem;margin-top:.6rem;}
.lcdd-ched__time{display:flex;gap:.5rem;align-items:center;}
.lcdd-ched__time input{max-width:110px;}
.lcdd-vidupload__preview{position:relative;aspect-ratio:16/9;max-width:640px;border-radius:10px;overflow:hidden;background:#0b1622;margin:.9rem auto 1.1rem;}/* centré dans le panneau (0.12.96) */
.lcdd-vidupload__preview iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.lcdd-vidupload [data-vid-file]{margin:.5rem 0;}
.lcdd-vidupload__bar{height:10px;border-radius:6px;background:var(--lcdd-border);overflow:hidden;margin:.6rem 0;max-width:480px;}
.lcdd-vidupload__bar span{display:block;height:100%;width:0;background:var(--lcdd-secondary);transition:width .2s;}

/* v0.9.23 — bouton « attentes » qui ne déborde plus sur mobile */
.lcdd-expect__login .lcdd-btn{white-space:normal;max-width:100%;text-align:center;height:auto;min-height:46px;line-height:1.3;}
@media (max-width:560px){ .lcdd-expect__login .lcdd-btn{display:flex;width:100%;} }

/* ============================================================================
   v0.9.24 — affinage typographique (confort de lecture, surtout mobile)
   ========================================================================== */
.lcdd{font-size:1.02rem;}
.lcdd-h3{font-size:clamp(1.08rem,1.8vw,1.2rem);}
.lcdd-h2,.lcdd-hero__title,.lcdd-dash__title,.lcdd-stage__h1,.lcdd-acard__title{text-wrap:balance;}
.lcdd p,.lcdd li{line-height:1.62;}
.lcdd-hero__sub,.lcdd-expect__sub,.lcdd-modal__intro,.lcdd-acard__desc{max-width:66ch;}
/* @socle-jeu */
@media (max-width:640px){
	.lcdd{font-size:1.05rem;line-height:1.62;}
	.lcdd-hero__title{line-height:1.18;}
	.lcdd-hero__sub{font-size:1.02rem;}
	.lcdd-acard__desc,.lcdd-modal__intro,.lcdd-expect__sub{font-size:1rem;line-height:1.6;}
	.lcdd-chapter__title{font-size:1.02rem;}
	.lcdd-btn{font-size:1rem;}
}
/* @fin-socle-jeu */

/* ============================================================================
   v0.9.24 — lisibilité du modal (texte des boutons) + affinage typo mobile
   ========================================================================== */
/* Les boutons du modal gardent leur texte clair sur fond foncé (la règle
   .lcdd-modal__dialog *{color:inherit} ne doit pas les assombrir). */
.lcdd-modal .lcdd-btn{color:#fff !important;}
.lcdd-modal .lcdd-btn--ghost{color:var(--lcdd-primary) !important;}

/* Confort de lecture mobile : évite le zoom auto iOS (<16px) et aère le texte. */
@media (max-width:640px){
	.lcdd-control,
	.lcdd-modal__form textarea,
	.lcdd-searchbar input,
	.lcdd-expect__form textarea{font-size:16px;}
	.lcdd-hero__title{font-size:clamp(1.7rem,7vw,2.1rem);line-height:1.15;}
	.lcdd-hero__sub{font-size:1.02rem;line-height:1.6;}
	.lcdd-h2{font-size:1.3rem;line-height:1.25;}
	.lcdd-h3{font-size:1.08rem;}
	.lcdd-acard__title{font-size:1.06rem;line-height:1.3;}
	.lcdd-chapter__title{font-size:.98rem;}
	.lcdd-modal__intro,.lcdd-expect__sub,.lcdd-qpanel__sub{font-size:.98rem;line-height:1.6;}
	.lcdd-hit__transcript,.lcdd-legifcard__extract{line-height:1.6;}
}
/* Titres : espacement des lettres homogène et lecture équilibrée. */
.lcdd-h2{letter-spacing:-.01em;}
.lcdd-hero__sub{max-width:60ch;}/* ============================================================================
   v0.9.26 — plein écran : jamais les attentes ; chapitres dockés & repliables
   ========================================================================== *//* Chapitres en plein écran replay : colonne dockée à droite, défilante. */
/* Bouton réduire/afficher les chapitres (visible seulement en plein écran replay). */
.lcdd-chapters__collapse{display:none;}
.lcdd-ched__io{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.6rem 0;}
.lcdd-ched__iostatus{font-size:.82rem;color:var(--lcdd-muted);flex-basis:100%;}/* ============================================================================
   v0.9.31 — Cinéma & plein écran : disposition propre (vidéo + panneau côte à
   côte, sans troncature) ; panneau chapitres aéré et lisible.
   ========================================================================== *//* Le panneau (questions OU chapitres) est docké à droite — jamais par-dessus la vidéo. */

/* --- Panneau chapitres : plus d'air, meilleure hiérarchie visuelle --------- */
.lcdd-chapterspanel .lcdd-qpanel__title{font-size:1.15rem;}
.lcdd-chapterspanel .lcdd-qpanel__sub{font-size:.9rem;margin-bottom:1rem;}
.lcdd-chapters__list{gap:.7rem;padding:.15rem;}
.lcdd-chapter{padding:.8rem .85rem;border-radius:12px;}
.lcdd-chapter__head{gap:.7rem;align-items:flex-start;}
.lcdd-chapter__tc{font-size:.82rem;padding:.12rem .5rem;margin-top:.05rem;}
.lcdd-chapter__title{font-size:1rem;line-height:1.4;}
.lcdd-chapter__refs{margin-top:.55rem;gap:.4rem;}
.lcdd-chapter__ref{font-size:.74rem;padding:.12rem .5rem;line-height:1.5;}
.lcdd-chapter__kws{margin-top:.45rem;gap:.45rem;}
.lcdd-chapter.is-current{box-shadow:0 0 0 2px var(--lcdd-secondary) inset;}
/* Éditeur de chapitres : espacement généreux */
.lcdd-ched{margin-top:1.1rem;padding-top:1rem;}
.lcdd-ched summary{font-size:1rem;padding:.2rem 0;}
.lcdd-ched__form{gap:.7rem;margin-top:.9rem;}
.lcdd-ched__form .lcdd-control{padding:.6rem .7rem;font-size:.95rem;}
.lcdd-ched__ai,.lcdd-ched__io{margin:.8rem 0;gap:.6rem;}
.lcdd-ched .lcdd-hint{line-height:1.55;margin:.5rem 0;}

/* ============================================================================
   v0.9.32 — MODE IMMERSIF (plein écran) : une seule classe .is-theater, posée
   par JavaScript (y compris quand le plein écran natif est actif). Aucune règle
   n'utilise la pseudo-classe :fullscreen, que certains navigateurs ignorent —
   ce qui faisait tomber toute la règle et laissait le panneau recouvrir la vidéo.
   Disposition : vidéo à gauche, panneau (chapitres OU questions) à droite.
   ========================================================================== */
.lcdd-live.is-theater{
	position:fixed;inset:0;z-index:9990;margin:0;
	display:flex;flex-direction:row;align-items:stretch;
	gap:clamp(.6rem,1.4vw,1.2rem);padding:clamp(.6rem,1.4vw,1.2rem);
	background:#05070d;overflow:hidden;
}
body.lcdd-noscroll{overflow:hidden;}

/* Colonne vidéo : occupe la place restante, jamais tronquée. */
.lcdd-live.is-theater .lcdd-stage{
	flex:1 1 auto;min-width:0;min-height:0;
	display:flex;flex-direction:column;gap:.7rem;height:100%;
}
.lcdd-live.is-theater .lcdd-stage__bar{flex:none;margin:0;}
.lcdd-live.is-theater .lcdd-stage__h1{color:#fff;font-size:clamp(1rem,1.6vw,1.25rem);}
.lcdd-live.is-theater .lcdd-stage__controls{flex:none;justify-content:center;margin:0;}
.lcdd-live.is-theater .lcdd-iconbtn{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.3);}
.lcdd-live.is-theater .lcdd-stage__video{
	position:relative;flex:1 1 auto;min-height:0;
	width:100%;height:100%;max-width:100%;max-height:100%;
	aspect-ratio:auto;margin:0;border-radius:12px;
	/* On laisse le lecteur Cloudflare gérer le ratio (bandes noires) : la zone
	   vidéo remplit exactement l'espace restant, sans jamais déborder ni être
	   recouverte par le panneau. */
}
.lcdd-live.is-theater .lcdd-stage__vph{display:none !important;}

/* Panneau docké à droite : à côté de la vidéo, jamais par-dessus. */
.lcdd-live.is-theater .lcdd-qpanel{
	position:static;transform:none;inset:auto;
	flex:0 0 clamp(300px,28vw,390px);width:auto;height:100%;max-height:100%;min-height:0;
	display:flex;flex-direction:column;overflow:auto;
	background:var(--lcdd-bg);border-radius:14px;box-shadow:none;
	padding:1.3rem 1.2rem;transition:flex-basis .22s ease,opacity .2s ease;
}
.lcdd-live.is-theater.chapters-collapsed .lcdd-qpanel.lcdd-chapterspanel{
	flex-basis:0;padding:0;opacity:0;overflow:hidden;pointer-events:none;
}
.lcdd-live.is-theater .lcdd-chapters__collapse{display:inline-flex;align-items:center;justify-content:center;}
/* Éléments hors sujet en mode immersif. */
.lcdd-live.is-theater .lcdd-live__meta,
.lcdd-live.is-theater .lcdd-expect,
.lcdd-live.is-theater .lcdd-recordings,
.lcdd-live.is-theater [data-lcdd="drawer-toggle"],
.lcdd-live.is-theater .lcdd-qpanel__close{display:none !important;}

/* Écrans étroits / paysage court : la vidéo passe au-dessus, le panneau dessous. */
@media (max-width:820px),(max-height:520px){
	.lcdd-live.is-theater{flex-direction:column;}
	.lcdd-live.is-theater .lcdd-stage{flex:0 0 auto;}
	.lcdd-live.is-theater .lcdd-qpanel{flex:1 1 auto;width:100%;height:auto;padding:1rem;}
	.lcdd-live.is-theater.chapters-collapsed .lcdd-qpanel.lcdd-chapterspanel{flex-basis:0;height:0;}
}

/* ============================================================================
   v0.9.32 — Barre de navigation LCDD (méthode garantie, indépendante du thème)
   ========================================================================== */
.lcdd-headerbar{background:var(--lcdd-aplat);padding:.55rem clamp(.8rem,3vw,2rem);}
.lcdd-nav--bar{margin:0;}
.lcdd-nav--bar .lcdd-nav__inner{background:transparent;border:0;box-shadow:none;padding:0;margin:0;}
.lcdd-nav--bar .lcdd-nav__link{color:#eaf4f6;}
.lcdd-nav--bar .lcdd-nav__link:hover{background:rgba(255,255,255,.12);}
.lcdd-nav--bar .lcdd-nav__link.is-active{background:#fff;color:#113F59;}
.lcdd-nav--bar .lcdd-nav__user{color:#bfe9ea;}
.lcdd-nav--bar .lcdd-nav__login,.lcdd-nav--bar .lcdd-nav__logout{color:#fff;}
/* Mobile : la liste défile horizontalement (toujours visible, sans JS). */
@media (max-width:782px){
	.lcdd-nav__inner{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;}
	.lcdd-nav__inner::-webkit-scrollbar{display:none;}
	.lcdd-nav__list{flex-wrap:nowrap;}
	.lcdd-nav__link{white-space:nowrap;}
	.lcdd-nav__auth{margin-left:.6rem;flex:none;}
}

/* ============================================================================
   v0.9.32 — PLEIN ÉCRAN / CINÉMA : correctif définitif du débordement.
   Cause : .lcdd-stage__video conservait aspect-ratio:16/9 avec flex:1 1 auto ;
   sa largeur était déduite de la hauteur disponible et dépassait la colonne,
   passant sous le panneau opaque (chapitres ou questions).
   Solution : le conteneur remplit simplement la zone disponible et c'est le
   lecteur Cloudflare, dans l'iframe, qui gère son propre letterbox. Résultat :
   jamais de troncature, jamais de recouvrement, à toutes les tailles d'écran.
   ========================================================================== */
.lcdd-live.is-theater,
.lcdd-live:fullscreen,
.lcdd-live:-webkit-full-screen{overflow:hidden !important;}

.lcdd-live.is-theater .lcdd-stage,
.lcdd-live:fullscreen .lcdd-stage,
.lcdd-live:-webkit-full-screen .lcdd-stage{min-width:0 !important;overflow:hidden !important;}

.lcdd-live.is-theater .lcdd-stage__video,
.lcdd-live:fullscreen .lcdd-stage__video,
.lcdd-live:-webkit-full-screen .lcdd-stage__video{
	position:relative !important;
	flex:1 1 auto !important;
	aspect-ratio:auto !important;   /* ← la clé : plus de largeur déduite de la hauteur */
	width:100% !important;
	max-width:100% !important;
	height:auto !important;
	min-height:0 !important;
	max-height:none !important;
	margin:0 !important;
	place-self:auto !important;
	border-radius:12px;
}

/* ⚠ PLEIN ÉCRAN NOIR SUR ORDINATEUR (0.14.3). Depuis la 0.12.90, la vidéo est
   enveloppée dans .lcdd-stage__videowrap. En plein écran, la vidéo « remplit
   son parent » (flex:1, height:auto, aspect-ratio:auto) ; mais l'enveloppe,
   elle, n'avait reçu de hauteur que sur téléphone en portrait. Sur
   ordinateur, elle mesurait 0 px : la vidéo tournait, le son aussi, dans une
   boîte invisible (signalé par Ambroise le 21/10/2026, mesuré 1002 × 0).
   L'enveloppe prend la hauteur libre et la transmet à la vidéo. Les règles
   du portrait et de la vignette de quiz, plus précises, gardent la main. */
.lcdd-live.is-theater .lcdd-stage__videowrap,
.lcdd-live:fullscreen .lcdd-stage__videowrap,
.lcdd-live:-webkit-full-screen .lcdd-stage__videowrap{
	flex:1 1 auto;min-height:0;display:flex;flex-direction:column;
}

/* Le panneau garde une largeur fixe : la vidéo occupe tout le reste. */
.lcdd-live.is-theater .lcdd-qpanel,
.lcdd-live:fullscreen .lcdd-qpanel,
.lcdd-live:-webkit-full-screen .lcdd-qpanel{flex:0 0 clamp(280px,28vw,380px) !important;min-width:0 !important;}
.lcdd-live.is-theater.chapters-collapsed .lcdd-qpanel.lcdd-chapterspanel,
.lcdd-live:fullscreen.chapters-collapsed .lcdd-qpanel.lcdd-chapterspanel{flex-basis:0 !important;}

/* Écrans courts ou étroits (mobile/tablette en paysage) : panneau plus compact. */
@media (max-height:520px),(max-width:820px){
	.lcdd-live.is-theater .lcdd-qpanel,
	.lcdd-live:fullscreen .lcdd-qpanel{flex:0 0 clamp(220px,32vw,300px) !important;padding:.9rem !important;}
	.lcdd-live.is-theater .lcdd-stage__bar,
	.lcdd-live:fullscreen .lcdd-stage__bar{margin-bottom:.35rem !important;}
}

/* ============================================================================
   v0.9.36 — édition d'un chapitre sur place (y compris après import JSON)
   ========================================================================== */
.lcdd-chapter__tools{position:absolute;top:.45rem;right:.45rem;display:flex;gap:.15rem;}
.lcdd-chapter__edit,.lcdd-chapter__del{border:0;background:none;cursor:pointer;font-size:.9rem;line-height:1;padding:.2rem .25rem;border-radius:6px;opacity:.45;transition:opacity .15s,background .15s;}
.lcdd-chapter__edit{color:var(--lcdd-primary);}
.lcdd-chapter__del{color:#b02a34;position:static;top:auto;right:auto;}
.lcdd-chapter__edit:hover,.lcdd-chapter__del:hover{opacity:1;background:rgba(17,63,89,.08);}
.lcdd-chapter.is-editing{border-color:var(--lcdd-secondary);background:var(--lcdd-surface);}
.lcdd-chapter.is-editing .lcdd-chapter__head{opacity:.55;}
.lcdd-chedit{display:flex;flex-direction:column;gap:.55rem;margin-top:.7rem;padding-top:.7rem;border-top:1px dashed var(--lcdd-border);}
.lcdd-chedit__lbl{display:flex;flex-direction:column;gap:.25rem;font-size:.8125rem;font-weight:700;color:var(--lcdd-muted);}
.lcdd-chedit__lbl .lcdd-control{font-size:.95rem;font-weight:400;text-transform:none;letter-spacing:0;color:var(--lcdd-text);padding:.55rem .65rem;}
.lcdd-chedit__row{display:flex;gap:.45rem;align-items:center;}
.lcdd-chedit__row .lcdd-control{max-width:120px;}
.lcdd-chedit__actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-top:.15rem;}
.lcdd-chedit__status{font-size:.8rem;color:var(--lcdd-muted);font-weight:400;text-transform:none;}

/* ============================================================================
   v0.9.37 — Jonction question → atelier
   ========================================================================== */
/* Sélection d'une question dans l'arène (intervenants) */
.lcdd-vpick{display:flex;align-items:center;gap:.4rem;align-self:center;flex:none;cursor:pointer;padding:.35rem .6rem;border:1.5px solid var(--lcdd-border);border-radius:999px;font-size:.78rem;font-weight:700;color:var(--lcdd-muted);background:var(--lcdd-bg);transition:border-color .15s,color .15s,background .15s;}
.lcdd-vpick:hover{border-color:var(--lcdd-secondary);color:var(--lcdd-secondary-ink);}
.lcdd-vpick input{position:absolute;opacity:0;width:0;height:0;}
.lcdd-vpick__box{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:5px;border:1.5px solid var(--lcdd-border);color:transparent;font-size:.7rem;font-weight:900;background:var(--lcdd-bg,#fff);transition:background .15s,color .15s,border-color .15s;}
.lcdd-vpick input:checked ~ .lcdd-vpick__box{background:var(--lcdd-secondary);border-color:var(--lcdd-secondary);color:#08303a;}
.lcdd-vpick input:focus-visible ~ .lcdd-vpick__box{outline:2px solid var(--lcdd-primary);outline-offset:2px;}
.lcdd-vitem.is-picked{border-color:var(--lcdd-secondary);box-shadow:0 0 0 1px var(--lcdd-secondary) inset;}
@media (max-width:640px){ .lcdd-vpick__lbl{display:none;} }

/* Barre d'action flottante */
.lcdd-buildbar{position:sticky;top:12px;z-index:30;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;
	background:var(--lcdd-aplat);color:#fff;border-radius:14px;padding:.7rem 1rem;margin:0 0 1.2rem;
	box-shadow:0 10px 30px rgba(11,34,51,.28);opacity:0;transform:translateY(-6px);transition:opacity .2s,transform .2s;}
.lcdd-buildbar.is-visible{opacity:1;transform:none;}
.lcdd-buildbar__count{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 .5rem;border-radius:999px;background:var(--lcdd-secondary);color:#08303a;font-weight:900;}
.lcdd-buildbar__lbl{font-weight:700;font-size:.92rem;margin-right:auto;}
.lcdd-buildbar__go{background:#fff;color:#113F59;font-weight:800;}
.lcdd-buildbar__go:hover{background:var(--lcdd-cream);}
.lcdd-buildbar__clear{border:0;background:rgba(255,255,255,.15);color:#fff;border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:.9rem;}
.lcdd-buildbar__clear:hover{background:rgba(255,255,255,.3);}

/* Dossier de questions sur le formulaire de création */
.lcdd-dossier{border:1px solid var(--lcdd-border);border-left:4px solid var(--lcdd-secondary);border-radius:14px;padding:1.2rem 1.3rem;margin-bottom:1.6rem;background:var(--lcdd-surface);}
.lcdd-dossier__head{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;}
.lcdd-dossier__badge{background:var(--lcdd-aplat);color:#fff;font-size:.8125rem;font-weight:600;padding:.2rem .6rem;border-radius:999px;}
.lcdd-dossier__title{margin:0;font-size:1.15rem;color:var(--lcdd-primary);}
.lcdd-dossier__intro{margin:.5rem 0 1rem;color:var(--lcdd-muted);font-size:.92rem;line-height:1.6;}
.lcdd-dossier__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.55rem;}
.lcdd-dossier__item{display:flex;gap:.7rem;align-items:flex-start;background:var(--lcdd-bg);border:1px solid var(--lcdd-border);border-radius:10px;padding:.6rem .75rem;}
.lcdd-dossier__votes{flex:none;font-weight:800;font-size:.8rem;color:var(--lcdd-secondary-ink);background:rgba(25,190,192,.12);border-radius:6px;padding:.1rem .45rem;font-variant-numeric:tabular-nums;}
.lcdd-dossier__text{line-height:1.5;}
.lcdd-hint--ai{color:var(--lcdd-secondary-ink);font-weight:600;}

/* Questions à l'origine de l'atelier (page publique) */
.lcdd-origin__list{list-style:none;margin:.6rem 0 0;padding:0;display:flex;flex-direction:column;gap:.5rem;}
.lcdd-origin__item{display:flex;gap:.7rem;align-items:flex-start;padding:.6rem .75rem;border:1px solid var(--lcdd-border);border-left:3px solid var(--lcdd-secondary);border-radius:10px;background:var(--lcdd-bg);}
.lcdd-origin__votes{flex:none;font-weight:800;font-size:.8rem;color:var(--lcdd-secondary-ink);font-variant-numeric:tabular-nums;}
.lcdd-origin__text{line-height:1.55;}


/* ============================================================================
   v0.9.40 — miroir Légifrance local : contexte, texte intégral, attribution
   ========================================================================== */
.lcdd-legif__attrib{font-size:.8125rem;color:var(--lcdd-muted);line-height:1.5;margin:0 0 .8rem;padding-bottom:.6rem;border-bottom:1px dashed var(--lcdd-border);}
.lcdd-legifcard__contexte{font-size:.78rem;color:var(--lcdd-secondary-ink);margin:.15rem 0 .5rem;line-height:1.45;}
.lcdd-legifcard__contexte::before{content:"⌗ ";opacity:.6;}
/* Judilibre (0.25.30) : la source et sa date de mise à jour, exigées par les CGU. */
.lcdd-legifcard__source{font-size:.78rem;color:var(--lcdd-secondary-ink);margin:.15rem 0 .5rem;line-height:1.45;}
.lcdd-legifcard__source a{color:inherit;text-decoration:underline;text-underline-offset:2px;}
.lcdd-legifcard__full{margin:.2rem 0 .7rem;}
.lcdd-legifcard__full summary{cursor:pointer;font-size:.82rem;font-weight:700;color:var(--lcdd-primary);padding:.25rem 0;}
.lcdd-legifcard__full summary:hover{text-decoration:underline;}
.lcdd-legifcard__fulltext{margin-top:.5rem;padding:.8rem .9rem;background:var(--lcdd-surface);border-radius:10px;
	font-size:.92rem;line-height:1.65;white-space:pre-wrap;max-height:420px;overflow:auto;}

/* ── Recherche sans réponse : le moment où le circuit civique démarre ────────
   Ce n'est pas un état d'erreur mais une invitation. Le texte explique ce qui
   arrivera à la question, parce que « proposer à la communauté » ne dit pas
   qu'elle sera qualifiée, validée, votée, puis traitée en atelier. */
.lcdd-noresult {
	display: flex; flex-direction: column; align-items: flex-start; gap: .75rem;
	padding: 1.5rem; margin: 1rem 0 2rem;
	background: var(--lcdd-surface, #fff);
	border: 1px dashed var(--lcdd-border, #dce4eb);
	border-radius: var(--lcdd-radius, 10px);
}
.lcdd-noresult__d {
	margin: 0; max-width: 62ch; line-height: 1.6;
	color: var(--lcdd-muted, #5c6b78); font-size: .95rem;
}
.lcdd-noresult__staff {
	margin: 0; font-size: .82rem; color: var(--lcdd-muted, #5c6b78); font-style: italic;
}


/* ==========================================================================
   STATISTIQUES DU CORPUS
   --------------------------------------------------------------------------
   Aucun camembert : une part se compare mal et suggère un tout clos, là où le
   corpus est ouvert et incomplet. Des barres, des chiffres tabulaires, et pour
   chaque bloc sa source et sa date.

   Une année NON MESURÉE est un trait en creux, jamais une barre à zéro : un
   manque ne se confond pas avec une absence de production législative.
   @since 0.12.39
   ========================================================================== */
.lcdd-st{max-width:78ch;margin-inline:auto;}
.lcdd-st__quand{font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8rem;color:var(--lcdd-muted);margin:0 0 2rem;}
.lcdd-st__sec{margin:0 0 2.6rem;}
.lcdd-st__h2{font-size:1.25rem;letter-spacing:-.01em;margin:0 0 .5rem;}
.lcdd-st__note{margin:0 0 1rem;color:var(--lcdd-muted);font-size:.9rem;line-height:1.6;}
.lcdd-st__src{margin:.9rem 0 0;font-size:.76rem;color:var(--lcdd-muted);font-style:italic;}

.lcdd-st__grille{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem;}
.lcdd-st__c{
	background:var(--lcdd-surface,#f7f9fa);border:1px solid var(--lcdd-border);
	border-radius:12px;padding:1rem 1.1rem;display:flex;flex-direction:column;gap:.15rem;
}
/* Ce qui se compte : chasse fixe, chiffres tabulaires. */
.lcdd-st__n{font-family:var(--lcdd-mono,ui-monospace,monospace);font-variant-numeric:tabular-nums;
	font-size:1.6rem;font-weight:700;line-height:1.1;color:var(--lcdd-primary,#113F59);}
.lcdd-st__nm{font-size:1rem;font-style:italic;color:var(--lcdd-muted);}
.lcdd-st__l{font-size:.9rem;font-weight:600;}
.lcdd-st__h{font-size:.78rem;color:var(--lcdd-muted);line-height:1.45;}

/* Le graphique par année : barres verticales, sans bibliothèque. */
.lcdd-st__chart{
	display:flex;align-items:flex-end;gap:2px;height:190px;padding:0 0 1.4rem;
	overflow-x:auto;border-bottom:1px solid var(--lcdd-border);
}
.lcdd-st__col{position:relative;flex:1 0 12px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;cursor:default;}
.lcdd-st__col i{display:block;height:var(--h);background:var(--lcdd-aplat,#113F59);border-radius:2px 2px 0 0;opacity:.85;}
.lcdd-st__col:hover i,.lcdd-st__col:focus-visible i{opacity:1;background:var(--lcdd-secondary-ink,#2B4C5E);}
.lcdd-st__col:focus-visible{outline:2px solid var(--lcdd-turq,#7FA3B5);outline-offset:2px;border-radius:3px;}
.lcdd-st__col b{
	position:absolute;bottom:-1.25rem;left:50%;transform:translateX(-50%);
	font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.62rem;color:var(--lcdd-muted);font-weight:400;
}
/* Non mesuré : un trait en creux, pas une barre à zéro. */
.lcdd-st__col.is-manque i{background:repeating-linear-gradient(45deg,var(--lcdd-border) 0 3px,transparent 3px 6px);opacity:1;}

/* Initiative : deux barres horizontales, comparables d'un coup d'œil. */
.lcdd-st__bar{display:grid;grid-template-columns:minmax(0,15rem) 1fr auto;gap:.8rem;align-items:center;margin:.5rem 0;}
.lcdd-st__bl{font-size:.9rem;}
.lcdd-st__bt{background:var(--lcdd-surface-2,#eef2f4);border-radius:999px;height:12px;overflow:hidden;}
.lcdd-st__bf{display:block;height:100%;background:var(--lcdd-aplat,#113F59);border-radius:999px;}
.lcdd-st__bv{font-family:var(--lcdd-mono,ui-monospace,monospace);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:600;}

.lcdd-st__avert{border-left:3px solid var(--lcdd-border);padding-left:1rem;}
.lcdd-st__avert p{color:var(--lcdd-muted);font-size:.88rem;line-height:1.65;margin:0;}
@media (max-width:640px){
	.lcdd-st__bar{grid-template-columns:1fr auto;}
	.lcdd-st__bt{grid-column:1 / -1;order:3;}
}


/* ==========================================================================
   VIDÉO ET CHAPITRE VISIBLES ENSEMBLE, SANS DÉFILEMENT
   --------------------------------------------------------------------------
   ⚠ MESURÉ AU NAVIGATEUR, PAS SUPPOSÉ. Avant ces règles, aux trois largeurs :

     bureau 1400  .lcdd-nowch en `position:static` — après 483 px de défilement,
                  top = −286 px : le chapitre en cours avait disparu ;
     tablette 900 la VIDÉO elle-même disparaissait — top = −728 px — parce que
                  son `sticky` est borné par `.lcdd-stage`, qui est court ;
     mobile 390   idem, top = −625 px.

   Deux stratégies, parce que les deux dispositions n'ont pas le même problème.

   BUREAU — le panneau de droite est épinglé. Son `max-height:100vh` et le
   défilement interne de `.lcdd-chapters__list` font le reste : le chapitre en
   cours reste en tête, la liste défile dessous.

   TABLETTE ET MOBILE — `sticky` ne peut PAS tenir : son conteneur est
   `.lcdd-stage`, et rien ne permet à un élément de rester collé au-delà de son
   bloc conteneur. On passe donc en `position:fixed`, ce qui est d'ailleurs le
   comportement demandé — lecteur fixe en haut, chapitre fixe juste en dessous.
   `--lcdd-vid-h` porte la hauteur réelle du lecteur, que le CSS ne peut pas
   connaître (elle dépend du format de la vidéo) ; `bindStickyVideo()` la pose.
   @since 0.12.40
   ========================================================================== */

/* ⚠ Les substituts n'existent QUE dans la disposition fixe.
   Sans cette règle ils occupaient leur hauteur sur grand écran aussi — mesuré :
   la vidéo se retrouvait à 732 px du haut, sous la ligne de flottaison. */
.lcdd-stage__vph,
.lcdd-nowch__ph,
.lcdd-nowch__phs{display:none;}

/* ── Bureau : au-delà de 1000 px ─────────────────────────────────────────── */
@media (min-width:1001px){
	.lcdd-live .lcdd-qpanel{
		position:sticky;
		top:var(--lcdd-sticky-top,8px);
		align-self:start;
		/* ⚠ `height:100%` de la règle générale annulait l'épinglage : avec
		   `align-self:start`, il rendait le panneau aussi haut que la rangée,
		   donc sans course possible. Mesuré : le chapitre repartait à −60 px. */
		height:auto;
		max-height:calc(100vh - var(--lcdd-sticky-top,8px) - 1rem);
	}
	/*
	 * ⚠ `sticky` NE PEUT PAS TENIR ICI, et c'est mesurable : le panneau fait
	 *   876 px dans une rangée de 876 px — course d'épinglage NULLE. Un élément
	 *   collant n'a d'effet que s'il lui reste du chemin dans son conteneur.
	 *
	 * On fixe donc la zone au viewport, calée sur la colonne de droite dont
	 * `bindStickyVideo()` publie la position et la largeur. Le substitut garde
	 * sa place dans le flux, sous elle.
	 */
	.lcdd-live .lcdd-nowch{
		position:fixed;
		top:var(--lcdd-sticky-top,8px);
		left:var(--lcdd-now-left,auto);
		width:var(--lcdd-now-width,378px);
		z-index:24;
		border-top-left-radius:var(--lcdd-radius,12px);
		border-top-right-radius:var(--lcdd-radius,12px);
	}
	.lcdd-live .lcdd-nowch__ph{display:block;}
	/* ⚠ Le lecteur est collé DANS la scène : sa course s'arrête donc avec elle.
	   En étirant la scène à la hauteur de la rangée, la course couvre toute la
	   colonne des chapitres — c'est-à-dire tout le temps de lecture. */
	.lcdd-live .lcdd-stage{align-self:stretch;display:flex;flex-direction:column;}
	/* ⚠ C'est le CONTENEUR du lecteur qui s'étire, pas la scène entière : la
	   course du `sticky` s'arrête où il s'arrête, et « Démarrer le direct »,
	   « Éditer », la carte des enregistrements — qui le suivent — ne passent
	   jamais sous le lecteur. Mesuré le 13 septembre 2026 : quatre boutons
	   recouverts à 300 px de défilement avant cette règle. Sans panneau
	   (atelier programmé, terminé), la rangée n'est pas plus haute que la
	   scène : course nulle, le lecteur suit le flux, rien n'est recouvert. */
	.lcdd-live .lcdd-stage__videowrap{flex:1 1 auto;min-height:0;}
	.lcdd-live .lcdd-stage__video{flex:0 0 auto;}
	.lcdd-live .lcdd-chapters__list{flex:1 1 auto;min-height:0;overflow-y:auto;}
	/* ⚠ « Gérer les chapitres » ouvert écrasait la liste à une hauteur NULLE :
	   le formulaire, sans `min-height:0`, ne pouvait pas rétrécir. La liste
	   garde au moins huit lignes ; la gestion défile dans sa propre boîte, et
	   le panneau, lui, ne défile jamais — rien ne passe sous la zone fixée. (0.23.6) */
	.lcdd-live .lcdd-chapterspanel .lcdd-chapters__list{flex:1 1 0;min-height:min(12rem,30vh);}
	.lcdd-live .lcdd-chapterspanel .lcdd-ched{flex:0 1 auto;min-height:0;max-height:45vh;overflow-y:auto;padding-right:.25rem;}
	/* La place réservée au chapitre en cours et l en-tête ne rétrécissent
	   JAMAIS : la place, écrasée à 0 px par la colonne flexible, laissait la
	   zone fixée (89 px) recouvrir les premiers chapitres. Mesuré le 26 octobre 2026. */
	.lcdd-live .lcdd-chapterspanel .lcdd-nowch__ph,
	.lcdd-live .lcdd-chapterspanel .lcdd-qpanel__head{flex:none;}
}

/* ── Tablette et mobile : jusqu'à 1000 px ────────────────────────────────── */
@media (max-width:1000px){
	/* ⚠ `top` N'EST PLUS 0 : c'est la position de la place réservée, publiée
	   par bindStickyVideo() à chaque défilement, bornée en haut par la barre
	   d'administration. Le lecteur SUIT sa place tant qu'elle est visible, puis
	   se cale — c'est l'épinglage que `sticky` ne peut pas offrir ici, refait à
	   la main. Mesuré le 13 septembre 2026 : à top:0, le lecteur recouvrait la
	   barre de titre et « Plein écran » dès le haut de page. */
	.lcdd-live .lcdd-stage__video{
		position:fixed;top:var(--lcdd-vid-top,0px);left:0;right:0;z-index:40;
		width:100%;margin:0;border-radius:0;
		box-shadow:0 4px 14px rgba(11,34,51,.22);
	}
	/* Le substitut garde la place du lecteur dans le flux : sans lui, tout le
	   contenu remonterait de la hauteur de la vidéo. */
	.lcdd-live .lcdd-stage__vph{display:block;height:var(--lcdd-vid-h,210px);}
	/* ⚠ Le bas de page réserve la hauteur des deux zones fixes. Sans cela, ce
	   qui se trouve dans la dernière hauteur d'écran ne peut JAMAIS sortir de
	   sous le lecteur : mesuré, quatre boutons de contrôle inatteignables au
	   bas d'une page courte. */
	.lcdd-live{padding-bottom:calc(var(--lcdd-vid-h,210px) + var(--lcdd-now-h,0px));}
	.lcdd-live .lcdd-nowch{
		position:fixed;top:calc(var(--lcdd-vid-top,0px) + var(--lcdd-vid-h,210px));left:0;right:0;z-index:39;
		border-bottom:1px solid var(--lcdd-border);
		background:var(--lcdd-bg,#fff);
		box-shadow:0 2px 8px rgba(11,34,51,.10);
	}
	/* Sa place réservée est SOUS LE LECTEUR, dans la scène — pas dans le
	   panneau : c'est là que la zone fixée se cale. Le substitut du panneau
	   reste caché ici. */
	.lcdd-live .lcdd-nowch__phs{display:block;}
	.lcdd-live .lcdd-nowch__ph{display:none;}
	/* Le reste du contenu commence sous les deux barres fixes. */
	.lcdd-live .lcdd-stage__bar{padding-top:.4rem;}
}

/* Cinéma et plein écran : tout reprend le flux, rien n'est épinglé. */
.lcdd-live.is-theater .lcdd-stage__video,
.lcdd-live:fullscreen .lcdd-stage__video,
.lcdd-live.is-theater .lcdd-nowch,
.lcdd-live:fullscreen .lcdd-nowch{position:relative;top:auto;left:auto;right:auto;box-shadow:none;}
.lcdd-live.is-theater,
.lcdd-live:fullscreen{padding-bottom:0;}
.lcdd-live.is-theater .lcdd-stage__vph,
.lcdd-live:fullscreen .lcdd-stage__vph,
.lcdd-live.is-theater .lcdd-nowch__ph,
.lcdd-live:fullscreen .lcdd-nowch__ph{display:none!important;}


/* Vignette sans image : la signature Cloudflare n'est pas configurée, et l'UID
   ne doit pas partir en clair sur une page publique. Un cadre sobre, le
   timecode, le bouton — la fonction reste entière. */
.lcdd-hit__poster.is-generique{
	background:linear-gradient(135deg,var(--lcdd-aplat,#113F59),var(--lcdd-secondary-ink,#2B4C5E));
}
.lcdd-hit__poster.is-generique::after{background:linear-gradient(180deg,rgba(0,0,0,.02),rgba(0,0,0,.22));}

/* Proposer un synonyme depuis une recherche sans résultat (contributeurs). */
.lcdd-legif__proposer { margin-top: .75rem; display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.lcdd-legif__proposer label { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.lcdd-legif__proposer input { font: inherit; padding: .35rem .5rem; min-width: 14rem; }
.lcdd-legif__proposer-msg { flex-basis: 100%; margin: 0; }

/* ── Recherche fédérée : facettes comptées, filtres actifs, surlignage ─────── */
.lcdd-legif__facettes{display:flex;flex-direction:column;gap:.45rem;margin:0 0 .9rem;}
.lcdd-facet-row{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;}
.lcdd-facet-row__l{font-size:.8125rem;font-weight:700;color:var(--lcdd-muted);min-width:5.5rem;}
.lcdd-facet{border:1px solid var(--lcdd-border);background:var(--lcdd-bg);color:var(--lcdd-text);border-radius:999px;padding:.2rem .65rem;font:inherit;font-size:.82rem;cursor:pointer;line-height:1.4;}
.lcdd-facet:hover{border-color:var(--lcdd-primary);}
.lcdd-facet.is-on{background:var(--lcdd-aplat);color:#fff;border-color:var(--lcdd-primary);}
/* Ce qui se compte, en Plex Mono tabulaire (§ 8). */
.lcdd-facet__n{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:.74rem;opacity:.75;margin-left:.15rem;}
.lcdd-facet.is-on .lcdd-facet__n{opacity:.9;}
.lcdd-legif__actifs{display:flex;flex-wrap:wrap;gap:.35rem;margin:0 0 .6rem;}
.lcdd-legif__total{font-family:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;font-variant-numeric:tabular-nums;font-size:.78rem;color:var(--lcdd-muted);margin:0 0 .3rem;}
.lcdd-legifcard__extract mark{background:var(--lcdd-secondary);color:#08303a;border-radius:3px;padding:0 .15em;}
@media (max-width:640px){.lcdd-facet-row__l{flex-basis:100%;min-width:0;}}
/* Le badge ne se coupe pas au milieu d'un mot à 375 px : il passe à la ligne entier. */
.lcdd-legif__head{flex-wrap:wrap;}
.lcdd-legif__badge{white-space:nowrap;}

/* ==========================================================================
   Quiz du direct — @since 0.12.90
   La vidéo se réduit en vignette dans le coin ; la question prend sa place.
   ========================================================================== */
.lcdd-stage{position:relative;}
.lcdd-quiz{position:relative;box-sizing:border-box;padding:clamp(16px,2.4vw,28px) clamp(16px,2.6vw,32px);border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);background:var(--lcdd-surface,#f7f9fa);margin-bottom:1rem;}
/* La vignette se cale sur le HAUT DU QUIZ (--lcdd-quiz-top, posé par le
   script), non sur celui de la scène : sinon elle mord sur le titre. Et tout
   ce que contient la scène — lecteur, écran d'attente — prend sa taille. */
.lcdd-stage.has-quiz .lcdd-stage__videowrap{position:absolute;top:calc(var(--lcdd-quiz-top,0px) + 12px);right:12px;z-index:3;width:min(34%,256px);}
.lcdd-stage.has-quiz .lcdd-stage__video{position:relative;width:100%;height:auto;aspect-ratio:16/9;max-height:none;min-height:0;overflow:hidden;}
.lcdd-stage.has-quiz .lcdd-stage__placeholder{position:absolute;inset:0;min-height:0;height:auto;padding:6px;font-size:.6875rem;line-height:1.3;}
.lcdd-stage.has-quiz .lcdd-stage__placeholder *{font-size:inherit;margin:0;}
.lcdd-stage.has-quiz .lcdd-stage__videowrap .lcdd-stage__video{border-radius:6px;box-shadow:0 14px 32px -14px rgba(0,0,0,.6);}
.lcdd-quiz__tete{padding-right:calc(min(34%,256px) + 12px);min-height:clamp(64px,10vw,140px);}
.lcdd-quiz__k{margin:0;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;color:var(--lcdd-secondary-ink);}
.lcdd-quiz__q{margin:.6rem 0 0;font-size:clamp(1rem,1.6vw,1.25rem);line-height:1.38;font-weight:600;letter-spacing:-.01em;}
.lcdd-quiz__choix{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:8px;}
.lcdd-quiz__c{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:46px;box-sizing:border-box;padding:0 12px;border:1px solid var(--lcdd-border);border-radius:6px;background:transparent;color:inherit;font:inherit;font-size:.9375rem;text-align:left;overflow:hidden;}
button.lcdd-quiz__c{cursor:pointer;}
button.lcdd-quiz__c:hover,button.lcdd-quiz__c:focus-visible{border-color:var(--lcdd-secondary);}
.lcdd-quiz__c > *{position:relative;}
.lcdd-quiz__barre{position:absolute !important;inset:0 auto 0 0;background:rgba(25,190,192,.14);}
.lcdd-quiz__l{flex:none;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;opacity:.75;}
.lcdd-quiz__t{flex:1 1 auto;min-width:0;}
.lcdd-quiz__m{flex:none;display:inline-flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;}
.lcdd-quiz__m .lcdd-svg{width:14px;height:14px;}
.lcdd-quiz__p{flex:none;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;font-variant-numeric:tabular-nums;}
.lcdd-quiz__c.is-mien{border-color:currentColor;}
/* Couleurs d'état du thème quand il en a (lisibles en nuit), sinon celles du plugin. */
.lcdd-quiz__c.is-bon{border-color:var(--lcdd-etat-vigueur,#0A7A54);color:inherit;}
.lcdd-quiz__c.is-bon .lcdd-quiz__m,.lcdd-quiz__c.is-bon .lcdd-quiz__l{color:var(--lcdd-etat-vigueur,#0A7A54);}
.lcdd-quiz__c.is-faux{border-color:var(--lcdd-etat-abroge,#B83A48);}
.lcdd-quiz__c.is-faux .lcdd-quiz__m{color:var(--lcdd-etat-abroge,#B83A48);}
.lcdd-quizadmin__res .is-bon{color:var(--lcdd-etat-vigueur,#0A7A54);}
.lcdd-quiz__pied{margin:.8rem 0 0;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;opacity:.7;}
.lcdd-quiz__expl{margin:.8rem 0 0;padding:.75rem .9rem;border-radius:6px;background:rgba(25,190,192,.08);font-size:.9375rem;line-height:1.55;}
@media (max-width:640px){
	.lcdd-stage.has-quiz .lcdd-stage__videowrap{width:132px;top:calc(var(--lcdd-quiz-top,0px) + 10px);right:10px;}
	.lcdd-quiz__tete{padding-right:144px;min-height:84px;}
}

/* L'atelier de quiz de l'intervenant. */
.lcdd-quizadmin{margin-top:1.5rem;padding:1.2rem 1.3rem;border:1px solid var(--lcdd-border);border-radius:var(--lcdd-radius);}
.lcdd-quizadmin__items{list-style:none;margin:.8rem 0;padding:0;display:flex;flex-direction:column;gap:10px;}
.lcdd-quizadmin__item{padding:.8rem .9rem;border:1px solid var(--lcdd-border);border-radius:6px;}
.lcdd-quizadmin__item.is-ecran{border-color:var(--lcdd-secondary);}
.lcdd-quizadmin__etat{margin:0;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;opacity:.75;}
.lcdd-quizadmin__q{margin:.35rem 0 0;font-weight:600;}
.lcdd-quizadmin__res{margin:.35rem 0 0;font-family:var(--lcdd-mono,ui-monospace,monospace);font-size:.8125rem;display:flex;flex-wrap:wrap;gap:12px;}
.lcdd-quizadmin__res .is-bon{color:#0A7A54;font-weight:600;}
.lcdd-quizadmin__btns{margin:.6rem 0 0;display:flex;flex-wrap:wrap;gap:8px;}
.lcdd-quizadmin__nouveau summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center;}
.lcdd-quizadmin__form{display:grid;gap:.5rem;margin-top:.6rem;}
.lcdd-quizadmin__form textarea,.lcdd-quizadmin__form input[type=text]{width:100%;box-sizing:border-box;}
.lcdd-quizadmin__choix{border:0;margin:.4rem 0;padding:0;display:grid;gap:6px;}
.lcdd-quizadmin__choix legend{font-weight:600;margin-bottom:.3rem;}
.lcdd-quizadmin__ligne{display:flex;align-items:center;gap:8px;}
.lcdd-quizadmin__ligne input[type=radio]{flex:none;width:20px;height:20px;}
.lcdd-quizadmin__lettre{flex:none;width:1.2em;font-family:var(--lcdd-mono,ui-monospace,monospace);}
.lcdd-quizadmin__ligne input[type=text]{flex:1 1 auto;min-width:0;}
.lcdd-quizadmin__actions{margin:.4rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px;}


/* Quiz sous 1000 px : le lecteur y est déjà FIXÉ en haut de l'écran
   (bindStickyVideo). Pendant un quiz, il le reste, mais en vignette dans le
   coin droit ; sa place réservée et le bandeau du chapitre s'effacent, sans
   quoi un vide de la hauteur de la vidéo restait au-dessus du quiz.
   (0.12.90, maquette du 20 octobre 2026) */
@media (max-width:1000px){
	.lcdd-live .lcdd-stage.has-quiz .lcdd-stage__video{
		position:fixed;top:var(--lcdd-pip-top,80px);left:auto;right:10px;
		width:132px;aspect-ratio:16/9;height:auto;border-radius:6px;
		box-shadow:0 12px 28px -12px rgba(0,0,0,.65);
	}
	.lcdd-live .lcdd-stage.has-quiz .lcdd-stage__vph{display:none;}
	.lcdd-live:has(.lcdd-stage.has-quiz){padding-bottom:0;}
	.lcdd-live:has(.lcdd-stage.has-quiz) .lcdd-nowch,
	.lcdd-live:has(.lcdd-stage.has-quiz) .lcdd-nowch__phs{display:none;}
}
.lcdd-quizadmin__ligne[hidden]{display:none;}
.lcdd-quizadmin__form textarea,.lcdd-quizadmin__form input[type=text]{font-family:inherit;font-size:1rem;}
.lcdd-quizadmin__choix [data-quiz-plus]{justify-self:start;}

/* ==========================================================================
   Plein écran sur téléphone et tablette — @since 0.12.92

   ⚠ ÉCRAN NOIR SUR IPHONE. Safari sur iPhone ne met en plein écran qu'une
     balise <video>, jamais un bloc : le bouton passe donc par le plein écran
     « logiciel » (.is-theater). En colonne (portrait), la vidéo y était en
     `flex:1 1 auto; height:auto; aspect-ratio:auto` dans une scène qui ne
     s'étire pas : hauteur nulle, il ne restait que le fond noir. Vu sur
     iPhone par Ambroise le 20 octobre 2026.

   En PORTRAIT : la vidéo en 16:9 en haut, puis le panneau (questions ou
   chapitres) qui défile dessous — la disposition de la maquette du direct.
   En PAYSAGE court : la vidéo remplit la hauteur, le panneau à droite.
   ========================================================================== */
@media (max-width:820px) and (orientation:portrait){
	.lcdd-live.is-theater{flex-direction:column !important;gap:0 !important;padding:0 !important;overflow:hidden !important;}
	.lcdd-live.is-theater .lcdd-stage{flex:0 0 auto !important;height:auto !important;gap:0 !important;overflow:visible !important;}
	.lcdd-live.is-theater .lcdd-stage__bar{order:2;padding:.6rem 1rem !important;margin:0 !important;}
	.lcdd-live.is-theater .lcdd-stage__videowrap{order:1;flex:none !important;}
	.lcdd-live.is-theater .lcdd-stage__video{
		flex:none !important;width:100% !important;height:auto !important;
		aspect-ratio:16/9 !important;border-radius:0 !important;
	}
	.lcdd-live.is-theater .lcdd-quiz{order:3;margin:0 !important;border-radius:0 !important;border-left:0;border-right:0;}
	.lcdd-live.is-theater .lcdd-qpanel{flex:1 1 auto !important;min-height:0 !important;width:100% !important;height:auto !important;border-radius:0 !important;padding:1rem !important;overflow:auto !important;}
}
@media (orientation:landscape) and (max-height:520px){
	.lcdd-live.is-theater{flex-direction:row !important;}
	.lcdd-live.is-theater .lcdd-stage{flex:1 1 auto !important;height:100% !important;}
	.lcdd-live.is-theater .lcdd-qpanel{flex:0 0 clamp(220px,34vw,320px) !important;height:100% !important;}
}

/* Le quiz en plein écran : la vidéo se réduit aussi, en vignette dans le
   coin du quiz — les règles du plein écran, prioritaires, l'en empêchaient. */
.lcdd-live.is-theater .lcdd-stage.has-quiz .lcdd-stage__videowrap,
.lcdd-live:fullscreen .lcdd-stage.has-quiz .lcdd-stage__videowrap{
	position:absolute !important;top:calc(var(--lcdd-quiz-top,0px) + 10px) !important;right:10px !important;
	width:min(34%,256px) !important;z-index:5 !important;order:0 !important;
}
.lcdd-live.is-theater .lcdd-stage.has-quiz .lcdd-stage__video,
.lcdd-live:fullscreen .lcdd-stage.has-quiz .lcdd-stage__video{
	position:relative !important;top:auto !important;left:auto !important;right:auto !important;flex:none !important;width:100% !important;height:auto !important;
	aspect-ratio:16/9 !important;border-radius:6px !important;box-shadow:0 12px 28px -12px rgba(0,0,0,.65) !important;
}
.lcdd-live.is-theater .lcdd-stage.has-quiz .lcdd-quiz{order:1;}
@media (max-width:820px) and (orientation:portrait){
	.lcdd-live.is-theater .lcdd-stage.has-quiz .lcdd-stage__videowrap{width:132px !important;}
	.lcdd-live.is-theater .lcdd-stage.has-quiz .lcdd-stage__bar{order:0;}
}

/* ==========================================================================
   Surfaces et modes — @since 0.12.93
   ⚠ Une douzaine de règles imposaient un fond BLANC fixe (fenêtres « Posez
     votre question » et de connexion, champs, listes, encarts). Le thème
     redéfinit le texte selon le mode : la nuit, crème sur blanc, illisible
     — vu sur iPhone par Ambroise le 20 octobre 2026. Fonds et textes lisent
     désormais les variables du mode ; un bouton blanc garde un texte marine.
   ========================================================================== */
.lcdd-modal__form textarea{background:var(--lcdd-bg,#fff);color:var(--lcdd-text);}
.lcdd-modal__form textarea::placeholder,.lcdd-composer__input::placeholder,.lcdd-refsearch::placeholder{color:var(--lcdd-muted,#8a97a5);opacity:1;}
.lcdd-modal__title{color:var(--lcdd-text) !important;}

/* ==========================================================================
   Onglets de l'atelier (téléphone, tablette, plein écran) — @since 0.12.94
   ========================================================================== */
.lcdd-ltabs{display:none;}
.lcdd-live.has-ltabs .lcdd-ltabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);margin:.75rem 0 1rem;border-bottom:1px solid var(--lcdd-border);}
.lcdd-ltabs__b{min-height:48px;padding:0 .4rem;border:0;border-radius:0;background:none;color:var(--lcdd-muted);font:inherit;font-size:.875rem;font-weight:500;line-height:1.2;cursor:pointer;box-shadow:none;}
.lcdd-ltabs__b:hover{color:var(--lcdd-text);}
.lcdd-ltabs__b[aria-pressed="true"]{color:var(--lcdd-text);font-weight:600;box-shadow:inset 0 -2px 0 var(--lcdd-secondary);}
.lcdd-ltabs__b:focus-visible{outline:2px solid var(--lcdd-secondary);outline-offset:-2px;}
.lcdd-live.has-ltabs .is-ltab-off{display:none !important;}
.lcdd-live.has-ltabs [data-lcdd="drawer-toggle"]{display:none !important;}
/* En plein écran tactile (téléphone et tablette, portrait ou paysage haut) :
   une colonne — la vidéo en 16:9 en haut, le titre, les onglets, puis le
   panneau actif qui défile seul. Mesuré le 20 octobre 2026 : à 834 px, la
   scène restait en ligne et les onglets s'étiraient en colonne étroite. */
.lcdd-live.is-theater.has-ltabs{display:flex !important;flex-direction:column !important;gap:0 !important;padding:0 !important;overflow:hidden !important;}
.lcdd-live.is-theater.has-ltabs .lcdd-stage{flex:0 0 auto !important;height:auto !important;gap:0 !important;overflow:visible !important;}
.lcdd-live.is-theater.has-ltabs .lcdd-stage__bar{order:2;padding:.6rem 1rem !important;margin:0 !important;}
.lcdd-live.is-theater.has-ltabs .lcdd-stage__videowrap{order:1;flex:none !important;}
.lcdd-live.is-theater.has-ltabs .lcdd-stage__video{flex:none !important;width:100% !important;height:auto !important;aspect-ratio:16/9 !important;max-height:58vh !important;border-radius:0 !important;}
.lcdd-live.is-theater.has-ltabs .lcdd-quiz{order:3;}
.lcdd-live.is-theater.has-ltabs .lcdd-ltabs{flex:none;margin:0;padding:0 .5rem;background:var(--lcdd-bg,#071E2C);}
.lcdd-live.is-theater.has-ltabs .lcdd-qpanel:not(.is-ltab-off),
.lcdd-live.is-theater.has-ltabs .lcdd-live__meta:not(.is-ltab-off){display:block !important;flex:1 1 auto !important;width:100% !important;height:auto !important;min-height:0 !important;overflow:auto !important;margin:0 !important;padding:1rem !important;border-radius:0 !important;background:var(--lcdd-bg,#071E2C);}
.lcdd-live.is-theater.has-ltabs .lcdd-live__meta:not(.is-ltab-off) > * + *{margin-top:1rem;}
/* Les attentes se recueillent avant le direct : hors du plein écran. */
.lcdd-live.is-theater.has-ltabs .lcdd-expect{display:none !important;}
/* Sous la vidéo fixée, les onglets restent à portée de pouce : sans cela ils
   défilaient sous le lecteur et ne recevaient plus le toucher (mesuré au
   navigateur, 390 px). */
@media (max-width:1000px){
	/* La grille « stage / meta » plaçait les onglets après les blocs : en
	   colonne simple, ils suivent la vidéo dans l'ordre du document. */
	.lcdd-live.has-ltabs:not(.is-theater){display:flex;flex-direction:column;align-items:stretch;gap:1.25rem;}
	.lcdd-live.has-ltabs:not(.is-theater) .lcdd-ltabs{margin:0 0 -.25rem;}
	.lcdd-live.has-ltabs:not(.is-theater) .lcdd-ltabs{position:sticky;top:calc(var(--lcdd-vid-top,0px) + var(--lcdd-vid-h,210px) + var(--lcdd-now-h,0px));z-index:38;background:var(--lcdd-bg,#071E2C);}
}

/* ==========================================================================
   0.13.0 — trois modes de diffusion, et ce que la page du 21 octobre a montré
   ========================================================================== */
/* ⚠ `hidden` doit masquer, toujours. `.lcdd-btn{display:inline-flex}` l'annulait :
     « Démarrer le direct » restait visible sur un replay. */
/* @socle-jeu */
[hidden]{display:none !important;}
/* @fin-socle-jeu */

.lcdd-badge--diffusion{background:#7A4A0C;color:#FFF6E5;}
.lcdd-stage__mention{margin:.15rem 0 .9rem;max-width:62ch;font-size:.9rem;line-height:1.5;color:var(--lcdd-muted);}
.lcdd-stage__ph-staff{margin:1rem auto 0;max-width:46ch;padding:.6rem .8rem;border:1px dashed rgba(243,237,211,.45);border-radius:8px;font-size:.85rem;line-height:1.45;opacity:.9;}

.lcdd-diffchoix{border:0;margin:0;padding:0;display:grid;gap:.5rem;}
.lcdd-diffchoix legend{margin-bottom:.4rem;padding:0;}
.lcdd-diffchoix__opt{display:flex;gap:.7rem;align-items:flex-start;padding:.75rem .9rem;border:1.5px solid var(--lcdd-border);border-radius:var(--lcdd-radius-sm,8px);cursor:pointer;line-height:1.4;}
.lcdd-diffchoix__opt:has(input:checked){border-color:var(--lcdd-accent,#19BEC0);box-shadow:0 0 0 1px var(--lcdd-accent,#19BEC0);}
.lcdd-diffchoix__opt input{margin-top:.2rem;flex:none;accent-color:var(--lcdd-accent,#19BEC0);}
.lcdd-diffchoix__opt strong{display:block;color:var(--lcdd-text);}
.lcdd-diffchoix__opt .lcdd-hint{display:block;margin-top:.15rem;}

/* Plein écran : la scène ne garde que le titre, la vidéo et le quiz. Les outils
   d'animation repoussaient « Quitter le plein écran » sous la barre de Safari
   (iPhone, 21 octobre 2026). Ils restent sur la page, hors plein écran. */
.lcdd-live.is-theater :is(.lcdd-stage__controls,.lcdd-quizadmin,.lcdd-recordings,.lcdd-stage__mention),
.lcdd-live:fullscreen :is(.lcdd-stage__controls,.lcdd-quizadmin,.lcdd-recordings,.lcdd-stage__mention){display:none !important;}

/* Sans chapitre, la zone « Chapitre en cours » ne dit rien que l'onglet
   Sommaire ne dise déjà : on ne la montre pas. Aucun saut de mise en page,
   puisqu'elle ne paraîtra qu'avec le premier chapitre. */
.lcdd-live.no-chapters :is(.lcdd-nowch,.lcdd-nowch__ph,.lcdd-nowch__phs){display:none !important;}
.lcdd-chapterspanel [data-ch-list] > .lcdd-muted{margin:0;padding:1rem 1.25rem;}
@media (min-width:1001px){
	/* ⚠ Fixée en haut de l'écran sans suivre sa place, la zone flottait
	     au-dessus de l'en-tête avant tout défilement (iPad, 21 octobre). */
	.lcdd-live .lcdd-nowch{top:var(--lcdd-now-top,var(--lcdd-sticky-top,8px));}
}
/* La thématique d'un atelier est un `.lcdd-badge`, qui interdit le retour à
   la ligne : « COMMERCIAL, AFFAIRES ET CONCURRENCE » sortait de sa carte à
   1024 px. Dans les cartes, elle passe à la ligne. (0.13.0) */
.lcdd-live__meta .lcdd-badge,.lcdd-acard .lcdd-badge--role{white-space:normal;max-width:100%;line-height:1.35;text-align:left;}
/* « Gérer les chapitres » touchait le bord du panneau : mêmes marges que son
   en-tête. */
.lcdd-chapterspanel > .lcdd-ched{padding:1rem 20px 1.1rem;}
/* Bloc « Barre de recherche » (page 404…) : aucun style, le champ prenait le
   gris par défaut du navigateur la nuit (indicatif à 2,4:1). (0.13.0) */
.lcdd-search__form{display:flex;gap:.6rem;flex-wrap:wrap;margin:1.2rem 0;}
.lcdd-search__form input[type=search]{flex:1 1 16rem;min-width:0;min-height:52px;margin:0;padding:.7rem 1.2rem;border:1.5px solid var(--lcdd-border);border-radius:999px;font:inherit;background:var(--lcdd-bg,#fff);color:var(--lcdd-text);}
.lcdd-search__form input[type=search]::placeholder{color:var(--lcdd-muted,#8a97a5);opacity:1;}
.lcdd-search__form input[type=search]:focus{outline:none;border-color:var(--lcdd-accent);box-shadow:var(--lcdd-ring);}
.lcdd-search__form .lcdd-btn{flex:0 0 auto;}
/* La barre enveloppée par sa liste de suggestions (0.14.1) : l'enveloppe prend la place du champ. */
.lcdd-search__form .lcdd-ac{flex:1 1 16rem;min-width:0;}
.lcdd-search__form .lcdd-ac input[type=search]{width:100%;box-sizing:border-box;}


/* « Mon compte » : la suppression du compte, au bas du tableau de bord
   (0.15.10). Divulgation progressive : le bouton est toujours visible, le
   formulaire ne s'ouvre qu'à la demande. */
/* ⚠ Restreinte à la section (0.20.7) : le menu « Mon espace » de l en-tête
   (0.20.3) porte aussi la classe lcdd-compte, et cette marge le descendait
   de 20 px sous les autres contrôles. */
.lcdd-panel.lcdd-compte{margin-top:1.25rem;}
.lcdd-compte__sortie{margin:0 0 1rem;}
.lcdd-compte__suppr > summary{list-style:none;width:max-content;max-width:100%;}
.lcdd-compte__suppr > summary::-webkit-details-marker{display:none;}
.lcdd-compte__suppr[open] > summary{margin-bottom:1rem;}
.lcdd-compte__corps{max-width:62ch;}
.lcdd-compte__liste{margin:.4rem 0 .6rem;padding-left:1.2rem;}
.lcdd-compte__form{margin-top:1.1rem;}
.lcdd-compte__case{display:flex;gap:.6rem;align-items:flex-start;line-height:1.45;cursor:pointer;}
.lcdd-compte__case input{flex:0 0 auto;width:1.2rem;height:1.2rem;margin:.1rem 0 0;}
.lcdd-compte .lcdd-compte__retour{margin:0 0 1rem;padding:.7rem .9rem;border-left:3px solid var(--lcdd-secondary);background:var(--lcdd-surface);border-radius:var(--lcdd-radius-xs);}
.lcdd-compte .lcdd-compte__retour.is-ko{border-left-color:var(--lcdd-live);}
@media (max-width:600px){
	.lcdd-compte__suppr > summary,.lcdd-compte__confirmer{width:100%;white-space:normal;}
	.lcdd-formstack .lcdd-compte__confirmer{align-self:stretch;}
}

/* Les vidéos d une question dans la carte de qualification (0.17.0). */
.lcdd-qcard__videos { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 12px; margin: 12px 0; }
.lcdd-qcard__video { margin: 0; }
.lcdd-qcard__video figcaption { font-size: .8125rem; color: var(--lcdd-t-encre-douce, #50575e); margin-bottom: 4px; }
.lcdd-qcard__video video { width: 100%; aspect-ratio: 16 / 9; background: #000; border-radius: 6px; }
.lcdd-qcard__dl { display: inline-block; margin-top: 4px; font-size: .875rem; }

/* La question en vidéo (0.17.0). */
.lcdd-qvideo { margin: 10px 0 12px; border: 1px solid var(--lcdd-t-filet, #dcdcde); border-radius: 10px; padding: 10px 14px; }
.lcdd-qvideo > summary { cursor: pointer; font-weight: 600; min-height: 32px; display: flex; align-items: center; gap: 6px; }
.lcdd-qvideo__corps { display: flex; flex-direction: column; gap: 10px; padding-top: 8px; }
.lcdd-qvideo__conseils { margin: 0; padding-left: 1.2em; }
.lcdd-qvideo__case { display: flex; gap: 8px; align-items: flex-start; line-height: 1.45; }
.lcdd-qvideo__case input { margin-top: .25em; }
.lcdd-qvideo__nature { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 6px 18px; }
.lcdd-qvideo__nature legend { font-weight: 600; margin-bottom: 4px; }
.lcdd-qvideo__barre { width: 100%; height: 8px; }
.lcdd-qvideo__case { display: grid; grid-template-columns: 22px 1fr; column-gap: 10px; align-items: start; }
.lcdd-qvideo .lcdd-qvideo__case input[type="checkbox"], .lcdd-qvideo .lcdd-qvideo__nature input[type="radio"] { width: 20px; height: 20px; min-height: 0; margin: 2px 0 0; padding: 0; flex: 0 0 auto; display: inline-block; }
.lcdd-qvideo__nature label { display: inline-flex; gap: 8px; align-items: center; }
/* Le studio de la webcam : assets/css/lcdd-studio.css (0.21.0), partagé avec « Transmettre le droit ». */

/* Les questions de l atelier (0.17.2). */
.lcdd-atq__liste { margin: 0 0 12px; padding-left: 1.4em; display: flex; flex-direction: column; gap: 14px; }
.lcdd-atq__texte { margin: 0 0 4px; }
.lcdd-atq__item form { margin: 6px 0 0; }
.lcdd-atq__ajout summary { cursor: pointer; font-weight: 600; margin: 8px 0; }
.lcdd-atq__choix { list-style: none; margin: 0 0 12px; padding: 0; max-height: 420px; overflow: auto; display: flex; flex-direction: column; gap: 8px; }
.lcdd-atq__choix label { display: grid; grid-template-columns: 22px 1fr auto; gap: 8px; align-items: start; }
.lcdd-atq__choix input { width: 18px; height: 18px; margin-top: 2px; }
.lcdd-origin__item .lcdd-video-admin { margin-top: 10px; }

/* « Mes questions » du tableau de bord (0.20.4). Les mots de l'auteur en
   Spectral ; l'état en capitales de la voix de la plateforme ; la vidéo jointe,
   relue sur place. */
.lcdd-mesq { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; }
.lcdd-mesq__item { padding: 16px 0; border-top: 1px solid var(--lcdd-border, #dcdcde); display: flex; flex-direction: column; gap: 8px; }
.lcdd-mesq__item:first-child { border-top: 0; padding-top: 4px; }
.lcdd-mesq__tete { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; margin: 0 !important; font: 400 .8125rem/1.4 var(--wp--preset--font-family--mono, ui-monospace, monospace); color: var(--lcdd-muted, #6b7280); font-variant-numeric: tabular-nums; }
.lcdd-mesq__etat { padding: 2px 8px; border: 1px solid currentColor; border-radius: 999px; color: var(--lcdd-t-corail-texte, #b83a48); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; font-size: .6875rem; }
.lcdd-mesq__etat--en_attente, .lcdd-mesq__etat--planifiee, .lcdd-mesq__etat--deja_publiee { color: var(--lcdd-t-lien, #0e7c74); }
.lcdd-mesq__etat--annulee { color: var(--lcdd-muted, #6b7280); }
.lcdd-mesq__texte { margin: 0; padding: 0; border: 0; font: 400 1.125rem/1.5 var(--wp--preset--font-family--serif, "Spectral", Georgia, serif); color: inherit; }
.lcdd-mesq__publie { margin: 0 !important; font: italic 400 1rem/1.5 var(--wp--preset--font-family--serif, "Spectral", Georgia, serif); color: var(--lcdd-muted, #6b7280); }
.lcdd-mesq__etape { margin: 0 !important; font-size: .9375rem; color: var(--lcdd-muted, #6b7280); }
.lcdd-mesq .lcdd-scene { margin-top: 4px; } /* la vidéo jointe : l'écran commun, lcdd-ecran.css (0.20.5) */

/* Vidéo d'une question : boutons inactifs tant que les deux accords manquent (0.21.10). */
.lcdd-qvideo__actions .lcdd-btn.is-inactif { opacity: .45; cursor: not-allowed; }
.lcdd-qvideo__requis[hidden] { display: none; }

/* Signalement : l'écran de remerciement (0.23.1, signalement n° 8). */
.lcdd-signal__merci{padding:48px 28px 36px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:14px}
/* Le remerciement à sa taille, sur ordinateur comme sur téléphone (signalement n° 29, 0.25.26).
   ⚠ `fit-content`, jamais `auto` (signalement n° 37, 0.25.27) : une fenêtre
   modale est posée sur tout l'écran (`inset: 0`) et c'est le `fit-content`
   du navigateur qui la ramène à son contenu. `height:auto` le remplaçait : la
   fenêtre s'étirait jusqu'à sa hauteur maximale (816 px pour ~340 de
   contenu), collée en haut de l'écran. */
.lcdd-signal.is-merci{width:min(440px,calc(100vw - 32px));height:fit-content;max-height:calc(100dvh - 32px);margin:auto;border:1px solid var(--lcdd-t-filet,#d9d6cc);border-radius:12px}
.lcdd-signal.is-merci .lcdd-signal__merci{padding:40px 24px 28px}
.lcdd-signal__merci-coche{margin:0;width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:600;background:var(--lcdd-t-action,#19BEC0);color:var(--lcdd-t-action-encre,#071E2C)}
.lcdd-signal__merci-titre{margin:6px 0 0;font-size:1.5rem;line-height:1.3}
.lcdd-signal__merci-n{margin:0;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:.875rem;letter-spacing:.06em;opacity:.75}
.lcdd-signal__merci-texte{margin:0 0 10px;max-width:30rem;line-height:1.6}

/* Mes signalements, sur le tableau de bord (0.23.3, signalement n° 11). */
.lcdd-mes-signalements__liste{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:12px}
.lcdd-mes-signalements__item{padding:14px 16px;border:1px solid var(--lcdd-t-filet,rgba(0,0,0,.12));border-radius:10px}
.lcdd-mes-signalements__tete{margin:0 0 4px;font-size:.8125rem;opacity:.8}
.lcdd-mes-signalements__statut{font-weight:600}
.lcdd-mes-signalements__item.is-corrige .lcdd-mes-signalements__statut{color:var(--lcdd-t-action,#19BEC0)}
.lcdd-mes-signalements__titre{margin:0;font-weight:600}
.lcdd-mes-signalements__reponse{margin:10px 0 0;padding:10px 14px;border-left:3px solid var(--lcdd-t-action,#19BEC0);font-family:'Spectral',Georgia,serif}
.lcdd-mes-signalements__qui{margin:0 0 4px;font-family:'IBM Plex Sans',system-ui,sans-serif;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;opacity:.7}


/* L'amendement entier, sous sa carte de résultat (0.25.18, signalement n° 22).
   Dispositif et exposé sont les mots de l'assemblée : Spectral. */
.lcdd-amdt{margin:.4rem 0 .8rem;padding:.8rem 1rem;border-left:3px solid var(--lcdd-t-action,#19BEC0);background:color-mix(in srgb,currentColor 4%,transparent);border-radius:0 6px 6px 0}
.lcdd-amdt__meta{margin:0 0 .5rem;font-size:.875rem;color:var(--lcdd-muted,#6b7280)}
.lcdd-amdt__h{margin:.8rem 0 .3rem;font:600 .75rem/1.2 var(--wp--preset--font-family--mono,"IBM Plex Mono",monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--lcdd-muted,#6b7280)}
.lcdd-amdt__v{margin:0;font:400 1.0625rem/1.6 var(--wp--preset--font-family--serif,"Spectral",Georgia,serif);white-space:pre-line;overflow-wrap:anywhere}

/* Mois par mois, et le volume de chaque catégorie (0.25.18, signalement n° 25). */
.lcdd-st__mois{margin:1.6rem 0 0;padding:1rem 0 0;border-top:1px solid var(--lcdd-border);}
.lcdd-st__moist{margin:0 0 .6rem;font-size:.95rem;}
.lcdd-st__moist select{margin-left:.3rem;padding:.25rem .5rem;font:600 .95rem/1.2 var(--lcdd-mono,ui-monospace,monospace);color:inherit;background:transparent;border:1px solid currentColor;border-radius:6px;}
.lcdd-st__chart--mois{height:150px;margin-bottom:1.8rem;overflow:visible;}
.lcdd-st__lecture--mois{display:block;margin-top:.4rem;min-height:1.3em;font:500 .9rem/1.3 var(--lcdd-mono,ui-monospace,monospace);}
.lcdd-st__chart--mois[hidden]{display:none;}
.lcdd-st__chart--mois .lcdd-st__col{flex:1 0 18px;}
.lcdd-st__h3{margin:2rem 0 .4rem;font-size:1.05rem;font-weight:600;}
.lcdd-st__vols{display:grid;gap:0;max-width:900px;}
.lcdd-st__vol{padding:.9rem 0;border-top:1px solid var(--lcdd-border);}
.lcdd-st__voll{margin:0 0 .5rem;font-size:.95rem;font-weight:600;}
.lcdd-st__volc{display:flex;flex-wrap:wrap;gap:.4rem 1.6rem;margin:0 0 .6rem;}
.lcdd-st__volc div{display:flex;flex-direction:column-reverse;}
.lcdd-st__volc dt{font-size:.8rem;color:var(--lcdd-muted);}
.lcdd-st__volc dd{margin:0;font:600 1.25rem/1.2 var(--lcdd-mono,ui-monospace,monospace);font-variant-numeric:tabular-nums;}
.lcdd-st__vol .lcdd-st__bt{display:block;}
