@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=JetBrains+Mono:wght@400;500;700&display=swap');
@import "tailwindcss";

@theme {
  --font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, monospace;
}

/* PRINT-SPECIFIC CSS STYLES */
@media print {
  /* Set global document printing configurations */
  html, body {
    height: auto;
    background-color: #ffffff !important;
    color: #000000 !important;
    margin: 0 !important;
    padding: 0 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  /* Hide the entire application interface */
  body * {
    visibility: hidden;
    box-shadow: none !important;
  }

  /* Expose ONLY the specific document being printed */
  #a4-document-paper, 
  #a4-document-paper * {
    visibility: visible;
  }

  /* Position the paper element synchronously at the top-left of sheet */
  #a4-document-paper {
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: 100% !important;
    min-height: 100% !important;
    border: none !important;
    box-shadow: none !important;
    margin: 0 !important;
    background: white !important;
  }

  /* Table formatting elements */
  table {
    border-collapse: collapse !important;
    width: 100% !important;
  }
  td, th {
    border-color: #666666 !important;
  }

  /* Overwrite interactive highlight styles for printed paper output */
  span[data-variable] {
    background-color: transparent !important;
    color: #000000 !important;
    border: none !important;
    padding: 0 !important;
    font-weight: inherit !important;
  }
  span[data-variable-empty] {
    background-color: transparent !important;
    color: #333333 !important;
    border: 1px dotted #333333 !important;
    padding: 2px 4px !important;
    font-weight: bold !important;
  }

  /* Page break rules for templates */
  h1, h2, h3, h4, r, tr {
    page-break-inside: avoid;
  }
}

/* Custom Webkit scrollbar for premium aesthetic */
::-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;
}
