/* Custom background noise texture */
.noise-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0.02;
  z-index: 40;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
}

/* AD Placeholder Styling */
.ad-placeholder {
  @apply flex items-center justify-center bg-slate-100 dark:bg-slate-900 border border-dashed border-slate-300 dark:border-slate-700 rounded-xl font-mono text-slate-400 dark:text-slate-600 select-none;
}

/* Scrollbar */
::-webkit-scrollbar {
  width: 10px;
}
::-webkit-scrollbar-track {
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #e2e8f0;
  border-radius: 10px;
  border: 3px solid #f8fafc;
}
.dark ::-webkit-scrollbar-thumb {
  background: #334155;
  border: 3px solid #0f172a;
}

/* Animations */
@keyframes fade-in {
  from { opacity: 0; transform: translateY(-10px); }
  to { opacity: 1; transform: translateY(0); }
}
.animate-in {
  animation: fade-in 0.2s ease-out;
}

/* Typography & Dark Mode Fixes */
.dark section {
  background-color: #0f172a;
}

#prompt-preview {
  transition: background-color 0.3s;
}

/* Prevent zoom on mobile inputs */
input, textarea, select {
  font-size: 16px !important;
}
