
/* =====================
   BASE
===================== */
* {
  box-sizing: border-box;
}

body {
  margin: 0;
  font-family: Arial, sans-serif;

  background-image: url("https://images.unsplash.com/photo-1501004318641-b39e6451bec6");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;

  color: #111;
}

/* =====================
   TOP BAR
===================== */
.top-bar {
  position: sticky;
  top: 0;
  background: #fff;
  padding: 10px;
  border-bottom: 1px solid #ddd;
}

.top-bar select {
  width: 100%;
  padding: 12px;
  font-size: 20px;
  font-weight: bold;
  border: 1px solid #ccc;
  border-radius: 8px;
}

/* =====================
   TOTALS
===================== */
.totals {
  display: flex;
  gap: 10px;
  padding: 10px;
  overflow-x: auto;
}

.total-card {
  min-width: 150px;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;

  padding: 12px;
  text-align: center;

  font-size: 18px;
  font-weight: bold;
}

/* =====================
   PRODUCTS
===================== */
.products {
  padding: 10px;
  padding-bottom: 160px;

  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
}

.product {
  width: 100%;
  max-width: 500px;

  background: #fff;
  border: 1px solid #ddd;
  border-radius: 10px;

  padding: 12px;

  display: flex;
  justify-content: space-between;
  align-items: center;
}

.product span {
  font-size: 18px;
}

.product button {
  min-width: 90px;     /* 🔥 makes button wider */
  padding: 10px 14px;  /* bigger tap area */
  font-size: 15px;
  font-weight: bold;

  background: #0a7cff;
  color: #fff;

  border: none;
  border-radius: 6px;

  text-align: center;
}

/* =====================
   CART (BOTTOM)
===================== */
.cart {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: #fff;

  border-top: 1px solid #ddd;
  max-height: 40%;
  overflow-y: auto;
}

/* CART ITEM */
.cart-item {
  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 10px;
  border-bottom: 1px solid #eee;

  font-size: 18px;
}

/* =====================
   QTY CONTROLS
===================== */
.controls {
  display: flex;
  align-items: center;
  gap: 8px;
}
.controls button {
  width: 48px;   /* 🔥 increased from ~38px */
  height: 42px;  /* slightly taller for balance */

  font-size: 20px;
  font-weight: bold;

  background: #eee;
  border: none;
  border-radius: 6px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.controls span {
  font-size: 18px;
  font-weight: bold;
  min-width: 20px;
  text-align: center;
}

/* =====================
   CART FOOTER
===================== */
.cart-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;

  padding: 12px;
  font-size: 20px;
  font-weight: bold;
}

/* TOTAL */
#total {
  color: #28a745;
  font-size: 26px;
  font-weight: 800;
}