/* ==========================================================================
   TYPECODE RPL - DOKUMENTASI (modal laporan jawaban)
   Aturan proyek untuk Dokumentasi:
     - background  : PUTIH
     - font        : HITAM
     - garis/border: HITAM, TIPIS (1px), dan KONTINU (tanpa putus-putus)
   Berlaku PAKSA (!important) di SEMUA tema - Dokumentasi tidak mengikuti
   data-theme, agar hasil unduhan (PNG/PDF) selalu konsisten seperti kertas.
   Dimuat paling akhir agar menimpa rule .doc-* .docx-* manapun.

   /*CATATAN TEKNIK:
   - Tidak ada paksaan border-width/style global - elemen tanpa garis tetap
     tanpa garis. Yang dipaksa hanya warna & ketebalan pada kelas yang memang
     menggambar garis (dikonversi dari dashed/dotted menjadi solid).
   ========================================================================== */

/* Seluruh isi dialog dokumentasi (termasuk elemen yang dibuat dinamis) */
.doc-modal-backdrop .doc-modal-dialog,
.doc-modal-backdrop .doc-modal-dialog *,
.doc-modal-backdrop .doc-scroll,
.doc-modal-backdrop .doc-scroll *,
.doc-modal-backdrop .doc-card,
.doc-modal-backdrop .doc-card * {
  background-color: #ffffff !important;
  background-image: none !important; /* gradien/tekstur aksen tema: hapus */
  color: #111111 !important;
  border-color: #000000 !important;

  /* pastikan tidak ada sisa efek dekoratif tema */
  text-shadow: none !important;
  backdrop-filter: none !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Pseudo-element dekoratif (titik jendela, aksen ::before, dll.) ikut putih */
.doc-modal-backdrop .doc-card *::before,
.doc-modal-backdrop .doc-card *::after,
.doc-modal-backdrop .doc-scroll *::before,
.doc-modal-backdrop .doc-scroll *::after {
  background-color: #ffffff !important;
  background-image: none !important;
  border-color: #000000 !important;
  box-shadow: none !important;
}

/* Ikon SVG di dalam dokumentasi mengikuti warna teks (hitam) */
.doc-modal-backdrop svg {
  color: #111111 !important;
}

/* --------------------------------------------------------------------------
   GARIS KONTINU 1px - konversi semua regar putus-putus bawaan:
     .doc-overview-meta : dashed (pemisah meta)      -> solid bottom
     .doc-score-line    : dotted (garis skor)        -> solid bottom
     .doc-output-blank  : dashed 1.5px (kotak output)-> solid penuh 1px
     .docx-note-box     : dashed (kotak catatan)     -> solid penuh 1px
   Elemen lain yang sudah 1px solid tidak tersentuh; elemen tanpa garis
   tetap tanpa garis.
   -------------------------------------------------------------------------- */

body .doc-overview-meta {
  border-bottom-style: solid !important;
  border-bottom-width: 1px !important;
}

body .doc-score-line {
  border-bottom-style: solid !important;
  border-bottom-width: 1px !important;
}

body .doc-output-blank {
  border-style: solid !important;
  border-width: 1px !important;
}

body .docx-note-box {
  border-style: solid !important;
  border-width: 1px !important;
}

/* Garis tabel & pemisah eksplisit hitam tipis */
.doc-modal-backdrop table,
.doc-modal-backdrop th,
.doc-modal-backdrop td,
.doc-modal-backdrop hr {
  border-color: #000000 !important;
}

.doc-modal-backdrop table {
  border-collapse: collapse !important;
}

/* Kotak kode pada dokumen: tetap putih dengan garis hitam */
.doc-modal-backdrop .doc-code,
.doc-modal-backdrop .doc-code *,
.doc-modal-backdrop pre,
.doc-modal-backdrop pre * {
  background-color: #ffffff !important;
  color: #111111 !important;
  border-color: #000000 !important;
}

/* Backdrop overlay gelap DIPERTAHANKAN agar dialog fokus - bukan bagian
   dari "kertas" dokumentasi. Jangan diputihkan. */

/* ==========================================================================
   HARDENING CETAK / PDF
   Saat "Cetak / PDF" (window.print), pertahankan kertas polos & garis tipis.
   ========================================================================== */

@media print {
  /* kertas dasar halaman cetak: PUTIH - jangan biarkan warna tema body
       tercetak sebagai margin/latar di sekeliling dokumen */
  html,
  body {
    background: #ffffff !important;
    color: #111111 !important;
  }

  /* cakupan berbasis ID (sejalan dengan styles.css) supaya dijamin kena
       meskipun struktur kelas modal berubah */
  #doc-modal,
  #doc-modal *,
  .doc-modal-backdrop,
  .doc-modal-backdrop .doc-modal-dialog,
  .doc-modal-backdrop .doc-modal-dialog *,
  .doc-modal-backdrop .doc-scroll,
  .doc-modal-backdrop .doc-scroll *,
  .doc-modal-backdrop .doc-card,
  .doc-modal-backdrop .doc-card * {
    background-color: #ffffff !important;
    background-image: none !important;
    color: #111111 !important;
    box-shadow: none !important;
    outline: none !important;
  }

  /* pseudo-element dekoratif ikut polos saat dicetak */
  .doc-modal-backdrop *::before,
  .doc-modal-backdrop *::after,
  #doc-modal *::before,
  #doc-modal *::after {
    background-color: #ffffff !important;
    background-image: none !important;
    border-color: #000000 !important;
    box-shadow: none !important;
  }

  /* hr default browser bergaya "inset" tebal - ratakan jadi garis hitam tipis */
  .doc-modal-backdrop hr {
    border: 0 !important;
    border-top: 1px solid #000000 !important;
    height: 0 !important;
  }

  /* rapatkan tabel - cegah garis ganda akibat border-spacing UA */
  .doc-modal-backdrop table {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
  }

  /* garis kontinu juga saat dicetak */
  body .doc-overview-meta,
  body .doc-score-line {
    border-bottom-style: solid !important;
    border-bottom-width: 1px !important;
  }
  body .doc-output-blank,
  body .docx-note-box {
    border-style: solid !important;
    border-width: 1px !important;
  }

  /* warna latar ikut tercetak konsisten (putih) */
  .doc-modal-backdrop .doc-modal-dialog,
  .doc-modal-backdrop .doc-card {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
}
