/* PodAnchor App — Custom Styles (Tailwind CDN handles utilities) */

body {
  background-color: #0a0a12;
  -webkit-font-smoothing: antialiased;
}

/* Smooth fade-in for step transitions */
.step {
  animation: fadeIn 0.2s ease-out;
}

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

/* Pack card hover ring */
.pack-card:has(input:checked) {
  border-color: #F59E0B;
  background-color: rgba(245,158,11,0.07);
}

/* Spinner */
@keyframes spin { to { transform: rotate(360deg); } }
.spinner {
  display: inline-block;
  width: 16px; height: 16px;
  border: 2px solid rgba(255,255,255,0.2);
  border-top-color: #F59E0B;
  border-radius: 50%;
  animation: spin 0.7s linear infinite;
  vertical-align: middle;
  margin-right: 6px;
}

/* Wave bars for "processing" state */
@keyframes waveBar { 0%,100% { transform: scaleY(0.3); } 50% { transform: scaleY(1); } }
.wave-bar {
  display: inline-block; width: 3px; height: 14px;
  border-radius: 2px;
  background: #F59E0B;
  animation: waveBar 1.2s ease-in-out infinite;
  margin: 0 1px;
}
.wave-bar:nth-child(1) { animation-delay: 0.0s; }
.wave-bar:nth-child(2) { animation-delay: 0.15s; }
.wave-bar:nth-child(3) { animation-delay: 0.3s; }
.wave-bar:nth-child(4) { animation-delay: 0.45s; }
.wave-bar:nth-child(5) { animation-delay: 0.6s; }

/* Monospace for API keys and RSS URLs */
.mono { font-family: 'JetBrains Mono', 'Fira Code', ui-monospace, monospace; }

/* Page content padding accounts for fixed nav */
.page-content {
  padding-top: 3.5rem; /* h-14 = 56px */
  min-height: 100vh;
}
