#soumen-cart-box {
  position: fixed;
  right: 12px;
  bottom: 12px;
  z-index: 9999;
  width: 380px;
  border: 3px solid #d8a787;
  background: #fffdf6;
  color: #000;
  font-size: 15px;
  line-height: 1.65;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
}

#soumen-cart-box.soumen-cart-collapsed {
  width: auto;
}

#soumen-cart-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 10px 12px;
  background: #f3eeda;
  border-bottom: 1px solid #d8a787;
  color: #660000;
  font-weight: bold;
  font-size: 16px;
}

#soumen-cart-toggle,
.soumen-cart-remove,
#soumen-cart-order,
#soumen-cart-clear {
  cursor: pointer;
  border: 1px solid #a86f4d;
  background: #fff;
  color: #660000;
  font-size: 14px;
}

#soumen-cart-toggle {
  min-width: 34px;
  min-height: 28px;
}

#soumen-cart-body {
  padding: 12px;
}

.soumen-cart-collapsed #soumen-cart-body {
  display: none;
}

#soumen-cart-items {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 12px;
}

#soumen-cart-items th,
#soumen-cart-items td {
  border: 1px solid #ead8bd;
  padding: 7px;
  vertical-align: top;
  font-size: 14px;
}

#soumen-cart-items th {
  background: #f3eeda;
}

#soumen-cart-empty {
  margin: 0 0 12px;
  color: #666;
}

#soumen-cart-actions {
  display: flex;
  gap: 8px;
  justify-content: flex-end;
}

#soumen-cart-actions button,
.soumen-cart-remove {
  min-height: 34px;
  padding: 6px 10px;
}

#soumen-cart-order {
  background: #660000;
  color: #fff;
  font-weight: bold;
  padding-left: 14px;
  padding-right: 14px;
}

.soumen-cart-notice {
  position: fixed;
  right: 12px;
  bottom: 420px;
  z-index: 10000;
  padding: 8px 12px;
  background: #660000;
  color: #fff;
  border: 1px solid #d8a787;
  font-size: 13px;
}

@media (max-width: 520px) {
  #soumen-cart-box {
    right: 8px;
    bottom: 8px;
    width: calc(100% - 16px);
    max-width: 380px;
  }
}

.soumen-order-add-button,
.soumen-order-remove-button {
  cursor: pointer;
  border: 1px solid #a86f4d;
  background: #fffdf6;
  color: #660000;
  font-size: 12px;
}

.soumen-order-add-button {
  padding: 4px 12px;
  font-weight: bold;
}

.soumen-order-extra-row td {
  background: #fffaf0;
}

.soumen-order-destination-label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  white-space: nowrap;
}

.soumen-order-destination {
  width: 104px;
}

.soumen-order-line-cell {
  display: flex;
  align-items: center;
  gap: 8px;
  box-sizing: border-box;
}

.soumen-order-line-cell > font {
  display: contents;
}

.soumen-order-product {
  width: 350px;
}

.soumen-order-size {
  width: 66px;
}

.soumen-order-quantity {
  width: 42px;
}

.soumen-order-line-remove {
  order: 99;
  flex: 0 0 auto;
  width: 40px;
}

.soumen-order-remove-spacer {
  order: 99;
  flex: 0 0 40px;
  width: 40px;
}

.soumen-delivery-add-button,
.soumen-delivery-remove {
  cursor: pointer;
  border: 1px solid #a86f4d;
  background: #fffdf6;
  color: #660000;
  font-size: 12px;
  margin: 6px 0;
  padding: 4px 9px;
}

.soumen-delivery-remove {
  margin-left: 8px;
}

.soumen-delivery-dynamic td {
  border-top: 1px solid #e0defe;
}

.soumen-delivery-name-row td {
  background: #e0defe;
  color: #0000a0;
}

.soumen-delivery-label {
  color: #000099;
  font-size: medium;
  font-weight: normal;
}
