/* ============================================================
   «Три расстояния между двумя клетками» — интерактив Лекции 3.
   ============================================================ */
.metric-lab {
  margin: 24px 0; border: 1px solid var(--border); border-radius: 16px;
  background: var(--panel); box-shadow: var(--shadow); overflow: hidden;
}
.metric-lab-head { padding: 16px 20px 12px; border-bottom: 1px solid var(--border); background: var(--panel-2); }
.metric-lab-head h4 { margin: 8px 0 6px; font-size: 17px; color: var(--text); }
.metric-lab-head p { margin: 0; color: var(--muted); font-size: 14px; }

.metric-lab-body { display: flex; gap: 26px; flex-wrap: wrap; align-items: center; padding: 20px; }

.metric-grid {
  display: grid; grid-template-columns: repeat(7, 32px); grid-template-rows: repeat(7, 32px);
  gap: 2px; flex: 0 0 auto;
}
.metric-cell {
  width: 32px; height: 32px; border-radius: 4px; background: var(--panel-2);
  border: 1px solid var(--border); cursor: pointer;
}
.metric-cell:hover { border-color: var(--accent); }
.metric-cell.start { background: var(--accent-2); border-color: var(--accent-2); cursor: default; }
.metric-cell.end { background: var(--accent); border-color: var(--accent); }

.metric-results { display: flex; flex-direction: column; gap: 10px; min-width: 240px; }
.metric-row {
  display: flex; justify-content: space-between; gap: 12px; padding: 8px 12px;
  border-radius: 8px; background: var(--panel-2); border: 1px solid var(--border);
}
.metric-name { font-size: 13.5px; color: var(--muted); }
.metric-row b { color: var(--accent-2); font-family: ui-monospace, Consolas, monospace; font-size: 15px; }

@media (max-width: 520px) {
  .metric-grid { grid-template-columns: repeat(7, 28px); grid-template-rows: repeat(7, 28px); }
  .metric-cell { width: 28px; height: 28px; }
}
