/* Screen and paper views share the existing CEP type and color tokens. */
.cepx-workbook-body { margin: 0; background: #eef3f3; }
.cepx-workbook.cepx-shell { max-width: 900px; margin: 20px auto; overflow: visible; }
.cepx-workbook-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 0 0 20px; }
.cepx-workbook [hidden] { display: none !important; }
.cepx-workbook-page { padding: 28px; margin: 0 0 22px; border: 1px solid var(--cepx-line); border-radius: var(--cepx-radius); background: var(--cepx-surface); }
.cepx-workbook h1 { margin: 8px 0 12px; font-size: var(--cepx-fs-xl); line-height: 1.25; }
.cepx-workbook h2 { margin: 10px 0; font-size: var(--cepx-fs-lg); line-height: 1.35; }
.cepx-workbook h3 { margin: 8px 0; font-size: var(--cepx-fs-base); line-height: 1.4; }
.cepx-workbook p { margin: 8px 0; }
.cepx-workbook-question, .cepx-workbook-answer, .cepx-workbook-source { padding: 12px 0; border-top: 1px solid var(--cepx-line); break-inside: avoid; page-break-inside: avoid; }
.cepx-workbook-question ol { margin: 6px 0; padding-left: 1.8em; }
.cepx-workbook-question li { padding: 1px 0 1px 6px; }
.cepx-workbook-response, .cepx-workbook-meta { font-size: var(--cepx-fs-md); }
.cepx-workbook-source-url { display: block; overflow-wrap: anywhere; font-size: var(--cepx-fs-xs); }
.cepx-workbook-name { padding: 8px 0; font-size: var(--cepx-fs-md); }
@media (max-width: 540px) {
  .cepx-workbook-page { padding: 18px; }
  .cepx-workbook-actions .cepx-button { width: 100%; }
}
@page { size: auto; margin: 14mm; }
@media print {
  html, .cepx-workbook-body { margin: 0; background: #fff; }
  .cepx-workbook.cepx-shell { width: 100%; max-width: none; margin: 0; padding: 0; color: #000; font-size: var(--cepx-fs-md); line-height: 1.4; overflow: visible; }
  .cepx-workbook-actions, .cepx-workbook noscript { display: none !important; }
  .cepx-workbook-page { padding: 0; margin: 0; border: 0; border-radius: 0; break-before: page; page-break-before: always; }
  .cepx-workbook-page:first-of-type { break-before: auto; page-break-before: auto; }
  .cepx-workbook h1 { font-size: var(--cepx-fs-lg); }
  .cepx-workbook h2, .cepx-workbook h3 { font-size: var(--cepx-fs-md); color: #000; }
  .cepx-workbook a { color: #000; text-decoration: underline; }
  .cepx-workbook-question, .cepx-workbook-answer, .cepx-workbook-source { padding: 8px 0; }
  .cepx-workbook-question { padding: 4px 0; }
  .cepx-workbook-question h2 { margin: 5px 0; }
  .cepx-workbook-question ol { margin: 3px 0; }
  .cepx-workbook-question li { padding: 0 0 0 3px; }
  .cepx-workbook-question .cepx-workbook-response { margin: 3px 0; }
  .cepx-workbook-source { padding: 4px 0; }
  .cepx-workbook-source h3 { margin: 4px 0; }
  .cepx-workbook-source p { margin: 3px 0; }
  .cepx-workbook-references { font-size: var(--cepx-fs-sm); line-height: 1.25; }
  .cepx-workbook-source h3 { font-size: var(--cepx-fs-sm); line-height: 1.25; }
  .cepx-workbook .cepx-eyebrow { color: #000; }
  .cepx-workbook p { margin: 5px 0; }
  .cepx-workbook-response { font-size: var(--cepx-fs-sm); }
  .cepx-workbook-source-url { font-size: var(--cepx-fs-xs); }
}
