/*
 * Application CSS styles
 */

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes pointPop {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  70% {
    transform: scale(1.3);
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}

.animate-fade-in {
  animation: fadeIn 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

.chart-point {
  transform-origin: center;
  transform-box: fill-box;
}

.chart-card-transition {
  animation: fadeIn 0.35s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* ===================================================
   PROFESSIONAL PRINT & PDF STYLESHEET
   =================================================== */
@media print {
  @page {
    size: A4 portrait;
    margin: 12mm 15mm 15mm 15mm;
  }

  html, body {
    background: #ffffff !important;
    color: #0f172a !important;
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
    display: block !important;
    font-size: 11pt !important;
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }

  /* Hide navigation, sidebar, topbar, interactive UI */
  aside, 
  header, 
  #toast_container, 
  .no-print, 
  button,
  form,
  .print-hide {
    display: none !important;
  }

  /* Reset main wrapper */
  main {
    padding: 0 !important;
    margin: 0 !important;
    background: #ffffff !important;
    overflow: visible !important;
    display: block !important;
    width: 100% !important;
  }

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

  .print-avoid-break {
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  /* Card styling for crisp document printing */
  .report-card {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: none !important;
    color: #0f172a !important;
    border-radius: 12px !important;
    margin-bottom: 14px !important;
  }

  .report-dark-pill {
    background: #f1f5f9 !important;
    border: 1px solid #cbd5e1 !important;
    color: #0f172a !important;
  }

  .report-text-muted {
    color: #64748b !important;
  }

  .report-text-main {
    color: #0f172a !important;
  }

  .report-highlight {
    color: #d97706 !important;
  }

  .report-success {
    color: #059669 !important;
  }

  .report-danger {
    color: #dc2626 !important;
  }

  .report-info {
    color: #0284c7 !important;
  }

  /* Progress bars printing */
  .report-progress-bg {
    background: #e2e8f0 !important;
  }
}


