.cart-page{max-width:1200px;margin:0 auto;padding:var(--space-2xl) var(--space-lg)}.cart-title{font-size:var(--text-3xl);margin-bottom:var(--space-2xl)}.cart-empty{text-align:center;padding:var(--space-4xl) var(--space-xl)}.cart-empty p{margin-bottom:var(--space-lg);color:var(--color-text-secondary)}.cart-content{display:grid;grid-template-columns:1fr 350px;gap:var(--space-2xl)}@media(max-width:1024px){.cart-content{grid-template-columns:1fr 300px}}@media(max-width:768px){.cart-page{padding:var(--space-lg) var(--space-md);padding-bottom:calc(var(--space-4xl) + var(--safe-area-bottom))}.cart-title{font-size:var(--text-2xl);margin-bottom:var(--space-lg)}.cart-content{grid-template-columns:1fr;gap:var(--space-xl)}}.cart-item{display:grid;grid-template-columns:100px 1fr auto auto auto;gap:var(--space-md);align-items:center;padding:var(--space-md);border-bottom:1px solid var(--color-border);transition:opacity .3s}.cart-item.removing{opacity:.5;pointer-events:none}.cart-item__image img{width:100px;height:100px;object-fit:cover;border-radius:var(--radius-sm);background:var(--color-bg-secondary)}.cart-item__name a{color:inherit;text-decoration:none}.cart-item__name a:hover{text-decoration:underline}.cart-item__variant{font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.cart-item__price{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-secondary);margin-top:var(--space-xs)}.cart-item__price-original{text-decoration:line-through;color:var(--color-text-muted);font-size:var(--text-xs)}.cart-item__price-discounted{color:var(--color-accent);font-weight:var(--weight-medium)}.cart-item__savings{display:block;font-size:var(--text-xs);color:var(--color-success);font-family:var(--font-body);font-weight:400;margin-top:var(--space-xs)}.cart-item__quantity{width:fit-content;display:flex;align-items:center;gap:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-secondary);overflow:hidden}.qty-btn{width:44px;height:44px;min-width:44px;min-height:44px;border:none;background:transparent;color:var(--color-text-primary);cursor:pointer;font-size:var(--text-lg);display:flex;align-items:center;justify-content:center;transition:background var(--transition-fast)}.qty-btn:hover{background:var(--color-bg-hover)}.qty-btn:active{background:var(--color-bg-tertiary)}.qty-input{width:2.5ch;min-width:2ch;max-width:4ch;text-align:center;border:none;background:transparent;color:var(--color-text-primary);font-family:var(--font-mono);font-size:var(--text-base);padding:0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.qty-input::-webkit-outer-spin-button,.qty-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.qty-input:focus{outline:none}.cart-item__total{font-family:var(--font-mono);font-weight:var(--weight-medium);white-space:nowrap}.cart-item__remove{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-muted);padding:var(--space-sm);min-width:var(--touch-target-min);min-height:var(--touch-target-min);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.cart-item__remove:hover{color:var(--color-error)}@media(max-width:768px){.cart-item{display:grid;grid-template-columns:70px 1fr auto;grid-template-rows:auto auto;gap:var(--space-xs) var(--space-sm);padding:var(--space-md) 0;align-items:start}.cart-item__image{grid-row:1 / 3;grid-column:1}.cart-item__image img{width:70px;height:70px}.cart-item__details{grid-row:1;grid-column:2;min-width:0}.cart-item__name{font-size:var(--text-sm)}.cart-item__name a{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-item__quantity{grid-row:2;grid-column:2;justify-content:flex-start}.qty-btn{width:44px;height:44px;min-width:44px;min-height:44px}.cart-item__total{grid-row:1;grid-column:3;font-size:var(--text-sm);text-align:right}.cart-item__remove{grid-row:2;grid-column:3;justify-self:end;padding:var(--space-xs);min-width:32px;min-height:32px}}.cart-summary{background:var(--color-bg-secondary);padding:var(--space-xl);color:var(--color-text-primary);border-radius:var(--radius-md);border:1px solid var(--color-border);height:fit-content;position:sticky;top:calc(var(--header-height) + var(--space-lg))}.cart-summary h2{margin-bottom:var(--space-lg);font-size:var(--text-xl);font-weight:var(--weight-medium)}.cart-summary .totals__row{display:flex;justify-content:space-between;padding:var(--space-sm) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-text-secondary)}.cart-summary .totals__row--small{font-size:var(--text-xs);color:var(--color-text-muted)}.cart-summary .totals__row--discount,.discount-amount{color:var(--color-success)}.cart-summary__coupon{font-size:var(--text-sm);background:var(--color-success-bg);border-radius:var(--radius-sm);padding:var(--space-sm)!important;margin:var(--space-xs) 0;border:1px solid var(--color-success-border)!important}.coupon-label{display:flex;align-items:center;gap:var(--space-xs)}.coupon-code{background:var(--color-success);color:var(--color-accent);padding:2px 8px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);text-transform:uppercase}.remove-coupon{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:0 var(--space-xs);font-size:var(--text-lg);line-height:1;transition:color var(--transition-fast)}.remove-coupon:hover{color:var(--color-error)}.cart-summary .totals__row--total{font-weight:var(--weight-medium);font-size:var(--text-lg);border-bottom:none;color:var(--color-text-primary);padding-top:var(--space-md)}.cart-summary .totals__row--total [data-value]{font-family:var(--font-mono)}.cart-coupon-form{margin:var(--space-lg) 0}.cart-coupon-form__error{color:var(--color-error);font-size:var(--text-sm);margin-bottom:var(--space-sm)}.cart-coupon-form__error:empty{display:none}.cart-coupon-form__input-group{display:flex;gap:var(--space-sm)}.coupon-input{flex:1;min-width:0;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-bg-tertiary);color:var(--color-text-primary);font-size:var(--text-sm);min-height:var(--touch-target-min)}.cart-coupon-form .btn{white-space:nowrap;flex-shrink:0}.coupon-input:focus{outline:none;border-color:var(--color-border-light)}.coupon-input::placeholder{color:var(--color-text-muted)}.cart-checkout-btn{width:100%;margin-top:var(--space-md);padding:var(--space-md);font-size:var(--text-base);min-height:var(--touch-target-min)}@media(max-width:768px){.cart-page{padding-bottom:calc(180px + var(--safe-area-bottom))}.cart-summary{position:fixed;top:auto;bottom:0;left:0;right:0;border-radius:var(--radius-lg) var(--radius-lg) 0 0;padding:var(--space-md);padding-bottom:calc(var(--space-md) + var(--safe-area-bottom));z-index:100;max-height:60vh;overflow-y:auto;box-shadow:0 -4px 20px var(--color-overlay-light)}.cart-summary h2{font-size:var(--text-base);margin-bottom:var(--space-sm)}.cart-summary .totals__row{padding:var(--space-xs) 0;font-size:var(--text-xs)}.cart-summary .totals__row--total{font-size:var(--text-base);padding-top:var(--space-sm)}.cart-summary__coupon{padding:var(--space-xs)!important;font-size:var(--text-xs)}.coupon-code{font-size:10px;padding:2px 6px}.cart-coupon-form{margin:var(--space-sm) 0}.cart-coupon-form__input-group{gap:var(--space-xs)}.coupon-input,.cart-coupon-form .btn{padding:var(--space-xs) var(--space-sm);font-size:var(--text-xs);min-height:36px}.cart-checkout-btn{margin-top:var(--space-sm);padding:var(--space-sm);font-size:var(--text-sm);min-height:44px}.cart-alert{padding:var(--space-sm);margin:var(--space-sm) 0;font-size:var(--text-xs)}.cart-alert strong{margin-bottom:var(--space-xs);font-size:var(--text-xs)}.cart-alert p{font-size:11px}}.header-cart{position:relative;display:flex;align-items:center}.cart-alert{padding:1rem;border-radius:6px;margin:1rem 0}.cart-alert strong{display:block;margin-bottom:.5rem}.cart-alert p{margin:0;font-size:.875rem}.cart-alert--warning{background-color:var(--color-alert-warning-bg);border:1px solid var(--color-alert-warning-border);color:var(--color-alert-warning-text)}.cart-alert--info{background-color:var(--color-alert-info-bg);border:1px solid var(--color-alert-info-border);color:var(--color-alert-info-text)}.cart-checkout-btn:disabled{background-color:var(--color-disabled);cursor:not-allowed;opacity:.7}
