:root { --primary: #635bff; --dark: #1a1f36; --light: #f7fafc; }
    body { font-family: -apple-system, sans-serif; margin: 0; background: var(--light); color: var(--dark); }

    .hero { background: white; padding: 40px 20px; text-align: center; border-bottom: 1px solid #eee; }

    #product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; padding: 40px; }
    .product-card { background: white; padding: 15px; border-radius: 15px; text-align: center; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
    .product-card img { max-width: 100%; height: 200px; object-fit: contain; border-radius: 10px; }
    .buy-btn { background: var(--primary); color: white; width: 100%; border: none; padding: 12px; border-radius: 8px; margin-top: 10px; cursor: pointer; }

    /* Checkout box */
    #checkout-box { display:none; max-width:400px; margin:40px auto; background:white; padding:20px; border-radius:12px; box-shadow:0 4px 15px rgba(0,0,0,0.1); }
    #checkout-box input { width:100%; padding:10px; margin-bottom:10px; border-radius:8px; border:1px solid #ccc; }
    #checkout-box button { width:100%; padding:12px; border:none; border-radius:8px; background:#635bff; color:white; font-weight:bold; cursor:pointer; }
    #checkout-error { color:red; }


/* Make images load side by side mobile app */
@media (max-width: 768px) {
  #product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 12px;
  }

  .product-card {
    padding: 10px;
  }

  .product-card img {
    height: 130px;
  }

  .product-card h3 {
    font-size: 14px;
    margin: 8px 0;
  }
}

@media (max-width: 380px) {
  #product-grid {
    grid-template-columns: 1fr;
  }
}
