/*
Theme Name: Twenty Twenty-Five Child
Theme URI: https://apps.digitalub.ao/
Description: Tema filho premium para a DIGITALUB com redesenho completo e moderno do WooCommerce.
Author: DIGITALUB
Author URI: https://digitalub.ao/
Template: twentytwentyfive
Version: 1.0.0
Text Domain: twentytwentyfive-child
*/

/* ==========================================
   DIGITALUB Premium WooCommerce & Shop Styling
   ========================================== */

/* --- Cores Primárias (DIGITALUB Brand Blue) ---
   Base Blue: #1f6c98 (rgb(31, 108, 152))
   Hover Blue: #164f70 (rgb(22, 79, 112))
   Lighter Accent: #288bcb (rgb(40, 139, 203))
   Shadow Overlay: rgba(31, 108, 152, 0.15)
*/

/* -------------------------------------------
   0. TIPOGRAFIA PREMIUM E MODERNA (Google Fonts)
   ------------------------------------------- */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* Aplicar a fonte Inter globalmente para uma aparência limpa e tecnológica */
html, body, p, div, span, a, h1, h2, h3, h4, h5, h6, input, button, select, textarea,
.woocommerce, .woocommerce-page, .wc-block-all-products, .wp-block-woocommerce-store-main {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
}

/* Títulos Robustos (Aspecto de Software Premium) */
.product_title, 
.woocommerce-loop-product__title, 
.wc-block-grid__product-title, 
.wc-block-product-title,
.wp-block-post-title,
.wp-block-site-title,
.site-title,
h1, h2, h3 {
    font-family: 'Inter', sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    color: #0f172a !important;
}

/* Leitura e Conforto nos Textos de Descrição */
p, 
.woocommerce-product-details__short-description,
.woocommerce-product-details__short-description p,
.woocommerce-Tabs-panel--description p,
.wc-block-components-product-details,
.wc-block-grid__product-description,
.wc-block-product-description,
.wp-block-paragraph,
.description {
    color: #334155 !important; /* Cinza-escuro elegante */
    line-height: 1.65 !important;
    font-size: 0.975rem !important;
    font-family: 'Inter', sans-serif !important;
}

/* -------------------------------------------
   A. ANIMAÇÕES, PREENCHIMENTO VISUAL & FLUIDEZ
   ------------------------------------------- */

/* 1. Background Geral Suave para a Loja (Destaca os cards brancos) - Slate Tecnológico */
body.archive.post-type-archive-product,
body.tax-product_cat,
body.post-type-archive-product,
.wp-block-woocommerce-store-main,
.wc-block-all-products,
.wc-block-product-template {
    background-color: #f1f5f9 !important;
}

/* Preenchimento e arredondamento elegante do container principal da loja */
.wp-block-woocommerce-store-main,
.wc-block-all-products {
    background-color: #f1f5f9 !important;
    padding: 24px !important;
    border-radius: 16px !important;
}

/* 2. Efeito Fade-In Dinâmico (Entrada suave dos produtos ao carregar) */
@keyframes fadeIn {
    from {
        opacity: 0;
        transform: translateY(15px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 3. Micro-interações Fluídas (Transições cúbicas profissionais) */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product,
.wc-block-product,
.wc-block-product-template li,
.wp-block-woocommerce-product-collection .wc-block-product,
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button, 
.woocommerce-page a.button,
.woocommerce-page button.button,
.wp-block-button__link,
.wp-element-button,
.wc-block-components-product-button__button,
.wc-block-components-button,
.wc-block-loop-item__button,
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
.wc-block-grid__product-image img,
.wc-block-product-image img,
.wc-block-product img,
.wc-block-components-product-image img,
.wp-block-woocommerce-product-image img,
header, .site-header, .wp-block-template-part-header,
footer, .site-footer, .wp-block-template-part-footer {
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* -------------------------------------------
   B. CABEÇALHO & RODAPÉ CORPORATIVOS PREMIUM
   ------------------------------------------- */

/* 1. Cabeçalho Corporativo */
header,
.site-header,
.wp-block-template-part-header,
div[data-align="full"] > header {
    position: sticky !important;
    top: 0 !important;
    z-index: 9999 !important;
    background: rgba(30, 41, 59, 0.85) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding: 16px 40px !important;
    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.15) !important;
    box-sizing: border-box !important;
}

/* Destacar o título 'DIGITALUB Apps' a negrito */
.wp-block-site-title,
.wp-block-site-title a,
.site-title,
.site-title a {
    font-weight: 800 !important;
    font-family: 'Inter', sans-serif !important;
    color: #ffffff !important;
    font-size: 1.35rem !important;
    letter-spacing: -0.02em !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
}

/* 1.1 Links do Menu Superior, Carrinho e Conta */
.wp-block-navigation a,
.wp-block-navigation .wp-block-navigation-item__content,
.wc-block-mini-cart__button,
.wc-block-mini-cart__button a,
.woocommerce-mini-cart__buttons a,
header a:not(.wp-block-site-title):not(.site-title):not(.wp-block-site-title a),
.wp-block-template-part-header a:not(.wp-block-site-title):not(.site-title):not(.wp-block-site-title a) {
    color: rgba(255, 255, 255, 0.85) !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
}

.wp-block-navigation a:hover,
.wp-block-navigation .wp-block-navigation-item__content:hover,
.wc-block-mini-cart__button:hover,
.wc-block-mini-cart__button a:hover,
.woocommerce-mini-cart__buttons a:hover,
header a:not(.wp-block-site-title):not(.site-title):not(.wp-block-site-title a):hover,
.wp-block-template-part-header a:not(.wp-block-site-title):not(.site-title):not(.wp-block-site-title a):hover {
    color: #1f6c98 !important;
}

/* Forçar os ícones/SVG no cabeçalho a seguirem a cor do texto e transição */
header svg,
.wp-block-template-part-header svg {
    fill: currentColor !important;
    stroke: currentColor !important;
    transition: all 0.3s ease !important;
}

/* 2. Rodapé Corporativo */
footer,
.site-footer,
.wp-block-template-part-footer {
    background-color: #090d16 !important; /* Tom escuro corporativo ainda mais profundo */
    background: #090d16 !important;
    border-top: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: #94a3b8 !important; /* Cinza-claro */
    padding: 48px 40px !important;
    font-family: 'Inter', sans-serif !important;
    box-sizing: border-box !important;
}

footer a,
.site-footer a,
.wp-block-template-part-footer a {
    color: #e2e8f0 !important;
    text-decoration: none !important;
}

footer a:hover,
.site-footer a:hover,
.wp-block-template-part-footer a:hover {
    color: #1f6c98 !important; /* Destaque em azul oficial ao hover */
}

/* Ocultar completamente o rodapé padrão e menção 'Criado com WordPress' */
footer a[href*="wordpress"],
footer a[href*="wordpress.org"],
.wordpress-credit,
.powered-by,
.wp-block-group.footer p:has(a[href*="wordpress"]) {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}

/* -------------------------------------------
   C. CORREÇÃO ABSOLUTA DA IMAGEM DO PRODUTO
   ------------------------------------------- */

.wc-block-components-product-image,
.wp-block-woocommerce-product-image,
.wc-block-grid__product-image,
.wc-block-product-image,
.woocommerce-loop-product__link img,
figure.wp-block-woocommerce-product-image,
.wc-block-product-template li figure,
.wc-block-product-template li figure a,
.wc-block-product-template li figure img,
.wc-block-product-template li .wc-block-components-product-image,
.wc-block-product-template li .wc-block-components-product-image a,
.wc-block-product-template li .wc-block-components-product-image img {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

/* Forçar containers de imagem a terem as proporções corretas em FSE */
.wc-block-components-product-image a,
.wp-block-woocommerce-product-image a,
figure.wp-block-woocommerce-product-image a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Esconder os placeholders cinzentos caso haja imagem real do produto */
.wc-block-components-product-image__placeholder,
.wc-block-product-image__placeholder {
    display: none !important;
}

/* -------------------------------------------
   D. BOTÕES E CONVERSÕES PREMIUM
   ------------------------------------------- */

/* Botões Globais, WooCommerce & Blocos Modernos ("Comprar", "Adicionar", "Finalizar Compra") */
.woocommerce a.button, 
.woocommerce button.button, 
.woocommerce input.button, 
.woocommerce #respond input#submit,
.woocommerce a.button.alt, 
.woocommerce button.button.alt, 
.woocommerce input.button.alt, 
.woocommerce #respond input#submit.alt,
.woocommerce-page a.button,
.woocommerce-page button.button,
.woocommerce-page input.button,
.woocommerce-page #respond input#submit,
.woocommerce-page a.button.alt, 
.woocommerce-page button.button.alt, 
.woocommerce-page input.button.alt,
.woocommerce-page #respond input#submit.alt,
/* Classes de blocos modernos */
.wp-block-button__link,
.wp-element-button,
.wc-block-components-product-button__button,
.wc-block-components-button,
.wc-block-loop-item__button,
.wc-block-grid__product-add-to-cart,
.wc-block-grid__products .wp-block-button__link,
.wc-block-product-template .wp-block-button__link,
.wp-block-woocommerce-product-collection .wp-block-button__link {
    background-color: #1f6c98 !important;
    background: #1f6c98 !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    padding: 12px 24px !important;
    border-radius: 8px !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(31, 108, 152, 0.25) !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
}

/* Estado Hover (Ao Passar o Rato) */
.woocommerce a.button:hover, 
.woocommerce button.button:hover, 
.woocommerce input.button:hover, 
.woocommerce #respond input#submit:hover,
.woocommerce a.button.alt:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce input.button.alt:hover, 
.woocommerce #respond input#submit.alt:hover,
.woocommerce-page a.button:hover,
.woocommerce-page button.button:hover,
.woocommerce-page input.button:hover,
.woocommerce-page #respond input#submit:hover,
.woocommerce-page a.button.alt:hover, 
.woocommerce button.button.alt:hover, 
.woocommerce input.button.alt:hover,
.woocommerce-page #respond input#submit.alt:hover,
/* Hover em Blocos */
.wp-block-button__link:hover,
.wp-element-button:hover,
.wc-block-components-product-button__button:hover,
.wc-block-components-button:hover,
.wc-block-loop-item__button:hover,
.wc-block-grid__product-add-to-cart:hover,
.wc-block-grid__products .wp-block-button__link:hover,
.wc-block-product-template .wp-block-button__link:hover,
.wp-block-woocommerce-product-collection .wp-block-button__link:hover {
    background-color: #164f70 !important;
    background: #164f70 !important;
    color: #ffffff !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 18px rgba(31, 108, 152, 0.4) !important;
    text-decoration: none !important;
}

/* Estado Activo / Clicado (Ao Pressionar) */
.woocommerce a.button:active, 
.woocommerce button.button:active, 
.woocommerce input.button:active, 
.woocommerce #respond input#submit:active,
.woocommerce a.button.alt:active, 
.woocommerce button.button.alt:active, 
.woocommerce input.button.alt:active, 
.woocommerce #respond input#submit.alt:active,
/* Active em Blocos */
.wp-block-button__link:active,
.wp-element-button:active,
.wc-block-components-product-button__button:active,
.wc-block-components-button:active,
.wc-block-loop-item__button:active,
.wc-block-grid__product-add-to-cart:active {
    transform: translateY(1px) !important;
    box-shadow: 0 2px 6px rgba(31, 108, 152, 0.2) !important;
}

/* Botão Especial - Carrinho e Checkout (Finalizar Compra / Fazer Encomenda) */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout #payment #place_order,
.woocommerce-page .checkout-button,
.woocommerce-page #place_order {
    background: linear-gradient(135deg, #1f6c98 0%, #288bcb 100%) !important;
    font-size: 1.05rem !important;
    padding: 16px 32px !important;
    width: 100% !important;
    border-radius: 10px !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce-checkout #payment #place_order:hover {
    background: linear-gradient(135deg, #164f70 0%, #1f6c98 100%) !important;
    box-shadow: 0 10px 20px rgba(31, 108, 152, 0.45) !important;
}

/* -------------------------------------------
   E. PREÇOS DESTACADOS
   ------------------------------------------- */

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-page ul.products li.product .price,
.woocommerce-page div.product p.price,
.woocommerce-page div.product span.price,
.wc-block-grid__product-price,
.wc-block-product-price,
.woocommerce-Price-amount,
.price {
    color: #1f6c98 !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
}

/* Preço na Grelha de Produtos (Loja) */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
.wc-block-grid__product-price,
.wc-block-product-price {
    font-size: 1.3rem !important;
    margin-bottom: 12px !important;
    display: block !important;
}

/* Preço na Página de Produto Único */
.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce-page div.product p.price,
.woocommerce-page div.product span.price {
    font-size: 2.1rem !important;
    letter-spacing: -0.02em !important;
    border-bottom: 2px dashed rgba(31, 108, 152, 0.15) !important;
    padding-bottom: 12px !important;
    margin-bottom: 20px !important;
    display: inline-block !important;
}

/* Formatação de Preço com Desconto (Preço Antigo) */
.woocommerce ul.products li.product .price del,
.woocommerce div.product p.price del,
.woocommerce-page ul.products li.product .price del,
.wc-block-grid__product-price del,
.wc-block-product-price del {
    font-size: 0.85em !important;
    opacity: 0.5 !important;
    font-weight: 400 !important;
    margin-right: 8px !important;
}

.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins,
.woocommerce-page ul.products li.product .price ins,
.wc-block-grid__product-price ins,
.wc-block-product-price ins {
    text-decoration: none !important;
    background: none !important;
}

/* -------------------------------------------
   F. CARDS DE PRODUTOS PROFISSIONAIS E GRELHA OTIMIZADA
   ------------------------------------------- */

/* Grelha de Coleção de Produtos (Alinhamento Flexível e Centralizado) */
.wc-block-grid__products,
.wc-block-product-template,
.wp-block-woocommerce-product-collection,
ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    margin: 0 auto !important;
    padding: 0 !important;
    max-width: 1360px !important;
    list-style: none !important;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.wc-block-grid__product,
.wc-block-product,
.wc-block-product-template li,
.wp-block-woocommerce-product-collection .wc-block-product {
    background: #ffffff !important;
    border: 1px solid transparent !important; /* Remove contornos escuros, mantém borda transparente para o hover */
    border-radius: 12px !important;
    padding: 20px !important;
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -4px rgba(0, 0, 0, 0.05) !important;
    max-width: 285px !important;
    margin: 15px !important; /* Margem de 15px para respirar e centralizar flex */
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    box-sizing: border-box !important;
    /* Aplicação da Animação Fade-In */
    animation: fadeIn 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
}

/* Efeito Hover nos Cards (Levantamento suave e sombra elegante) */
.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
.wc-block-grid__product:hover,
.wc-block-product:hover,
.wc-block-product-template li:hover,
.wp-block-woocommerce-product-collection .wc-block-product:hover {
    transform: translateY(-6px) !important;
    box-shadow: 0 20px 25px -5px rgba(31, 108, 152, 0.08), 0 10px 10px -5px rgba(0, 0, 0, 0.03) !important;
    border-color: rgba(31, 108, 152, 0.2) !important;
}

/* Efeito de Zoom na Imagem do Produto no Hover */
.woocommerce ul.products li.product:hover a img,
.woocommerce-page ul.products li.product:hover a img,
.wc-block-grid__product:hover .wc-block-grid__product-image img,
.wc-block-product:hover .wc-block-product-image img,
.wc-block-product-template li:hover figure img {
    transform: scale(1.03) !important;
}

/* Títulos dos Produtos Proporcionais */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title,
.wc-block-product-title {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin-top: 12px !important;
    margin-bottom: 8px !important;
    line-height: 1.4 !important;
    transition: color 0.2s ease !important;
}

.woocommerce ul.products li.product:hover .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product:hover .woocommerce-loop-product__title,
.wc-block-grid__product:hover .wc-block-grid__product-title,
.wc-block-product:hover .wc-block-product-title,
.wc-block-product-template li:hover .wc-block-product-title,
.wp-block-woocommerce-product-collection .wc-block-product:hover .wc-block-product-title {
    color: #1f6c98 !important;
}

/* Textos de Descrição Proporcionais nos Cartões */
.wc-block-grid__product-description,
.wc-block-product-description,
.woocommerce ul.products li.product .description {
    font-size: 0.85rem !important;
    line-height: 1.5 !important;
    margin-top: 8px !important;
    margin-bottom: 12px !important;
}

/* Botões Proporcionais ao Cartão Menor */
.wc-block-grid__product .wp-block-button__link,
.wc-block-grid__product .wc-block-components-product-button__button,
.wc-block-grid__product .wc-block-loop-item__button,
.wc-block-grid__product .wc-block-grid__product-add-to-cart,
.wc-block-product-template li .wp-block-button__link,
.wc-block-product-template li .wc-block-components-product-button__button,
.wc-block-product-template li .wc-block-loop-item__button,
.wc-block-product-template li a.button,
.wc-block-product .wp-block-button__link,
.wc-block-product .wc-block-components-product-button__button,
.wc-block-product .wc-block-loop-item__button,
.woocommerce ul.products li.product a.button {
    font-size: 0.825rem !important;
    padding: 10px 16px !important;
    letter-spacing: 0.05em !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Badge de Promoção (Sale Badge) Premium */
.woocommerce span.onsale,
.woocommerce-page span.onsale,
.wc-block-grid__product-onsale,
.wc-block-product-onsale {
    background: linear-gradient(135deg, #e11d48 0%, #be123c 100%) !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.08em !important;
    padding: 6px 12px !important;
    border-radius: 6px !important;
    line-height: 1 !important;
    min-height: 0 !important;
    min-width: 0 !important;
    top: 12px !important;
    left: 12px !important;
    right: auto !important;
    box-shadow: 0 4px 6px rgba(190, 18, 60, 0.2) !important;
}

/* -------------------------------------------
   G. PÁGINA DO PRODUTO ÚNICO
   ------------------------------------------- */

.woocommerce div.product .product_title {
    font-size: 2.25rem !important;
    font-weight: 800 !important;
    color: #0f172a !important;
    line-height: 1.2 !important;
    letter-spacing: -0.025em !important;
}

/* Seletor de Quantidade */
.woocommerce .quantity .qty,
.woocommerce-page .quantity .qty {
    width: 60px !important;
    height: 44px !important;
    border-radius: 8px !important;
    border: 1px solid rgba(0, 0, 0, 0.15) !important;
    font-weight: 600 !important;
    font-size: 1rem !important;
    text-align: center !important;
    padding: 0 !important;
    margin-right: 12px !important;
    background: #f8fafc !important;
    transition: all 0.2s ease !important;
}

.woocommerce .quantity .qty:focus {
    border-color: #1f6c98 !important;
    outline: none !important;
    background: #ffffff !important;
}

/* Abas de Informação / Separadores */
.woocommerce div.product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid rgba(0,0,0,0.08) !important;
    padding-left: 0 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: transparent !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    margin: 0 24px 0 0 !important;
    padding: 12px 4px !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    border-bottom-color: #1f6c98 !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li a {
    color: #64748b !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
}

.woocommerce div.product .woocommerce-tabs ul.tabs li.active a {
    color: #1f6c98 !important;
}

.woocommerce div.product .woocommerce-tabs .panel {
    padding: 24px 0 !important;
    border: none !important;
}

/* -------------------------------------------
   H. CARRINHO, FORMULÁRIOS & CHECKOUT OTIMIZADO
   ------------------------------------------- */

/* Tabelas */
.woocommerce-cart table.cart,
.woocommerce-checkout table.shop_table {
    border: 1px solid rgba(0,0,0,0.06) !important;
    border-radius: 12px !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    overflow: hidden !important;
}

.woocommerce-cart table.cart th,
.woocommerce-checkout table.shop_table th {
    background: #f8fafc !important;
    border-bottom: 1px solid rgba(0,0,0,0.06) !important;
    font-weight: 600 !important;
    color: #475569 !important;
    padding: 16px !important;
}

.woocommerce-cart table.cart td,
.woocommerce-checkout table.shop_table td {
    padding: 16px !important;
    border-bottom: 1px solid rgba(0,0,0,0.05) !important;
}

/* Ocultar campos desnecessários no checkout */
.form-row.hidden {
    display: none !important;
}

/* Mensagens de Alerta */
.woocommerce-info,
.woocommerce-message {
    border-top-color: #1f6c98 !important;
    background-color: rgba(31, 108, 152, 0.03) !important;
    border-radius: 8px !important;
    padding: 16px 20px 16px 48px !important;
}

.woocommerce-info::before,
.woocommerce-message::before {
    color: #1f6c98 !important;
}


/* ==========================================================
   I. CHECKOUT EM 2 COLUNAS (Estilo Stripe/Shopify)
   ========================================================== */

@media (min-width: 992px) {
    /* Tornar o formulário de checkout num flexbox horizontal */
    form.woocommerce-checkout {
        display: flex !important;
        gap: 40px !important;
        align-items: flex-start !important;
        justify-content: space-between !important;
        max-width: 1200px !important;
        margin: 0 auto !important;
    }

    /* Coluna de Faturação / Envio */
    #customer_details {
        flex: 1 1 58% !important;
        max-width: 58% !important;
        margin: 0 !important;
    }

    /* Ocultar cabeçalho padrão para posicionar dentro da caixa */
    #order_review_heading {
        display: none !important;
    }

    /* Coluna de Revisão da Encomenda e Pagamento (Sticky) */
    #order_review {
        flex: 1 1 38% !important;
        max-width: 38% !important;
        position: sticky !important;
        top: 100px !important; /* Distância do topo considerando menu */
        background: #ffffff !important;
        padding: 24px !important;
        border-radius: 12px !important;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -4px rgba(0, 0, 0, 0.05) !important;
        box-sizing: border-box !important;
        border: 1px solid rgba(0,0,0,0.03) !important;
    }
}

/* ==========================================================
   J. DESIGN DOS BADGES DE CATEGORIA E STOCK INDICATOR
   ========================================================== */

/* Badge da Categoria nos Cartões */
.product-card-category {
    display: inline-block !important;
    font-size: 0.68rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    color: #1f6c98 !important;
    background: rgba(31, 108, 152, 0.08) !important;
    padding: 3px 8px !important;
    border-radius: 4px !important;
    margin-bottom: 8px !important;
    letter-spacing: 0.06em !important;
    align-self: flex-start !important;
}

/* Indicador de Stock Pulsação */
.digitalub-stock-indicator {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 0.72rem !important;
    font-weight: 600 !important;
    color: #059669 !important; /* Emerald 600 */
    margin: 8px 0 !important;
    align-self: flex-start !important;
}

.digitalub-pulse-dot {
    width: 7px !important;
    height: 7px !important;
    background-color: #10b981 !important; /* Emerald 500 */
    border-radius: 50% !important;
    margin-right: 6px !important;
    display: inline-block !important;
    position: relative !important;
    animation: pulseDot 2s infinite !important;
}

@keyframes pulseDot {
    0% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
    }
    70% {
        transform: scale(1);
        box-shadow: 0 0 0 6px rgba(16, 185, 129, 0);
    }
    100% {
        transform: scale(0.95);
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
    }
}

/* ==========================================================
   K. COMPLEMENTOS DE QUANTIDADE E PRODUTOS RELACIONADOS
   ========================================================== */

/* Seletor de Quantidade Corrigido */
.quantity .qty {
    background-color: #ffffff !important;
    color: #0f172a !important;
    border: 1px solid #cbd5e1 !important;
}

/* Correção Crítica dos Produtos Relacionados (Quebra Vertical) */
.related.products ul.products,
.related ul,
.up-sells.products ul.products,
.upsells ul,
.wp-block-woocommerce-product-collection,
.wc-block-product-template,
ul.wc-block-product-template {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 auto !important;
}

.related.products ul.products li,
.related ul li,
.up-sells.products ul.products li,
.upsells ul li,
.wc-block-product-template li,
.wp-block-woocommerce-product-collection li.product {
    display: block !important;
    width: 285px !important;
    max-width: 285px !important;
    flex: 0 0 285px !important;
    margin: 15px !important;
    word-break: normal !important;
    white-space: normal !important;
}

/* Impedir quebras estranhas de links no rodapé */
footer a,
.site-footer a,
.wp-block-template-part-footer a {
    word-break: normal !important;
    word-wrap: normal !important;
    white-space: normal !important;
}

/* ==========================================================
   L. MODO ESCURO AUTOMÁTICO (DARK MODE)
   ========================================================== */

@media (prefers-color-scheme: dark) {
    body,
    body.archive.post-type-archive-product,
    body.tax-product_cat,
    body.post-type-archive-product,
    .wp-block-woocommerce-store-main,
    .wc-block-all-products,
    .wc-block-product-template {
        background-color: #0f172a !important; /* Slate 900 */
        color: #cbd5e1 !important;
    }

    /* O cabeçalho mantém-se translúcido e fixo no modo escuro */

    .wp-block-site-title,
    .wp-block-site-title a,
    .site-title,
    .site-title a,
    h1, h2, h3,
    .product_title, 
    .woocommerce-loop-product__title, 
    .wc-block-grid__product-title, 
    .wc-block-product-title,
    .wp-block-post-title {
        color: #ffffff !important;
    }

    p, 
    .woocommerce-product-details__short-description,
    .woocommerce-product-details__short-description p,
    .woocommerce-Tabs-panel--description p,
    .woocommerce-Tabs-panel p,
    .wc-block-components-product-details,
    .wc-block-grid__product-description,
    .wc-block-product-description,
    .wp-block-paragraph,
    .description,
    .woocommerce-product-meta,
    .woocommerce-product-meta span,
    .woocommerce-product-meta a,
    .woocommerce-tabs ul.tabs li a {
        color: #cbd5e1 !important;
    }

    /* Cartões dos Produtos */
    .woocommerce ul.products li.product,
    .woocommerce-page ul.products li.product,
    .wc-block-grid__product,
    .wc-block-product,
    .wc-block-product-template li,
    .wp-block-woocommerce-product-collection .wc-block-product {
        background: #1e293b !important; /* Slate 800 */
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -4px rgba(0, 0, 0, 0.3) !important;
        border: 1px solid rgba(255, 255, 255, 0.05) !important;
    }

    .woocommerce ul.products li.product:hover,
    .woocommerce-page ul.products li.product:hover,
    .wc-block-grid__product:hover,
    .wc-block-product:hover,
    .wc-block-product-template li:hover,
    .wp-block-woocommerce-product-collection .wc-block-product:hover {
        background: #243042 !important;
        box-shadow: 0 20px 25px -5px rgba(31, 108, 152, 0.15), 0 10px 10px -5px rgba(0, 0, 0, 0.25) !important;
        border-color: rgba(31, 108, 152, 0.3) !important;
    }

    /* Tabelas e Caixas */
    .woocommerce-cart table.cart,
    .woocommerce-checkout table.shop_table {
        border: 1px solid #334155 !important;
        background: #1e293b !important;
    }

    .woocommerce-cart table.cart th,
    .woocommerce-checkout table.shop_table th {
        background: #334155 !important;
        color: #cbd5e1 !important;
        border-bottom: 1px solid #475569 !important;
    }

    .woocommerce-cart table.cart td,
    .woocommerce-checkout table.shop_table td {
        border-bottom: 1px solid #334155 !important;
        color: #cbd5e1 !important;
    }

    /* Caixa de Resumo Checkout */
    #order_review {
        background: #1e293b !important;
        box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.3), 0 4px 6px -4px rgba(0, 0, 0, 0.3) !important;
        border: 1px solid #334155 !important;
    }

    .woocommerce-checkout #payment {
        background: #1e293b !important;
    }

    /* Inputs e Seletores */
    .quantity .qty {
        background-color: #ffffff !important;
        color: #0f172a !important;
        border: 1px solid #cbd5e1 !important;
    }

    .quantity .qty:focus {
        background: #1e293b !important;
        border-color: #1f6c98 !important;
    }

    input[type="text"], input[type="email"], input[type="tel"], textarea, select {
        background: #334155 !important;
        color: #ffffff !important;
        border: 1px solid #475569 !important;
    }

    /* Alertas e Mensagens */
    .woocommerce-info,
    .woocommerce-message {
        background-color: rgba(31, 108, 152, 0.15) !important;
        color: #e2e8f0 !important;
        border-top-color: #288bcb !important;
    }

    .woocommerce-info::before,
    .woocommerce-message::before {
        color: #288bcb !important;
    }

    /* Caixa do IBAN */
    .digitalub-iban-box {
        background: #1e293b !important;
        border: 1px dashed #288bcb !important;
    }
    
    .digitalub-iban-box p {
        color: #cbd5e1 !important;
    }
    
    .digitalub-iban-box code {
        background: #334155 !important;
        color: #ffffff !important;
    }

    .digitalub-stock-indicator {
        color: #34d399 !important; /* Emerald 400 */
    }

    .product-card-category {
        color: #288bcb !important;
        background: rgba(40, 139, 203, 0.15) !important;
    }
}

/* ==========================================================
   M. SUBMENU / DROPDOWN NAV PREMIUM
   ========================================================== */

/* Forçar a Visibilidade dos Itens do Novo Menu */
.wp-block-navigation .wp-block-navigation-item__content,
.wp-block-navigation-item a,
.wp-block-navigation-submenu {
    color: #ffffff !important;
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Garantir que o item de menu pai seja posicionado relativamente */
header .wp-block-navigation-item.has-child,
.wp-block-template-part-header .wp-block-navigation-item.has-child {
    position: relative !important;
}

/* Esconder por padrão e configurar animação */
header .wp-block-navigation__submenu-container,
.wp-block-template-part-header .wp-block-navigation__submenu-container {
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(8px) !important;
    transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
    background-color: #1e293b !important; /* Slate 800 - Fundo escuro */
    border: 1px solid rgba(255, 255, 255, 0.05) !important;
    border-radius: 8px !important;
    padding: 8px 0 !important;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.4) !important;
    min-width: 240px !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    z-index: 99999 !important;
}

/* Mostrar no Hover com fade-in e subida suave */
header .wp-block-navigation-item.has-child:hover > .wp-block-navigation__submenu-container,
header .wp-block-navigation-item.has-child:focus-within > .wp-block-navigation__submenu-container,
.wp-block-template-part-header .wp-block-navigation-item.has-child:hover > .wp-block-navigation__submenu-container {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

/* Links dentro do Dropdown */
header .wp-block-navigation__submenu-container .wp-block-navigation-item a,
.wp-block-template-part-header .wp-block-navigation__submenu-container .wp-block-navigation-item a {
    padding: 10px 20px !important;
    display: block !important;
    color: #cbd5e1 !important; /* Cor clara */
    font-size: 0.9rem !important;
    font-weight: 500 !important;
    transition: all 0.2s ease !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.03) !important;
}

/* Remover linha divisória no último item */
header .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child a,
.wp-block-template-part-header .wp-block-navigation__submenu-container .wp-block-navigation-item:last-child a {
    border-bottom: none !important;
}

/* Efeito de Hover nos links do Dropdown */
header .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover,
.wp-block-template-part-header .wp-block-navigation__submenu-container .wp-block-navigation-item a:hover {
    color: #1f6c98 !important; /* Azul oficial da DIGITALUB */
    background: rgba(255, 255, 255, 0.02) !important; /* Leve destaque translúcido */
    padding-left: 24px !important; /* Efeito de deslocamento */
}

/* Estilo do indicador de seta dropdown */
header .wp-block-navigation-submenu__toggle,
.wp-block-template-part-header .wp-block-navigation-submenu__toggle {
    margin-left: 4px !important;
}

/* ==========================================================
   N. RODAPÉ (FOOTER) REFINADO & COLUNAS
   ========================================================== */

/* Ajustar as colunas do rodapé */
footer .wp-block-columns,
.site-footer .wp-block-columns,
.wp-block-template-part-footer .wp-block-columns {
    display: flex !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 32px !important;
}

/* Ajustar cada coluna individual */
footer .wp-block-column,
.site-footer .wp-block-column,
.wp-block-template-part-footer .wp-block-column {
    flex: 1 1 250px !important; /* Responsivo */
    margin: 0 !important;
}

/* Títulos do Rodapé */
footer h4,
.site-footer h4,
.wp-block-template-part-footer h4 {
    color: #ffffff !important;
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-bottom: 20px !important;
    border-bottom: 2px solid rgba(31, 108, 152, 0.3) !important;
    padding-bottom: 8px !important;
    display: inline-block !important;
}

/* Links do Rodapé */
footer .wp-block-navigation,
.site-footer .wp-block-navigation,
.wp-block-template-part-footer .wp-block-navigation {
    padding: 0 !important;
}

footer .wp-block-navigation-item a,
.site-footer .wp-block-navigation-item a,
.wp-block-template-part-footer .wp-block-navigation-item a {
    color: #94a3b8 !important; /* Slate 400 */
    font-size: 0.875rem !important;
    font-weight: 400 !important;
    text-decoration: none !important;
    display: block !important;
    padding: 6px 0 !important;
    transition: all 0.3s ease !important;
}

footer .wp-block-navigation-item a:hover,
.site-footer .wp-block-navigation-item a:hover,
.wp-block-template-part-footer .wp-block-navigation-item a:hover {
    color: #1f6c98 !important; /* Azul oficial da DIGITALUB */
    padding-left: 4px !important;
}

/* Estilo do Copyright */
footer .has-text-align-center,
.site-footer .has-text-align-center {
    font-size: 0.8rem !important;
    color: #64748b !important;
    margin-top: 40px !important;
}
