*{margin:0;padding:0;box-sizing:border-box}
:root{
  --dark:#040710;--dark1:#060A14;--dark2:#070C18;--dark3:#0D1525;--dark4:#111C30;
  --gold:#C8A84B;--gold-dim:#8A6F2E;
  --cyan:#00D4FF;--green:#00FF88;--red:#FF4466;--orange:#FF8800;--purple:#AA66FF;--pink:#FF44AA;
  --text:#C8D8F0;--text-dim:#6A80A8;--text-muted:#3A4A68;
  --border:rgba(200,168,75,0.15);--bcyan:rgba(0,212,255,0.15);
}
body{background:var(--dark);font-family:'Rajdhani',sans-serif;color:var(--text);height:100vh;overflow:hidden;display:flex;flex-direction:column}

/* TOPBAR */
#topbar{height:50px;background:var(--dark2);border-bottom:1px solid var(--border);display:none;align-items:center;padding:0 14px;flex-shrink:0;z-index:1000;gap:0;overflow:visible}
.tb-logo{font-family:'Orbitron',monospace;font-size:15px;font-weight:900;color:var(--gold);letter-spacing:.25em;text-shadow:0 0 20px rgba(200,168,75,.5)}
.tb-logo span{color:var(--cyan)}
.tb-left{display:flex;align-items:center;flex-shrink:0;gap:8px}
#ainubis-logo{width:36px;height:36px;border-radius:50%;filter:drop-shadow(0 0 6px rgba(200,168,75,.6)) drop-shadow(0 0 14px rgba(200,168,75,.3));animation:logoGlow 3s ease-in-out infinite;cursor:pointer;transition:filter .3s}
#ainubis-logo:hover{filter:drop-shadow(0 0 10px rgba(200,168,75,.9)) drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 40px rgba(200,168,75,.2))}
@keyframes logoGlow{0%,100%{filter:drop-shadow(0 0 6px rgba(200,168,75,.5)) drop-shadow(0 0 14px rgba(200,168,75,.25))}50%{filter:drop-shadow(0 0 10px rgba(200,168,75,.8)) drop-shadow(0 0 22px rgba(200,168,75,.4)) drop-shadow(0 0 36px rgba(200,168,75,.15))}}
.tb-center{display:flex;align-items:center;gap:14px;flex:1;justify-content:center}
.tb-right{display:flex;align-items:center;flex-shrink:0;width:auto;justify-content:flex-end;gap:10px}
#aaru-meaning{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.14em;color:rgba(200,168,75,.35);white-space:nowrap;text-transform:uppercase;transition:color .4s ease}

/* ── CLASSIFICATION BANNER ── */
.class-banner{position:relative;display:flex;align-items:center;cursor:pointer;user-select:none}
.class-badge{font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.14em;font-weight:700;padding:3px 10px;border:1px solid;display:flex;align-items:center;gap:5px;white-space:nowrap}
.class-badge .class-arrow{font-size:7px;opacity:.6;transition:transform .2s}
.class-badge.open .class-arrow{transform:rotate(180deg)}
.class-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--dark2);border:1px solid var(--border);display:none;flex-direction:column;z-index:9999;min-width:200px;box-shadow:0 8px 24px rgba(0,0,0,.6)}
.class-dropdown.open{display:flex}
.class-opt{font-family:'Share Tech Mono',monospace;font-size:9px;padding:7px 12px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .15s;border-bottom:1px solid rgba(255,255,255,.04)}
.class-opt:last-child{border-bottom:none}
.class-opt:hover{background:rgba(0,212,255,.06)}
.class-opt.active{background:rgba(0,212,255,.08)}
.class-opt .co-label{letter-spacing:.1em}
.class-opt .co-check{color:var(--cyan);font-size:10px}
.class-opt.locked{opacity:.35;cursor:not-allowed}
.class-opt.locked:hover{background:transparent}
.class-opt .co-lock{font-size:8px;color:var(--text-muted)}
/* Classification colors */
.class-u{color:var(--green);border-color:rgba(0,255,136,.4);background:rgba(0,255,136,.06)}
.class-fouo{color:var(--cyan);border-color:rgba(0,212,255,.4);background:rgba(0,212,255,.06)}
.class-cui{color:var(--gold);border-color:rgba(200,168,75,.4);background:rgba(200,168,75,.06)}
.class-s{color:var(--red);border-color:rgba(255,68,102,.4);background:rgba(255,68,102,.06)}
.class-ts{color:#ff4466;border-color:rgba(255,68,102,.6);background:rgba(255,68,102,.1)}
.tb-vert-sep{width:1px;height:30px;background:var(--border);margin:0 6px;flex-shrink:0}
/* ── AUTONOMY BADGES ── */
.auto-group{display:flex;align-items:center;gap:0}
.auto-badge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;cursor:pointer;transition:all .18s;border:1px solid transparent;position:relative}
.auto-badge:hover{background:rgba(0,212,255,.05);border-color:rgba(0,212,255,.2)}
.ab-dot{width:5px;height:5px;border-radius:50%;background:var(--green);animation:lp 1.8s ease-in-out infinite;margin-bottom:1px}
.ab-dot.amber{background:#c8a84b;box-shadow:0 0 6px rgba(200,168,75,.6)}
.ab-dot.cyan{background:var(--cyan);box-shadow:0 0 6px rgba(0,212,255,.5)}
.ab-dot.off{background:#304050;animation:none;box-shadow:none}
.ab-label{font-family:'Orbitron',sans-serif;font-size:7px;letter-spacing:1.5px;color:var(--text-muted);line-height:1}
.ab-val{font-family:'Share Tech Mono',monospace;font-size:11px;font-weight:700;color:var(--cyan);letter-spacing:.08em;line-height:1.2}
.ab-val.green{color:var(--green)}
.ab-val.amber{color:#c8a84b}
.ab-val.muted{color:var(--text-muted)}
.auto-sep{width:1px;height:26px;background:var(--border);margin:0 2px}
/* legacy */
.tb-stat{text-align:center}
.tsv{font-family:'Orbitron',monospace;font-size:12px;font-weight:700;color:var(--cyan)}
.tsl{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);letter-spacing:.1em}
.tb-div{width:1px;height:22px;background:var(--border)}
/* World Clocks */
#world-clocks{display:flex;align-items:center;gap:6px;font-family:'Share Tech Mono',monospace;}
.wc-item{display:flex;flex-direction:column;align-items:center;gap:1px;}
.wc-time{font-size:13px;color:var(--green);letter-spacing:.1em;line-height:1;font-weight:700;}
.wc-label{font-size:8px;color:rgba(100,200,100,0.65);letter-spacing:1.2px;font-family:'Orbitron',sans-serif;line-height:1;}
.wc-sep{color:rgba(255,255,255,0.1);font-size:14px;margin:0 1px;align-self:center;}
#wc-local .wc-time{color:#00ff88;font-size:15px;text-shadow:0 0 10px rgba(0,255,136,.5);}
#wc-local .wc-label{color:rgba(0,255,136,0.7);}
/* Hide most clocks when maximized — keep local */
body.map-maximized #world-clocks .wc-sep,
body.map-maximized .wc-item:not(#wc-local){display:none;}
.live-b{display:flex;align-items:center;gap:5px;font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--green)}
.ld{width:6px;height:6px;border-radius:50%;background:var(--green);animation:lp 1.5s ease-in-out infinite}
@keyframes lp{0%,100%{opacity:1;box-shadow:0 0 4px var(--green)}50%{opacity:.3;box-shadow:0 0 12px var(--green)}}
/* Agent status pill */
.agent-pill{display:flex;align-items:center;gap:5px;font-family:'Share Tech Mono',monospace;font-size:8px;padding:3px 9px;border:1px solid rgba(0,255,136,.3);background:rgba(0,255,136,.06);cursor:pointer;transition:all .2s;letter-spacing:.1em}
.agent-pill:hover{border-color:var(--green);background:rgba(0,255,136,.12)}
.agent-pill.active{color:var(--green)}
.agent-pill.paused{color:var(--text-muted);border-color:var(--border)}
.ap-dot{width:5px;height:5px;border-radius:50%;background:var(--green);flex-shrink:0;animation:lp 1.2s ease-in-out infinite}
.agent-pill.paused .ap-dot{background:var(--text-muted);animation:none}
#alert-count{font-family:'Orbitron',monospace;font-size:11px;font-weight:700;color:var(--red)}

/* MAIN */
#main{display:none;flex:1;overflow:hidden;min-height:0}

/* LEFT PANEL */
#lp{width:252px;background:var(--dark2);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;transition:width .25s cubic-bezier(.4,0,.2,1);position:relative}
#lp.lp-collapsed{width:32px}
#lp.lp-collapsed .lp-search,#lp.lp-collapsed #tabs,#lp.lp-collapsed .lg,#lp.lp-collapsed .bmg2,#lp.lp-collapsed .bm-cat,#lp.lp-collapsed #lp-header,#lp.lp-collapsed #theater-strip,#lp.lp-collapsed #team-chat{display:none}

/* ── THEATER PRESETS ── */
#theater-strip{flex-shrink:0;border-bottom:1px solid var(--border);background:var(--dark1);padding:0}
#theater-header{display:flex;align-items:center;justify-content:space-between;padding:5px 10px 4px;cursor:pointer;user-select:none}
#theater-header:hover{background:rgba(200,168,75,.04)}
.theater-title{font-family:'Orbitron',sans-serif;font-size:7.5px;letter-spacing:.14em;color:var(--gold);font-weight:700}
.theater-actions{display:flex;align-items:center;gap:6px}
.theater-action-btn{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);cursor:pointer;letter-spacing:.06em;padding:1px 4px;transition:color .15s}
.theater-action-btn:hover{color:var(--cyan)}
#theater-arrow{font-size:7px;color:var(--text-muted);transition:transform .2s}
#theater-arrow.open{transform:rotate(180deg)}
#theater-body{padding:5px 8px 7px;display:flex;flex-wrap:wrap;gap:4px}
#theater-body.collapsed{display:none}
.tp-card{
  display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:6px 4px 5px;min-width:68px;flex:1;max-width:80px;
  background:var(--dark3);border:1px solid var(--border);
  cursor:pointer;transition:all .2s;position:relative;
  clip-path:polygon(3px 0%,100% 0%,calc(100% - 3px) 100%,0% 100%);
}
.tp-card:hover{border-color:var(--gold);background:rgba(200,168,75,.06)}
.tp-card.active{border-color:var(--gold);background:rgba(200,168,75,.12);box-shadow:0 0 8px rgba(200,168,75,.2)}
.tp-card.active .tp-icon{filter:drop-shadow(0 0 4px var(--gold))}
.tp-icon{font-size:14px;line-height:1;transition:filter .2s}
.tp-name{font-family:'Orbitron',sans-serif;font-size:6.5px;letter-spacing:.1em;color:var(--text-dim);text-align:center;line-height:1.2;transition:color .2s}
.tp-card.active .tp-name{color:var(--gold)}
.tp-card:hover .tp-name{color:var(--text)}
.tp-layers{font-family:'Share Tech Mono',monospace;font-size:6px;color:var(--text-muted);letter-spacing:.04em}
.tp-card .tp-del{display:none;position:absolute;top:1px;right:3px;font-size:8px;color:var(--text-muted);cursor:pointer;padding:0 2px;z-index:2}
.tp-card:hover .tp-del{display:block}
.tp-card .tp-del:hover{color:var(--red)}
/* Save preset modal */
#tp-save-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);z-index:9999;justify-content:center;align-items:center}
#tp-save-modal.open{display:flex}
#tp-save-inner{background:var(--dark2);border:1px solid var(--gold);padding:16px 20px;min-width:280px;max-width:340px}
.tp-save-title{font-family:'Orbitron',sans-serif;font-size:10px;color:var(--gold);letter-spacing:.15em;margin-bottom:12px}
.tp-save-row{margin-bottom:8px}
.tp-save-label{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);letter-spacing:.08em;margin-bottom:3px}
.tp-save-input{width:100%;background:var(--dark3);border:1px solid var(--border);color:var(--text);font-family:'Share Tech Mono',monospace;font-size:10px;padding:5px 8px;outline:none;letter-spacing:.06em}
.tp-save-input:focus{border-color:var(--gold)}
.tp-save-hint{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);margin-bottom:10px;line-height:1.5}
.tp-save-actions{display:flex;gap:6px;justify-content:flex-end}
.tp-save-btn{font-family:'Share Tech Mono',monospace;font-size:8px;padding:5px 14px;cursor:pointer;letter-spacing:.08em;transition:all .15s}
.tp-save-btn.primary{background:rgba(200,168,75,.12);border:1px solid var(--gold);color:var(--gold)}
.tp-save-btn.primary:hover{background:rgba(200,168,75,.25)}
.tp-save-btn.cancel{background:transparent;border:1px solid var(--border);color:var(--text-muted)}
.tp-save-btn.cancel:hover{border-color:var(--text-dim);color:var(--text-dim)}
#lp-toggle{position:absolute;right:-1px;top:50%;transform:translateY(-50%);width:14px;height:40px;background:var(--dark2);border:1px solid var(--border);border-left:none;border-radius:0 4px 4px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:9px;color:#607090;z-index:10;transition:color .15s}
#lp-toggle:hover{color:var(--gold)}
#lp.lp-collapsed #lp-toggle{right:-14px;border-left:1px solid var(--border)}
/* ── LP HEADER ── */
#lp-header{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 6px;
  border-bottom:1px solid var(--border);background:var(--dark1);flex-shrink:0}
#lp-hdr-toggle{width:18px;height:18px;background:transparent;border:1px solid var(--border);
  border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:8px;color:#607090;flex-shrink:0;transition:color .15s}
#lp-hdr-toggle:hover{color:var(--gold);border-color:var(--gold)}
#lp-title{font-family:'Orbitron',monospace;font-size:9px;letter-spacing:.14em;
  color:var(--gold);font-weight:600;white-space:nowrap}
#lp-tab-bar{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--dark2)}
.lp-tab{flex:1;text-align:center;font-family:'Orbitron',sans-serif;font-size:7.5px;letter-spacing:.12em;
  color:var(--text-muted);padding:6px 0;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;user-select:none}
.lp-tab:hover{color:var(--cyan);background:rgba(0,212,255,.03)}
.lp-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(200,168,75,.04)}
#lp-layers-content{overflow-y:auto;flex:1;min-height:0}
#lp.lp-collapsed #lp-tab-bar,#lp.lp-collapsed #lp-projects,#lp.lp-collapsed #lp-layers-content{display:none}
.lp-rail{display:none;flex-direction:column;align-items:center;padding:8px 0;gap:10px}
#lp.lp-collapsed .lp-rail{display:flex}
.lp-rail-icon{font-size:14px;cursor:pointer;opacity:.4;transition:opacity .15s;line-height:1}
.lp-rail-icon:hover{opacity:1}
.lp-search{padding:7px 10px;border-bottom:1px solid var(--border);flex-shrink:0}
#ls{width:100%;background:var(--dark3);border:1px solid var(--bcyan);color:var(--text);font-family:'Share Tech Mono',monospace;font-size:10px;padding:6px 9px;outline:none;letter-spacing:.1em;transition:border-color .2s;clip-path:polygon(4px 0%,100% 0%,calc(100% - 4px) 100%,0% 100%)}
#ls:focus{border-color:var(--cyan)}#ls::placeholder{color:var(--text-muted)}
#tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto;scrollbar-width:none}
#tabs::-webkit-scrollbar{display:none}
.tab{flex-shrink:0;padding:6px 7px;font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.08em;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;background:transparent;border-top:none;border-left:none;border-right:none}
.tab:hover{color:var(--text-dim)}.tab.active{color:var(--cyan);border-bottom-color:var(--cyan)}
#favbar{display:none}
#favbar.show{display:none}
.fav-t{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--gold-dim);letter-spacing:.15em;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}
.fav-t-edit{font-size:7px;color:var(--text-muted);cursor:pointer;letter-spacing:.08em;transition:color .15s}
.fav-t-edit:hover{color:var(--cyan)}
#proj-select{
  background:rgba(0,0,0,.4);border:1px solid rgba(200,168,75,.25);
  color:var(--gold);font-family:'Share Tech Mono',monospace;font-size:8px;
  padding:1px 4px;outline:none;cursor:pointer;letter-spacing:.06em;
  max-width:130px;
}
#proj-select option{background:#0a0f1e;color:var(--text);font-size:9px}
#favlist{display:flex;flex-wrap:wrap;gap:3px}
.fchip{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:2px 7px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px}
.fchip:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}
.fchip .fc-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0;transition:all .15s}
.fchip.on{border-color:var(--fc-color,var(--cyan));color:var(--fc-color,var(--cyan));background:rgba(var(--fc-rgb,0,212,255),.08)}
.fchip.on .fc-dot{background:var(--fc-color,var(--cyan));box-shadow:0 0 4px var(--fc-color,var(--cyan))}
.fchip:not(.on) .fc-dot{background:var(--text-muted)}
#ll{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--dark3)}
#ll::-webkit-scrollbar{width:3px}#ll::-webkit-scrollbar-thumb{background:var(--gold-dim)}
.lg{border-bottom:1px solid rgba(200,168,75,.07)}
.lgh{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 5px;background:var(--dark3);cursor:pointer;user-select:none}
.lgh:hover{background:var(--dark4)}
.lgt{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;letter-spacing:.12em}
.lgc{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted)}
.lga{font-size:8px;color:var(--text-muted);transition:transform .2s}.lga.open{transform:rotate(180deg)}
.bmg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px 10px}
.bm{padding:6px 4px;background:var(--dark3);border:1px solid var(--border);font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.07em;color:var(--text-dim);cursor:pointer;text-align:center;transition:all .2s}
.bm:hover{border-color:var(--cyan);color:var(--cyan)}.bm.active{background:rgba(0,212,255,.1);border-color:var(--cyan);color:var(--cyan)}
.lr{display:flex;align-items:center;gap:7px;padding:5px 10px;cursor:pointer;transition:background .15s;user-select:none}
.lr:hover{background:rgba(0,212,255,.04)}
.tog{width:26px;height:13px;border-radius:7px;background:var(--dark4);border:1px solid var(--text-muted);position:relative;flex-shrink:0;transition:all .2s}
.tog::after{content:'';position:absolute;top:2px;left:2px;width:7px;height:7px;border-radius:50%;background:var(--text-muted);transition:all .2s}
.tog.cyan.on{background:rgba(0,212,255,.15);border-color:var(--cyan)}.tog.cyan.on::after{left:15px;background:var(--cyan);box-shadow:0 0 4px var(--cyan)}
.tog.gold.on{background:rgba(200,168,75,.15);border-color:var(--gold)}.tog.gold.on::after{left:15px;background:var(--gold);box-shadow:0 0 4px var(--gold)}
.tog.green.on{background:rgba(0,255,136,.15);border-color:var(--green)}.tog.green.on::after{left:15px;background:var(--green);box-shadow:0 0 4px var(--green)}
.tog.red.on{background:rgba(255,68,102,.15);border-color:var(--red)}.tog.red.on::after{left:15px;background:var(--red);box-shadow:0 0 4px var(--red)}
.tog.orange.on{background:rgba(255,136,0,.15);border-color:var(--orange)}.tog.orange.on::after{left:15px;background:var(--orange);box-shadow:0 0 4px var(--orange)}
.tog.purple.on{background:rgba(170,102,255,.15);border-color:var(--purple)}.tog.purple.on::after{left:15px;background:var(--purple);box-shadow:0 0 4px var(--purple)}
.tog.pink.on{background:rgba(255,68,170,.15);border-color:var(--pink)}.tog.pink.on::after{left:15px;background:var(--pink);box-shadow:0 0 4px var(--pink)}
.li{flex:1;min-width:0}
.ln{font-family:'Share Tech Mono',monospace;font-size:10px;color:var(--text);letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ls2{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lr-r{display:flex;align-items:center;gap:3px;flex-shrink:0}
.badge{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.06em;padding:1px 3px;border-radius:2px}
.badge.live{color:var(--green);border:1px solid rgba(0,255,136,.3)}.badge.api{color:var(--orange);border:1px solid rgba(255,136,0,.3)}.badge.free{color:var(--cyan);border:1px solid rgba(0,212,255,.2)}.badge.nga{color:var(--gold);border:1px solid rgba(200,168,75,.3)}.badge.prem{color:var(--purple);border:1px solid rgba(170,102,255,.3)}.badge.pai{color:var(--pink);border:1px solid rgba(255,68,170,.3)}.badge.ext{color:#E8B931;border:1px solid rgba(232,185,49,.3)}
.star{font-size:10px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:color .2s;padding:0 1px}
.star:hover,.star.on{color:var(--gold)}

/* MAP */
#map-col{flex:1;display:flex;flex-direction:column;min-width:0;position:relative}
#map{flex:1;position:relative;min-height:0}
#mc{position:absolute;inset:0;cursor:crosshair}

/* RIGHT-CLICK CONTEXT MENU */
#ctx-menu{
  position:absolute;background:#040c18;
  border:1px solid rgba(200,168,75,.45);
  z-index:1100;min-width:240px;max-width:260px;
  display:none;
  max-height:calc(100vh - 80px);overflow-y:auto;overflow-x:hidden;
  box-shadow:0 4px 32px rgba(0,0,0,.7),0 0 12px rgba(200,168,75,.15);
  border-radius:3px;
  font-family:'Share Tech Mono',monospace;
}
.ctx-header{
  padding:5px 10px;
  background:rgba(200,168,75,.1);
  border-bottom:1px solid rgba(200,168,75,.3);
  display:flex;justify-content:space-between;align-items:center;
  font-family:'Orbitron',sans-serif;font-size:8px;color:var(--gold);letter-spacing:.15em;
}
.ctx-coords{font-size:8px;color:rgba(200,168,75,.7);letter-spacing:.05em;}
.ctx-mgrs{
  padding:2px 10px 4px;font-size:9px;
  color:rgba(100,200,255,.5);letter-spacing:.08em;
  background:rgba(0,20,40,.4);border-bottom:1px solid rgba(100,200,255,.08);
}
.ctx-section-label{
  padding:5px 10px 2px;
  font-size:7.5px;color:rgba(255,255,255,.25);
  letter-spacing:.12em;font-family:'Orbitron',sans-serif;
  pointer-events:none;
}
.ctx-item{
  padding:6px 12px;font-size:10px;
  color:rgba(200,220,255,.75);cursor:pointer;
  transition:background .1s,color .1s;
  border-left:2px solid transparent;
  white-space:nowrap;
}
.ctx-item:hover{
  background:rgba(100,200,255,.08);
  color:#fff;border-left-color:var(--cyan);
}
.ctx-item.highlight{color:var(--cyan);}
.ctx-item.highlight:hover{background:rgba(0,212,255,.12);}
.ctx-item.danger{color:rgba(255,80,80,.6);}
.ctx-item.danger:hover{background:rgba(255,60,60,.1);color:#ff6060;border-left-color:#ff4444;}
.ctx-divider{height:1px;background:rgba(255,255,255,.06);margin:2px 0;}
/* MAP POPUPS custom */
.map-popup{background:var(--dark2);border:1px solid var(--gold);padding:10px 12px;min-width:200px;font-family:'Share Tech Mono',monospace}
.mp-title{font-family:'Orbitron',monospace;font-size:9px;color:var(--gold);letter-spacing:.15em;margin-bottom:7px;font-weight:700}
.mp-row{display:flex;justify-content:space-between;margin-bottom:3px;font-size:9px}
.mp-key{color:var(--text-muted)}
.mp-val{color:var(--text)}
.mp-badge{display:inline-block;font-size:7px;padding:1px 5px;margin-top:5px;letter-spacing:.08em}
.mp-actions{display:flex;gap:5px;margin-top:8px}
.mp-btn{flex:1;padding:4px 6px;font-family:'Share Tech Mono',monospace;font-size:8px;cursor:pointer;transition:all .2s;text-align:center;letter-spacing:.08em}
.mp-btn.primary{background:rgba(0,212,255,.1);border:1px solid var(--cyan);color:var(--cyan)}
.mp-btn.primary:hover{background:rgba(0,212,255,.2)}
.mp-btn.secondary{background:rgba(200,168,75,.08);border:1px solid var(--gold);color:var(--gold)}
.mp-btn.secondary:hover{background:rgba(200,168,75,.18)}

/* AOI MARKERS */
.aoi-marker{background:rgba(255,68,102,.15);border:2px solid var(--red);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--red);animation:aoiPulse 2s ease-in-out infinite}
@keyframes aoiPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,68,102,.4)}70%{box-shadow:0 0 0 8px rgba(255,68,102,0)}}
@keyframes cfgPulse{0%,100%{box-shadow:0 0 0 0 rgba(100,200,255,.3)}50%{box-shadow:0 0 8px 2px rgba(100,200,255,.4)}}

/* AOI POPUP STYLING */
.aoi-popup-inner{font-family:'Share Tech Mono',monospace;padding:4px 0}
.aoi-popup-title{color:#C8A84B;font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.12em;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.aoi-popup-title .aoi-id{background:rgba(200,168,75,.2);padding:1px 6px;border-radius:2px;font-size:9px}
.aoi-popup-coords{color:#607090;font-size:9px;margin-bottom:2px;line-height:1.5}
.aoi-popup-mgrs{color:rgba(0,212,255,.6);font-size:9px;margin-bottom:8px}
.aoi-popup-radius-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.aoi-popup-radius-row label{color:#8090a0;font-size:9px;min-width:42px}
.aoi-popup-radius-row input[type=range]{flex:1;height:3px;accent-color:var(--gold);cursor:pointer}
.aoi-popup-radius-row .radius-val{color:var(--gold);font-size:10px;min-width:48px;text-align:right}
.aoi-popup-actions{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.aoi-popup-actions button{
  background:rgba(200,168,75,.06);border:1px solid rgba(200,168,75,.25);
  color:#b0a070;font-family:'Share Tech Mono',monospace;font-size:9px;
  padding:4px 8px;cursor:pointer;text-align:left;transition:all .15s;border-radius:1px;
}
.aoi-popup-actions button:hover{background:rgba(200,168,75,.15);color:var(--gold)}
.aoi-popup-actions button.danger{border-color:rgba(255,68,68,.25);color:#906060}
.aoi-popup-actions button.danger:hover{background:rgba(255,68,68,.12);color:#ff6060}

/* AOI LIST in zone panel */
.aoi-list{max-height:200px;overflow-y:auto;margin-top:8px}
.aoi-list-item{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 8px;border-bottom:1px solid rgba(200,168,75,.1);
  cursor:pointer;transition:background .15s;font-size:9px;
}
.aoi-list-item:hover{background:rgba(200,168,75,.08)}
.aoi-list-item .ali-name{color:var(--gold);font-weight:600}
.aoi-list-item .ali-coord{color:#607090;font-size:8px}
.aoi-list-item .ali-del{color:#604040;cursor:pointer;font-size:11px;padding:0 4px}
.aoi-list-item .ali-del:hover{color:#ff4466}

/* TEMPORAL */
#temporal{height:110px;background:var(--dark2);border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;justify-content:center;padding:0 14px;position:relative;transition:height .3s}
#temporal.collapsed{height:26px}
.temp-toggle{position:absolute;top:0;left:50%;transform:translateX(-50%);background:var(--dark3);border:1px solid var(--border);border-top:none;padding:2px 14px;cursor:pointer;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);letter-spacing:.12em;transition:color .2s}
.temp-toggle:hover{color:var(--cyan)}
#temp-content{display:flex;flex-direction:column;gap:4px}
#temporal.collapsed #temp-content{display:none}
.temp-top{display:flex;align-items:center;justify-content:space-between}
.temp-label{font-family:'Orbitron',monospace;font-size:9px;color:var(--gold);letter-spacing:.12em}
.temp-presets{display:flex;gap:4px}
.tp{font-family:'Share Tech Mono',monospace;font-size:8px;padding:2px 6px;background:var(--dark3);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all .2s;letter-spacing:.07em}
.tp:hover{border-color:var(--cyan);color:var(--cyan)}.tp.active{background:rgba(0,212,255,.1);border-color:var(--cyan);color:var(--cyan)}
/* histogram */
#temp-histo-row{position:relative;width:100%;height:36px;margin:1px 0}
#temp-histo{width:100%;height:36px;display:block;border-radius:2px}
#temp-histo-cursor{position:absolute;top:0;bottom:0;width:2px;background:var(--cyan);box-shadow:0 0 6px var(--cyan);pointer-events:none;transition:left 60ms linear;left:100%}
/* transport */
.temp-controls{display:flex;align-items:center;gap:6px}
.temp-transport{display:flex;gap:2px;flex-shrink:0}
.temp-tbtn{width:20px;height:20px;border:1px solid var(--border);background:rgba(0,212,255,.04);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:8px;flex-shrink:0;transition:all .15s}
.temp-tbtn:hover{border-color:var(--cyan);color:var(--cyan);background:rgba(0,212,255,.12)}
.temp-play{width:22px;height:22px;border:1px solid var(--cyan);background:rgba(0,212,255,.08);color:var(--cyan);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;border-radius:2px}
.temp-play:hover{background:rgba(0,212,255,.2)}
.temp-play.active{background:rgba(0,212,255,.2);box-shadow:0 0 8px rgba(0,212,255,.3)}
.temp-slider-wrap{flex:1;position:relative;height:18px;display:flex;align-items:center}
.temp-track{width:100%;height:3px;background:var(--dark4);border-radius:2px;position:relative}
.temp-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--cyan));border-radius:2px;transition:width 60ms linear}
.temp-markers{position:absolute;top:5px;left:0;right:0;display:flex;justify-content:space-between}
.temp-marker{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted)}
input#tslider{position:absolute;top:-5px;left:0;width:100%;height:14px;opacity:0;cursor:pointer;z-index:10}
.temp-speed{font-family:'Orbitron',monospace;font-size:8px;color:var(--gold);cursor:pointer;padding:2px 5px;border:1px solid var(--border);background:var(--dark3);letter-spacing:.06em;flex-shrink:0;min-width:22px;text-align:center;transition:all .15s;user-select:none}
.temp-speed:hover{border-color:var(--gold);background:rgba(200,168,75,.1)}
.temp-loop{font-size:12px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:all .15s;user-select:none;padding:0 2px}
.temp-loop:hover{color:var(--cyan)}
.temp-loop.active{color:var(--cyan);text-shadow:0 0 6px var(--cyan)}
.temp-time{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--cyan);white-space:nowrap;letter-spacing:.07em;min-width:120px;text-align:right}

/* RIGHT PANEL */
/* ══════════════════════════════════════
   RIGHT PANEL — AARU INTEL STREAM
   ══════════════════════════════════════ */
#rp{width:360px;background:var(--dark2);border-left:1px solid var(--border);
  display:flex;flex-direction:column;overflow:hidden;flex-shrink:0;
  transition:width .25s;position:relative}
.rp-collapsed{width:32px}
#rp.rp-collapsed #ai-section,#rp.rp-collapsed #analysis-section,#rp.rp-collapsed #vfeed-section,#rp.rp-collapsed #intel-section,
#rp.rp-collapsed #ao-status-bar,#rp.rp-collapsed #sensor-strip,
#rp.rp-collapsed #rp-header{display:none}
/* ── RP HEADER ── */
#rp-header{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 6px;
  border-bottom:1px solid var(--border);background:var(--dark1);flex-shrink:0}
#rp-toggle{width:18px;height:18px;background:transparent;border:1px solid var(--border);
  border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:8px;color:#607090;flex-shrink:0;transition:color .15s}
#rp-toggle:hover{color:var(--cyan);border-color:var(--cyan)}
#rp-title{font-family:'Orbitron',monospace;font-size:9px;letter-spacing:.14em;
  color:var(--gold);font-weight:600;white-space:nowrap}
.rp-rail{display:none;flex-direction:column;align-items:center;padding:8px 0;gap:10px}
#rp.rp-collapsed .rp-rail{display:flex}
.rp-rail-icon{font-size:14px;cursor:pointer;opacity:.4;transition:opacity .15s;line-height:1}
.rp-rail-icon:hover{opacity:1}

/* ── AO STATUS BAR ── */
#ao-status-bar{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 10px;border-bottom:1px solid var(--border);
  background:rgba(4,7,16,.6);flex-shrink:0}
#ao-threat-pill{
  display:flex;align-items:center;gap:5px;
  font-family:'Orbitron',monospace;font-size:8px;font-weight:700;
  letter-spacing:.12em;padding:3px 8px;border-radius:2px;border:1px solid}
.threat-LOW{color:#00ff88;border-color:rgba(0,255,136,.3);background:rgba(0,255,136,.06)}
.threat-MED{color:#ffa500;border-color:rgba(255,165,0,.3);background:rgba(255,165,0,.06)}
.threat-HIGH{color:#ff4466;border-color:rgba(255,68,102,.3);background:rgba(255,68,102,.08);animation:tpulse 1.2s ease-in-out infinite}
.threat-CRITICAL{color:#ff0033;border-color:rgba(255,0,51,.5);background:rgba(255,0,51,.12);animation:tpulse .6s ease-in-out infinite}
@keyframes tpulse{0%,100%{opacity:1}50%{opacity:.6}}
#ao-stats{display:flex;align-items:center;gap:0;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted)}
#ao-layer-ct{color:var(--cyan)}
#ao-feat-ct{color:var(--green)}
#ao-aoi-ct{color:var(--gold)}
.ao-stat-sep{padding-left:8px;margin-left:8px;border-left:1px solid var(--border)}
#ao-alert-ct{color:var(--gold)}
#ao-time-utc{color:#405060}

/* ── SENSOR HEALTH STRIP ── */
#sensor-strip{
  padding:5px 8px 4px;border-bottom:1px solid var(--border);
  background:rgba(4,7,16,.4);flex-shrink:0}
.ss-row{display:flex;gap:4px;align-items:center}
.ss-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;position:relative}
.ss-bar-wrap{width:100%;height:3px;background:var(--dark4);border-radius:2px;overflow:hidden}
.ss-bar{height:100%;border-radius:2px;transition:width .8s ease;animation:ssflicker 3s ease-in-out infinite}
@keyframes ssflicker{0%,100%{opacity:1}50%{opacity:.7}}
.ss-lbl{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);letter-spacing:.04em}
.ss-val{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-dim)}
.ss-dot{width:4px;height:4px;border-radius:50%;animation:lp 1.5s ease-in-out infinite}
/* alert state for sensor */
.ss-item.alert .ss-dot{animation:sdanger .4s ease-in-out infinite}
@keyframes sdanger{0%,100%{opacity:1;transform:scale(1.4)}50%{opacity:.3;transform:scale(.8)}}

/* ── AI CHAT SECTION ── */
#ai-section{border-bottom:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0}
.ai-header{padding:7px 10px;border-bottom:1px solid var(--border);display:flex;
  align-items:center;justify-content:space-between;flex-shrink:0;
  background:rgba(0,212,255,.03);transition:background .15s}
.ai-header:hover{background:rgba(0,212,255,.07)}
.ai-title{font-family:'Orbitron',monospace;font-size:9px;font-weight:700;letter-spacing:.14em;color:var(--cyan)}
.ai-status{display:flex;align-items:center;gap:4px;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--green)}
.ai-dot{width:5px;height:5px;border-radius:50%;background:var(--green);animation:lp 1.5s ease-in-out infinite}
.ai-header{padding:7px 10px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,rgba(200,168,75,0.06),rgba(0,212,255,0.03));flex-shrink:0;display:flex;align-items:center;justify-content:space-between}
#ai-chat-body{display:flex;flex-direction:column;flex:1;min-height:0;transition:max-height .3s ease;overflow:hidden}
#ai-chat-body.collapsed{max-height:0}
#ai-msgs{flex:1;overflow-y:auto;min-height:60px;max-height:180px;padding:7px;
  scrollbar-width:thin;scrollbar-color:var(--cyan) transparent;
  display:flex;flex-direction:column;gap:5px}
#ai-msgs::-webkit-scrollbar{width:2px}#ai-msgs::-webkit-scrollbar-thumb{background:var(--cyan)}
.ai-msg{max-width:92%;padding:6px 9px;font-size:10px;line-height:1.45;border-radius:2px}
.ai-msg.user{background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.2);
  color:var(--text);align-self:flex-end;font-family:'Share Tech Mono',monospace;font-size:9px}
.ai-msg.claude{background:rgba(200,168,75,.06);border:1px solid rgba(200,168,75,.2);
  color:var(--text);align-self:flex-start}
.ai-msg.claude .ai-label{font-family:'Orbitron',monospace;font-size:8px;color:var(--gold);letter-spacing:.1em;margin-bottom:3px}
.ai-msg.system{background:rgba(0,255,136,.05);border:1px solid rgba(0,255,136,.15);
  color:var(--green);align-self:center;font-family:'Share Tech Mono',monospace;font-size:9px;text-align:center}
.ai-typing{display:none;align-self:flex-start;padding:5px 9px;
  background:rgba(200,168,75,.06);border:1px solid rgba(200,168,75,.2)}
.ai-typing.show{display:block}
.ai-dots span{display:inline-block;width:4px;height:4px;border-radius:50%;background:var(--gold);
  margin:0 1px;animation:dot 1.2s ease-in-out infinite}
.ai-dots span:nth-child(2){animation-delay:.2s}.ai-dots span:nth-child(3){animation-delay:.4s}
@keyframes dot{0%,80%,100%{transform:scale(0)}40%{transform:scale(1)}}
.ai-sugs{display:flex;flex-wrap:wrap;gap:3px;padding:0 7px 5px;flex-shrink:0;max-height:220px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,212,255,0.15) transparent}
.ai-sug-label{width:100%;font-family:'Orbitron',monospace;font-size:7px;color:var(--gold);letter-spacing:.15em;padding:2px 0 1px;opacity:.5}
.ai-sug{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);
  background:var(--dark3);border:1px solid var(--border);padding:2px 5px;cursor:pointer;transition:all .2s;letter-spacing:.05em}
.ai-sug:hover{border-color:var(--cyan);color:var(--cyan)}
.ai-input-row{display:flex;gap:5px;padding:6px 7px;border-top:1px solid var(--border);flex-shrink:0}
#ai-input{flex:1;background:var(--dark3);border:1px solid var(--bcyan);color:var(--text);
  font-family:'Share Tech Mono',monospace;font-size:10px;padding:5px 8px;outline:none;
  letter-spacing:.07em;transition:border-color .2s}
#ai-input:focus{border-color:var(--cyan)}#ai-input::placeholder{color:var(--text-muted)}
.ai-send{background:rgba(0,212,255,.1);border:1px solid var(--cyan);color:var(--cyan);
  font-family:'Orbitron',monospace;font-size:8px;padding:5px 9px;cursor:pointer;
  letter-spacing:.1em;transition:all .2s}
.ai-send:hover{background:rgba(0,212,255,.2)}

/* ── INTEL STREAM ── */
#intel-section{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}
.intel-tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:rgba(4,7,16,.5)}
.itab{flex:1;padding:6px 4px;font-family:'Share Tech Mono',monospace;font-size:8px;
  letter-spacing:.06em;color:var(--text-muted);cursor:pointer;background:none;
  border:none;border-bottom:2px solid transparent;transition:all .2s}
.itab:hover{color:var(--text);background:rgba(0,212,255,.04)}
.itab.active{color:var(--cyan);border-bottom-color:var(--cyan);background:rgba(0,212,255,.06)}

/* INT filter pills */
#int-filter-row{
  display:flex;gap:3px;padding:5px 7px;border-bottom:1px solid var(--border);
  background:rgba(4,7,16,.3);flex-shrink:0;flex-wrap:wrap}
.int-pill{
  font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.08em;
  padding:2px 6px;border:1px solid var(--border);background:transparent;
  color:var(--text-muted);cursor:pointer;border-radius:1px;transition:all .15s}
.int-pill:hover{color:var(--text);border-color:rgba(255,255,255,.2)}
.int-pill.active{background:rgba(0,212,255,.1);border-color:var(--cyan);color:var(--cyan)}
.int-pill[style*="--pc"]:hover,.int-pill[style*="--pc"].active{
  background:rgba(from var(--pc) r g b / .1);border-color:var(--pc);color:var(--pc)}

/* Intel feed cards */
.intel-body{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--cyan) transparent}
.intel-body::-webkit-scrollbar{width:2px}.intel-body::-webkit-scrollbar-thumb{background:var(--cyan)}

/* ── ANALYSIS PANEL ── */
#analysis-section{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;border-top:1px solid var(--border)}
#analysis-header{display:flex;align-items:center;justify-content:space-between;padding:5px 8px;background:rgba(4,7,16,.6);border-bottom:1px solid var(--border);flex-shrink:0;cursor:pointer;user-select:none}
#analysis-header:hover{background:rgba(0,212,255,.04)}
.analysis-title{font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.14em;color:var(--cyan);font-weight:700}
.analysis-status{display:flex;align-items:center;gap:6px}
.analysis-hint{font-family:'Rajdhani',sans-serif;font-size:7.5px;color:rgba(200,168,75,.3);letter-spacing:.1em;font-weight:400;transition:opacity .3s}
.analysis-status .a-dot{width:5px;height:5px;border-radius:50%;background:var(--green);animation:lp 1.8s ease-in-out infinite}
.analysis-status .a-dot.idle{background:var(--text-muted);animation:none}
.analysis-status-txt{font-family:'Share Tech Mono',monospace;font-size:7.5px;color:var(--green);letter-spacing:.08em}
.analysis-status-txt.idle{color:var(--text-muted)}
#analysis-chevron{font-size:9px;color:var(--text-muted);transition:all .2s}
#analysis-body{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;transition:max-height .3s ease;max-height:600px}
#analysis-body.collapsed{max-height:0;overflow:hidden}
#analysis-scroll{flex:1;overflow-y:auto;padding:0;scrollbar-width:thin;scrollbar-color:var(--cyan) transparent}
#analysis-scroll::-webkit-scrollbar{width:2px}
#analysis-scroll::-webkit-scrollbar-thumb{background:var(--cyan)}

/* Analysis card */
.a-card{border-bottom:1px solid rgba(200,168,75,.08);padding:7px 9px;transition:background .15s}
.a-card:hover{background:rgba(0,212,255,.03)}
.a-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:4px}
.a-card-type{font-family:'Orbitron',sans-serif;font-size:7px;letter-spacing:.12em;font-weight:700}
.a-card-time{font-family:'Share Tech Mono',monospace;font-size:7.5px;color:var(--text-muted)}
.a-card-title{font-family:'Rajdhani',sans-serif;font-size:11px;color:var(--text);font-weight:600;line-height:1.3;margin-bottom:3px}
.a-card-detail{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text-dim);line-height:1.5}
.a-card-detail .a-kv{display:flex;gap:6px;padding:1px 0}
.a-card-detail .a-kv .a-k{color:var(--text-muted);min-width:60px;text-transform:uppercase;font-size:7.5px;letter-spacing:.06em}
.a-card-detail .a-kv .a-v{color:var(--text);font-size:9px}
.a-card-tags{display:flex;gap:4px;margin-top:4px;flex-wrap:wrap}
.a-tag{font-family:'Share Tech Mono',monospace;font-size:7px;padding:1px 5px;border-radius:1px;letter-spacing:.06em}
.a-tag.sig{background:rgba(0,255,136,.08);color:var(--green);border:1px solid rgba(0,255,136,.25)}
.a-tag.geo{background:rgba(0,212,255,.08);color:var(--cyan);border:1px solid rgba(0,212,255,.25)}
.a-tag.hum{background:rgba(255,68,170,.08);color:var(--pink);border:1px solid rgba(255,68,170,.25)}
.a-tag.mas{background:rgba(255,136,0,.08);color:var(--orange);border:1px solid rgba(255,136,0,.25)}
.a-tag.osi{background:rgba(170,102,255,.08);color:var(--purple);border:1px solid rgba(170,102,255,.25)}
.a-tag.com{background:rgba(200,168,75,.08);color:var(--gold);border:1px solid rgba(200,168,75,.25)}
.a-tag.imi{background:rgba(0,212,255,.08);color:var(--cyan);border:1px solid rgba(0,212,255,.25)}
.a-tag.sev-high{background:rgba(255,68,102,.1);color:var(--red);border:1px solid rgba(255,68,102,.3)}
.a-tag.sev-med{background:rgba(255,136,0,.08);color:var(--orange);border:1px solid rgba(255,136,0,.25)}
.a-card-coords{font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(0,212,255,.5);margin-top:3px;cursor:pointer}
.a-card-coords:hover{color:var(--cyan)}

/* Analysis empty state */
.analysis-empty{padding:20px 14px;text-align:center}
.analysis-empty-icon{font-size:24px;margin-bottom:8px;opacity:.3}
.analysis-empty-msg{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text-muted);line-height:1.6}
.analysis-empty-hint{font-family:'Rajdhani',sans-serif;font-size:10px;color:rgba(0,212,255,.4);margin-top:8px}
.analysis-empty-sub{font-family:'Share Tech Mono',monospace;font-size:7px;color:rgba(200,168,75,.25);letter-spacing:.1em;margin-top:12px;line-height:1.8}

/* ── ISR VIDEO FEED (independent section) ── */
#vfeed-section{flex-shrink:0;border-top:1px solid var(--border);display:flex;flex-direction:column}
#vfeed-header{display:flex;align-items:center;justify-content:space-between;padding:4px 8px;background:rgba(4,7,16,.6);cursor:pointer;user-select:none;flex-shrink:0}
#vfeed-header:hover{background:rgba(0,212,255,.04)}
.vfeed-title{font-family:'Orbitron',sans-serif;font-size:7.5px;letter-spacing:.12em;color:var(--gold);font-weight:700}
.vfeed-badge{font-family:'Share Tech Mono',monospace;font-size:7px;padding:1px 5px;letter-spacing:.08em;color:var(--text-muted);border:1px solid var(--border);background:rgba(255,255,255,.02)}
.vfeed-badge.live{color:var(--green);border-color:rgba(0,255,136,.3);background:rgba(0,255,136,.06);animation:lp 1.8s ease-in-out infinite}
#vfeed-chevron{font-size:8px;color:var(--text-muted)}
#vfeed-body{transition:max-height .3s ease;max-height:0;overflow:hidden}
#vfeed-body.collapsed{max-height:0}
#vfeed-viewport{width:100%;height:200px;background:#000;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;border-bottom:1px solid rgba(200,168,75,.1)}
#vfeed-empty{text-align:center;font-family:'Share Tech Mono',monospace}
#vfeed-iframe{border:none;background:#000}
#vfeed-mute-btn{position:absolute;bottom:6px;right:6px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);border:1px solid rgba(200,168,75,.3);border-radius:3px;cursor:pointer;font-size:13px;z-index:10;user-select:none;transition:background .2s,border-color .2s}
#vfeed-mute-btn:hover{background:rgba(200,168,75,.15);border-color:rgba(200,168,75,.6)}
#vfeed-overlay-btns{position:absolute;bottom:6px;right:6px;display:flex;gap:4px;z-index:10}
#vfeed-open-btn{width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.65);border:1px solid rgba(0,212,255,.3);border-radius:3px;cursor:pointer;font-size:12px;color:var(--cyan);user-select:none;font-family:'Share Tech Mono',monospace;transition:background .2s}
#vfeed-open-btn:hover{background:rgba(0,212,255,.15)}
#vfeed-audio-btn{height:26px;padding:0 8px;display:flex;align-items:center;justify-content:center;gap:4px;background:rgba(0,0,0,.65);border:1px solid rgba(200,168,75,.3);border-radius:3px;cursor:pointer;font-size:9px;color:var(--gold);user-select:none;font-family:'Share Tech Mono',monospace;letter-spacing:.05em;transition:background .2s,border-color .2s}
#vfeed-audio-btn:hover{background:rgba(200,168,75,.15);border-color:rgba(200,168,75,.6)}
#vfeed-audio-btn.on{color:var(--green);border-color:rgba(0,255,136,.4)}
#vfeed-controls{display:flex;gap:4px;padding:4px 6px;background:rgba(4,7,16,.5);align-items:center}
#vfeed-presets{flex:1;background:#0c1020;border:1px solid rgba(200,168,75,.3);color:var(--gold);font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 6px;outline:none;cursor:pointer}
#vfeed-presets:focus{border-color:var(--cyan);box-shadow:0 0 6px rgba(0,212,255,.2)}
#vfeed-presets option{background:#0a0e18;color:#c8d8e8;padding:4px 6px;font-size:9px}
#vfeed-presets option:checked{background:rgba(0,212,255,.15);color:var(--cyan)}
#vfeed-presets optgroup{background:#060a14;color:var(--gold);font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.08em;font-style:normal;padding:4px 0}
#vfeed-url{flex:1;background:var(--dark3);border:1px solid var(--border);color:var(--text);font-family:'Share Tech Mono',monospace;font-size:8px;padding:3px 6px;outline:none;letter-spacing:.04em}
#vfeed-url:focus{border-color:var(--cyan)}
#vfeed-url::placeholder{color:var(--text-muted);font-size:7.5px}
#vfeed-controls button{background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.3);color:var(--cyan);font-family:'Orbitron',monospace;font-size:7px;padding:3px 8px;cursor:pointer;letter-spacing:.1em;flex-shrink:0}
#vfeed-controls button:hover{background:rgba(0,212,255,.15)}
.vfeed-btn-disc{background:rgba(255,68,102,.08)!important;border-color:rgba(255,68,102,.3)!important;color:#ff6060!important}
#vfeed-meta{display:flex;gap:8px;padding:3px 8px;background:rgba(4,7,16,.4);border-top:1px solid rgba(200,168,75,.06)}
#vfeed-meta span{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);letter-spacing:.06em}

/* Analysis summary bar */
.a-summary{display:flex;gap:4px;padding:5px 8px;border-bottom:1px solid var(--border);background:rgba(4,7,16,.4);flex-shrink:0;flex-wrap:wrap;align-items:center}
.a-sum-chip{font-family:'Share Tech Mono',monospace;font-size:7.5px;padding:2px 6px;border-radius:1px;display:flex;align-items:center;gap:3px}
.a-sum-chip .a-sum-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0}
.a-sum-chip .a-sum-val{font-weight:700}

/* Feed card */
.icard{
  display:flex;border-bottom:1px solid rgba(200,168,75,.06);
  transition:background .15s;cursor:default;position:relative}
.icard:hover{background:rgba(0,212,255,.04)}
/* Severity rail */
.icard-rail{width:3px;flex-shrink:0}
.icard-rail.HIGH{background:var(--red)}
.icard-rail.MED{background:var(--gold)}
.icard-rail.LOW{background:var(--border)}
.icard-rail.INFO{background:var(--cyan)}
.icard-body{flex:1;padding:6px 8px 5px;min-width:0}
.icard-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.icard-int{font-family:'Orbitron',monospace;font-size:7px;font-weight:700;letter-spacing:.1em}
.icard-time{font-family:'Share Tech Mono',monospace;font-size:7px;color:#405060}
.icard-msg{font-family:'Share Tech Mono',monospace;font-size:9px;line-height:1.4;
  color:var(--text);margin-bottom:4px;word-break:break-word}
.icard-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.icard-badge{font-family:'Share Tech Mono',monospace;font-size:7px;padding:1px 5px;
  border-radius:1px;border:1px solid;letter-spacing:.06em}
.icard-coords{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);
  cursor:pointer;transition:color .15s}
.icard-coords:hover{color:var(--cyan)}
/* Action buttons per card */
.icard-actions{display:none;gap:4px;margin-top:5px}
.icard:hover .icard-actions{display:flex}
.icard-btn{font-family:'Share Tech Mono',monospace;font-size:7px;padding:2px 6px;
  border:1px solid;cursor:pointer;letter-spacing:.05em;background:transparent;transition:all .15s}
.icard-btn.focus{color:var(--cyan);border-color:rgba(0,212,255,.4)}
.icard-btn.focus:hover{background:rgba(0,212,255,.12)}
.icard-btn.ai{color:var(--gold);border-color:rgba(200,168,75,.4)}
.icard-btn.ai:hover{background:rgba(200,168,75,.12)}
.icard-btn.dismiss{color:var(--text-muted);border-color:var(--border)}
.icard-btn.dismiss:hover{color:var(--red);border-color:rgba(255,68,102,.4)}

/* NEW badge flash */
.icard-new{animation:cardflash .8s ease forwards}
@keyframes cardflash{0%{background:rgba(0,212,255,.18)}100%{background:transparent}}

/* Alert cards (in ALERTS tab) */
.acard{
  border-left:3px solid;padding:8px 10px;margin:4px 6px;
  border-radius:2px;font-family:'Share Tech Mono',monospace;transition:background .15s}
.acard:hover{filter:brightness(1.1)}
.acard-top{display:flex;justify-content:space-between;margin-bottom:3px}
.acard-int{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;letter-spacing:.1em}
.acard-time{font-size:7px;color:#405060}
.acard-msg{font-size:9px;line-height:1.4;margin-bottom:4px;color:var(--text)}
.acard-conf{font-size:7px;letter-spacing:.06em;margin-bottom:5px}
.acard-actions{display:flex;gap:5px}
.acard-btn{font-size:7px;padding:2px 7px;border:1px solid;cursor:pointer;
  background:transparent;font-family:'Share Tech Mono',monospace;letter-spacing:.05em;transition:all .15s}

/* Layer rows */
.il-row{display:flex;align-items:center;gap:7px;padding:6px 10px;
  border-bottom:1px solid rgba(255,255,255,.03);cursor:pointer;transition:background .15s}
.il-row:hover{background:rgba(0,212,255,.04)}
.il-tog{width:28px;height:14px;border-radius:7px;border:1px solid var(--border);
  background:var(--dark4);position:relative;flex-shrink:0;transition:all .2s}
.il-tog::after{content:'';position:absolute;top:2px;left:2px;width:8px;height:8px;
  border-radius:50%;background:var(--text-muted);transition:all .2s}
.il-tog.on{border-color:var(--cyan);background:rgba(0,212,255,.15)}
.il-tog.on::after{left:16px;background:var(--cyan)}
.c-green.on::after{background:var(--green)}
.c-green.on{border-color:var(--green);background:rgba(0,255,136,.12)}
.c-cyan.on::after{background:var(--cyan)}.c-gold.on::after{background:var(--gold)}
.c-gold.on{border-color:var(--gold);background:rgba(200,168,75,.12)}
.c-orange.on::after{background:var(--orange)}.c-orange.on{border-color:var(--orange);background:rgba(255,136,0,.12)}
.c-pink.on::after{background:var(--pink)}.c-pink.on{border-color:var(--pink);background:rgba(255,68,170,.12)}
.c-red.on::after{background:var(--red)}.c-red.on{border-color:var(--red);background:rgba(255,68,102,.12)}
.c-purple.on::after{background:var(--purple)}.c-purple.on{border-color:var(--purple);background:rgba(170,102,255,.12)}
.il-info{flex:1;min-width:0}
.il-name{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text);letter-spacing:.04em}
.il-sub{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted)}
.il-rbadge{font-family:'Share Tech Mono',monospace;font-size:7px;padding:1px 5px;border-radius:1px;letter-spacing:.05em;flex-shrink:0}
.int-cat-hdr{padding:4px 10px 3px;font-family:'Orbitron',monospace;font-size:7px;
  font-weight:700;letter-spacing:.14em;background:rgba(4,7,16,.7);
  border-bottom:1px solid rgba(255,255,255,.05)}

/* Intel layer group — collapsible (mirrors left panel .lg pattern) */
.il-group{border-bottom:1px solid rgba(255,255,255,.04)}
.il-group-hdr{
  display:flex;align-items:center;gap:7px;padding:7px 10px;cursor:pointer;
  background:rgba(4,7,16,.5);transition:background .15s;user-select:none}
.il-group-hdr:hover{background:rgba(0,212,255,.06)}
.il-group-icon{font-size:12px;flex-shrink:0;width:14px;text-align:center}
.il-group-labels{flex:1;min-width:0}
.il-group-title{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;
  letter-spacing:.12em;display:block}
.il-group-sub{font-family:'Share Tech Mono',monospace;font-size:7px;
  color:var(--text-muted);letter-spacing:.04em;display:block;margin-top:1px}
.il-group-right{display:flex;align-items:center;gap:5px;flex-shrink:0}
.il-active-badge{font-family:'Share Tech Mono',monospace;font-size:7px;
  padding:1px 5px;border-radius:1px;background:rgba(0,255,136,.12);
  border:1px solid rgba(0,255,136,.3);color:var(--green);letter-spacing:.05em}
.il-group-count{font-family:'Share Tech Mono',monospace;font-size:7px;color:#405060}
.il-group-arrow{font-size:7px;color:#405060;transition:color .15s;width:8px}
.il-group-hdr:hover .il-group-arrow{color:var(--cyan)}
.il-group-body{background:rgba(4,7,16,.2)}

.ic{padding:7px 11px;border-bottom:1px solid rgba(200,168,75,.06);transition:background .15s}
.ic:hover{background:rgba(0,212,255,.03)}
.ic-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}
.ic-label{font-family:'Orbitron',monospace;font-size:8px;letter-spacing:.1em;font-weight:700}
.ic-time{font-family:'Share Tech Mono',monospace;font-size:7px;color:#405060}
.ic-msg{font-family:'Share Tech Mono',monospace;font-size:9px;line-height:1.4;color:var(--text);margin-bottom:3px}
.ic-coords{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);cursor:pointer;margin-bottom:2px}
.ic-coords:hover{color:var(--cyan)}
.ic-badge{font-family:'Share Tech Mono',monospace;font-size:7px;padding:1px 5px;border-radius:1px;margin-right:4px}
.ic-ai-btn{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--gold);
  cursor:pointer;padding:1px 5px;border:1px solid rgba(200,168,75,.3);border-radius:1px;transition:all .15s}
.ic-ai-btn:hover{background:rgba(200,168,75,.12)}

.agent-toast{position:absolute;top:14px;right:14px;background:rgba(4,7,16,.96);border:1px solid var(--red);padding:10px 14px;font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--red);z-index:450;max-width:260px;animation:toastIn .3s ease forwards;box-shadow:0 0 20px rgba(255,68,102,.2)}
@keyframes toastIn{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}
.at-title{font-family:'Orbitron',monospace;font-size:9px;color:var(--red);letter-spacing:.15em;margin-bottom:4px;font-weight:700}
.at-msg{color:var(--text);font-size:9px;line-height:1.4;margin-bottom:6px}
.at-actions{display:flex;gap:5px}
.at-btn{font-family:'Share Tech Mono',monospace;font-size:7px;padding:2px 7px;cursor:pointer;letter-spacing:.08em}
.at-btn.inv{background:rgba(255,68,102,.1);border:1px solid rgba(255,68,102,.4);color:var(--red)}
.at-btn.inv:hover{background:rgba(255,68,102,.25)}
.at-btn.dis{background:var(--dark3);border:1px solid var(--border);color:var(--text-muted)}
.at-btn.dis:hover{color:var(--text)}

/* AOI pulse ring */
.aoi-ring{border-radius:50%;animation:aoiR 2s ease-in-out infinite}
@keyframes aoiR{0%,100%{box-shadow:0 0 0 0 rgba(255,68,102,.5)}70%{box-shadow:0 0 0 10px rgba(255,68,102,0)}}

/* BOTTOM BAR */
/* ── TIMELINE SLIDER ── */
#timeline-bar{display:flex;align-items:center;gap:8px;padding:0 12px;height:28px;background:rgba(4,7,16,.8);border-top:1px solid var(--border);flex-shrink:0}
#tl-label{font-family:'Orbitron',sans-serif;font-size:7px;color:var(--gold);letter-spacing:.12em;flex-shrink:0}
#tl-controls{display:flex;align-items:center;gap:6px;flex:1}
#tl-controls span{font-family:'Share Tech Mono',monospace;font-size:7.5px;color:var(--text-muted);flex-shrink:0}
#tl-slider{flex:1;height:3px;accent-color:var(--gold);cursor:pointer;-webkit-appearance:none;background:var(--border);outline:none;border-radius:2px}
#tl-slider::-webkit-slider-thumb{-webkit-appearance:none;width:10px;height:10px;background:var(--gold);border-radius:50%;cursor:pointer;border:none}
#tl-value{font-family:'Share Tech Mono',monospace;font-size:7.5px;color:var(--cyan);flex-shrink:0;min-width:100px}
#tl-btns{display:flex;gap:2px;flex-shrink:0}
.tl-btn{font-family:'Orbitron',sans-serif;font-size:7px;padding:2px 6px;background:rgba(255,255,255,.03);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all .15s;letter-spacing:.05em}
.tl-btn:hover,.tl-btn.active{background:rgba(200,168,75,.12);color:var(--gold);border-color:rgba(200,168,75,.4)}

/* ── LINK CHART PANEL ── */
#linkchart-panel{position:fixed;bottom:60px;right:20px;width:320px;height:360px;z-index:600;background:rgba(4,7,16,.95);border:1px solid var(--cyan);display:flex;flex-direction:column;backdrop-filter:blur(8px);box-shadow:0 8px 30px rgba(0,0,0,.5)}
#lc-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-bottom:1px solid var(--border);flex-shrink:0}
#lc-toolbar{display:flex;gap:4px;padding:4px 8px;border-bottom:1px solid rgba(255,255,255,.04);flex-shrink:0}
.lc-tool{font-family:'Share Tech Mono',monospace;font-size:8px;padding:3px 8px;background:rgba(0,212,255,.06);border:1px solid rgba(0,212,255,.2);color:var(--cyan);cursor:pointer;transition:background .15s}
.lc-tool:hover{background:rgba(0,212,255,.15)}
#lc-canvas{flex:1;position:relative;overflow:hidden}
#lc-nodes{padding:4px 8px;max-height:100px;overflow-y:auto;border-top:1px solid var(--border);font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted)}

/* Bot bar extra buttons */
#intsum-btn,#linkchart-btn,#theme-btn{background:rgba(0,212,255,.06);border:1px solid rgba(0,212,255,.2);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:8px;padding:2px 8px;cursor:pointer;transition:all .15s}
#intsum-btn:hover,#linkchart-btn:hover,#theme-btn:hover{background:rgba(0,212,255,.15);border-color:rgba(0,212,255,.4)}

/* ── NIGHT MODE — reduce display output, tactical low-vis ── */
body.night-mode{
  --dark:#01030A;
  --dark1:#02040C;
  --dark2:#03060F;
  --dark3:#060A16;
  --text:rgba(140,160,185,0.75);
  --text-dim:rgba(60,80,110,0.6);
  --text-muted:rgba(30,50,75,0.7);
  --border:rgba(0,212,255,0.06);
  --bcyan:rgba(0,212,255,0.06);
  --cyan:rgba(0,180,220,0.6);
  --gold:rgba(160,130,55,0.65);
  --green:rgba(0,180,100,0.6);
}
body.night-mode #map{ filter:brightness(0.65) contrast(1.05); }
body.night-mode #topbar{ background:#01030A; }
body.night-mode #bot{ background:#01030A; }
body.night-mode #lp,body.night-mode #rp{ background:#02040C; }
/* ══ DISPLAY PANEL STYLES ══════════════════════════════════════ */
#display-btn.display-btn-active{color:rgba(0,212,255,0.8)!important;border-color:rgba(0,212,255,0.3)!important;background:rgba(0,212,255,0.06)!important}
.dp-chip{flex:1;text-align:center;font-family:'Orbitron',sans-serif;font-size:7px;letter-spacing:.1em;padding:5px 3px;cursor:pointer;border:1px solid rgba(0,212,255,0.12);color:rgba(0,212,255,0.3);background:transparent;border-radius:2px;transition:all .15s;user-select:none}
.dp-chip:hover{color:rgba(0,212,255,0.7);border-color:rgba(0,212,255,0.3);background:rgba(0,212,255,0.06)}
.dp-chip.dp-chip-active{color:rgba(0,212,255,0.9);border-color:rgba(0,212,255,0.5);background:rgba(0,212,255,0.1)}
#dp-bright,#dp-opacity{-webkit-appearance:none;appearance:none;width:100%;height:3px;border-radius:2px;background:rgba(0,212,255,0.12);outline:none;cursor:pointer}
#dp-bright::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:rgba(0,212,255,0.85);cursor:pointer}
#dp-opacity::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:rgba(200,168,75,0.85);cursor:pointer}
body.hicon-mode{--text:rgba(220,235,255,0.95);--text-dim:rgba(160,190,220,0.8);--text-muted:rgba(120,160,200,0.7);--border:rgba(0,212,255,0.25);--bcyan:rgba(0,212,255,0.2);--cyan:rgba(0,212,255,0.95);--gold:rgba(220,180,60,0.95);--green:rgba(0,255,136,0.9)}

/* ── coord-search-bar night-mode ── */
body.night-mode #coord-search-bar{background:rgba(10,8,4,1)!important;border-bottom-color:rgba(200,168,75,0.18)!important}
body.night-mode #cs-input{color:rgba(140,118,72,0.5)!important}
body.night-mode #cs-input::placeholder{color:rgba(120,100,58,0.35)!important}
body.night-mode #cs-btn{background:rgba(200,168,75,0.06)!important;color:rgba(200,168,75,0.4)!important}
body.night-mode #cs-result{background:rgba(10,8,4,0.98)!important;border-bottom-color:rgba(200,168,75,0.14)!important}


#night-btn.night-active{
  color:rgba(0,180,220,0.7);
  border-color:rgba(0,180,220,0.25);
  background:rgba(0,180,220,0.04);
}

#bot{height:26px;background:var(--dark2);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 12px;flex-shrink:0;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted)}
#coords{color:var(--cyan);letter-spacing:.08em}
#ac{color:var(--gold)}
#agent-status-bar{color:var(--green)}

/* Scan line */

/* Loading */
#load{position:absolute;inset:0;background:var(--dark);z-index:500;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;transition:opacity .6s}
#load.hidden{opacity:0;pointer-events:none}
.ltd{font-family:'Orbitron',monospace;font-size:14px;color:var(--cyan);letter-spacing:.3em}
.ltb{width:220px;height:2px;background:var(--dark3)}
.ltf{height:100%;background:linear-gradient(90deg,var(--gold),var(--cyan));animation:lf 2s ease forwards}
@keyframes lf{from{width:0}to{width:100%}}
.lts{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--text-muted);letter-spacing:.15em}
/* Leaflet */
.leaflet-container{background:#040710!important;outline:0!important}.leaflet-container:focus{outline:0!important}.leaflet-container:focus-visible{outline:0!important}#mc:focus,#mc *:focus{outline:0!important}
.leaflet-control-zoom{border:1px solid var(--border)!important;background:var(--dark2)!important}
.leaflet-control-zoom a{background:var(--dark2)!important;color:var(--gold)!important;border-bottom:1px solid var(--border)!important}
.leaflet-control-zoom a:hover{background:var(--dark3)!important}
.leaflet-control-attribution{background:rgba(4,7,16,.8)!important;color:var(--text-muted)!important;font-size:7px!important}
.leaflet-popup-content-wrapper{background:var(--dark2)!important;border:1px solid var(--gold)!important;border-radius:0!important;box-shadow:0 0 20px rgba(200,168,75,.2)!important}
.leaflet-popup-tip{background:var(--dark2)!important}
.leaflet-popup-content{margin:0!important;padding:0!important}

/* BASEMAP GRID v2 */
.bm-cat{font-family:Share Tech Mono,monospace;font-size:7px;color:var(--text-muted);padding:5px 10px 3px;letter-spacing:.08em}
.bmg2{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0 8px 4px}
.bm2{background:rgba(255,255,255,.03);border:1px solid var(--border);padding:5px 6px;cursor:pointer;display:flex;flex-direction:column;gap:1px;transition:all .15s;border-radius:2px}
.bm2:hover{background:rgba(200,168,75,.08);border-color:rgba(200,168,75,.4)}
.bm2.active{background:rgba(200,168,75,.1);border-color:var(--gold)}
.bm2-icon{font-size:11px;line-height:1}
.bm2-name{font-family:Orbitron,monospace;font-size:7px;color:var(--text);letter-spacing:.05em;font-weight:700}
.bm2.active .bm2-name{color:var(--gold)}
.bm2-sub{font-family:Share Tech Mono,monospace;font-size:7px;color:var(--text-muted)}
/* COORD SEARCH — sits inside #map as absolute overlay */
/* ── MAP TOOLS TOOLBAR ── */
#map-tools{position:absolute;top:80px;left:12px;z-index:500;display:flex;flex-direction:column;gap:2px;background:rgba(4,7,16,.88);border:1px solid var(--border);padding:4px;backdrop-filter:blur(8px)}
.mt-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-muted);cursor:pointer;border:1px solid transparent;transition:all .2s;user-select:none}
.mt-btn:hover{color:var(--gold);background:rgba(200,168,75,.08);border-color:rgba(200,168,75,.2)}
.mt-btn.active{color:var(--cyan);background:rgba(0,212,255,.1);border-color:rgba(0,212,255,.3)}
.mt-sep{height:1px;background:var(--border);margin:2px 0}
#bookmark-list{position:absolute;top:80px;left:50px;z-index:501;background:rgba(4,7,16,.95);border:1px solid var(--gold);min-width:200px;max-height:300px;overflow-y:auto;backdrop-filter:blur(8px)}
#bk-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;font-family:'Orbitron',sans-serif;font-size:8px;color:var(--gold);letter-spacing:.12em;border-bottom:1px solid var(--border)}
#bk-items{padding:4px}
.bk-item{padding:5px 8px;cursor:pointer;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);border-bottom:1px solid rgba(255,255,255,.03);display:flex;justify-content:space-between;align-items:center;transition:background .15s}
.bk-item:hover{background:rgba(0,212,255,.06);color:var(--cyan)}
.bk-item .bk-del{font-size:9px;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s}
.bk-item:hover .bk-del{opacity:1}
#measure-readout{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);z-index:500;background:rgba(4,7,16,.92);border:1px solid var(--cyan);padding:5px 14px;font-family:'Share Tech Mono',monospace;font-size:10px;color:var(--cyan);letter-spacing:.06em;backdrop-filter:blur(6px)}

#coord-search-bar{position:relative;display:flex;align-items:center;background:rgba(14,11,6,1);border-bottom:1px solid rgba(200,168,75,0.22);flex-shrink:0;z-index:10}
#cs-icon{padding:7px 9px;color:rgba(200,168,75,0.38);font-size:11px;flex-shrink:0}
#cs-input{flex:1;background:transparent;border:none;outline:none;color:rgba(160,140,95,0.55);font-family:Share Tech Mono,monospace;font-size:10px;padding:7px 4px;letter-spacing:.04em}
#cs-input::placeholder{color:rgba(140,118,72,0.38);font-size:9px}
#cs-btn{padding:6px 10px;background:rgba(200,168,75,0.07);color:rgba(200,168,75,0.45);font-family:Orbitron,monospace;font-size:8px;cursor:pointer;border-left:1px solid rgba(200,168,75,0.1);letter-spacing:.1em;flex-shrink:0}
#cs-btn:hover{background:rgba(200,168,75,0.14);color:rgba(200,168,75,0.75)}
#cs-clear{padding:6px 8px;color:rgba(200,168,75,0.2);cursor:pointer;font-size:10px;flex-shrink:0}
#cs-home{padding:6px 8px;color:rgba(200,168,75,0.38);cursor:pointer;font-size:12px;flex-shrink:0;border-left:1px solid rgba(200,168,75,0.1);transition:color .15s}
#cs-home:hover{color:rgba(200,168,75,0.7);background:rgba(200,168,75,0.06)}
#cs-result{position:absolute;left:0;right:0;z-index:499;background:rgba(14,11,6,0.98);border-bottom:1px solid rgba(200,168,75,0.18);display:none;font-family:Share Tech Mono,monospace;font-size:9px}
.cs-item{padding:6px 12px;cursor:pointer;color:var(--text);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:8px}
.cs-item:hover{background:rgba(0,212,255,.07)}
.cs-item-type{font-size:7px;padding:1px 5px;border-radius:2px;flex-shrink:0}
.cs-t-lat{background:rgba(0,255,136,.08);color:var(--green);border:1px solid rgba(0,255,136,.25)}
.cs-t-mgrs{background:rgba(200,168,75,.08);color:var(--gold);border:1px solid rgba(200,168,75,.25)}
.cs-t-place{background:rgba(0,212,255,.08);color:var(--cyan);border:1px solid rgba(0,212,255,.25)}
.cs-t-info{background:rgba(255,255,255,.05);color:var(--text-muted);border:1px solid var(--border)}
/* MAP NAVIGATOR — defined in nav-menu section below */
/* VOICE BTN */
#voice-btn{width:28px;height:28px;background:rgba(0,212,255,.06);border:1px solid var(--bcyan);border-radius:2px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0;opacity:.7;transition:all .2s}
#voice-btn:hover{opacity:1;background:rgba(0,212,255,.15)}
#voice-btn.listening{opacity:1;background:rgba(255,68,102,.12);border-color:var(--red);animation:mic-pulse 1s infinite}
@keyframes mic-pulse{0%,100%{box-shadow:0 0 0 0 rgba(255,68,102,.4)}50%{box-shadow:0 0 0 5px rgba(255,68,102,0)}}
/* BADGE TYPES */
/* .badge.live defined above — cascade resolved to green live-data indicator */
.badge.nrt{background:rgba(0,212,255,.08);color:var(--cyan);border-color:rgba(0,212,255,.3)}

/* ── TILT / BEARING PANEL ── */

/* ── ALERTS TOGGLE BUTTON ── */
#alerts-toggle.muted .alert-dot{background:#304050}
/* pulse when alerts active */

/* ── MAP CMD — bottom-left, above tilt panel ── */
@keyframes mapCmdFade{0%{opacity:1}70%{opacity:1}100%{opacity:0}}

/* ── ALERTS TOGGLE — top-left ── */
#alerts-toggle{position:absolute;top:10px;left:10px;z-index:501;background:rgba(4,7,16,.92);border:1px solid rgba(200,168,75,.4);color:var(--gold);font-size:9px;font-family:'Share Tech Mono',monospace;padding:5px 9px;cursor:pointer;letter-spacing:1px;display:flex;align-items:center;gap:5px;transition:all .2s}
#alerts-toggle:hover{background:rgba(200,168,75,.12)}
#alerts-toggle.muted{border-color:rgba(96,112,144,.35);color:#405060}
.alert-dot{width:6px;height:6px;border-radius:50%;background:var(--green);flex-shrink:0}
@keyframes alertPulse{0%,100%{opacity:1}50%{opacity:.35}}
.alert-dot.pulsing{animation:alertPulse 1.8s ease infinite}

/* ── UNIFIED NAV + PLANE PANEL — bottom-right ── */
/* ══ NAV FAB + MENU ════════════════════════════════════════════════ */
#nav-panel{
  position:absolute;bottom:14px;right:14px;z-index:500;
  display:flex;flex-direction:column;align-items:flex-end;
  pointer-events:none; /* children handle events */
}
/* Joystick FAB button */
#nav-fab{
  width:46px;height:46px;
  background:rgba(4,7,16,0.92);
  border:1px solid rgba(200,168,75,0.45);
  border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  font-size:22px;cursor:pointer;
  box-shadow:0 0 18px rgba(200,168,75,0.2), 0 2px 8px rgba(0,0,0,0.6);
  pointer-events:all;
  transition:all .2s;
  z-index:2;
  user-select:none;
}
#nav-fab:hover{
  background:rgba(200,168,75,0.15);
  box-shadow:0 0 24px rgba(200,168,75,0.4);
  transform:scale(1.08);
}
#nav-fab.open{
  border-color:rgba(200,168,75,0.8);
  background:rgba(200,168,75,0.1);
}
/* Expandable menu — pops up above FAB */
#nav-menu{
  position:absolute;bottom:54px;right:0;
  width:180px;
  background:rgba(4,7,16,0.97);
  border:1px solid rgba(200,168,75,0.3);
  box-shadow:0 0 24px rgba(0,0,0,0.8);
  pointer-events:all;
  transform-origin:bottom right;
  transform:scale(0.85);
  opacity:0;
  pointer-events:none;
  transition:transform .18s cubic-bezier(.34,1.56,.64,1), opacity .15s ease;
  border-radius:3px;
  overflow:hidden;
}
#nav-menu.open{
  transform:scale(1);
  opacity:1;
  pointer-events:all;
}
#nav-menu-header{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 8px;
  background:rgba(200,168,75,0.08);
  border-bottom:1px solid rgba(200,168,75,0.15);
  font-family:'Orbitron',sans-serif;font-size:8px;
  letter-spacing:1.5px;color:rgba(200,168,75,0.7);
}
#nav-menu-close{
  cursor:pointer;color:rgba(200,168,75,0.5);font-size:10px;
  padding:0 2px;transition:color .15s;
}
#nav-menu-close:hover{color:#d4a84b;}
/* tabs */
#nav-tabs{display:flex;border-bottom:1px solid rgba(200,168,75,.15)}
.nav-tab{flex:1;padding:6px 0;text-align:center;font-size:9px;letter-spacing:1.5px;color:#405060;cursor:pointer;font-family:'Orbitron',sans-serif;transition:all .15s}
.nav-tab.active,.nav-tab:hover{color:var(--gold);background:rgba(200,168,75,.06)}
/* nav page */
#nav-page-nav{padding:10px 10px 8px}
#nav-zoom-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.nz-btn{width:32px;height:32px;background:rgba(255,255,255,.05);border:1px solid rgba(200,168,75,.3);color:var(--gold);font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:3px;transition:all .15s;user-select:none}
.nz-btn:hover{background:rgba(200,168,75,.2)}
#nz-level{font-family:'Orbitron',sans-serif;font-size:10px;color:var(--green);letter-spacing:1px}
#nav-ring{width:100px;height:100px;position:relative;margin:0 auto 10px}
.nav-btn{position:absolute;width:30px;height:30px;background:rgba(255,255,255,.05);border:1px solid rgba(200,168,75,.25);color:var(--gold);font-size:13px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:3px;transition:all .15s;user-select:none}
.nav-btn:hover,.nav-btn:active{background:rgba(200,168,75,.3)}
#nav-n{top:0;left:50%;transform:translateX(-50%)}
#nav-e{right:0;top:50%;transform:translateY(-50%)}
#nav-s{bottom:0;left:50%;transform:translateX(-50%)}
#nav-w{left:0;top:50%;transform:translateY(-50%)}
#nav-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;background:rgba(255,255,255,.04);border:1px solid rgba(100,200,255,.25);color:rgba(100,200,255,.7);font-size:14px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:50%;transition:all .15s}
#nav-center:hover{background:rgba(100,200,255,.15);color:#64c8ff}

#nav-speed{display:flex;gap:2px}
.ns-btn{width:22px;height:18px;background:rgba(255,255,255,.04);border:1px solid rgba(200,168,75,.2);color:#607080;font-size:9px;font-family:'Orbitron',sans-serif;letter-spacing:.5px;display:flex;align-items:center;justify-content:center;cursor:pointer;border-radius:2px;transition:all .15s}
.ns-btn.active,.ns-btn:hover{background:rgba(200,168,75,.2);color:var(--gold);border-color:rgba(200,168,75,.5)}
#zoom-presets{display:flex;gap:3px;justify-content:center;margin-top:4px}
.zp-btn{flex:1;padding:5px 0;background:rgba(255,255,255,.04);border:1px solid rgba(100,200,255,.18);color:rgba(100,200,255,.6);font-size:9px;font-family:'Orbitron',sans-serif;text-align:center;cursor:pointer;border-radius:2px;transition:all .15s}
.zp-btn:hover{background:rgba(100,200,255,.12);color:#64c8ff}
/* plane page */
#nav-page-plane{padding:7px}
.tilt-presets{display:flex;gap:2px;margin-bottom:6px}
.tp-btn{flex:1;padding:3px 0;background:rgba(255,255,255,.04);border:1px solid rgba(100,200,255,.15);color:rgba(100,200,255,.4);font-size:8px;font-family:'Orbitron',sans-serif;text-align:center;cursor:pointer;border-radius:2px;transition:all .15s}
.tp-btn.active,.tp-btn:hover{background:rgba(100,200,255,.1);color:#64c8ff;border-color:rgba(100,200,255,.4)}
.tilt-row{display:flex;align-items:center;gap:4px;margin-bottom:4px}
.tilt-lbl{font-size:7px;color:#405060;font-family:'Orbitron',sans-serif;letter-spacing:.5px;width:40px;flex:none}
.tilt-slider{flex:1;height:2px;accent-color:var(--gold);cursor:pointer}
.tilt-val{font-size:9px;color:var(--gold);width:28px;text-align:right;flex:none}
.tilt-reset{width:100%;margin-top:4px;padding:4px;background:rgba(255,255,255,.04);border:1px solid rgba(200,168,75,.2);color:var(--gold);font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:1px;cursor:pointer;border-radius:2px;transition:all .15s}
.tilt-reset:hover{background:rgba(200,168,75,.15)}
/* hide joystick toggle btn — replaced by FAB */
#nav-joy-toggle{display:none}

/* ══════════════════════════════════════════════════════════
   AINUBIS INTRO
══════════════════════════════════════════════════════════ */
#intro{
  position:fixed;inset:0;z-index:9999;
  background:#020408;
  display:flex;align-items:center;justify-content:center;
  animation:introFadeIn .6s ease forwards;
}
#intro.fade-out{
  animation:introFadeOut .8s ease forwards;
  pointer-events:none;
}
@keyframes enterPulse{
  0%,100%{ box-shadow:0 0 8px rgba(212,175,55,0.3); border-color:rgba(212,175,55,0.5); }
  50%{ box-shadow:0 0 20px rgba(212,175,55,0.7); border-color:rgba(212,175,55,0.9); }
}
@keyframes modeSelectReveal{
  0%{opacity:0;transform:translateX(-50%) translateY(20px)}
  100%{opacity:1;transform:translateX(-50%) translateY(0)}
}
#mode-select{
  animation:modeSelectReveal 1s ease 2.5s forwards !important;
}
/* Mode selection — Temple of Doom style */
.mode-card{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;
  padding:20px 20px 14px;border:1px solid rgba(200,168,75,0.08);background:rgba(10,6,2,0.75);
  backdrop-filter:blur(12px);transition:all .4s ease;user-select:none;min-width:130px;
  position:relative;overflow:hidden}
.mode-card::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(200,168,75,0.03) 0%,transparent 40%,rgba(200,168,75,0.02) 100%);pointer-events:none}
.mode-card::after{content:'';position:absolute;bottom:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(200,168,75,0.3),transparent);transition:opacity .4s;opacity:0}
.mode-card:hover::after{opacity:1}
.mode-card:hover{border-color:rgba(200,168,75,0.35);background:rgba(30,20,5,0.85);transform:translateY(-6px) scale(1.02);box-shadow:0 12px 40px rgba(0,0,0,.6),0 0 30px rgba(200,168,75,0.08)}
.mode-card:hover .mode-pyramid{filter:drop-shadow(0 0 18px var(--glow-color,rgba(200,168,75,0.6))) drop-shadow(0 0 40px var(--glow-color,rgba(200,168,75,0.2)))}
.mode-card:active{transform:translateY(-2px) scale(1.01)}
.mode-pyramid{transition:filter .4s;filter:drop-shadow(0 0 6px var(--glow-color,rgba(200,168,75,0.25)))}
.mode-label{font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.25em;color:#C8A84B;font-weight:700;margin-top:2px}
.mode-desc{font-family:'Rajdhani',sans-serif;font-size:9px;color:rgba(200,168,75,0.3);letter-spacing:.04em;text-align:center;max-width:130px;line-height:1.5;font-weight:400}
.mode-status{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.15em;margin-top:4px;padding:2px 8px;border:1px solid rgba(200,168,75,0.2);background:rgba(200,168,75,0.04)}
@keyframes pyramidGlow{
  0%,100%{filter:drop-shadow(0 0 5px var(--glow-color,rgba(200,168,75,0.2)))}
  50%{filter:drop-shadow(0 0 14px var(--glow-color,rgba(200,168,75,0.45)))}
}
@keyframes torchFlicker{
  0%,100%{opacity:.7}
  25%{opacity:.9}
  50%{opacity:.6}
  75%{opacity:.85}
}
.mode-card .mode-pyramid{animation:pyramidGlow 4s ease-in-out infinite}
@keyframes introFadeIn{from{opacity:0}to{opacity:1}}
@keyframes introFadeOut{from{opacity:1}to{opacity:0}}

#intro-mute:hover{background:rgba(212,175,55,0.18)!important;border-color:#d4af37!important;}
#intro-inner{
  display:flex;flex-direction:column;align-items:center;gap:0;
  position:relative;top:-60px;
  animation:introRise .9s ease .3s both;
}
@keyframes introRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

#intro-emblem{
  width:220px;height:220px;
  border-radius:50%;
  filter:drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 60px rgba(200,168,75,.2));
  animation:emblemPulse 3s ease infinite;
  object-fit:cover;
}
@keyframes emblemPulse{
  0%,100%{filter:drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 60px rgba(200,168,75,.2));}
  50%{filter:drop-shadow(0 0 40px rgba(200,168,75,.85)) drop-shadow(0 0 90px rgba(200,168,75,.4)) drop-shadow(0 0 120px rgba(0,212,255,.25));}
}

#intro-wordmark{
  font-family:'Orbitron',monospace;font-size:32px;font-weight:900;
  color:var(--gold);letter-spacing:.45em;
  margin-top:16px;
  text-shadow:0 0 30px rgba(200,168,75,.6),0 0 60px rgba(200,168,75,.25);
  animation:wordmarkIn .7s ease .8s both;
}
@keyframes wordmarkIn{from{opacity:0;letter-spacing:.2em}to{opacity:1;letter-spacing:.45em}}

#intro-tagline{
  font-family:'Share Tech Mono',monospace;font-size:9px;
  color:var(--cyan);letter-spacing:.25em;
  margin-top:10px;opacity:.8;
  animation:taglineIn .6s ease 1.2s both;
}
@keyframes taglineIn{from{opacity:0}to{opacity:.8}}

#intro-sub{
  font-family:'Share Tech Mono',monospace;font-size:8px;
  color:var(--text-muted);letter-spacing:.18em;
  margin-top:5px;
  animation:taglineIn .6s ease 1.5s both;
}

/* corner brackets */
#intro-inner::before,#intro-inner::after{
  content:'';position:absolute;width:40px;height:40px;
  border-color:rgba(200,168,75,.3);border-style:solid;
}
#intro-inner::before{top:-20px;left:-20px;border-width:1px 0 0 1px}
#intro-inner::after{bottom:-20px;right:-20px;border-width:0 1px 1px 0}

/* ══ API KEY MANAGER ══════════════════════════════════════════════ */
#key-manager-overlay{display:none}
#key-manager-overlay.open{display:flex!important}
#key-manager{
  background:#070C18;border:1px solid rgba(200,168,75,.4);
  width:min(680px,95vw);max-height:85vh;overflow-y:auto;
  font-family:'Share Tech Mono',monospace;
  box-shadow:0 0 60px rgba(200,168,75,.15),0 0 120px rgba(0,0,0,.8);
}
#km-header{
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;background:#0A1628;border-bottom:1px solid rgba(200,168,75,.25);
  color:var(--gold);font-size:12px;font-weight:bold;letter-spacing:2px;position:sticky;top:0;z-index:1;
}
#km-close{cursor:pointer;color:#607090;font-size:14px;padding:2px 6px}
#km-close:hover{color:var(--gold)}
#km-note{padding:8px 16px;color:#405060;font-size:9px;letter-spacing:.5px;background:#040810;border-bottom:1px solid #0D1525}
.km-section{padding:6px 16px;background:#0D1525;color:var(--gold);font-size:9px;letter-spacing:2px;border-bottom:1px solid rgba(200,168,75,.15)}
.km-row{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid #0A1020;flex-wrap:wrap}
.km-row:hover{background:#080F1A}
.km-help{padding:0 16px 6px 16px;font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(100,200,255,0.35);letter-spacing:0.3px;line-height:1.3}
.km-help a{color:rgba(100,200,255,0.55);text-decoration:none;border-bottom:1px dotted rgba(100,200,255,0.25)}
.km-help a:hover{color:var(--cyan);border-bottom-color:var(--cyan)}
.km-info{flex:0 0 180px}
.km-name{color:#C8D8F0;font-size:10px;font-weight:bold;margin-bottom:2px}
.km-desc{color:#405060;font-size:8px;letter-spacing:.3px}
.km-desc a{color:#4488AA;text-decoration:none}
.km-desc a:hover{color:var(--cyan)}
.km-input{flex:1;min-width:140px;background:#0A1628;border:1px solid #1a3a5c;color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 8px;outline:none;letter-spacing:.5px}
.km-input:focus{border-color:rgba(200,168,75,.5)}
.km-input.active{border-color:#00FF88;background:#051408}
.km-btn{background:#0D2040;border:1px solid rgba(200,168,75,.3);color:var(--gold);font-family:inherit;font-size:9px;padding:5px 10px;cursor:pointer;letter-spacing:1px;white-space:nowrap;transition:all .15s}
.km-btn:hover{background:rgba(200,168,75,.15);border-color:var(--gold)}
.km-status{font-size:8px;letter-spacing:.5px;white-space:nowrap;min-width:60px}
.km-status.active{color:#00FF88}
.km-status.error{color:#FF4444}
#km-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#040810;border-top:1px solid rgba(200,168,75,.15);position:sticky;bottom:0}
#km-active-count{color:var(--gold);font-size:9px;letter-spacing:1px}
.km-btn-clear{background:transparent;border:1px solid rgba(255,68,68,.3);color:#FF4444;font-family:inherit;font-size:8px;padding:4px 10px;cursor:pointer;letter-spacing:1px}
.km-btn-clear:hover{background:rgba(255,68,68,.1)}

/* ⚙ key manager trigger button in topbar */
#km-trigger{background:transparent;border:1px solid rgba(200,168,75,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s}
#km-trigger:hover{color:var(--gold);border-color:var(--gold)}
/* Key manager structural classes */
.km-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#0A1628;border-bottom:1px solid rgba(200,168,75,.25);position:sticky;top:0;z-index:1}
.km-body{padding:0}
.km-note{padding:8px 16px;color:#405060;font-size:9px;letter-spacing:.5px;background:#040810;border-bottom:1px solid #0D1525}
.km-footer{display:flex;justify-content:flex-end;gap:8px;align-items:center;padding:10px 16px;background:#040810;border-top:1px solid rgba(200,168,75,.15);position:sticky;bottom:0}
.km-footer-btn{background:#0D2040;border:1px solid rgba(200,168,75,.3);color:var(--gold);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 14px;cursor:pointer;letter-spacing:1px;transition:all .15s}
.km-footer-btn:hover{background:rgba(200,168,75,.15)}
.km-footer-btn.danger{border-color:rgba(255,68,68,.3);color:#ff6060}
.km-footer-btn.danger:hover{background:rgba(255,68,68,.1)}
.km-label{flex:0 0 160px;color:#C8D8F0;font-size:10px;white-space:nowrap}
/* ── TEAM CHAT (bottom of left panel) ── */
#team-chat{position:relative;width:100%;background:var(--dark2);border-top:1px solid var(--border);font-family:'Share Tech Mono',monospace;flex-shrink:0;margin-top:auto}
#chat-header{display:flex;justify-content:space-between;align-items:center;padding:5px 10px;background:var(--dark3);border-bottom:1px solid var(--border);cursor:pointer}
#chat-header:hover{background:var(--dark4)}
#chat-msgs{height:160px;overflow-y:auto;padding:6px 8px;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--dark3)}
/* .chat-msg styles defined in team sync section below */
#chat-input-row{display:flex;border-top:1px solid var(--border)}
#chat-input-row input{flex:1;background:var(--dark3);border:none;outline:none;color:var(--text);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 8px}
#chat-input-row button{background:rgba(0,212,255,.08);border:none;border-left:1px solid var(--border);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:8px;padding:5px 10px;cursor:pointer;letter-spacing:.08em}
#chat-input-row button:hover{background:rgba(0,212,255,.18)}
.chat-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
/* ── IMPORT MODAL ── */
/* ══ NEWS TICKER ════════════════════════════════════════════════════ */
#news-ticker{
  height:28px;background:#03080f;
  border-bottom:1px solid rgba(100,200,255,0.08);
  display:flex;align-items:center;
  flex-shrink:0;overflow:hidden;position:relative;
  z-index:900;
}
#ticker-label{
  flex:none;padding:0 10px;
  font-family:'Orbitron',sans-serif;font-size:8px;
  letter-spacing:2px;color:rgba(100,200,255,0.5);
  border-right:1px solid rgba(100,200,255,0.1);
  white-space:nowrap;height:100%;display:flex;align-items:center;
  transition:color .4s ease;
}
#ticker-track-wrap{
  flex:1;overflow:hidden;height:100%;
  position:relative;cursor:pointer;
}
#ticker-track{
  display:flex;align-items:center;height:100%;
  white-space:nowrap;
  animation:tickerScroll 120s linear infinite;
  will-change:transform;
}
#ticker-track:hover,
#ticker-track.paused{ animation-play-state:paused; }
@keyframes tickerScroll{
  0%  { transform:translateX(100vw); }
  100%{ transform:translateX(-100%); }
}
.ticker-item{
  display:inline-flex;align-items:center;
  font-size:11px;color:#c8d8e8;
  padding:0 28px;cursor:pointer;
  transition:color .2s;
  font-family:'Share Tech Mono',monospace;
  letter-spacing:.3px;
}
.ticker-item:hover{ color:#64c8ff; }
.ticker-item::before{
  content:'◆';color:rgba(100,200,255,0.3);
  margin-right:12px;font-size:7px;flex:none;
}
.ticker-item.high::before{ color:#ff4444; }
.ticker-item.med::before { color:#ff8c42; }
.ticker-item.loading{ color:#445566;font-style:italic; }
.ticker-item .ti-src{
  font-size:9px;color:rgba(100,200,255,0.4);
  margin-left:8px;letter-spacing:1px;
  font-family:'Orbitron',sans-serif;
}
#ticker-controls{
  flex:none;display:flex;align-items:center;gap:6px;
  padding:0 8px;border-left:1px solid rgba(100,200,255,0.1);
  height:100%;
}
#ticker-controls #imp-trigger{
  background:none;border:1px solid rgba(100,200,255,0.2);
  color:rgba(100,200,255,0.55);font-family:'Orbitron',sans-serif;
  font-size:8px;letter-spacing:1px;padding:2px 7px;cursor:pointer;
  border-radius:2px;transition:all .2s;white-space:nowrap;
}
#ticker-controls #imp-trigger:hover{
  color:#64c8ff;border-color:rgba(100,200,255,0.5);
  background:rgba(100,200,255,0.08);
}
#ticker-pause{
  background:none;border:none;color:rgba(100,200,255,0.4);
  font-size:12px;cursor:pointer;padding:0 2px;
  transition:color .2s;line-height:1;
}
#ticker-pause:hover{ color:#64c8ff; }
#ticker-source{
  background:#070d16;border:1px solid rgba(100,200,255,0.15);
  color:rgba(200,220,240,0.7);font-size:9px;
  font-family:'Orbitron',sans-serif;letter-spacing:.5px;
  padding:2px 4px;border-radius:2px;cursor:pointer;outline:none;
}
#ticker-source option{ background:#070d16; }

/* Ticker hidden when map maximized */
body.map-maximized #news-ticker{ display:none!important; }

/* ══ MAXIMIZE MAP BUTTON (in-map corner) ═══════════════════════════ */
#map-max-btn{
  background:none;border:none;
  color:rgba(100,200,255,0.4);
  font-size:13px;padding:0 6px;cursor:pointer;
  transition:all .2s;flex-shrink:0;margin-left:auto;
  line-height:1;
}
#restore-bar{
  display:none;position:fixed;top:78px;left:0;right:0;
  height:22px;z-index:1001;
  background:rgba(0,255,136,0.08);
  border-bottom:1px solid rgba(0,255,136,0.25);
  color:rgba(0,255,136,0.7);
  font-family:'Orbitron',sans-serif;font-size:8px;
  letter-spacing:2px;cursor:pointer;
  display:none;align-items:center;justify-content:center;
  transition:background .2s;
}
#restore-bar:hover{background:rgba(0,255,136,0.15);}
body.map-maximized #restore-bar{display:flex!important;}
#globe-overlay{
  display:none;position:absolute;top:0;left:0;right:0;bottom:0;
  z-index:802;background:#000;overflow:hidden;
}
#globe-overlay iframe{
  position:absolute;top:0;left:0;width:100%;height:100%;
  border:none;display:block;
}
#globe-close-btn{
  position:absolute;top:10px;right:10px;z-index:810;
  background:rgba(0,20,10,0.92);border:1px solid rgba(0,255,136,0.5);
  color:#00ff88;font-family:'Orbitron',sans-serif;
  font-size:9px;letter-spacing:1.5px;padding:6px 16px;cursor:pointer;
  border-radius:2px;backdrop-filter:blur(6px);transition:all .2s;
}
#globe-close-btn:hover{background:rgba(0,40,20,0.95);border-color:#00ff88;color:#fff;}
#globe-credit{
  position:absolute;bottom:10px;left:50%;transform:translateX(-50%);
  font-family:'Orbitron',sans-serif;font-size:7px;
  color:rgba(100,200,255,0.4);letter-spacing:2px;pointer-events:none;
}
/* Globe btn — above coord search bar */
#globe-btn{
  position:absolute;
  top:10px;
  right:14px;
  z-index:500;
  background:rgba(4,7,16,0.94);
  border:1px solid rgba(100,200,255,0.35);
  color:rgba(100,200,255,0.75);
  font-family:'Orbitron',sans-serif;font-size:9px;letter-spacing:1.5px;
  padding:4px 18px;cursor:pointer;border-radius:2px;
  transition:all .3s;white-space:nowrap;
  backdrop-filter:blur(6px);
}
#globe-btn:hover{color:#64c8ff;border-color:rgba(100,200,255,0.6);background:rgba(0,20,50,0.97);}
#globe-btn.active{color:#00ff88;border-color:rgba(0,255,136,0.5);background:rgba(0,20,10,0.95);}

/* ══ TEAM CHAT ══════════════════════════════════════════════════════ */
#team-chat{
  position:relative;width:100%;
  background:#070d16;border-top:1px solid rgba(100,200,255,0.2);
  font-family:'Share Tech Mono',monospace;
  z-index:10;transition:all .25s ease;
  flex-shrink:0;margin-top:auto;
}
#team-chat.chat-closed #chat-body{ display:none; }
#team-chat.chat-closed{ border-color:rgba(100,200,255,0.15); }

#chat-header{
  display:flex;align-items:center;gap:8px;
  padding:7px 10px;cursor:pointer;
  background:rgba(100,200,255,0.06);
  border-bottom:1px solid rgba(100,200,255,0.15);
  user-select:none;
}
#chat-title{ color:#64c8ff;font-size:10px;letter-spacing:2px;font-family:'Orbitron',sans-serif;flex:none; }
#chat-online-bar{ display:flex;gap:5px;flex:1;flex-wrap:wrap;align-items:center; }
#chat-controls{ display:flex;align-items:center;gap:6px;flex:none; }
#chat-badge{
  background:#ff4444;color:#fff;font-size:9px;
  border-radius:8px;padding:1px 6px;font-family:'Orbitron',sans-serif;
}
#chat-toggle-icon{ color:#64c8ff;font-size:10px;transition:transform .2s; }
#team-chat.chat-closed #chat-toggle-icon{ transform:rotate(180deg); }

/* Roster dots */
.chat-dot{
  width:8px;height:8px;border-radius:50%;flex:none;
  transition:background .4s;
}
.chat-dot.online{ background:#00ff88;box-shadow:0 0 5px #00ff88; }
.chat-dot.offline{ background:#444;box-shadow:none; }
.chat-dot-label{ color:#aaa;font-size:9px;letter-spacing:.5px; }

#chat-body{ display:flex;flex-direction:column;height:240px; }
#chat-roster{
  padding:6px 10px;border-bottom:1px solid rgba(255,255,255,0.06);
  display:flex;gap:10px;flex-wrap:wrap;min-height:28px;align-items:center;
}
#chat-msgs{
  flex:1;overflow-y:auto;padding:8px 10px;
  display:flex;flex-direction:column;gap:4px;
  scrollbar-width:thin;scrollbar-color:rgba(100,200,255,0.2) transparent;
}
.chat-msg{ font-size:11px;line-height:1.5; }
.chat-msg .cm-who{ font-weight:bold;margin-right:5px; }
.chat-msg .cm-who.me{ color:#64c8ff; }
.chat-msg .cm-who.them{ color:#00ff88; }
.chat-msg .cm-who.sys{ color:#888; }
.chat-msg .cm-text{ color:#ccc; }
.chat-msg .cm-time{ color:#444;font-size:9px;margin-left:5px; }
.chat-msg.sys-msg .cm-text{ color:#666;font-style:italic; }

#chat-input-row{
  display:flex;gap:6px;padding:8px 10px;
  border-top:1px solid rgba(255,255,255,0.07);
}
#chat-input{
  flex:1;background:rgba(255,255,255,0.05);
  border:1px solid rgba(100,200,255,0.2);
  color:#e0e0e0;font-family:'Share Tech Mono',monospace;font-size:11px;
  padding:5px 8px;border-radius:2px;outline:none;
}
#chat-input:focus{ border-color:rgba(100,200,255,0.5); }
#chat-send{
  background:rgba(100,200,255,0.1);border:1px solid rgba(100,200,255,0.3);
  color:#64c8ff;font-family:'Orbitron',sans-serif;font-size:9px;
  letter-spacing:1px;padding:5px 10px;border-radius:2px;cursor:pointer;
}
#chat-send:hover{ background:rgba(100,200,255,0.2); }

/* ── MAP MAXIMIZE ── */
#map-max-btn{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(100,200,255,0.25);
  color:#64c8ff;
  font-family:'Orbitron',sans-serif;
  font-size:10px;letter-spacing:1.5px;
  padding:5px 10px;border-radius:2px;
  cursor:pointer;transition:all .2s;
}
#map-max-btn:hover{ background:rgba(100,200,255,0.12);border-color:#64c8ff; }
#map-max-btn.active{ color:#00ff88;border-color:rgba(0,255,136,0.4);background:rgba(0,255,136,0.08); }

/* When maximized — hide panels, shrink topbar */
body.map-maximized #lp,
body.map-maximized #rp,
body.map-maximized #ap,
body.map-maximized #ap-tab,
body.map-maximized #nav-panel { display:none!important; }
body.map-maximized #topbar { height:28px!important;min-height:28px!important; }
body.map-maximized .tb-center,
body.map-maximized .tb-sys,
body.map-maximized .tb-left .tb-logo { font-size:9px!important; }
body.map-maximized #main { top:28px!important; }
body.map-maximized #map-max-btn { color:#00ff88;border-color:rgba(0,255,136,0.4);background:rgba(0,255,136,0.08); }

#imp-trigger{background:transparent;border:1px solid rgba(0,212,255,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s}
#imp-trigger:hover{color:var(--cyan);border-color:var(--cyan)}
#import-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:8500;align-items:center;justify-content:center}
#import-modal.open{display:flex}
#import-box{background:#0a0f1e;border:1px solid var(--cyan);width:600px;max-width:95vw;border-radius:4px;overflow:hidden}
.imp-hdr{background:rgba(0,212,255,.08);border-bottom:1px solid rgba(0,212,255,.2);padding:12px 18px;display:flex;justify-content:space-between;align-items:center;font-family:'Share Tech Mono',monospace;color:var(--cyan);font-size:11px;letter-spacing:2px}
.imp-hdr button{background:none;border:none;color:#607090;cursor:pointer;font-size:16px}
.imp-hdr button:hover{color:#fff}
.imp-body{padding:18px}
.imp-drop{border:2px dashed rgba(0,212,255,.3);border-radius:4px;padding:30px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:14px;position:relative}
.imp-drop:hover,.imp-drop.drag-over{border-color:var(--cyan);background:rgba(0,212,255,.05)}
.imp-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.imp-drop-icon{font-size:28px;margin-bottom:8px}
.imp-drop-label{font-family:'Share Tech Mono',monospace;color:var(--cyan);font-size:11px;letter-spacing:1px}
.imp-drop-sub{color:#607090;font-size:10px;margin-top:4px}
.imp-types{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.imp-type{background:rgba(0,212,255,.06);border:1px solid rgba(0,212,255,.2);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:3px 8px;border-radius:2px;letter-spacing:1px}
.imp-log{background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.07);border-radius:2px;padding:8px;font-family:'Share Tech Mono',monospace;font-size:9px;color:#607090;max-height:80px;overflow-y:auto;min-height:32px}
.imp-log .ok{color:var(--cyan)} .imp-log .err{color:#ff4444} .imp-log .warn{color:var(--gold)}
.imp-actions{display:flex;gap:8px;margin-top:12px}
.imp-btn{flex:1;background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.25);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:7px;cursor:pointer;letter-spacing:1px;transition:all .2s}
.imp-btn:hover{background:rgba(0,212,255,.18);border-color:var(--cyan)}
.imp-url-row{display:flex;gap:6px;margin-bottom:8px}
.imp-url-in{flex:1;background:rgba(0,0,0,.4);border:1px solid rgba(0,212,255,.2);color:#c0d0e0;font-family:'Share Tech Mono',monospace;font-size:9px;padding:6px 8px;outline:none}
.imp-url-in:focus{border-color:var(--cyan)}
.imp-url-btn{background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.25);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:6px 10px;cursor:pointer}
.imp-url-btn:hover{background:rgba(0,212,255,.2)}
/* inset map — multi-mode */
#inset-btn{background:transparent;border:1px solid rgba(200,168,75,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s;margin-right:4px}
#inset-btn:hover{color:var(--gold);border-color:var(--gold)}
#inset-container{position:absolute;bottom:40px;left:14px;width:240px;height:195px;z-index:450;border:1px solid var(--gold);background:#060b14;display:none;border-radius:3px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.6);transition:height .25s ease}
#inset-container.open{display:block}
#inset-container.minimized{height:26px;overflow:hidden}
#inset-container.minimized #inset-map,#inset-container.minimized .inset-lbl{display:none}
#inset-header{display:flex;align-items:center;justify-content:space-between;background:rgba(200,168,75,.06);border-bottom:1px solid rgba(200,168,75,.2);padding:0 4px 0 0}
#inset-tabs{display:flex;gap:0;flex:1;overflow-x:auto}
.inset-tab{font-family:'Orbitron',monospace;font-size:7px;letter-spacing:.08em;color:var(--text-muted);padding:5px 7px;cursor:pointer;white-space:nowrap;transition:all .15s;border-bottom:2px solid transparent}
.inset-tab:hover{color:var(--gold)}
.inset-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(200,168,75,.08)}
#inset-map{width:100%;height:calc(100% - 26px)}
.inset-lbl{position:absolute;bottom:4px;left:6px;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--gold);letter-spacing:1px;z-index:10;pointer-events:none;background:rgba(0,0,0,.65);padding:1px 5px;border-radius:1px}
.inset-close{font-size:10px;color:#607090;cursor:pointer;z-index:10;padding:4px 4px;flex-shrink:0;transition:color .15s}
.inset-close:hover{color:#fff}
#km-trigger.has-keys{color:var(--gold);border-color:rgba(200,168,75,.5)}

/* ══════════════════ ALERT MONITOR PANEL ═══════════════════════════
   Sits in the layout flow between #map and #rp (right panel)
   ap-compact: 260px wide, collapses to ticker bar
   ap-expanded: 380px wide, full view
   ap-minimized: 32px tall ticker only
══════════════════════════════════════════════════════════════════ */
/* ── ALERT MONITOR — floating overlay (no layout space) ── */
/* ── AUTONOMOUS ALERT PILL ─────────────────────────────
   Lives at bottom of #rp. Dormant (invisible) until alerts.
   Activates automatically, slides up a compact drawer.
   ─────────────────────────────────────────────────── */
#ap{
  flex-shrink:0;
  border-top:1px solid transparent;
  transition:border-color .3s;
  overflow:hidden;
}
/* Dormant — hidden, zero height */
#ap.ap-dormant{
  height:0;
  border-color:transparent;
  pointer-events:none;
  opacity:0;
}
/* Active — pill visible, drawer closed */
#ap.ap-active{
  height:auto;
  border-color:rgba(200,168,75,.25);
  pointer-events:all;
  opacity:1;
}
/* Drawer open */
#ap.ap-open #ap-drawer{ display:flex; }
#ap.ap-open #ap-chevron{ transform:rotate(180deg); }

/* Pill row */
#ap-pill{
  display:flex;align-items:center;gap:6px;padding:5px 10px;
  cursor:pointer;background:rgba(200,168,75,.06);
  transition:background .15s;
}
#ap-pill:hover{ background:rgba(200,168,75,.12); }

#ap-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--gold);flex-shrink:0;
}
/* Pulse when new alert */
#ap.ap-active #ap-dot{ animation:apdot 1.8s ease-in-out infinite; }
@keyframes apdot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}

#ap-badge{
  font-family:'Orbitron',monospace;font-size:9px;font-weight:700;
  color:var(--gold);min-width:12px;
}
#ap-label{
  font-family:'Share Tech Mono',monospace;font-size:8px;
  color:var(--text-muted);letter-spacing:.1em;flex:1;
}
#ap-chevron{
  font-size:8px;color:#405060;
  transition:transform .2s;
}

/* Drawer */
#ap-drawer{
  display:none;flex-direction:column;
  max-height:220px;
  border-top:1px solid rgba(200,168,75,.15);
}
#ap-drawer-hdr{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 10px;background:rgba(4,7,16,.6);flex-shrink:0;
}
#ap-list{
  flex:1;overflow-y:auto;
  scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
}
#ap-list::-webkit-scrollbar{width:2px}
#ap-list::-webkit-scrollbar-thumb{background:var(--gold)}

/* Individual alert card in pill */
.ap-card{
  padding:6px 10px;border-bottom:1px solid rgba(200,168,75,.06);
  font-family:'Share Tech Mono',monospace;
}
.ap-card-top{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:2px;
}
.ap-card-int{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;letter-spacing:.1em}
.ap-card-time{font-size:7px;color:#405060}
.ap-card-msg{font-size:9px;line-height:1.4;color:var(--text)}
.ap-card-conf{font-size:7px;margin-top:2px;letter-spacing:.05em}


/* ══ NODAL ANALYSIS — SPIDER WORKSPACE ═══════════════════════════ */
.sp-tool{width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  background:rgba(6,10,20,0.9);border:1px solid rgba(0,212,255,0.1);border-radius:4px;
  cursor:pointer;font-size:14px;color:rgba(200,220,240,0.5);transition:all .15s;
  backdrop-filter:blur(8px);user-select:none;position:relative}
.sp-tool:hover{background:rgba(0,212,255,0.12);border-color:rgba(0,212,255,0.35);color:#E0ECFF;transform:scale(1.08)}
.sp-tool[data-active="true"]{background:rgba(0,212,255,0.18);border-color:rgba(0,212,255,0.5);color:#00D4FF;
  box-shadow:0 0 12px rgba(0,212,255,0.2),inset 0 0 8px rgba(0,212,255,0.06)}
.sp-tool::after{content:attr(title);position:absolute;left:38px;top:50%;transform:translateY(-50%);
  background:rgba(6,10,20,0.95);border:1px solid rgba(0,212,255,0.15);color:rgba(200,220,240,0.7);
  font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.04em;padding:4px 8px;
  border-radius:3px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;z-index:20}
.sp-tool:hover::after{opacity:1}
.sp-start-card{width:80px;height:80px;border-radius:10px;border:1px solid rgba(var(--sa),0.15);
  background:rgba(var(--sa),0.03);display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:6px;cursor:pointer;transition:all .25s ease}
.sp-start-card:hover{border-color:rgba(var(--sa),0.5);background:rgba(var(--sa),0.1);
  transform:translateY(-3px) scale(1.04);box-shadow:0 6px 20px rgba(var(--sa),0.12)}
.sp-start-card:active{transform:translateY(0) scale(0.97)}
.sp-start-label{font-size:8px;color:rgba(var(--sa),0.55);font-family:'Share Tech Mono',monospace;letter-spacing:.1em}
/* Spider node info strip */
#spider-info-strip{position:absolute;top:0;left:0;right:0;height:0;overflow:hidden;
  background:rgba(6,10,20,0.92);border-bottom:1px solid rgba(0,212,255,0.1);
  backdrop-filter:blur(8px);z-index:6;transition:height .2s ease;
  display:flex;align-items:center;padding:0 12px;gap:12px;
  font-family:'Share Tech Mono',monospace;font-size:9px}
#spider-info-strip.open{height:36px}
#spider-info-strip .si-name{color:#00D4FF;font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.08em}
#spider-info-strip .si-type{color:rgba(200,168,75,0.6);font-size:8px;letter-spacing:.1em}
#spider-info-strip .si-conn{color:rgba(200,220,240,0.3)}
#spider-info-strip .si-actions{margin-left:auto;display:flex;gap:4px}
#spider-info-strip .si-btn{font-size:8px;padding:3px 8px;background:rgba(0,212,255,0.06);
  border:1px solid rgba(0,212,255,0.12);color:rgba(0,212,255,0.5);cursor:pointer;
  border-radius:2px;transition:all .15s;font-family:'Share Tech Mono',monospace}
#spider-info-strip .si-btn:hover{background:rgba(0,212,255,0.12);border-color:rgba(0,212,255,0.3);color:#00D4FF}
/* Spider hover tooltip */
#spider-tooltip{position:absolute;pointer-events:none;z-index:15;
  background:rgba(6,10,20,0.95);border:1px solid rgba(0,212,255,0.2);
  border-radius:3px;padding:6px 10px;backdrop-filter:blur(8px);
  font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(200,220,240,0.6);
  opacity:0;transition:opacity .12s;max-width:200px;box-shadow:0 4px 16px rgba(0,0,0,.5)}
#spider-tooltip.visible{opacity:1}
/* Context menu polish */
.sp-ctx-header{padding:6px 12px;font-family:'Orbitron',sans-serif;font-size:7px;
  color:rgba(0,212,255,0.3);letter-spacing:.12em;border-bottom:1px solid rgba(0,212,255,0.06)}
.sp-ctx-item{padding:7px 12px;cursor:pointer;color:rgba(200,220,240,0.6);transition:all .1s;
  letter-spacing:.02em;display:flex;align-items:center;gap:8px}
.sp-ctx-item:hover{background:rgba(0,212,255,0.08);color:#C8D8F0}
.sp-ctx-item.red{color:rgba(255,68,102,0.6)}
.sp-ctx-item.red:hover{background:rgba(255,68,102,0.08);color:#FF4466}
.sp-ctx-sep{height:1px;background:rgba(0,212,255,0.06);margin:2px 0}
/* Spider inline input panel */
@keyframes spInputFadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.spi-input{width:100%;background:rgba(0,212,255,0.04);border:1px solid rgba(0,212,255,0.15);
  color:#C8D8F0;font-family:'Share Tech Mono',monospace;font-size:12px;padding:10px 12px;
  border-radius:4px;outline:none;transition:border-color .15s;letter-spacing:.03em}
.spi-input:focus{border-color:rgba(0,212,255,0.4);background:rgba(0,212,255,0.06);
  box-shadow:0 0 12px rgba(0,212,255,0.08)}
.spi-input::placeholder{color:rgba(200,220,240,0.2)}
.spi-type-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 6px;
  border:1px solid rgba(var(--tc),0.12);border-radius:4px;cursor:pointer;transition:all .15s;
  background:rgba(var(--tc),0.02);min-width:38px}
.spi-type-btn:hover{border-color:rgba(var(--tc),0.35);background:rgba(var(--tc),0.08)}
.spi-type-btn.active{border-color:rgba(var(--tc),0.5);background:rgba(var(--tc),0.12);
  box-shadow:0 0 8px rgba(var(--tc),0.1)}
.spi-type-btn.big{padding:10px 12px;min-width:56px}
.spi-type-btn span{color:rgba(var(--tc),0.7)}
.spi-type-btn.active span{color:rgb(var(--tc))}
.spi-rel-btn{font-family:'Share Tech Mono',monospace;font-size:7px;padding:4px 8px;
  border:1px solid rgba(255,255,255,0.06);border-radius:3px;cursor:pointer;
  color:var(--rc);opacity:0.4;transition:all .15s;letter-spacing:.04em}
.spi-rel-btn:hover{opacity:0.7;background:rgba(255,255,255,0.03)}
.spi-rel-btn.active{opacity:1;border-color:var(--rc);background:rgba(255,255,255,0.04);
  box-shadow:0 0 6px rgba(255,255,255,0.03)}
.spi-submit{font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.1em;
  padding:8px 16px;border:1px solid rgba(0,212,255,0.3);background:rgba(0,212,255,0.1);
  color:#00D4FF;border-radius:3px;cursor:pointer;transition:all .15s}
.spi-submit:hover{background:rgba(0,212,255,0.2);border-color:rgba(0,212,255,0.5);
  box-shadow:0 0 12px rgba(0,212,255,0.1)}
.spi-submit.secondary{background:rgba(200,168,75,0.08);border-color:rgba(200,168,75,0.2);color:#C8A84B}
.spi-submit.secondary:hover{background:rgba(200,168,75,0.15);border-color:rgba(200,168,75,0.4)}
.spi-suggestions{display:none;position:absolute;top:100%;left:0;right:0;z-index:60;
  background:rgba(6,10,20,0.97);border:1px solid rgba(0,212,255,0.15);border-top:none;
  border-radius:0 0 4px 4px;max-height:150px;overflow-y:auto}
.spi-suggestion{padding:7px 12px;cursor:pointer;font-size:9px;color:rgba(200,220,240,0.5);
  transition:background .1s}
.spi-suggestion:hover{background:rgba(0,212,255,0.08);color:#C8D8F0}
/* Social media intelligence chips */
.inv-social-chip{font-family:'Share Tech Mono',monospace;font-size:7px;padding:3px 7px;
  border:1px solid rgba(var(--sc,0,212,255),0.1);border-radius:3px;cursor:pointer;
  color:rgba(var(--sc,0,212,255),0.35);transition:all .15s;user-select:none;letter-spacing:.04em}
.inv-social-chip:hover{border-color:rgba(var(--sc,0,212,255),0.3);color:rgba(var(--sc,0,212,255),0.6)}
.inv-social-chip.active{border-color:rgba(var(--sc,0,212,255),0.4);background:rgba(var(--sc,0,212,255),0.08);
  color:rgb(var(--sc,0,212,255));box-shadow:0 0 6px rgba(var(--sc,0,212,255),0.08)}
/* Investigation Workspace */
.inv-ws-drop{width:56px;height:56px;border-radius:8px;border:1px dashed rgba(0,212,255,0.12);
  background:rgba(0,212,255,0.02);display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:3px;cursor:pointer;transition:all .2s}
.inv-ws-drop:hover{border-color:rgba(0,212,255,0.35);border-style:solid;background:rgba(0,212,255,0.06);
  transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,212,255,0.08)}
.inv-ws-drop:active{transform:scale(0.95)}
.inv-ws-drop span{font-size:20px}
.inv-ws-drop small{font-size:6px;font-family:'Share Tech Mono',monospace;color:rgba(0,212,255,0.3);letter-spacing:.06em}
.inv-ws-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;
  border-radius:4px;font-family:'Share Tech Mono',monospace;font-size:9px;
  cursor:pointer;transition:all .15s;position:relative;animation:spInputFadeIn .2s ease}
.inv-ws-chip:hover{filter:brightness(1.3)}
.inv-ws-chip .ws-chip-x{position:absolute;top:-3px;right:-3px;width:12px;height:12px;
  border-radius:50%;background:rgba(255,68,102,0.8);color:#fff;font-size:7px;
  display:none;align-items:center;justify-content:center;cursor:pointer}
.inv-ws-chip:hover .ws-chip-x{display:flex}


/* =============================================================
   AARU v6.0 · Intel Panel Upgrades
   Appended — do not edit above this line
   ============================================================= */

:root {
  --aaru-cyan:    #00c8ff;
  --aaru-green:   #00ff88;
  --aaru-gold:    #c8a84b;
  --aaru-red:     #ff4466;
  --aaru-orange:  #ff7800;
  --aaru-pink:    #ff60b0;
  --aaru-purple:  #9060ff;
  --aaru-blue:    #4080ff;
  --panel-bg:     rgba(4,8,18,0.93);
  --panel-border: rgba(0,200,255,0.12);
  --mono:         'Share Tech Mono', 'JetBrains Mono', 'Courier New', monospace;
}

/* ── LAYER SEARCH ─────────────────────────────────────────────*/
.aaru-search-wrap {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px 3px;
  background: rgba(4,8,18,.96);
  border-bottom: 1px solid var(--panel-border);
  position: sticky;
  top: 0;
  z-index: 10;
}
.aaru-search-input {
  flex: 1;
  background: rgba(0,200,255,.05);
  border: 1px solid rgba(0,200,255,.2);
  border-radius: 2px;
  color: #90b8d0;
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: .07em;
  padding: 4px 7px;
  outline: none;
  text-transform: uppercase;
  transition: border-color .15s;
}
.aaru-search-input::placeholder { color: rgba(0,200,255,.28); }
.aaru-search-input:focus {
  border-color: rgba(0,200,255,.5);
  background: rgba(0,200,255,.08);
}
.aaru-search-clear {
  display: none;
  align-items: center;
  justify-content: center;
  width: 16px; height: 16px;
  cursor: pointer;
  color: rgba(0,200,255,.4);
  font-size: 9px;
  flex-shrink: 0;
  transition: color .15s;
}
.aaru-search-clear:hover { color: rgba(0,200,255,.9); }

/* ── PRESET PACK BAR ──────────────────────────────────────────*/
.aaru-preset-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  padding: 5px 8px;
  background: rgba(4,8,18,.9);
  border-bottom: 1px solid var(--panel-border);
}
.aaru-preset-btn {
  font-family: var(--mono);
  font-size: 8px;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 3px 7px;
  border-radius: 2px;
  border: 1px solid;
  cursor: pointer;
  transition: background .15s, box-shadow .15s, opacity .15s;
  opacity: .75;
  white-space: nowrap;
}
.aaru-preset-btn:hover  { opacity: 1; }
.aaru-preset-btn:active { transform: scale(.97); }
.aaru-preset-cyan   { background: rgba(0,200,255,.07); border-color: rgba(0,200,255,.3); color: var(--aaru-cyan); }
.aaru-preset-cyan:hover   { background: rgba(0,200,255,.16); box-shadow: 0 0 8px rgba(0,200,255,.25); }
.aaru-preset-green  { background: rgba(0,255,136,.07); border-color: rgba(0,255,136,.3); color: var(--aaru-green); }
.aaru-preset-green:hover  { background: rgba(0,255,136,.16); box-shadow: 0 0 8px rgba(0,255,136,.25); }
.aaru-preset-gold   { background: rgba(200,168,75,.07); border-color: rgba(200,168,75,.3); color: var(--aaru-gold); }
.aaru-preset-gold:hover   { background: rgba(200,168,75,.16); box-shadow: 0 0 8px rgba(200,168,75,.25); }
.aaru-preset-orange { background: rgba(255,120,0,.07); border-color: rgba(255,120,0,.3); color: var(--aaru-orange); }
.aaru-preset-orange:hover { background: rgba(255,120,0,.16); box-shadow: 0 0 8px rgba(255,120,0,.25); }
.aaru-preset-blue   { background: rgba(64,128,255,.07); border-color: rgba(64,128,255,.3); color: var(--aaru-blue); }
.aaru-preset-blue:hover   { background: rgba(64,128,255,.16); box-shadow: 0 0 8px rgba(64,128,255,.25); }
.aaru-preset-red    { background: rgba(255,68,102,.07); border-color: rgba(255,68,102,.3); color: var(--aaru-red); }
.aaru-preset-red:hover    { background: rgba(255,68,102,.16); box-shadow: 0 0 8px rgba(255,68,102,.25); }

/* ── ACTIVE FEEDS STRIP ───────────────────────────────────────*/
.aaru-afs {
  background: rgba(4,8,18,.92);
  border-bottom: 1px solid var(--panel-border);
  font-family: var(--mono);
}
.aaru-afs-hdr {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 4px 9px;
  border-bottom: 1px solid rgba(0,200,255,.06);
}
.aaru-afs-title {
  font-size: 8px;
  letter-spacing: .1em;
  color: var(--aaru-cyan);
  text-transform: uppercase;
  flex: 1;
}
.aaru-afs-ct {
  font-size: 8px;
  color: rgba(0,200,255,.55);
  background: rgba(0,200,255,.08);
  border: 1px solid rgba(0,200,255,.18);
  border-radius: 2px;
  padding: 0 5px;
  min-width: 16px;
  text-align: center;
}
.aaru-afs-tog {
  background: none; border: none;
  color: rgba(0,200,255,.35);
  cursor: pointer; font-size: 8px;
  padding: 1px 3px; transition: color .15s;
}
.aaru-afs-tog:hover { color: var(--aaru-cyan); }
.aaru-afs-body {
  max-height: 100px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,200,255,.15) transparent;
}
.aaru-afs-item {
  display: flex; align-items: center;
  gap: 5px; padding: 2px 9px;
  border-bottom: 1px solid rgba(0,200,255,.03);
}
.aaru-afs-dot {
  width: 5px; height: 5px; border-radius: 50%; flex-shrink: 0;
}
.aaru-dot-live {
  background: var(--aaru-green);
  box-shadow: 0 0 4px var(--aaru-green);
  animation: aaru-pulse 2s infinite;
}
.aaru-dot-static { background: rgba(0,200,255,.45); }
@keyframes aaru-pulse { 0%,100%{opacity:1} 50%{opacity:.35} }
.aaru-afs-name {
  flex: 1; font-size: 8px; color: #90b8d0;
  letter-spacing: .04em; text-transform: uppercase;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.aaru-afs-time { font-size: 7px; color: rgba(144,184,208,.35); flex-shrink: 0; }
.aaru-afs-rm {
  background: none; border: none;
  color: rgba(255,68,102,.35); cursor: pointer;
  font-size: 7px; padding: 0 3px; flex-shrink: 0;
  transition: color .15s;
}
.aaru-afs-rm:hover { color: rgba(255,68,102,.9); }
.aaru-afs-empty {
  font-size: 8px; color: rgba(144,184,208,.25);
  padding: 6px 9px; text-transform: uppercase; letter-spacing: .07em;
}

/* ── FRESHNESS STAMP ──────────────────────────────────────────*/
.aaru-fresh {
  font-family: var(--mono);
  font-size: 7px;
  color: rgba(0,255,136,.55);
  letter-spacing: .04em;
  margin-left: 3px;
}

/* ── DYNAMIC COUNTER ACTIVE STATE ────────────────────────────*/
.lgc.aaru-ctr-active {
  color: var(--aaru-cyan) !important;
  background: rgba(0,200,255,.12) !important;
  border-color: rgba(0,200,255,.35) !important;
}

/* ── BRIEFING MODE ────────────────────────────────────────────*/
body.aaru-briefing #topbar,
body.aaru-briefing .left-panel,
body.aaru-briefing #left-panel,
body.aaru-briefing #ll,
body.aaru-briefing .lp,
body.aaru-briefing #aaru-cmd-strip,
body.aaru-briefing .chat-panel,
body.aaru-briefing #chat-panel,
body.aaru-briefing .aaru-afs,
body.aaru-briefing .aaru-preset-bar,
body.aaru-briefing .aaru-search-wrap {
  display: none !important;
}
body.aaru-briefing #mc,
body.aaru-briefing .map-container {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 1 !important;
}
body.aaru-briefing #cs-mode-brief {
  display: flex !important;
  position: fixed;
  top: 10px; right: 12px;
  z-index: 9990;
  background: rgba(4,8,15,.88);
  border: 1px solid rgba(0,200,255,.4) !important;
  border-radius: 3px;
  padding: 5px 10px;
}
.aaru-brief-manifest {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 9995;
  background: rgba(4,8,15,.98);
  border-top: 1px solid rgba(0,200,255,.2);
  font-family: var(--mono);
  display: flex; flex-direction: column;
  max-height: 38vh;
}
.aaru-mf-hdr {
  display: flex; align-items: center; gap: 12px;
  padding: 6px 14px;
  border-bottom: 1px solid rgba(0,200,255,.1);
  background: rgba(0,200,255,.03); flex-shrink: 0;
}
.aaru-mf-title {
  font-size: 9px; letter-spacing: .1em;
  color: var(--aaru-cyan); text-transform: uppercase; flex: 1;
}
.aaru-mf-ct, .aaru-mf-ts-hdr {
  font-size: 8px; color: rgba(200,216,232,.4);
  text-transform: uppercase; letter-spacing: .05em;
}
.aaru-mf-btn {
  background: none;
  border: 1px solid rgba(0,200,255,.25);
  color: rgba(0,200,255,.65);
  font-family: var(--mono);
  font-size: 8px; letter-spacing: .06em;
  text-transform: uppercase;
  padding: 2px 8px; border-radius: 2px;
  cursor: pointer; transition: all .15s;
}
.aaru-mf-btn:hover { background: rgba(0,200,255,.1); color: var(--aaru-cyan); }
.aaru-mf-exit:hover { border-color: rgba(255,68,102,.5); color: var(--aaru-red); background: rgba(255,68,102,.07); }
.aaru-mf-body {
  overflow-y: auto; padding: 3px 14px;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,200,255,.15) transparent;
}
.aaru-mf-row {
  display: grid;
  grid-template-columns: 1fr 56px 152px;
  gap: 10px; align-items: center;
  padding: 2px 0;
  border-bottom: 1px solid rgba(0,200,255,.04);
  font-size: 8px; text-transform: uppercase; letter-spacing: .04em;
}
.aaru-mf-row:last-child { border-bottom: none; }
.aaru-mf-name   { color: #c0d4e4; }
.aaru-mf-live   { color: var(--aaru-green); }
.aaru-mf-static { color: rgba(0,200,255,.45); }
.aaru-mf-ts     { color: rgba(200,216,232,.3); font-size: 7px; }
.aaru-mf-empty  { font-size: 8px; color: rgba(200,216,232,.25); padding: 8px 0; text-transform: uppercase; }

@media print {
  body > *:not(.aaru-brief-manifest) { display: none !important; }
  .aaru-brief-manifest { position: static; border: none; max-height: none; }
  .aaru-mf-btn { display: none; }
}

/* ── API KEY GUARD TOAST ──────────────────────────────────────*/
#aaru-key-toast {
  position: fixed;
  bottom: 68px;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  z-index: 99999;
  background: rgba(10,14,22,0.97);
  border: 1px solid rgba(255,160,0,0.7);
  color: #ffa000;
  font-family: 'Share Tech Mono','Courier New',monospace;
  font-size: 10px;
  letter-spacing: .07em;
  padding: 8px 16px;
  border-radius: 3px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s, transform .2s;
  white-space: nowrap;
  text-transform: uppercase;
  box-shadow: 0 0 18px rgba(255,160,0,.2);
}
#aaru-key-toast.visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
*{margin:0;padding:0;box-sizing:border-box}
:root{
  --dark:#040710;--dark1:#060A14;--dark2:#070C18;--dark3:#0D1525;--dark4:#111C30;
  --gold:#C8A84B;--gold-dim:#8A6F2E;
  --cyan:#00D4FF;--green:#00FF88;--red:#FF4466;--orange:#FF8800;--purple:#AA66FF;--pink:#FF44AA;
  --text:#C8D8F0;--text-dim:#6A80A8;--text-muted:#3A4A68;
  --border:rgba(200,168,75,0.15);--bcyan:rgba(0,212,255,0.15);
}
body{background:var(--dark);font-family:'Rajdhani',sans-serif;color:var(--text);height:100vh;overflow:hidden;display:flex;flex-direction:column}

/* TOPBAR */
#topbar{height:50px;background:var(--dark2);border-bottom:1px solid var(--border);display:none;align-items:center;padding:0 14px;flex-shrink:0;z-index:1000;gap:0;overflow:visible}
.tb-logo{font-family:'Orbitron',monospace;font-size:15px;font-weight:900;color:var(--gold);letter-spacing:.25em;text-shadow:0 0 20px rgba(200,168,75,.5)}
.tb-logo span{color:var(--cyan)}
.tb-left{display:flex;align-items:center;flex-shrink:0;gap:8px}
#ainubis-logo{width:36px;height:36px;border-radius:50%;filter:drop-shadow(0 0 6px rgba(200,168,75,.6)) drop-shadow(0 0 14px rgba(200,168,75,.3));animation:logoGlow 3s ease-in-out infinite;cursor:pointer;transition:filter .3s}
#ainubis-logo:hover{filter:drop-shadow(0 0 10px rgba(200,168,75,.9)) drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 40px rgba(200,168,75,.2))}
@keyframes logoGlow{0%,100%{filter:drop-shadow(0 0 6px rgba(200,168,75,.5)) drop-shadow(0 0 14px rgba(200,168,75,.25))}50%{filter:drop-shadow(0 0 10px rgba(200,168,75,.8)) drop-shadow(0 0 22px rgba(200,168,75,.4)) drop-shadow(0 0 36px rgba(200,168,75,.15))}}
.tb-center{display:flex;align-items:center;gap:14px;flex:1;justify-content:center}
.tb-right{display:flex;align-items:center;flex-shrink:0;width:auto;justify-content:flex-end;gap:10px}
#aaru-meaning{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.14em;color:rgba(200,168,75,.35);white-space:nowrap;text-transform:uppercase;transition:color .4s ease}

/* ── CLASSIFICATION BANNER ── */
.class-banner{position:relative;display:flex;align-items:center;cursor:pointer;user-select:none}
.class-badge{font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.14em;font-weight:700;padding:3px 10px;border:1px solid;display:flex;align-items:center;gap:5px;white-space:nowrap}
.class-badge .class-arrow{font-size:7px;opacity:.6;transition:transform .2s}
.class-badge.open .class-arrow{transform:rotate(180deg)}
.class-dropdown{position:absolute;top:100%;right:0;margin-top:4px;background:var(--dark2);border:1px solid var(--border);display:none;flex-direction:column;z-index:9999;min-width:200px;box-shadow:0 8px 24px rgba(0,0,0,.6)}
.class-dropdown.open{display:flex}
.class-opt{font-family:'Share Tech Mono',monospace;font-size:9px;padding:7px 12px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px;transition:background .15s;border-bottom:1px solid rgba(255,255,255,.04)}
.class-opt:last-child{border-bottom:none}
.class-opt:hover{background:rgba(0,212,255,.06)}
.class-opt.active{background:rgba(0,212,255,.08)}
.class-opt .co-label{letter-spacing:.1em}
.class-opt .co-check{color:var(--cyan);font-size:10px}
.class-opt.locked{opacity:.35;cursor:not-allowed}
.class-opt.locked:hover{background:transparent}
.class-opt .co-lock{font-size:8px;color:var(--text-muted)}
/* Classification colors */
.class-u{color:var(--green);border-color:rgba(0,255,136,.4);background:rgba(0,255,136,.06)}
.class-fouo{color:var(--cyan);border-color:rgba(0,212,255,.4);background:rgba(0,212,255,.06)}
.class-cui{color:var(--gold);border-color:rgba(200,168,75,.4);background:rgba(200,168,75,.06)}
.class-s{color:var(--red);border-color:rgba(255,68,102,.4);background:rgba(255,68,102,.06)}
.class-ts{color:#ff4466;border-color:rgba(255,68,102,.6);background:rgba(255,68,102,.1)}
.tb-vert-sep{width:1px;height:30px;background:var(--border);margin:0 6px;flex-shrink:0}
/* ── AUTONOMY BADGES ── */
.auto-group{display:flex;align-items:center;gap:0}
.auto-badge{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;cursor:pointer;transition:all .18s;border:1px solid transparent;position:relative}
.auto-badge:hover{background:rgba(0,212,255,.05);border-color:rgba(0,212,255,.2)}
.ab-dot{width:5px;height:5px;border-radius:50%;background:var(--green);animation:lp 1.8s ease-in-out infinite;margin-bottom:1px}
.ab-dot.amber{background:#c8a84b;box-shadow:0 0 6px rgba(200,168,75,.6)}
.ab-dot.cyan{background:var(--cyan);box-shadow:0 0 6px rgba(0,212,255,.5)}
.ab-dot.off{background:#304050;animation:none;box-shadow:none}
.ab-label{font-family:'Orbitron',sans-serif;font-size:7px;letter-spacing:1.5px;color:var(--text-muted);line-height:1}
.ab-val{font-family:'Share Tech Mono',monospace;font-size:11px;font-weight:700;color:var(--cyan);letter-spacing:.08em;line-height:1.2}
.ab-val.green{color:var(--green)}
.ab-val.amber{color:#c8a84b}
.ab-val.muted{color:var(--text-muted)}
.auto-sep{width:1px;height:26px;background:var(--border);margin:0 2px}
/* legacy */
.tb-stat{text-align:center}
.tsv{font-family:'Orbitron',monospace;font-size:12px;font-weight:700;color:var(--cyan)}
.tsl{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);letter-spacing:.1em}
.tb-div{width:1px;height:22px;background:var(--border)}
/* World Clocks */
#world-clocks{display:flex;align-items:center;gap:6px;font-family:'Share Tech Mono',monospace;}
.wc-item{display:flex;flex-direction:column;align-items:center;gap:1px;}
.wc-time{font-size:13px;color:var(--green);letter-spacing:.1em;line-height:1;font-weight:700;}
.wc-label{font-size:8px;color:rgba(100,200,100,0.65);letter-spacing:1.2px;font-family:'Orbitron',sans-serif;line-height:1;}
.wc-sep{color:rgba(255,255,255,0.1);font-size:14px;margin:0 1px;align-self:center;}
#wc-local .wc-time{color:#00ff88;font-size:15px;text-shadow:0 0 10px rgba(0,255,136,.5);}
#wc-local .wc-label{color:rgba(0,255,136,0.7);}
/* Hide most clocks when maximized — keep local */
body.map-maximized #world-clocks .wc-sep,
body.map-maximized .wc-item:not(#wc-local){display:none;}
.live-b{display:flex;align-items:center;gap:5px;font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--green)}
.ld{width:6px;height:6px;border-radius:50%;background:var(--green);animation:lp 1.5s ease-in-out infinite}
@keyframes lp{0%,100%{opacity:1;box-shadow:0 0 4px var(--green)}50%{opacity:.3;box-shadow:0 0 12px var(--green)}}
/* Agent status pill */
.agent-pill{display:flex;align-items:center;gap:5px;font-family:'Share Tech Mono',monospace;font-size:8px;padding:3px 9px;border:1px solid rgba(0,255,136,.3);background:rgba(0,255,136,.06);cursor:pointer;transition:all .2s;letter-spacing:.1em}
.agent-pill:hover{border-color:var(--green);background:rgba(0,255,136,.12)}
.agent-pill.active{color:var(--green)}
.agent-pill.paused{color:var(--text-muted);border-color:var(--border)}
.ap-dot{width:5px;height:5px;border-radius:50%;background:var(--green);flex-shrink:0;animation:lp 1.2s ease-in-out infinite}
.agent-pill.paused .ap-dot{background:var(--text-muted);animation:none}
#alert-count{font-family:'Orbitron',monospace;font-size:11px;font-weight:700;color:var(--red)}

/* MAIN */
#main{display:none;flex:1;overflow:hidden;min-height:0}

/* LEFT PANEL */
#lp{width:252px;background:var(--dark2);border-right:1px solid var(--border);display:flex;flex-direction:column;flex-shrink:0;overflow:hidden;transition:width .25s cubic-bezier(.4,0,.2,1);position:relative}
#lp.lp-collapsed{width:32px}
#lp.lp-collapsed .lp-search,#lp.lp-collapsed #tabs,#lp.lp-collapsed .lg,#lp.lp-collapsed .bmg2,#lp.lp-collapsed .bm-cat,#lp.lp-collapsed #lp-header,#lp.lp-collapsed #theater-strip,#lp.lp-collapsed #team-chat{display:none}

/* ── THEATER PRESETS ── */
#theater-strip{flex-shrink:0;border-bottom:1px solid var(--border);background:var(--dark1);padding:0}
#theater-header{display:flex;align-items:center;justify-content:space-between;padding:5px 10px 4px;cursor:pointer;user-select:none}
#theater-header:hover{background:rgba(200,168,75,.04)}
.theater-title{font-family:'Orbitron',sans-serif;font-size:7.5px;letter-spacing:.14em;color:var(--gold);font-weight:700}
.theater-actions{display:flex;align-items:center;gap:6px}
.theater-action-btn{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);cursor:pointer;letter-spacing:.06em;padding:1px 4px;transition:color .15s}
.theater-action-btn:hover{color:var(--cyan)}
#theater-arrow{font-size:7px;color:var(--text-muted);transition:transform .2s}
#theater-arrow.open{transform:rotate(180deg)}
#theater-body{padding:5px 8px 7px;display:flex;flex-wrap:wrap;gap:4px}
#theater-body.collapsed{display:none}
.tp-card{
  display:flex;flex-direction:column;align-items:center;gap:3px;
  padding:6px 4px 5px;min-width:68px;flex:1;max-width:80px;
  background:var(--dark3);border:1px solid var(--border);
  cursor:pointer;transition:all .2s;position:relative;
  clip-path:polygon(3px 0%,100% 0%,calc(100% - 3px) 100%,0% 100%);
}
.tp-card:hover{border-color:var(--gold);background:rgba(200,168,75,.06)}
.tp-card.active{border-color:var(--gold);background:rgba(200,168,75,.12);box-shadow:0 0 8px rgba(200,168,75,.2)}
.tp-card.active .tp-icon{filter:drop-shadow(0 0 4px var(--gold))}
.tp-icon{font-size:14px;line-height:1;transition:filter .2s}
.tp-name{font-family:'Orbitron',sans-serif;font-size:6.5px;letter-spacing:.1em;color:var(--text-dim);text-align:center;line-height:1.2;transition:color .2s}
.tp-card.active .tp-name{color:var(--gold)}
.tp-card:hover .tp-name{color:var(--text)}
.tp-layers{font-family:'Share Tech Mono',monospace;font-size:6px;color:var(--text-muted);letter-spacing:.04em}
.tp-card .tp-del{display:none;position:absolute;top:1px;right:3px;font-size:8px;color:var(--text-muted);cursor:pointer;padding:0 2px;z-index:2}
.tp-card:hover .tp-del{display:block}
.tp-card .tp-del:hover{color:var(--red)}
/* Save preset modal */
#tp-save-modal{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);z-index:9999;justify-content:center;align-items:center}
#tp-save-modal.open{display:flex}
#tp-save-inner{background:var(--dark2);border:1px solid var(--gold);padding:16px 20px;min-width:280px;max-width:340px}
.tp-save-title{font-family:'Orbitron',sans-serif;font-size:10px;color:var(--gold);letter-spacing:.15em;margin-bottom:12px}
.tp-save-row{margin-bottom:8px}
.tp-save-label{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);letter-spacing:.08em;margin-bottom:3px}
.tp-save-input{width:100%;background:var(--dark3);border:1px solid var(--border);color:var(--text);font-family:'Share Tech Mono',monospace;font-size:10px;padding:5px 8px;outline:none;letter-spacing:.06em}
.tp-save-input:focus{border-color:var(--gold)}
.tp-save-hint{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted);margin-bottom:10px;line-height:1.5}
.tp-save-actions{display:flex;gap:6px;justify-content:flex-end}
.tp-save-btn{font-family:'Share Tech Mono',monospace;font-size:8px;padding:5px 14px;cursor:pointer;letter-spacing:.08em;transition:all .15s}
.tp-save-btn.primary{background:rgba(200,168,75,.12);border:1px solid var(--gold);color:var(--gold)}
.tp-save-btn.primary:hover{background:rgba(200,168,75,.25)}
.tp-save-btn.cancel{background:transparent;border:1px solid var(--border);color:var(--text-muted)}
.tp-save-btn.cancel:hover{border-color:var(--text-dim);color:var(--text-dim)}
#lp-toggle{position:absolute;right:-1px;top:50%;transform:translateY(-50%);width:14px;height:40px;background:var(--dark2);border:1px solid var(--border);border-left:none;border-radius:0 4px 4px 0;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:9px;color:#607090;z-index:10;transition:color .15s}
#lp-toggle:hover{color:var(--gold)}
#lp.lp-collapsed #lp-toggle{right:-14px;border-left:1px solid var(--border)}
/* ── LP HEADER ── */
#lp-header{display:flex;align-items:center;gap:6px;padding:5px 8px 5px 6px;
  border-bottom:1px solid var(--border);background:var(--dark1);flex-shrink:0}
#lp-hdr-toggle{width:18px;height:18px;background:transparent;border:1px solid var(--border);
  border-radius:3px;cursor:pointer;display:flex;align-items:center;justify-content:center;
  font-size:8px;color:#607090;flex-shrink:0;transition:color .15s}
#lp-hdr-toggle:hover{color:var(--gold);border-color:var(--gold)}
#lp-title{font-family:'Orbitron',monospace;font-size:9px;letter-spacing:.14em;
  color:var(--gold);font-weight:600;white-space:nowrap}
#lp-tab-bar{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;background:var(--dark2)}
.lp-tab{flex:1;text-align:center;font-family:'Orbitron',sans-serif;font-size:7.5px;letter-spacing:.12em;
  color:var(--text-muted);padding:6px 0;cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;user-select:none}
.lp-tab:hover{color:var(--cyan);background:rgba(0,212,255,.03)}
.lp-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(200,168,75,.04)}
#lp-layers-content{overflow-y:auto;flex:1;min-height:0}
#lp.lp-collapsed #lp-tab-bar,#lp.lp-collapsed #lp-projects,#lp.lp-collapsed #lp-layers-content{display:none}
.lp-rail{display:none;flex-direction:column;align-items:center;padding:8px 0;gap:10px}
#lp.lp-collapsed .lp-rail{display:flex}
.lp-rail-icon{font-size:14px;cursor:pointer;opacity:.4;transition:opacity .15s;line-height:1}
.lp-rail-icon:hover{opacity:1}
.lp-search{padding:7px 10px;border-bottom:1px solid var(--border);flex-shrink:0}
#ls{width:100%;background:var(--dark3);border:1px solid var(--bcyan);color:var(--text);font-family:'Share Tech Mono',monospace;font-size:10px;padding:6px 9px;outline:none;letter-spacing:.1em;transition:border-color .2s;clip-path:polygon(4px 0%,100% 0%,calc(100% - 4px) 100%,0% 100%)}
#ls:focus{border-color:var(--cyan)}#ls::placeholder{color:var(--text-muted)}
#tabs{display:flex;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto;scrollbar-width:none}
#tabs::-webkit-scrollbar{display:none}
.tab{flex-shrink:0;padding:6px 7px;font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.08em;color:var(--text-muted);cursor:pointer;border-bottom:2px solid transparent;transition:all .2s;white-space:nowrap;background:transparent;border-top:none;border-left:none;border-right:none}
.tab:hover{color:var(--text-dim)}.tab.active{color:var(--cyan);border-bottom-color:var(--cyan)}
#favbar{display:none}
#favbar.show{display:none}
.fav-t{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--gold-dim);letter-spacing:.15em;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}
.fav-t-edit{font-size:7px;color:var(--text-muted);cursor:pointer;letter-spacing:.08em;transition:color .15s}
.fav-t-edit:hover{color:var(--cyan)}
#proj-select{
  background:rgba(0,0,0,.4);border:1px solid rgba(200,168,75,.25);
  color:var(--gold);font-family:'Share Tech Mono',monospace;font-size:8px;
  padding:1px 4px;outline:none;cursor:pointer;letter-spacing:.06em;
  max-width:130px;
}
#proj-select option{background:#0a0f1e;color:var(--text);font-size:9px}
#favlist{display:flex;flex-wrap:wrap;gap:3px}
.fchip{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);padding:2px 7px;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:4px}
.fchip:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.15)}
.fchip .fc-dot{width:4px;height:4px;border-radius:50%;flex-shrink:0;transition:all .15s}
.fchip.on{border-color:var(--fc-color,var(--cyan));color:var(--fc-color,var(--cyan));background:rgba(var(--fc-rgb,0,212,255),.08)}
.fchip.on .fc-dot{background:var(--fc-color,var(--cyan));box-shadow:0 0 4px var(--fc-color,var(--cyan))}
.fchip:not(.on) .fc-dot{background:var(--text-muted)}
#ll{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--dark3)}
#ll::-webkit-scrollbar{width:3px}#ll::-webkit-scrollbar-thumb{background:var(--gold-dim)}
.lg{border-bottom:1px solid rgba(200,168,75,.07)}
.lgh{display:flex;align-items:center;justify-content:space-between;padding:6px 10px 5px;background:var(--dark3);cursor:pointer;user-select:none}
.lgh:hover{background:var(--dark4)}
.lgt{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;letter-spacing:.12em}
.lgc{font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted)}
.lga{font-size:8px;color:var(--text-muted);transition:transform .2s}.lga.open{transform:rotate(180deg)}
.bmg{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:7px 10px}
.bm{padding:6px 4px;background:var(--dark3);border:1px solid var(--border);font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.07em;color:var(--text-dim);cursor:pointer;text-align:center;transition:all .2s}
.bm:hover{border-color:var(--cyan);color:var(--cyan)}.bm.active{background:rgba(0,212,255,.1);border-color:var(--cyan);color:var(--cyan)}
.lr{display:flex;align-items:center;gap:7px;padding:5px 10px;cursor:pointer;transition:background .15s;user-select:none}
.lr:hover{background:rgba(0,212,255,.04)}
.tog{width:26px;height:13px;border-radius:7px;background:var(--dark4);border:1px solid var(--text-muted);position:relative;flex-shrink:0;transition:all .2s}
.tog::after{content:'';position:absolute;top:2px;left:2px;width:7px;height:7px;border-radius:50%;background:var(--text-muted);transition:all .2s}
.tog.cyan.on{background:rgba(0,212,255,.15);border-color:var(--cyan)}.tog.cyan.on::after{left:15px;background:var(--cyan);box-shadow:0 0 4px var(--cyan)}
.tog.gold.on{background:rgba(200,168,75,.15);border-color:var(--gold)}.tog.gold.on::after{left:15px;background:var(--gold);box-shadow:0 0 4px var(--gold)}
.tog.green.on{background:rgba(0,255,136,.15);border-color:var(--green)}.tog.green.on::after{left:15px;background:var(--green);box-shadow:0 0 4px var(--green)}
.tog.red.on{background:rgba(255,68,102,.15);border-color:var(--red)}.tog.red.on::after{left:15px;background:var(--red);box-shadow:0 0 4px var(--red)}
.tog.orange.on{background:rgba(255,136,0,.15);border-color:var(--orange)}.tog.orange.on::after{left:15px;background:var(--orange);box-shadow:0 0 4px var(--orange)}
.tog.purple.on{background:rgba(170,102,255,.15);border-color:var(--purple)}.tog.purple.on::after{left:15px;background:var(--purple);box-shadow:0 0 4px var(--purple)}
.tog.pink.on{background:rgba(255,68,170,.15);border-color:var(--pink)}.tog.pink.on::after{left:15px;background:var(--pink);box-shadow:0 0 4px var(--pink)}
.li{flex:1;min-width:0}
.ln{font-family:'Share Tech Mono',monospace;font-size:10px;color:var(--text);letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ls2{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lr-r{display:flex;align-items:center;gap:3px;flex-shrink:0}
.badge{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.06em;padding:1px 3px;border-radius:2px}
.badge.live{color:var(--green);border:1px solid rgba(0,255,136,.3)}.badge.api{color:var(--orange);border:1px solid rgba(255,136,0,.3)}.badge.free{color:var(--cyan);border:1px solid rgba(0,212,255,.2)}.badge.nga{color:var(--gold);border:1px solid rgba(200,168,75,.3)}.badge.prem{color:var(--purple);border:1px solid rgba(170,102,255,.3)}.badge.pai{color:var(--pink);border:1px solid rgba(255,68,170,.3)}.badge.ext{color:#E8B931;border:1px solid rgba(232,185,49,.3)}
.star{font-size:10px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:color .2s;padding:0 1px}
.star:hover,.star.on{color:var(--gold)}

/* MAP */
#map-col{flex:1;display:flex;flex-direction:column;min-width:0;position:relative}
#map{flex:1;position:relative;min-height:0}
#mc{position:absolute;inset:0;cursor:crosshair}

/* RIGHT-CLICK CONTEXT MENU */
#ctx-menu{
  position:absolute;background:#040c18;
  border:1px solid rgba(200,168,75,.45);
  z-index:1100;min-width:240px;max-width:260px;
  display:none;
  max-height:calc(100vh - 80px);overflow-y:auto;overflow-x:hidden;
  box-shadow:0 4px 32px rgba(0,0,0,.7),0 0 12px rgba(200,168,75,.15);
  border-radius:3px;
  font-family:'Share Tech Mono',monospace;
}
.ctx-header{
  padding:5px 10px;
  background:rgba(200,168,75,.1);
  border-bottom:1px solid rgba(200,168,75,.3);
  display:flex;justify-content:space-between;align-items:center;
  font-family:'Orbitron',sans-serif;font-size:8px;color:var(--gold);letter-spacing:.15em;
}
.ctx-coords{font-size:8px;color:rgba(200,168,75,.7);letter-spacing:.05em;}
.ctx-mgrs{
  padding:2px 10px 4px;font-size:9px;
  color:rgba(100,200,255,.5);letter-spacing:.08em;
  background:rgba(0,20,40,.4);border-bottom:1px solid rgba(100,200,255,.08);
}
.ctx-section-label{
  padding:5px 10px 2px;
  font-size:7.5px;color:rgba(255,255,255,.25);
  letter-spacing:.12em;font-family:'Orbitron',sans-serif;
  pointer-events:none;
}
.ctx-item{
  padding:6px 12px;font-size:10px;
  color:rgba(200,220,255,.75);cursor:pointer;
  transition:background .1s,color .1s;
  border-left:2px solid transparent;
  white-space:nowrap;
}
.ctx-item:hover{
  background:rgba(100,200,255,.08);
  color:#fff;border-left-color:var(--cyan);
}
.ctx-item.highlight{color:var(--cyan);}
.ctx-item.highlight:hover{background:rgba(0,212,255,.12);}
.ctx-item.danger{color:rgba(255,80,80,.6);}
.ctx-item.danger:hover{background:rgba(255,60,60,.1);color:#ff6060;border-left-color:#ff4444;}
.ctx-divider{height:1px;background:rgba(255,255,255,.06);margin:2px 0;}
/* MAP POPUPS custom */
.map-popup{background:var(--dark2);border:1px solid var(--gold);padding:10px 12px;min-width:200px;font-family:'Share Tech Mono',monospace}
.mp-title{font-family:'Orbitron',monospace;font-size:9px;color:var(--gold);letter-spacing:.15em;margin-bottom:7px;font-weight:700}
.mp-row{display:flex;justify-content:space-between;margin-bottom:3px;font-size:9px}
.mp-key{color:var(--text-muted)}
.mp-val{color:var(--text)}
.mp-badge{display:inline-block;font-size:7px;padding:1px 5px;margin-top:5px;letter-spacing:.08em}
.mp-actions{display:flex;gap:5px;margin-top:8px}
.mp-btn{flex:1;padding:4px 6px;font-family:'Share Tech Mono',monospace;font-size:8px;cursor:pointer;transition:all .2s;text-align:center;letter-spacing:.08em}
.mp-btn.primary{background:rgba(0,212,255,.1);border:1px solid var(--cyan);color:var(--cyan)}
.mp-btn.primary:hover{background:rgba(0,212,255,.2)}
.mp-btn.secondary{background:rgba(200,168,75,.08);border:1px solid var(--gold);color:var(--gold)}
.mp-btn.secondary:hover{background:rgba(200,168,75,.18)}

/* AOI MARKERS */
.aoi-marker{background:rgba(255,68,102,.15);border:2px solid var(--red);border-radius:50%;width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:9px;color:var(--red);animation:aoiPulse 2s ease-in-out infinite}
@keyframes aoiPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,68,102,.4)}70%{box-shadow:0 0 0 8px rgba(255,68,102,0)}}
@keyframes cfgPulse{0%,100%{box-shadow:0 0 0 0 rgba(100,200,255,.3)}50%{box-shadow:0 0 8px 2px rgba(100,200,255,.4)}}

/* AOI POPUP STYLING */
.aoi-popup-inner{font-family:'Share Tech Mono',monospace;padding:4px 0}
.aoi-popup-title{color:#C8A84B;font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.12em;margin-bottom:6px;display:flex;align-items:center;gap:6px}
.aoi-popup-title .aoi-id{background:rgba(200,168,75,.2);padding:1px 6px;border-radius:2px;font-size:9px}
.aoi-popup-coords{color:#607090;font-size:9px;margin-bottom:2px;line-height:1.5}
.aoi-popup-mgrs{color:rgba(0,212,255,.6);font-size:9px;margin-bottom:8px}
.aoi-popup-radius-row{display:flex;align-items:center;gap:8px;margin-bottom:8px}
.aoi-popup-radius-row label{color:#8090a0;font-size:9px;min-width:42px}
.aoi-popup-radius-row input[type=range]{flex:1;height:3px;accent-color:var(--gold);cursor:pointer}
.aoi-popup-radius-row .radius-val{color:var(--gold);font-size:10px;min-width:48px;text-align:right}
.aoi-popup-actions{display:flex;flex-direction:column;gap:4px;margin-top:6px}
.aoi-popup-actions button{
  background:rgba(200,168,75,.06);border:1px solid rgba(200,168,75,.25);
  color:#b0a070;font-family:'Share Tech Mono',monospace;font-size:9px;
  padding:4px 8px;cursor:pointer;text-align:left;transition:all .15s;border-radius:1px;
}
.aoi-popup-actions button:hover{background:rgba(200,168,75,.15);color:var(--gold)}
.aoi-popup-actions button.danger{border-color:rgba(255,68,68,.25);color:#906060}
.aoi-popup-actions button.danger:hover{background:rgba(255,68,68,.12);color:#ff6060}

/* AOI LIST in zone panel */
.aoi-list{max-height:200px;overflow-y:auto;margin-top:8px}
.aoi-list-item{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 8px;border-bottom:1px solid rgba(200,168,75,.1);
  cursor:pointer;transition:background .15s;font-size:9px;
}
.aoi-list-item:hover{background:rgba(200,168,75,.08)}
.aoi-list-item .ali-name{color:var(--gold);font-weight:600}
.aoi-list-item .ali-coord{color:#607090;font-size:8px}
.aoi-list-item .ali-del{color:#604040;cursor:pointer;font-size:11px;padding:0 4px}
.aoi-list-item .ali-del:hover{color:#ff4466}

/* TEMPORAL */
#temporal{height:110px;background:var(--dark2);border-top:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;justify-content:center;padding:0 14px;position:relative;transition:height .3s}
#temporal.collapsed{height:26px}
.temp-toggle{position:absolute;top:0;left:50%;transform:translateX(-50%);background:var(--dark3);border:1px solid var(--border);border-top:none;padding:2px 14px;cursor:pointer;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--text-muted);letter-spacing:.12em;transition:color .2s}
.temp-toggle:hover{color:var(--cyan)}
#temp-content{display:flex;flex-direction:column;gap:4px}
#temporal.collapsed #temp-content{display:none}
.temp-top{display:flex;align-items:center;justify-content:space-between}
.temp-label{font-family:'Orbitron',monospace;font-size:9px;color:var(--gold);letter-spacing:.12em}
.temp-presets{display:flex;gap:4px}
.tp{font-family:'Share Tech Mono',monospace;font-size:8px;padding:2px 6px;background:var(--dark3);border:1px solid var(--border);color:var(--text-muted);cursor:pointer;transition:all .2s;letter-spacing:.07em}
.tp:hover{border-color:var(--cyan);color:var(--cyan)}.tp.active{background:rgba(0,212,255,.1);border-color:var(--cyan);color:var(--cyan)}
/* histogram */
#temp-histo-row{position:relative;width:100%;height:36px;margin:1px 0}
#temp-histo{width:100%;height:36px;display:block;border-radius:2px}
#temp-histo-cursor{position:absolute;top:0;bottom:0;width:2px;background:var(--cyan);box-shadow:0 0 6px var(--cyan);pointer-events:none;transition:left 60ms linear;left:100%}
/* transport */
.temp-controls{display:flex;align-items:center;gap:6px}
.temp-transport{display:flex;gap:2px;flex-shrink:0}
.temp-tbtn{width:20px;height:20px;border:1px solid var(--border);background:rgba(0,212,255,.04);color:var(--text-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:8px;flex-shrink:0;transition:all .15s}
.temp-tbtn:hover{border-color:var(--cyan);color:var(--cyan);background:rgba(0,212,255,.12)}
.temp-play{width:22px;height:22px;border:1px solid var(--cyan);background:rgba(0,212,255,.08);color:var(--cyan);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;flex-shrink:0;border-radius:2px}
.temp-play:hover{background:rgba(0,212,255,.2)}
.temp-play.active{background:rgba(0,212,255,.2);box-shadow:0 0 8px rgba(0,212,255,.3)}
.temp-slider-wrap{flex:1;position:relative;height:18px;display:flex;align-items:center}
.temp-track{width:100%;height:3px;background:var(--dark4);border-radius:2px;position:relative}
.temp-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--cyan));border-radius:2px;transition:width 60ms linear}
.temp-markers{position:absolute;top:5px;left:0;right:0;display:flex;justify-content:space-between}
.temp-marker{font-family:'Share Tech Mono',monospace;font-size:7px;color:var(--text-muted)}
input#tslider{position:absolute;top:-5px;left:0;width:100%;height:14px;opacity:0;cursor:pointer;z-index:10}
.temp-speed{font-family:'Orbitron',monospace;font-size:8px;color:var(--gold);cursor:pointer;padding:2px 5px;border:1px solid var(--border);background:var(--dark3);letter-spacing:.06em;flex-shrink:0;min-width:22px;text-align:center;transition:all .15s;user-select:none}
.temp-speed:hover{border-color:var(--gold);background:rgba(200,168,75,.1)}
.temp-loop{font-size:12px;color:var(--text-muted);cursor:pointer;flex-shrink:0;transition:all .15s;user-select:none;padding:0 2px}
.temp-loop:hover{color:var(--cyan)}
.temp-loop.active{color:var(--cyan);text-shadow:0 0 6px var(--cyan)}
.temp-time{font-family:'Share Tech Mono',monospace;font-size:9px;color:var(--cyan);white-space:nowrap;letter-spacing:.07em;min-width:120px;text-align:right}

.mode-card .mode-pyramid{animation:pyramidGlow 4s ease-in-out infinite}
@keyframes introFadeIn{from{opacity:0}to{opacity:1}}
@keyframes introFadeOut{from{opacity:1}to{opacity:0}}

#intro-mute:hover{background:rgba(212,175,55,0.18)!important;border-color:#d4af37!important;}
#intro-inner{
  display:flex;flex-direction:column;align-items:center;gap:0;
  position:relative;top:-60px;
  animation:introRise .9s ease .3s both;
}
@keyframes introRise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}

#intro-emblem{
  width:220px;height:220px;
  border-radius:50%;
  filter:drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 60px rgba(200,168,75,.2));
  animation:emblemPulse 3s ease infinite;
  object-fit:cover;
}
@keyframes emblemPulse{
  0%,100%{filter:drop-shadow(0 0 24px rgba(200,168,75,.5)) drop-shadow(0 0 60px rgba(200,168,75,.2));}
  50%{filter:drop-shadow(0 0 40px rgba(200,168,75,.85)) drop-shadow(0 0 90px rgba(200,168,75,.4)) drop-shadow(0 0 120px rgba(0,212,255,.25));}
}

#intro-wordmark{
  font-family:'Orbitron',monospace;font-size:32px;font-weight:900;
  color:var(--gold);letter-spacing:.45em;
  margin-top:16px;
  text-shadow:0 0 30px rgba(200,168,75,.6),0 0 60px rgba(200,168,75,.25);
  animation:wordmarkIn .7s ease .8s both;
}
@keyframes wordmarkIn{from{opacity:0;letter-spacing:.2em}to{opacity:1;letter-spacing:.45em}}

#intro-tagline{
  font-family:'Share Tech Mono',monospace;font-size:9px;
  color:var(--cyan);letter-spacing:.25em;
  margin-top:10px;opacity:.8;
  animation:taglineIn .6s ease 1.2s both;
}
@keyframes taglineIn{from{opacity:0}to{opacity:.8}}

#intro-sub{
  font-family:'Share Tech Mono',monospace;font-size:8px;
  color:var(--text-muted);letter-spacing:.18em;
  margin-top:5px;
  animation:taglineIn .6s ease 1.5s both;
}

/* corner brackets */
#intro-inner::before,#intro-inner::after{
  content:'';position:absolute;width:40px;height:40px;
  border-color:rgba(200,168,75,.3);border-style:solid;
}
#intro-inner::before{top:-20px;left:-20px;border-width:1px 0 0 1px}
#intro-inner::after{bottom:-20px;right:-20px;border-width:0 1px 1px 0}

/* ══ API KEY MANAGER ══════════════════════════════════════════════ */
#key-manager-overlay{display:none}
#key-manager-overlay.open{display:flex!important}
#key-manager{
  background:#070C18;border:1px solid rgba(200,168,75,.4);
  width:min(680px,95vw);max-height:85vh;overflow-y:auto;
  font-family:'Share Tech Mono',monospace;
  box-shadow:0 0 60px rgba(200,168,75,.15),0 0 120px rgba(0,0,0,.8);
}
#km-header{
  display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;background:#0A1628;border-bottom:1px solid rgba(200,168,75,.25);
  color:var(--gold);font-size:12px;font-weight:bold;letter-spacing:2px;position:sticky;top:0;z-index:1;
}
#km-close{cursor:pointer;color:#607090;font-size:14px;padding:2px 6px}
#km-close:hover{color:var(--gold)}
#km-note{padding:8px 16px;color:#405060;font-size:9px;letter-spacing:.5px;background:#040810;border-bottom:1px solid #0D1525}
.km-section{padding:6px 16px;background:#0D1525;color:var(--gold);font-size:9px;letter-spacing:2px;border-bottom:1px solid rgba(200,168,75,.15)}
.km-row{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid #0A1020;flex-wrap:wrap}
.km-row:hover{background:#080F1A}
.km-help{padding:0 16px 6px 16px;font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(100,200,255,0.35);letter-spacing:0.3px;line-height:1.3}
.km-help a{color:rgba(100,200,255,0.55);text-decoration:none;border-bottom:1px dotted rgba(100,200,255,0.25)}
.km-help a:hover{color:var(--cyan);border-bottom-color:var(--cyan)}
.km-info{flex:0 0 180px}
.km-name{color:#C8D8F0;font-size:10px;font-weight:bold;margin-bottom:2px}
.km-desc{color:#405060;font-size:8px;letter-spacing:.3px}
.km-desc a{color:#4488AA;text-decoration:none}
.km-desc a:hover{color:var(--cyan)}
.km-input{flex:1;min-width:140px;background:#0A1628;border:1px solid #1a3a5c;color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 8px;outline:none;letter-spacing:.5px}
.km-input:focus{border-color:rgba(200,168,75,.5)}
.km-input.active{border-color:#00FF88;background:#051408}
.km-btn{background:#0D2040;border:1px solid rgba(200,168,75,.3);color:var(--gold);font-family:inherit;font-size:9px;padding:5px 10px;cursor:pointer;letter-spacing:1px;white-space:nowrap;transition:all .15s}
.km-btn:hover{background:rgba(200,168,75,.15);border-color:var(--gold)}
.km-status{font-size:8px;letter-spacing:.5px;white-space:nowrap;min-width:60px}
.km-status.active{color:#00FF88}
.km-status.error{color:#FF4444}
#km-footer{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;background:#040810;border-top:1px solid rgba(200,168,75,.15);position:sticky;bottom:0}
#km-active-count{color:var(--gold);font-size:9px;letter-spacing:1px}
.km-btn-clear{background:transparent;border:1px solid rgba(255,68,68,.3);color:#FF4444;font-family:inherit;font-size:8px;padding:4px 10px;cursor:pointer;letter-spacing:1px}
.km-btn-clear:hover{background:rgba(255,68,68,.1)}

/* ⚙ key manager trigger button in topbar */
#km-trigger{background:transparent;border:1px solid rgba(200,168,75,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s}
#km-trigger:hover{color:var(--gold);border-color:var(--gold)}
/* Key manager structural classes */
.km-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#0A1628;border-bottom:1px solid rgba(200,168,75,.25);position:sticky;top:0;z-index:1}
.km-body{padding:0}
.km-note{padding:8px 16px;color:#405060;font-size:9px;letter-spacing:.5px;background:#040810;border-bottom:1px solid #0D1525}
.km-footer{display:flex;justify-content:flex-end;gap:8px;align-items:center;padding:10px 16px;background:#040810;border-top:1px solid rgba(200,168,75,.15);position:sticky;bottom:0}
.km-footer-btn{background:#0D2040;border:1px solid rgba(200,168,75,.3);color:var(--gold);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 14px;cursor:pointer;letter-spacing:1px;transition:all .15s}
.km-footer-btn:hover{background:rgba(200,168,75,.15)}
.km-footer-btn.danger{border-color:rgba(255,68,68,.3);color:#ff6060}
.km-footer-btn.danger:hover{background:rgba(255,68,68,.1)}
.km-label{flex:0 0 160px;color:#C8D8F0;font-size:10px;white-space:nowrap}
/* ── TEAM CHAT (bottom of left panel) ── */
#team-chat{position:relative;width:100%;background:var(--dark2);border-top:1px solid var(--border);font-family:'Share Tech Mono',monospace;flex-shrink:0;margin-top:auto}
#chat-header{display:flex;justify-content:space-between;align-items:center;padding:5px 10px;background:var(--dark3);border-bottom:1px solid var(--border);cursor:pointer}
#chat-header:hover{background:var(--dark4)}
#chat-msgs{height:160px;overflow-y:auto;padding:6px 8px;display:flex;flex-direction:column;gap:4px;scrollbar-width:thin;scrollbar-color:var(--gold-dim) var(--dark3)}
/* .chat-msg styles defined in team sync section below */
#chat-input-row{display:flex;border-top:1px solid var(--border)}
#chat-input-row input{flex:1;background:var(--dark3);border:none;outline:none;color:var(--text);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 8px}
#chat-input-row button{background:rgba(0,212,255,.08);border:none;border-left:1px solid var(--border);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:8px;padding:5px 10px;cursor:pointer;letter-spacing:.08em}
#chat-input-row button:hover{background:rgba(0,212,255,.18)}
.chat-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}
/* ── IMPORT MODAL ── */
/* ══ NEWS TICKER ════════════════════════════════════════════════════ */
#news-ticker{
  height:28px;background:#03080f;
  border-bottom:1px solid rgba(100,200,255,0.08);
  display:flex;align-items:center;
  flex-shrink:0;overflow:hidden;position:relative;
  z-index:900;
}
#ticker-label{
  flex:none;padding:0 10px;
  font-family:'Orbitron',sans-serif;font-size:8px;
  letter-spacing:2px;color:rgba(100,200,255,0.5);
  border-right:1px solid rgba(100,200,255,0.1);
  white-space:nowrap;height:100%;display:flex;align-items:center;
  transition:color .4s ease;
}
#ticker-track-wrap{
  flex:1;overflow:hidden;height:100%;
  position:relative;cursor:pointer;
}
#ticker-track{
  display:flex;align-items:center;height:100%;
  white-space:nowrap;
  animation:tickerScroll 120s linear infinite;
  will-change:transform;
}
#ticker-track:hover,
#ticker-track.paused{ animation-play-state:paused; }
@keyframes tickerScroll{
  0%  { transform:translateX(100vw); }
  100%{ transform:translateX(-100%); }
}
.ticker-item{
  display:inline-flex;align-items:center;
  font-size:11px;color:#c8d8e8;
  padding:0 28px;cursor:pointer;
  transition:color .2s;
  font-family:'Share Tech Mono',monospace;
  letter-spacing:.3px;
}
.ticker-item:hover{ color:#64c8ff; }
.ticker-item::before{
  content:'◆';color:rgba(100,200,255,0.3);
  margin-right:12px;font-size:7px;flex:none;
}
.ticker-item.high::before{ color:#ff4444; }
.ticker-item.med::before { color:#ff8c42; }
.ticker-item.loading{ color:#445566;font-style:italic; }
.ticker-item .ti-src{
  font-size:9px;color:rgba(100,200,255,0.4);
  margin-left:8px;letter-spacing:1px;
  font-family:'Orbitron',sans-serif;
}
#ticker-controls{
  flex:none;display:flex;align-items:center;gap:6px;
  padding:0 8px;border-left:1px solid rgba(100,200,255,0.1);
  height:100%;
}
#ticker-controls #imp-trigger{
  background:none;border:1px solid rgba(100,200,255,0.2);
  color:rgba(100,200,255,0.55);font-family:'Orbitron',sans-serif;
  font-size:8px;letter-spacing:1px;padding:2px 7px;cursor:pointer;
  border-radius:2px;transition:all .2s;white-space:nowrap;
}
#ticker-controls #imp-trigger:hover{
  color:#64c8ff;border-color:rgba(100,200,255,0.5);
  background:rgba(100,200,255,0.08);
}
#ticker-pause{
  background:none;border:none;color:rgba(100,200,255,0.4);
  font-size:12px;cursor:pointer;padding:0 2px;
  transition:color .2s;line-height:1;
}
#ticker-pause:hover{ color:#64c8ff; }
#ticker-source{
  background:#070d16;border:1px solid rgba(100,200,255,0.15);
  color:rgba(200,220,240,0.7);font-size:9px;
  font-family:'Orbitron',sans-serif;letter-spacing:.5px;
  padding:2px 4px;border-radius:2px;cursor:pointer;outline:none;
}
#ticker-source option{ background:#070d16; }

/* Ticker hidden when map maximized */
body.map-maximized #news-ticker{ display:none!important; }

/* ══ MAXIMIZE MAP BUTTON (in-map corner) ═══════════════════════════ */
#map-max-btn{
  background:none;border:none;
  color:rgba(100,200,255,0.4);
  font-size:13px;padding:0 6px;cursor:pointer;
  transition:all .2s;flex-shrink:0;margin-left:auto;
  line-height:1;
}
#restore-bar{
  display:none;position:fixed;top:78px;left:0;right:0;
  height:22px;z-index:1001;
  background:rgba(0,255,136,0.08);
  border-bottom:1px solid rgba(0,255,136,0.25);
  color:rgba(0,255,136,0.7);
  font-family:'Orbitron',sans-serif;font-size:8px;
  letter-spacing:2px;cursor:pointer;
  display:none;align-items:center;justify-content:center;
  transition:background .2s;
}
#restore-bar:hover{background:rgba(0,255,136,0.15);}
body.map-maximized #restore-bar{display:flex!important;}
#globe-overlay{
  display:none;position:absolute;top:0;left:0;right:0;bottom:0;
  z-index:802;background:#000;overflow:hidden;
}
#globe-overlay iframe{
  position:absolute;top:0;left:0;width:100%;height:100%;
  border:none;display:block;
}
#globe-close-btn{
  position:absolute;top:10px;right:10px;z-index:810;
  background:rgba(0,20,10,0.92);border:1px solid rgba(0,255,136,0.5);
  color:#00ff88;font-family:'Orbitron',sans-serif;
  font-size:9px;letter-spacing:1.5px;padding:6px 16px;cursor:pointer;
  border-radius:2px;backdrop-filter:blur(6px);transition:all .2s;
}
#globe-close-btn:hover{background:rgba(0,40,20,0.95);border-color:#00ff88;color:#fff;}
#globe-credit{
  position:absolute;bottom:10px;left:50%;transform:translateX(-50%);
  font-family:'Orbitron',sans-serif;font-size:7px;
  color:rgba(100,200,255,0.4);letter-spacing:2px;pointer-events:none;
}
/* Globe btn — above coord search bar */
#globe-btn{
  position:absolute;
  top:10px;
  right:14px;
  z-index:500;
  background:rgba(4,7,16,0.94);
  border:1px solid rgba(100,200,255,0.35);
  color:rgba(100,200,255,0.75);
  font-family:'Orbitron',sans-serif;font-size:9px;letter-spacing:1.5px;
  padding:4px 18px;cursor:pointer;border-radius:2px;
  transition:all .3s;white-space:nowrap;
  backdrop-filter:blur(6px);
}
#globe-btn:hover{color:#64c8ff;border-color:rgba(100,200,255,0.6);background:rgba(0,20,50,0.97);}
#globe-btn.active{color:#00ff88;border-color:rgba(0,255,136,0.5);background:rgba(0,20,10,0.95);}

/* ══ TEAM CHAT ══════════════════════════════════════════════════════ */
#team-chat{
  position:relative;width:100%;
  background:#070d16;border-top:1px solid rgba(100,200,255,0.2);
  font-family:'Share Tech Mono',monospace;
  z-index:10;transition:all .25s ease;
  flex-shrink:0;margin-top:auto;
}
#team-chat.chat-closed #chat-body{ display:none; }
#team-chat.chat-closed{ border-color:rgba(100,200,255,0.15); }

#chat-header{
  display:flex;align-items:center;gap:8px;
  padding:7px 10px;cursor:pointer;
  background:rgba(100,200,255,0.06);
  border-bottom:1px solid rgba(100,200,255,0.15);
  user-select:none;
}
#chat-title{ color:#64c8ff;font-size:10px;letter-spacing:2px;font-family:'Orbitron',sans-serif;flex:none; }
#chat-online-bar{ display:flex;gap:5px;flex:1;flex-wrap:wrap;align-items:center; }
#chat-controls{ display:flex;align-items:center;gap:6px;flex:none; }
#chat-badge{
  background:#ff4444;color:#fff;font-size:9px;
  border-radius:8px;padding:1px 6px;font-family:'Orbitron',sans-serif;
}
#chat-toggle-icon{ color:#64c8ff;font-size:10px;transition:transform .2s; }
#team-chat.chat-closed #chat-toggle-icon{ transform:rotate(180deg); }

/* Roster dots */
.chat-dot{
  width:8px;height:8px;border-radius:50%;flex:none;
  transition:background .4s;
}
.chat-dot.online{ background:#00ff88;box-shadow:0 0 5px #00ff88; }
.chat-dot.offline{ background:#444;box-shadow:none; }
.chat-dot-label{ color:#aaa;font-size:9px;letter-spacing:.5px; }

#chat-body{ display:flex;flex-direction:column;height:240px; }
#chat-roster{
  padding:6px 10px;border-bottom:1px solid rgba(255,255,255,0.06);
  display:flex;gap:10px;flex-wrap:wrap;min-height:28px;align-items:center;
}
#chat-msgs{
  flex:1;overflow-y:auto;padding:8px 10px;
  display:flex;flex-direction:column;gap:4px;
  scrollbar-width:thin;scrollbar-color:rgba(100,200,255,0.2) transparent;
}
.chat-msg{ font-size:11px;line-height:1.5; }
.chat-msg .cm-who{ font-weight:bold;margin-right:5px; }
.chat-msg .cm-who.me{ color:#64c8ff; }
.chat-msg .cm-who.them{ color:#00ff88; }
.chat-msg .cm-who.sys{ color:#888; }
.chat-msg .cm-text{ color:#ccc; }
.chat-msg .cm-time{ color:#444;font-size:9px;margin-left:5px; }
.chat-msg.sys-msg .cm-text{ color:#666;font-style:italic; }

#chat-input-row{
  display:flex;gap:6px;padding:8px 10px;
  border-top:1px solid rgba(255,255,255,0.07);
}
#chat-input{
  flex:1;background:rgba(255,255,255,0.05);
  border:1px solid rgba(100,200,255,0.2);
  color:#e0e0e0;font-family:'Share Tech Mono',monospace;font-size:11px;
  padding:5px 8px;border-radius:2px;outline:none;
}
#chat-input:focus{ border-color:rgba(100,200,255,0.5); }
#chat-send{
  background:rgba(100,200,255,0.1);border:1px solid rgba(100,200,255,0.3);
  color:#64c8ff;font-family:'Orbitron',sans-serif;font-size:9px;
  letter-spacing:1px;padding:5px 10px;border-radius:2px;cursor:pointer;
}
#chat-send:hover{ background:rgba(100,200,255,0.2); }

/* ── MAP MAXIMIZE ── */
#map-max-btn{
  background:rgba(255,255,255,0.06);
  border:1px solid rgba(100,200,255,0.25);
  color:#64c8ff;
  font-family:'Orbitron',sans-serif;
  font-size:10px;letter-spacing:1.5px;
  padding:5px 10px;border-radius:2px;
  cursor:pointer;transition:all .2s;
}
#map-max-btn:hover{ background:rgba(100,200,255,0.12);border-color:#64c8ff; }
#map-max-btn.active{ color:#00ff88;border-color:rgba(0,255,136,0.4);background:rgba(0,255,136,0.08); }

/* When maximized — hide panels, shrink topbar */
body.map-maximized #lp,
body.map-maximized #rp,
body.map-maximized #ap,
body.map-maximized #ap-tab,
body.map-maximized #nav-panel { display:none!important; }
body.map-maximized #topbar { height:28px!important;min-height:28px!important; }
body.map-maximized .tb-center,
body.map-maximized .tb-sys,
body.map-maximized .tb-left .tb-logo { font-size:9px!important; }
body.map-maximized #main { top:28px!important; }
body.map-maximized #map-max-btn { color:#00ff88;border-color:rgba(0,255,136,0.4);background:rgba(0,255,136,0.08); }

#imp-trigger{background:transparent;border:1px solid rgba(0,212,255,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s}
#imp-trigger:hover{color:var(--cyan);border-color:var(--cyan)}
#import-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:8500;align-items:center;justify-content:center}
#import-modal.open{display:flex}
#import-box{background:#0a0f1e;border:1px solid var(--cyan);width:600px;max-width:95vw;border-radius:4px;overflow:hidden}
.imp-hdr{background:rgba(0,212,255,.08);border-bottom:1px solid rgba(0,212,255,.2);padding:12px 18px;display:flex;justify-content:space-between;align-items:center;font-family:'Share Tech Mono',monospace;color:var(--cyan);font-size:11px;letter-spacing:2px}
.imp-hdr button{background:none;border:none;color:#607090;cursor:pointer;font-size:16px}
.imp-hdr button:hover{color:#fff}
.imp-body{padding:18px}
.imp-drop{border:2px dashed rgba(0,212,255,.3);border-radius:4px;padding:30px;text-align:center;cursor:pointer;transition:all .2s;margin-bottom:14px;position:relative}
.imp-drop:hover,.imp-drop.drag-over{border-color:var(--cyan);background:rgba(0,212,255,.05)}
.imp-drop input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%;height:100%}
.imp-drop-icon{font-size:28px;margin-bottom:8px}
.imp-drop-label{font-family:'Share Tech Mono',monospace;color:var(--cyan);font-size:11px;letter-spacing:1px}
.imp-drop-sub{color:#607090;font-size:10px;margin-top:4px}
.imp-types{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.imp-type{background:rgba(0,212,255,.06);border:1px solid rgba(0,212,255,.2);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:3px 8px;border-radius:2px;letter-spacing:1px}
.imp-log{background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.07);border-radius:2px;padding:8px;font-family:'Share Tech Mono',monospace;font-size:9px;color:#607090;max-height:80px;overflow-y:auto;min-height:32px}
.imp-log .ok{color:var(--cyan)} .imp-log .err{color:#ff4444} .imp-log .warn{color:var(--gold)}
.imp-actions{display:flex;gap:8px;margin-top:12px}
.imp-btn{flex:1;background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.25);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:7px;cursor:pointer;letter-spacing:1px;transition:all .2s}
.imp-btn:hover{background:rgba(0,212,255,.18);border-color:var(--cyan)}
.imp-url-row{display:flex;gap:6px;margin-bottom:8px}
.imp-url-in{flex:1;background:rgba(0,0,0,.4);border:1px solid rgba(0,212,255,.2);color:#c0d0e0;font-family:'Share Tech Mono',monospace;font-size:9px;padding:6px 8px;outline:none}
.imp-url-in:focus{border-color:var(--cyan)}
.imp-url-btn{background:rgba(0,212,255,.08);border:1px solid rgba(0,212,255,.25);color:var(--cyan);font-family:'Share Tech Mono',monospace;font-size:9px;padding:6px 10px;cursor:pointer}
.imp-url-btn:hover{background:rgba(0,212,255,.2)}
/* inset map — multi-mode */
#inset-btn{background:transparent;border:1px solid rgba(200,168,75,.3);color:#607090;font-family:'Share Tech Mono',monospace;font-size:9px;padding:4px 10px;cursor:pointer;letter-spacing:1px;transition:all .2s;margin-right:4px}
#inset-btn:hover{color:var(--gold);border-color:var(--gold)}
#inset-container{position:absolute;bottom:40px;left:14px;width:240px;height:195px;z-index:450;border:1px solid var(--gold);background:#060b14;display:none;border-radius:3px;overflow:hidden;box-shadow:0 4px 24px rgba(0,0,0,.6);transition:height .25s ease}
#inset-container.open{display:block}
#inset-container.minimized{height:26px;overflow:hidden}
#inset-container.minimized #inset-map,#inset-container.minimized .inset-lbl{display:none}
#inset-header{display:flex;align-items:center;justify-content:space-between;background:rgba(200,168,75,.06);border-bottom:1px solid rgba(200,168,75,.2);padding:0 4px 0 0}
#inset-tabs{display:flex;gap:0;flex:1;overflow-x:auto}
.inset-tab{font-family:'Orbitron',monospace;font-size:7px;letter-spacing:.08em;color:var(--text-muted);padding:5px 7px;cursor:pointer;white-space:nowrap;transition:all .15s;border-bottom:2px solid transparent}
.inset-tab:hover{color:var(--gold)}
.inset-tab.active{color:var(--gold);border-bottom-color:var(--gold);background:rgba(200,168,75,.08)}
#inset-map{width:100%;height:calc(100% - 26px)}
.inset-lbl{position:absolute;bottom:4px;left:6px;font-family:'Share Tech Mono',monospace;font-size:8px;color:var(--gold);letter-spacing:1px;z-index:10;pointer-events:none;background:rgba(0,0,0,.65);padding:1px 5px;border-radius:1px}
.inset-close{font-size:10px;color:#607090;cursor:pointer;z-index:10;padding:4px 4px;flex-shrink:0;transition:color .15s}
.inset-close:hover{color:#fff}
#km-trigger.has-keys{color:var(--gold);border-color:rgba(200,168,75,.5)}

/* ══════════════════ ALERT MONITOR PANEL ═══════════════════════════
   Sits in the layout flow between #map and #rp (right panel)
   ap-compact: 260px wide, collapses to ticker bar
   ap-expanded: 380px wide, full view
   ap-minimized: 32px tall ticker only
══════════════════════════════════════════════════════════════════ */
/* ── ALERT MONITOR — floating overlay (no layout space) ── */
/* ── AUTONOMOUS ALERT PILL ─────────────────────────────
   Lives at bottom of #rp. Dormant (invisible) until alerts.
   Activates automatically, slides up a compact drawer.
   ─────────────────────────────────────────────────── */
#ap{
  flex-shrink:0;
  border-top:1px solid transparent;
  transition:border-color .3s;
  overflow:hidden;
}
/* Dormant — hidden, zero height */
#ap.ap-dormant{
  height:0;
  border-color:transparent;
  pointer-events:none;
  opacity:0;
}
/* Active — pill visible, drawer closed */
#ap.ap-active{
  height:auto;
  border-color:rgba(200,168,75,.25);
  pointer-events:all;
  opacity:1;
}
/* Drawer open */
#ap.ap-open #ap-drawer{ display:flex; }
#ap.ap-open #ap-chevron{ transform:rotate(180deg); }

/* Pill row */
#ap-pill{
  display:flex;align-items:center;gap:6px;padding:5px 10px;
  cursor:pointer;background:rgba(200,168,75,.06);
  transition:background .15s;
}
#ap-pill:hover{ background:rgba(200,168,75,.12); }

#ap-dot{
  width:6px;height:6px;border-radius:50%;
  background:var(--gold);flex-shrink:0;
}
/* Pulse when new alert */
#ap.ap-active #ap-dot{ animation:apdot 1.8s ease-in-out infinite; }
@keyframes apdot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}

#ap-badge{
  font-family:'Orbitron',monospace;font-size:9px;font-weight:700;
  color:var(--gold);min-width:12px;
}
#ap-label{
  font-family:'Share Tech Mono',monospace;font-size:8px;
  color:var(--text-muted);letter-spacing:.1em;flex:1;
}
#ap-chevron{
  font-size:8px;color:#405060;
  transition:transform .2s;
}

/* Drawer */
#ap-drawer{
  display:none;flex-direction:column;
  max-height:220px;
  border-top:1px solid rgba(200,168,75,.15);
}
#ap-drawer-hdr{
  display:flex;align-items:center;justify-content:space-between;
  padding:5px 10px;background:rgba(4,7,16,.6);flex-shrink:0;
}
#ap-list{
  flex:1;overflow-y:auto;
  scrollbar-width:thin;scrollbar-color:var(--gold) transparent;
}
#ap-list::-webkit-scrollbar{width:2px}
#ap-list::-webkit-scrollbar-thumb{background:var(--gold)}

/* Individual alert card in pill */
.ap-card{
  padding:6px 10px;border-bottom:1px solid rgba(200,168,75,.06);
  font-family:'Share Tech Mono',monospace;
}
.ap-card-top{
  display:flex;align-items:center;justify-content:space-between;margin-bottom:2px;
}
.ap-card-int{font-family:'Orbitron',monospace;font-size:8px;font-weight:700;letter-spacing:.1em}
.ap-card-time{font-size:7px;color:#405060}
.ap-card-msg{font-size:9px;line-height:1.4;color:var(--text)}
.ap-card-conf{font-size:7px;margin-top:2px;letter-spacing:.05em}


/* ══ NODAL ANALYSIS — SPIDER WORKSPACE ═══════════════════════════ */
.sp-tool{width:32px;height:32px;display:flex;align-items:center;justify-content:center;
  background:rgba(6,10,20,0.9);border:1px solid rgba(0,212,255,0.1);border-radius:4px;
  cursor:pointer;font-size:14px;color:rgba(200,220,240,0.5);transition:all .15s;
  backdrop-filter:blur(8px);user-select:none;position:relative}
.sp-tool:hover{background:rgba(0,212,255,0.12);border-color:rgba(0,212,255,0.35);color:#E0ECFF;transform:scale(1.08)}
.sp-tool[data-active="true"]{background:rgba(0,212,255,0.18);border-color:rgba(0,212,255,0.5);color:#00D4FF;
  box-shadow:0 0 12px rgba(0,212,255,0.2),inset 0 0 8px rgba(0,212,255,0.06)}
.sp-tool::after{content:attr(title);position:absolute;left:38px;top:50%;transform:translateY(-50%);
  background:rgba(6,10,20,0.95);border:1px solid rgba(0,212,255,0.15);color:rgba(200,220,240,0.7);
  font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.04em;padding:4px 8px;
  border-radius:3px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .15s;z-index:20}
.sp-tool:hover::after{opacity:1}
.sp-start-card{width:80px;height:80px;border-radius:10px;border:1px solid rgba(var(--sa),0.15);
  background:rgba(var(--sa),0.03);display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:6px;cursor:pointer;transition:all .25s ease}
.sp-start-card:hover{border-color:rgba(var(--sa),0.5);background:rgba(var(--sa),0.1);
  transform:translateY(-3px) scale(1.04);box-shadow:0 6px 20px rgba(var(--sa),0.12)}
.sp-start-card:active{transform:translateY(0) scale(0.97)}
.sp-start-label{font-size:8px;color:rgba(var(--sa),0.55);font-family:'Share Tech Mono',monospace;letter-spacing:.1em}
/* Spider node info strip */
#spider-info-strip{position:absolute;top:0;left:0;right:0;height:0;overflow:hidden;
  background:rgba(6,10,20,0.92);border-bottom:1px solid rgba(0,212,255,0.1);
  backdrop-filter:blur(8px);z-index:6;transition:height .2s ease;
  display:flex;align-items:center;padding:0 12px;gap:12px;
  font-family:'Share Tech Mono',monospace;font-size:9px}
#spider-info-strip.open{height:36px}
#spider-info-strip .si-name{color:#00D4FF;font-family:'Orbitron',sans-serif;font-size:10px;letter-spacing:.08em}
#spider-info-strip .si-type{color:rgba(200,168,75,0.6);font-size:8px;letter-spacing:.1em}
#spider-info-strip .si-conn{color:rgba(200,220,240,0.3)}
#spider-info-strip .si-actions{margin-left:auto;display:flex;gap:4px}
#spider-info-strip .si-btn{font-size:8px;padding:3px 8px;background:rgba(0,212,255,0.06);
  border:1px solid rgba(0,212,255,0.12);color:rgba(0,212,255,0.5);cursor:pointer;
  border-radius:2px;transition:all .15s;font-family:'Share Tech Mono',monospace}
#spider-info-strip .si-btn:hover{background:rgba(0,212,255,0.12);border-color:rgba(0,212,255,0.3);color:#00D4FF}
/* Spider hover tooltip */
#spider-tooltip{position:absolute;pointer-events:none;z-index:15;
  background:rgba(6,10,20,0.95);border:1px solid rgba(0,212,255,0.2);
  border-radius:3px;padding:6px 10px;backdrop-filter:blur(8px);
  font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(200,220,240,0.6);
  opacity:0;transition:opacity .12s;max-width:200px;box-shadow:0 4px 16px rgba(0,0,0,.5)}
#spider-tooltip.visible{opacity:1}
/* Context menu polish */
.sp-ctx-header{padding:6px 12px;font-family:'Orbitron',sans-serif;font-size:7px;
  color:rgba(0,212,255,0.3);letter-spacing:.12em;border-bottom:1px solid rgba(0,212,255,0.06)}
.sp-ctx-item{padding:7px 12px;cursor:pointer;color:rgba(200,220,240,0.6);transition:all .1s;
  letter-spacing:.02em;display:flex;align-items:center;gap:8px}
.sp-ctx-item:hover{background:rgba(0,212,255,0.08);color:#C8D8F0}
.sp-ctx-item.red{color:rgba(255,68,102,0.6)}
.sp-ctx-item.red:hover{background:rgba(255,68,102,0.08);color:#FF4466}
.sp-ctx-sep{height:1px;background:rgba(0,212,255,0.06);margin:2px 0}
/* Spider inline input panel */
@keyframes spInputFadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.spi-input{width:100%;background:rgba(0,212,255,0.04);border:1px solid rgba(0,212,255,0.15);
  color:#C8D8F0;font-family:'Share Tech Mono',monospace;font-size:12px;padding:10px 12px;
  border-radius:4px;outline:none;transition:border-color .15s;letter-spacing:.03em}
.spi-input:focus{border-color:rgba(0,212,255,0.4);background:rgba(0,212,255,0.06);
  box-shadow:0 0 12px rgba(0,212,255,0.08)}
.spi-input::placeholder{color:rgba(200,220,240,0.2)}
.spi-type-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:5px 6px;
  border:1px solid rgba(var(--tc),0.12);border-radius:4px;cursor:pointer;transition:all .15s;
  background:rgba(var(--tc),0.02);min-width:38px}
.spi-type-btn:hover{border-color:rgba(var(--tc),0.35);background:rgba(var(--tc),0.08)}
.spi-type-btn.active{border-color:rgba(var(--tc),0.5);background:rgba(var(--tc),0.12);
  box-shadow:0 0 8px rgba(var(--tc),0.1)}
.spi-type-btn.big{padding:10px 12px;min-width:56px}
.spi-type-btn span{color:rgba(var(--tc),0.7)}
.spi-type-btn.active span{color:rgb(var(--tc))}
.spi-rel-btn{font-family:'Share Tech Mono',monospace;font-size:7px;padding:4px 8px;
  border:1px solid rgba(255,255,255,0.06);border-radius:3px;cursor:pointer;
  color:var(--rc);opacity:0.4;transition:all .15s;letter-spacing:.04em}
.spi-rel-btn:hover{opacity:0.7;background:rgba(255,255,255,0.03)}
.spi-rel-btn.active{opacity:1;border-color:var(--rc);background:rgba(255,255,255,0.04);
  box-shadow:0 0 6px rgba(255,255,255,0.03)}
.spi-submit{font-family:'Orbitron',sans-serif;font-size:8px;letter-spacing:.1em;
  padding:8px 16px;border:1px solid rgba(0,212,255,0.3);background:rgba(0,212,255,0.1);
  color:#00D4FF;border-radius:3px;cursor:pointer;transition:all .15s}
.spi-submit:hover{background:rgba(0,212,255,0.2);border-color:rgba(0,212,255,0.5);
  box-shadow:0 0 12px rgba(0,212,255,0.1)}
.spi-submit.secondary{background:rgba(200,168,75,0.08);border-color:rgba(200,168,75,0.2);color:#C8A84B}
.spi-submit.secondary:hover{background:rgba(200,168,75,0.15);border-color:rgba(200,168,75,0.4)}
.spi-suggestions{display:none;position:absolute;top:100%;left:0;right:0;z-index:60;
  background:rgba(6,10,20,0.97);border:1px solid rgba(0,212,255,0.15);border-top:none;
  border-radius:0 0 4px 4px;max-height:150px;overflow-y:auto}
.spi-suggestion{padding:7px 12px;cursor:pointer;font-size:9px;color:rgba(200,220,240,0.5);
  transition:background .1s}
.spi-suggestion:hover{background:rgba(0,212,255,0.08);color:#C8D8F0}
/* Social media intelligence chips */
.inv-social-chip{font-family:'Share Tech Mono',monospace;font-size:7px;padding:3px 7px;
  border:1px solid rgba(var(--sc,0,212,255),0.1);border-radius:3px;cursor:pointer;
  color:rgba(var(--sc,0,212,255),0.35);transition:all .15s;user-select:none;letter-spacing:.04em}
.inv-social-chip:hover{border-color:rgba(var(--sc,0,212,255),0.3);color:rgba(var(--sc,0,212,255),0.6)}
.inv-social-chip.active{border-color:rgba(var(--sc,0,212,255),0.4);background:rgba(var(--sc,0,212,255),0.08);
  color:rgb(var(--sc,0,212,255));box-shadow:0 0 6px rgba(var(--sc,0,212,255),0.08)}
/* Investigation Workspace */
.inv-ws-drop{width:56px;height:56px;border-radius:8px;border:1px dashed rgba(0,212,255,0.12);
  background:rgba(0,212,255,0.02);display:flex;flex-direction:column;align-items:center;
  justify-content:center;gap:3px;cursor:pointer;transition:all .2s}
.inv-ws-drop:hover{border-color:rgba(0,212,255,0.35);border-style:solid;background:rgba(0,212,255,0.06);
  transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,212,255,0.08)}
.inv-ws-drop:active{transform:scale(0.95)}
.inv-ws-drop span{font-size:20px}
.inv-ws-drop small{font-size:6px;font-family:'Share Tech Mono',monospace;color:rgba(0,212,255,0.3);letter-spacing:.06em}
.inv-ws-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;
  border-radius:4px;font-family:'Share Tech Mono',monospace;font-size:9px;
  cursor:pointer;transition:all .15s;position:relative;animation:spInputFadeIn .2s ease}
.inv-ws-chip:hover{filter:brightness(1.3)}
.inv-ws-chip .ws-chip-x{position:absolute;top:-3px;right:-3px;width:12px;height:12px;
  border-radius:50%;background:rgba(255,68,102,0.8);color:#fff;font-size:7px;
  display:none;align-items:center;justify-content:center;cursor:pointer}
.inv-ws-chip:hover .ws-chip-x{display:flex}


/* =============================================================
   AARU v6.0 · Intel Panel Upgrades
   Appended — do not edit above this line
   ============================================================= */

:root {
  --aaru-cyan:    #00c8ff;
  --aaru-green:   #00ff88;
  --aaru-gold:    #c8a84b;
  --aaru-red:     #ff4466;
  --aaru-orange:  #ff7800;
  --aaru-pink:    #ff60b0;
  --aaru-purple:  #9060ff;
  --aaru-blue:    #4080ff;
  --panel-bg:     rgba(4,8,18,0.93);
  --panel-border: rgba(0,200,255,0.12);
  --mono:         'Share Tech Mono', 'JetBrains Mono', 'Courier New', monospace;
}

/* ── LAYER SEARCH ─────────────────────────────────────────────*/
.aaru-search-wrap {
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 5px 8px 3px;
  background: rgba(4,8,18,.96);
  border-bottom: 1px solid var(--panel-border);
  position: sticky;
  top: 0;
  z-index: 10;
}
.aaru-search-input {
  flex: 1;
  background: rgba(0,200,255,.05);
  border: 1px solid rgba(0,200,255,.2);
  border-radius: 2px;
  color: #90b8d0;
  font-family: var(--mono);
  font-size: 9px;
  letter-spacing: .07em;
  padding: 4px 7px;
  outline: none;
  text-transform: uppercase;
  transition: border-color .15s;
}
.aaru-search-input::placeholder { color: rgba(0,200,255,.28); }
.aaru-search-input:focus {
  border-color: rgba(0,200,255,.5);
  background: rgba(0,200,255,.08);
}
.aaru-search-clear {
  display: none;
  align-items: center;
  justify-content: center;
  width: 16px; height: 16px;
  cursor: pointer;
  color: rgba(0,200,255,.4);
  font-size: 9px;
  flex-shrink: 0;
  transition: color .15s;
}
.aaru-search-clear:hover { color: rgba(0,200,255,.9); }

/* ── PRESET PACK BAR ──────────────────────────────────────────*/
.aaru-preset-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
  padding: 5px 8px;
  background: rgba(4,8,18,.9);
  border-bottom: 1px solid var(--panel-border);
}
.aaru-preset-btn {
  font-family: var(--mono);
  font-size: 8px;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 3px 7px;
  border-radius: 2px;
  border: 1px solid;
  cursor: pointer;
  transition: background .15s, box-shadow .15s, opacity .15s;
  opacity: .75;
  white-space: nowrap;
}
.aaru-preset-btn:hover  { opacity: 1; }
.aaru-preset-btn:active { transform: scale(.97); }
.aaru-preset-cyan   { background: rgba(0,200,255,.07); border-color: rgba(0,200,255,.3); color: var(--aaru-cyan); }
.aaru-preset-cyan:hover   { background: rgba(0,200,255,.16); box-shadow: 0 0 8px rgba(0,200,255,.25); }
.aaru-preset-green  { background: rgba(0,255,136,.07); border-color: rgba(0,255,136,.3); color: var(--aaru-green); }
.aaru-preset-green:hover  { background: rgba(0,255,136,.16); box-shadow: 0 0 8px rgba(0,255,136,.25); }
.aaru-preset-gold   { background: rgba(200,168,75,.07); border-color: rgba(200,168,75,.3); color: var(--aaru-gold); }
.aaru-preset-gold:hover   { background: rgba(200,168,75,.16); box-shadow: 0 0 8px rgba(200,168,75,.25); }
.aaru-preset-orange { background: rgba(255,120,0,.07); border-color: rgba(255,120,0,.3); color: var(--aaru-orange); }
.aaru-preset-orange:hover { background: rgba(255,120,0,.16); box-shadow: 0 0 8px rgba(255,120,0,.25); }
.aaru-preset-blue   { background: rgba(64,128,255,.07); border-color: rgba(64,128,255,.3); color: var(--aaru-blue); }
.aaru-preset-blue:hover   { background: rgba(64,128,255,.16); box-shadow: 0 0 8px rgba(64,128,255,.25); }
.aaru-preset-red    { background: rgba(255,68,102,.07); border-color: rgba(255,68,102,.3); color: var(--aaru-red); }
.aaru-preset-red:hover    { background: rgba(255,68,102,.16); box-shadow: 0 0 8px rgba(255,68,102,.25); }

/* ── ACTIVE FEEDS STRIP ───────────────────────────────────────*/
.aaru-afs {
  background: rgba(4,8,18,.92);
  border-bottom: 1px solid var(--panel-border);
  font-family: var(--mono);
}
.aaru-afs-hdr {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 4px 9px;
  border-bottom: 1px solid rgba(0,200,255,.06);
}
.aaru-afs-title {
  font-size: 8px;
  letter-spacing: .1em;
  color: var(--aaru-cyan);
  text-transform: uppercase;
  flex: 1;
}
.aaru-afs-ct {
  font-size: 8px;
  color: rgba(0,200,255,.55);
  background: rgba(0,200,255,.08);
  border: 1px solid rgba(0,200,255,.18);
  border-radius: 2px;
  padding: 0 5px;
  min-width: 16px;
  text-align: center;
}
.aaru-afs-tog {
  background: none; border: none;
  color: rgba(0,200,255,.35);
  cursor: pointer; font-size: 8px;
  padding: 1px 3px; transition: color .15s;
}
.aaru-afs-tog:hover { color: var(--aaru-cyan); }
.aaru-afs-body {
  max-height: 100px;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,200,255,.15) transparent;
}
.aaru-afs-item {
  display: flex; align-items: center;
  gap: 5px; padding: 2px 9px;
  border-bottom: 1px solid rgba(0,200,255,.03);
}
.aaru-afs-dot {
  width: 5px; height: 5px; border-radius: 50%; flex-shrink: 0;
}
.aaru-dot-live {
  background: var(--aaru-green);
  box-shadow: 0 0 4px var(--aaru-green);
  animation: aaru-pulse 2s infinite;
}
.aaru-dot-static { background: rgba(0,200,255,.45); }
@keyframes aaru-pulse { 0%,100%{opacity:1} 50%{opacity:.35} }
.aaru-afs-name {
  flex: 1; font-size: 8px; color: #90b8d0;
  letter-spacing: .04em; text-transform: uppercase;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
.aaru-afs-time { font-size: 7px; color: rgba(144,184,208,.35); flex-shrink: 0; }
.aaru-afs-rm {
  background: none; border: none;
  color: rgba(255,68,102,.35); cursor: pointer;
  font-size: 7px; padding: 0 3px; flex-shrink: 0;
  transition: color .15s;
}
.aaru-afs-rm:hover { color: rgba(255,68,102,.9); }
.aaru-afs-empty {
  font-size: 8px; color: rgba(144,184,208,.25);
  padding: 6px 9px; text-transform: uppercase; letter-spacing: .07em;
}

/* ── FRESHNESS STAMP ──────────────────────────────────────────*/
.aaru-fresh {
  font-family: var(--mono);
  font-size: 7px;
  color: rgba(0,255,136,.55);
  letter-spacing: .04em;
  margin-left: 3px;
}

/* ── DYNAMIC COUNTER ACTIVE STATE ────────────────────────────*/
.lgc.aaru-ctr-active {
  color: var(--aaru-cyan) !important;
  background: rgba(0,200,255,.12) !important;
  border-color: rgba(0,200,255,.35) !important;
}

/* ── BRIEFING MODE ────────────────────────────────────────────*/
body.aaru-briefing #topbar,
body.aaru-briefing .left-panel,
body.aaru-briefing #left-panel,
body.aaru-briefing #ll,
body.aaru-briefing .lp,
body.aaru-briefing #aaru-cmd-strip,
body.aaru-briefing .chat-panel,
body.aaru-briefing #chat-panel,
body.aaru-briefing .aaru-afs,
body.aaru-briefing .aaru-preset-bar,
body.aaru-briefing .aaru-search-wrap {
  display: none !important;
}
body.aaru-briefing #mc,
body.aaru-briefing .map-container {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 1 !important;
}
body.aaru-briefing #cs-mode-brief {
  display: flex !important;
  position: fixed;
  top: 10px; right: 12px;
  z-index: 9990;
  background: rgba(4,8,15,.88);
  border: 1px solid rgba(0,200,255,.4) !important;
  border-radius: 3px;
  padding: 5px 10px;
}
.aaru-brief-manifest {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  z-index: 9995;
  background: rgba(4,8,15,.98);
  border-top: 1px solid rgba(0,200,255,.2);
  font-family: var(--mono);
  display: flex; flex-direction: column;
  max-height: 38vh;
}
.aaru-mf-hdr {
  display: flex; align-items: center; gap: 12px;
  padding: 6px 14px;
  border-bottom: 1px solid rgba(0,200,255,.1);
  background: rgba(0,200,255,.03); flex-shrink: 0;
}
.aaru-mf-title {
  font-size: 9px; letter-spacing: .1em;
  color: var(--aaru-cyan); text-transform: uppercase; flex: 1;
}
.aaru-mf-ct, .aaru-mf-ts-hdr {
  font-size: 8px; color: rgba(200,216,232,.4);
  text-transform: uppercase; letter-spacing: .05em;
}
.aaru-mf-btn {
  background: none;
  border: 1px solid rgba(0,200,255,.25);
  color: rgba(0,200,255,.65);
  font-family: var(--mono);
  font-size: 8px; letter-spacing: .06em;
  text-transform: uppercase;
  padding: 2px 8px; border-radius: 2px;
  cursor: pointer; transition: all .15s;
}
.aaru-mf-btn:hover { background: rgba(0,200,255,.1); color: var(--aaru-cyan); }
.aaru-mf-exit:hover { border-color: rgba(255,68,102,.5); color: var(--aaru-red); background: rgba(255,68,102,.07); }
.aaru-mf-body {
  overflow-y: auto; padding: 3px 14px;
  scrollbar-width: thin;
  scrollbar-color: rgba(0,200,255,.15) transparent;
}
.aaru-mf-row {
  display: grid;
  grid-template-columns: 1fr 56px 152px;
  gap: 10px; align-items: center;
  padding: 2px 0;
  border-bottom: 1px solid rgba(0,200,255,.04);
  font-size: 8px; text-transform: uppercase; letter-spacing: .04em;
}
.aaru-mf-row:last-child { border-bottom: none; }
.aaru-mf-name   { color: #c0d4e4; }
.aaru-mf-live   { color: var(--aaru-green); }
.aaru-mf-static { color: rgba(0,200,255,.45); }
.aaru-mf-ts     { color: rgba(200,216,232,.3); font-size: 7px; }
.aaru-mf-empty  { font-size: 8px; color: rgba(200,216,232,.25); padding: 8px 0; text-transform: uppercase; }

@media print {
  body > *:not(.aaru-brief-manifest) { display: none !important; }
  .aaru-brief-manifest { position: static; border: none; max-height: none; }
  .aaru-mf-btn { display: none; }
}

/* ── API KEY GUARD TOAST ──────────────────────────────────────*/
#aaru-key-toast {
  position: fixed;
  bottom: 68px;
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  z-index: 99999;
  background: rgba(10,14,22,0.97);
  border: 1px solid rgba(255,160,0,0.7);
  color: #ffa000;
  font-family: 'Share Tech Mono','Courier New',monospace;
  font-size: 10px;
  letter-spacing: .07em;
  padding: 8px 16px;
  border-radius: 3px;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s, transform .2s;
  white-space: nowrap;
  text-transform: uppercase;
  box-shadow: 0 0 18px rgba(255,160,0,.2);
}
#aaru-key-toast.visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* ═══════════════════════════════════════════════════
   AARU INVESTIGATIVE v7
   ═══════════════════════════════════════════════════ */
#inv7{display:none;position:fixed;top:78px;left:0;right:0;bottom:0;z-index:5000;background:#040810;flex-direction:column;overflow:hidden}
#inv7.active{display:flex}
#inv7-topbar{height:40px;flex-shrink:0;display:flex;align-items:center;background:rgba(3,6,14,.98);border-bottom:1px solid rgba(0,212,255,.14);font-family:'Share Tech Mono',monospace}
#inv7-case-id{font-size:7.5px;letter-spacing:.14em;color:#FF4466;background:rgba(255,68,102,.07);border-right:1px solid rgba(255,68,102,.2);padding:0 14px;height:100%;display:flex;align-items:center;white-space:nowrap}
#inv7-case-name{font-family:'Orbitron',monospace;font-size:10px;font-weight:700;letter-spacing:.1em;color:#00D4FF;padding:0 16px;white-space:nowrap;border-right:1px solid rgba(0,212,255,.1)}
#inv7-views{display:flex;height:100%}
.inv7-vbtn{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.1em;padding:0 16px;background:transparent;border:none;border-right:1px solid rgba(0,212,255,.06);color:rgba(100,150,190,.45);cursor:pointer;transition:all .13s}
.inv7-vbtn:hover{color:rgba(0,212,255,.7);background:rgba(0,212,255,.04)}
.inv7-vbtn.active{color:#00D4FF;background:rgba(0,212,255,.07);border-bottom:2px solid #00D4FF}
#inv7-topbar-right{display:flex;align-items:center;gap:6px;margin-left:auto;padding-right:14px}
.inv7-topbtn{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.09em;padding:5px 13px;background:transparent;cursor:pointer;transition:all .13s}
#inv7-add-btn{border:1px solid rgba(0,212,255,.25);color:rgba(0,212,255,.6)}
#inv7-add-btn:hover{background:rgba(0,212,255,.09);border-color:rgba(0,212,255,.5);color:#00D4FF}
#inv7-ai-btn{border:1px solid rgba(170,102,255,.25);color:rgba(170,102,255,.6)}
#inv7-ai-btn:hover{background:rgba(170,102,255,.09);color:#AA66FF}
#inv7-ai-btn.on{background:rgba(170,102,255,.13);border-color:#AA66FF;color:#D4AAFF}
#inv7-workspace{display:flex;flex:1;overflow:hidden;min-height:0}
#inv7-eb{width:240px;flex-shrink:0;display:flex;flex-direction:column;background:rgba(4,8,18,.97);border-right:1px solid rgba(0,212,255,.07);overflow:hidden}
#inv7-eb-hdr{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.12em;color:rgba(100,150,190,.45);padding:10px 12px 0;flex-shrink:0}
#inv7-eb-search{padding:8px 10px;flex-shrink:0;border-bottom:1px solid rgba(0,212,255,.07)}
#inv7-eb-search input{width:100%;background:rgba(0,0,0,.4);border:1px solid rgba(0,212,255,.14);color:rgba(200,225,240,.9);font-family:'Share Tech Mono',monospace;font-size:9px;padding:5px 9px;outline:none;letter-spacing:.05em}
#inv7-eb-search input:focus{border-color:rgba(0,212,255,.3)}
#inv7-eb-search input::placeholder{color:rgba(80,120,160,.4)}
#inv7-type-filter{display:flex;flex-wrap:wrap;gap:3px;padding:7px 10px;border-bottom:1px solid rgba(0,212,255,.07);flex-shrink:0}
.inv7-tf{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.07em;padding:2px 7px;background:transparent;border:1px solid rgba(0,212,255,.08);color:rgba(80,120,160,.5);cursor:pointer;transition:all .12s}
.inv7-tf:hover{color:rgba(0,212,255,.6);border-color:rgba(0,212,255,.2)}
.inv7-tf.active{color:#00D4FF;border-color:rgba(0,212,255,.35);background:rgba(0,212,255,.05)}
#inv7-entity-list{flex:1;overflow-y:auto;padding:4px 0}
#inv7-entity-list::-webkit-scrollbar{width:2px}
#inv7-entity-list::-webkit-scrollbar-thumb{background:rgba(0,212,255,.15)}
.inv7-ec{display:flex;align-items:center;gap:8px;padding:7px 12px;cursor:pointer;border-left:2px solid transparent;transition:all .12s}
.inv7-ec:hover{background:rgba(0,212,255,.04);border-left-color:rgba(0,212,255,.2)}
.inv7-ec.selected{background:rgba(0,212,255,.07);border-left-color:#00D4FF}
.inv7-ec-icon{width:26px;height:26px;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:13px;flex-shrink:0;border:1px solid rgba(0,0,0,.3)}
.inv7-ec-body{flex:1;min-width:0}
.inv7-ec-name{font-family:'Rajdhani',sans-serif;font-size:12px;font-weight:600;color:rgba(210,230,245,.9);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.inv7-ec-sub{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.06em;color:rgba(90,130,170,.55)}
.inv7-ec-conf{font-family:'Share Tech Mono',monospace;font-size:8px;flex-shrink:0}
#inv7-osint{flex-shrink:0;border-top:1px solid rgba(0,212,255,.07);background:rgba(3,6,14,.6);max-height:180px;overflow-y:auto}
#inv7-osint::-webkit-scrollbar{width:2px}
#inv7-osint::-webkit-scrollbar-thumb{background:rgba(200,168,75,.2)}
.inv7-osint-hdr{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;cursor:pointer;user-select:none}
.inv7-osint-title{font-family:'Share Tech Mono',monospace;font-size:7.5px;letter-spacing:.1em;color:rgba(200,168,75,.6)}
.inv7-osint-arr{font-size:8px;color:rgba(80,120,160,.45)}
#inv7-osint-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:0 8px 8px}
.inv7-ot{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.05em;padding:5px 7px;background:rgba(200,168,75,.03);border:1px solid rgba(200,168,75,.1);color:rgba(200,168,75,.5);cursor:pointer;transition:all .12s;text-decoration:none;display:block}
.inv7-ot:hover{background:rgba(200,168,75,.09);border-color:rgba(200,168,75,.28);color:rgba(200,168,75,.9)}
#inv7-center{flex:1;min-width:0;position:relative;overflow:hidden}
.inv7-view{position:absolute;inset:0;display:none;flex-direction:column;background:#040810}
.inv7-view.active{display:flex}
#inv7-graph-view{position:relative}
#inv7-graph-view::before{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,212,255,.012) 2px,rgba(0,212,255,.012) 4px)}
#inv7-graph-view::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;background:radial-gradient(ellipse at 50% 50%,transparent 45%,rgba(4,8,16,.35) 100%)}
#inv7-graph-svg{width:100%;height:100%;display:block}
#inv7-gtoolbar{position:absolute;top:12px;right:12px;display:flex;flex-direction:column;gap:3px;z-index:10}
.inv7-gtbtn{width:28px;height:28px;background:rgba(4,8,16,.88);border:1px solid rgba(0,212,255,.18);color:rgba(100,150,190,.55);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .12s}
.inv7-gtbtn:hover{border-color:rgba(0,212,255,.45);color:#00D4FF}
#inv7-legend{position:absolute;bottom:12px;left:12px;z-index:10;background:rgba(4,8,16,.88);border:1px solid rgba(0,212,255,.1);padding:9px 12px}
.inv7-li{display:flex;align-items:center;gap:7px;margin-bottom:4px;font-family:'Share Tech Mono',monospace;font-size:7px;color:rgba(90,130,170,.55)}
.inv7-li:last-child{margin-bottom:0}
.inv7-ld{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.inv7-ls{width:8px;height:8px;flex-shrink:0}
.inv7-ldm{width:8px;height:8px;transform:rotate(45deg);flex-shrink:0}
#inv7-gtooltip{position:absolute;pointer-events:none;z-index:200;display:none;background:rgba(4,8,16,.97);border:1px solid rgba(0,212,255,.35);padding:8px 12px;min-width:140px}
.inv7-gtt-type{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.1em;color:rgba(90,130,170,.55);margin-bottom:2px}
.inv7-gtt-name{font-family:'Orbitron',monospace;font-size:11px;color:#00D4FF;margin-bottom:4px}
.inv7-gtt-conf{font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(90,130,170,.55)}
#inv7-timeline-view{padding:20px;overflow:hidden}
#inv7-tl-svg{width:100%;height:100%}
.inv7-tl-ax path,.inv7-tl-ax line{stroke:rgba(0,212,255,.18)}
.inv7-tl-ax text{fill:rgba(120,165,200,.5);font-family:'Share Tech Mono',monospace;font-size:9px}
#inv7-ev-toolbar{display:flex;align-items:center;gap:7px;padding:9px 14px;border-bottom:1px solid rgba(0,212,255,.07);flex-shrink:0;background:rgba(4,8,18,.97)}
.inv7-ev-tbtn{font-family:'Share Tech Mono',monospace;font-size:7.5px;letter-spacing:.08em;padding:5px 12px;background:rgba(0,212,255,.05);border:1px solid rgba(0,212,255,.18);color:rgba(0,212,255,.7);cursor:pointer;transition:all .12s}
.inv7-ev-tbtn:hover{background:rgba(0,212,255,.11);border-color:rgba(0,212,255,.4)}
#inv7-ev-list{flex:1;overflow-y:auto;padding:10px 14px;display:flex;flex-direction:column;gap:7px}
#inv7-ev-list::-webkit-scrollbar{width:3px}
#inv7-ev-list::-webkit-scrollbar-thumb{background:rgba(0,212,255,.12)}
.inv7-ev-item{background:rgba(6,10,22,.95);border:1px solid rgba(0,212,255,.08);border-left:3px solid rgba(0,212,255,.3);padding:11px 13px;cursor:pointer;transition:all .13s}
.inv7-ev-item:hover{border-color:rgba(0,212,255,.2);background:rgba(0,212,255,.03)}
.inv7-ev-item.verified{border-left-color:#00FF88}
.inv7-ev-top{display:flex;align-items:center;gap:8px;margin-bottom:5px}
.inv7-ev-icon{font-size:15px}
.inv7-ev-title{font-family:'Rajdhani',sans-serif;font-size:13px;font-weight:600;color:rgba(210,230,245,.9);flex:1}
.inv7-ev-badge{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.07em;padding:2px 7px;border:1px solid}
.inv7-ev-meta{display:flex;gap:14px;font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(90,130,170,.55)}
.inv7-ev-notes{font-family:'Rajdhani',sans-serif;font-size:12px;color:rgba(160,190,215,.7);margin-top:5px;line-height:1.5}
.inv7-ev-hash{font-family:'Share Tech Mono',monospace;font-size:7px;color:rgba(60,90,120,.6);margin-top:4px;word-break:break-all}
#inv7-dossier-view{overflow-y:auto;padding:24px 32px}
#inv7-dossier-view::-webkit-scrollbar{width:4px}
#inv7-dossier-view::-webkit-scrollbar-thumb{background:rgba(0,212,255,.12)}
#inv7-dossier-inner{max-width:680px;margin:0 auto}
.inv7-dos-sec{margin-bottom:22px;padding-bottom:18px;border-bottom:1px solid rgba(0,212,255,.07)}
.inv7-dos-h1{font-family:'Orbitron',monospace;font-size:15px;font-weight:800;letter-spacing:.14em;color:#00D4FF;margin-bottom:4px}
.inv7-dos-h2{font-family:'Orbitron',monospace;font-size:9px;font-weight:600;letter-spacing:.12em;color:rgba(90,130,170,.55);margin:14px 0 7px}
.inv7-dos-meta{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:8px}
.inv7-dos-mi{font-family:'Share Tech Mono',monospace;font-size:8px;color:rgba(90,130,170,.55)}
.inv7-dos-mv{color:rgba(200,225,240,.9);font-weight:600}
.inv7-dos-text{font-family:'Rajdhani',sans-serif;font-size:13px;line-height:1.65;color:rgba(160,190,215,.75)}
.inv7-dos-row{display:flex;align-items:center;gap:9px;padding:6px 9px;background:rgba(6,10,22,.95);border:1px solid rgba(0,212,255,.07);margin-bottom:4px}
#inv7-insp{width:290px;flex-shrink:0;display:flex;flex-direction:column;background:rgba(4,8,18,.97);border-left:1px solid rgba(0,212,255,.07);overflow:hidden}
#inv7-insp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:rgba(60,90,120,.5)}
.inv7-ie-icon{font-size:26px;opacity:.3}
.inv7-ie-txt{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.1em}
.inv7-ie-sub{font-family:'Rajdhani',sans-serif;font-size:11.5px;color:rgba(60,90,120,.4);text-align:center;max-width:170px;line-height:1.5}
#inv7-insp-content{display:none;flex-direction:column;height:100%;overflow:hidden}
#inv7-insp-hero{padding:14px 13px 10px;border-bottom:1px solid rgba(0,212,255,.07);flex-shrink:0;background:linear-gradient(180deg,rgba(8,18,36,.9) 0%,transparent 100%)}
.inv7-ih-top{display:flex;align-items:flex-start;gap:9px;margin-bottom:9px}
.inv7-ih-icon{width:34px;height:34px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:17px;border:1px solid rgba(0,0,0,.3);flex-shrink:0}
.inv7-ih-info{flex:1}
.inv7-ih-name{font-family:'Orbitron',monospace;font-size:12px;font-weight:700;color:rgba(210,230,245,.95);line-height:1.2;margin-bottom:2px}
.inv7-ih-type{font-family:'Share Tech Mono',monospace;font-size:7.5px;letter-spacing:.1em}
.inv7-conf-row{display:flex;align-items:center;gap:7px;margin-top:7px}
.inv7-conf-lbl{font-family:'Share Tech Mono',monospace;font-size:7px;color:rgba(80,120,160,.5);white-space:nowrap}
.inv7-conf-bar{flex:1;height:3px;background:rgba(0,212,255,.07)}
.inv7-conf-fill{height:100%;transition:width .3s}
.inv7-conf-val{font-family:'Share Tech Mono',monospace;font-size:8px;min-width:28px;text-align:right}
.inv7-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:7px}
.inv7-tag{font-family:'Share Tech Mono',monospace;font-size:6.5px;letter-spacing:.07em;padding:2px 6px;border:1px solid}
#inv7-insp-body{flex:1;overflow-y:auto}
#inv7-insp-body::-webkit-scrollbar{width:2px}
#inv7-insp-body::-webkit-scrollbar-thumb{background:rgba(0,212,255,.12)}
.inv7-isec{padding:9px 13px;border-bottom:1px solid rgba(0,212,255,.05)}
.inv7-isec-title{font-family:'Share Tech Mono',monospace;font-size:7.5px;letter-spacing:.11em;color:rgba(80,120,160,.5);margin-bottom:7px;display:flex;align-items:center;justify-content:space-between}
.inv7-isec-ct{font-size:7px;color:rgba(60,90,120,.5);background:rgba(0,212,255,.04);padding:1px 5px}
.inv7-prop{display:flex;gap:7px;margin-bottom:4px;font-family:'Share Tech Mono',monospace;font-size:8.5px}
.inv7-pk{color:rgba(80,120,160,.55);min-width:80px;flex-shrink:0}
.inv7-pv{color:rgba(200,220,240,.8);word-break:break-word}
.inv7-link-item{display:flex;align-items:center;gap:7px;padding:5px 7px;background:rgba(8,16,30,.8);border:1px solid rgba(0,212,255,.06);margin-bottom:3px;cursor:pointer;transition:all .12s}
.inv7-link-item:hover{border-color:rgba(0,212,255,.18);background:rgba(0,212,255,.03)}
.inv7-li-icon{font-size:12px;flex-shrink:0}
.inv7-li-info{flex:1}
.inv7-li-name{font-family:'Rajdhani',sans-serif;font-size:11px;font-weight:600;color:rgba(200,225,240,.85)}
.inv7-li-rel{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.05em;color:rgba(80,120,160,.5)}
.inv7-li-conf{font-family:'Share Tech Mono',monospace;font-size:7.5px;flex-shrink:0}
.inv7-actions{display:flex;flex-wrap:wrap;gap:4px;padding:9px 13px}
.inv7-act{font-family:'Share Tech Mono',monospace;font-size:7.5px;letter-spacing:.06em;padding:5px 9px;background:transparent;border:1px solid rgba(0,212,255,.14);color:rgba(90,130,170,.6);cursor:pointer;transition:all .12s}
.inv7-act:hover{background:rgba(0,212,255,.06);border-color:rgba(0,212,255,.3);color:rgba(0,212,255,.9)}
.inv7-act.primary{color:rgba(0,212,255,.75);border-color:rgba(0,212,255,.28)}
.inv7-act.primary:hover{background:rgba(0,212,255,.1)}
.inv7-act.danger{color:rgba(255,68,102,.55);border-color:rgba(255,68,102,.18)}
.inv7-act.danger:hover{background:rgba(255,68,102,.07)}
#inv7-ai{position:fixed;right:0;top:78px;bottom:0;width:370px;background:rgba(4,8,18,.98);border-left:1px solid rgba(170,102,255,.22);display:flex;flex-direction:column;z-index:5100;transform:translateX(100%);transition:transform .25s cubic-bezier(.4,0,.2,1)}
#inv7-ai.open{transform:translateX(0)}
#inv7-ai-hdr{padding:11px 13px;border-bottom:1px solid rgba(170,102,255,.13);flex-shrink:0;background:linear-gradient(180deg,rgba(170,102,255,.07) 0%,transparent 100%);display:flex;align-items:center;justify-content:space-between}
.inv7-ai-dot{width:7px;height:7px;border-radius:50%;background:#AA66FF;animation:inv7glow 2s ease infinite;flex-shrink:0}
@keyframes inv7glow{0%,100%{box-shadow:0 0 4px #AA66FF}50%{box-shadow:0 0 12px #AA66FF,0 0 24px rgba(170,102,255,.4)}}
.inv7-ai-title{font-family:'Orbitron',monospace;font-size:9px;letter-spacing:.12em;color:#AA66FF;margin-left:8px}
#inv7-ai-close{background:none;border:none;color:rgba(80,120,160,.5);cursor:pointer;font-size:14px;padding:4px;line-height:1}
#inv7-ai-close:hover{color:rgba(200,225,240,.8)}
#inv7-ai-quick{display:flex;flex-wrap:wrap;gap:4px;padding:8px 11px;border-bottom:1px solid rgba(170,102,255,.09);flex-shrink:0}
.inv7-ai-q{font-family:'Share Tech Mono',monospace;font-size:7px;letter-spacing:.06em;padding:4px 9px;background:rgba(170,102,255,.05);border:1px solid rgba(170,102,255,.14);color:rgba(170,102,255,.55);cursor:pointer;transition:all .12s}
.inv7-ai-q:hover{background:rgba(170,102,255,.12);border-color:rgba(170,102,255,.3);color:#AA66FF}
#inv7-ai-msgs{flex:1;overflow-y:auto;padding:11px;display:flex;flex-direction:column;gap:9px}
#inv7-ai-msgs::-webkit-scrollbar{width:2px}
#inv7-ai-msgs::-webkit-scrollbar-thumb{background:rgba(170,102,255,.18)}
.inv7-amsg{display:flex;gap:7px;align-items:flex-start}
.inv7-amsg.user{flex-direction:row-reverse}
.inv7-amsg-icon{width:22px;height:22px;border-radius:2px;display:flex;align-items:center;justify-content:center;font-size:11px;flex-shrink:0;background:rgba(170,102,255,.1);border:1px solid rgba(170,102,255,.22)}
.inv7-amsg.user .inv7-amsg-icon{background:rgba(0,212,255,.07);border-color:rgba(0,212,255,.2)}
.inv7-abubble{background:rgba(170,102,255,.06);border:1px solid rgba(170,102,255,.13);padding:9px 11px;max-width:275px}
.inv7-amsg.user .inv7-abubble{background:rgba(0,212,255,.05);border-color:rgba(0,212,255,.14)}
.inv7-abubble-txt{font-family:'Rajdhani',sans-serif;font-size:12.5px;line-height:1.6;color:rgba(200,225,240,.9)}
.inv7-abubble-time{font-family:'Share Tech Mono',monospace;font-size:7px;color:rgba(60,90,120,.5);margin-top:4px}
.inv7-thinking{display:flex;gap:5px;align-items:center;padding:8px 11px}
.inv7-thdot{width:5px;height:5px;border-radius:50%;background:#AA66FF;animation:inv7think .8s ease infinite;opacity:.3}
.inv7-thdot:nth-child(2){animation-delay:.15s}
.inv7-thdot:nth-child(3){animation-delay:.3s}
@keyframes inv7think{0%,100%{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}
#inv7-ai-inputrow{display:flex;gap:5px;padding:9px 11px;border-top:1px solid rgba(170,102,255,.13);flex-shrink:0}
#inv7-ai-input{flex:1;background:rgba(170,102,255,.05);border:1px solid rgba(170,102,255,.18);color:rgba(200,225,240,.9);font-family:'Share Tech Mono',monospace;font-size:9px;padding:7px 9px;outline:none;resize:none;height:36px;letter-spacing:.04em}
#inv7-ai-input:focus{border-color:rgba(170,102,255,.38)}
#inv7-ai-send{background:rgba(170,102,255,.1);border:1px solid rgba(170,102,255,.28);color:#AA66FF;padding:0 13px;cursor:pointer;font-family:'Share Tech Mono',monospace;font-size:9px;transition:all .12s;flex-shrink:0}
#inv7-ai-send:hover{background:rgba(170,102,255,.2);border-color:#AA66FF}
#inv7-modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:6000;display:none;align-items:center;justify-content:center;backdrop-filter:blur(4px)}
#inv7-modal-bg.open{display:flex}
#inv7-modal{background:rgba(10,18,34,.99);border:1px solid rgba(0,212,255,.3);padding:22px;min-width:340px}
.inv7-modal-title{font-family:'Orbitron',monospace;font-size:11px;font-weight:600;letter-spacing:.12em;color:#00D4FF;margin-bottom:18px}
.inv7-mf{margin-bottom:11px}
.inv7-ml{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.1em;color:rgba(80,120,160,.55);margin-bottom:4px;display:block}
.inv7-mi,.inv7-msel{width:100%;background:rgba(0,0,0,.45);border:1px solid rgba(0,212,255,.18);color:rgba(200,225,240,.9);font-family:'Share Tech Mono',monospace;font-size:10px;padding:6px 9px;outline:none}
.inv7-mi:focus,.inv7-msel:focus{border-color:rgba(0,212,255,.4)}
.inv7-msel option{background:rgba(10,18,34,.99)}
.inv7-mactions{display:flex;gap:7px;margin-top:18px;justify-content:flex-end}
.inv7-mbtn{font-family:'Share Tech Mono',monospace;font-size:8px;letter-spacing:.1em;padding:7px 17px;cursor:pointer;transition:all .12s;background:transparent;border:1px solid rgba(0,212,255,.18);color:rgba(90,130,170,.6)}
.inv7-mbtn:hover{border-color:rgba(0,212,255,.35);color:rgba(0,212,255,.85)}
.inv7-mbtn.primary{background:rgba(0,212,255,.09);border-color:rgba(0,212,255,.35);color:#00D4FF}
.inv7-mbtn.primary:hover{background:rgba(0,212,255,.17)}
#inv7-status{height:26px;flex-shrink:0;display:flex;align-items:center;gap:16px;padding:0 12px;background:rgba(3,6,14,.98);border-top:1px solid rgba(0,212,255,.07);font-family:'Share Tech Mono',monospace;font-size:7.5px;color:rgba(80,120,160,.5)}
.inv7-sb{display:flex;align-items:center;gap:5px}
.inv7-sb-dot{width:5px;height:5px;border-radius:50%;flex-shrink:0}
#inv7-sb-sep{flex:1}
.inv7-sb-live{width:6px;height:6px;border-radius:50%;background:#00FF88;animation:inv7pulse 2s ease infinite;flex-shrink:0}
@keyframes inv7pulse{0%,100%{opacity:1}50%{opacity:.35}}
#inv7-graph-view .node{cursor:pointer}
#inv7-graph-view .node.selected circle,#inv7-graph-view .node.selected rect,#inv7-graph-view .node.selected polygon{stroke-width:2.5;filter:drop-shadow(0 0 7px currentColor)}
#inv7-graph-view .inv7-link{stroke:rgba(0,212,255,.18);stroke-width:1}
#inv7-graph-view .inv7-link.strong{stroke:rgba(0,212,255,.36);stroke-width:1.5}
#inv7-graph-view .linklabel{font-family:'Share Tech Mono',monospace;font-size:7px;fill:rgba(80,120,160,.45);text-anchor:middle}
#inv7-graph-view .nodelabel{font-family:'Share Tech Mono',monospace;font-size:8px;fill:rgba(190,215,235,.65);text-anchor:middle;pointer-events:none}
