/* ============================================================
   Sentinel One — Command Center
   ============================================================ */
:root{
  --bg:#06090e; --bg2:#080d14; --panel:#0d131c; --panel2:#111926;
  --line:#1b2634; --line2:#26364a; --line3:#31465f;
  --txt:#dce6f2; --dim:#8b9aae; --dim2:#5d6c80;
  --cyan:#22d3ee; --cyan-dim:#0e7490;
  --red:#ff3b30; --red-glow:rgba(255,59,48,.55);
  --amber:#ffb020; --green:#22c55e; --violet:#a78bfa;
  --mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  --rail:322px; --left:404px; --set:560px;
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{
  background:var(--bg);color:var(--txt);direction:rtl;overflow:hidden;
  font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;font-size:14px;
  -webkit-font-smoothing:antialiased;
}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.lat{direction:ltr;display:inline-block}
.dim{color:var(--dim2)}
button{font-family:inherit}

/* ---------- boot ---------- */
#boot{position:fixed;inset:0;z-index:2800;display:grid;place-items:center;background:var(--bg)}
.bootin{display:flex;flex-direction:column;align-items:center;gap:14px;color:var(--dim)}
.bmark{width:44px;height:44px;border:2px solid var(--cyan);border-radius:10px;display:grid;place-items:center;
  color:var(--cyan);font-weight:800;box-shadow:0 0 24px -6px var(--cyan);animation:pulse 1.4s infinite}
.booterr{text-align:center;color:var(--red);display:flex;flex-direction:column;gap:8px;max-width:420px}
.booterr span{color:var(--dim);font-size:13px}
@keyframes pulse{0%,100%{opacity:.45}50%{opacity:1}}

/* ---------- shell ---------- */
#app{display:flex;flex-direction:column;height:100vh}

/* ---------- top bar ---------- */
#topbar{
  flex:0 0 56px;display:flex;align-items:center;gap:16px;padding:0 16px;z-index:40;position:relative;
  background:linear-gradient(180deg,#0d141d,#080c12);border-bottom:1px solid var(--line);
}
#topbar.alert{border-bottom-color:var(--red);box-shadow:0 0 30px -8px var(--red-glow)}
.brand{display:flex;align-items:center;gap:10px}
.brand .mark{width:28px;height:28px;border:1.5px solid var(--cyan);border-radius:6px;display:grid;place-items:center;
  color:var(--cyan);font-weight:800;font-size:13px;box-shadow:0 0 14px -4px var(--cyan)}
.brand .name{font-weight:700;font-size:15px;letter-spacing:.3px;line-height:1.15}
.brand .sub{font-size:9px;color:var(--dim2);letter-spacing:2.4px}
.sep{width:1px;height:26px;background:var(--line)}
.tb-item{display:flex;flex-direction:column;gap:2px;min-width:0}
.tb-item .k{font-size:9px;letter-spacing:1.5px;color:var(--dim2)}
.tb-item .v{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:190px}
.spacer{flex:1}
.tabs{display:flex;background:#0a1018;border:1px solid var(--line2);border-radius:8px;padding:2px;gap:2px}
.tab{border:0;background:transparent;color:var(--dim);padding:6px 16px;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer}
.tab.on{background:var(--cyan-dim);color:#e8feff}

.btn{border:1px solid var(--line2);background:#111a26;color:var(--txt);padding:8px 14px;border-radius:7px;
  font-size:12.5px;font-weight:600;cursor:pointer;transition:.15s;white-space:nowrap}
.btn:hover{background:#16222f;border-color:var(--line3)}
.btn.primary{background:var(--cyan-dim);border-color:var(--cyan);color:#e8feff}
.btn.primary:hover{background:#0891b2}
.btn.danger{background:#3a0f0d;border-color:#7f1d1a;color:#ffb4b0}
.btn.danger:hover{background:#4d1512}
.btn.ghost{background:transparent}
.btn.wide{grid-column:1/-1}
.btn.big{padding:14px 34px;font-size:16px}
.btn:disabled{opacity:.32;cursor:not-allowed}
.iconbtn{padding:7px 10px;font-size:15px}
.iconbtn.muted{opacity:.45}

/* ---------- layout ---------- */
#main{flex:1;display:flex;gap:1px;background:var(--line);min-height:0}
.col{background:var(--bg2);display:flex;flex-direction:column;min-height:0;min-width:0;overflow:hidden}
.rail{flex:0 0 var(--rail)}
.rail.left{flex:0 0 var(--left)}
.center{flex:1 1 auto}
.setcol{flex:0 0 var(--set);display:none;flex-direction:row}
body[data-screen="settings"] .rail{display:none}
body[data-screen="settings"] .logpanel{display:none}
body[data-screen="settings"] .setcol{display:flex}

.panel{display:flex;flex-direction:column;min-height:0;border-bottom:1px solid var(--line)}
.panel:last-child{border-bottom:0}
.panel.grow{flex:1 1 50%}
.ph{flex:0 0 34px;display:flex;align-items:center;gap:8px;padding:0 12px;background:var(--panel);
  border-bottom:1px solid var(--line);font-size:10.5px;letter-spacing:1.6px;color:var(--dim);font-weight:600}
.ph .cnt{margin-inline-start:auto;color:var(--dim2);letter-spacing:0;font-size:10.5px}
.pb{flex:1;overflow-y:auto;min-height:0}
.pb::-webkit-scrollbar,.detailscroll::-webkit-scrollbar,#setbody::-webkit-scrollbar{width:8px}
.pb::-webkit-scrollbar-thumb,.detailscroll::-webkit-scrollbar-thumb,#setbody::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.empty{padding:26px 16px;text-align:center;color:var(--dim2);font-size:12.5px;line-height:1.8}
.empty span{font-size:11px;opacity:.7}
.empty.sm{padding:14px}

/* ---------- incidents ---------- */
.inc{padding:11px 12px;border-bottom:1px solid #131c27;cursor:pointer;border-inline-start:3px solid transparent;
  transition:.15s;position:relative}
.inc:hover{background:#0f1621}
.inc.sel{background:#111c29;border-inline-start-color:var(--cyan)}
.inc.crit{border-inline-start-color:var(--red);background:#170c0e}
.inc.crit.sel{background:#230f11}
.inc.crit::after{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 100% 50%,rgba(255,59,48,.13),transparent 62%);animation:breathe 1.5s ease-in-out infinite}
.inc.done{opacity:.5}
@keyframes breathe{0%,100%{opacity:.35}50%{opacity:1}}
.inc-top{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.tag{font-size:9px;font-weight:800;letter-spacing:1px;padding:3px 7px;border-radius:4px;background:#1c2a3a;color:var(--dim)}
.tag.red{background:var(--red);color:#fff;box-shadow:0 0 12px -2px var(--red-glow)}
.tag.amber{background:#3d2a08;color:var(--amber)}
.tag.green{background:#0d2a1a;color:var(--green)}
.inc-top .glyph{font-size:13px}
.inc-id{margin-inline-start:auto;font-family:var(--mono);font-size:10.5px;color:var(--dim2)}
.inc-title{font-size:13.5px;font-weight:700;margin-bottom:4px}
.inc.crit .inc-title{color:#ff8b84}
.inc-meta{font-size:11px;color:var(--dim);display:flex;gap:10px;flex-wrap:wrap}
.inc-meta .st{color:var(--cyan)}

/* ---------- units ---------- */
.unit{display:flex;align-items:center;gap:9px;padding:8px 12px;border-bottom:1px solid #131c27;font-size:12px;cursor:pointer}
.unit:hover{background:#0f1621}
svg.uglyph{fill:none;stroke:var(--c);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;
  flex:0 0 auto;vertical-align:-3px}
.unit .uid{font-weight:700;font-size:11.5px;min-width:40px;color:var(--txt)}
.unit .unm{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}
.unit .unm em{font-style:normal;font-size:10px;color:var(--dim2)}
.unit .ueta{font-size:11px;color:var(--amber)}
.unit .ust{font-size:9.5px;letter-spacing:.5px;padding:2px 7px;border-radius:4px;background:#16202c;color:var(--dim)}
.unit .ust.enroute{background:#3d2a08;color:var(--amber)}
.unit .ust.onscene{background:#0d2a1a;color:var(--green)}
.unit .ust.busy{background:#2a1010;color:#ff8b84}
.unit .wz{border:1px solid var(--line2);background:#0a1018;color:var(--cyan);width:22px;height:22px;
  border-radius:5px;font-size:10px;font-weight:800;cursor:pointer;flex:0 0 22px}
.unit .wz:hover{background:var(--cyan-dim);color:#fff}

/* ---------- map ---------- */
/* Leaflet מקצה לפאנלים ולפקדים שלו z-index עד 1000. בלי הקשר-ערימה
   משלו, הם מטפסים מעל המודאלים של האפליקציה. isolation + z-index
   כולאים את כל הערימה הפנימית של המפה בתוך המסגרת שלה. */
#mapwrap{flex:1;position:relative;min-height:0;background:#070b11;
  z-index:0;isolation:isolate;overflow:hidden}
#map{position:absolute;inset:0}
/* הסינון חל רק על רינדורים בהירים שאין להם גרסה כהה מקורית */
.s1-tiles.filtered{filter:invert(1) hue-rotate(185deg) brightness(.82) contrast(1.05) saturate(.6)}
.leaflet-container{background:#070b11;font-family:inherit}
.leaflet-control-zoom a{background:#0d131c!important;color:var(--txt)!important;border-color:var(--line2)!important}
.leaflet-control-attribution{background:rgba(8,12,18,.8)!important;color:var(--dim2)!important;font-size:9px!important}
.leaflet-control-attribution a{color:var(--dim)!important}
/* Leaflet ממקם שכבות-על ב-transform ומניח שהמיקום הסטטי של האלמנט
   הוא בפינה השמאלית-עליונה של השכבה. סמני מפה מקבלים left/top:0
   מ-leaflet.css, אבל חלוניות ריחוף ו-popup אינם מקבלים — ולכן בעמוד
   RTL המיקום הסטטי שלהם נגזר מהקצה הימני והם נוחתים רוחב שלם משמאל
   לסמן. קיבוע left/top מנטרל את התלות בכיווניות העמוד. */
.leaflet-tooltip,
.leaflet-popup{left:0;top:0}

.s1-tip{background:#0d131c!important;border:1px solid var(--line2)!important;color:var(--txt)!important;
  font-size:11.5px!important;border-radius:6px!important;box-shadow:0 6px 20px -8px #000!important}
.s1-tip::before{border-top-color:var(--line2)!important}
.s1-route{animation:dash 1.2s linear infinite;stroke-dasharray:12 8}
@keyframes dash{to{stroke-dashoffset:-20}}

/* סמן יחידה: סמל רכב + מספר, בתג בולט וקריא */
.m-unit{display:flex;align-items:center;gap:3px;height:26px;padding:0 6px 0 4px;border-radius:13px;
  background:#070c13;border:2px solid var(--c);color:var(--c);
  box-shadow:0 2px 10px -2px rgba(0,0,0,.85), 0 0 0 1px rgba(0,0,0,.5),
             0 0 12px -4px var(--c);
  white-space:nowrap}
.m-unit .mu-i{fill:none;stroke:var(--c);stroke-width:1.9;
  stroke-linecap:round;stroke-linejoin:round;flex:0 0 17px}
.m-unit .mu-id{font-family:var(--mono);font-size:11px;font-weight:800;letter-spacing:.2px}
.m-unit.enroute{animation:breathe 1.1s infinite}
.m-unit.onscene{background:#081c12}
.m-unit.busy{background:#150a0b}
.m-inc{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:13px;
  background:var(--c);border:2px solid #06090e;box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 30%,transparent)}
.m-inc.p1{animation:ping 1.5s ease-out infinite}
.m-inc.closed{opacity:.45}
@keyframes ping{0%{box-shadow:0 0 0 0 var(--red-glow)}70%{box-shadow:0 0 0 26px rgba(255,59,48,0)}100%{box-shadow:0 0 0 0 rgba(255,59,48,0)}}
.s1-vertex{cursor:pointer}

.maphint{position:absolute;top:12px;left:50%;transform:translateX(-50%);z-index:1100;display:none;
  background:rgba(10,16,24,.94);border:1px solid var(--cyan);border-radius:8px;padding:9px 14px;
  font-size:12.5px;align-items:center;gap:10px;backdrop-filter:blur(8px);box-shadow:0 8px 30px -10px #000}
.maphint.show{display:flex}
.maphint .ti{color:var(--c)}
.maphint .cancel{border:1px solid var(--line2);background:transparent;color:var(--dim);border-radius:5px;
  padding:3px 9px;font-size:11px;cursor:pointer}
.offline{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:1100;display:none;
  background:#3a0f0d;border:1px solid #7f1d1a;color:#ffb4b0;padding:8px 14px;border-radius:7px;font-size:12px}
.offline.show{display:block}

/* ---------- log ---------- */
.logpanel{flex:0 0 176px}
.tl-row{display:flex;gap:10px;padding:6px 12px;font-size:12px;border-bottom:1px solid #101822;animation:slideIn .28s ease-out}
@keyframes slideIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.tl-row .t{font-family:var(--mono);font-size:11px;color:var(--dim2);flex:0 0 58px}
.tl-row .b{flex:1;color:var(--dim);line-height:1.5}
.tl-row .b b{color:var(--txt)}
.tl-row.hi .b b{color:var(--red)}
.tl-row.ok .b b{color:var(--green)}
.tl-row.cy .b b{color:var(--cyan)}
.tl-row.warn{background:#150f06}
.tl-row.warn .b{color:#ffd08a}
.tl-row.warn .b b{color:var(--amber)}

/* ---------- detail card ---------- */
.detailscroll{flex:1 1 auto;overflow-y:auto}
.dcard{padding:13px;border-bottom:1px solid var(--line)}
.dhead{display:flex;gap:11px;align-items:flex-start;margin-bottom:12px}
.dicon{width:44px;height:44px;flex:0 0 44px;border-radius:10px;display:grid;place-items:center;font-size:20px;
  background:#0f1722;border:1px solid var(--c);color:var(--c)}
.dcard.crit .dicon{box-shadow:0 0 22px -6px var(--c)}
.dtitle{flex:1;min-width:0}
.dtitle h3{font-size:16px;font-weight:700;margin-bottom:3px}
.dsub{font-size:11.5px;color:var(--dim)}
.dtimer{text-align:center;flex:0 0 auto}
.dtimer span{font-size:16px;font-weight:700;color:var(--cyan);display:block}
.dtimer em{font-style:normal;font-size:9.5px;color:var(--dim2)}
.dtimer.over span{color:var(--red)}
.drow{display:flex;gap:10px;padding:5px 0;font-size:12.5px;border-top:1px solid #101822}
.drow .k{flex:0 0 74px;color:var(--dim2);font-size:11.5px}
.drow .v{flex:1;min-width:0;word-break:break-word}
.warn{margin-top:10px;padding:8px 10px;background:#150f06;border:1px solid #3d2a08;border-radius:6px;
  color:#ffd08a;font-size:12px}
.warn.inline{margin:0;display:block}
.pois{margin-top:12px;border-top:1px solid var(--line);padding-top:9px}
.poih{font-size:10px;letter-spacing:1.4px;color:var(--dim2);margin-bottom:6px}
.poir{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:12px}
.pd{width:8px;height:8px;border-radius:50%;background:var(--c);flex:0 0 8px;box-shadow:0 0 6px -1px var(--c)}
.poir .pn{font-weight:600}
.poir .pt{color:var(--dim2);font-size:11px}
.poir .px{margin-inline-start:auto;color:var(--amber);font-size:11.5px}

#actions{flex:0 0 auto;padding:11px;display:grid;grid-template-columns:1fr 1fr;gap:8px;
  background:var(--panel);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
#actions:empty{display:none}
#actions .btn{padding:11px 8px}
.trpanel{flex:0 0 210px}
.tr{padding:9px 12px;font-size:12.5px;line-height:1.5;border-bottom:1px solid #101822;animation:slideIn .28s}
.tr .who{font-size:10px;letter-spacing:1.1px;color:var(--dim2);margin-bottom:3px;display:flex;gap:8px}
.tr.off .who{color:var(--amber)}
.tr.dsp .who{color:var(--cyan)}
.tr.off .txt{color:#ffd79a;font-weight:600}

/* ---------- settings ---------- */
#setnav{flex:0 0 168px;background:var(--panel);border-inline-end:1px solid var(--line);
  display:flex;flex-direction:column;padding:10px 8px;gap:3px;overflow-y:auto}
.snav{border:0;background:transparent;color:var(--dim);text-align:start;padding:9px 12px;border-radius:7px;
  font-size:12.5px;font-weight:600;cursor:pointer}
.snav:hover{background:#131c27;color:var(--txt)}
.snav.on{background:#132434;color:var(--cyan)}
#setbody{flex:1;overflow-y:auto;padding:20px 22px;min-width:0}
.sec h2{font-size:19px;font-weight:700;margin-bottom:6px}
.sec h3{font-size:13px;font-weight:700;margin:22px 0 8px;color:var(--cyan);letter-spacing:.4px}
.lead{font-size:12.5px;color:var(--dim);line-height:1.65;margin-bottom:16px;max-width:60ch}
.frow{display:flex;gap:14px;align-items:flex-start;padding:9px 0;border-bottom:1px solid #101822}
.fk{flex:0 0 168px;font-size:12.5px;color:var(--dim);padding-top:7px;display:flex;flex-direction:column;gap:3px}
.fk em{font-style:normal;font-size:10.5px;color:var(--dim2);line-height:1.5}
.fv{flex:1;min-width:0}
.fin{width:100%;background:#0a1018;border:1px solid var(--line2);border-radius:6px;color:var(--txt);
  padding:8px 10px;font-size:12.5px;font-family:inherit}
.fin:focus{outline:0;border-color:var(--cyan)}
.fin.sm{width:auto;min-width:130px}
.fin.xs{width:66px;padding:4px 6px}
.fin.ta{height:96px;font-family:var(--mono);font-size:10.5px;resize:vertical;direction:ltr}
.pair{display:flex;gap:8px}
.fchk{width:17px;height:17px;accent-color:var(--cyan);margin-top:6px}
.frange{width:100%;accent-color:var(--cyan);margin-top:8px}
.fbtns{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:16px 0}
.mlabel{font-size:10.5px;letter-spacing:1.4px;color:var(--dim2);margin:16px 0 7px}
.hintbox{background:#0d1f2a;border:1px solid var(--cyan-dim);border-radius:7px;padding:10px 12px;
  font-size:12px;color:#a9e9f5;margin:12px 0}
.wstat{font-size:12px}
.wstat .ok{color:var(--green)} .wstat .err{color:var(--red)}
.tablewrap{border:1px solid var(--line);border-radius:8px;overflow:auto;margin-top:10px;max-height:46vh}
.tbl{width:100%;border-collapse:collapse;font-size:12.5px}
.tbl th{background:var(--panel);text-align:start;padding:9px 11px;font-size:10.5px;letter-spacing:1.2px;
  color:var(--dim2);position:sticky;top:0;border-bottom:1px solid var(--line)}
.tbl td{padding:8px 11px;border-bottom:1px solid #101822;vertical-align:middle}
.tbl tr:hover td{background:#0f1621}
.tbl em{font-style:normal;margin-inline-start:6px;font-size:10.5px}
.mini{border:1px solid var(--line2);background:#111a26;color:var(--dim);border-radius:5px;padding:3px 9px;
  font-size:11px;cursor:pointer;margin-inline-end:4px}
.mini:hover{color:var(--txt);border-color:var(--line3)}
.mini.del:hover{color:#ffb4b0;border-color:#7f1d1a;background:#2a0f0d}

/* ---------- modal ---------- */
.modal{position:fixed;inset:0;z-index:2000;display:none;place-items:center;background:rgba(3,6,10,.8);backdrop-filter:blur(4px)}
.modal.show{display:grid}
.mbox{width:min(560px,92vw);max-height:86vh;display:flex;flex-direction:column;background:var(--panel);
  border:1px solid var(--line2);border-radius:12px;box-shadow:0 30px 80px -20px #000;animation:pop .25s cubic-bezier(.2,1.2,.4,1)}
.mbox.wide{width:min(880px,94vw)}
@keyframes pop{from{transform:scale(.94);opacity:0}to{transform:none;opacity:1}}
.mhead{display:flex;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line);font-weight:700;font-size:15px}
.mhead .x{margin-inline-start:auto;border:0;background:transparent;color:var(--dim2);font-size:16px;cursor:pointer}
.mhead .x:hover{color:var(--txt)}
.mbody{padding:16px;overflow-y:auto}
.mnote{margin-top:14px;font-size:11.5px;color:var(--dim2);line-height:1.6}
.loading{padding:30px;text-align:center;color:var(--dim);font-size:13px}

.typegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px}
.tcell{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:start;padding:12px;
  background:#0a1018;border:1px solid var(--line2);border-radius:9px;cursor:pointer;transition:.15s;color:var(--txt)}
.tcell:hover{border-color:var(--cyan);background:#0f1c26}
.tcell .ti{font-size:17px;color:var(--c)}
.tcell .tl{font-size:13px;font-weight:700}
.tcell .tp{font-size:10.5px;color:var(--dim2)}
.tcell .tplan{font-size:10.5px;color:var(--dim)}

.ranklist{display:flex;flex-direction:column;gap:6px}
.rank{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#0a1018;border:1px solid var(--line2);
  border-radius:8px;cursor:pointer;font-size:12.5px;transition:.15s}
.rank:hover{border-color:var(--cyan);background:#0f1c26}
.rank.best{border-color:var(--green);background:#0b1a13}
.rank .rn{color:var(--dim2);width:16px}
.rank .rg{font-size:13px}
.rank .rname{flex:1;display:flex;flex-direction:column}
.rank .rname em{font-style:normal;font-size:10.5px;color:var(--dim2)}
.rank .rt{color:var(--amber);font-weight:700}
.rank .rd{color:var(--dim);font-size:11.5px}

.scenlist{display:flex;flex-direction:column;gap:8px}
.scen{display:flex;flex-direction:column;gap:4px;align-items:flex-start;text-align:start;padding:13px 14px;
  background:#0a1018;border:1px solid var(--line2);border-radius:9px;cursor:pointer;color:var(--txt);transition:.15s}
.scen:hover{border-color:var(--cyan);background:#0f1c26}
.scen b{font-size:13.5px}
.scen em{font-style:normal;font-size:11.5px;color:var(--dim)}

/* ---------- takeover ---------- */
.takeover{position:fixed;inset:0;z-index:2200;display:none;place-items:center;
  background:radial-gradient(circle at 50% 45%,rgba(120,10,6,.92),rgba(4,6,9,.975));backdrop-filter:blur(3px)}
.takeover.on{display:grid;animation:slideIn .22s}
.to-box{text-align:center;animation:pop .4s cubic-bezier(.2,1.4,.4,1)}
.to-siren{width:96px;height:96px;margin:0 auto 22px;border:3px solid var(--c,var(--red));border-radius:50%;
  display:grid;place-items:center;font-size:40px;color:var(--c,var(--red));
  box-shadow:0 0 60px -8px var(--c,var(--red));animation:breathe .85s infinite}
.to-kicker{font-size:12px;letter-spacing:5px;color:#ff8b84;margin-bottom:12px}
.to-title{font-size:46px;font-weight:900;letter-spacing:-1px;margin-bottom:10px;text-shadow:0 0 40px var(--red-glow)}
.to-sub{font-size:17px;color:#ffc9c5;margin-bottom:6px}
.to-meta{font-size:13px;color:#e59b96;margin-bottom:26px}
.to-timer{font-size:13px;color:#ff8b84;margin-top:16px}

/* ---------- toast ---------- */
.toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%) translateY(20px);z-index:2400;
  background:#0d131c;border:1px solid var(--line2);border-radius:9px;padding:12px 20px;font-size:13px;
  box-shadow:0 20px 50px -16px #000;opacity:0;pointer-events:none;transition:.25s;max-width:80vw}
.toast.show{opacity:1;transform:translateX(-50%)}
.toast.cy{border-color:var(--cyan)}
.toast.err{border-color:#7f1d1a;background:#2a0f0d;color:#ffb4b0}

@media(max-width:1500px){:root{--rail:288px;--left:368px;--set:500px}}
@media(max-width:1280px){
  #topbar{gap:10px;padding:0 10px}
  .tb-item:nth-of-type(3){display:none}
  :root{--rail:256px;--left:330px;--set:440px}
}

/* ============================================================
   תפקידים — מוקדנית ומנהל משמרת
   ============================================================ */
.whoami{background:#0a1018;border:1px solid var(--line2);border-radius:7px;color:var(--txt);
  padding:7px 10px;font-size:12px;font-family:inherit;max-width:220px}
.whoami:focus{outline:0;border-color:var(--cyan)}
#myqueue.hot{color:var(--red)}
.own{font-size:9.5px;font-weight:700;letter-spacing:.4px;padding:2px 6px;border-radius:4px;
  background:#16202c;color:var(--dim)}
.own.me{background:#0d2a1a;color:var(--green)}
.own.pool{background:#3d2a08;color:var(--amber)}
.own.sup{background:#2a1f3d;color:var(--violet)}
.inc.unassigned{border-inline-start-color:var(--amber)}

body[data-screen="supervisor"] #main{display:none}
body[data-screen="supervisor"] #supervisor{display:flex}
#supervisor{flex:1;display:none;flex-direction:column;min-height:0;background:var(--bg2)}

/* ---------- התרעת עדיפות 1 למנהל ---------- */
.svalert{display:none;align-items:center;gap:14px;padding:12px 18px;background:#2a0b09;
  border-bottom:2px solid var(--red);animation:slideIn .25s}
.svalert.show{display:flex}
.svalert .sa-i{font-size:20px;color:var(--c)}
.svalert b{font-size:15px;color:#ff8b84}
.svalert span{font-size:13px;color:#ffc9c5}
.svalert .sa-d{margin-inline-start:auto;color:var(--amber);font-size:12.5px}

/* ---------- KPI ---------- */
#kpi{display:grid;grid-template-columns:repeat(8,1fr);gap:1px;background:var(--line);
  border-bottom:1px solid var(--line);flex:0 0 auto}
.kpi{background:var(--panel);padding:12px 10px;display:flex;flex-direction:column;gap:3px;align-items:center;text-align:center}
.kpi .kv{font-size:22px;font-weight:800;font-family:var(--mono);color:var(--txt);line-height:1}
.kpi .kl{font-size:10px;letter-spacing:.9px;color:var(--dim2)}
.kpi.red .kv{color:var(--red)}
.kpi.amber .kv{color:var(--amber)}
.kpi.ok .kv{color:var(--green)}

.svmain{flex:1;display:flex;gap:1px;background:var(--line);min-height:0}
.svleft{flex:1 1 62%;background:var(--bg2);display:flex;flex-direction:column;min-width:0}
.svright{flex:1 1 38%;background:var(--bg2);display:flex;flex-direction:column;min-width:0}
.svhead{flex:0 0 40px;display:flex;align-items:center;gap:12px;padding:0 14px;background:var(--panel);
  border-bottom:1px solid var(--line);font-size:12px;font-weight:700;letter-spacing:.5px}
.svhead .dim{font-weight:400;font-size:11px}
.ovfilter{margin-inline-start:auto;display:flex;gap:3px}
.ovf{border:1px solid var(--line2);background:transparent;color:var(--dim);border-radius:5px;
  padding:4px 11px;font-size:11px;cursor:pointer;font-family:inherit}
.ovf.on{background:var(--cyan-dim);border-color:var(--cyan);color:#e8feff}

/* ---------- לוח המוקדניות ---------- */
#board{flex:1;overflow-y:auto;padding:14px;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;align-content:start}
#board::-webkit-scrollbar,#ovbody::-webkit-scrollbar{width:8px}
#board::-webkit-scrollbar-thumb,#ovbody::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.dcard2{background:var(--panel);border:1px solid var(--line2);border-radius:11px;padding:13px;
  display:flex;flex-direction:column;gap:11px;transition:.15s}
.dcard2.break{opacity:.62}
.dcard2.offline{opacity:.42}
.dcard2.over{border-color:var(--amber);box-shadow:0 0 22px -12px var(--amber)}
.dcard2.hasp1{border-color:var(--red);box-shadow:0 0 24px -12px var(--red-glow)}
.dcard2.pool{border-style:dashed;border-color:var(--line3);background:#0a1018}
.dcard2.pool.hot{border-color:var(--amber);background:#150f06}
.dc-head{display:flex;align-items:center;gap:10px}
.dc-av{width:36px;height:36px;flex:0 0 36px;border-radius:9px;background:#132434;border:1px solid var(--line2);
  display:grid;place-items:center;font-weight:800;color:var(--cyan);font-size:15px}
.dc-av.pool{color:var(--amber);border-color:#3d2a08;background:#1a1206}
.dc-id{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.dc-id b{font-size:13.5px}
.dc-id span{font-size:10.5px}
.dstat{background:#0a1018;border:1px solid var(--line2);border-radius:6px;color:var(--dim);
  padding:4px 7px;font-size:10.5px;font-family:inherit;cursor:pointer}
.dstat.available{color:var(--green);border-color:#14532d}
.dstat.break{color:var(--amber);border-color:#3d2a08}
.dstat.offline{color:var(--dim2)}
.dc-load{display:flex;flex-direction:column;gap:5px}
.lbar{height:5px;background:#0a1018;border-radius:3px;overflow:hidden}
.lbar i{display:block;height:100%;background:linear-gradient(90deg,var(--cyan),var(--green));transition:width .4s}
.dcard2.over .lbar i{background:linear-gradient(90deg,var(--amber),var(--red))}
.lnum{font-size:10.5px;color:var(--dim2)}
.dc-q{display:flex;flex-direction:column;gap:5px;min-height:34px}
.qempty{font-size:11.5px;color:var(--dim2);padding:8px;text-align:center}
.qchip{display:flex;align-items:center;gap:8px;padding:7px 9px;background:#0a1018;border:1px solid var(--line);
  border-radius:7px;cursor:pointer;font-size:12px;transition:.15s}
.qchip:hover{border-color:var(--cyan);background:#0f1c26}
.qchip.p1{border-color:#7f1d1a;background:#170c0e}
.qchip.p1 .qt{color:#ff8b84;font-weight:600}
.qchip.over{box-shadow:inset 3px 0 0 var(--amber)}
.qi{color:var(--c);font-size:12px;flex:0 0 14px;text-align:center}
.qi.big{font-size:22px}
.qt{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qa{font-size:10.5px;color:var(--dim2)}
.qchip.over .qa{color:var(--amber)}
.dc-foot{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--dim2);
  border-top:1px solid var(--line);padding-top:9px}
.dc-foot .mini{margin-inline-start:auto}

/* ---------- ראייה כללית ---------- */
#ovbody{flex:1;overflow-y:auto}
.ovtbl{font-size:12px}
.ovtbl tbody tr{cursor:pointer}
.ovtbl tr.rp1 td{background:#150a0c}
.ovtbl tr.rp1:hover td{background:#1d0e10}
.ovtbl tr.rover td{box-shadow:inset 0 -1px 0 #3d2a08}
.overT{color:var(--amber)}
.amberT{color:var(--amber)}
.rcard{display:flex;align-items:center;gap:12px;padding:12px;background:#0a1018;
  border:1px solid var(--line2);border-radius:9px;margin-bottom:6px}
.rcard div{flex:1;display:flex;flex-direction:column;gap:2px}
.rcard span.dim{font-size:11.5px}
.rank.off{opacity:.5}

@media(max-width:1400px){#kpi{grid-template-columns:repeat(4,1fr)}}
@media(max-width:1100px){.svmain{flex-direction:column}}

/* ============================================================
   אייקוני נקודות עניין
   ============================================================ */
/* דיסקית זכוכית מטושטשת מתחת לסמל נקודת העניין.
   grid + place-items ממרכז את הסמל לדיסקית בדיוק מוחלט. */
.m-poi{width:30px;height:30px;display:grid;place-items:center;cursor:pointer;
  transition:transform .12s ease}
.m-poi > *{grid-area:1/1}
.m-poi .poi-disc{
  width:30px;height:30px;border-radius:50%;
  /* שקוף, מעט בהיר, ומטשטש את המפה שמתחתיו */
  background:rgba(255,255,255,.11);
  -webkit-backdrop-filter:blur(5px) saturate(1.15);
  backdrop-filter:blur(5px) saturate(1.15);
  border:1px solid color-mix(in srgb,var(--c) 38%,rgba(255,255,255,.20));
  box-shadow:0 2px 8px -3px rgba(0,0,0,.6),
             inset 0 1px 0 rgba(255,255,255,.16);
}
.m-poi .poi-glyph{
  fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:2;
  stroke:var(--c);                                   /* הסמל בצבע הסוג */
  filter:drop-shadow(0 1px 2px rgba(0,0,0,.55));     /* הפרדה מהרקע בלי לכהות את הצבע */
}
.m-poi:hover{transform:scale(1.16)}
.m-poi:hover .poi-disc{background:rgba(255,255,255,.18)}
svg.pglyph{fill:none;stroke:var(--c);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;
  flex:0 0 auto;vertical-align:-2px}
.tbl svg.pglyph{margin-inline-end:6px}
.poir svg.pglyph{flex:0 0 14px}

/* ============================================================
   מסך התחברות
   ============================================================ */
body[data-auth="out"] #app,
body[data-auth="out"] .takeover,
body[data-auth="out"] .modal{display:none!important}
body[data-auth="out"] #login{display:grid}
#login{position:fixed;inset:0;z-index:2600;display:none;place-items:center;overflow-y:auto;
  background:radial-gradient(circle at 50% 22%,#0f1c28,#05080d 68%)}
.lg-box{width:min(720px,94vw);margin:36px auto;background:var(--panel);border:1px solid var(--line2);
  border-radius:16px;padding:30px 34px 26px;box-shadow:0 40px 100px -30px #000;animation:pop .3s cubic-bezier(.2,1.2,.4,1)}
.lg-brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.lg-brand .mark{width:38px;height:38px;border:1.8px solid var(--cyan);border-radius:9px;display:grid;
  place-items:center;color:var(--cyan);font-weight:800;font-size:15px;box-shadow:0 0 20px -5px var(--cyan)}
.lg-t{font-size:18px;font-weight:700;line-height:1.15}
.lg-st{font-size:9.5px;color:var(--dim2);letter-spacing:2.6px}
.lg-head h1{font-size:23px;font-weight:700;margin-bottom:4px}
.lg-head p{font-size:12.5px;color:var(--dim);margin-bottom:18px}
.lg-muniwrap{display:flex;align-items:center;gap:12px;margin-bottom:20px;
  padding-bottom:18px;border-bottom:1px solid var(--line)}
.lg-muniwrap span{font-size:11.5px;color:var(--dim2);flex:0 0 auto}
.lg-muniwrap select{flex:1;background:#0a1018;border:1px solid var(--line2);border-radius:7px;
  color:var(--txt);padding:9px 11px;font-size:13px;font-family:inherit}
.lg-muniwrap select:focus{outline:0;border-color:var(--cyan)}
.lg-group{font-size:10px;letter-spacing:1.7px;color:var(--dim2);margin:14px 0 9px}
.lg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:9px}
.lguser{display:flex;flex-direction:column;align-items:flex-start;gap:3px;text-align:start;
  padding:12px 13px;background:#0a1018;border:1px solid var(--line2);border-radius:10px;
  cursor:pointer;color:var(--txt);transition:.15s;position:relative}
.lguser:hover:not(:disabled){border-color:var(--cyan);background:#0f1c26}
.lguser.on{border-color:var(--cyan);background:#112532;box-shadow:0 0 0 1px var(--cyan) inset}
.lguser:disabled{opacity:.35;cursor:not-allowed}
.lguser.break{opacity:.68}
.lg-av{width:30px;height:30px;border-radius:8px;background:#132434;border:1px solid var(--line2);
  display:grid;place-items:center;font-weight:800;color:var(--cyan);font-size:13px;margin-bottom:5px}
.lg-av.sup{color:var(--violet);border-color:#3b2d5c;background:#1c1633}
.lguser.sup.on{border-color:var(--violet);box-shadow:0 0 0 1px var(--violet) inset}
.lg-n{font-size:13px;font-weight:700}
.lg-s{font-size:10.5px;color:var(--dim2)}
.lg-auth{display:flex;gap:9px;margin-top:22px}
#lg-code{flex:1;background:#0a1018;border:1px solid var(--line2);border-radius:8px;color:var(--txt);
  padding:12px 14px;font-size:15px;font-family:var(--mono);letter-spacing:4px;text-align:center;direction:ltr}
#lg-code:focus{outline:0;border-color:var(--cyan)}
#lg-enter{padding:12px 30px;font-size:14px}
.lg-err{min-height:19px;margin-top:10px;font-size:12.5px;color:#ff8b84;text-align:center}
.lg-err b{color:var(--cyan)}
.lg-hint{display:block;margin:2px auto 0;border:0;background:transparent;color:var(--dim2);
  font-size:11.5px;cursor:pointer;text-decoration:underline;font-family:inherit}
.lg-hint:hover{color:var(--dim)}
.lg-note{margin-top:20px;padding-top:16px;border-top:1px solid var(--line);
  font-size:11.5px;color:var(--dim2);line-height:1.7;text-align:center}

.qsum{display:flex;flex-wrap:wrap;gap:14px;padding:11px 13px;background:#0a1018;border:1px solid var(--line2);
  border-radius:9px;margin-bottom:12px;font-size:12px;color:var(--dim)}
.qsum b{color:var(--txt)}
.svalert .sa-p{font-size:11.5px;color:var(--dim);padding:3px 9px;border:1px solid #7f1d1a;border-radius:5px}
.s1-acc{transition:none}
.s1-tip .tip-gps{color:var(--dim2);font-size:10.5px}
.s1-tip .tip-gps.poor{color:var(--amber)}
.unit .ugps{font-size:10px;font-family:var(--mono);color:var(--amber);
  border:1px solid #3d2a08;background:#1a1206;border-radius:4px;padding:1px 5px}

/* ---------- כרטיס יחידה בריחוף ---------- */
.unit-tip{padding:0!important;min-width:196px}
.ut{padding:9px 11px}
.ut-h{display:flex;align-items:center;gap:7px;margin-bottom:3px}
.ut-h .ut-g{color:var(--c);font-size:12px}
.ut-h .ut-id{font-weight:800;font-size:13px;color:var(--c)}
.ut-h .ut-st{margin-inline-start:auto;font-size:9.5px;letter-spacing:.4px;padding:2px 6px;
  border-radius:4px;background:#16202c;color:var(--dim)}
.ut-h .ut-st.enroute{background:#3d2a08;color:var(--amber)}
.ut-h .ut-st.onscene{background:#0d2a1a;color:var(--green)}
.ut-h .ut-st.busy{background:#2a1010;color:#ff8b84}
.ut-n{font-size:12px;color:var(--txt);margin-bottom:7px;padding-bottom:6px;border-bottom:1px solid var(--line)}
.ut-r{display:flex;gap:10px;font-size:11px;padding:2px 0}
.ut-r span{color:var(--dim2);flex:0 0 62px}
.ut-r b{color:var(--txt);font-weight:600;flex:1;min-width:0}
.ut-r .poorv{color:var(--amber)}

/* ---------- בחירת היקף כוחות ---------- */
.planlist{display:flex;flex-direction:column;gap:7px}
.planrow{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#0a1018;
  border:1px solid var(--line);border-radius:9px;transition:.15s}
.planrow.on{border-color:var(--line3);background:#0d1620}
.planrow .pk{display:flex;align-items:center;gap:8px;flex:0 0 176px}
.planrow .pk b{font-size:12.5px}
.planrow .pk em{font-style:normal;font-size:10.5px;color:var(--dim2)}
.stepper{display:flex;align-items:center;gap:2px;background:#070c13;border:1px solid var(--line2);
  border-radius:7px;padding:2px;flex:0 0 auto}
.stepper b{min-width:26px;text-align:center;font-size:13px}
.stp{width:26px;height:24px;border:0;background:transparent;color:var(--cyan);font-size:15px;
  cursor:pointer;border-radius:5px;font-family:inherit}
.stp:hover:not(:disabled){background:#16222f}
.stp:disabled{color:var(--dim2);cursor:not-allowed}
.planrow .pick{flex:1;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}
.pu{font-size:11px;background:#0d1a24;border:1px solid var(--line2);border-radius:5px;padding:3px 7px;color:var(--amber)}
.pu b{color:var(--txt);margin-inline-end:5px}
.pu.none{color:var(--dim2);background:transparent;border-color:transparent}
.plantotal{display:flex;align-items:center;gap:10px;margin-top:14px;padding-top:13px;
  border-top:1px solid var(--line);font-size:13px}
.plantotal span{flex:1}
.plantotal b{color:var(--cyan);font-size:15px}

/* ---------- שידור חי מצלמת גוף ---------- */
.vidpanel{flex:0 0 auto}
.vidpanel .ph .mini{margin-inline-start:8px}
#vidwrap{position:relative;background:#000;height:186px;overflow:hidden;
  min-height:120px;max-height:70vh}
/* ידית גרירה לשינוי גובה השידור. יושבת על התמונה עצמה ולא מתחתיה,
   כדי לא לגזול גובה מהפאנל כשלא נוגעים בה. */
#vidgrip{position:absolute;left:0;right:0;bottom:0;height:9px;cursor:ns-resize;
  z-index:6;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(to top,rgba(0,0,0,.55),transparent)}
#vidgrip::after{content:"";width:34px;height:2px;border-radius:2px;
  background:rgba(232,244,255,.34);transition:background .15s,width .15s}
#vidgrip:hover::after{background:var(--cyan);width:46px}
body.vidresizing{cursor:ns-resize;user-select:none}
body.vidresizing #vidgrip::after{background:var(--cyan);width:46px}
#pov{width:100%;height:100%;display:block}
/* צילום אמיתי ממצלמת גוף. כשיש קובץ לאירוע — הווידאו מכסה את הקנבס,
   וההדמיה המצוירת נשארת כגיבוי לאירועים שאין להם צילום. */
#povvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  display:none;background:#000}
#vidwrap.hasvid #povvid{display:block}
#vidwrap.hasvid #pov{visibility:hidden}
/* גרעין וסריקה — מה שהופך צילום נקי לפיד של מצלמת גוף */
#vidgrain{position:absolute;inset:0;pointer-events:none;display:none;
  background:
    repeating-linear-gradient(0deg,rgba(0,0,0,.16) 0 1px,transparent 1px 3px),
    radial-gradient(ellipse at center,transparent 42%,rgba(0,0,0,.62) 100%);
  mix-blend-mode:multiply}
#vidwrap.hasvid #vidgrain{display:block}
#vidoff{position:absolute;inset:0;display:grid;place-items:center;background:#080c11;
  color:var(--dim2);font-size:12px;letter-spacing:1px;gap:6px;text-align:center;align-content:center}
#vidoff .sm{font-size:9.5px;letter-spacing:2.4px}
/* שכבת המידע יושבת על תמונת מצלמה, שאין לה כיווניות טקסט.
   מיקום פיזי (left/right) ולא לוגי — אחרת הפינות מתהפכות ב-RTL
   ושתי הפינות העליונות נוחתות זו על זו. */
.vid-hud{position:absolute;pointer-events:none;direction:ltr;
  font-family:var(--mono);font-size:9.5px;color:#e8f4ff;
  text-shadow:0 1px 3px #000;display:none;white-space:nowrap}
.vh-tl{top:7px;left:7px}
.vh-tr{top:7px;right:7px}
.vh-bl{bottom:12px;left:7px}
.vh-br{bottom:12px;right:7px}
.vid-hud .rec{width:7px;height:7px;border-radius:50%;background:var(--red);
  animation:breathe 1s infinite;display:inline-block;margin-inline-end:4px}

/* ---------- ערוץ שמע ---------- */
.audio-head{display:flex;align-items:center;gap:9px;padding:8px 12px;background:var(--panel);
  border-bottom:1px solid var(--line);border-top:1px solid var(--line);flex:0 0 auto}
.audio-head .mic{width:9px;height:9px;border-radius:50%;background:var(--dim2);flex:0 0 9px}
.audio-head .mic.live{background:var(--green);box-shadow:0 0 10px var(--green);animation:breathe 1.2s infinite}
.audio-head .alabel{font-size:11.5px;letter-spacing:.3px;color:var(--dim)}
.audio-head .mic.live ~ .alabel{color:var(--green)}
.audio-head .atime{margin-inline-start:auto;font-size:11px;color:var(--dim2)}
#wave{width:100%;height:46px;display:block;background:#080d13;border-bottom:1px solid var(--line);flex:0 0 auto}
.trpanel{flex:1 1 auto;min-height:96px}
.chanrow{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.chan{font-size:11px;padding:4px 9px;border-radius:6px;background:#0d2a1a;color:var(--green);
  border:1px solid #14532d}

/* ---------- מסכת שטח מחוץ לתחום השיפוט ---------- */
/* יושבת בפאנל s1mask של Leaflet, בין שכבת האריחים (200) לשכבת
   הווקטורים (400): הטשטוש חל על מפת הרקע בלבד. גבול הרשות,
   המסלולים, עיגולי הדיוק, הסמנים והחלוניות מצוירים אחריה ולכן
   נשארים חדים — גם יחידה מחוץ לתחום חייבת להישאר קריאה.
   המיקום והמידות נקבעים ב-JS בקואורדינטות השכבה. */
.s1-mask{
  position:absolute;pointer-events:none;display:none;
  background:rgba(4,7,12,var(--mask-op,.55));
  -webkit-backdrop-filter:blur(var(--mask-blur,3px)) saturate(.55);
  backdrop-filter:blur(var(--mask-blur,3px)) saturate(.55);
  transition:opacity .12s
}
.s1-mask.hidden{opacity:0}
.fv .pair .frange{flex:1}
.zval{flex:0 0 62px;text-align:center;color:var(--cyan);font-size:12px}

/* ---------- בחירת מקור ההתרעה ---------- */
.srcbox{width:min(940px,95vw)}
.mhead .srch-i{color:var(--c);font-size:17px;margin-inline-end:8px}
.srcbody{display:flex;gap:16px;padding:0;overflow:hidden;min-height:0}
.srcmain{flex:1 1 62%;display:flex;flex-direction:column;min-width:0;padding:16px 0 16px 0;
  padding-inline-start:16px}
.srcsearch{margin-bottom:10px;flex:0 0 auto}
.srclist{flex:1;overflow-y:auto;min-height:0;max-height:52vh;display:flex;flex-direction:column;gap:4px;
  padding-inline-end:6px}
.srclist::-webkit-scrollbar{width:8px}
.srclist::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.srcgroup{font-size:10px;letter-spacing:1.5px;color:var(--dim2);margin:10px 0 4px;display:flex;gap:7px}
.srcgroup:first-child{margin-top:0}
.srcgroup span{font-family:var(--mono)}
.srcu{display:flex;align-items:center;gap:10px;padding:9px 11px;background:#0a1018;
  border:1px solid var(--line);border-radius:8px;cursor:pointer;color:var(--txt);
  text-align:start;font-family:inherit;transition:.13s;width:100%}
.srcu:hover{border-color:var(--cyan);background:#0f1c26}
.srcu.nosensor{opacity:.62}
.srcu .su-g{flex:0 0 20px;display:flex}
.srcu .su-n{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.srcu .su-n b{margin-inline-end:6px}
.srcu .su-n em{font-style:normal;font-size:10.5px;color:var(--dim2)}
.srcu .su-s{font-size:9.5px;letter-spacing:.4px;padding:2px 7px;border-radius:4px;background:#16202c;color:var(--dim)}
.srcu .su-s.enroute{background:#3d2a08;color:var(--amber)}
.srcu .su-s.onscene{background:#0d2a1a;color:var(--green)}
.srcu .su-s.busy{background:#2a1010;color:#ff8b84}
.srcu .su-c{font-size:10px;color:var(--dim2);flex:0 0 auto}
.srcside{flex:0 0 34%;background:#0a1018;border-inline-start:1px solid var(--line);
  padding:16px;display:flex;flex-direction:column;gap:8px}
.srcalt{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:start;
  padding:12px 13px;background:#0d131c;border:1px solid var(--line2);border-radius:9px;
  cursor:pointer;color:var(--txt);font-family:inherit;transition:.13s}
.srcalt:hover{border-color:var(--cyan);background:#0f1c26}
.srcalt b{font-size:12.5px}
.srcalt em{font-style:normal;font-size:10.5px;color:var(--dim2)}
.srcnote{margin-top:auto;font-size:10.5px;color:var(--dim2);line-height:1.6}
@media(max-width:820px){.srcbody{flex-direction:column}.srcside{flex:0 0 auto;border-inline-start:0;border-top:1px solid var(--line)}}

/* ---------- מתג נקודות ציון על המפה ---------- */
/* פקדי המפה ממוקמים פיזית ולא לוגית: פקדי Leaflet יושבים תמיד
   בפינה השמאלית, ו-inset-inline-end היה נוחת עליהם בעמוד RTL. */
.mapctl{position:absolute;top:12px;right:12px;z-index:1100;display:flex;gap:6px;direction:ltr}
.mapbtn{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:8px;cursor:pointer;
  background:rgba(9,14,20,.88);border:1px solid var(--line2);color:var(--dim);
  font-family:inherit;font-size:11px;font-weight:600;backdrop-filter:blur(6px);
  box-shadow:0 3px 12px -4px #000;transition:.14s}
.mapbtn:hover{border-color:var(--line3);color:var(--txt)}
.mapbtn svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:0 0 15px}
.mapbtn span{font-family:var(--mono);font-size:10.5px}
.mapbtn.poi-all{color:var(--cyan);border-color:var(--cyan-dim)}
.mapbtn.poi-near{color:var(--amber);border-color:#3d2a08;background:rgba(26,18,6,.88)}
.mapbtn.poi-off{color:var(--dim2);opacity:.75}

/* ---------- ארכיון ---------- */
body[data-screen="archive"] #main,
body[data-screen="archive"] #supervisor{display:none}
body[data-screen="archive"] #archive{display:flex}
#archive{flex:1;display:none;flex-direction:column;min-height:0;background:var(--bg2)}
#arkpi{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);
  border-bottom:1px solid var(--line);flex:0 0 auto}
#arfilter{flex:0 0 auto;display:flex;align-items:center;gap:9px;padding:11px 14px;
  background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap}
#arfilter .arq{flex:1;min-width:220px}
.archk{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--dim);cursor:pointer}
.archk .fchk{margin-top:0}
.arcount{font-size:11.5px;color:var(--dim2);font-family:var(--mono)}
#arbody{flex:1;overflow:auto;min-height:0}
#arbody::-webkit-scrollbar{width:8px}
#arbody::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.artbl{font-size:12px}
.artbl tbody tr{cursor:pointer}
.artbl tbody tr:hover td{background:#0f1621}
.casegrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(216px,1fr));gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:9px;overflow:hidden}
.cf{background:var(--panel);padding:9px 11px;display:flex;flex-direction:column;gap:3px}
.cf span{font-size:10px;letter-spacing:1.1px;color:var(--dim2)}
.cf b{font-size:12.5px;font-weight:600}
.casechips{display:flex;flex-wrap:wrap;gap:6px}
.cchip{display:flex;align-items:center;gap:6px;font-size:11.5px;padding:4px 9px;border-radius:6px;
  background:#150f06;border:1px solid #3d2a08;color:#ffd08a}
.casecols{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:6px}
.caselog{max-height:30vh;overflow-y:auto;border:1px solid var(--line);border-radius:8px;background:#0a1018}
.caselog::-webkit-scrollbar{width:7px}
.caselog::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
@media(max-width:900px){.casecols{grid-template-columns:1fr}#arkpi{grid-template-columns:repeat(3,1fr)}}

/* ---------- לוח שכבות ---------- */

.layerpanel{position:absolute;top:52px;right:12px;z-index:1100;width:284px;display:none;
  background:rgba(10,16,24,.96);border:1px solid var(--line2);border-radius:10px;
  box-shadow:0 14px 40px -12px #000;backdrop-filter:blur(10px);overflow:hidden}
.layerpanel.show{display:block;animation:slideIn .16s ease-out}
.lp-head{display:flex;align-items:center;padding:10px 12px;font-size:11.5px;font-weight:700;
  letter-spacing:.5px;border-bottom:1px solid var(--line);color:var(--txt)}
.lp-x{margin-inline-start:auto;border:0;background:transparent;color:var(--dim2);cursor:pointer;font-size:13px}
.lp-x:hover{color:var(--txt)}
.lp-style{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line);
  font-size:11px;color:var(--dim2)}
.lp-style select{flex:1;background:#070c13;border:1px solid var(--line2);border-radius:6px;
  color:var(--txt);padding:5px 8px;font-size:11.5px;font-family:inherit}
.lp-style select:focus{outline:0;border-color:var(--cyan)}
.lp-list{max-height:44vh;overflow-y:auto}
.lp-list::-webkit-scrollbar{width:7px}
.lp-list::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.lp-row{display:flex;align-items:flex-start;gap:8px;padding:6px 12px;cursor:pointer;
  border-bottom:1px solid #101822;transition:.12s}
.lp-row:hover{background:#0f1621}
.lp-row .fchk{margin-top:2px;width:15px;height:15px;flex:0 0 15px}
.lp-n{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--dim)}
.lp-row.on .lp-n{color:var(--txt)}
.lp-n em{font-style:normal;font-size:10px;color:var(--dim2);line-height:1.45}
.lp-foot{display:flex;gap:6px;padding:9px 12px;border-top:1px solid var(--line)}
.lp-foot .mini{flex:1;text-align:center;margin:0}

.lp-sec{font-size:9px;letter-spacing:1.4px;color:var(--dim2);padding:7px 12px 4px;
  background:#080d14;border-bottom:1px solid var(--line)}
.lp-bases{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:6px 8px;
  border-bottom:1px solid var(--line)}
.lp-base{display:flex;flex-direction:column;gap:0;align-items:flex-start;text-align:start;
  padding:6px 8px;background:#070c13;border:1px solid var(--line2);border-radius:7px;
  cursor:pointer;color:var(--dim);font-family:inherit;transition:.12s}
.lp-base:hover{border-color:var(--line3);color:var(--txt)}
.lp-base.on{border-color:var(--cyan);background:#102430;color:var(--cyan)}
.lp-bn{font-size:12px;font-weight:700}
.lp-base em{font-style:normal;font-size:9.5px;color:var(--dim2);line-height:1.35}
.lp-base.on em{color:#7fd3e4}

.lp-content{border-bottom:1px solid var(--line)}
.lp-row.dis{opacity:.42;cursor:not-allowed}
.lp-bases{grid-template-columns:1fr 1fr}

/* ---------- רשת שכבות המערכת ---------- */
/* אריחים אופקיים וצפופים — סמל וכיתוב באותה שורה */
.lp-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:7px 8px;
  max-height:42vh;overflow-y:auto}
.lp-grid::-webkit-scrollbar{width:7px}
.lp-grid::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.lp-tile{display:flex;align-items:center;gap:6px;
  padding:6px 7px;background:#070c13;border:1px solid var(--line2);border-radius:7px;
  cursor:pointer;color:var(--dim2);font-family:inherit;transition:.13s;min-width:0}
.lp-tile svg{fill:none;stroke:currentColor;stroke-width:1.8;
  stroke-linecap:round;stroke-linejoin:round;flex:0 0 17px}
.lp-tile span{font-size:10.5px;font-weight:600;line-height:1.2;text-align:start;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lp-tile:hover{border-color:var(--line3);color:var(--dim);background:#0d1620}
.lp-tile.on{border-color:var(--cyan);background:#102430;color:var(--cyan)}

/* ---------- מפה במסך מנהל המשמרת ---------- */
#maphome{flex:1;display:flex;flex-direction:column;min-height:0}
/* עמודת מנהל המשמרת מתחלקת בין תמונת המצב לטבלת האירועים.
   בלי חלוקה מפורשת המפה בולעת את הטבלה עד לכדי חוסר שימוש. */
#svmaphost{flex:1 1 58%;display:flex;flex-direction:column;min-height:210px;
  border-bottom:1px solid var(--line)}
body[data-screen="supervisor"] .svright{flex:1 1 47%;min-width:0}
body[data-screen="supervisor"] .svleft{flex:1 1 53%;min-width:0}
body[data-screen="supervisor"] #ovbody{flex:1 1 42%;min-height:120px;overflow:auto}
body[data-screen="supervisor"] .svright .svhead{flex:0 0 34px;font-size:11px}

/* ---------- עדכון חופשי לאירוע ---------- */
#notebar{display:flex;gap:7px;padding:9px 11px;background:var(--panel);
  border-bottom:1px solid var(--line);flex:0 0 auto}
#incnote{flex:1;min-width:0;background:#0a1018;border:1px solid var(--line2);border-radius:7px;
  color:var(--txt);padding:8px 10px;font-size:12px;font-family:inherit}
#incnote:focus{outline:0;border-color:var(--cyan)}
#notesend{padding:8px 14px;flex:0 0 auto}
.tl-row.note{background:#0c1620}
.tl-row.note .b{color:var(--txt)}
.tl-row.note .b b{color:var(--cyan)}

/* ---------- דחיפות ברשימת האירועים ---------- */
.own.wait{background:#1c2a3a;color:var(--dim)}
.own.late{background:#3a0f0d;color:#ff8b84;animation:breathe 1.6s infinite}
.poir .mini.rel{margin-inline-start:6px;padding:2px 7px;font-size:10px}

/* ---------- מפרידים נגררים ---------- */
.splitter{flex:0 0 5px;background:var(--line);cursor:col-resize;position:relative;
  z-index:30;transition:background .12s}
.splitter::after{content:"";position:absolute;inset:0 -3px;}
.splitter:hover,.splitter.dragging{background:var(--cyan)}
body.resizing{cursor:col-resize;user-select:none}
body.resizing iframe,body.resizing #map{pointer-events:none}
body[data-screen="settings"] .splitter[data-split="left"]{display:none}
body[data-screen="supervisor"] .splitter,
body[data-screen="archive"] .splitter{display:none}

/* ---------- פעולות קומפקטיות ---------- */
#actions{padding:8px;gap:6px}
#actions .btn{padding:8px 6px;font-size:11.5px;border-radius:6px}

/* ---------- גלילה בעמודת האירוע ---------- */
.rail.left{overflow-y:auto;overflow-x:hidden}
.rail.left::-webkit-scrollbar{width:8px}
.rail.left::-webkit-scrollbar-thumb{background:#1e2b3a;border-radius:4px}
.rail.left > *{flex-shrink:0}
.detailscroll{overflow:visible;flex:0 0 auto}
.vidpanel #vidwrap{height:170px}
.trpanel{flex:0 0 auto;min-height:120px}
.trpanel .pb{max-height:220px}

/* ---------- סמלים בכפתורי הפעולה ---------- */
#actions .btn{display:flex;align-items:center;justify-content:center;gap:6px}
.aicon{fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;
  flex:0 0 15px}
#actions .btn[data-act="auto"] .aicon,
#actions .btn[data-act="close"] .aicon{fill:currentColor;stroke:none}
.btn.act-on{border-color:var(--green);color:#9ff0c4;background:#0d2a1a}
.btn.act-on:hover{background:#123a24}

/* ---------- קיפול עמודת האירוע כשאין אירוע ---------- */


/* ---------- לוח מוקדניות קומפקטי + רוחב נגרר ---------- */
body[data-screen="supervisor"] .splitter[data-split="sv"]{display:block}
body[data-screen="supervisor"] .svleft{flex:0 0 var(--svleft,46%);min-width:0}
body[data-screen="supervisor"] .svright{flex:1 1 auto;min-width:0}
/* align-items:start — בלעדיו כרטיס ריק נמתח לגובה הכרטיס העמוס
   שלצידו באותה שורת גריד, ומבזבז מקום על כלום. */
#board{padding:10px;gap:8px;align-items:start;
  grid-template-columns:repeat(auto-fill,minmax(232px,1fr))}
.dcard2{padding:9px;gap:7px;border-radius:9px}
.dc-head{gap:8px}
.dc-av{width:28px;height:28px;flex:0 0 28px;font-size:12px;border-radius:7px}
.dc-id b{font-size:12px}
.dc-id span{font-size:9.5px}
.dstat{padding:3px 6px;font-size:9.5px}
.dc-load{gap:4px}
.lnum{font-size:9.5px}
.dc-q{gap:4px;min-height:26px}
.qchip{padding:5px 7px;font-size:11px;border-radius:6px}
.qempty{font-size:10.5px;padding:5px}
.dc-foot{padding-top:7px;font-size:10.5px}
.dc-foot .mini{padding:2px 8px;font-size:10.5px}
.to-hint{margin-top:20px;font-size:12.5px;color:#e59b96;letter-spacing:.4px}
.takeover.on{animation:slideIn .18s}
.takeover{transition:opacity .2s}

/* ============================================================
   כרטיס אירוע קומפקטי
   ============================================================ */
.dcard{padding:9px 10px}
.dhead{gap:9px;margin-bottom:9px}
.dicon{width:34px;height:34px;flex:0 0 34px;font-size:16px;border-radius:8px}
.dtitle h3{font-size:14px;margin-bottom:1px}
.dsub{font-size:10.5px}
.dtimer span{font-size:14px}
.dtimer em{font-size:9px}
.dgrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);
  border:1px solid var(--line);border-radius:7px;overflow:hidden}
.df{background:var(--panel);padding:5px 8px;display:flex;flex-direction:column;gap:1px;min-width:0}
.df.wide{grid-column:1/-1}
.df span{font-size:9px;letter-spacing:.8px;color:var(--dim2)}
.df b{font-size:11.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.df i{font-style:normal}
.own.me,.own.pool{font-size:8.5px;padding:1px 4px}
.chanrow{margin-top:7px;gap:5px}
.chan{font-size:10px;padding:3px 7px;display:inline-flex;align-items:center;gap:4px}
.chan .aicon{width:11px;height:11px;flex:0 0 11px}
.pois{margin-top:8px;padding-top:7px}
.poih{font-size:9px;margin-bottom:4px}
.poir{padding:2px 0;font-size:11px;gap:6px}
.poir .pt{font-size:10px}
.warn{margin-top:7px;padding:6px 8px;font-size:11px}

/* ---------- כפתורי פעולה: שלושה בשורה ---------- */
/* ארבע פעולות משניות בשתי עמדות — בשלוש עמודות אחת מהן נשארת
   יתומה בשורה משלה ומבזבזת גובה. סמל וכיתוב באותה שורה, לא זה
   מעל זה, חוסכים עוד שליש מהגובה. */
#actions{grid-template-columns:1fr 1fr;gap:5px;padding:7px}
#actions .btn{padding:6px 8px;font-size:11px;gap:5px;flex-direction:row;line-height:1.15;
  white-space:nowrap;overflow:hidden}
#actions .btn.wide{grid-column:1/-1;padding:7px;font-size:12px}
.aicon{flex:0 0 14px;width:14px;height:14px}
#notebar{padding:7px}
#incnote{padding:6px 9px;font-size:11.5px}
#notesend{padding:6px 11px;font-size:11.5px}

/* ---------- פקדי הזזת פאנלים ---------- */
.ph-tools{display:flex;gap:2px;margin-inline-start:6px}
.pht{width:19px;height:19px;border:1px solid var(--line2);background:#0a1018;color:var(--dim2);
  border-radius:4px;font-size:8px;cursor:pointer;line-height:1;padding:0;font-family:inherit}
.pht:hover:not(:disabled){color:var(--cyan);border-color:var(--cyan)}
.pht:disabled{opacity:.28;cursor:default}
.ph .cnt{margin-inline-start:auto}
#dock-right,#dock-left{display:flex;flex-direction:column;min-height:0}
#dock-right > .panel,#dock-left > .panel{flex:1 1 auto;min-height:0}
#dock-right > [data-panel="incidents"],#dock-left > [data-panel="incidents"],
#dock-right > [data-panel="units"],#dock-left > [data-panel="units"]{flex:1 1 30%;min-height:96px}
#dock-right > [data-panel="detail"],#dock-left > [data-panel="detail"]{flex:0 0 auto;overflow-y:auto}
#dock-right > [data-panel="feed"],#dock-left > [data-panel="feed"]{flex:0 0 auto}
#dock-right > [data-panel="voice"],#dock-left > [data-panel="voice"]{flex:1 1 26%;min-height:130px}
/* רצועה שכל תוכנה הוסתר נסגרת יחד עם המפריד שלה.
   מזוהה לפי ה-id ולא לפי המחלקה, כי #dock-left{display:flex}
   הוא סלקטור חזק יותר מ-body[attr] .rail.left והיה גובר עליו. */
body[data-dock-left="off"] #dock-left,
body[data-dock-left="off"] .splitter[data-split="left"]{display:none}
body[data-dock-right="off"] #dock-right,
body[data-dock-right="off"] .splitter[data-split="rail"]{display:none}
/* פאנל תלוי-אירוע בלי אירוע נבחר */
.panel-idle{display:none!important}
/* פאנל פרטי האירוע מתקפל לכותרת בלבד כשאין אירוע נבחר */


/* ============================================================
   דחיסה סופית — פעולות ורשימות בכרטיס האירוע
   ============================================================ */
/* היררכיה בצבע ולא בגודל: שש פעולות שוות גודל בשתי שורות
   במקום שילוב של רוחב מלא וחצאים, שהיה גבוה פי שניים. */
#actions{grid-template-columns:1fr 1fr 1fr;gap:4px;padding:6px}
#actions .btn{padding:5px 4px;font-size:10.5px;gap:4px;border-radius:5px}
#actions .btn.wide{grid-column:1/-1}
#actions .aicon{flex:0 0 12px;width:12px;height:12px;stroke-width:2.1}

.pois{margin-top:7px;padding-top:6px}
.poih{font-size:8.5px;letter-spacing:1.1px;margin-bottom:3px}
.poir{padding:1px 0;font-size:10.5px;gap:5px;align-items:center}
.poir .pn{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.poir .pt{font-size:9.5px;flex:0 0 auto}
.poir .px{font-size:9.5px;flex:0 0 auto}
.poir svg.pglyph{flex:0 0 12px}
.poir .mini.rel{margin:0;padding:0;width:15px;height:15px;font-size:9px;line-height:1;
  flex:0 0 15px;border-radius:3px}
#notebar{padding:6px}
#incnote{padding:5px 8px;font-size:11px}
#notesend{padding:5px 10px;font-size:11px}

/* ---------- היררכיית פעולות ----------
   ארבע עמודות: שתי הפעולות המרכזיות תופסות שתיים כל אחת בשורה
   העליונה, וארבע המשניות יושבות מתחתן. הגודל חוזר לסמן חשיבות,
   בלי לחזור לסרגל של ארבע שורות. */
#actions{grid-template-columns:repeat(4,1fr)}
#actions .btn.major{grid-column:span 2;padding:9px 6px;font-size:12.5px;font-weight:700;
  border-radius:7px;gap:6px}
#actions .btn.major .aicon{flex:0 0 15px;width:15px;height:15px}
#actions .btn.wide{grid-column:1/-1;padding:8px;font-size:12.5px}
#actions .btn:not(.major):not(.wide){font-size:10px;padding:5px 3px}

/* ============================================================
   תגיות — נקודות רגישות ויחידות משויכות
   ============================================================ */
.chips{display:flex;flex-wrap:wrap;gap:4px}
.chip{display:inline-flex;align-items:center;gap:5px;padding:3px 7px;border-radius:999px;
  font-size:10.5px;line-height:1.4;background:#0a1018;border:1px solid var(--line2);
  max-width:100%;min-width:0}
.chip > span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chip svg{flex:0 0 auto;stroke:var(--c);fill:none;stroke-width:2;
  stroke-linecap:round;stroke-linejoin:round}

.chip.poi{border-color:color-mix(in srgb,var(--c) 38%,var(--line2));color:var(--dim)}
.chip.poi b{color:var(--amber);font-weight:600;flex:0 0 auto}

.chip.unit{border-color:color-mix(in srgb,var(--c) 45%,var(--line2));color:var(--c);
  padding-inline-end:3px}
.chip.unit b{color:var(--txt);font-weight:700}
.chip.unit > span{color:var(--dim);font-size:9.5px}
.chip.unit em{font-style:normal;color:var(--amber);font-size:9.5px}
.chip.unit em:empty{display:none}
.chip.unit.enroute{border-color:#3d2a08}
.chip.unit.onscene{border-color:#14532d}
.chip.unit.onscene > span{color:var(--green)}
.chipx{width:15px;height:15px;flex:0 0 15px;border:0;border-radius:50%;cursor:pointer;
  background:#16202c;color:var(--dim2);font-size:9px;line-height:1;padding:0;font-family:inherit}
.chipx:hover{background:#3a0f0d;color:#ffb4b0}

/* ---------- חלוניות פעולה על המפה ---------- */
.s1-popup .leaflet-popup-content-wrapper{background:var(--panel);color:var(--txt);
  border:1px solid var(--line2);border-radius:10px;box-shadow:0 12px 34px -12px #000;padding:0}
.s1-popup .leaflet-popup-content{margin:0;width:auto!important;line-height:1.4}
.s1-popup .leaflet-popup-tip{background:var(--panel);border:1px solid var(--line2)}
.s1-popup .leaflet-popup-close-button{color:var(--dim2);font-size:16px;padding:5px 7px 0 0}
.s1-popup .leaflet-popup-close-button:hover{color:var(--txt);background:transparent}
.pop{padding:10px 11px;direction:rtl;min-width:180px}
.pop-h{display:flex;align-items:center;gap:7px;margin-bottom:3px}
.pop-i{color:var(--c);font-size:13px;display:flex}
.pop-i svg{stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.pop-h b{font-size:13px;color:var(--c)}
.pop-st{margin-inline-start:auto;font-size:9px;padding:2px 6px;border-radius:4px;
  background:#16202c;color:var(--dim)}
.pop-st.enroute{background:#3d2a08;color:var(--amber)}
.pop-st.onscene{background:#0d2a1a;color:var(--green)}
.pop-st.busy{background:#2a1010;color:#ff8b84}
.pop-n{font-size:11.5px;color:var(--txt);padding-bottom:6px;margin-bottom:5px;
  border-bottom:1px solid var(--line)}
.pop .pr{display:flex;gap:8px;font-size:10.5px;padding:1px 0}
.pop .pr span{color:var(--dim2);flex:0 0 58px}
.pop .pr b{color:var(--txt);font-weight:600;flex:1;min-width:0}
.pop .poorv{color:var(--amber)}
.pop-a{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px;padding-top:7px;border-top:1px solid var(--line)}
.popb{flex:1;min-width:72px;border:1px solid var(--line2);background:#0a1018;color:var(--txt);
  border-radius:6px;padding:5px 7px;font-size:10.5px;font-weight:600;cursor:pointer;font-family:inherit}
.popb:hover{background:#16222f;border-color:var(--line3)}
.popb.primary{background:var(--cyan-dim);border-color:var(--cyan);color:#e8feff}
.popb.danger{background:#3a0f0d;border-color:#7f1d1a;color:#ffb4b0}
.popb.danger:hover{background:#4d1512}
