/* INCIDENT MODE styles. Klaxon red over the cyan HUD. All motion is disabled under prefers-reduced-motion. */
#inc-root{--ir:var(--red);--ir2:var(--red2)}
#inc-bar{position:fixed;left:0;right:0;top:0;height:16px;z-index:10;display:flex;align-items:center;justify-content:center;background:#c4101f;color:#fff;font-size:10px;letter-spacing:.3em;white-space:nowrap;overflow:hidden;pointer-events:none;opacity:0;transform:translateY(-100%);transition:opacity .15s}
#inc-bar.on{opacity:1;transform:none}
#inc-bar.flash{animation:incbar .5s steps(2,end) 12}
@keyframes incbar{0%{background:#ff1f33;color:#fff}50%{background:#3a050a;color:#ff8a94}}
#inc-vig{position:fixed;inset:0;z-index:5;pointer-events:none;opacity:0;box-shadow:inset 0 0 120px 8px color-mix(in srgb,var(--red) 55%,transparent);transition:opacity .4s}
#inc-vig.on{opacity:1;animation:incvig 1.6s ease-in-out 4}
@keyframes incvig{50%{opacity:.35}}
#inc-card{position:fixed;z-index:12;left:50%;bottom:calc(var(--botb) + var(--both) + 18px);transform:translate(-50%,24px);width:min(780px,calc(100vw - 24px));background:linear-gradient(180deg,#280409,#040a10 40%);border:1px solid var(--ir);box-shadow:0 0 34px color-mix(in srgb,var(--red) 35%,transparent),inset 0 0 40px color-mix(in srgb,var(--red) 8%,transparent);padding:10px 14px;max-height:calc(100dvh - var(--topy) - var(--toph) - var(--botb) - var(--both) - 36px);overflow-y:auto;overscroll-behavior:contain;opacity:0;clip-path:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,16px 100%,0 calc(100% - 16px))}
#inc-card.in{opacity:1;transform:translate(-50%,0);transition:opacity .25s,transform .35s cubic-bezier(.2,.9,.2,1)}
#inc-card .inc-h{display:flex;align-items:center;gap:10px;margin-bottom:6px;position:sticky;top:-10px;z-index:2;background:#280409;padding:4px 0} /* sticky: short landscape screens scroll the card, ESC stays reachable */
#inc-card .inc-h b{font:700 17px var(--hd);letter-spacing:.24em;color:var(--m-hi)}
#inc-card .inc-h em{font-style:normal;font-size:10px;letter-spacing:.2em;color:#fff;background:#b30e1c;padding:2px 8px}
.inc-dot{width:10px;height:10px;border-radius:50%;background:var(--ir);box-shadow:0 0 10px var(--ir);animation:incdot .8s ease-in-out infinite}
@keyframes incdot{50%{opacity:.25}}
.inc-x,.inc-b{margin-left:auto;font-size:10px;letter-spacing:.18em;color:var(--cy2);border:1px solid var(--line);padding:3px 9px;background:var(--panel)}
.inc-x:hover,.inc-b:hover{border-color:var(--cy);color:var(--m-hi)}
.inc-rows p{display:grid;grid-template-columns:92px 1fr;gap:10px;font-size:12px;line-height:1.55;border-bottom:1px solid color-mix(in srgb,var(--red) 14%,transparent)}
.inc-rows u{text-decoration:none;color:var(--ir2);letter-spacing:.2em;font-size:10px;align-self:center}
.inc-rows span{color:var(--ink);letter-spacing:.07em;min-height:1.55em;overflow-wrap:anywhere}
.inc-cams{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px}
.inc-cams figure{margin:0;border:1px solid var(--line);background:#000;min-width:0}
.inc-cams .h .player{margin:0;border:0}
.inc-cams .ovl{font-size:9px;letter-spacing:.2em;gap:6px}.inc-cams .ovl i{width:20px;height:20px}
.inc-cams .ovl.err::before{font-size:14px}
.inc-cams .live{top:4px;left:4px;font-size:9px;padding:1px 5px}
.inc-cams figcaption{display:flex;flex-direction:column;padding:3px 6px 4px;font-size:9.5px;color:var(--dim);letter-spacing:.06em;background:var(--glass2)}
.inc-cams figcaption b{color:var(--ink);font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inc-nocam{grid-column:1/-1;border:1px dashed color-mix(in srgb,var(--red) 50%,transparent);color:var(--ir2);font-size:10.5px;letter-spacing:.2em;text-align:center;padding:14px 8px}
#inc-card .inc-f{display:flex;justify-content:space-between;align-items:center;margin-top:7px;font-size:10px;color:var(--dim);letter-spacing:.16em}
#inc-card .inc-f .inc-b{margin-left:0}
#inc-tab{position:fixed;z-index:7;right:calc(var(--g) + 8px);bottom:calc(var(--botb) + var(--both) + 14px);display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.2em;padding:5px 10px;background:var(--glass2);border:1px solid var(--line);color:var(--cy2)}
body.r-open #inc-tab{right:calc(var(--g) + var(--rw) + 12px)}
#inc-tab:hover{border-color:var(--ir);color:var(--m-hi)}
#inc-tab b{font-weight:400;background:color-mix(in srgb,var(--cy) 16%,transparent);padding:0 6px}
#inc-tab.unread{border-color:var(--ir);color:var(--m-hi)}#inc-tab.unread b{background:var(--ir);color:#fff}
#inc-tab.dnd::after{content:"MUTED";font-size:9px;color:var(--warn);border:1px solid var(--warn);padding:0 4px}
.inc-ic{width:7px;height:7px;background:var(--ir);transform:rotate(45deg);box-shadow:0 0 6px var(--ir)}
#inc-log{position:fixed;z-index:13;right:calc(var(--g) + 8px);bottom:calc(var(--botb) + var(--both) + 48px);width:min(400px,calc(100vw - 24px));max-height:min(62vh,520px);display:flex;flex-direction:column;background:var(--glass2);border:1px solid var(--ir);box-shadow:0 0 24px color-mix(in srgb,var(--red) 25%,transparent);backdrop-filter:blur(10px)}
body.r-open #inc-log{right:calc(var(--g) + var(--rw) + 12px)}
#inc-log .inc-h{display:flex;align-items:center;gap:10px;padding:9px 12px;border-bottom:1px solid color-mix(in srgb,var(--red) 30%,transparent)}
#inc-log .inc-h b{font:700 14px var(--hd);letter-spacing:.24em;color:var(--m-hi)}#inc-log .inc-h span{font-size:9.5px;color:var(--dim);letter-spacing:.12em}
.inc-opts{display:grid;grid-template-columns:1fr 1fr;gap:5px 10px;padding:8px 12px;font-size:10px;letter-spacing:.1em;color:var(--dim);border-bottom:1px solid var(--line2)}
.inc-opts{--lc:var(--ir);gap:8px 10px}.inc-opts label.tg{gap:8px}.inc-opts label.tg:first-child{grid-column:1/-1} /* CJ 10/10: real switches; pop-ups on top, full width */
#inc-card .inc-b[aria-pressed="true"]{color:var(--warn);border-color:var(--warn)}
#inc-list{list-style:none;overflow:auto;padding:4px 0}
#inc-list li{display:grid;grid-template-columns:58px 1fr auto;gap:10px;align-items:center;padding:7px 12px;border-bottom:1px solid var(--line2);font-size:11px}
#inc-list time{color:var(--ir2);letter-spacing:0;white-space:nowrap;font-size:10.5px}
#inc-list b{display:block;font-size:9.5px;color:var(--cy2);letter-spacing:.2em;font-weight:400}
#inc-list li div span{display:block;color:var(--ink)}#inc-list li div .w{color:var(--dim);font-size:10px}
#inc-list .inc-b{margin-left:0}
#inc-list .inc-empty{display:block;color:var(--dim);letter-spacing:.12em;line-height:1.6;padding:16px 12px}
@media (max-width:760px){
  #inc-card{bottom:calc(var(--botb) + var(--both) + 96px);max-height:calc(100dvh - var(--topy) - var(--toph) - var(--botb) - var(--both) - 114px);padding:8px 10px} /* was +64: the card sat 28px over the RESET / INCIDENTS / NEWS WIRE row */
  .inc-rows p{grid-template-columns:70px 1fr;font-size:11px}
  .inc-cams{gap:4px}.inc-cams figcaption{font-size:9px}.inc-cams figcaption span{display:none}
  #inc-tab{bottom:calc(var(--botb) + var(--both) + 62px)}#inc-log{bottom:calc(var(--botb) + var(--both) + 96px)}
}
/* QA 10/13 ts-modules: ESC / MUTE / CLOSE / FLY TO were 19px tall, INCIDENTS tab 24px */
@media (pointer:coarse){.inc-x,.inc-b{min-height:36px;padding:6px 12px}#inc-tab{min-height:36px}}
@media (prefers-reduced-motion:reduce){
  #inc-bar.flash,#inc-vig.on,.inc-dot{animation:none}
  #inc-card.in{transition:none}
}
/* light mode (CJ 10/13 polish): the klaxon card turns into a daylight red-alert slip; the top bar stays solid red */
html[data-theme="light"] #inc-card{background:linear-gradient(180deg,#fde8ea,#fbfdfe 40%);box-shadow:0 0 0 1px color-mix(in srgb,var(--red) 20%,transparent),var(--shadow)}
html[data-theme="light"] #inc-card .inc-h{background:#fde8ea}
