/* ========================================================================
   Sovereign Workforce OS — Custom Styles
   Dark sovereign theme on top of Tailwind
   ======================================================================== */

:root {
  --sovereign-purple: #a855f7;
  --sovereign-pink: #ec4899;
  --sovereign-amber: #f59e0b;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: ui-sans-serif, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue',
    Arial, sans-serif;
  font-feature-settings: 'ss01', 'cv01', 'cv11';
}

code,
pre {
  font-family: ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, 'Liberation Mono',
    monospace;
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
::-webkit-scrollbar-track {
  background: rgb(15 23 42);
}
::-webkit-scrollbar-thumb {
  background: rgb(51 65 85);
  border-radius: 5px;
}
::-webkit-scrollbar-thumb:hover {
  background: rgb(71 85 105);
}

/* Nav links */
.nav-link {
  @apply inline-flex items-center px-3 py-1.5 rounded-md text-slate-300 hover:text-white hover:bg-slate-800/60 transition;
}
.nav-link-mobile {
  @apply flex items-center gap-2 p-3 rounded-lg bg-slate-900/60 border border-slate-800 hover:border-slate-700 hover:bg-slate-800/60 transition;
}

/* Line clamp utilities */
.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Glow utilities */
.glow-purple {
  box-shadow: 0 0 40px -10px rgba(168, 85, 247, 0.4);
}
.glow-pink {
  box-shadow: 0 0 40px -10px rgba(236, 72, 153, 0.4);
}

/* Hero subtle animation */
@keyframes subtlePulse {
  0%,
  100% {
    opacity: 0.8;
  }
  50% {
    opacity: 1;
  }
}
.pulse-slow {
  animation: subtlePulse 3s ease-in-out infinite;
}

/* Print friendliness (handoff prompt) */
@media print {
  header,
  footer,
  button {
    display: none !important;
  }
  body {
    background: white !important;
    color: black !important;
  }
  pre {
    white-space: pre-wrap;
    word-break: break-word;
    background: white !important;
    color: black !important;
    border: 1px solid #ccc !important;
  }
}
