@import url('https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Newsreader:ital,opsz,wght@0,6..72,400;0,6..72,600;1,6..72,400&display=swap');

:root {
  --font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --font-serif: 'Newsreader', Georgia, serif;
}

body {
  font-family: var(--font-sans);
  background-color: #080C14;
  color: #E2E8F0;
  -webkit-font-smoothing: antialiased;
}

.font-serif {
  font-family: var(--font-serif);
}

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

/* Custom scrollbars */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #0B101D;
}
::-webkit-scrollbar-thumb {
  background: #1E293B;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #334155;
}

/* Pulse animation */
@keyframes pulseGlow {
  0%, 100% { opacity: 0.8; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.05); }
}

.pulse-indicator {
  animation: pulseGlow 2.4s infinite ease-in-out;
}

/* Risk gauge circle */
.gauge-circle {
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
  transition: stroke-dashoffset 0.8s ease-out;
}

/* Redline styling */
.redline-deleted {
  background-color: rgba(225, 29, 72, 0.18);
  color: #FDA4AF;
  text-decoration: line-through;
  padding: 0 4px;
  border-radius: 2px;
}

.redline-inserted {
  background-color: rgba(13, 148, 136, 0.22);
  color: #5EEAD4;
  font-weight: 500;
  padding: 0 4px;
  border-radius: 2px;
}

/* Print styles */
@media print {
  body {
    background-color: #ffffff !important;
    color: #000000 !important;
  }
  header, #workbench-controls, button, .no-print {
    display: none !important;
  }
  .print-only {
    display: block !important;
  }
}
