/* Custom overrides that complement Tailwind CDN */

html { scroll-behavior: smooth; }

/* Nicer form controls on dark background */
.field {
    @apply w-full rounded-lg bg-ink-800/70 border border-white/10 px-4 py-2.5 text-sm text-slate-100
           placeholder-slate-500 focus:outline-none focus:ring-2 focus:ring-brand-500/60
           focus:border-brand-500 transition;
}
.label { @apply block text-xs font-medium tracking-wide text-slate-300 mb-1.5 uppercase; }
.btn-primary {
    @apply inline-flex items-center justify-center gap-2 rounded-lg bg-brand-600 hover:bg-brand-500
           px-5 py-2.5 text-sm font-semibold text-white transition shadow-glow;
}
.btn-ghost {
    @apply inline-flex items-center justify-center gap-2 rounded-lg border border-white/10
           bg-white/5 hover:bg-white/10 px-5 py-2.5 text-sm font-medium text-slate-100 transition;
}
.card {
    @apply rounded-2xl border border-white/10 bg-ink-800/60 backdrop-blur-md p-6 md:p-8 shadow-2xl;
}

/* File input tweaks */
input[type=\"file\"]::file-selector-button {
    background: #1d4ed8; color: white; border: 0; padding: .55rem 1rem;
    border-radius: .5rem; margin-right: .75rem; font-weight: 600; cursor: pointer;
}
input[type=\"file\"]::file-selector-button:hover { background: #2563eb; }

/* Stepper */
.step-dot { @apply h-9 w-9 rounded-full flex items-center justify-center text-sm font-bold border; }
.step-active   { @apply bg-brand-600 border-brand-500 text-white shadow-glow; }
.step-done     { @apply bg-emerald-500/20 border-emerald-400 text-emerald-300; }
.step-pending  { @apply bg-ink-800 border-white/10 text-slate-400; }

/* Smooth appear */
.fade-in { animation: fadeIn .35s ease-out both; }
@keyframes fadeIn { from { opacity:0; transform: translateY(6px);} to {opacity:1; transform:none;} }