
.fav-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    z-index: 100000;
    max-width: 320px;
    padding: 12px 18px;
    border-radius: 12px;
    font-family: yekanBakhSemiBold, sans-serif;
    font-size: 14px;
    color: #fff;
    background: var(--color-primary-600, #1C1917);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .18);
    opacity: 0;
    transform: translateY(12px);
    transition: opacity .3s ease, transform .3s ease;
}
.fav-toast.show { opacity: 1; transform: translateY(0); }
.fav-toast-success { background: #16a34a; }
.fav-toast-error   { background: #dc2626; }

.fav-btn.is-fav,
.fav-btn.is-fav i { color: #dc2626; }

.cart-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 999px;
    background: var(--color-primary-600, #1C1917);
    color: #fff;
    font-size: 11px;
    line-height: 1;
}

.card-offer-timer.is-over { opacity: .5; }

.rich-content { line-height: 2; color: #3f3f46; }
.rich-content h1, .rich-content h2, .rich-content h3,
.rich-content h4, .rich-content h5, .rich-content h6 {
    font-family: yekanBakhBold, sans-serif;
    color: #18181b;
    margin: 1.4em 0 .6em;
    line-height: 1.6;
}
.rich-content h1 { font-size: 1.7rem; }
.rich-content h2 { font-size: 1.45rem; }
.rich-content h3 { font-size: 1.25rem; }
.rich-content h4 { font-size: 1.1rem; }
.rich-content p { margin: 0 0 1em; }
.rich-content a { color: #2755af; text-decoration: underline; }
.rich-content ul, .rich-content ol { margin: 0 0 1em; padding-inline-start: 1.6em; }
.rich-content ul { list-style: disc; }
.rich-content ol { list-style: decimal; }
.rich-content li { margin-bottom: .4em; }
.rich-content img { max-width: 100%; height: auto; border-radius: 12px; margin: 1em 0; }
.rich-content blockquote {
    margin: 1em 0;
    padding: .8em 1.2em;
    border-inline-start: 4px solid var(--color-primary-600, #1C1917);
    background: #f4f4f5;
    border-radius: 8px;
}
.rich-content table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.rich-content th, .rich-content td { border: 1px solid #e4e4e7; padding: .6em .8em; text-align: right; }
.rich-content th { background: #f4f4f5; font-family: yekanBakhBold, sans-serif; }
.rich-content figure { margin: 1em 0; }
.rich-content figure img { margin: 0; }

.field-validation-error,
.validation-summary-errors { color: #dc2626; font-size: 12px; display: block; margin-top: 6px; }
.validation-summary-errors ul { list-style: disc; padding-inline-start: 1.4em; }
.input-validation-error { border-color: #dc2626 !important; }
