html.ks-side-cart-open { overflow: hidden; }
body.admin-bar .ks-side-cart,
body.admin-bar .ks-side-cart-backdrop { top: 32px; }
body.admin-bar .ks-side-cart { height: calc(100dvh - 32px); }
.ks-side-cart-backdrop { position: fixed; inset: 0; z-index: 99997; border: 0; background: rgba(7, 30, 58, .42); opacity: 0; transition: opacity .2s ease; }
.ks-side-cart-backdrop.is-open { opacity: 1; }
.ks-side-cart { position: fixed; z-index: 99998; top: 0; right: 0; display: flex; flex-direction: column; width: min(440px, 100vw); height: 100dvh; padding: 0; background: #fff; box-shadow: -12px 0 36px rgba(7, 30, 58, .18); transform: translateX(102%); transition: transform .24s ease; color: var(--ks-ink, #102f55); }
.ks-side-cart.is-open { transform: translateX(0); }
.ks-side-cart__header { display: flex; align-items: center; justify-content: space-between; min-height: 70px; padding: 16px 20px; border-bottom: 1px solid var(--ks-line, #dce5ef); }
.ks-side-cart__header h2 { margin: 0; font-size: 22px; }
.ks-side-cart__close { display: grid; place-items: center; width: 38px; height: 38px; padding: 0; border: 0; border-radius: 50%; background: #f1f5f9; color: inherit; font-size: 27px; line-height: 1; cursor: pointer; }
.ks-side-cart__contents { display: flex; flex: 1; min-height: 0; flex-direction: column; }
.ks-side-cart__items { flex: 1; min-height: 0; overflow-y: auto; padding: 4px 20px; }
.ks-side-cart-item { display: grid; grid-template-columns: 74px minmax(0, 1fr); gap: 13px; padding: 16px 0; border-bottom: 1px solid var(--ks-line, #dce5ef); }
.ks-side-cart-item__image { display: block; align-self: start; border: 1px solid var(--ks-line, #dce5ef); border-radius: 7px; overflow: hidden; background: #fff; }
.ks-side-cart-item__image img { display: block; width: 100%; height: 74px; object-fit: contain; }
.ks-side-cart-item__body { min-width: 0; }
.ks-side-cart-item__name { display: block; margin: 0 0 5px; color: inherit; font-size: 14px; font-weight: 750; line-height: 1.3; }
.ks-side-cart-item__meta { margin-bottom: 8px; color: #607289; font-size: 12px; line-height: 1.35; }
.ks-side-cart-item__meta dl { display: grid; grid-template-columns: auto 1fr; gap: 2px 5px; margin: 0; }
.ks-side-cart-item__meta dt, .ks-side-cart-item__meta dd, .ks-side-cart-item__meta p { margin: 0; }
.ks-side-cart-item__price { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 8px; font-size: 12px; }
.ks-side-cart-item__price strong { color: var(--ks-ink, #102f55); font-size: 14px; white-space: nowrap; }
.ks-side-cart-item__actions { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.ks-side-cart-item__qty { width: 66px; height: 34px; padding: 4px 8px; border: 1px solid #bccbda; border-radius: 6px; text-align: center; }
.ks-side-cart-item__remove, .ks-side-cart__continue { padding: 3px 0; border: 0; background: transparent; color: #64758a; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.ks-side-cart__summary { padding: 14px 20px; border-top: 1px solid var(--ks-line, #dce5ef); background: #f8fafc; }
.ks-side-cart__total-row, .ks-side-cart__shipping-line { display: flex; align-items: baseline; justify-content: space-between; gap: 14px; padding: 5px 0; font-size: 13px; }
.ks-side-cart__shipping { margin: 4px 0; padding: 5px 0; border-top: 1px solid #dce5ef; border-bottom: 1px solid #dce5ef; }
.ks-side-cart__shipping-lines { padding: 2px 0 4px; }
.ks-side-cart__shipping-line { align-items: flex-start; padding: 2px 0; color: #52677f; font-size: 11px; line-height: 1.3; }
.ks-side-cart__shipping-line strong { white-space: nowrap; }
.ks-side-cart__shipping.is-temporary > .ks-side-cart__total-row strong, .ks-side-cart__shipping-line.is-temporary { color: #c52222; }
.ks-side-cart__shipping-note { margin: 2px 0 4px; color: #64758a; font-size: 11px; line-height: 1.35; }
.ks-side-cart__grand { padding-top: 9px; font-size: 16px; }
.ks-side-cart__footer { display: grid; gap: 8px; padding: 14px 20px 18px; border-top: 1px solid var(--ks-line, #dce5ef); }
.ks-side-cart__checkout, .ks-side-cart__cart-page { display: flex; align-items: center; justify-content: center; min-height: 44px; border-radius: 7px; font-weight: 750; text-align: center; }
.ks-side-cart__checkout { background: var(--ks-green, #1eb875); color: #fff; }
.ks-side-cart__cart-page { border: 1px solid #bfd0df; color: var(--ks-ink, #102f55); }
.ks-side-cart__continue { justify-self: center; }
.ks-side-cart__empty { display: grid; flex: 1; place-content: center; justify-items: center; gap: 10px; padding: 30px; text-align: center; }
.ks-side-cart__status { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.ks-side-cart.is-loading .ks-side-cart__contents { opacity: .58; pointer-events: none; }
@media (max-width: 480px) {
  .ks-side-cart { width: 100vw; }
  .ks-side-cart__header { min-height: 62px; padding: 12px 15px; }
  .ks-side-cart__items, .ks-side-cart__summary, .ks-side-cart__footer { padding-left: 15px; padding-right: 15px; }
  .ks-side-cart-item { grid-template-columns: 62px minmax(0, 1fr); gap: 10px; padding: 13px 0; }
  .ks-side-cart-item__image img { height: 62px; }
}
@media (max-width: 782px) {
  body.admin-bar .ks-side-cart,
  body.admin-bar .ks-side-cart-backdrop { top: 46px; }
  body.admin-bar .ks-side-cart { height: calc(100dvh - 46px); }
}
@media (prefers-reduced-motion: reduce) { .ks-side-cart, .ks-side-cart-backdrop { transition: none; } }
.ks-side-cart__quote-required{margin:0 0 12px;padding:12px;border:1px solid #d8a248;border-radius:8px;background:#fff8e8;color:#513600}.ks-side-cart__quote-required p{margin:5px 0 0}.ks-side-cart__inquiry{background:#0b5d7a}
