/* ============================================================
   style.css — Custom styles for PKS
   ============================================================ */

/* Smooth page transitions */
body {
  opacity: 0;
  animation: fadeIn 0.3s ease forwards;
}

@keyframes fadeIn {
  to { opacity: 1; }
}

/* Toast animation */
@keyframes slideUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

.animate-fade-in {
  animation: slideUp 0.3s ease forwards;
}

/* Prose styling */
.prose p {
  margin-bottom: 1rem;
  line-height: 1.8;
}

/* Custom scrollbar */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* Accordion arrow rotation */
.accordion-open .accordion-arrow {
  transform: rotate(180deg);
}

/* Content image responsive */
.content-image img {
  max-width: 100%;
  height: auto;
  border-radius: 12px;
}

/* Card hover effect */
.card-hover {
  transition: box-shadow 0.2s, transform 0.2s;
}
.card-hover:hover {
  box-shadow: 0 10px 30px rgba(0,0,0,0.1);
  transform: translateY(-2px);
}

/* Hero gradient */
.hero-gradient {
  background: linear-gradient(135deg, #1e3a8a 0%, #1d4ed8 50%, #3b82f6 100%);
}

/* Admin sidebar active */
.admin-nav-active {
  background: #eff6ff;
  color: #1d4ed8;
  font-weight: 600;
}

/* Tag badge hover */
.tag-badge {
  transition: background 0.15s;
}
.tag-badge:hover {
  background: #bfdbfe;
}

/* Responsive table */
@media (max-width: 640px) {
  table { font-size: 0.8rem; }
  th, td { padding: 0.5rem; }
}

/* Print styles */
@media print {
  nav, .no-print { display: none !important; }
  body { background: white; }
  .card { box-shadow: none; border: 1px solid #e2e8f0; }
}
