/* ==========================================================================
   print.css — Aturan cetak (USM Fase 6)
   --------------------------------------------------------------------------
   Dimuat dengan media="print" dari template_admin, template_tes, dan
   template_user. Berlaku untuk halaman yang biasa dicetak lewat aplikasi:
   hasil tes, rekap laporan, analisis butir soal, berita acara.

   TIDAK menyentuh peserta_cetak_kartu_view.php — halaman itu berdiri
   sendiri (punya <html> dan <style> sendiri) dan tidak memuat tema ini.
   Tata letak kartu peserta sengaja dibiarkan apa adanya (PRD §3).

   Warna hanya dari token --cetak-* di tokens.css.
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. Yang tidak ikut tercetak
   -------------------------------------------------------------------------- */

.main-header,
.main-sidebar,
.left-side,
.main-footer,
.navbar,
.sidebar-toggle,
.content-header > .breadcrumb,
.box-tools,
.no-print,
.modal,
.modal-backdrop,
.dataTables_length,
.dataTables_filter,
.dataTables_paginate,
.dataTables_info,
.btn,
.soal-legenda,
.soal-nav {
  display: none !important;   /* menimpa display dari CSS layar */
}

/* --------------------------------------------------------------------------
   2. Kanvas
   -------------------------------------------------------------------------- */

@page {
  margin: 15mm 12mm;
}

html,
body {
  background: var(--cetak-kertas) !important;
  color: var(--cetak-tinta) !important;
  font-size: 11pt;
  line-height: 1.45;
}

.wrapper,
.content-wrapper,
.container,
.content {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-height: 0 !important;
  background: var(--cetak-kertas) !important;
}

/* AdminLTE menggeser konten ke kanan untuk memberi ruang sidebar */
.content-wrapper {
  margin-left: 0 !important;
}

/* --------------------------------------------------------------------------
   3. Judul halaman
   -------------------------------------------------------------------------- */

.content-header {
  display: block !important;   /* menimpa flex dari app.css */
  padding: 0 0 8pt !important;
  border-bottom: 1pt solid var(--cetak-tinta);
  margin-bottom: 12pt;
}

.content-header > h1 {
  font-size: 16pt;
  font-weight: 700;
  color: var(--cetak-tinta) !important;
}

.content-header > h1 > small {
  display: block;
  margin-top: 2pt;
  font-size: 10pt;
  color: var(--cetak-abu) !important;
}

/* --------------------------------------------------------------------------
   4. Kartu dijadikan blok datar
   -------------------------------------------------------------------------- */

.box {
  page-break-inside: auto;
  margin: 0 0 10pt !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: var(--cetak-kertas) !important;
}

.box > .box-header {
  padding: 0 0 4pt !important;
  border: 0 !important;
  background: var(--cetak-kertas) !important;
}

.box > .box-header .box-title {
  font-size: 12pt;
  font-weight: 700;
  color: var(--cetak-tinta) !important;
}

.box > .box-body {
  padding: 0 !important;
}

.box > .box-footer {
  display: none !important;
}

/* --------------------------------------------------------------------------
   5. Tabel — bagian terpenting saat mencetak laporan
   -------------------------------------------------------------------------- */

table {
  width: 100% !important;
  border-collapse: collapse !important;
}

.table > thead > tr > th {
  padding: 5pt 6pt !important;
  font-family: inherit !important;
  font-size: 9pt !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: var(--cetak-tinta) !important;
  background: var(--cetak-latar) !important;
  border: 0.5pt solid var(--cetak-tinta) !important;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

.table > tbody > tr > td {
  padding: 4pt 6pt !important;
  font-size: 10pt !important;
  color: var(--cetak-tinta) !important;
  border: 0.5pt solid var(--cetak-garis) !important;
}

/* Baris jangan terpotong antar halaman, dan header tabel diulang */
.table > tbody > tr {
  page-break-inside: avoid;
}

.table > thead {
  display: table-header-group;
}

/* --------------------------------------------------------------------------
   6. Elemen lain
   -------------------------------------------------------------------------- */

/* Nilai & field readonly: tanpa kotak input, cukup teksnya */
.form-control[readonly],
.form-control {
  padding: 0 !important;
  height: auto !important;
  font-size: 10pt !important;
  color: var(--cetak-tinta) !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

.control-label {
  color: var(--cetak-tinta) !important;
  font-weight: 700;
}

/* app.css dan admin.css memberi latar berwarna pada .callout dengan
   !important. print.css dimuat di <head>, sedangkan app.css di-link dari
   dalam view (body) sehingga urutannya lebih belakang — pada spesifisitas
   yang sama, app.css yang menang. Karena itu selector di sini sengaja
   dinaikkan dengan awalan `html body`. */
html body .callout,
html body .content .callout,
html body .content .callout.callout-info,
html body .content .callout.callout-warning,
html body .content .callout.callout-danger {
  padding: 6pt 8pt !important;
  border: 0.5pt solid var(--cetak-garis) !important;
  border-left: 0.5pt solid var(--cetak-garis) !important;
  border-radius: 0 !important;
  background: none !important;
  color: var(--cetak-tinta) !important;
}

.callout h4 {
  font-size: 10pt;
  color: var(--cetak-tinta) !important;
}

.label {
  padding: 0 !important;
  font-size: 9pt !important;
  font-weight: 700;
  color: var(--cetak-tinta) !important;
  background: none !important;
  border-radius: 0 !important;
}

/* Gambar pada soal jangan melebihi lebar kertas */
img {
  max-width: 100% !important;
  height: auto !important;
  page-break-inside: avoid;
}

a {
  color: var(--cetak-tinta) !important;
  text-decoration: none !important;
}

/* --------------------------------------------------------------------------
   7. Sisa tampilan layar yang tidak berguna di kertas (USM Fase 6)
   -------------------------------------------------------------------------- */

/* Panah dropdown filter: yang dicetak cukup nilai terpilihnya */
select.form-control {
  -webkit-appearance: none;
  appearance: none;
  background-image: none !important;
}

/* Ikon urut DataTables (gambar latar / ikon font) dan tombol "+" Responsive */
table.dataTable thead th,
table.dataTable tbody td {
  background-image: none !important;
}

table.dataTable thead th::after,
table.dataTable thead th::before,
table.dataTable > tbody > tr > td:first-child::before {
  display: none !important;
}

/* Kotak centang pilih-baris di tabel operator */
.table input[type="checkbox"] {
  display: none !important;
}
