:root{
  --live-red:#ff4747;--live-red-deep:#b72323;--live-panel:rgba(24,20,18,.92);--live-panel-2:rgba(14,12,11,.94);
  --live-border:rgba(255,255,255,.11);--live-soft:rgba(255,255,255,.055);--live-text:#eee7dc;--live-dim:#b8aea2;
}
*{box-sizing:border-box}.lives-page{min-height:100vh;min-height:100dvh;background:var(--ink,#0e0c0b);color:var(--bone,var(--live-text));font-family:'Hanken Grotesk',sans-serif;overflow-x:hidden}
/* Respect strictement l'attribut HTML hidden, même quand les composants ont un display forcé. */
body.lives-page [hidden]{display:none!important}

.live-atmos{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 74% 5%,rgba(210,46,46,.12),transparent 27%),radial-gradient(circle at 8% 25%,rgba(209,138,78,.08),transparent 31%);z-index:0}
.live-main{position:relative;z-index:1;padding:116px 0 calc(80px + env(safe-area-inset-bottom))}.wrap{width:min(1240px,calc(100% - 32px));margin-inline:auto}
.live-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:54px 0 44px;border-bottom:1px solid var(--live-border)}.live-hero-copy{max-width:760px}.live-kicker{display:inline-flex;align-items:center;gap:8px;color:var(--ember-2,#d18a4e);font:600 .72rem 'IBM Plex Mono',monospace;letter-spacing:.13em;text-transform:uppercase}.live-kicker i{width:8px;height:8px;border-radius:50%;background:var(--live-red);box-shadow:0 0 0 6px rgba(255,71,71,.11),0 0 20px rgba(255,71,71,.45)}.live-hero h1{font:500 clamp(3.5rem,9vw,7.5rem)/.86 'Fraunces',serif;margin:17px 0 18px;letter-spacing:-.045em}.live-hero p{font-size:clamp(1rem,2vw,1.2rem);line-height:1.65;color:var(--bone-dim,var(--live-dim));max-width:64ch}.live-hero-actions{flex:0 0 auto}
.live-btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--live-border);background:#211c19;color:#fff;border-radius:9px;padding:11px 16px;font:700 .83rem 'Hanken Grotesk',sans-serif;text-decoration:none;cursor:pointer;transition:.18s ease;touch-action:manipulation}.live-btn:hover{transform:translateY(-1px);border-color:rgba(255,255,255,.24)}.live-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.live-btn-primary{background:linear-gradient(135deg,#d73535,#9e1f1f);border-color:#e55353;box-shadow:0 8px 28px rgba(190,35,35,.2)}.live-btn-danger{background:#581f1f;border-color:#8b3535}.live-btn-small{min-height:34px;padding:7px 10px;font-size:.75rem}
.live-section{padding:44px 0}.live-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:22px}.live-section-head.compact{margin-bottom:14px}.live-section-head h2,.live-section-head h3{font:500 clamp(1.7rem,4vw,2.6rem)/1.05 'Fraunces',serif;margin:8px 0 0}.live-count-pill,.live-mini-pill,.live-current-role{padding:6px 10px;border:1px solid var(--live-border);border-radius:999px;color:var(--bone-dim,var(--live-dim));font:.72rem 'IBM Plex Mono',monospace}.live-current-role{color:#fff;background:rgba(255,255,255,.06)}
.live-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.live-card{display:block;border:1px solid var(--live-border);border-radius:14px;overflow:hidden;background:linear-gradient(180deg,rgba(33,28,25,.95),rgba(17,15,14,.96));text-decoration:none;color:inherit;cursor:pointer;transition:.22s ease}.live-card:hover{transform:translateY(-3px);border-color:rgba(255,92,92,.38);box-shadow:0 18px 42px rgba(0,0,0,.25)}.live-card-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:radial-gradient(circle at 50% 20%,#49362f,#171311 70%)}.live-card-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.75) brightness(.78);transform:scale(1.02)}.live-card-media.no-avatar:after{content:'◉';position:absolute;inset:0;display:grid;place-items:center;font-size:4rem;color:rgba(255,255,255,.14)}.live-card-badge{position:absolute;top:12px;left:12px;background:#d82e2e;color:#fff;padding:6px 9px;border-radius:6px;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.07em}.live-card-viewers{position:absolute;top:12px;right:12px;background:rgba(5,5,5,.72);backdrop-filter:blur(6px);padding:6px 9px;border-radius:6px;font:.72rem 'IBM Plex Mono',monospace}.live-card-body{padding:17px}.live-card-owner{color:var(--ember-2,#d18a4e);font:600 .76rem 'IBM Plex Mono',monospace;margin-bottom:7px}.live-card-title{font:500 1.4rem 'Fraunces',serif;margin:0 0 8px}.live-card-desc{color:var(--bone-dim,var(--live-dim));line-height:1.5;font-size:.92rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.live-empty{grid-column:1/-1;padding:44px 24px;text-align:center;border:1px dashed var(--live-border);border-radius:14px;color:var(--bone-dim,var(--live-dim))}
.live-viewer-section{padding:30px 0 50px}.live-viewer-topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px}.live-back-btn{min-height:40px;border:0;background:transparent;color:var(--bone-dim,var(--live-dim));cursor:pointer;font:600 .86rem 'Hanken Grotesk',sans-serif;padding:7px 0}.live-viewer-meta{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;color:var(--bone-dim,var(--live-dim));font:.75rem 'IBM Plex Mono',monospace}.live-live-badge{display:inline-flex;align-items:center;gap:6px;background:#c92b2b;color:white;border-radius:6px;padding:6px 9px;font:700 .65rem 'IBM Plex Mono',monospace;letter-spacing:.06em}
.live-watch-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(310px,.72fr);gap:18px;align-items:start}.live-video-panel,.live-chat-panel,.live-moderation-card{border:1px solid var(--live-border);background:var(--live-panel);border-radius:14px;overflow:hidden}.live-video-stage{position:relative;aspect-ratio:16/9;background:#050505;display:grid;place-items:center;overflow:hidden}.live-media-grid{width:100%;height:100%;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;gap:3px;background:#050505}.live-media-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.live-media-grid[data-count="3"],.live-media-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.live-media-grid[data-count="5"],.live-media-grid[data-count="6"]{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr))}.live-media-tile{position:relative;min-width:0;min-height:0;overflow:hidden;background:#000}.live-media-tile video{width:100%;height:100%;display:block;object-fit:contain;background:#000}.live-media-label{position:absolute;left:9px;bottom:9px;max-width:calc(100% - 18px);padding:5px 8px;border-radius:6px;background:rgba(0,0,0,.68);font:600 .69rem 'IBM Plex Mono',monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-video-placeholder{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:25px;color:var(--bone-dim,var(--live-dim));background:radial-gradient(circle at center,rgba(132,50,50,.16),#050505 68%)}.live-video-placeholder[hidden]{display:none}.live-pulse-ring{font-size:3rem;color:#db4a4a;animation:livePulse 1.7s ease-in-out infinite}.live-overlay-top{position:absolute;z-index:4;left:12px;right:12px;top:12px;display:flex;justify-content:space-between;align-items:center;pointer-events:none}.live-stage-viewers{background:rgba(0,0,0,.65);border-radius:6px;padding:6px 9px;font:.72rem 'IBM Plex Mono',monospace}.live-watch-info{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:19px}.live-watch-copy{min-width:0}.live-owner-line{color:var(--ember-2,#d18a4e);font:.76rem 'IBM Plex Mono',monospace}.live-watch-info h2{font:500 1.8rem 'Fraunces',serif;margin:5px 0;overflow-wrap:anywhere}.live-watch-info p{color:var(--bone-dim,var(--live-dim));margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.live-watch-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:48%}.live-guest-notice,.live-muted-notice{margin:0 18px 18px;padding:12px 14px;border-radius:9px;border:1px solid rgba(209,138,78,.25);background:rgba(209,138,78,.08);display:flex;flex-wrap:wrap;gap:7px 12px;align-items:center;color:var(--live-dim)}.live-guest-notice[hidden],.live-muted-notice[hidden]{display:none}.live-guest-notice strong{color:#fff}.live-muted-notice{border-color:rgba(215,53,53,.32);background:rgba(215,53,53,.09);color:#efc1c1}
.live-chat-panel{display:flex;flex-direction:column;min-height:0}.live-chat-head{padding:17px 18px;border-bottom:1px solid var(--live-border)}.live-chat-head h3{font:500 1.35rem 'Fraunces',serif;margin:4px 0 0}.live-chat-messages{height:530px;overflow:auto;padding:10px 13px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.live-chat-empty{padding:25px 10px;text-align:center;color:var(--bone-dim,var(--live-dim));font-size:.9rem}.live-chat-message{padding:10px 8px;border-bottom:1px solid rgba(255,255,255,.06);overflow-wrap:anywhere}.live-chat-message:last-child{border-bottom:0}.live-chat-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font:.67rem 'IBM Plex Mono',monospace;color:var(--bone-dim,var(--live-dim));margin-bottom:5px}.live-chat-name{color:var(--ember-2,#d18a4e);font-weight:600}.live-chat-time{opacity:.72}.live-chat-text{line-height:1.45}.live-chat-delete{margin-left:auto;border:0;background:transparent;color:#d37373;cursor:pointer;font-size:.72rem;min-height:30px}.live-chat-badge{display:inline-flex;align-items:center;gap:3px;border-radius:999px;padding:3px 6px;border:1px solid rgba(255,255,255,.12);font-size:.62rem;line-height:1;background:rgba(255,255,255,.05);color:#eee}.live-badge-role{border-color:rgba(212,139,77,.28);background:rgba(212,139,77,.08)}.live-badge-staff{border-color:rgba(105,150,232,.28);background:rgba(105,150,232,.08)}.live-badge-paid{border-color:rgba(195,114,225,.28);background:rgba(195,114,225,.08)}.live-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:12px;border-top:1px solid var(--live-border)}.live-chat-form input,.live-studio-form input,.live-studio-form textarea,.live-studio-form select,.live-title-editor input,.live-role-editor select,.live-mute-control select{width:100%;min-width:0;border:1px solid rgba(255,255,255,.13);border-radius:8px;background:#100e0d;color:#fff;padding:11px 12px;font:inherit}.live-chat-form input:focus,.live-studio-form input:focus,.live-studio-form textarea:focus,.live-studio-form select:focus,.live-title-editor input:focus,.live-role-editor select:focus,.live-mute-control select:focus{outline:none;border-color:#a14a43;box-shadow:0 0 0 3px rgba(170,67,60,.1)}.live-chat-login{padding:14px;border-top:1px solid var(--live-border);color:var(--bone-dim,var(--live-dim));font-size:.9rem}.live-chat-login a{color:var(--ember-2,#d18a4e)}
.live-moderation-card{margin-top:18px;padding:18px}.live-title-editor{padding:14px;margin-bottom:15px;border:1px solid var(--live-border);border-radius:10px;background:var(--live-soft)}.live-title-editor label{display:grid;gap:8px;font-weight:700}.live-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.live-mod-columns{display:grid;gap:14px}.live-mod-box{border:1px solid var(--live-border);border-radius:11px;background:rgba(8,7,6,.28);overflow:hidden}.live-mod-box-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid var(--live-border)}.live-stack-list{display:grid}.live-list-empty{padding:18px;color:var(--live-dim);font-size:.9rem}.live-member-row{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(250px,1fr);gap:12px;padding:13px 14px;border-bottom:1px solid rgba(255,255,255,.06);align-items:start}.live-member-row:last-child{border-bottom:0}.live-member-main{min-width:0}.live-member-main strong{overflow-wrap:anywhere}.live-member-badges{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.live-mini-onair{border-color:rgba(226,65,65,.35);color:#ffc7c7}.live-mini-muted{border-color:rgba(220,102,102,.35);color:#efb0b0}.live-participant-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.live-mute-control{display:flex;gap:6px;align-items:center}.live-mute-control select{width:auto;padding:7px 9px;min-height:34px}.live-role-editor{grid-column:1/-1;display:grid;grid-template-columns:minmax(170px,.38fr) minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px;border:1px dashed rgba(255,255,255,.11);border-radius:9px;background:rgba(255,255,255,.025)}.live-permission-grid{display:flex;gap:7px 12px;flex-wrap:wrap}.live-perm-check{display:inline-flex;align-items:center;gap:5px;color:var(--live-dim);font-size:.78rem}.live-perm-check input{accent-color:#c63b3b}.live-request-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.live-request-row:last-child{border-bottom:0}.live-request-row>div:first-child{min-width:0}.live-request-row small{display:block;color:var(--live-dim);margin-top:3px}.live-row-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.live-studio-modal{position:fixed;inset:0;z-index:12000;display:grid;place-items:center;padding:20px calc(20px + env(safe-area-inset-right)) calc(20px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left))}.live-studio-modal[hidden]{display:none}.live-studio-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.76);backdrop-filter:blur(9px)}.live-studio-card{position:relative;z-index:1;width:min(1120px,100%);max-height:calc(100dvh - 40px);overflow:auto;-webkit-overflow-scrolling:touch;background:#151210;border:1px solid rgba(255,255,255,.15);border-radius:18px;box-shadow:0 35px 100px rgba(0,0,0,.6);padding:clamp(20px,4vw,34px)}.live-studio-close{position:absolute;right:16px;top:13px;min-width:44px;min-height:44px;border:0;background:transparent;color:#fff;font-size:2rem;cursor:pointer}.live-studio-heading{margin-bottom:24px;max-width:710px}.live-studio-heading h2{font:500 clamp(2.1rem,5vw,3.6rem) 'Fraunces',serif;margin:9px 0}.live-studio-heading p{color:var(--bone-dim,var(--live-dim))}.live-studio-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:24px}.live-preview-stage{position:relative;aspect-ratio:16/9;background:#040404;border:1px solid var(--live-border);border-radius:12px;overflow:hidden}.live-preview-stage video,.live-preview-stage canvas{width:100%;height:100%;object-fit:contain;background:#000}.live-studio-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.live-control-btn{min-height:42px;border:1px solid var(--live-border);border-radius:8px;background:#221d19;color:#fff;padding:9px 11px;cursor:pointer}.live-control-btn.danger{background:#5c2020}.live-studio-form{display:grid;gap:14px}.live-studio-form label{display:grid;gap:7px;color:var(--bone-dim,var(--live-dim));font:600 .75rem 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:.04em}.live-studio-form label small{font-weight:400;text-transform:none;letter-spacing:0}.live-studio-form textarea{min-height:92px;resize:vertical}.live-file-row{display:grid;gap:12px;padding:13px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#100e0d}.live-tech-note{padding:11px 12px;border-radius:8px;background:rgba(209,138,78,.08);border:1px solid rgba(209,138,78,.2);color:var(--bone-dim,var(--live-dim));font-size:.82rem;line-height:1.45}.live-form-actions{display:flex;flex-wrap:wrap;gap:9px}.live-status{min-height:20px;color:var(--bone-dim,var(--live-dim));font-size:.86rem}.live-status.error{color:#ef8c8c}.live-toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));z-index:13000;transform:translate(-50%,20px);opacity:0;pointer-events:none;max-width:min(92vw,620px);text-align:center;background:#191513;border:1px solid rgba(255,255,255,.16);border-radius:9px;padding:11px 15px;color:#fff;box-shadow:0 15px 40px rgba(0,0,0,.4);transition:.2s ease}.live-toast.show{opacity:1;transform:translate(-50%,0)}
@keyframes livePulse{0%,100%{transform:scale(.9);opacity:.55}50%{transform:scale(1.08);opacity:1}}

/* Tablettes / iPad */
@media(max-width:1024px){
  .live-main{padding-top:100px}.live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-watch-layout{grid-template-columns:1fr}.live-chat-messages{height:min(390px,46dvh)}.live-studio-layout{grid-template-columns:1fr}.live-hero{align-items:flex-start;flex-direction:column}.live-watch-actions{max-width:100%}.live-member-row{grid-template-columns:minmax(150px,.55fr) minmax(250px,1fr)}
}

/* Téléphones larges + iPhone paysage */
@media(max-width:760px){
  .live-main{padding-top:86px}.wrap{width:min(100% - 22px,1240px)}.live-hero{padding:34px 0 30px;gap:20px}.live-hero h1{font-size:clamp(3rem,17vw,5rem)}.live-hero-actions,.live-hero-actions .live-btn{width:100%}.live-grid{grid-template-columns:1fr}.live-section{padding:32px 0}.live-section-head{align-items:flex-start}.live-viewer-topbar{align-items:flex-start;flex-direction:column}.live-viewer-meta{justify-content:flex-start}.live-watch-info{flex-direction:column}.live-watch-actions{width:100%;justify-content:stretch}.live-watch-actions .live-btn{flex:1 1 190px}.live-chat-form{grid-template-columns:1fr}.live-chat-form .live-btn{width:100%}.live-media-grid[data-count="5"],.live-media-grid[data-count="6"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr))}.live-member-row{grid-template-columns:1fr}.live-participant-actions{justify-content:flex-start}.live-role-editor{grid-template-columns:1fr}.live-inline-form{grid-template-columns:1fr}.live-inline-form .live-btn{width:100%}.live-request-row{align-items:flex-start;flex-direction:column}.live-row-actions{width:100%;justify-content:flex-start}.live-studio-modal{padding:0}.live-studio-card{width:100%;min-height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:calc(22px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left))}.live-studio-close{top:calc(8px + env(safe-area-inset-top));right:calc(8px + env(safe-area-inset-right))}.live-form-actions .live-btn{width:100%}.live-studio-controls{display:grid;grid-template-columns:1fr 1fr}.live-studio-controls .danger{grid-column:1/-1}
}

/* iPhone / petits Android */
@media(max-width:520px){
  .wrap{width:min(100% - 16px,1240px)}.live-main{padding-top:80px}.live-hero{padding-top:28px}.live-section-head{gap:10px;flex-wrap:wrap}.live-count-pill{margin-top:3px}.live-video-panel,.live-chat-panel,.live-moderation-card{border-radius:11px}.live-video-stage{aspect-ratio:4/3}.live-media-grid[data-count="2"],.live-media-grid[data-count="3"],.live-media-grid[data-count="4"],.live-media-grid[data-count="5"],.live-media-grid[data-count="6"]{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.live-media-label{left:5px;bottom:5px;padding:4px 6px;font-size:.6rem}.live-overlay-top{left:7px;right:7px;top:7px}.live-watch-info{padding:14px}.live-watch-info h2{font-size:1.5rem}.live-watch-actions .live-btn{flex:1 1 100%;width:100%}.live-guest-notice,.live-muted-notice{margin:0 12px 12px}.live-chat-head{padding:14px}.live-chat-messages{height:min(350px,43dvh);padding:8px}.live-chat-form{padding:9px}.live-chat-badge span{display:none}.live-moderation-card{padding:12px}.live-mod-box-head{padding:11px}.live-member-row,.live-request-row{padding:11px}.live-mute-control{width:100%;display:grid;grid-template-columns:1fr auto}.live-mute-control select{width:100%}.live-participant-actions{display:grid;grid-template-columns:1fr;width:100%}.live-participant-actions>.live-btn{width:100%}.live-role-editor{padding:9px}.live-permission-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.live-perm-check{min-height:32px}.live-studio-heading h2{font-size:2.1rem}.live-preview-stage{aspect-ratio:4/3}.live-studio-controls{grid-template-columns:1fr}.live-studio-controls .danger{grid-column:auto}.live-btn{min-height:44px}
}

@media(prefers-reduced-motion:reduce){.live-card,.live-btn,.live-toast,.live-pulse-ring{transition:none;animation:none}.live-card:hover,.live-btn:hover{transform:none}}

/* Correctifs Lives v3 : suivi, co-live sans caméra, badges staff et responsive renforcé */
.live-follow-btn.is-following{background:rgba(53,142,88,.22);border-color:rgba(90,206,126,.55);color:#caffd8}
.live-request-btn.is-pending,.live-request-pending{background:rgba(222,142,38,.18)!important;border-color:rgba(236,164,70,.52)!important;color:#ffd69d!important}
.live-owner-line{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.live-owner-badges{display:inline-flex;gap:5px;flex-wrap:wrap}.live-owner-staff{border-color:rgba(105,150,232,.36);color:#c9dcff}.live-owner-paid{border-color:rgba(195,114,225,.36);color:#ebc7ff}
.live-card-site-badge,.live-card-paid-badge{display:inline-flex;margin-left:5px;padding:2px 6px;border:1px solid rgba(255,255,255,.14);border-radius:999px;font-size:.62rem;color:#dbe7ff}.live-card-paid-badge{color:#efccff}
.live-media-avatar{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 42%,#3d2d2a,#090807 72%);overflow:hidden}.live-media-avatar[hidden]{display:none!important}.live-media-avatar img{width:100%;height:100%;object-fit:cover;filter:brightness(.78) saturate(.9)}.live-media-avatar span{position:absolute;font-size:clamp(3rem,10vw,7rem);opacity:.35}
.live-media-badges{position:absolute;right:8px;bottom:8px;z-index:3;display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end;max-width:70%}.live-media-badge{padding:4px 6px;border-radius:999px;background:rgba(0,0,0,.72);border:1px solid rgba(255,255,255,.15);font:600 .58rem 'IBM Plex Mono',monospace;color:#fff}.live-media-staff{border-color:rgba(105,150,232,.5);color:#d9e6ff}.live-media-paid{border-color:rgba(195,114,225,.48);color:#f1d7ff}

/* Ces règles sont volontairement plus spécifiques que les anciens thèmes du site. */
@media(max-width:1100px){
  body.lives-page .live-main{padding-top:86px!important}
  body.lives-page .live-watch-layout{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
  body.lives-page .live-chat-panel{width:100%!important;max-width:none!important}
  body.lives-page .live-chat-messages{height:min(390px,42dvh)!important;min-height:260px}
  body.lives-page .live-studio-layout{grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-mod-columns{grid-template-columns:minmax(0,1fr)!important}
}
@media(max-width:820px){
  html,body.lives-page{max-width:100%;overflow-x:hidden!important}
  body.lives-page .wrap{width:calc(100% - 24px)!important;max-width:none!important;margin-left:12px!important;margin-right:12px!important}
  body.lives-page .live-main{width:100%!important;padding-top:76px!important;padding-left:0!important;padding-right:0!important}
  body.lives-page .live-hero{display:grid!important;grid-template-columns:minmax(0,1fr)!important;align-items:start!important;padding:30px 0 24px!important}
  body.lives-page .live-hero-actions{width:100%!important}
  body.lives-page .live-hero-actions .live-btn{width:100%!important}
  body.lives-page .live-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
  body.lives-page .live-card{width:100%!important;min-width:0!important}
  body.lives-page .live-viewer-section{padding-top:18px!important}
  body.lives-page .live-viewer-topbar{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
  body.lives-page .live-viewer-meta{justify-content:flex-start!important;max-width:100%!important}
  body.lives-page .live-video-panel,body.lives-page .live-chat-panel,body.lives-page .live-moderation-card{width:100%!important;min-width:0!important;max-width:100%!important}
  body.lives-page .live-video-stage{width:100%!important;aspect-ratio:16/10!important;min-height:0!important}
  body.lives-page .live-media-grid{min-width:0!important;min-height:0!important}
  body.lives-page .live-watch-info{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:14px!important;padding:14px!important}
  body.lives-page .live-watch-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;gap:8px!important}
  body.lives-page .live-watch-actions .live-btn{width:100%!important;min-width:0!important;white-space:normal!important;padding:10px 8px!important}
  body.lives-page .live-chat-form{grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-chat-form .live-btn{width:100%!important}
  body.lives-page .live-member-row{grid-template-columns:minmax(0,1fr)!important;min-width:0!important}
  body.lives-page .live-participant-actions{justify-content:flex-start!important;width:100%!important;min-width:0!important}
  body.lives-page .live-role-editor{grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:0!important}
  body.lives-page .live-permission-grid{width:100%!important}
  body.lives-page .live-request-row{flex-direction:column!important;align-items:stretch!important}
  body.lives-page .live-row-actions{justify-content:flex-start!important;width:100%!important}
  body.lives-page .live-inline-form{grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-studio-modal{padding:0!important;align-items:stretch!important}
  body.lives-page .live-studio-card{width:100%!important;max-width:100%!important;min-height:100dvh!important;max-height:100dvh!important;border-radius:0!important;border-left:0!important;border-right:0!important;padding:calc(18px + env(safe-area-inset-top)) calc(14px + env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) calc(14px + env(safe-area-inset-left))!important}
  body.lives-page .live-studio-form input,body.lives-page .live-studio-form textarea,body.lives-page .live-studio-form select{font-size:16px!important;max-width:100%!important}
}
@media(max-width:560px){
  body.lives-page .wrap{width:calc(100% - 16px)!important;margin-left:8px!important;margin-right:8px!important}
  body.lives-page .live-hero h1{font-size:clamp(3rem,18vw,4.8rem)!important}
  body.lives-page .live-section{padding:26px 0!important}
  body.lives-page .live-section-head{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}
  body.lives-page .live-video-stage{aspect-ratio:4/3!important}
  body.lives-page .live-media-grid[data-count="2"],body.lives-page .live-media-grid[data-count="3"],body.lives-page .live-media-grid[data-count="4"],body.lives-page .live-media-grid[data-count="5"],body.lives-page .live-media-grid[data-count="6"]{grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:auto!important}
  body.lives-page .live-media-label{left:5px!important;bottom:5px!important;max-width:58%!important;font-size:.56rem!important}
  body.lives-page .live-media-badges{right:5px!important;bottom:5px!important;max-width:42%!important;gap:3px!important}.live-media-badge{font-size:.5rem!important;padding:3px 5px!important}
  body.lives-page .live-watch-actions{grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-watch-actions .live-btn{min-height:46px!important}
  body.lives-page .live-guest-notice,body.lives-page .live-muted-notice{margin:0 10px 10px!important;display:grid!important}
  body.lives-page .live-chat-messages{height:min(340px,40dvh)!important;min-height:230px!important;padding:8px!important}
  body.lives-page .live-chat-meta{gap:4px!important}
  body.lives-page .live-chat-badge{font-size:.56rem!important;padding:3px 5px!important}
  body.lives-page .live-chat-badge span{display:inline!important}
  body.lives-page .live-moderation-card{padding:10px!important}
  body.lives-page .live-participant-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-participant-actions .live-btn{width:100%!important}
  body.lives-page .live-mute-control{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important}
  body.lives-page .live-mute-control select,body.lives-page .live-mute-control .live-btn{width:100%!important}
  body.lives-page .live-permission-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:7px!important}
  body.lives-page .live-row-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-row-actions .live-btn{width:100%!important}
  body.lives-page .live-studio-controls{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-form-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
  body.lives-page .live-form-actions .live-btn{width:100%!important}
}
@media(max-width:820px){body.lives-page .live-request-btn.is-pending{opacity:1!important}}
/* Le header global réserve déjà sa hauteur : on évite le double espace sur tablette/mobile. */
@media(max-width:1100px){body.lives-page .live-main{padding-top:28px!important}}
@media(max-width:820px){body.lives-page .live-main{padding-top:18px!important;padding-left:env(safe-area-inset-left)!important;padding-right:env(safe-area-inset-right)!important}}
@media(max-width:560px){body.lives-page .live-main{padding-top:12px!important}}
/* Le studio doit rester au-dessus de la navbar fixe, y compris sur iPhone. */
body.lives-page .live-studio-modal{z-index:120000!important}
body.lives-page .live-toast{z-index:130000!important}


/* Lives v4 — parole active, quotas et commandes caméra */
.live-speaking-indicator{position:absolute;left:9px;top:9px;z-index:5;display:none;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:rgba(29,154,88,.9);border:1px solid rgba(160,255,203,.7);color:#fff;font:700 .62rem 'IBM Plex Mono',monospace;box-shadow:0 3px 14px rgba(0,0,0,.3)}
.live-media-tile.is-speaking{outline:3px solid rgba(71,226,139,.95);outline-offset:-3px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),0 0 22px rgba(71,226,139,.24)}
.live-media-tile.is-speaking .live-speaking-indicator{display:inline-flex}
.live-mod-head-right{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}
#guestQuotaBadge{border-color:rgba(71,226,139,.34);color:#bdf7d6}
@media(max-width:560px){
 body.lives-page .live-speaking-indicator{left:5px;top:5px;font-size:.52rem;padding:4px 6px}
 body.lives-page .live-mod-head-right{width:100%;justify-content:flex-start;margin-top:6px}
 body.lives-page .live-mod-box-head{align-items:flex-start;flex-wrap:wrap}
}


/* Lives v5 — suspension de diffusion par le staff du site */
.live-broadcast-ban-notice{margin-top:14px;padding:14px 16px;border:1px solid rgba(255,91,91,.42);border-radius:16px;background:rgba(92,18,18,.34);display:flex;gap:8px;flex-direction:column}
.live-broadcast-ban-notice strong{color:#ffd0d0}.live-broadcast-ban-notice span{color:var(--live-muted,#c9c0bc);line-height:1.45}
.live-staff-ban-card{margin-top:18px;padding:18px;border:1px solid rgba(255,91,91,.34);border-radius:18px;background:linear-gradient(145deg,rgba(62,19,21,.52),rgba(19,17,17,.76));min-width:0}
.live-staff-ban-help{margin:0 0 14px;color:var(--live-muted,#c8c0bb);line-height:1.5}
.live-staff-ban-form{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(280px,1.5fr) auto;gap:12px;align-items:end}
.live-staff-ban-form label{display:grid;gap:7px;font-weight:700;min-width:0}.live-staff-ban-form input,.live-staff-ban-form select,.live-staff-ban-form textarea{width:100%;max-width:100%;box-sizing:border-box}
.live-staff-ban-form textarea{min-height:78px;resize:vertical}.live-duration-fields{display:grid;grid-template-columns:90px minmax(140px,1fr);gap:8px}
#openStudioBtn:disabled{opacity:.62;cursor:not-allowed;filter:saturate(.55)}
@media(max-width:900px){body.lives-page .live-staff-ban-form{grid-template-columns:1fr 1fr}body.lives-page .live-staff-ban-form .live-btn{grid-column:1/-1;width:100%}}
@media(max-width:620px){body.lives-page .live-staff-ban-card{padding:14px;margin-inline:0}body.lives-page .live-staff-ban-form{grid-template-columns:1fr}body.lives-page .live-staff-ban-form .live-btn{grid-column:auto}body.lives-page .live-duration-fields{grid-template-columns:minmax(74px,.7fr) minmax(0,1.3fr)}body.lives-page .live-broadcast-ban-notice{margin-inline:0}}

/* Correctifs v7 — contrôles du diffuseur directement sur le live */
body.lives-page .live-broadcaster-controls{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
body.lives-page .live-broadcaster-controls[hidden]{display:none!important}
body.lives-page .live-muted-notice[hidden],
body.lives-page .live-broadcast-ban-notice[hidden]{display:none!important}
@media(max-width:820px){
  body.lives-page .live-broadcaster-controls{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  body.lives-page .live-broadcaster-controls .live-btn{width:100%!important}
  body.lives-page .live-broadcaster-controls[hidden]{display:none!important}
}

/* Annonce automatique lors de l'arrivée d'un MVP ou d'un Enquêteur. */
.live-chat-system-join{margin:8px 2px;padding:11px 12px!important;border:1px solid rgba(255,190,104,.28)!important;border-radius:12px;background:linear-gradient(135deg,rgba(131,77,26,.18),rgba(49,69,111,.16));box-shadow:inset 0 0 0 1px rgba(255,255,255,.025)}
.live-chat-system-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:5px;font:800 .62rem 'IBM Plex Mono',monospace;letter-spacing:.08em;color:#ffd29e}
.live-chat-system-head .live-chat-time{margin-left:auto;color:var(--bone-dim,var(--live-dim));font-weight:400;letter-spacing:0}
.live-chat-system-text{font-weight:700;line-height:1.45;color:#f6f8ff}
@media(max-width:600px){.live-chat-system-join{padding:10px!important}.live-chat-system-head{font-size:.58rem}.live-chat-system-text{font-size:.88rem}}

/* Co-live : grille complète jusqu'au quota MVP (diffuseur + 9 invités). */
.live-media-grid[data-count="7"],
.live-media-grid[data-count="8"]{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
}
.live-media-grid[data-count="9"],
.live-media-grid[data-count="10"]{
  grid-template-columns:repeat(4,minmax(0,1fr));
  grid-template-rows:repeat(3,minmax(0,1fr));
}
@media(max-width:760px){
  body.lives-page .live-media-grid[data-count="7"],
  body.lives-page .live-media-grid[data-count="8"],
  body.lives-page .live-media-grid[data-count="9"],
  body.lives-page .live-media-grid[data-count="10"]{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-template-rows:auto!important;
  }
}

/* Modération directement depuis les messages du livechat. */
.live-chat-manage{border:1px solid rgba(111,224,245,.22);background:rgba(88,196,219,.08);color:#bff5ff;border-radius:999px;padding:4px 7px;font:700 .62rem 'IBM Plex Mono',monospace;cursor:pointer;min-height:28px}
.live-chat-manage:hover{background:rgba(88,196,219,.15)}
.live-chat-moderation{margin-top:10px;padding:12px;border-radius:12px;border:1px solid rgba(255,255,255,.11);background:rgba(7,12,19,.96);box-shadow:0 12px 32px rgba(0,0,0,.28)}
.live-chat-moderation-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}.live-chat-moderation-head strong{font-size:.82rem}.live-chat-manage-close{border:0;background:transparent;color:#cbd4e4;font-size:1.2rem;cursor:pointer}
.live-chat-moderation .live-participant-actions{display:flex;flex-wrap:wrap;gap:7px}.live-chat-moderation .live-role-editor{margin-top:10px}.live-request-row.is-resolving{opacity:.45;pointer-events:none}
@media(max-width:600px){.live-chat-moderation .live-participant-actions{display:grid;grid-template-columns:1fr}.live-chat-moderation .live-btn,.live-chat-moderation .live-mute-control{width:100%}}
