/* ─── Ad sidebars ──────────────────────────────────────────────────────── */
.ad-placeholder {
  min-height: 250px;
  border: 2px dashed #dee2e6;
  border-radius: 8px;
  background: #f8f9fa;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  color: #adb5bd;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 12px 8px;
}
.ad-placeholder::before {
  content: 'Ad Space';
}

/* ─── Test execution ────────────────────────────────────────────────────── */
.question-card {
  display: none;
}
.question-card.active {
  display: block;
}

/* Question navigator buttons */
.nav-btn {
  width: 40px;
  height: 40px;
  font-size: 0.8rem;
  padding: 0;
  border-radius: 6px;
}
.nav-btn.unanswered  { background: #e9ecef; border: 1px solid #ced4da; color: #495057; }
.nav-btn.answered    { background: #0d6efd; border: 1px solid #0a58ca; color: #fff; }
.nav-btn.review      { background: #fd7e14; border: 1px solid #e8681c; color: #fff; }
.nav-btn.answered-review { background: #ffc107; border: 1px solid #e0a800; color: #212529; }

/* Timer */
#timer-display {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.05em;
}
#timer-display.warning { color: #dc3545; animation: pulse 1s infinite; }

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50%       { opacity: 0.4; }
}

/* History indicators */
.answer-correct   { color: #198754; font-weight: 600; }
.answer-incorrect { color: #dc3545; font-weight: 600; }
.answer-indicator { font-size: 1.1rem; }

/* Password strength meter */
#password-strength { height: 6px; border-radius: 3px; transition: width 0.3s, background 0.3s; }

/* Sidebar sticky */
.sticky-top { top: 16px; }

/* Responsive tweaks */
@media (max-width: 767px) {
  .nav-btn { width: 34px; height: 34px; font-size: 0.75rem; }
}
