/**
 * BertonBronte Cart/Cache Page Styles
 */

/* Page Header */
.page-header-c7n3 {
    background: linear-gradient(135deg, var(--color-primary) 0%, #2a2a4e 100%);
    padding: var(--spacing-xxl) 0;
    text-align: center;
    color: var(--color-white);
}

.page-title-m9k2 {
    font-family: var(--font-heading);
    font-size: 3rem;
    font-weight: 500;
    margin-bottom: var(--spacing-sm);
}

.page-subtitle-p4v8 {
    font-size: 1.1rem;
    color: rgba(255,255,255,0.7);
}

/* Cart Section */
.cart-section-n8m4 {
    padding: var(--spacing-xl) 0;
}

/* Empty Cart */
.empty-cart-x7n3 {
    padding: var(--spacing-xxl) 0;
}

.empty-cart-icon-p9m4 {
    color: var(--color-border);
    margin-bottom: var(--spacing-lg);
}

.empty-cart-title-k3w8 {
    font-family: var(--font-heading);
    font-size: 1.75rem;
    color: var(--color-primary);
    margin-bottom: var(--spacing-sm);
}

.empty-cart-desc-n7p2 {
    color: var(--color-text-light);
    margin-bottom: var(--spacing-lg);
}

/* Cart Grid */
.cart-grid-p7m3 {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: var(--spacing-xl);
    align-items: start;
}

/* Cart Items Column */
.cart-items-column-x9n2 {
    background: var(--color-white);
    border-radius: var(--radius-md);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.cart-header-m8k5 {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: var(--spacing-md);
    padding: var(--spacing-md) var(--spacing-lg);
    background: var(--color-bg);
    border-bottom: 1px solid var(--color-border);
    font-size: 0.85rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: var(--color-text-light);
}

.cart-items-list-p5v7 {
    padding: var(--spacing-md) 0;
}

.cart-item-x8m3 {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: var(--spacing-md);
    align-items: center;
    padding: var(--spacing-md) var(--spacing-lg);
    border-bottom: 1px solid var(--color-border);
}

.cart-item-x8m3:last-child {
    border-bottom: none;
}

.cart-item-product-n7k4 {
    display: flex;
    gap: var(--spacing-md);
    align-items: center;
}

.cart-item-image-x9p2 {
    width: 80px;
    height: 80px;
    background: var(--color-bg);
    border-radius: var(--radius-sm);
    overflow: hidden;
    flex-shrink: 0;
}

.cart-item-image-x9p2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cart-item-placeholder-c4n7 {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #e8e4df 0%, #d4cfc8 100%);
    color: var(--color-text-light);
    font-size: 0.75rem;
}

.cart-item-info-m3p8 {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-xs);
}

.cart-item-name-x7n5 {
    font-weight: 500;
    color: var(--color-primary);
    font-size: 1rem;
}

.cart-item-remove-k2w9 {
    background: none;
    border: none;
    color: #e74c3c;
    font-size: 0.85rem;
    cursor: pointer;
    padding: 0;
    text-align: left;
    width: fit-content;
}

.cart-item-remove-k2w9:hover {
    text-decoration: underline;
}

.cart-item-price-p9c4,
.cart-item-total-b5n8 {
    font-weight: 600;
    color: var(--color-primary);
}

.cart-item-qty-x7m2 {
    display: flex;
    justify-content: center;
}

/* Cart Actions */
.cart-actions-x9m4 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-md) var(--spacing-lg);
    border-top: 1px solid var(--color-border);
    background: var(--color-bg);
}

.button-text-n7k3 {
    background: none;
    border: none;
    color: #e74c3c;
    font-size: 0.9rem;
    cursor: pointer;
    padding: 0.5rem;
}

.button-text-n7k3:hover {
    text-decoration: underline;
}

/* Cart Summary Column */
.cart-summary-column-p8n2 {
    position: sticky;
    top: 100px;
}

.cart-summary-box-x7m4 {
    background: var(--color-white);
    border-radius: var(--radius-md);
    padding: var(--spacing-lg);
    box-shadow: var(--shadow-sm);
}

.cart-summary-box-x7m4.sticky {
    position: sticky;
    top: 100px;
}

.summary-title-n9k5 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    color: var(--color-primary);
    margin-bottom: var(--spacing-lg);
    padding-bottom: var(--spacing-md);
    border-bottom: 1px solid var(--color-border);
}

.summary-items-x8m3 {
    margin-bottom: var(--spacing-lg);
}

.summary-item-p7c4 {
    display: flex;
    align-items: center;
    gap: var(--spacing-sm);
    margin-bottom: var(--spacing-sm);
    padding-bottom: var(--spacing-sm);
    border-bottom: 1px solid var(--color-border);
}

.summary-item-p7c4:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.summary-item-image-x9n2 {
    position: relative;
    width: 50px;
    height: 50px;
    background: var(--color-bg);
    border-radius: var(--radius-sm);
    overflow: hidden;
    flex-shrink: 0;
}

.summary-item-image-x9n2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.summary-item-qty-n3k8 {
    position: absolute;
    top: -5px;
    right: -5px;
    background: var(--color-secondary);
    color: var(--color-white);
    font-size: 0.7rem;
    font-weight: 600;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.summary-item-info-m8p5 {
    flex: 1;
    min-width: 0;
}

.summary-item-name-x7c3 {
    font-size: 0.9rem;
    color: var(--color-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.summary-item-price-k9n4 {
    font-weight: 600;
    color: var(--color-primary);
    font-size: 0.9rem;
}

.summary-row-p7c3 {
    display: flex;
    justify-content: space-between;
    margin-bottom: var(--spacing-sm);
    font-size: 0.95rem;
}

.summary-label-x9m2 {
    color: var(--color-text-light);
}

.summary-value-k4n8 {
    color: var(--color-text);
    font-weight: 500;
}

.shipping-progress-x8n3 {
    margin: var(--spacing-md) 0;
    padding: var(--spacing-sm);
    background: var(--color-bg);
    border-radius: var(--radius-sm);
}

.shipping-progress-text-m7p4 {
    font-size: 0.85rem;
    color: var(--color-text-light);
    margin-bottom: var(--spacing-xs);
}

.shipping-progress-bar-n9k2 {
    height: 4px;
    background: var(--color-border);
    border-radius: 2px;
    overflow: hidden;
}

.shipping-progress-fill-x4m7 {
    height: 100%;
    background: var(--color-secondary);
    transition: width var(--transition-medium);
}

.summary-row-total-x7p9 {
    display: flex;
    justify-content: space-between;
    padding-top: var(--spacing-md);
    margin-top: var(--spacing-md);
    border-top: 2px solid var(--color-border);
    font-size: 1.1rem;
}

.summary-label-total-n8k4 {
    font-weight: 600;
    color: var(--color-primary);
}

.summary-value-total-m3c6 {
    font-weight: 600;
    color: var(--color-primary);
    font-size: 1.25rem;
}

.button-checkout-large-p9n2 {
    width: 100%;
    margin-top: var(--spacing-lg);
    padding: 1rem;
    font-size: 1rem;
}

.payment-icons-x7n4 {
    display: flex;
    justify-content: center;
    gap: var(--spacing-sm);
    margin-top: var(--spacing-md);
    padding-top: var(--spacing-md);
    border-top: 1px solid var(--color-border);
}

/* Responsive */
@media (max-width: 1024px) {
    .cart-grid-p7m3 {
        grid-template-columns: 1fr;
    }
    
    .cart-summary-column-p8n2 {
        position: static;
    }
    
    .cart-summary-box-x7m4.sticky {
        position: static;
    }
}

@media (max-width: 768px) {
    .cart-header-m8k5 {
        display: none;
    }
    
    .cart-item-x8m3 {
        grid-template-columns: 1fr;
        gap: var(--spacing-sm);
    }
    
    .cart-item-price-p9c4,
    .cart-item-total-b5n8 {
        display: flex;
        justify-content: space-between;
    }
    
    .cart-item-price-p9c4::before {
        content: 'Price:';
        font-weight: normal;
        color: var(--color-text-light);
    }
    
    .cart-item-total-b5n8::before {
        content: 'Total:';
        font-weight: normal;
        color: var(--color-text-light);
    }
    
    .cart-item-qty-x7m2 {
        justify-content: flex-start;
    }
}
