

/* Global typography & smoothing */
html { scroll-behavior: smooth; }
body {
  font-family: "Inter", system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
  letter-spacing: 0.1px;
  color: #111;
}
h1,h2,h3,h4{ letter-spacing: .2px; }

/* Subtle rounded corners/shadows */
.soft-radius{ border-radius: 0.6rem; }
.card, .alert, .btn { border-radius: .6rem; }

/* Cards: hover lift micro-animation */
.card {
  transition: transform .18s ease, box-shadow .18s ease;
}
.card:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}
.card-product img {
  object-fit: contain;
  height: 170px;
  transition: transform .25s ease;
}
.card-product:hover img { transform: scale(1.03); }

/* Buttons: smooth */
.btn { transition: box-shadow .18s ease, transform .06s ease; }
.btn:active { transform: translateY(1px); }

/* Tables */
.table td, .table th { vertical-align: middle; }
.table thead th { background: #fafafa; }

/* Navbar tweaks */
.navbar .nav-link { color: var(--bs-primary); }
.navbar .nav-link:hover { color: var(--bs-link-hover-color); }

/* Badges position fix on small */
.badge{ font-weight: 600; }

/* Pagination look */
.pagination .page-link { border-radius: .5rem; }
.pagination .page-item.active .page-link {
  background: var(--bs-primary);
  border-color: var(--bs-primary);
}

/* Responsive image cells in tables */
.img-cell-70 img { height: 70px; object-fit: contain; }

/* Mobile spacing tweaks */
@media (max-width: 576px){
  .card-product img { height: 140px; }
}
