/* =========================================================
   7STOCK LIBRARY UI — CSS FINAL COMPLETO
   ---------------------------------------------------------
   Versão consolidada com:
   - layout desktop refinado
   - grid de detalhes mais compacto
   - botão de compra mais alto na tela
   - imagem como protagonista
   - correções mobile
   - ajustes do header mobile
========================================================= */

/* =========================================================
   1. BASE DA PÁGINA
========================================================= */
body.single-biblioteca {
    background: #f6f7f9 !important;
    color: #1f2937 !important;
}

body.single-biblioteca .single-imagem-wrapper {
    align-items: flex-start !important;
    gap: 28px !important;
}

body.single-biblioteca .single-imagem-wrapper > .e-con,
body.single-biblioteca .single-imagem-wrapper > .elementor-element {
    align-self: flex-start !important;
}

body.single-biblioteca .single-imagem-wrapper .elementor-widget {
    margin-bottom: 0 !important;
}

/* =========================================================
   2. COLUNAS / PROPORÇÃO
   Imagem maior, painel lateral mais enxuto
========================================================= */
body.single-biblioteca .elementor-element-9b8c052 {
    width: 58% !important;
    max-width: 58% !important;
    flex: 0 0 58% !important;
}

body.single-biblioteca .elementor-element-53505d5 {
    width: 42% !important;
    max-width: 42% !important;
    flex: 0 0 42% !important;
}

/* =========================================================
   3. IMAGEM DE PREVIEW
========================================================= */
body.single-biblioteca .single-imagem-preview,
body.single-biblioteca .single-imagem-preview .elementor-widget-container {
    width: 100% !important;
}

body.single-biblioteca .single-imagem-preview img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.10) !important;
}

/* =========================================================
   4. TOPO DA COLUNA DIREITA
   Badge + título
========================================================= */
body.single-biblioteca .sevenstock-badge-inline {
    margin: 0 0 10px !important;
}

body.single-biblioteca .sevenstock-badge,
body.single-biblioteca .sevenstock-badge-inline .sevenstock-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    background: #0f172a !important;
    color: #ffffff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: .02em !important;
    box-shadow: none !important;
}

body.single-biblioteca .elementor-page-title h1,
body.single-biblioteca .elementor-page-title h2,
body.single-biblioteca .elementor-page-title h3,
body.single-biblioteca .elementor-page-title h4,
body.single-biblioteca .elementor-heading-title {
    margin: 0 0 12px !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    line-height: 1.22 !important;
    letter-spacing: -0.02em !important;
    color: #153e7a !important;
}

/* =========================================================
   5. BLOCO DE DETALHES
   Visual leve, sem card pesado
========================================================= */
body.single-biblioteca .sevenstock-info-card {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 0 8px !important;
    color: #111827 !important;
}

body.single-biblioteca .sevenstock-info-card__header {
    margin-bottom: 8px !important;
}

body.single-biblioteca .sevenstock-info-card__title {
    margin: 0 0 3px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    color: #0f172a !important;
}

body.single-biblioteca .sevenstock-info-card__subtitle {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #6b7280 !important;
}

/* =========================================================
   6. GRID DE DETALHES
   Linha 1: Acesso | Resolução | Entrega
   Linha 2: Formato | Tamanho | Proporção
   Versão compacta para subir o bloco de compra
========================================================= */
body.single-biblioteca .sevenstock-info-list {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px 14px !important;
    margin-top: 6px !important;
}

body.single-biblioteca .sevenstock-info-list__row {
    display: block !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    min-height: auto !important;
    box-shadow: none !important;
}

body.single-biblioteca .sevenstock-info-list__label {
    display: block !important;
    margin-bottom: 1px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    color: #6b7280 !important;
}

body.single-biblioteca .sevenstock-info-list__value {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
    font-weight: 700 !important;
    color: #111827 !important;
    text-align: left !important;
    word-break: break-word !important;
}

/* =========================================================
   7. BLOCO DE COMPRA
   Mais compacto e mais próximo do topo
========================================================= */
body.single-biblioteca .sevenstock-buy-card {
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 6px 0 0 !important;
    color: #111827 !important;
    overflow: visible !important;
}

body.single-biblioteca .sevenstock-buy-card::before,
body.single-biblioteca .sevenstock-buy-card::after {
    display: none !important;
    content: none !important;
}

body.single-biblioteca .sevenstock-buy-card__top {
    margin-bottom: 8px !important;
}

body.single-biblioteca .sevenstock-buy-card__tag {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 0 8px !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    background: #eff6ff !important;
    color: #1d4ed8 !important;
    border: 1px solid #dbeafe !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
}

body.single-biblioteca .sevenstock-buy-card__price {
    margin: 0 0 4px !important;
    font-size: 30px !important;
    line-height: 1 !important;
    font-weight: 800 !important;
    color: #0f172a !important;
}

body.single-biblioteca .sevenstock-buy-card__price .woocommerce-Price-amount,
body.single-biblioteca .sevenstock-buy-card__price .woocommerce-Price-currencySymbol {
    color: inherit !important;
}

body.single-biblioteca .sevenstock-buy-card__text {
    margin: 0 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
    color: #4b5563 !important;
    max-width: none !important;
}

/* =========================================================
   8. BOTÃO PRINCIPAL
========================================================= */
body.single-biblioteca .sevenstock-buy-card__button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 46px !important;
    margin-top: 8px !important;
    padding: 12px 16px !important;
    border-radius: 10px !important;
    background: #2563eb !important;
    border: 1px solid #2563eb !important;
    color: #ffffff !important;
    text-decoration: none !important;
    text-align: center !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    box-shadow: none !important;
    transition: background-color .2s ease, transform .2s ease, border-color .2s ease !important;
}

body.single-biblioteca .sevenstock-buy-card__button:hover {
    background: #1d4ed8 !important;
    border-color: #1d4ed8 !important;
    color: #ffffff !important;
    transform: translateY(-1px) !important;
}

body.single-biblioteca .sevenstock-buy-card__button.is-loading {
    opacity: .8 !important;
    pointer-events: none !important;
}

body.single-biblioteca .sevenstock-buy-card__button.is-added {
    background: #0f766e !important;
    border-color: #0f766e !important;
}

/* =========================================================
   9. FEEDBACK DO BOTÃO
========================================================= */
body.single-biblioteca .sevenstock-buy-card__feedback {
    display: block !important;
    min-height: 20px !important;
    margin-top: 8px !important;
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #2563eb !important;
    font-weight: 600 !important;
}

/* =========================================================
   10. BLOCO DE CONFIANÇA
========================================================= */
body.single-biblioteca .sevenstock-buy-card__trust {
    display: grid !important;
    gap: 5px !important;
    margin-top: 10px !important;
    padding-top: 10px !important;
    border-top: 1px solid #edf1f5 !important;
    text-align: left !important;
}

body.single-biblioteca .sevenstock-buy-card__trust-item {
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #374151 !important;
}

/* =========================================================
   11. AJUSTE DE ESPAÇAMENTOS DA COLUNA DIREITA
========================================================= */
body.single-biblioteca .elementor-element-53505d5 > .e-con,
body.single-biblioteca .elementor-element-53505d5 > .elementor-widget-wrap {
    gap: 0 !important;
}

body.single-biblioteca .elementor-element-ab8b2aa,
body.single-biblioteca .elementor-element-6e703b1,
body.single-biblioteca .elementor-element-f79cfea,
body.single-biblioteca .elementor-element-5a3eade,
body.single-biblioteca .elementor-element-cf4ba0e {
    margin-bottom: 0 !important;
}

/* =========================================================
   12. ÁREA ABAIXO
========================================================= */
body.single-biblioteca .biblioteca-cta-assinatura {
    margin-top: 40px !important;
}

/* =========================================================
   13. HEADER MOBILE
   Corrige altura, alinhamento e excesso de espaço
========================================================= */
@media (max-width: 767px) {
    body .elementor-location-header .e-con-inner,
    body .elementor-location-header .elementor-container,
    body .elementor-location-header .e-con {
        align-items: center !important;
    }

    body .elementor-location-header {
        padding-top: 8px !important;
        padding-bottom: 8px !important;
    }

    body .elementor-location-header .elementor-widget,
    body .elementor-location-header .elementor-element {
        margin-bottom: 0 !important;
    }

    body .elementor-location-header .e-con-inner {
        gap: 10px !important;
    }

    body .elementor-location-header img {
        max-height: 34px !important;
        width: auto !important;
    }

    body .elementor-location-header .elementor-menu-toggle {
        margin: 0 !important;
        padding: 8px !important;
        border-radius: 10px !important;
        background: #f3f4f6 !important;
    }

    body .elementor-location-header .login-header,
    body .elementor-location-header a[href*="login"] {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        white-space: nowrap !important;
    }

    body .elementor-location-header .elementor-menu-cart__toggle_button {
        min-height: 42px !important;
        padding: 8px 12px !important;
        border-radius: 10px !important;
    }

    body .elementor-location-header .elementor-menu-cart__toggle .elementor-button-text {
        font-size: 14px !important;
        font-weight: 700 !important;
    }

    body .elementor-location-header .elementor-element-03dd8b0,
    body .elementor-location-header .elementor-element-b6c4abf,
    body .elementor-location-header .elementor-element-085d0ef,
    body .elementor-location-header .elementor-element-e460cb9,
    body .elementor-location-header .elementor-element-08e9b55 {
        width: auto !important;
        flex: 0 0 auto !important;
    }

    body .elementor-location-header .e-con,
    body .elementor-location-header .e-con-full {
        min-height: auto !important;
    }

    body .elementor-location-header .elementor-widget-container {
        margin: 0 !important;
        padding: 0 !important;
    }

    body .elementor-location-header .login-header .text {
        display: none !important;
    }
}

/* =========================================================
   14. RESPONSIVO GERAL
========================================================= */
@media (max-width: 1024px) {
    body.single-biblioteca .elementor-element-9b8c052,
    body.single-biblioteca .elementor-element-53505d5 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }

    body.single-biblioteca .single-imagem-wrapper {
        gap: 20px !important;
    }

    body.single-biblioteca .elementor-page-title h1,
    body.single-biblioteca .elementor-page-title h2,
    body.single-biblioteca .elementor-page-title h3,
    body.single-biblioteca .elementor-page-title h4,
    body.single-biblioteca .elementor-heading-title {
        font-size: 24px !important;
    }
}

@media (max-width: 767px) {
    body.single-biblioteca .single-imagem-wrapper {
        gap: 16px !important;
    }

    body.single-biblioteca .single-imagem-preview img {
        border-radius: 12px !important;
    }

    body.single-biblioteca .sevenstock-info-list {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.single-biblioteca .sevenstock-buy-card__price {
        font-size: 28px !important;
    }

    body.single-biblioteca .sevenstock-buy-card__feedback {
        min-height: 22px !important;
        margin-top: 10px !important;
        font-size: 12px !important;
        text-align: left !important;
    }
}
/* ========================================
MOBILE — CORREÇÃO REAL DO HEADER
======================================== */
@media (max-width: 767px) {

    /* container principal do header */
    body .elementor-location-header .elementor-element-7d72ecd > .e-con-inner {
        display: grid !important;
        grid-template-columns: 1fr auto auto !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 10px 14px !important;
    }

    /* logo */
    body .elementor-location-header .elementor-element-03dd8b0 {
        width: auto !important;
        max-width: none !important;
        flex: unset !important;
    }

    body .elementor-location-header .elementor-element-c3a0517 img,
    body .elementor-location-header .elementor-element-c3a0517 .custom-logo,
    body .elementor-location-header .elementor-element-c3a0517 .attachment-mayosis-cart-image {
        max-height: 34px !important;
        width: auto !important;
    }

    /* menu */
    body .elementor-location-header .elementor-element-b6c4abf {
        width: auto !important;
        max-width: none !important;
        flex: unset !important;
        justify-self: end !important;
    }

    body .elementor-location-header .elementor-element-86f1cdf .elementor-menu-toggle {
        margin: 0 !important;
        padding: 8px !important;
        border-radius: 10px !important;
        background: #f3f4f6 !important;
    }

    /* bloco direita */
    body .elementor-location-header .elementor-element-085d0ef {
        width: auto !important;
        max-width: none !important;
        flex: unset !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        justify-self: end !important;
    }

    body .elementor-location-header .elementor-element-e460cb9,
    body .elementor-location-header .elementor-element-08e9b55 {
        width: auto !important;
        max-width: none !important;
        flex: unset !important;
    }

    /* entrar */
    body .elementor-location-header .login-header {
        display: inline-flex !important;
        align-items: center !important;
        gap: 6px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        white-space: nowrap !important;
    }

    body .elementor-location-header .login-header .text {
        display: none !important;
    }

    /* carrinho */
    body .elementor-location-header .elementor-menu-cart__toggle_button {
        min-height: 40px !important;
        padding: 6px 10px !important;
        border-radius: 10px !important;
    }

    body .elementor-location-header .elementor-menu-cart__toggle .elementor-button-text {
        font-size: 13px !important;
        font-weight: 700 !important;
    }

    body .elementor-location-header .elementor-button-icon-qty {
        transform: scale(0.9) !important;
    }

    /* limpa espaço exagerado */
    body .elementor-location-header .e-con,
    body .elementor-location-header .e-con-full,
    body .elementor-location-header .elementor-widget,
    body .elementor-location-header .elementor-widget-container,
    body .elementor-location-header .elementor-element {
        min-height: auto !important;
        margin-bottom: 0 !important;
    }

    /* reduz espaço entre header e conteúdo */
    body.single-biblioteca .single-imagem-wrapper {
        margin-top: 8px !important;
    }
}