/* Bedieningspaneel — Rectusoft-huisstijl, dezelfde kop als PlayGames,
   PitchControl en de Announcer: blauwe balk met een kruimelpad, zodat je
   vanuit elk scherm in één klik terug bent bij het dashboard. */
:root{
  --primary:#07a7e3; --primary-dark:#0586b6; --accent:#ff9800;
  --grey-bg:#f8f9fa; --grey-line:#e5e7eb;
  --text:#212529; --text-muted:#6c757d;
}
*{margin:0;padding:0;box-sizing:border-box;font-family:"Segoe UI",system-ui,Arial,sans-serif}
body{background:var(--grey-bg);color:var(--text)}

/* ── kop met kruimelpad ─────────────────────────────────────────────── */
.hdr{background:var(--primary);color:#fff;display:flex;align-items:center;gap:22px;
  padding:9px 16px;flex-wrap:wrap}
.hdr .brand{height:26px;width:auto;display:block}
.hdr .appnaam{font-weight:800;font-size:1.05rem;letter-spacing:.02em;white-space:nowrap}
.hdr nav{display:flex;gap:9px;font-size:.9rem;align-items:center;flex-wrap:wrap}
.hdr nav a{color:#fff;text-decoration:none;padding:4px 2px;border-bottom:2px solid transparent}
.hdr nav a:hover{border-bottom-color:var(--accent)}
.hdr nav a.on{border-bottom-color:#fff;font-weight:700;cursor:default}
.hdr nav a.on:hover{border-bottom-color:#fff}
.hdr .sep{opacity:.55;font-size:1rem;line-height:1}
.hdr .trn{margin-left:auto;font-size:.9rem;opacity:.95;text-align:right;line-height:1.15}
.hdr .trn a{color:#fff;opacity:.85;font-size:.78rem}
.hdr .gebruiker{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.15);
  border-radius:999px;padding:4px 12px 4px 8px;font-size:.85rem;white-space:nowrap}
.hdr .gebruiker svg{width:16px;height:16px;fill:none;stroke:#fff;stroke-width:2}
.hdr .klok{font-variant-numeric:tabular-nums;font-weight:700;font-size:1rem}

.toolbar{display:flex;align-items:center;gap:16px;padding:16px 30px;flex-wrap:wrap}
.toolbar .lbl{font-weight:700;font-size:15px;color:var(--primary-dark)}
.stylepick{display:flex;border:2px solid var(--primary);border-radius:10px;overflow:hidden}
.stylepick span{padding:8px 18px;font-size:15px;font-weight:700;cursor:pointer;
  background:#fff;color:var(--primary)}
.stylepick span.on{background:var(--primary);color:#fff}
.toolbar .note{color:#5f7d84;font-size:14px}
.sel{border:1.5px solid #b9d6dc;border-radius:8px;padding:8px 9px;font-size:14px;
  color:#1d3237;background:#fff}
.w80{width:80px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:18px;
  padding:0 30px 24px}
.card{background:#fff;border-radius:14px;box-shadow:0 3px 12px rgba(15,70,80,.10);overflow:hidden}
.card .ch{display:flex;align-items:center;gap:10px;padding:11px 15px;background:#eaf6f8;
  border-bottom:1px solid #d5eaee}
.card .ch .nr{background:var(--primary-dark);color:#fff;font-weight:800;border-radius:8px;
  padding:3px 11px;font-size:16px}
.card .ch .nm{font-weight:700;font-size:15px;flex:1}
.dot{width:11px;height:11px;border-radius:50%;display:inline-block;flex:none}
.dot.on{background:#2f9e44;box-shadow:0 0 0 3px rgba(47,158,68,.2)}
.dot.off{background:#c0392b}
.card .ch .seen{font-size:12.5px;color:#5f7d84;white-space:nowrap}
.card .cb{padding:13px 15px;display:flex;flex-direction:column;gap:9px}
.card .cb .sel{width:100%}
.row2{display:flex;gap:9px}
.row2 .sel{flex:1;min-width:0}
.btns{display:flex;gap:8px}
.btn{flex:1;text-align:center;border-radius:8px;padding:8px 0;font-size:14px;font-weight:700;
  border:none;cursor:pointer}
.btn.p{background:var(--primary);color:#fff}
.btn.p:disabled{opacity:.4;cursor:default}
.btn.s{background:#fff;border:1.5px solid var(--primary);color:var(--primary-dark)}
.btn.s:disabled{opacity:.4;cursor:default}
.url{font-size:12.5px;color:#5f7d84;background:#f4f9fa;border-radius:6px;padding:6px 8px;
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.url a{color:var(--primary-dark)}
.urlrow{display:flex;gap:8px;align-items:stretch}
.urlrow .url{flex:1;min-width:0}
.copybtn{flex:none;border:1.5px solid var(--primary);background:#fff;color:var(--primary-dark);border-radius:6px;
  padding:4px 10px;font-size:12.5px;font-weight:700;cursor:pointer;white-space:nowrap}
.copybtn:hover{background:#eaf6f8}
.copybtn.ok{background:#2f9e44;border-color:#2f9e44;color:#fff}
.saved{font-size:12.5px;font-weight:700;color:#2f9e44;min-height:15px}
.err{color:#c0392b}
.foot{padding:0 30px 26px;color:#5f7d84;font-size:13.5px;max-width:1100px}
.foot b{color:var(--primary-dark)}

/* ── toegangspagina en toernooikeuze ─────────────────────────────────── */
.poort{max-width:760px;margin:26px auto;padding:0 24px;color:#1d3237}
.poort p{font-size:16px;line-height:1.55;margin-bottom:14px}
.poort-fout{background:#fdecea;border:1.5px solid #e0a9a2;color:#a33227;border-radius:10px;
  padding:12px 16px;margin-bottom:16px;font-size:15px}
.poort-knop{display:inline-block;background:var(--primary);color:#fff;text-decoration:none;
  border-radius:9px;padding:11px 20px;font-weight:700;font-size:16px;margin:6px 0 18px}
.poort-knop:hover{background:var(--primary-dark)}
.poort-voet{font-size:13.5px;color:#5f7d84}
.poort code{background:#eaf6f8;border-radius:4px;padding:1px 5px}
.kieslijst{list-style:none;margin:8px 0 18px}
.kieslijst li{margin-bottom:9px}
.kiesknop{display:block;width:100%;text-align:left;background:#fff;border:1.5px solid #b9d6dc;
  border-radius:10px;padding:12px 16px;cursor:pointer}
.kiesknop:hover{border-color:var(--primary);background:#f4fbfc}
.kiesknop.cur{border-color:var(--primary);box-shadow:0 0 0 3px rgba(23,162,184,.18)}
.kiesnaam{display:block;font-size:17px;font-weight:700;color:var(--primary-dark)}
.kiesmeta{display:block;font-size:13px;color:#5f7d84;margin-top:2px}
.lock .wissel{color:#fff;text-decoration:underline;font-size:14px}

/* ── snapshotbalk en het vinkje per scherm ───────────────────────────── */
.agentbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 30px 16px;
  background:#fff;border:1.5px solid #d5eaee;border-radius:12px;padding:10px 15px;font-size:13.5px}
.agentbar:empty{display:none}
.apil{font-weight:800;border-radius:8px;padding:3px 11px;white-space:nowrap}
.apil.ok{background:#e4f6ea;color:#15834b}
.apil.nok{background:#fdecea;color:#a33227}
.agentbar .atxt{color:#5f7d84}
.agentbar .afout{color:#a33227;font-weight:700}
.agentbar .acode{font-size:14px;color:var(--primary-dark)}
.agentbar .acode b{font-family:Consolas,monospace;font-size:17px;letter-spacing:2px}
.agentbar.setup{display:block;border-color:#e0a9a2;background:#fffaf9}
.agentbar.waarschuwing{border-color:#e0a9a2;background:#fffaf9}
.agentbar .sh{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
ol.stap{margin:10px 0 2px 26px;color:#1d3237}
ol.stap li{margin-bottom:9px;line-height:1.65}
.poort-knop.klein{padding:5px 13px;font-size:14px;margin:0 4px;vertical-align:-1px}
label.snap{display:flex;align-items:center;gap:9px}
label.snap .sel{flex:1;min-width:0}
.snapnu{font-size:12.5px;font-weight:700;white-space:nowrap}
.snapnu.aan{color:#15834b}
.snapnu.uit{color:#9aa9b4}

/* verwijderknop: duidelijk anders dan de rest, maar niet schreeuwerig */
.copybtn.gevaar{border-color:#e0a9a2;color:#a33227}
.copybtn.gevaar:hover{background:#fdecea}

/* ── scherm 7: de informatiedia's ─────────────────────────────────────── */
a.btn{text-decoration:none;line-height:1.5;display:inline-block}
.w160{width:160px;flex:none}
.lsnu{font-size:12.5px;font-weight:700;line-height:1.35}
.lsnu.aan{color:#15834b}
.lsnu.uit{color:#7d8b95}
.lsnu small{display:block;font-weight:400;color:#9aa9b4}

.slidewrap{display:grid;grid-template-columns:minmax(420px,1fr) 720px;gap:20px;
  padding:0 30px 24px;align-items:start}
@media (max-width:1400px){.slidewrap{grid-template-columns:1fr}}

.slidelijst{background:#fff;border-radius:14px;box-shadow:0 3px 12px rgba(15,70,80,.10);
  overflow:hidden}
.leegmelding{padding:22px;color:#5f7d84;font-size:14.5px;line-height:1.6}
.leegmelding.err{color:#c0392b}
.slijn{display:flex;align-items:center;gap:11px;padding:9px 15px;border-bottom:1px solid #eef4f6;
  font-size:14px}
.slijn:last-child{border-bottom:0}
.slijn.open{background:#eaf6f8;box-shadow:inset 3px 0 0 var(--primary)}
.slijn .snr{width:30px;flex:none;font-weight:800;color:var(--primary-dark);text-align:right}
.slijn .ssj{width:22px;flex:none;text-align:center;font-weight:800;color:#fff;
  background:var(--primary);border-radius:5px;font-size:12px;line-height:19px;cursor:help}
.slijn .stekst{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  color:#1d3237}
.slijn .stekst em{color:#9aa9b4}
.slijn .sbeeld{flex:none;display:flex;gap:4px}
.slijn .sbeeld img{width:38px;height:24px;object-fit:cover;border-radius:4px;
  box-shadow:0 0 0 1px rgba(0,0,0,.12)}
.slijn .stijd{flex:none;color:#5f7d84;font-variant-numeric:tabular-nums;width:34px;text-align:right}
.slijn .sqr{flex:none;font-size:11px;font-weight:800;border-radius:5px;padding:2px 6px;
  background:#eef2f5;color:#b3bfc7}
.slijn .sqr.aan{background:#e4f6ea;color:#15834b}
.slijn .sgetoond{flex:none;width:46px;text-align:right;color:#5f7d84;
  font-variant-numeric:tabular-nums;cursor:help}
.slijn .sgetoond.rust{color:#c47f10;font-weight:700}

.slideform{background:#fff;border-radius:14px;box-shadow:0 3px 12px rgba(15,70,80,.10);
  padding:0}
.slideform:empty{display:none}
.slideform.aan{padding:18px 20px 20px}
.slideform h2{font-size:17px;color:var(--primary-dark);margin-bottom:14px}
.slideform label{display:block;font-size:12.5px;font-weight:700;color:#5f7d84;margin-bottom:4px}
.slideform .vr{display:flex;gap:16px;align-items:flex-end;margin-bottom:12px;flex-wrap:wrap}
.slideform .vr1{margin-bottom:12px}
.slideform label.vink{display:flex;align-items:center;gap:7px;font-weight:600;color:#1d3237;
  padding-bottom:9px}
.slideform label.vink input{width:16px;height:16px}
.inv{border:1.5px solid #b9d6dc;border-radius:8px;padding:8px 10px;font-size:14px;
  color:#1d3237;background:#fff;width:100%;font-family:inherit}
.inv:focus{outline:none;border-color:var(--primary)}
.w110{width:110px}
.slideform textarea.inv{resize:vertical;line-height:1.5}

.beeldvak{border:1px dashed #cfe3e8;border-radius:10px;padding:11px 13px;margin-bottom:10px;
  display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.beeldvak[hidden]{display:none}
.bv-kop{font-size:12.5px;font-weight:800;color:var(--primary-dark);width:62px;flex:none}
.bv-knop{margin:0;border:1.5px solid var(--primary);color:var(--primary-dark);background:#fff;
  border-radius:7px;padding:5px 12px;font-size:12.5px;font-weight:700;cursor:pointer;flex:none}
.bv-knop:hover{background:#eaf6f8}
.bv-naam{font-size:12.5px;color:#5f7d84;flex:1;min-width:120px;overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap}
.bv-url{width:100%;margin:0}

.vbtitel{font-size:12.5px;font-weight:700;color:#5f7d84;margin:16px 0 6px}
.vbwrap{width:660px;max-width:100%;height:371px;overflow:hidden;border-radius:10px;
  border:1px solid var(--grey-line);background:#000}
.vb{width:1920px;height:1080px;border:0;transform:scale(.34375);transform-origin:top left;
  display:block}

.fbtns{display:flex;gap:9px;margin-top:16px}
.fbtns .btn{flex:0 0 auto;padding:9px 22px}
.gevaarbtn{background:#fff;border:1.5px solid #e0a9a2;color:#a33227;border-radius:8px;
  padding:9px 22px;font-size:14px;font-weight:700;cursor:pointer;margin-left:auto}
.gevaarbtn:hover{background:#fdecea}
.bv-maat{width:100%;font-size:11.5px;line-height:1.45;color:#9aa9b4;margin-top:3px}
.bv-maat:empty{display:none}
/* duimnagel in de lijst: bij een filmpje het eerste beeldje met een pijltje */
.slijn .dm{position:relative;display:inline-block;line-height:0}
.slijn .sbeeld video.vid{width:38px;height:24px;object-fit:cover;border-radius:4px;
  box-shadow:0 0 0 1px rgba(0,0,0,.12);background:#0d2a52;display:block}
.slijn .vidpijl{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:11px;text-shadow:0 1px 3px rgba(0,0,0,.7);pointer-events:none}
/* het voorbeeld tekent video net als het scherm zelf */
.vb video{display:block;width:100%;height:100%;object-fit:cover}
