/* ==========================================================================
   Miftah Islamiyat — print
   Removes site chrome; prints lesson summaries, AO1 lists, evidence boxes and
   exam questions cleanly; expands collapsed model answers; prints the URLs of
   internal links; adds the site name and disclaimer to the footer.
   ========================================================================== */

@page {
  margin: 18mm 16mm 20mm;
}

* {
  background: transparent !important;
  color: #000 !important;
  box-shadow: none !important;
}

body {
  font-size: 11pt;
  line-height: 1.5;
  background: #fff !important;
}

/* --- Hide site chrome and interactive-only elements ---------------------- */
.site-header,
.nav,
.nav-toggle,
.breadcrumbs,
.site-footer__cols,
.skip-link,
.lesson-contents,
.lesson-nav,
.lesson-complete,
.lesson__meta,
.btn,
.filters,
.a11y-panel,
.quiz-problems,
.js-print,
.js-bookmark {
  display: none !important;
}

main { padding: 0 !important; }
.wrap, .wrap--lesson, .wrap--narrow { width: 100% !important; max-width: none !important; }

/* --- Expand everything collapsed --------------------------------------- */
details { display: block !important; }
details > summary { display: none !important; }
.indicative__body,
.syllabus-connection__list,
.quiz-item__criteria > *,
.flashcard__back {
  display: block !important;
  height: auto !important;
  visibility: visible !important;
}
[hidden] { display: block !important; }
.quiz-option__feedback { display: block !important; }

/* --- Typography and page breaks ---------------------------------------- */
h1 { font-size: 20pt; }
h2 { font-size: 14pt; }
h3 { font-size: 12pt; }
h1, h2, h3, h4 { page-break-after: avoid; break-after: avoid; }
p, li, blockquote, table, figure { page-break-inside: avoid; break-inside: avoid; }

.lesson-section { page-break-inside: auto; padding-top: 10pt; }
.lesson-section + .lesson-section { border-top: 1pt solid #999; }
.lesson-section__num {
  border: 1pt solid #000 !important; color: #000 !important;
  width: 14pt; height: 14pt; font-size: 8pt;
}

/* --- Bordered blocks ---------------------------------------------------- */
.evidence,
.exam-q,
.answer-frame,
.boundary,
.callout,
.misconception,
.arabic-block,
.quiz-item,
.indicative,
.levels {
  border: 1pt solid #666 !important;
  border-radius: 0 !important;
  padding: 8pt !important;
}
.exam-q { border-width: 2pt !important; }
.exam-q__label { border: 1pt solid #000 !important; }

/* Arabic must stay legible in print */
.ar, [lang="ar"] { font-size: 15pt !important; line-height: 2 !important; }

/* --- Writing space on printed exam questions ---------------------------- */
.planner__field label { font-weight: bold; }
.planner__answer,
.planner textarea,
.quiz-item__write textarea {
  border: 1pt solid #000 !important;
  min-height: 60mm;
  display: block !important;
  width: 100% !important;
}
.planner__answer--long { min-height: 140mm; }
.planner__hint, .planner__saved { display: none !important; }

/* --- Print the URLs of internal links ----------------------------------- */
a[href^="/"]::after,
a[href^="http"]::after {
  content: " (" attr(href) ")";
  font-size: 8pt;
  color: #444 !important;
  word-break: break-all;
}
.lesson-contents a::after,
.breadcrumbs a::after,
.nav a::after { content: ""; }

/* --- Tables ------------------------------------------------------------- */
table { border: 1pt solid #666; }
th, td { border: 0.5pt solid #999; padding: 4pt 6pt; }
thead th { background: #eee !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
.table-scroll { overflow: visible !important; }
.table-scroll table { min-width: 0 !important; }

/* --- Footer on every printed page --------------------------------------- */
.site-footer {
  margin-top: 12pt; padding-top: 8pt;
  border-top: 1pt solid #666;
  font-size: 8pt;
}
.disclaimer { border: 0 !important; padding: 0 !important; }
.disclaimer p { margin-bottom: 3pt; }

/* --- Print-only helpers ------------------------------------------------- */
.print-only { display: block !important; }
.screen-only { display: none !important; }

/* Body-class variants set by the print buttons */
body.print-summary-only .lesson-section:not(#summary):not(#ao1):not(#evidence) { display: none !important; }
body.print-exam-only .lesson-section:not(#exam-question):not(#planning) { display: none !important; }
body.print-exam-only .indicative { display: none !important; }

/* Expand all syllabus coverage sections in print. */
.coverage-section > summary { display: block !important; }
.coverage-section > :not(summary) { display: block !important; }
.coverage-section { break-inside: auto; box-shadow: none !important; }
