:root{--red:#ed2530;--black:#121211;--ink:#161514;--paper:#f2ecdc;--soft:#d9d2c2;--dark:#21201e}*{box-sizing:border-box}html,body{margin:0;background:#171716;color:var(--paper);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.48;cursor:wait}.masthead{display:flex;justify-content:space-between;align-items:center;padding:13px 27px 11px 23px;background:#111;color:var(--paper);border-bottom:4px solid var(--red)}.identity{display:flex;align-items:center;gap:15px}.identity img{width:66px;height:66px;object-fit:contain}.identity-line{font:37px/1 Impact,'Arial Narrow',sans-serif;letter-spacing:1px;white-space:nowrap}.identity-line b{color:var(--red);font-weight:400}.tv{display:inline-block;font-size:21px;transform:rotate(-8deg)}.identity p{font-size:10px;font-weight:900;letter-spacing:2px;margin:7px 0 0}.sep{color:var(--red);margin:0 5px}.server-state{display:flex;align-items:center;gap:11px;letter-spacing:1px;font-size:11px;font-weight:900}.status-dot{width:10px;height:10px;background:#f9b03b;border-radius:50%}.status-dot.ok{background:#92ca76;box-shadow:0 0 12px #92ca7655}.pipe{width:1px;height:16px;background:#68625a;margin:0 8px}.topline{background:var(--red);color:#171313;display:flex;align-items:center;justify-content:space-between;padding:8px 28px 7px;font:900 12px/1.2 Arial,sans-serif;letter-spacing:1.25px}.topline span{font-weight:700;font-size:10px;letter-spacing:1.8px}.app-shell{display:grid;grid-template-columns:220px minmax(360px,510px) minmax(450px,1fr);max-width:1900px;margin:auto;min-height:calc(100vh - 131px)}.sidebar{border-right:1px solid #46423b;display:flex;flex-direction:column;background:#1d1b19;padding:30px 13px 24px 19px}.menu-heading{font-size:10px;letter-spacing:1.5px;font-weight:900;color:#b6ab9a;display:flex;justify-content:space-between;margin:0 4px 19px}.menu-heading span{color:var(--red)}.menu{display:flex;flex-direction:column;gap:8px}.nav-button{display:flex;align-items:center;gap:11px;background:transparent;border:1px solid transparent;text-align:left;color:#bab2a4;min-height:64px;width:100%;font-size:12px;font-weight:900;letter-spacing:.35px;padding:12px 10px;transition:background 180ms,color 180ms}.nav-button:hover{background:#302d2a}.nav-button.active{background:var(--paper);color:#1c1917;border-left:5px solid var(--red);padding-left:6px}.nav-index{font:21px Impact,sans-serif;color:var(--red)}.chev{margin-left:auto;font-size:19px}.side-lower{margin-top:auto;padding:40px 8px 7px;display:flex;flex-direction:column;gap:11px}.side-star{color:var(--red);font-size:40px;line-height:1}.side-lower strong{font:39px/1 Impact,'Arial Narrow',sans-serif;color:var(--paper);letter-spacing:1px}.side-lower small{font-size:10px;letter-spacing:1.1px;font-weight:900;color:#938b81}
.editor{background:#25231f;padding:35px 32px 70px;min-width:0;border-right:1px solid #48433d}.tab-panel{display:none}.tab-panel.active{display:block}.panel-kicker{font-size:11px;font-weight:900;letter-spacing:2px;color:var(--red)}h1{font:56px/1.02 Impact,'Arial Narrow',sans-serif;letter-spacing:.1px;margin:15px 0 15px}h1 em{font-style:normal;color:var(--red)}.panel-intro{font:14px/1.6 Arial,sans-serif;color:#c3bdaf;margin:0 0 24px}.live-card{background:#111;border:1px solid #595148;padding:20px;margin:25px 0 30px;box-shadow:6px 6px 0 #151513}.live-header{display:flex;justify-content:space-between;font-size:10px;font-weight:900;letter-spacing:1px;align-items:center;border-bottom:1px solid #474039;padding-bottom:15px}.live-header strong{color:var(--red);font-size:11px}.live-readouts{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:24px 0}.live-readouts div{display:flex;flex-direction:column;gap:9px}.live-readouts span{color:#a79d90;font-size:10px;font-weight:900;letter-spacing:.7px}.live-readouts strong{font:32px Impact,sans-serif;color:#f8efdc}.controls{display:flex;gap:10px;flex-wrap:wrap}.btn{border:none;min-height:46px;padding:12px 18px;font-weight:900;font-size:12px;letter-spacing:.9px;transition:transform 150ms}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-red{background:var(--red);color:#151515}.btn-dark{background:#45413a;color:var(--paper);border:1px solid #6e655b}.micro{font-size:11px;line-height:1.55;color:#999085;margin:17px 0 0}.section-caption{font-weight:900;font-size:12px;letter-spacing:1.5px;color:#ede3ce;border-bottom:2px solid var(--red);padding-bottom:9px;margin:26px 0 16px}.section-caption.space{margin-top:31px}.url-block{margin:17px 0}.url-block label{font-size:11px;letter-spacing:.6px;color:#b8ad9f}.copy-row{display:flex;align-items:stretch;background:#151514;border:1px solid #514a42;margin-top:8px;min-width:0}.copy-row code{padding:15px 12px;color:#e2d7c8;font-size:12px;overflow-wrap:anywhere;word-break:break-all;min-width:0;flex:1}.copy-button{background:#423d35;color:#f1e5d7;border:0;border-left:1px solid #645a4c;padding:11px;font-size:10px;font-weight:900;letter-spacing:.8px}.copy-button:hover{background:var(--red);color:#191919}.note{padding:15px 16px;border-left:4px solid var(--red);background:#33302b;font-size:12px;line-height:1.65;color:#d9d0c2;margin-top:25px}
.settings-form{display:flex;flex-direction:column;gap:16px}.field{display:flex;flex-direction:column;gap:9px;min-width:0}.field label{font-size:11px;letter-spacing:.65px;font-weight:900;color:#e0d7c7}.field input:not([type=color]),.field textarea,.field select{width:100%;background:#151515;border:1px solid #71675b;color:#f6eddd;padding:13px 13px;border-radius:0;outline:none;font-size:13px;line-height:1.45}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--red);box-shadow:0 0 0 1px var(--red)}.field input[type=color]{height:44px;min-width:90px;width:100%;background:#151515;border:1px solid #71675b;padding:4px;cursor:pointer}.field textarea{resize:vertical;min-height:75px}.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:13px}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 1px;border-bottom:1px solid #4f4941}.switch-row div{display:flex;flex-direction:column;gap:5px}.switch-row strong{font-size:12px}.switch-row small{font-size:11px;color:#aea394;line-height:1.35}.switch-row input{appearance:none;background:#524e48;border-radius:50px;width:45px;height:26px;position:relative;flex-shrink:0;cursor:pointer}.switch-row input:after{content:"";position:absolute;top:4px;left:4px;background:#e8dfd1;border-radius:50%;width:18px;height:18px;transition:left 150ms}.switch-row input:checked{background:var(--red)}.switch-row input:checked:after{left:23px}.save{margin-top:12px;align-self:stretch}.warning{background:#332b25;border:1px solid #946f3b;padding:17px;margin:20px 0 23px}.warning b{color:#f4be64;font-size:12px;letter-spacing:1px}.warning p{margin:9px 0 0;color:#d5c7b0;font-size:12px;line-height:1.6}.step{display:flex;gap:18px;border-bottom:1px solid #50473e;padding:13px 0}.step span{color:var(--red);font:24px Impact,sans-serif}.step p{font-size:12px;line-height:1.55;margin:2px 0;color:#e1d7c6}
.preview-area{min-width:0;background:#171716;padding:35px 33px 45px}.preview-head{display:flex;justify-content:space-between;align-items:flex-end;gap:10px}.preview-kicker{color:var(--red);font-size:11px;letter-spacing:2px;font-weight:900}.preview-head h2{font:29px Impact,'Arial Narrow',sans-serif;margin:8px 0 0;letter-spacing:.3px}.preview-tag{font:900 10px Arial,sans-serif;color:#c4b6a1;letter-spacing:1px;border:1px solid #62564a;padding:8px 10px}.monitor{position:relative;width:100%;aspect-ratio:16/9;margin-top:23px;overflow:hidden;background:#101317;border:1px solid #5d5347;box-shadow:0 14px 30px #0005}.monitor-backdrop{position:absolute;inset:0;background:radial-gradient(ellipse at 70% 25%,#3f4140 0%,transparent 50%),linear-gradient(130deg,#1e2329,#181515 67%)}.video-grain{position:absolute;inset:0;opacity:.13;background:repeating-linear-gradient(5deg,transparent 0 9px,#ddd 10px 10.5px,transparent 11px 22px)}.fake-top{position:absolute;left:4%;top:4%;font-size:10px;font-weight:900;color:#aaa;letter-spacing:1px}.fake-centre{position:absolute;left:0;right:0;top:36%;text-align:center;color:#6c7274;display:flex;gap:8px;flex-direction:column}.fake-centre strong{font:31px Impact,sans-serif;letter-spacing:2px}.fake-centre span{font-size:11px}.monitor iframe{display:block;position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none;background:transparent}.preview-foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:10px;font-weight:900;letter-spacing:.6px;color:#b7ab9b;margin-top:14px}.preview-red{display:inline-block;width:9px;height:9px;background:var(--red);border-radius:50%;margin-right:8px}.link-button{padding:0;background:none;border:none;color:var(--paper);font-size:11px;font-weight:900}.link-button:hover{color:var(--red)}.help-card{display:flex;gap:18px;border-top:1px solid #4b443c;padding:22px 0 0;margin-top:24px}.help-icon{font-size:30px;color:var(--red);line-height:1}.help-card strong{font-size:11px;letter-spacing:1.1px}.help-card p{font-size:12px;line-height:1.6;color:#c1b5a7;margin:9px 0}.help-card code{color:#f1e6d3}.toast{position:fixed;bottom:22px;right:28px;z-index:99;max-width:380px;padding:15px 20px;border-left:4px solid var(--red);background:#f4ecde;color:#1b1714;font-size:13px;font-weight:900;box-shadow:0 12px 35px #0008;opacity:0;pointer-events:none;transform:translateY(15px);transition:opacity 150ms,transform 150ms}.toast.active{opacity:1;transform:translateY(0)}
@media(max-width:1360px){.app-shell{grid-template-columns:180px minmax(320px,470px) minmax(340px,1fr)}.sidebar{padding-left:8px}.editor{padding:30px 22px}.preview-area{padding:30px 22px}.nav-button{font-size:10px}.nav-index{font-size:17px}h1{font-size:48px}.side-lower strong{font-size:33px}}
@media(max-width:1050px){.app-shell{grid-template-columns:180px 1fr}.preview-area{grid-column:2;grid-row:1;padding-top:24px}.editor{grid-column:2;grid-row:2}.sidebar{grid-column:1;grid-row:1 / span 2}.masthead{padding-right:15px}}
@media(max-width:690px){.masthead{flex-wrap:wrap;gap:10px}.identity-line{font-size:27px}.identity img{width:48px;height:48px}.server-state{font-size:9px}.topline{padding:10px 13px}.topline span{display:none}.app-shell{display:flex;flex-direction:column}.sidebar{border-right:0;padding:13px}.menu-heading,.side-lower{display:none}.menu{display:grid;grid-template-columns:1fr 1fr;gap:6px}.nav-button{min-height:48px;padding:7px;font-size:10px;gap:6px}.nav-index{font-size:14px}.nav-button.active{padding-left:6px}.preview-area{order:1;padding:20px 14px}.editor{order:2;padding:23px 15px 45px}h1{font-size:45px}.preview-head h2{font-size:24px}.two-cols{grid-template-columns:1fr}.monitor{margin-top:12px}}

/* ===== V3 · REGIE PLUS LEGERE : gris chauds, creme, accent rouge unique ===== */
:root{--red:#dc2431;--paper:#f7f6f3;--ink:#282827;--soft:#dededb}
html,body{background:#f3f3f1;color:#2c2a29}
.masthead{background:#fff;color:#262624;border-bottom:2px solid #dededb;padding:12px 23px}
.identity img{width:56px;height:56px}.identity-line{font-size:30px}.identity-line b{color:#d62631}.identity p{font-size:11px;letter-spacing:.3px;color:#888;margin-top:5px;font-weight:600}
.server-state{font-size:10px;color:#666;letter-spacing:.3px}
.pipe{background:#dededb}.topline{background:#f4eeed;border-bottom:1px solid #e9d9d8;color:#94313b;padding:8px 24px;font-size:11px;letter-spacing:.1px}
.topline span{letter-spacing:.3px;font-weight:500}
.app-shell{grid-template-columns:198px minmax(395px,650px) minmax(365px,1fr);max-width:2000px;min-height:calc(100vh - 107px)}
.sidebar{background:#fafaf9;border-right:1px solid #e5e5e1;padding:23px 12px 20px}
.menu-heading{color:#898883;font-weight:700;letter-spacing:.7px;margin-bottom:14px}
.menu-heading span{color:#b2aca5}
.menu{gap:3px}.nav-button{min-height:46px;color:#545250;font-size:11px;font-weight:700;letter-spacing:0;padding:10px;border-radius:6px}
.nav-button:hover{background:#f1efeb}.nav-button.active{background:#f7e8e8;color:#83212b;border-left:3px solid var(--red);padding-left:8px;border-color:#f5d8da}
.nav-index{font:700 11px Arial,sans-serif;color:#a2a09b}.nav-button.active .nav-index{color:var(--red)}.chev{font-size:14px;opacity:.6}
.editor{background:#fff;border-right:1px solid #e9e9e6;padding:33px 29px 70px}
.panel-kicker{font-size:10px;letter-spacing:.8px;color:#bd2632}
h1{font:700 33px/1.13 Arial,Helvetica,sans-serif;letter-spacing:-1.5px;margin:11px 0 13px}
h1 em{color:#d12630}.panel-intro{font:13px/1.6 Arial,sans-serif;color:#6e6c67;margin-bottom:22px}
.live-card{background:#faf9f7;border:1px solid #e1dfd9;box-shadow:none;border-radius:8px;margin:20px 0 26px;padding:17px}
.live-header{font-size:10px;color:#85817b;border-color:#e3e1de;padding-bottom:12px}.live-header strong{font-size:11px;color:#b42c35}
.live-readouts{padding:18px 0}.live-readouts span{color:#898782;font-size:10px}
.live-readouts strong{font:700 25px Arial,sans-serif;color:#242321;letter-spacing:-.8px}
.btn{border-radius:5px;font-size:11px;letter-spacing:.1px;min-height:42px;padding:10px 14px;font-weight:700}
.btn-red{background:#d52a35;color:#fff}.btn-dark{background:#f7f7f5;color:#353431;border:1px solid #d8d8d4}
.btn-dark:hover{background:#ecebe8}.micro{color:#898681;font-size:11px}
.section-caption{font-size:11px;letter-spacing:.3px;color:#3d3b38;border-bottom:1px solid #e8e5e1;padding-bottom:10px}
.url-block label,.field label{color:#5b5754;font-size:11px;font-weight:700;letter-spacing:0}
.copy-row{background:#fbfbfa;border:1px solid #e1ded9;border-radius:5px;overflow:hidden}
.copy-row code{color:#42403d}.copy-button{background:#f0efec;color:#514d48;border-color:#ddd9d4}
.note{background:#f8f5f2;color:#625d56;font-size:12px;border-left:3px solid #db2934;border-radius:0 5px 5px 0}
.field input:not([type=color]),.field textarea,.field select,.controls>input,.controls>select{background:#fff;border:1px solid #d6d4ce;color:#272623;border-radius:5px;font-size:13px;padding:12px}
.field input[type=color]{background:#fff;border:1px solid #dedbd4;border-radius:5px}
.switch-row{border-color:#ebeae6;color:#383734}.switch-row small{color:#817e79}.switch-row input{background:#c7c5bf}
.warning{background:#fff7ed;border:1px solid #f1ddb9;border-radius:6px}.warning b{color:#8b5d21}.warning p{color:#695337}
.step{border-color:#eeeae7}.step p{color:#5c5651}
.preview-area{background:#f3f3f1;padding:33px 23px}.preview-kicker{font-size:10px;letter-spacing:.5px}
.preview-head h2{font:700 17px Arial,sans-serif;letter-spacing:0}.preview-tag{color:#76716c;border-color:#d8d5cf;border-radius:4px}
.monitor{box-shadow:0 6px 20px #0001;border:1px solid #ddd8d1;border-radius:7px}
.preview-foot{color:#6b6661}.link-button{color:#992831}.help-card{border-color:#e2dfd9;margin-top:18px;padding-top:18px}
.help-card strong{color:#38332f}.help-card p{color:#706b65}.help-card code{color:#b52c37}
.toast{border-radius:4px;border-color:#d12a36;background:#fff;box-shadow:0 6px 24px #0002}
.logout-form button{color:#665f59}
/* V3 : mediatheque, playlists */
.simple-list{display:flex;flex-direction:column;gap:8px;font-size:12px;color:#87817c;margin:12px 0}
.media-row{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e9e7e2;background:#fbfaf9;border-radius:6px;padding:11px 12px}
.media-row-main{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}
.media-row-main strong{font-size:12px;font-weight:700;color:#332f2c;overflow-wrap:anywhere}
.media-row-main small{font-size:11px;color:#78746e;overflow-wrap:anywhere;line-height:1.4}
.media-actions{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end}
.mini-action{border:1px solid #dcd9d4;background:white;color:#524e4a;border-radius:4px;padding:7px 9px;font-size:11px;white-space:nowrap;cursor:pointer}
.mini-action:hover{border-color:#cd424c;color:#9e1e29}.warn-action{color:#b23b41}
.count-bubble{background:#fbe2e3;border-radius:12px;padding:3px 8px;color:#a6222d;margin-left:8px;font-size:10px}
#playlistCreateForm{align-items:stretch;margin:12px 0;gap:8px}
#playlistCreateForm input{flex:1;min-width:130px}
#playlistMediaSelect{flex:1;min-width:100px}
.field.space,.controls.space{margin-top:18px}
.compact-live .media-now{display:flex;flex-direction:column;gap:7px;padding-top:17px}
.media-now strong{font-size:14px;color:#282723}.media-now small{font-size:11px;color:#77736e}
[hidden]{display:none!important}
@media(max-width:1350px){.app-shell{grid-template-columns:180px minmax(380px,560px) minmax(300px,1fr)}.editor{padding:26px 21px}.preview-area{padding:25px 19px}}
@media(max-width:1050px){.app-shell{grid-template-columns:200px 1fr}.preview-area{grid-column:2;grid-row:1}.editor{grid-column:2;grid-row:2}.sidebar{grid-row:1/span 2}}
@media(max-width:690px){.app-shell{display:flex;flex-direction:column}.masthead{gap:9px;padding:10px 14px}.identity-line{font-size:24px}.identity img{width:44px;height:44px}.sidebar{padding:10px 12px}.menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.nav-button{min-height:40px;font-size:10px}.nav-index{font-size:10px}.preview-area{order:1;padding:18px 13px}.editor{order:2;padding:22px 15px 45px}.two-cols{grid-template-columns:1fr}h1{font-size:31px}.media-row{align-items:flex-start;flex-direction:column}.media-actions{justify-content:flex-start}}

/* V4 — File d'attente et import multiple, cohérents avec la régie allégée. */
.v4-card{margin:20px 0;padding:16px;border:1px solid #e3e3df;border-radius:8px;background:#fafaf8}
.v4-card p{font-size:12px;color:#66615c;line-height:1.6;margin:10px 0 15px}
.v4-card code{color:#a52834;overflow-wrap:anywhere}
.v4-subtitle{font-size:11px;font-weight:800;color:#403936;letter-spacing:.35px;margin-bottom:9px}
.v4-muted{font-size:11px;color:#7a7772;line-height:1.5}
.v4-queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0 18px}
.v4-queue-cell{background:white;border:1px solid #e9e8e4;border-radius:6px;padding:13px;display:flex;flex-direction:column;gap:8px;min-width:0}
.v4-queue-cell:first-child{border-left:3px solid #d62835}
.v4-queue-cell span{font-size:10px;font-weight:800;color:#a52b35;letter-spacing:.45px}
.v4-queue-cell strong{font-size:14px;color:#292724;overflow-wrap:anywhere;line-height:1.4}
.v4-queue-cell small{font-size:10px;color:#77716d}
.v4-later{display:flex;flex-direction:column;gap:5px;max-height:260px;overflow:auto}
.v4-later-item{display:flex;align-items:center;gap:10px;border-bottom:1px solid #ebe9e6;padding:9px 2px;color:#48423e;font-size:12px}
.v4-later-item small{color:#9c918c;flex:0 0 25px}
.v4-later-item span{flex:1;min-width:0;overflow-wrap:anywhere}
.v4-bulk .controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
#bulkSearch{background:white;border:1px solid #d6d4ce;border-radius:5px;flex:1 1 185px;min-width:110px;padding:11px;color:#333}
.v4-bulk-list{border:1px solid #e3e1da;background:white;border-radius:6px;margin-top:10px;max-height:280px;overflow:auto}
.v4-bulk-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid #efefed;cursor:pointer;color:#3a3735;font-size:12px}
.v4-bulk-row:hover{background:#faf4f3}.v4-bulk-row input{accent-color:#d62835;flex:0 0 17px}
.v4-bulk-row span{overflow-wrap:anywhere;line-height:1.35}
.v4-bulk-row small{color:#908a84;display:block;margin-top:2px;font-size:10px}
.v4-bulk .btn{min-height:38px}
.v4-scan-card .controls{align-items:center;flex-wrap:wrap}
@media(max-width:690px){.v4-queue-grid{grid-template-columns:1fr}.v4-card{padding:12px}.v4-bulk .controls .btn{flex:1}}
/* Film Rebellion TV V5 — compositions en blocs */
.v5-nesting{margin:20px 0;background:#fbfaf7;border:1px solid #dedbd5;padding:20px;border-radius:8px}
.v5-nesting p{margin:8px 0 12px;line-height:1.5}
.v5-playlist-row{border-left:4px solid #b7232f;background:#fff8ef}
.v5-playlist-row .media-row-main strong{color:#a71928}
.v5-expanded-list{max-height:420px;overflow-y:auto;border:1px solid #e5e1dc;border-radius:7px;background:#fff}
.v5-expanded-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid #efebe5;font-size:13px}
.v5-expanded-row:last-child{border-bottom:none}
.v5-expanded-row.now{border-left:4px solid #b7232f;background:#fff6f2}
.v5-expanded-main{flex:1;min-width:0}
.v5-expanded-main strong{display:block;color:#241f1e;font-size:13px}
.v5-expanded-main small{display:block;color:#77726a;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v5-expanded-row .mini-action{flex-shrink:0}
#bulkSort{max-width:260px}
@media (max-width:760px){#bulkSort{max-width:100%;width:100%}.v5-expanded-row{flex-wrap:wrap}.v5-nesting{padding:14px}}

/* V6 — regroupement de chaque racine mediaFolders, puis des sous-dossiers. */
.fr-tv-folder{border:1px solid #e8e5e0;background:#fff;margin:5px 0;border-radius:5px;min-width:0;color:#312e2c}
.fr-tv-folder summary{list-style:revert;cursor:pointer;padding:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f7f5f2;color:#302c2a}
.fr-tv-folder summary::before{content:'▸';font-size:13px;color:#a8353b;transition:transform .2s}
.fr-tv-folder[open]>summary::before{transform:rotate(90deg)}
.fr-tv-folder summary strong{font-size:12px;overflow-wrap:anywhere;flex:1;font-weight:750}
.fr-tv-folder summary small{color:#938c85;font-size:10px}
.fr-tv-folder-inner{padding:4px 7px 8px 13px;border-left:3px solid #e6d8d5;margin-left:12px}
.fr-tv-folder-inner .media-row{padding:8px 9px;margin:4px 0}
.fr-tv-folder-inner .fr-tv-folder{margin:7px 0}
.fr-tv-select-folder{background:#fff;white-space:nowrap}
@media(max-width:690px){.fr-tv-folder summary{padding:9px 6px}.fr-tv-folder-inner{padding:3px 4px 6px 7px;margin-left:5px}}

/* V7 · publicités, outils de masse et informations Twitch */
.v7-bulk-meta .controls,.tab-panel#tab-publicites .controls{flex-wrap:wrap;align-items:center}
.v7-bulk-meta .controls select,.tab-panel#tab-publicites .controls select{flex:1;min-width:180px;max-width:100%}
#v7AdItems{margin-top:15px}
#v7AdItems .media-row{gap:10px}
#v7AdItems .media-actions .btn{padding:8px 11px;min-width:35px}
#v7BreakStatus{padding-top:10px}

/* V8 — chemins surveillés, interface compacte et responsive */
.v8-folder-form input{min-width:220px;flex:2}.v8-folder-list{display:grid;gap:8px;margin:14px 0}
.v8-root-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#faf9f5;border:1px solid #d9d5ce;border-radius:7px}
.v8-root-item span{overflow-wrap:anywhere;font-size:13px}.v8-root-actions{display:flex;gap:6px;flex-shrink:0}
@media(max-width:650px){.v8-root-item{display:block}.v8-root-actions{margin-top:10px}.v8-folder-form input{min-width:100%;width:100%}}
/* V9 — Programmation antenne */
.theme-toggle{border:1px solid #dedbd8;background:#f6f5f3;color:#4a4141;border-radius:6px;min-height:34px;font-size:10px;font-weight:700;padding:7px 11px;white-space:nowrap}
.theme-toggle:hover{border-color:#d52a35}
.v9-schedule-list{display:grid;gap:9px}
.v9-event-row{display:flex;align-items:center;gap:10px;border:1px solid #e3dfdb;background:#fff;border-radius:7px;padding:12px;flex-wrap:wrap}
.v9-event-text{flex:1;min-width:165px}.v9-event-text strong{display:block;font-size:13px;color:#302a29}
.v9-event-text small{display:block;font-size:11px;color:#88817a;line-height:1.6;margin-top:4px}
#v9EndNow{margin-top:15px}#v9Active{font-weight:700}#tab-antenne .field select,#tab-antenne .field input{min-width:0}
/* V9 — contraste vérifié sur les deux thèmes ; l'overlay OBS n'est pas affecté. */
html[data-theme="dark"],html[data-theme="dark"] body{background:#14171b;color:#e9e7e4}
html[data-theme="dark"] .masthead{background:#1b1e23;color:#f3efe9;border-color:#383a40}
html[data-theme="dark"] .identity p,html[data-theme="dark"] .server-state{color:#abb0b6}
html[data-theme="dark"] .topline{background:#30252a;border-color:#473137;color:#f2a7a9}
html[data-theme="dark"] .sidebar{background:#1d2025;border-color:#333840}
html[data-theme="dark"] .menu-heading{color:#a7abb1}
html[data-theme="dark"] .nav-button{color:#d1d0d3}
html[data-theme="dark"] .nav-button:hover{background:#30353e}
html[data-theme="dark"] .nav-button.active{background:#48292d;color:#f9e9e9;border-color:#9d3942}
html[data-theme="dark"] .editor{background:#23262c;border-color:#353944}
html[data-theme="dark"] .panel-intro,html[data-theme="dark"] .micro{color:#b5b4bb}
html[data-theme="dark"] .section-caption,html[data-theme="dark"] .field label{color:#e5e4e3;border-color:#46464a}
html[data-theme="dark"] .live-card,html[data-theme="dark"] .v4-card,html[data-theme="dark"] .v5-nesting{background:#292e35;color:#e6e5e7;border-color:#414650}
html[data-theme="dark"] .v4-card p,html[data-theme="dark"] .v4-muted,html[data-theme="dark"] .v5-nesting p{color:#c0bdc0}
html[data-theme="dark"] .live-header{color:#c4c1c1;border-color:#48484f}
html[data-theme="dark"] .live-readouts strong{color:#fcf4e9}
html[data-theme="dark"] .btn-dark,html[data-theme="dark"] .mini-action{background:#343943;color:#e9e7e5;border:1px solid #555b67}
html[data-theme="dark"] .field input:not([type=color]),html[data-theme="dark"] .field select,html[data-theme="dark"] .field textarea,html[data-theme="dark"] .controls>input,html[data-theme="dark"] .controls>select{background:#191d22;color:#f1efe9;border-color:#62646b}
html[data-theme="dark"] .note,html[data-theme="dark"] .warning{background:#32313a;color:#e0d9d3;border-color:#554750}
html[data-theme="dark"] .warning p{color:#d2c3b0}
html[data-theme="dark"] .preview-area{background:#1b1e22;color:#eeeae4}
html[data-theme="dark"] .preview-head h2,html[data-theme="dark"] .help-card strong{color:#f3eee8}
html[data-theme="dark"] .help-card p,html[data-theme="dark"] .preview-foot{color:#c2bfc0}
html[data-theme="dark"] .v9-event-row,html[data-theme="dark"] .fr-tv-folder,html[data-theme="dark"] .fr-tv-folder summary,html[data-theme="dark"] .v5-expanded-list,html[data-theme="dark"] .v8-root-item{background:#252932;color:#eae7e1;border-color:#4d515c}
html[data-theme="dark"] .fr-tv-folder summary{background:#333843}
html[data-theme="dark"] .v9-event-text strong,html[data-theme="dark"] .v5-expanded-main strong{color:#f8f1e8}
html[data-theme="dark"] .v9-event-text small,html[data-theme="dark"] .v5-expanded-main small{color:#b5b4bb}
html[data-theme="dark"] .v5-expanded-row{border-color:#494952}
html[data-theme="dark"] .v5-expanded-row.now{background:#402d30}
html[data-theme="dark"] .copy-row{background:#272c34;border-color:#4f545b}
html[data-theme="dark"] .copy-row code{color:#f2efeb}
html[data-theme="dark"] .theme-toggle{background:#323840;color:#f2ede8;border-color:#61616b}
html[data-theme="dark"] #frTwitchDiagnosticResult{background:#272d34!important;color:#e8e4e0!important}
@media(max-width:690px){.theme-toggle{font-size:9px;padding:6px}.v9-event-row{align-items:flex-start}}
.v9-calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:10px 0 16px}
.v9-calendar-controls strong{font-size:13px}
.v9-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}
.v9-calendar-heading{text-align:center;color:#77716f;font-size:10px;font-weight:700;padding:7px 0}
.v9-calendar-day{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-height:64px;padding:6px;background:#fff;border:1px solid #e0dfdc;border-radius:5px;min-width:0;text-align:left;color:#514c4a}
.v9-calendar-day strong{font-size:12px}.v9-calendar-day small{display:block;max-width:100%;font-size:9px;line-height:1.25;color:#9e3642;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.v9-calendar-day.has-event{background:#fff1f1;border-color:#e5b0b5}
.v9-calendar-day:hover{border-color:#cb2935}.v9-calendar-blank{min-height:48px}
html[data-theme="dark"] .v9-calendar-day{background:#20242a;color:#eae7e3;border-color:#50535b}
html[data-theme="dark"] .v9-calendar-day.has-event{background:#473035;border-color:#a35b62}
html[data-theme="dark"] .v9-calendar-day small{color:#f7c2c6}
html[data-theme="dark"] .v9-calendar-heading{color:#c1bdc0}
@media(max-width:600px){.v9-calendar{gap:2px}.v9-calendar-day{min-height:52px;padding:4px}.v9-calendar-day small{font-size:8px}}

/* V9 ajustements lisibilité : labels et liens en mode sombre et clair */
html[data-theme="dark"] .v4-subtitle,html[data-theme="dark"] .v9-calendar-controls strong,html[data-theme="dark"] .switch-row strong,html[data-theme="dark"] .section-caption,html[data-theme="dark"] .media-row-main strong{color:#f1ebe3!important}
html[data-theme="dark"] .switch-row small,html[data-theme="dark"] .v4-card .micro,html[data-theme="dark"] .section-caption+small{color:#b8b5b4!important}
html[data-theme="dark"] .nav-button{color:#ddd9d5!important}
html[data-theme="dark"] .nav-button.active{color:#fff3f0!important}
html:not([data-theme="dark"]) .nav-button{color:#4f4b48!important}
html:not([data-theme="dark"]) .nav-button.active{background:#8c2c34!important;color:#fff!important}
html:not([data-theme="dark"]) .nav-button.active .nav-index{color:#fff!important}
html:not([data-theme="dark"]) .v4-subtitle{color:#433f3d!important}
