: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}}
