.mf-shop-theme-cards {
    --mf-shop-theme-accent: #215c4a;
    --mf-shop-theme-accent-strong: #153f33;
    --mf-shop-theme-surface: #ffffff;
    --mf-shop-theme-surface-soft: #eef7f3;
    --mf-shop-theme-border: #cfe2da;
    --mf-shop-theme-text: #18372e;
    color: var(--mf-shop-theme-text);
}

.mf-shop-theme-cards .mf-shop-product-card,
.mf-shop-theme-cards.mf-cart .mf-cart-panel,
.mf-shop-theme-cards.mf-cart .mf-cart-summary-card,
.mf-shop-theme-cards.mf-checkout .mf-checkout-card,
.mf-shop-theme-cards.mf-checkout .mf-checkout-summary,
.mf-shop-theme-cards.mf-order,
.mf-shop-theme-cards.mf-product .mf-product-media,
.mf-shop-theme-cards.mf-product .mf-product-summary {
    border: 1px solid var(--mf-shop-theme-border);
    border-radius: 28px;
    background: var(--mf-shop-theme-surface);
    box-shadow: 0 20px 50px rgba(21, 63, 51, 0.12);
}

.mf-shop-theme-cards .mf-card-link,
.mf-shop-theme-cards .mf-cart-line-title,
.mf-shop-theme-cards .mf-shop-breadcrumbs a,
.mf-shop-theme-cards .mf-product-title,
.mf-shop-theme-cards .mf-product-price,
.mf-shop-theme-cards .mf-order-card strong {
    color: var(--mf-shop-theme-text);
}

.mf-shop-theme-cards .mf-shop-category-link,
.mf-shop-theme-cards .mf-shop-cart-summary-link {
    border: 1px solid var(--mf-shop-theme-border);
    border-radius: 18px;
    background: var(--mf-shop-theme-surface);
    color: var(--mf-shop-theme-text);
    box-shadow: 0 10px 24px rgba(21, 63, 51, 0.08);
}

.mf-shop-theme-cards .mf-shop-category-link:hover,
.mf-shop-theme-cards .mf-shop-category-item.is-current > .mf-shop-category-link,
.mf-shop-theme-cards .mf-shop-cart-summary-link:hover {
    border-color: var(--mf-shop-theme-accent);
    background: var(--mf-shop-theme-surface-soft);
}

.mf-shop-theme-cards .mf-shop-category-image {
    border-radius: 12px;
    background: var(--mf-shop-theme-surface-soft);
}

.mf-shop-theme-cards .mf-shop-category-description,
.mf-shop-theme-cards .mf-shop-breadcrumbs-separator,
.mf-shop-theme-cards .mf-shop-breadcrumbs [aria-current="page"] {
    color: color-mix(in srgb, var(--mf-shop-theme-text) 68%, transparent);
}

.mf-shop-theme-cards .mf-shop-cart-count {
    background: var(--mf-shop-theme-accent);
    color: #fff;
}

.mf-shop-theme-cards .mf-card-media,
.mf-shop-theme-cards .mf-product-main-media,
.mf-shop-theme-cards .mf-product-img-placeholder,
.mf-shop-theme-cards .mf-variant-chip-image {
    background: var(--mf-shop-theme-surface-soft);
}

.mf-shop-theme-cards .mf-cart-line,
.mf-shop-theme-cards .mf-payment-option,
.mf-shop-theme-cards .mf-variant-chip,
.mf-shop-theme-cards .mf-order-card,
.mf-shop-theme-cards .mf-order-bank-transfer,
.mf-shop-theme-cards .mf-order-downloads,
.mf-shop-theme-cards .mf-order-download-item,
.mf-shop-theme-cards .mf-product-price-block,
.mf-shop-theme-cards .mf-product-meta-item {
    border-color: var(--mf-shop-theme-border);
    background: var(--mf-shop-theme-surface-soft);
}

.mf-shop-theme-cards .mf-cart-btn,
.mf-shop-theme-cards .mf-btn-primary,
.mf-shop-theme-cards .mf-checkout-submit,
.mf-shop-theme-cards .mf-order-download-button,
.mf-shop-theme-cards .mf-product-button {
    background: var(--mf-shop-theme-accent);
    color: #fff;
}

.mf-shop-theme-cards .mf-alert-error {
    border: 1px solid #e7b8b3;
    background: #fff1f0;
    color: #8f1d14;
}

.mf-shop-theme-cards .mf-alert-success {
    border: 1px solid #acd8c1;
    background: #edf9f2;
    color: #12613b;
}

.mf-shop-theme-cards .mf-cart-btn:hover,
.mf-shop-theme-cards .mf-btn-primary:hover,
.mf-shop-theme-cards .mf-checkout-submit:hover,
.mf-shop-theme-cards .mf-order-download-button:hover,
.mf-shop-theme-cards .mf-product-button:hover {
    background: var(--mf-shop-theme-accent-strong);
}

.mf-shop-theme-cards .mf-variant-chip.is-selected {
    border-color: var(--mf-shop-theme-accent);
    background: #e1f1ea;
    box-shadow: 0 0 0 3px rgba(33, 92, 74, 0.15);
}

.mf-shop-theme-cards :focus-visible {
    outline: 3px solid rgba(33, 92, 74, 0.38);
    outline-offset: 3px;
}

.mf-shop-theme-cards :disabled,
.mf-shop-theme-cards [aria-disabled="true"],
.mf-shop-theme-cards .is-disabled {
    cursor: not-allowed;
    opacity: .5;
}

.mf-shop-theme-cards [aria-busy="true"] {
    cursor: progress;
    opacity: .72;
}

@media (prefers-reduced-motion: reduce) {
    .mf-shop-theme-cards *,
    .mf-shop-theme-cards *::before,
    .mf-shop-theme-cards *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}
