/* OpenField Finance — assessment pages (includes print styles) */

.assessment-content {
  max-width: var(--reading-max);
  margin: 0 auto;
}

.assessment-content .section > h2:first-child { margin-top: 0; }

/* Question + choice styles (union of source markup vocabularies) */
.assessment-content .question {
  background: rgba(15, 23, 42, 0.5);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  padding: 16px 18px;
  margin: 14px 0;
}

.assessment-content .question h3,
.assessment-content .question-title {
  font-size: 1.02rem;
  color: var(--color-text);
  margin: 0 0 10px;
  font-weight: 600;
}

.assessment-content .question > p:first-child strong,
.assessment-content .question > strong {
  color: var(--color-text);
}

.assessment-content .options label,
.assessment-content label.choice {
  display: block;
  padding: 8px 10px;
  margin: 4px 0;
  border-radius: var(--radius-sm);
  color: var(--color-text-muted);
  cursor: pointer;
}

.assessment-content .options label:hover,
.assessment-content label.choice:hover {
  background: rgba(56, 189, 248, 0.07);
}

.assessment-content label {
  display: block;
  color: var(--color-text-muted);
  font-size: 0.95rem;
  margin-top: 8px;
}

/* Answer key */
.answer-key {
  border: 2px solid rgba(34, 197, 94, 0.5) !important;
  background: rgba(34, 197, 94, 0.07) !important;
}

.answer-key > h2 { color: var(--color-success); }

.answer, .answer-key .question {
  background: rgba(15, 23, 42, 0.45);
  border: 1px solid rgba(34, 197, 94, 0.25);
  border-radius: var(--radius-md);
  padding: 14px 16px;
  margin: 12px 0;
}

.answer strong { color: var(--color-success); }

/* Reused misc source classes */
.section-intro { color: var(--color-text-subtle); }
.subtitle { color: var(--color-text-muted); font-size: 1.05rem; }
.muted { color: var(--color-text-subtle); }
.reflection {
  background: rgba(56, 189, 248, 0.07);
  border: 1px solid rgba(56, 189, 248, 0.3);
  border-radius: var(--radius-md);
  padding: 14px 18px;
  margin: 16px 0;
}
ol.steps li { margin-bottom: 0.6em; }
table.tracker input { margin: 0; }

.takeaways { margin: 0 0 1.1em; }

/* ---------- Print styles ---------- */
@media print {
  body {
    background: #fff !important;
    color: #111827;
    font-size: 11pt;
  }

  /* Hide navigation and interactive chrome */
  .site-header,
  .site-footer nav,
  .breadcrumb,
  .skip-link,
  .assessment-actions,
  .lesson-pagination,
  .nav-toggle,
  .video-block {
    display: none !important;
  }

  .site-footer {
    border: none;
    background: none;
    padding: 12pt 0 0;
  }

  .page-hero,
  .section,
  .question,
  .card,
  .mini-card,
  .answer,
  .callout,
  .note,
  .notice,
  .reflection,
  .pill-box,
  details {
    background: #fff !important;
    color: #111827 !important;
    border-color: #d1d5db !important;
    box-shadow: none !important;
    break-inside: avoid;
  }

  h1, h2, h3, h4, p, li, td, th, label, summary,
  .eyebrow, .badge, .section-label, .subtitle, .muted, .section-intro,
  .question-title, .answer strong, .callout strong, .note strong {
    color: #111827 !important;
  }

  a { color: #111827; text-decoration: none; }

  .badge { border-color: #d1d5db; background: #fff; }

  th { background: #f3f4f6 !important; }
  th, td { border-color: #d1d5db; }

  textarea, input[type="text"], input[type="number"] {
    background: #fff;
    border: 1px solid #9ca3af;
    color: #111827;
  }

  textarea { min-height: 60pt; }

  /* Show collapsed answer keys when printing */
  details { border: 1px solid #d1d5db; }
  details > summary { display: none; }
  details > * { display: block; }

  .answer-key {
    border: 2px solid #16a34a !important;
    page-break-before: always;
  }
}
