* { font-family: 'Vazirmatn', sans-serif; box-sizing: border-box; }
body { margin: 0; background: #0A0B0F; }

.bg-gradient {
  background:
    radial-gradient(900px 500px at 100% 0%, rgba(34,211,238,0.08), transparent 60%),
    radial-gradient(800px 500px at 0% 100%, rgba(129,140,248,0.07), transparent 55%),
    #0A0B0F;
}

.card {
  background: linear-gradient(180deg, rgba(20,22,28,0.9), rgba(15,17,22,0.85));
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 18px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.3);
}

/* staggered entrance */
.stagger > * { animation: fadeUp 0.5s ease both; }
.stagger > *:nth-child(1) { animation-delay: 0.02s; }
.stagger > *:nth-child(2) { animation-delay: 0.06s; }
.stagger > *:nth-child(3) { animation-delay: 0.10s; }
.stagger > *:nth-child(4) { animation-delay: 0.14s; }
.stagger > *:nth-child(5) { animation-delay: 0.18s; }
.stagger > *:nth-child(6) { animation-delay: 0.22s; }
.stagger > *:nth-child(7) { animation-delay: 0.26s; }

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

input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
input[type=number] { -moz-appearance: textfield; }

::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }

input:focus, select:focus { outline: none; border-color: rgba(34,211,238,0.5); }
button { cursor: pointer; }
select option { background: #14161c; }