:root {
  --primary: #1A6B8A;
  --primary-dark: #0E4A63;
  --primary-light: #E3F4FA;
  --secondary: #2EAAA1;
  --accent: #F2A735;
}

.text-gradient {
  background: linear-gradient(135deg, var(--primary), var(--accent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-6px); }
}

.animate-float {
  animation: float 3s ease-in-out infinite;
}

@keyframes progress {
  from { width: 0; }
}

.animate-progress {
  animation: progress 1.2s ease-out forwards;
}

::-webkit-scrollbar {
  width: 6px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: var(--primary-light);
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--primary);
}

@media print {
  nav, footer, .no-print { display: none !important; }
  body { font-size: 12pt; color: #000; }
}