body { font-size: 0.95rem; }

.option-btn {
  transition: background-color 0.15s, border-color 0.15s, color 0.15s;
  white-space: normal;
  text-align: left;
  line-height: 1.4;
  padding: 0.55rem 0.85rem;
}

.option-btn:hover:not(:disabled) {
  background-color: #e9ecef;
  border-color: #0d6efd;
  color: #0d6efd;
}

.option-btn.btn-success { border-color: #198754 !important; }
.option-btn.btn-danger  { border-color: #dc3545 !important; }

#q-text { font-size: 1.05rem; line-height: 1.5; }

.progress { border-radius: 3px; }

#stats-sidebar .progress { border-radius: 2px; }

@media (min-width: 992px) {
  .fs-lg-4 { font-size: 1.5rem !important; }
}

/* Markdown help page */
.markdown-body h1 { font-size: 1.5rem; border-bottom: 2px solid #dee2e6; padding-bottom: .4rem; margin-bottom: 1rem; }
.markdown-body h2 { font-size: 1.2rem; border-bottom: 1px solid #dee2e6; padding-bottom: .3rem; margin-top: 1.8rem; margin-bottom: .8rem; }
.markdown-body h3 { font-size: 1rem; margin-top: 1.4rem; margin-bottom: .5rem; color: #495057; }
.markdown-body table { width: 100%; border-collapse: collapse; font-size: .875rem; margin-bottom: 1rem; }
.markdown-body th { background: #343a40; color: #fff; padding: .4rem .65rem; text-align: left; }
.markdown-body td { padding: .35rem .65rem; border-bottom: 1px solid #dee2e6; }
.markdown-body tr:nth-child(even) td { background: #f8f9fa; }
.markdown-body blockquote { border-left: 4px solid #0d6efd; background: #e7f1ff; padding: .5rem 1rem; margin: 1rem 0; border-radius: 0 4px 4px 0; font-size: .875rem; }
.markdown-body code { background: #f1f3f5; padding: .1em .35em; border-radius: 3px; font-size: .85em; }
.markdown-body hr { margin: 1.5rem 0; border-color: #dee2e6; }
