/* Product list grid — theme tokens, sale accents, actions */

.product-grid-card {
    background-color: var(--theme-bg-surface, #ffffff);
}

.product-grid-img-bg {
    background-color: var(--theme-bg-subtle, #f9fafb);
}

.product-grid-fallback-inner {
    background-color: var(--theme-bg-subtle, #f3f4f6);
}

.product-grid-no-image {
    background-color: var(--theme-bg-subtle-alt, #9ca3af);
}

.product-grid-no-image-text {
    color: var(--theme-text-inverse, #f3f4f6);
}

.sale-badge-accent--danger {
    background-color: #dc3545;
}

.sale-badge-accent--warning {
    background-color: #ffc107;
}

.sale-badge-accent--success {
    background-color: #28a745;
}

.sale-badge-accent--info {
    background-color: #17a2b8;
}

.sale-price-accent--danger {
    color: #dc3545;
}

.sale-price-accent--warning {
    color: #ffc107;
}

.sale-price-accent--success {
    color: #28a745;
}

.sale-price-accent--info {
    color: #17a2b8;
}

.product-free-ship-badge {
    background-color: var(--theme-success, #22c55e);
}

.product-grid-heading-font {
    font-family: var(--theme-font-heading, 'Inter', sans-serif);
}

.product-grid-title-link {
    color: var(--theme-text-primary, #1f2937);
    transition: color 0.2s ease;
}

.product-grid-title-link:hover {
    color: var(--theme-primary, #3b82f6);
}

.product-grid-summary {
    color: var(--theme-text-secondary, #6b7280);
    font-family: var(--theme-font-body, 'Inter', sans-serif);
}

.product-grid-price-default {
    color: var(--theme-price-color, #3b82f6);
}

.product-grid-price-muted {
    color: var(--theme-text-muted, #6b7280);
}

.product-grid-btn-outline {
    border: 2px solid var(--theme-border);
    color: var(--theme-text-primary);
    background-color: var(--theme-bg-surface);
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.product-grid-btn-outline:hover {
    background-color: var(--theme-accent);
    color: var(--theme-primary-fg);
    border-color: var(--theme-accent);
}

.product-grid-btn-accent {
    border: 2px solid var(--theme-accent);
    color: var(--theme-text-primary);
    background-color: var(--theme-bg-surface);
    transition: background-color 0.2s ease, color 0.2s ease;
}

.product-grid-btn-accent:hover {
    background-color: var(--theme-accent);
    color: var(--theme-primary-fg);
}

.product-grid-empty-icon {
    color: var(--theme-text-muted, #9ca3af);
}

.product-grid-empty-title {
    color: var(--theme-text-primary, #374151);
}

.product-grid-empty-text {
    color: var(--theme-text-secondary, #6b7280);
}

.product-grid-empty-link {
    color: var(--theme-primary, #2563eb);
}
