/* ── Navigator cells — JS-rendered grid ──────────────────────────────────── */
.nav-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 6px;
  margin-bottom: var(--space-4);
}

.nav-cell {
  width: 100%;
  aspect-ratio: 1;
  border-radius: var(--radius-sm);
  font-size: var(--text-xs);
  font-family: var(--font-body);
  font-weight: 500;
  cursor: pointer;
  border: none;
  transition: all var(--transition-fast);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Empty: chưa làm */
.nav-cell--empty {
  background: var(--color-surface);
  border: 1.5px solid var(--color-border);
  color: var(--color-text-muted);
}
.nav-cell--empty:hover { border-color: var(--color-primary); }

/* Draft: đã nhập local, chưa confirm server */
.nav-cell--draft {
  background: #BBF7D0;
  color: #166534;
  border: none;
}

/* Saved: đã lưu server thành công */
.nav-cell--saved {
  background: #22C55E;
  color: #fff;
  border: none;
}

/* Bookmarked: đánh dấu xem lại — override cả saved */
.nav-cell--bookmarked {
  background: #EAB308;
  color: #fff;
  border: none;
}
.nav-cell--bookmarked.nav-cell--saved {
  /* Câu vừa trả lời vừa đánh dấu → vẫn hiện vàng (bookmark priority) */
  background: #EAB308;
}

/* Current: đang xem */
.nav-cell--current {
  outline: 2.5px solid var(--color-primary);
  outline-offset: 2px;
}

/* Responsive */
@media (max-width: 767px) {
  .nav-cell { font-size: 10px; }
}

/* ── Submit warning boxes ─────────────────────────────────────────────────── */
.submit-warning {
  padding: var(--space-3) var(--space-4);
  border-radius: var(--radius-md);
  font-size: var(--text-sm);
  margin-bottom: var(--space-3);
}
.submit-warning--warn  { background: #FEF3C7; color: var(--color-warn); }
.submit-warning--info  { background: #DBEAFE; color: #1D4ED8; }
.submit-warning--error { background: var(--color-danger-bg); color: var(--color-danger); }
