body {
    font-family: 'Noto Sans KR', sans-serif;
    font-size: 14px;
    background-color: #f8f9fa;
  }
  
  .hero {
    border-radius: 12px;
    overflow: hidden;
    min-height: 150px;
  }
  
  .h-scroll {
    display: flex;
    overflow-x: auto;
    gap: 0.75rem;
    padding-bottom: 8px;
    scroll-snap-type: x mandatory;
  }
  
  .h-scroll::-webkit-scrollbar {
    display: none;
  }
  
  .product-card {
    flex: 0 0 auto;
    width: 150px;
    border-radius: 12px;
    background-color: white;
    border: 1px solid #ddd;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
    padding: 0.5rem;
    scroll-snap-align: start;
    cursor: pointer;
    transition: box-shadow 0.2s ease-in-out;
  }
  
  .product-card:hover {
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  }
  
  .product-img-wrap {
    width: 100%;
    height: 120px;
    overflow: hidden;
    border-radius: 8px;
    background-color: #f1f1f1;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .product-img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
  
  .product-qty-badge {
    position: absolute;
    top: -8px;
    right: -8px;
    font-size: 0.75rem;
    z-index: 10;
  }
  
  #cartPanel {
    max-width: 340px;
    border-left: 2px solid #eee;
    animation: slideIn 0.3s ease-in-out;
  }
  
  @keyframes slideIn {
    from {
      transform: translateX(100%);
      opacity: 0;
    }
    to {
      transform: translateX(0);
      opacity: 1;
    }
  }
  
  button:focus,
  input:focus {
    box-shadow: none !important;
    outline: none !important;
  }
  
  .center-one {
    justify-content: center;
  }
  
  input[type="date"],
  input[type="time"] {
    font-size: 0.9rem;
  }
  