/* Custom styling for CBT Project Platform - Fresh Light Theme */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600&display=swap');

:root {
  --font-sans: 'Plus Jakarta Sans', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --bg-main: #f8fafc;
  --text-main: #0f172a;
}

body {
  font-family: var(--font-sans);
  background-color: var(--bg-main);
  color: var(--text-main);
}

.font-mono-code {
  font-family: var(--font-mono);
}

/* Custom scrollbars for Fresh Theme */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
::-webkit-scrollbar-track {
  background: #f1f5f9;
}
::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}
::-webkit-scrollbar-thumb:hover {
  background: #94a3b8;
}

/* Fresh Glassmorphism & Card Effects */
.glass-panel {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(226, 232, 240, 0.8);
  box-shadow: 0 4px 20px -2px rgba(148, 163, 184, 0.12);
}

.glass-panel-glow {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(14, 165, 233, 0.25);
  box-shadow: 0 10px 30px -4px rgba(14, 165, 233, 0.1);
}

/* Animations */
@keyframes pulseGlow {
  0%, 100% { opacity: 0.6; transform: scale(1); }
  50% { opacity: 0.9; transform: scale(1.02); }
}

.animate-pulse-glow {
  animation: pulseGlow 4s infinite ease-in-out;
}

/* Print styling for Raport & Berkas Lengkap Pekerjaan Siswa (Ukuran Kertas A4) */
@page {
  size: A4 portrait;
  margin: 12mm 15mm 12mm 15mm;
}

@media print {
  html, body {
    background-color: #ffffff !important;
    color: #0f172a !important;
    font-size: 11pt !important;
    line-height: 1.4 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  
  .no-print, 
  header, 
  nav, 
  #loginGuardOverlay, 
  #reviewModal, 
  #settingsModal, 
  #plagiarismCompareModal, 
  #confirmModal, 
  #successModal, 
  #studentIdentityModal {
    display: none !important;
  }

  .print-only {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
  }

  /* Cegah pemotongan kartu di tengah halaman */
  .print-avoid-break, 
  .print-section-card,
  table,
  tr,
  .print-signature-block {
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .print-page-break {
    break-before: page !important;
    page-break-before: always !important;
  }

  /* Tabel cetak rapi */
  table {
    width: 100% !important;
    border-collapse: collapse !important;
  }

  th, td {
    border: 1px solid #94a3b8 !important;
  }

  /* Blok kode & prompt agar tidak terpotong */
  pre, code, .font-mono-code {
    white-space: pre-wrap !important;
    word-break: break-word !important;
    font-size: 8.5pt !important;
    line-height: 1.35 !important;
  }

  /* Gambar karya siswa */
  img {
    max-width: 100% !important;
    height: auto !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }
}
