.sidebar-cart {
  position: fixed;
  top: 0;
  right: -420px;
  width: min(420px, 100%);
  height: 100vh;
  background: var(--white);
  z-index: 2000;
  box-shadow: var(--shadow);
  padding: 28px;
  transition: var(--transition);
  display: flex;
  flex-direction: column;
}

.sidebar-cart.active {
  right: 0;
}

.cart-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 25px;
}

.close-cart {
  border: none;
  background: var(--black);
  color: var(--white);
  width: 38px;
  height: 38px;
  border-radius: 50%;
  cursor: pointer;
}

.cart-items {
  flex: 1;
  overflow-y: auto;
}

.cart-item {
  padding: 16px 0;
  border-bottom: 1px solid var(--border);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 12px;
}

.cart-item h4 {
  margin-bottom: 5px;
}

.cart-item p {
  color: var(--gray);
}

.cart-item button {
  border: none;
  background: var(--beige);
  padding: 8px 10px;
  border-radius: var(--radius-sm);
  cursor: pointer;
}

.cart-total {
  border-top: 1px solid var(--border);
  padding-top: 20px;
}

.cart-total h3 {
  margin-bottom: 15px;
}

.cart-page {
  width: min(1000px, 90%);
  margin: auto;
  background: var(--white);
  padding: 40px;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow);
}

.cart-page h1 {
  margin-bottom: 25px;
}

.cart-page-total {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}