/* Scene "incident" — alert, then site + search recovery tracks */
.ic { position: absolute; inset: 0; display: grid; grid-template-rows: auto auto minmax(0, 1fr) auto; gap: 12px; padding: 16px; }
.ic-alert { display: flex; align-items: center; gap: 14px; padding: 12px 14px; border-radius: 12px; border: 1px solid var(--line-2); background: rgba(140, 165, 255, 0.05); transition: border-color 0.5s, background 0.5s, box-shadow 0.5s; }
.ic.is-alert .ic-alert { border-color: rgba(255, 111, 134, 0.6); background: rgba(255, 111, 134, 0.1); box-shadow: 0 0 30px -8px rgba(255, 111, 134, 0.6); }
.ic.is-resolved .ic-alert { border-color: rgba(87, 242, 176, 0.45); background: rgba(87, 242, 176, 0.06); }
.ic-siren { position: relative; flex: none; width: 14px; height: 14px; border-radius: 50%; background: var(--dim); transition: background 0.4s; }
.ic.is-alert .ic-siren { background: var(--rose); }
.ic.is-alert .ic-siren::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; border: 2px solid var(--rose); animation: ic-ping 1.1s var(--ease) infinite; }
.ic.is-resolved .ic-siren { background: var(--mint); box-shadow: 0 0 10px var(--mint); }
@keyframes ic-ping { 0% { transform: scale(0.6); opacity: 1; } 100% { transform: scale(1.6); opacity: 0; } }
.ic-alert-txt { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ic-alert-txt b { font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--dim); font-weight: 500; }
.ic-alert-txt span { font-size: 14px; font-weight: 600; letter-spacing: -0.01em; color: var(--text); }
.ic-tracks { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: start; }
.ic-term { display: flex; flex-direction: column; justify-content: flex-end; gap: 4px; min-height: 0; overflow: hidden; padding: 10px 12px; border-radius: 10px; background: rgba(2, 6, 18, 0.7); border: 1px solid var(--line); font-size: 11.5px; line-height: 1.5; color: var(--muted); }
.ic-line { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; animation: ic-line 0.4s var(--ease); }
.ic-line span { color: var(--accent); }
.ic-line.is-bad { color: var(--rose); }
.ic-line.is-ok { color: var(--mint); }
@keyframes ic-line { from { opacity: 0; transform: translateY(6px); } }
.ic-track { display: flex; flex-direction: column; gap: 10px; padding: 14px 12px; border-radius: 12px; border: 1px solid var(--line); background: rgba(5, 10, 28, 0.45); min-width: 0; }
.ic-track-k { font-size: 10.5px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--accent); margin-bottom: 2px; }
.ic-step { position: relative; display: flex; align-items: center; gap: 10px; font-size: 12.5px; line-height: 1.35; color: var(--dim); transition: color 0.4s; }
.ic-step i { position: relative; flex: none; width: 16px; height: 16px; border-radius: 50%; border: 1.5px solid var(--line-2); transition: all 0.4s var(--ease); }
.ic-step.is-active { color: var(--text); }
.ic-step.is-active i { border-color: var(--amber); box-shadow: 0 0 0 4px rgba(255, 190, 92, 0.15); }
.ic-step.is-active i::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--amber); animation: pulse 1s infinite; }
.ic-step.is-done { color: var(--muted); }
.ic-step.is-done i { border-color: var(--mint); background: var(--mint); }
.ic-step.is-done i::after { content: ""; position: absolute; left: 4.5px; top: 1.5px; width: 4px; height: 8px; border: solid var(--bg); border-width: 0 1.8px 1.8px 0; transform: rotate(45deg); background: none; animation: none; }
.ic-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; font-size: 11.5px; color: var(--muted); }
@media (max-width: 560px) {
  .ic { padding: 12px; gap: 10px; }
  .ic-tracks { grid-template-columns: 1fr 1fr; gap: 8px; }
  .ic-track { padding: 9px; gap: 7px; }
  .ic-step { font-size: 10.5px; gap: 7px; }
  .ic-step i { width: 13px; height: 13px; }
  .ic-step.is-done i::after { left: 3.5px; top: 1px; width: 3px; height: 7px; }
  .ic-alert-txt span { font-size: 12.5px; }
  .ic-term { font-size: 10px; padding: 8px 10px; }
}
