* { box-sizing: border-box; }
body { margin: 0; }

/* Smooth scroll for filter rows, hide scrollbars */
::-webkit-scrollbar { height: 6px; width: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(249,115,22,0.4); border-radius: 3px; }

/* Staggered page-load reveal for cards */
.grid > div {
  animation: rise 0.5s ease both;
}
@keyframes rise {
  from { opacity: 0; transform: translateY(16px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Modal entrance */
.fixed.inset-0 > div {
  animation: modalIn 0.3s cubic-bezier(0.16, 1, 0.3, 1) both;
}
@keyframes modalIn {
  from { opacity: 0; transform: translateY(30px) scale(0.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

input::placeholder { opacity: 0.5; }