:root{font:15px/1.5 system-ui,Arial,sans-serif;color:#1c2330;background:#f4f6f8}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;gap:20px;padding:14px 24px;background:#101c30;color:#fff;flex-wrap:wrap}header strong{font-size:20px}header strong span{color:#58dbc3}nav{display:flex;gap:4px;flex:1;flex-wrap:wrap}nav button{background:transparent;color:#bac9d8;border:0;padding:10px;border-radius:7px}nav button.active,nav button:hover{background:#28435b;color:#fff}main{max-width:1220px;margin:auto;padding:28px}.heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.heading small{color:#357d79;font-weight:700;letter-spacing:.11em}h1{margin:3px 0 0;font-size:29px}h2{font-size:18px;margin:0 0 18px}.grid{display:grid;gap:16px}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border:1px solid #dce3e9;border-radius:12px;padding:22px;margin-bottom:16px;box-shadow:0 2px 10px #101c3008}label{display:block;margin:12px 0;font-weight:600}input,select,textarea{display:block;width:100%;border:1px solid #bbc9d2;border-radius:7px;padding:10px;margin-top:5px;font:inherit;color:inherit;background:#fff}input[type=range]{padding:0}input[type=checkbox]{display:inline;width:auto}.check{font-weight:400}textarea{min-height:75px}button{background:#126e67;border:1px solid #126e67;border-radius:7px;color:#fff;padding:10px 15px;font:inherit;font-weight:600;cursor:pointer}button:hover{filter:brightness(1.12)}button.secondary{background:transparent;border-color:#8da9ad;color:inherit}button.danger{background:#9c2c35;border-color:#9c2c35}.login{max-width:400px;margin:8vh auto;padding:32px}.login button{width:100%;margin-top:12px}.login p,.hint{color:#667789}.hint{font-size:13px}.page[hidden],#app[hidden],#login[hidden]{display:none!important}#message{min-height:0}#message:not(:empty){margin:10px 0;padding:12px;border-radius:8px;background:#d9f5ec}#message.error{background:#ffebeb;color:#87252c}#clock{color:#55717d}video{width:100%;background:#101c30;aspect-ratio:16/9;border-radius:8px;margin-top:14px}.row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid #e7edf1}.row>div{min-width:0}.row small{display:block;color:#70818d}.actions{display:flex;gap:6px}.actions button{padding:5px 9px}.tag{display:inline-block;background:#e8eef3;color:#466078;border-radius:5px;padding:2px 7px;font-size:12px}.tag.good{background:#d7f4e9;color:#226b55}.tag.bad{background:#ffe4e4;color:#9c2c35}.secret{overflow-wrap:anywhere;white-space:pre-wrap;background:#f1f6f8;border-radius:8px;padding:10px;margin-top:14px}.secret:empty{display:none}progress{width:100%;margin-top:10px}ol{padding-left:25px}li{padding:5px 0}li button{margin-left:5px;padding:3px 7px}code{overflow-wrap:anywhere}@media(max-width:800px){.two{grid-template-columns:1fr}main{padding:15px}header{gap:10px}.heading{align-items:start;flex-direction:column}nav{order:3;flex-basis:100%;overflow:auto}}
.row>div:first-child{flex:1;overflow-wrap:anywhere}.actions{flex-shrink:0}
h3{font-size:14px;margin:18px 0 8px;color:#466078;text-transform:uppercase;letter-spacing:.06em}
.grid.side{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.grid.tight{gap:12px}
.cardhead{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.cardhead h2{margin:0}.cardhead input[type=search]{max-width:240px;margin:0}
.inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline input{width:auto;margin:0}.inline input[type=range]{flex:1;min-width:140px}
.segmented{display:inline-flex;border:1px solid #8da9ad;border-radius:8px;overflow:hidden}.segmented button{background:transparent;color:inherit;border:0;border-radius:0;padding:8px 12px;font-weight:600}.segmented button+button{border-left:1px solid #8da9ad}.segmented button.active{background:#126e67;color:#fff}
.tag.warn{background:#fff1d6;color:#8a5a00}.tag.live{background:#d40000;color:#fff}
.media-list{display:flex;flex-direction:column;max-height:70vh;overflow:auto}.media-list.compact .media-row{padding:6px 0}
.media-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #e7edf1}.media-row[draggable=true]{cursor:grab}
.media-info{flex:1;min-width:0;overflow-wrap:anywhere}.media-info small{display:block;color:#70818d}
.thumb{width:96px;aspect-ratio:16/9;object-fit:cover;border-radius:6px;background:#101c30;flex-shrink:0;display:block}.thumb.empty{background:repeating-linear-gradient(45deg,#dfe7ec,#dfe7ec 6px,#eef3f6 6px,#eef3f6 12px)}
.rundown{display:flex;flex-direction:column;gap:6px}.droppable{min-height:140px;border:2px dashed #c9d6dd;border-radius:10px;padding:8px;margin:12px 0}
.rd{display:flex;align-items:center;gap:12px;padding:8px 12px;border-radius:8px;background:#f4f7f9;border:1px solid #e1e8ed}
.rd.slot{background:#e6f0f6;border-color:#c4d6e3;margin-top:10px}.rd.slot:first-child{margin-top:0}.rd.gap{background:transparent;border-style:dashed;color:#70818d}
.rd.item .thumb{width:84px}.rd.onair{background:#e3f6ef;border-color:#58b393;box-shadow:inset 4px 0 0 #1f9d72}
.rd-title{flex:1;min-width:0;overflow-wrap:anywhere}.rd-title small{display:block;color:#70818d}.rd-title .tag{margin-left:6px}.rd-title progress{display:block;width:100%;height:6px;margin-top:6px;accent-color:#1f9d72}
.rd-times{display:flex;gap:18px;font-variant-numeric:tabular-nums;white-space:nowrap}.rd-times span{display:flex;flex-direction:column;align-items:flex-end;font-weight:600}.rd-times small{font-size:11px;font-weight:400;color:#70818d}
.rd[draggable=true]{cursor:grab}.grip{color:#9aaab4;cursor:grab;user-select:none}.num{width:22px;text-align:right;color:#70818d;font-variant-numeric:tabular-nums}
.drop-before{box-shadow:0 -3px 0 #126e67}.drop-after{box-shadow:0 3px 0 #126e67}.drop-hint{text-align:center;padding:36px 0}
.draft-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
dialog#previewDialog{border:0;border-radius:12px;padding:16px;width:min(960px,94vw);box-shadow:0 20px 60px #101c3055}dialog::backdrop{background:#101c30b0}
.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px}#previewVideo{margin-top:0}
@media(max-width:800px){.grid.side{grid-template-columns:1fr}.rd{flex-wrap:wrap}.rd-times{width:100%;justify-content:space-between}.rd .thumb{width:72px}.media-row .thumb{width:72px}.cardhead input[type=search]{max-width:none}}
.rd{flex-wrap:wrap}.rd-title{flex:1 1 200px}.rd .actions button{padding:4px 9px}.rd .actions{margin-left:auto}
button:disabled{opacity:.35;cursor:default;filter:none}
.rd.override{background:#fff3e0;border-color:#f0a24a;box-shadow:inset 4px 0 0 #e07b00}.rd.override.onair{background:#ffe8c7}
.rd.covered{opacity:.45}.rd.covered .rd-title b{text-decoration:line-through}
.droptarget.dragover{outline:3px dashed #e07b00;outline-offset:4px}.rd.dropspot{box-shadow:0 0 0 2px #e07b00}
.onair-insert{background:#fff3e0;border-radius:8px;padding:10px 12px;margin-bottom:8px}.onair-insert h3{margin:0 0 4px;color:#a35600}
details.card>summary{cursor:pointer;list-style:none}details.card>summary::-webkit-details-marker{display:none}details.card>summary h2{display:inline;margin:0}details.card>summary::before{content:"▸ ";color:#70818d}details.card[open]>summary::before{content:"▾ "}details.card[open]>summary{margin-bottom:12px}
.badge-stage{position:relative;aspect-ratio:16/9;background:#101c30 linear-gradient(135deg,#1d3550,#101c30);border-radius:8px;overflow:hidden;margin-top:12px;container-type:inline-size}
.badge-stage span{position:absolute;white-space:nowrap;line-height:1.1;font-family:"DejaVu Sans",Verdana,sans-serif}
.badge-chip{display:inline-block;padding:2px 8px;border-radius:4px;font-weight:700;font-size:13px;margin-right:6px}
.media-row select.badge-pick{width:auto;max-width:190px;margin:0;padding:5px 8px;font-size:13px}
input[type=color]{height:44px;padding:4px;cursor:pointer}
.folder-bar{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.folder-bar button{padding:5px 11px;border-radius:999px;font-size:13px;background:transparent;color:inherit;border-color:#bbc9d2}.folder-bar button.active{background:#126e67;border-color:#126e67;color:#fff}.folder-bar .tools{margin-left:auto;display:flex;gap:6px}
.folder-filter{width:auto;margin:0;padding:8px}.media-row select.folder-pick{width:auto;max-width:150px;margin:0;padding:5px 8px;font-size:13px}
dialog.form-dialog{border:0;border-radius:12px;padding:18px;width:min(560px,94vw);box-shadow:0 20px 60px #101c3055}
fieldset{border:1px solid #dce3e9;border-radius:10px;padding:12px 14px;margin:12px 0}legend{font-weight:700;padding:0 6px}
.rd[data-drag-slot]{cursor:grab}.rd.dragging{opacity:.4}
#mediaList .media-row{flex-wrap:wrap}#mediaList .media-info{flex:1 1 220px}#mediaList .actions{flex-wrap:wrap;margin-left:auto;justify-content:flex-end}
.grade-kind{margin:4px 0 8px}.small-link{padding:5px 10px;font-size:13px;margin-left:8px}
.day-summary{font-size:13px;color:#466078;margin-top:4px}.day-summary b{font-variant-numeric:tabular-nums}.day-summary .meter{display:block;height:6px;border-radius:3px;background:#e1e8ed;margin-top:5px;overflow:hidden;min-width:220px}.day-summary .meter i{display:block;height:100%;background:#1f9d72}
.rd select.badge-pick{width:auto;max-width:200px;margin:0;padding:4px 8px;font-size:13px}
.tag.cross{background:#ece6ff;color:#4b3a8f}
.badge-kind{margin-bottom:6px}.activate-banner{background:#fff3e0;border:1px solid #f0a24a;border-radius:10px;padding:12px 16px;margin-bottom:16px;display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.badge-stage img{position:absolute;display:block}.badge-chip img{height:18px;vertical-align:middle;display:block}.badge-chip.img{padding:2px 4px;background:#101c30}
.kind-image[hidden],.kind-text[hidden],.kind-clock[hidden]{display:none!important}
.activate-banner[hidden]{display:none!important}
.thumb.dice{display:flex;align-items:center;justify-content:center;font-size:26px;background:#eef3f6}fieldset[hidden]{display:none}
