/* Preço com oferta e badge Em estoque (loja / produto) */
.price-from {
    text-decoration: line-through;
    color: #888;
    font-size: 0.9em;
    margin-right: 0.35rem;
}

.price-sale {
    color: inherit;
    font-weight: 700;
}

.badge-em-estoque {
    display: inline-block;
    margin-top: 0.35rem;
    padding: 0.2rem 0.55rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    color: #155724;
    background: #d4edda;
    border-radius: 999px;
}

.product-card .badge-em-estoque,
.popular-product-card .badge-em-estoque {
    margin-bottom: 0.25rem;
}

/* Conteúdo rich text das abas */
.product-description.ql-content h1,
.product-description.ql-content h2,
.product-description.ql-content h3,
.product-tab-content .ql-content h1,
.product-tab-content .ql-content h2,
.product-tab-content .ql-content h3 {
    margin: 0.75em 0 0.4em;
    line-height: 1.3;
}

.product-description.ql-content p,
.product-tab-content .ql-content p {
    margin: 0 0 0.65em;
}

.product-description.ql-content ul,
.product-description.ql-content ol,
.product-tab-content .ql-content ul,
.product-tab-content .ql-content ol {
    margin: 0 0 0.75em 1.25rem;
}

.quill-admin-wrap {
    margin-top: 0.35rem;
}

.quill-admin-editor {
    min-height: 140px;
    background: #fff;
}

.quill-admin-wrap .ql-toolbar.ql-snow {
    border-radius: 6px 6px 0 0;
}

.quill-admin-wrap .ql-container.ql-snow {
    border-radius: 0 0 6px 6px;
}

.filter-btn.filter-sub {
    opacity: 0.95;
    font-size: 0.9em;
}

.filter-btn.filter-sub::before {
    content: '↳ ';
    opacity: 0.7;
}
