.aksrt-cart-page { padding: 28px 0 56px; } .aksrt-cart-page__header, .aksrt-cart-page__panel-head, .aksrt-cart-page__summary-total, .aksrt-cart-page__coupon-row, .aksrt-cart-page__item, .aksrt-cart-page__item-qty, .aksrt-cart-page__option-columns { display: flex; } .aksrt-cart-page__header, .aksrt-cart-page__panel-head, .aksrt-cart-page__summary-total, .aksrt-cart-page__coupon-row, .aksrt-cart-page__option-columns { justify-content: space-between; gap: 16px; } .aksrt-cart-page__layout { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 24px; align-items: start; } .aksrt-cart-page__title { margin: 0 0 8px; font-size: 30px; line-height: 1.1; } .aksrt-cart-page__subtitle, .aksrt-cart-page__hint, .aksrt-cart-page__option-body span { color: var(--color-ink-3, #5d6676); } .aksrt-cart-page__pending { min-width: 280px; } .aksrt-cart-page__pending-list { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; } .aksrt-cart-page__pending-chip { border: 1px solid var(--color-line, #dde3eb); border-radius: 999px; background: var(--surface-1, #fff); padding: 8px 12px; font-size: 12px; } .aksrt-cart-page__panel { background: var(--surface-1, #fff); border: none; box-shadow: var(--shadow-sm); border-radius: var(--radius-2xl, 16px); padding: 20px; } .aksrt-cart-page__main, .aksrt-cart-page__grid { display: grid; gap: 20px; } .aksrt-cart-page__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .aksrt-cart-page__items { display: grid; gap: 12px; } .aksrt-cart-page__item { align-items: center; gap: 14px; padding: 16px; border: none; border-radius: var(--main-radius, var(--radius, 8px)); background: var(--surface-4, #f8fafc); box-shadow: var(--shadow-sm); } .aksrt-cart-page__item-image { width: 84px; height: 84px; object-fit: cover; border-radius: 12px; } .aksrt-cart-page__item-image--placeholder { display: flex; align-items: center; justify-content: center; background: var(--surface-3, #eef2f7); color: var(--color-ink-4, #8690a0); } .aksrt-cart-page__item-main { flex: 1; } .aksrt-cart-page__item-main h3, .aksrt-cart-page__mini-title, .aksrt-cart-page__panel h2 { margin: 0 0 8px; } .aksrt-cart-page__item-qty { align-items: center; gap: 10px; } .aksrt-cart-page__item-qty button, .aksrt-cart-page__item-remove { width: 34px; height: 34px; border: 1px solid var(--color-line, #dce3ec); border-radius: 10px; background: #fff; } .aksrt-cart-page__item-total { min-width: 92px; text-align: right; } .aksrt-cart-page__option-list { display: grid; gap: 12px; } .aksrt-cart-page__option-card { display: flex; gap: 10px; padding: 14px; border: 1px solid var(--color-line, #dde3eb); border-radius: var(--radius-lg); background: var(--surface-4, #fff); } .aksrt-cart-page__option-body { display: grid; gap: 4px; } .aksrt-cart-page__field { display: grid; gap: 8px; } .aksrt-cart-page__input, .aksrt-cart-page__textarea { width: 100%; border: 1px solid var(--color-line, #dce3ec); border-radius: 12px; padding: 11px 14px; background: #fff; } .aksrt-cart-page__summary-list { display: grid; gap: 12px; margin: 0 0 20px; } .aksrt-cart-page__summary-list div, .aksrt-cart-page__summary-total { align-items: center; } .aksrt-cart-page__summary-list div { display: flex; justify-content: space-between; } .aksrt-cart-page__summary-total { padding-top: 16px; margin-bottom: 18px; border-top: 1px solid var(--color-line, #e7ebf1); } .aksrt-cart-page__summary-total strong { font-size: 28px; } .aksrt-cart-page__submit { width: 100%; } .aksrt-cart-page__empty { text-align: center; padding: 44px 20px; } .aksrt-cart-page__empty i { display: block; margin-bottom: 12px; font-size: 42px; color: var(--color-ink-4, #8690a0); } @media (max-width: 980px) { .aksrt-cart-page__layout, .aksrt-cart-page__grid { grid-template-columns: 1fr; } } @media (max-width: 767px) { .aksrt-cart-page__title { font-size: 22px; } .aksrt-cart-page__option-columns { flex-direction: column; } .aksrt-cart-page__field-row { grid-template-columns: 1fr; } .aksrt-cart-page__pending { min-width: 0; } .aksrt-modal__dialog { width: 95%; max-height: 90vh; } .aksrt-modal__body { padding: 16px; } } @media (max-width: 480px) { .aksrt-cart-page__header { flex-direction: column; align-items: flex-start; } .aksrt-cart-page__summary { position: fixed; bottom: 0; left: 0; right: 0; z-index: 100; border-radius: 16px 16px 0 0; box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.1); } .aksrt-cart-page__submit { width: 100%; } } /* ── Address Card Actions ── */ .aksrt-cart-page__address-card { flex-direction: column; gap: 8px; } .aksrt-cart-page__address-label { display: flex; gap: 10px; flex: 1; cursor: pointer; } .aksrt-cart-page__address-actions { display: flex; gap: 8px; padding-left: 28px; } .aksrt-cart-page__default-tag { display: inline-block; font-size: 11px; padding: 1px 6px; border-radius: 4px; background: var(--color-primary-1, #e6f7ff); color: var(--color-primary, #1890ff); font-weight: 500; vertical-align: middle; } .aksrt-cart-page__address-empty { text-align: center; padding: 32px 16px; color: var(--color-ink-4, #8690a0); } .aksrt-cart-page__address-empty i { font-size: 28px; margin-bottom: 8px; display: block; } .aksrt-cart-page__field-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; } .aksrt-cart-page__checkbox { display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 14px; } /* ── Shared Modal ── */ .aksrt-modal { position: fixed; inset: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; } .aksrt-modal__overlay { position: absolute; inset: 0; background: rgba(18, 18, 18, 0.48); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); } .aksrt-modal__dialog { position: relative; background: var(--surface-1, #fff); border: none; border-radius: var(--radius-2xl, 16px); width: 90%; max-width: 520px; max-height: 85vh; overflow-y: auto; box-shadow: var(--shadow-drawer); } .aksrt-modal__header { display: flex; align-items: center; justify-content: space-between; padding: 18px 24px; border-bottom: 1px solid var(--color-line, #e3e8ef); } .aksrt-modal__header h3 { margin: 0; font-size: 18px; } .aksrt-modal__close { border: none; background: none; font-size: 24px; cursor: pointer; color: var(--color-ink-3, #5d6676); padding: 0; line-height: 1; } .aksrt-modal__body { padding: 20px 24px; display: grid; gap: 16px; } .aksrt-modal__footer { display: flex; justify-content: flex-end; gap: 12px; padding-top: 8px; }