/* =========================================================
   PALADINI — EXPERIÊNCIA MOBILE TIPO APLICATIVO
   Camada final. Não altera o desktop nem a paleta da loja.
========================================================= */

:root{
    --app-bg:#f3f6f5;
    --app-card:#ffffff;
    --app-line:#dfe7e2;
    --app-text:#0f172a;
    --app-muted:#64748b;
    --app-green:#16803b;
    --app-green-dark:#14532d;
    --app-green-soft:#ecfdf5;
    --app-danger:#b91c1c;
    --app-radius:20px;
    --app-radius-sm:14px;
    --app-shadow:0 8px 24px rgba(15,23,42,.07);
    --app-bottom-nav:66px;
}

.app-bottom-nav{display:none}

@media (max-width:768px){
    html{
        background:var(--app-bg)!important;
        scroll-behavior:smooth;
    }

    body{
        min-height:calc(var(--app-vh,1vh) * 100)!important;
        background:var(--app-bg)!important;
        color:var(--app-text)!important;
        padding-bottom:calc(var(--app-bottom-nav) + env(safe-area-inset-bottom))!important;
    }

    body,
    button,
    input,
    select,
    textarea{
        -webkit-font-smoothing:antialiased;
        text-rendering:optimizeLegibility;
    }

    .conteudo,
    .conteudo-pro{
        width:100%!important;
        max-width:100%!important;
        min-width:0!important;
        min-height:calc(100dvh - 110px)!important;
        margin:0!important;
        padding:10px 10px calc(18px + env(safe-area-inset-bottom))!important;
        overflow:visible!important;
    }

    body.home-marketplace .conteudo,
    body.home-marketplace .conteudo-pro{
        padding-left:0!important;
        padding-right:0!important;
    }

    footer.rodape,
    .rodape{
        display:none!important;
    }

    a,
    button{
        -webkit-tap-highlight-color:transparent;
        touch-action:manipulation;
    }

    a:hover,
    button:hover{
        transform:none!important;
    }

    input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    select,
    textarea{
        min-height:46px!important;
        font-size:16px!important;
        border-radius:14px!important;
    }

    textarea{min-height:96px!important}

    .btn,
    .btn-secundario,
    button[type="submit"],
    input[type="submit"]{
        min-height:44px;
    }

    .app-scroll-snap{
        scroll-snap-type:x proximity;
        overscroll-behavior-inline:contain;
        scrollbar-width:none;
    }

    .app-scroll-snap::-webkit-scrollbar{display:none}
    .app-scroll-snap>*{scroll-snap-align:start}

    /* -----------------------------------------------------
       BARRA INFERIOR DO APP
    ----------------------------------------------------- */
    .app-bottom-nav{
        position:fixed;
        left:0;
        right:0;
        bottom:0;
        z-index:99950;
        height:calc(var(--app-bottom-nav) + env(safe-area-inset-bottom));
        display:grid;
        grid-template-columns:repeat(4,minmax(0,1fr));
        align-items:start;
        padding:6px 8px calc(6px + env(safe-area-inset-bottom));
        border-top:1px solid rgba(203,213,225,.92);
        background:rgba(255,255,255,.97);
        box-shadow:0 -10px 30px rgba(15,23,42,.11);
        backdrop-filter:blur(18px);
        -webkit-backdrop-filter:blur(18px);
    }

    .app-bottom-link{
        position:relative;
        min-width:0;
        min-height:52px;
        display:flex;
        flex-direction:column;
        align-items:center;
        justify-content:center;
        gap:3px;
        padding:4px 2px;
        border-radius:14px;
        color:#64748b;
        text-decoration:none;
        font-size:9.5px;
        font-weight:850;
        line-height:1;
    }

    .app-bottom-link img{
        width:21px!important;
        height:21px!important;
        object-fit:contain!important;
        opacity:.72;
    }

    .app-bottom-link.ativo{
        color:var(--app-green-dark);
        background:var(--app-green-soft);
    }

    .app-bottom-link.ativo img{opacity:1}

    .app-bottom-icon-wrap{position:relative;display:grid;place-items:center}
    .app-bottom-icon-wrap em{
        position:absolute;
        top:-7px;
        right:-10px;
        min-width:17px;
        height:17px;
        display:grid;
        place-items:center;
        padding:0 4px;
        border:2px solid #fff;
        border-radius:999px;
        background:#16a34a;
        color:#fff;
        font-size:8px;
        font-style:normal;
        font-weight:950;
    }

    .whatsapp-flutuante{
        right:13px!important;
        bottom:calc(var(--app-bottom-nav) + 12px + env(safe-area-inset-bottom))!important;
        width:44px!important;
        height:44px!important;
        min-width:44px!important;
        min-height:44px!important;
        z-index:99955!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha,
        .pagina-confirmar-entrega,
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido,
        .pagina-atendimento-cliente
    ){
        padding-bottom:0!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha,
        .pagina-confirmar-entrega,
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido,
        .pagina-atendimento-cliente
    ) .app-bottom-nav{
        display:none!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha,
        .pagina-confirmar-entrega,
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido,
        .pagina-atendimento-cliente
    ) .whatsapp-flutuante{
        bottom:calc(13px + env(safe-area-inset-bottom))!important;
    }

    /* -----------------------------------------------------
       CABEÇALHOS, CARDS E AVISOS GENÉRICOS
    ----------------------------------------------------- */
    .pagina-topo,
    .conta-header{
        margin:0 0 10px!important;
        padding:16px!important;
        border:1px solid var(--app-line)!important;
        border-radius:var(--app-radius)!important;
        background:var(--app-card)!important;
        box-shadow:var(--app-shadow)!important;
    }

    .pagina-topo h1,
    .pagina-topo h2,
    .conta-header h1{
        margin:4px 0 5px!important;
        font-size:24px!important;
        line-height:1.08!important;
        letter-spacing:-.55px!important;
    }

    .pagina-topo p,
    .conta-header p{
        margin:0!important;
        color:var(--app-muted)!important;
        font-size:12px!important;
        line-height:1.45!important;
    }

    .box-carrinho,
    .conta-vazio{
        margin:0!important;
        padding:17px!important;
        border:1px solid var(--app-line)!important;
        border-radius:var(--app-radius)!important;
        background:var(--app-card)!important;
        box-shadow:var(--app-shadow)!important;
    }

    .mensagem,
    .alerta-erro,
    .alerta-sucesso,
    [class*="alerta"]{
        border-radius:14px!important;
    }

    /* -----------------------------------------------------
       CATÁLOGO — PÁGINA NATIVA DE PRODUTOS
    ----------------------------------------------------- */
    body.pagina-produtos .conteudo{
        padding-top:8px!important;
    }

    body.pagina-produtos .catalogo-hero{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:14px!important;
        margin:0 0 10px!important;
        padding:17px!important;
        border:1px solid var(--app-line)!important;
        border-radius:21px!important;
        background:linear-gradient(135deg,#fff 0%,#f7fbf8 68%,#eaf8ef 100%)!important;
        box-shadow:var(--app-shadow)!important;
    }

    body.pagina-produtos .catalogo-hero h1{
        margin:6px 0!important;
        max-width:none!important;
        font-size:25px!important;
        line-height:1.08!important;
        letter-spacing:-.7px!important;
    }

    body.pagina-produtos .catalogo-hero p:not(.mini-destaque){
        margin:0!important;
        font-size:12px!important;
        line-height:1.5!important;
    }

    body.pagina-produtos .catalogo-resumo{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
    }

    body.pagina-produtos .catalogo-resumo>div{
        min-width:0!important;
        padding:12px!important;
        border:1px solid #dfe7e2!important;
        border-radius:15px!important;
        background:rgba(255,255,255,.9)!important;
    }

    body.pagina-produtos .catalogo-resumo strong{
        font-size:22px!important;
    }

    body.pagina-produtos .catalogo-resumo span{
        margin-top:4px!important;
        font-size:8.5px!important;
    }

    body.pagina-produtos .catalogo-toolbar{
        display:block!important;
        margin:0 0 10px!important;
        padding:10px!important;
        border:1px solid var(--app-line)!important;
        border-radius:18px!important;
        background:#fff!important;
        box-shadow:0 6px 18px rgba(15,23,42,.045)!important;
    }

    body.pagina-produtos .catalogo-busca{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        gap:8px!important;
        width:100%!important;
    }

    body.pagina-produtos .campo-busca-produtos{
        grid-column:1/-1!important;
        min-height:46px!important;
        border-radius:14px!important;
    }

    body.pagina-produtos .catalogo-busca select{
        min-width:0!important;
        width:100%!important;
        margin:0!important;
    }

    body.pagina-produtos .catalogo-busca .btn{
        min-width:82px!important;
        margin:0!important;
        padding:0 13px!important;
    }

    body.pagina-produtos .catalogo-busca .btn-secundario{
        grid-column:1/-1!important;
        min-height:36px!important;
        padding:0 12px!important;
        justify-self:start!important;
    }

    body.pagina-produtos .catalogo-resultados{
        margin-top:9px!important;
        padding-top:9px!important;
        border-top:1px solid #edf2ef!important;
    }

    body.pagina-produtos .catalogo-intuicao{
        min-height:0!important;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        gap:10px!important;
        margin:0 0 10px!important;
        padding:12px!important;
        border-radius:16px!important;
    }

    body.pagina-produtos .catalogo-intuicao span{
        display:none!important;
    }

    body.pagina-produtos .catalogo-intuicao strong{
        font-size:12px!important;
    }

    body.pagina-produtos .catalogo-intuicao a{
        flex:0 0 auto!important;
        min-height:35px!important;
        display:flex!important;
        align-items:center!important;
        padding:0 10px!important;
        border-radius:11px!important;
        font-size:10px!important;
    }

    body.pagina-produtos .catalogo-layout{
        display:block!important;
        margin:0!important;
    }

    body.pagina-produtos .catalogo-sidebar{
        display:none!important;
    }

    body.pagina-produtos .chips-categorias-mobile{
        display:flex!important;
        gap:7px!important;
        width:calc(100% + 20px)!important;
        margin:0 -10px 10px!important;
        padding:2px 10px 8px!important;
        overflow-x:auto!important;
        white-space:nowrap!important;
    }

    body.pagina-produtos .chips-categorias-mobile a{
        flex:0 0 auto!important;
        min-height:36px!important;
        display:flex!important;
        align-items:center!important;
        padding:0 12px!important;
        border:1px solid #dfe7e2!important;
        border-radius:999px!important;
        background:#fff!important;
        color:#475569!important;
        font-size:10.5px!important;
        font-weight:850!important;
        text-decoration:none!important;
    }

    body.pagina-produtos .chips-categorias-mobile a.ativo{
        border-color:var(--app-green-dark)!important;
        background:var(--app-green-dark)!important;
        color:#fff!important;
    }

    body.pagina-produtos .grid-catalogo-premium{
        display:grid!important;
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
        margin:0!important;
    }

    body.pagina-produtos .card-produto-catalogo{
        min-width:0!important;
        display:flex!important;
        flex-direction:column!important;
        overflow:hidden!important;
        border:1px solid #e2e8f0!important;
        border-radius:16px!important;
        background:#fff!important;
        box-shadow:0 5px 16px rgba(15,23,42,.055)!important;
    }

    body.pagina-produtos .card-imagem-catalogo{
        height:auto!important;
        min-height:0!important;
        aspect-ratio:1/1!important;
        padding:8px!important;
        background:#f8fafc!important;
    }

    body.pagina-produtos .card-imagem-catalogo img{
        width:100%!important;
        height:100%!important;
        object-fit:contain!important;
    }

    body.pagina-produtos .card-conteudo-catalogo{
        flex:1!important;
        display:flex!important;
        flex-direction:column!important;
        padding:9px!important;
    }

    body.pagina-produtos .linha-categoria-card{
        display:block!important;
    }

    body.pagina-produtos .status-disponivel-card,
    body.pagina-produtos .descricao-card-produto{
        display:none!important;
    }

    body.pagina-produtos .card-produto-catalogo h3{
        min-height:34px!important;
        margin:3px 0 7px!important;
        font-size:11.5px!important;
        line-height:1.35!important;
        display:-webkit-box!important;
        -webkit-box-orient:vertical!important;
        -webkit-line-clamp:2!important;
        overflow:hidden!important;
    }

    body.pagina-produtos .preco-area-catalogo,
    body.pagina-produtos .preco-catalogo{
        margin-top:auto!important;
    }

    body.pagina-produtos .card-produto-catalogo .preco{
        font-size:16px!important;
    }

    body.pagina-produtos .acoes-card-produto{
        display:block!important;
        margin-top:7px!important;
    }

    body.pagina-produtos .btn-ver-produto{
        width:100%!important;
        min-height:36px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        padding:0 8px!important;
        border-radius:11px!important;
        font-size:10px!important;
    }

    body.pagina-produtos .btn-card-secundario{
        display:none!important;
    }

    body.pagina-produtos .catalogo-paginacao{
        width:100%!important;
        flex-wrap:nowrap!important;
        justify-content:flex-start!important;
        overflow-x:auto!important;
        padding:4px 0 10px!important;
    }

    /* -----------------------------------------------------
       PRODUTO — DETALHE COM FLUXO DE COMPRA MOBILE
    ----------------------------------------------------- */
    body.pagina-produto .produto-vitrine-page{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-produto .produto-vitrine-breadcrumb{
        width:100%!important;
        margin:0 0 8px!important;
        padding:0 3px!important;
        overflow-x:auto!important;
        white-space:nowrap!important;
        font-size:10px!important;
    }

    body.pagina-produto .produto-vitrine-hero{
        display:block!important;
        margin:0!important;
        padding:0!important;
        border:1px solid var(--app-line)!important;
        border-radius:22px!important;
        background:#fff!important;
        box-shadow:var(--app-shadow)!important;
        overflow:hidden!important;
    }

    body.pagina-produto .produto-vitrine-galeria{
        padding:10px!important;
    }

    body.pagina-produto .produto-vitrine-imagem-card{
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        aspect-ratio:1/1!important;
        border-radius:17px!important;
        background:#f8fafc!important;
    }

    body.pagina-produto .produto-vitrine-imagem-principal{
        width:100%!important;
        height:100%!important;
        max-height:330px!important;
        object-fit:contain!important;
        padding:14px!important;
    }

    body.pagina-produto .produto-vitrine-zoom-abrir{
        min-height:34px!important;
        padding:0 10px!important;
        font-size:9px!important;
    }

    body.pagina-produto .produto-vitrine-info{
        padding:15px!important;
    }

    body.pagina-produto .produto-vitrine-info h1{
        margin:7px 0 10px!important;
        font-size:23px!important;
        line-height:1.12!important;
        letter-spacing:-.55px!important;
    }

    body.pagina-produto .produto-vitrine-selos{
        display:flex!important;
        gap:7px!important;
        width:calc(100% + 30px)!important;
        margin:0 -15px 12px!important;
        padding:0 15px 5px!important;
        overflow-x:auto!important;
        white-space:nowrap!important;
    }

    body.pagina-produto .produto-vitrine-selos>span{
        flex:0 0 auto!important;
        min-height:34px!important;
        padding:0 10px!important;
        font-size:9px!important;
    }

    body.pagina-produto .produto-vitrine-descricao{
        margin:0 0 12px!important;
        font-size:12px!important;
        line-height:1.55!important;
    }

    body.pagina-produto .produto-vitrine-compra-card{
        margin:0!important;
        padding:14px!important;
        border-radius:18px!important;
        box-shadow:none!important;
    }

    body.pagina-produto .produto-vitrine-preco-area>strong,
    body.pagina-produto .produto-vitrine-preco-promocao>strong{
        font-size:27px!important;
    }

    body.pagina-produto .produto-vitrine-estoque{
        padding:11px!important;
        border-radius:14px!important;
    }

    body.pagina-produto .produto-vitrine-quantidade-linha{
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        gap:12px!important;
    }

    body.pagina-produto .produto-vitrine-quantidade{
        flex:0 0 auto!important;
    }

    body.pagina-produto .produto-vitrine-btn-comprar,
    body.pagina-produto .produto-vitrine-whatsapp{
        width:100%!important;
        min-height:46px!important;
        border-radius:14px!important;
    }

    body.pagina-produto .produto-vitrine-beneficios{
        display:flex!important;
        gap:9px!important;
        width:calc(100% + 20px)!important;
        margin:12px -10px 0!important;
        padding:0 10px 8px!important;
        overflow-x:auto!important;
    }

    body.pagina-produto .produto-vitrine-beneficios article{
        flex:0 0 78vw!important;
        max-width:310px!important;
        min-height:130px!important;
        padding:15px!important;
        border-radius:18px!important;
    }

    body.pagina-produto .produto-vitrine-info-extra{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:9px!important;
        margin-top:10px!important;
    }

    body.pagina-produto .produto-vitrine-info-extra>div{
        padding:16px!important;
        border-radius:18px!important;
    }

    body.pagina-produto .produto-relacionados-section{
        margin-top:12px!important;
        padding:15px!important;
        border-radius:20px!important;
    }

    body.pagina-produto .produto-relacionados-topo{
        display:block!important;
    }

    body.pagina-produto .produto-relacionados-ver-todos{
        display:inline-flex!important;
        margin-top:8px!important;
    }

    body.pagina-produto .produto-relacionados-trilho{
        display:flex!important;
        gap:9px!important;
        overflow-x:auto!important;
        padding:8px 1px!important;
    }

    body.pagina-produto .produto-relacionado-card{
        flex:0 0 72vw!important;
        max-width:280px!important;
    }

    body.pagina-produto .produto-zoom-conteudo{
        width:100vw!important;
        height:100dvh!important;
        max-width:none!important;
        max-height:none!important;
        border-radius:0!important;
    }

    /* -----------------------------------------------------
       CARRINHO — CARDS E RESUMO DE COMPRA
    ----------------------------------------------------- */
    body.pagina-carrinho .carrinho-page-v2{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-carrinho .carrinho-topo-v2{
        display:block!important;
        margin:0 0 10px!important;
        padding:16px!important;
        border-radius:20px!important;
    }

    body.pagina-carrinho .carrinho-topo-texto-v2 h1{
        font-size:25px!important;
    }

    body.pagina-carrinho .carrinho-topo-texto-v2 p{
        font-size:12px!important;
        line-height:1.45!important;
    }

    body.pagina-carrinho .carrinho-topo-status-v2{
        width:100%!important;
        min-width:0!important;
        margin-top:12px!important;
        padding:11px!important;
        border-radius:15px!important;
    }

    body.pagina-carrinho .carrinho-status-icone-v2{
        width:42px!important;
        height:42px!important;
        border-radius:13px!important;
    }

    body.pagina-carrinho .carrinho-topo-status-v2 strong{
        font-size:24px!important;
    }

    body.pagina-carrinho .carrinho-layout-v2{
        display:flex!important;
        flex-direction:column!important;
        gap:10px!important;
    }

    body.pagina-carrinho .carrinho-lista-card-v2,
    body.pagina-carrinho .carrinho-resumo-card-v2{
        padding:12px!important;
        border-radius:20px!important;
    }

    body.pagina-carrinho .carrinho-card-header-v2{
        display:block!important;
        margin-bottom:11px!important;
    }

    body.pagina-carrinho .carrinho-card-header-v2 .btn-carrinho-secundario-v2{
        width:100%!important;
        margin-top:9px!important;
    }

    body.pagina-carrinho .carrinho-item-v2{
        grid-template-columns:72px minmax(0,1fr)!important;
        grid-template-areas:
            "imagem info"
            "quantidade subtotal"
            "remover remover"!important;
        gap:10px!important;
        padding:11px!important;
        border-radius:17px!important;
    }

    body.pagina-carrinho .carrinho-item-imagem-v2{
        grid-area:imagem!important;
        width:72px!important;
        height:72px!important;
        border-radius:14px!important;
    }

    body.pagina-carrinho .carrinho-item-info-v2{grid-area:info!important}
    body.pagina-carrinho .carrinho-quantidade-v2{grid-area:quantidade!important;text-align:left!important}
    body.pagina-carrinho .carrinho-subtotal-v2{grid-area:subtotal!important;text-align:right!important}
    body.pagina-carrinho .carrinho-remover-v2{grid-area:remover!important}

    body.pagina-carrinho .carrinho-item-info-v2 h3{
        margin-bottom:6px!important;
        font-size:13px!important;
    }

    body.pagina-carrinho .carrinho-item-dados-v2{
        display:none!important;
    }

    body.pagina-carrinho .carrinho-quantidade-v2 strong{
        min-width:35px!important;
        height:35px!important;
        border-radius:11px!important;
    }

    body.pagina-carrinho .carrinho-remover-v2{
        min-height:37px!important;
        justify-content:center!important;
        border-radius:11px!important;
    }

    body.pagina-carrinho .carrinho-resumo-v2{
        position:static!important;
    }

    body.pagina-carrinho .carrinho-total-v2{
        padding:13px!important;
        border-radius:15px!important;
    }

    body.pagina-carrinho .carrinho-total-v2 strong{
        font-size:22px!important;
    }

    body.pagina-carrinho .carrinho-ajuda-v2{
        margin-top:10px!important;
        padding:13px!important;
        border-radius:18px!important;
    }

    body.pagina-carrinho .carrinho-ajuda-v2>div:first-child{
        flex:0 0 42px!important;
        width:42px!important;
        height:42px!important;
        border-radius:13px!important;
    }

    body.pagina-carrinho .carrinho-ajuda-v2 p{
        display:none!important;
    }

    body.pagina-carrinho .carrinho-garantias-v2{
        margin-top:9px!important;
        padding:13px!important;
        border-radius:18px!important;
    }

    body.pagina-carrinho .carrinho-vazio-v2{
        min-height:52vh!important;
        padding:25px 18px!important;
        border-radius:22px!important;
    }

    body.pagina-carrinho .carrinho-vazio-acoes-v2{
        display:grid!important;
        grid-template-columns:1fr!important;
        width:100%!important;
    }

    /* -----------------------------------------------------
       CHECKOUT E ENDEREÇOS
    ----------------------------------------------------- */
    body.pagina-confirmar-entrega .conteudo{
        padding:8px 10px 18px!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-page{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-hero{
        display:block!important;
        margin:0 0 10px!important;
        padding:15px!important;
        border-radius:20px!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-icone{
        width:44px!important;
        height:44px!important;
        margin-bottom:9px!important;
        border-radius:13px!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-hero h1{
        font-size:23px!important;
        line-height:1.12!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-layout{
        display:flex!important;
        flex-direction:column!important;
        gap:10px!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-card{
        width:100%!important;
        padding:14px!important;
        border-radius:20px!important;
    }

    body.pagina-confirmar-entrega .checkout-entrega-card-titulo{
        align-items:flex-start!important;
        gap:9px!important;
    }

    body.pagina-confirmar-entrega .checkout-btn-novo{
        min-height:38px!important;
        padding:0 10px!important;
        border-radius:11px!important;
        font-size:10px!important;
    }

    body.pagina-confirmar-entrega .checkout-enderecos-grid{
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    body.pagina-confirmar-entrega .checkout-endereco-card{
        padding:13px!important;
        border-radius:16px!important;
    }

    body.pagina-confirmar-entrega .checkout-grid-form{
        grid-template-columns:1fr!important;
        gap:9px!important;
    }

    body.pagina-confirmar-entrega .checkout-acoes-endereco{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    body.pagina-confirmar-entrega .checkout-btn-confirmar,
    body.pagina-confirmar-entrega .checkout-btn-salvar-endereco{
        width:100%!important;
    }

    body.pagina-enderecos .enderecos-page,
    body.pagina-meus-dados .dados-cliente-page{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-enderecos .enderecos-topo,
    body.pagina-meus-dados .dados-cliente-topo{
        margin:0 0 9px!important;
    }

    body.pagina-enderecos .enderecos-hero,
    body.pagina-meus-dados .dados-cliente-hero{
        padding:15px!important;
        border-radius:20px!important;
    }

    body.pagina-enderecos .enderecos-hero h1,
    body.pagina-meus-dados .dados-cliente-hero h1{
        font-size:23px!important;
    }

    body.pagina-enderecos .enderecos-layout,
    body.pagina-meus-dados .dados-cliente-layout{
        display:flex!important;
        flex-direction:column!important;
        gap:10px!important;
    }

    body.pagina-enderecos .enderecos-form-card,
    body.pagina-enderecos .enderecos-lista-card,
    body.pagina-meus-dados .dados-cliente-card{
        padding:14px!important;
        border-radius:20px!important;
    }

    body.pagina-enderecos .enderecos-grid-form,
    body.pagina-meus-dados .dados-grid-form{
        grid-template-columns:1fr!important;
        gap:9px!important;
    }

    body.pagina-enderecos .enderecos-grid-lista{
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    body.pagina-enderecos .endereco-item-card{
        padding:13px!important;
        border-radius:16px!important;
    }

    body.pagina-meus-dados .dados-cliente-rodape{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:9px!important;
    }

    /* -----------------------------------------------------
       ÁREA DO CLIENTE, PEDIDOS E FAVORITOS
    ----------------------------------------------------- */
    body:is(
        .pagina-minha-conta,
        .pagina-meus-pedidos,
        .pagina-detalhes-pedido,
        .pagina-alterar-senha
    ) .conta-container,
    body.pagina-minha-conta .conta-dashboard-pro,
    body.pagina-detalhes-pedido .pedido-pro-page{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-minha-conta .conta-hero-cliente{
        display:block!important;
        padding:17px!important;
        border-radius:21px!important;
    }

    body.pagina-minha-conta .conta-hero-cliente h1{
        font-size:25px!important;
    }

    body.pagina-minha-conta .conta-hero-acoes{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        margin-top:13px!important;
    }

    body.pagina-minha-conta .conta-hero-acoes a{
        min-width:0!important;
        min-height:41px!important;
        padding:0 8px!important;
        font-size:10px!important;
    }

    body.pagina-minha-conta .conta-resumo-pedido{
        margin-top:12px!important;
        padding:12px!important;
        border-radius:15px!important;
    }

    body.pagina-minha-conta .conta-acesso-rapido{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
        margin:10px 0!important;
    }

    body.pagina-minha-conta .conta-card-acao{
        min-height:108px!important;
        padding:13px!important;
        border-radius:17px!important;
    }

    body.pagina-minha-conta .conta-icone{
        width:38px!important;
        height:38px!important;
        border-radius:12px!important;
    }

    body.pagina-minha-conta .conta-layout-dashboard{
        display:block!important;
    }

    body.pagina-minha-conta .conta-bloco-principal,
    body.pagina-minha-conta .conta-sidebar-dashboard{
        width:100%!important;
        margin:0 0 10px!important;
        padding:14px!important;
        border-radius:20px!important;
    }

    body.pagina-minha-conta .pedido-dashboard-card{
        padding:12px!important;
        border-radius:16px!important;
    }

    body.pagina-meus-pedidos .tabela-conta-wrap{
        overflow:visible!important;
        border:0!important;
        background:transparent!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready,
    body.pagina-meus-pedidos .tabela-conta.app-table-ready tbody{
        display:block!important;
        width:100%!important;
        min-width:0!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready thead{
        display:none!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready tr{
        display:block!important;
        margin:0 0 9px!important;
        padding:8px 12px!important;
        border:1px solid var(--app-line)!important;
        border-radius:17px!important;
        background:#fff!important;
        box-shadow:0 5px 16px rgba(15,23,42,.05)!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready td{
        min-height:34px!important;
        display:flex!important;
        align-items:center!important;
        justify-content:space-between!important;
        gap:12px!important;
        width:100%!important;
        padding:8px 0!important;
        border:0!important;
        border-bottom:1px solid #edf2ef!important;
        text-align:right!important;
        font-size:11px!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready td:last-child{
        border-bottom:0!important;
    }

    body.pagina-meus-pedidos .tabela-conta.app-table-ready td::before{
        content:attr(data-label);
        flex:0 0 42%;
        color:#64748b;
        font-size:9px;
        font-weight:900;
        letter-spacing:.05em;
        text-align:left;
        text-transform:uppercase;
    }

    body.pagina-meus-pedidos .acoes-pedido-cliente{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:7px!important;
        text-align:left!important;
    }

    body.pagina-meus-pedidos .acoes-pedido-cliente::before{display:none!important}
    body.pagina-meus-pedidos .acoes-pedido-cliente a,
    body.pagina-meus-pedidos .acoes-pedido-cliente button{
        width:100%!important;
        min-height:38px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-hero{
        display:block!important;
        padding:16px!important;
        border-radius:20px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-hero h1{
        font-size:26px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-total-card{
        margin-top:12px!important;
        padding:12px!important;
        border-radius:15px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-grid{
        display:block!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-card{
        margin:0 0 10px!important;
        padding:14px!important;
        border-radius:20px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-timeline{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    body.pagina-detalhes-pedido .pedido-pro-etapa{
        min-height:0!important;
        display:grid!important;
        grid-template-columns:38px minmax(0,1fr)!important;
        gap:9px!important;
        padding:10px!important;
        border-radius:14px!important;
    }

    body.pagina-favoritos .favoritos-page{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-favoritos .favoritos-hero{
        display:block!important;
        padding:16px!important;
        border-radius:20px!important;
    }

    body.pagina-favoritos .favoritos-hero h1{
        font-size:25px!important;
    }

    body.pagina-favoritos .favoritos-resumo-card{
        margin-top:12px!important;
        padding:11px!important;
        border-radius:14px!important;
    }

    body.pagina-favoritos .favoritos-toolbar{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        margin:10px 0!important;
    }

    body.pagina-favoritos .favoritos-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
        gap:8px!important;
    }

    body.pagina-favoritos .favorito-card{
        border-radius:16px!important;
        overflow:hidden!important;
    }

    body.pagina-favoritos .favorito-imagem{
        height:auto!important;
        aspect-ratio:1/1!important;
    }

    body.pagina-favoritos .favorito-conteudo{
        padding:9px!important;
    }

    body.pagina-favoritos .favorito-conteudo h3{
        min-height:34px!important;
        font-size:11.5px!important;
        line-height:1.35!important;
    }

    body.pagina-favoritos .favorito-acoes{
        display:grid!important;
        grid-template-columns:1fr!important;
        gap:6px!important;
    }

    body.pagina-favoritos .favorito-btn-ver,
    body.pagina-favoritos .favorito-btn-remover{
        min-height:35px!important;
        font-size:9.5px!important;
    }

    /* -----------------------------------------------------
       LOGIN, CADASTRO E RECUPERAÇÃO
    ----------------------------------------------------- */
    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) .conteudo{
        display:flex!important;
        align-items:flex-start!important;
        justify-content:center!important;
        min-height:calc(100dvh - 110px)!important;
        padding:12px 10px 24px!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) :is(.login-container,.cadastro-container){
        width:100%!important;
        min-height:0!important;
        margin:0!important;
        padding:0!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) :is(.login-box,.cadastro-box){
        width:100%!important;
        max-width:520px!important;
        margin:0!important;
        padding:18px!important;
        border:1px solid var(--app-line)!important;
        border-radius:22px!important;
        background:#fff!important;
        box-shadow:var(--app-shadow)!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) .logo-login{
        width:auto!important;
        max-width:92px!important;
        height:42px!important;
        margin:0 auto 8px!important;
        object-fit:contain!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) :is(.login-header,.cadastro-header) h2{
        font-size:23px!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) .grid-form{
        grid-template-columns:1fr!important;
        gap:9px!important;
    }

    body:is(
        .pagina-login-cliente,
        .pagina-cadastro,
        .pagina-recuperar-senha,
        .pagina-redefinir-senha
    ) :is(.btn-login,.btn-cadastro-grande){
        width:100%!important;
        min-height:48px!important;
        border-radius:14px!important;
    }

    /* -----------------------------------------------------
       ATENDIMENTO — TELA CHEIA DE APP
    ----------------------------------------------------- */
    body.pagina-atendimento-cliente .conteudo{
        padding:6px!important;
        min-height:calc(100dvh - 108px)!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-page{
        width:100%!important;
        max-width:none!important;
        min-height:calc(100dvh - 116px)!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-shell{
        min-height:calc(100dvh - 116px)!important;
        border-radius:20px!important;
        overflow:hidden!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-header{
        padding:14px!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-header h1{
        font-size:22px!important;
    }

    body.pagina-atendimento-cliente .grid-motivos-atendimento{
        grid-template-columns:1fr!important;
        gap:8px!important;
    }

    body.pagina-atendimento-cliente .motivo-atendimento-card{
        min-height:58px!important;
        padding:11px!important;
        border-radius:14px!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-card{
        min-height:calc(100dvh - 190px)!important;
        border-radius:18px!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-mensagens{
        min-height:0!important;
        max-height:calc(100dvh - 310px)!important;
        padding:10px!important;
    }

    body.pagina-atendimento-cliente .paladini-chat-form{
        position:sticky!important;
        bottom:0!important;
        padding:9px!important;
        background:#fff!important;
    }

    /* -----------------------------------------------------
       EVENTOS E SORTEIOS
    ----------------------------------------------------- */
    body.pagina-eventos .eventos-lista-page,
    body.pagina-evento .evento-publico{
        width:100%!important;
        max-width:none!important;
        margin:0!important;
        padding:0!important;
    }

    body.pagina-eventos .eventos-lista-hero{
        display:block!important;
        padding:17px!important;
        border-radius:21px!important;
    }

    body.pagina-eventos .eventos-lista-hero h1{
        font-size:25px!important;
    }

    body.pagina-eventos .eventos-lista-resumo{
        grid-template-columns:1fr 1fr!important;
        gap:8px!important;
        margin-top:13px!important;
    }

    body.pagina-eventos .eventos-lista-resumo div{
        padding:11px!important;
        border-radius:14px!important;
    }

    body.pagina-eventos .eventos-lista-resumo strong{
        font-size:23px!important;
    }

    body.pagina-eventos .eventos-lista-filtros{
        margin-top:10px!important;
        padding:10px!important;
        border-radius:18px!important;
    }

    body.pagina-eventos .eventos-busca-form{
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        gap:7px!important;
    }

    body.pagina-eventos .eventos-lista-abas{
        flex-wrap:nowrap!important;
        width:calc(100% + 20px)!important;
        margin:10px -10px 0!important;
        padding:0 10px 6px!important;
        overflow-x:auto!important;
    }

    body.pagina-eventos .eventos-lista-abas a{
        flex:0 0 auto!important;
        white-space:nowrap!important;
    }

    body.pagina-eventos .eventos-lista-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-top:10px!important;
    }

    body.pagina-eventos .evento-lista-card{
        border-radius:20px!important;
    }

    body.pagina-eventos .evento-lista-capa{
        min-height:170px!important;
    }

    body.pagina-eventos .evento-lista-conteudo{
        padding:14px!important;
    }

    body.pagina-eventos .eventos-lista-conta{
        display:block!important;
        margin-top:10px!important;
        padding:15px!important;
        border-radius:20px!important;
    }

    body.pagina-eventos .eventos-lista-conta>div:last-child{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        margin-top:12px!important;
    }

    body.pagina-evento .evento-publico-hero{
        display:block!important;
        min-height:0!important;
        padding:16px!important;
        border-radius:21px!important;
    }

    body.pagina-evento .evento-publico-hero-arte{
        position:relative!important;
        inset:auto!important;
        width:calc(100% + 32px)!important;
        height:190px!important;
        margin:-16px -16px 14px!important;
        border-radius:21px 21px 0 0!important;
        -webkit-mask-image:none!important;
        mask-image:none!important;
        opacity:1!important;
    }

    body.pagina-evento .evento-publico-hero h1{
        font-size:28px!important;
    }

    body.pagina-evento .evento-publico-dados{
        display:grid!important;
        grid-template-columns:1fr 1fr!important;
        gap:7px!important;
    }

    body.pagina-evento .evento-publico-dados>div{
        min-width:0!important;
        max-width:none!important;
    }

    body.pagina-evento .evento-publico-indicadores{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
        gap:7px!important;
        margin-top:12px!important;
    }

    body.pagina-evento .evento-publico-indicador,
    body.pagina-evento .evento-publico-contagem{
        min-height:92px!important;
        padding:12px!important;
        border-radius:15px!important;
    }

    body.pagina-evento .evento-publico-indicador strong,
    body.pagina-evento .evento-publico-contagem strong{
        font-size:21px!important;
    }

    body.pagina-evento .evento-publico-grid{
        grid-template-columns:1fr!important;
        gap:10px!important;
        margin-top:10px!important;
    }

    body.pagina-evento :is(.evento-publico-box,.evento-publico-participar,.evento-publico-regulamento){
        padding:15px!important;
        border-radius:19px!important;
    }

    body.pagina-evento .evento-publico-participar{
        position:static!important;
    }

    body.pagina-evento .evento-publico-premios{
        grid-template-columns:1fr!important;
    }

    /* -----------------------------------------------------
       PAGAMENTO E RETORNOS
    ----------------------------------------------------- */
    body:is(
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido
    ) .conteudo{
        padding:10px!important;
    }

    body:is(
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido
    ) .box-carrinho{
        text-align:left!important;
    }

    body:is(
        .pagina-pagamento,
        .pagina-pagamento-retorno,
        .pagina-aguardando-pagamento,
        .pagina-pagar-pedido
    ) .box-carrinho .btn{
        width:100%!important;
        display:flex!important;
        align-items:center!important;
        justify-content:center!important;
        margin-top:9px!important;
    }

    /* -----------------------------------------------------
       MODO ESCURO DOS NOVOS ELEMENTOS
    ----------------------------------------------------- */
    body.modo-escuro{
        --app-bg:#0b1220;
        --app-card:#0f172a;
        --app-line:#253247;
        --app-text:#e5e7eb;
        --app-muted:#94a3b8;
    }

    body.modo-escuro .app-bottom-nav{
        border-color:#253247;
        background:rgba(15,23,42,.97);
    }

    body.modo-escuro .app-bottom-link{
        color:#94a3b8;
    }

    body.modo-escuro .app-bottom-link.ativo{
        color:#bbf7d0;
        background:#163323;
    }
}

@media (max-width:350px){
    body.pagina-produtos .grid-catalogo-premium,
    body.pagina-favoritos .favoritos-grid{
        grid-template-columns:1fr!important;
    }

    body.pagina-evento .evento-publico-indicadores{
        grid-template-columns:1fr!important;
    }
}

/* =========================================================
   AJUSTE V1.1 — BARRA INFERIOR SEM COBRIR O CONTEÚDO
========================================================= */
@media (max-width:768px){
    :root{
        --app-bottom-nav:60px;
    }

    body,
    body.home-marketplace,
    body.home-premium.home-marketplace,
    body.home-integrada.home-marketplace{
        padding-bottom:calc(
            var(--app-bottom-nav) + 22px + env(safe-area-inset-bottom)
        )!important;
    }

    body.home-marketplace .conteudo-home-marketplace,
    body.home-premium.home-marketplace .conteudo-home-marketplace,
    body.home-integrada.home-marketplace .conteudo-home-marketplace{
        padding-bottom:calc(
            var(--app-bottom-nav) + 28px + env(safe-area-inset-bottom)
        )!important;
    }

    .app-bottom-nav{
        height:calc(var(--app-bottom-nav) + env(safe-area-inset-bottom))!important;
        padding:4px 8px calc(4px + env(safe-area-inset-bottom))!important;
    }

    .app-bottom-link{
        min-height:50px!important;
        gap:2px!important;
        padding:3px 2px!important;
        border-radius:12px!important;
        font-size:9px!important;
    }

    .app-bottom-link img{
        width:20px!important;
        height:20px!important;
    }

    .whatsapp-flutuante{
        bottom:calc(
            var(--app-bottom-nav) + 12px + env(safe-area-inset-bottom)
        )!important;
    }
}

/* =========================================================
   AJUSTE V1.2 — ESPAÇO REAL ACIMA DA BARRA INFERIOR
   Corrige especificamente o último bloco da página inicial.
========================================================= */
@media (max-width:768px){
    /*
       O padding no body pode ser ignorado visualmente quando a home usa
       contêineres internos. Por isso o espaço é criado dentro do próprio
       conteúdo rolável.
    */
    body.home-marketplace main.conteudo,
    body.home-premium.home-marketplace main.conteudo,
    body.home-integrada.home-marketplace main.conteudo,
    body.home-marketplace main.conteudo-pro,
    body.home-premium.home-marketplace main.conteudo-pro,
    body.home-integrada.home-marketplace main.conteudo-pro{
        padding-bottom:0!important;
        overflow:visible!important;
    }

    body.home-marketplace .conteudo-home-marketplace,
    body.home-premium.home-marketplace .conteudo-home-marketplace,
    body.home-integrada.home-marketplace .conteudo-home-marketplace{
        position:relative!important;
        padding-bottom:0!important;
        overflow:visible!important;
    }

    /*
       Espaçador físico após o último bloco.
       Assim o botão do atendimento pode ser rolado completamente para
       cima da barra fixa, sem ficar escondido atrás dela.
    */
    body.home-marketplace .conteudo-home-marketplace::after,
    body.home-premium.home-marketplace .conteudo-home-marketplace::after,
    body.home-integrada.home-marketplace .conteudo-home-marketplace::after{
        content:""!important;
        display:block!important;
        width:100%!important;
        height:calc(
            var(--app-bottom-nav) + 34px + env(safe-area-inset-bottom)
        )!important;
        min-height:94px!important;
        pointer-events:none!important;
    }

    body.home-marketplace .conteudo-home-marketplace > .chamada-marketplace:last-of-type,
    body.home-premium.home-marketplace .conteudo-home-marketplace > .chamada-marketplace:last-of-type,
    body.home-integrada.home-marketplace .conteudo-home-marketplace > .chamada-marketplace:last-of-type{
        margin-bottom:0!important;
    }

    .app-bottom-nav{
        bottom:0!important;
    }
}

