.live-body { margin: 0; min-height: 100vh; background: #060a14; color: #e8eefc; }
.live-header {
  display: flex; align-items: center; justify-content: space-between; gap: 1rem;
  padding: 0.75rem 1.25rem; border-bottom: 1px solid #24304f;
  background: rgba(8, 12, 24, 0.95);
}
.live-title { display: flex; align-items: baseline; gap: 0.75rem; flex-wrap: wrap; }
.live-title h1 { margin: 0; font-size: 2rem; color: #2fd6a1; }
.live-label { font-size: 0.7rem; letter-spacing: 0.15em; color: #9fb0d0; }
.sec-badge {
  padding: 0.2rem 0.55rem; border-radius: 6px; font-weight: 700; font-size: 0.9rem;
  background: #24304f;
}
.sec-badge.high { background: rgba(109, 255, 178, 0.2); color: #6dffb2; }
.sec-badge.low { background: rgba(255, 211, 109, 0.2); color: #ffd36d; }
.sec-badge.null { background: rgba(255, 141, 141, 0.2); color: #ff8d8d; }
.live-meta { text-align: center; }
#live-clock { font-size: 1.4rem; font-variant-numeric: tabular-nums; }
.live-links { display: flex; gap: 0.75rem; align-items: center; }
.live-links a { color: #9fb0d0; text-decoration: none; }
.live-grid {
  display: grid;
  grid-template-columns: 1fr 2fr 1fr;
  gap: 0.75rem;
  padding: 0.75rem;
  height: calc(100vh - 72px);
  box-sizing: border-box;
}
.live-panel {
  background: #121a2f; border: 1px solid #24304f; border-radius: 12px;
  padding: 0.85rem; display: flex; flex-direction: column; min-height: 0;
}
.live-panel h2 { margin: 0 0 0.65rem; font-size: 1rem; }
.live-panel textarea {
  width: 100%; box-sizing: border-box; background: #0d1428; color: #e8eefc;
  border: 1px solid #24304f; border-radius: 8px; padding: 0.5rem; font-size: 0.85rem;
  resize: vertical; font-family: Consolas, monospace;
}
.row-btns { display: flex; gap: 0.5rem; margin: 0.5rem 0; flex-wrap: wrap; align-items: center; }
.period-filter { display: inline-flex; gap: 0.35rem; align-items: center; margin-left: auto; }
.period-btn.active { background: #5b8cff; color: #fff; border-color: #5b8cff; }
.scroll-list { overflow-y: auto; flex: 1; font-size: 0.85rem; }
.sig-item {
  padding: 0.45rem 0; border-bottom: 1px solid #24304f; cursor: pointer;
}
.sig-item:hover { color: #5b8cff; }
.sig-guide {
  margin: 0.75rem 0; padding: 0.75rem; background: #0d1428;
  border: 1px solid #24304f; border-radius: 8px;
}
.sig-guide h4 { margin: 0 0 0.5rem; color: #2fd6a1; font-size: 1rem; }
.sig-guide ul, .sig-guide ol { margin: 0.25rem 0 0.75rem 1.1rem; padding: 0; }
.sig-guide li { margin: 0.2rem 0; }
.guide-label { margin: 0.5rem 0 0.15rem; font-size: 0.75rem; letter-spacing: 0.06em; text-transform: uppercase; color: #9fb0d0; }
.chance-badge {
  display: inline-block; margin-left: 0.35rem; padding: 0.1rem 0.4rem;
  border-radius: 4px; font-size: 0.75rem; font-weight: 700;
}
.chance-ok { background: rgba(109, 255, 178, 0.2); color: #6dffb2; }
.chance-mid { background: rgba(91, 140, 255, 0.2); color: #9ec1ff; }
.chance-warn { background: rgba(255, 211, 109, 0.2); color: #ffd36d; }
.chance-bad { background: rgba(255, 107, 107, 0.2); color: #ff6b6b; }
.sig-chance {
  display: flex; gap: 0.75rem; align-items: center;
  margin: 0.65rem 0; padding: 0.65rem; border-radius: 8px;
  background: #0d1428; border: 1px solid #24304f;
}
.chance-big { font-size: 1.6rem; font-weight: 800; color: #2fd6a1; min-width: 3.5rem; }
.sig-modal { border: none; background: transparent; padding: 0; max-width: 520px; width: 94%; }
.table-wrap { overflow: auto; flex: 1; }
.intel-table { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
.intel-table th, .intel-table td { padding: 0.35rem 0.4rem; border-bottom: 1px solid #24304f; text-align: left; }
.threat-high { color: #ff6b6b; font-weight: 700; }
.threat-medium { color: #ffd36d; font-weight: 600; }
.threat-low { color: #9fb0d0; }
.threat-safe { color: #6dffb2; }
.threat-unknown { color: #9fb0d0; }
.sig-modal::backdrop { background: rgba(0,0,0,0.65); }
.modal-inner { position: relative; }
.modal-close {
  position: absolute; right: 0.5rem; top: 0.35rem; background: none; border: none;
  color: #e8eefc; font-size: 1.5rem; cursor: pointer;
}
.companion-ok { color: #6dffb2; font-size: 0.85rem; margin: 0.5rem 0; }
.companion-off { color: #ff6b6b; font-size: 0.85rem; margin: 0.5rem 0; }
.threat-alert {
  position: sticky; top: 0; z-index: 50;
  padding: 0.65rem 1.25rem; font-weight: 700;
  background: #5a1520; color: #ffb4b4; border-bottom: 1px solid #ff6b6b;
  animation: threat-pulse 1.2s ease-in-out 3;
}
.threat-alert[hidden] { display: none !important; }
@keyframes threat-pulse {
  0%, 100% { background: #5a1520; }
  50% { background: #8a1f30; }
}
.dscan-title { margin-top: 1rem; }
.dscan-list { max-height: 180px; font-size: 0.8rem; }
.dscan-item {
  display: flex; justify-content: space-between; gap: 0.5rem;
  padding: 0.25rem 0; border-bottom: 1px solid #24304f;
}
.dscan-item .dist { color: #9fb0d0; white-space: nowrap; }
.dscan-near .dist { color: #ffd36d; font-weight: 600; }
.fit-unreliable { color: #ffd36d !important; }

@media (max-width: 1100px) {
  .live-grid { grid-template-columns: 1fr; height: auto; }
  .live-panel { min-height: 280px; }
}
