.direct-studio{max-width:980px;margin:auto;padding:32px 24px}.direct-studio fieldset{border:1px solid #ffffff24;border-radius:16px;padding:24px;min-width:0}.direct-studio legend{padding:0 10px;font-weight:700}.direct-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.direct-actions a{text-decoration:none;display:inline-flex;align-items:center}.direct-studio .help{line-height:1.6}.direct-settings{margin:34px 0;padding:24px;background:#ffffff06;border-radius:16px}.direct-studio select{max-width:100%}.direct-poster-preview{width:min(100%,480px);aspect-ratio:16/9;object-fit:contain;background:#080e16;border-radius:12px}.direct-badge{display:inline-block;color:#ffbb85;font-weight:700;letter-spacing:.08em;font-size:13px}.direct-live{color:#ff6868}.direct-history-row{padding:16px 0;border-bottom:1px solid #ffffff20}.hadissi-direct{margin:28px 0;padding:24px;border:1px solid #ffffff25;border-radius:20px;background:#101b28;color:#f7f4ef}.welcome-mode .hadissi-direct{margin:32px auto;max-width:1120px;width:calc(100% - 48px);box-sizing:border-box;position:relative;z-index:2}.hadissi-direct h2{font-size:clamp(22px,3vw,34px);margin:8px 0 12px}.direct-stage{width:100%;max-width:800px;aspect-ratio:16/9;margin:18px auto;background:#070d16;position:relative;border-radius:14px;overflow:hidden;display:grid;place-items:center}.direct-stage img,.direct-stage video{width:100%;height:100%;object-fit:contain;position:absolute;inset:0}.direct-placeholder{text-align:center;padding:24px}.direct-placeholder strong{display:block;font-size:clamp(18px,3vw,30px);margin:16px 0}.direct-placeholder .brand{font-size:38px;color:#ffb178}.direct-message{font-size:14px;color:#c0c8d3;line-height:1.6}.direct-controls{display:flex;gap:12px;flex-wrap:wrap;justify-content:center}.direct-controls button{border:1px solid #ffffff30;border-radius:999px;background:#ffffff0d;color:#fff;padding:12px 20px;cursor:pointer}.direct-countdown{font-variant-numeric:tabular-nums;color:#ffb178}.hadissi-direct[hidden],.direct-stage [hidden]{display:none!important}@media(max-width:600px){.direct-studio{padding:22px 16px}.direct-studio fieldset{padding:16px}.direct-studio .two{display:grid;grid-template-columns:1fr}.hadissi-direct{padding:16px}.direct-actions>*{max-width:100%}.direct-stage{border-radius:8px}.welcome-mode .hadissi-direct{width:calc(100% - 32px)}}


.direct-studio [hidden]{display:none!important}.direct-live-preview{display:block;width:100%;aspect-ratio:16/9;background:#070d16;border-radius:12px;object-fit:contain}.direct-studio #d-liveUrl{width:100%;box-sizing:border-box}

.channel-grid{list-style:none;padding:0}.channel-row{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #ffffff24}.channel-row>div:first-child{min-width:0;overflow-wrap:anywhere}.channel-row p{font-size:14px;margin:8px 0}.channel-row .direct-actions{margin:0;flex-shrink:0}.channel-row button{padding:10px}.channel-invalid{border-left:3px solid #ff8585;padding-left:12px}.channel-invalid p:last-child{color:#ffb5b5}.channel-dialog{background:#142035;color:#f6f0e7;border:1px solid #ffffff35;border-radius:16px;width:min(720px,calc(100% - 24px));max-height:90vh;overflow:auto;padding:24px}.channel-dialog::backdrop{background:#000a}.channel-dialog fieldset{min-width:0;border:0;padding:0}.channel-dialog button{padding:12px;border-radius:8px}.channel-dialog select{max-width:100%}#d-channel-fields select{min-width:0}.direct-programme{margin:16px 0;padding:16px;background:#ffffff08;border-radius:12px}.direct-programme summary{cursor:pointer;padding:10px 0}.direct-programme ol{list-style:none;padding:0}.direct-programme li{padding:10px 0;border-top:1px solid #ffffff20;display:flex;gap:12px;justify-content:space-between}.direct-programme time{white-space:nowrap}.direct-programme .current{color:#ffb477;font-weight:bold}@media(max-width:600px){.channel-row{align-items:stretch;flex-direction:column}.channel-dialog{padding:16px}.channel-dialog .two{grid-template-columns:1fr}.direct-programme li{flex-direction:column;gap:4px}}

/* Compteur Direct : cellules fixes, chiffres tabulaires, sans déplacement à chaque seconde. */
.direct-countdown{margin:20px auto 22px;color:#ffb178;width:100%;max-width:400px}.direct-countdown-heading{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px;font-size:11px;font-weight:700;letter-spacing:.12em;white-space:nowrap}.direct-countdown-heading:before,.direct-countdown-heading:after{content:"";height:1px;flex:1;background:linear-gradient(90deg,transparent,#ffb17899)}.direct-countdown-heading:after{transform:rotate(180deg)}.direct-countdown-units{display:flex;gap:10px;align-items:stretch;justify-content:center}.direct-countdown-unit{display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;flex:1;min-width:0;padding:12px 8px;border:1px solid #b9652d88;border-radius:11px;background:radial-gradient(ellipse at 50% 40%,#ba632514,transparent 80%),#070d1640;box-shadow:0 0 16px #d76d1808}.direct-countdown-unit strong{color:#ffd384;text-shadow:0 0 18px #ed963133;font-size:34px;font-weight:650;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:.02em}.direct-countdown-unit>span{margin-top:6px;font-size:9px;font-weight:600;letter-spacing:.12em;color:#c0c8d3}.direct-countdown-wait{font-size:14px;line-height:1.6}.direct-countdown[hidden],.direct-countdown [hidden]{display:none!important}@media(max-width:600px){.direct-countdown-units{gap:6px}.direct-countdown-unit{min-width:0;padding:10px 6px}.direct-countdown-unit strong{font-size:26px}.direct-countdown-heading{font-size:10px}}

/* Guide public uniquement : les horaires de diffusion restent inchangés. */
.direct-programme{padding:16px 18px;background:#070d1666;border:1px solid #ffffff22;border-radius:14px}.direct-programme-next{font-size:14px;color:#c0c8d3;margin:0 0 10px;line-height:1.5}.direct-programme summary{display:flex;align-items:center;justify-content:space-between;gap:16px;list-style:none;padding:10px 0}.direct-programme summary::-webkit-details-marker{display:none}.direct-programme summary strong{font-size:18px;color:#f7f4ef}.direct-programme-toggle{font-size:14px;color:#e6c294;text-align:right}.direct-programme-toggle:after{content:'⌄';display:inline-block;margin-left:10px}.direct-programme details[open] .direct-programme-toggle:after{transform:rotate(180deg)}.direct-programme summary:focus-visible{outline:2px solid #ffb178;outline-offset:5px;border-radius:4px}.direct-programme ol{margin:8px 0 0}.direct-programme li.direct-programme-day{display:block;padding:14px 0 8px;border:0;font-size:13px;color:#b3bdca;text-transform:capitalize}.direct-programme li.direct-programme-row{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:14px;padding:12px 10px;border-top:1px solid #ffffff18;border-radius:8px}.direct-programme .direct-programme-row.current{background:linear-gradient(90deg,#a6452624,transparent);font-weight:400;box-shadow:inset 3px 0 #ff865d}.direct-programme-thumb{width:96px;aspect-ratio:16/9;object-fit:cover;border-radius:7px;flex-shrink:0}.direct-programme-row time{font-size:16px;font-weight:700;color:#f7f4ef;font-variant-numeric:tabular-nums;flex-shrink:0}.direct-programme-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px}.direct-programme-title{font-size:16px;font-weight:600;line-height:1.4;color:#f7f4ef;overflow-wrap:anywhere}.direct-programme-status{font-size:12px;font-weight:700;letter-spacing:.06em;color:#b8c2ce}.current .direct-programme-status{color:#ff9677}.direct-programme-type{font-size:12px;color:#eed2ac;background:#e7b47a12;border:1px solid #e7b47a33;border-radius:6px;padding:5px 9px;flex-shrink:0}@media(max-width:600px){.direct-programme{padding:12px}.direct-programme summary{gap:10px}.direct-programme summary strong{font-size:16px}.direct-programme-toggle{font-size:12px}.direct-programme li.direct-programme-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px 10px;padding:12px 4px}.direct-programme-thumb{grid-column:1;grid-row:1 / span 3;width:64px}.direct-programme-row time{grid-column:2;font-size:14px}.direct-programme-body{grid-column:2}.direct-programme-type{grid-column:2;justify-self:start;font-size:12px}.direct-programme-title{font-size:14px}.direct-programme-row:not(:has(.direct-programme-thumb)){grid-template-columns:1fr}.direct-programme-row:not(:has(.direct-programme-thumb))>*{grid-column:1}}
