:root{
    --gm-orange:#ff5a00;
    --gm-black:#111111;
    --gm-muted:#666;
    --gm-line:#e8e8e8;
    --gm-soft:#f7f7f7;
}

.woocommerce-cart .woocommerce-notices-wrapper + .cart-empty,
.woocommerce-cart p.cart-empty.woocommerce-info{
    display:none !important;
}

.woocommerce-cart .return-to-shop{
    display:none !important;
}

.gm-b2b-empty-cart{
    width:100%;
    max-width:1440px;
    margin:0 auto 32px;
    color:var(--gm-black);
    font-family:inherit;
}

.gm-b2b-empty-cart *{box-sizing:border-box}

.gm-b2b-empty-hero{
    display:grid;
    grid-template-columns:1.05fr 1fr;
    border:1px solid var(--gm-line);
    border-radius:12px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.035);
}

.gm-b2b-empty-message{
    display:grid;
    grid-template-columns:150px 1fr;
    gap:28px;
    align-items:center;
    padding:42px;
    border-right:1px solid var(--gm-line);
}

.gm-b2b-cart-icon{
    width:138px;
    height:138px;
    display:grid;
    place-items:center;
    border:1px solid #dedede;
    border-radius:50%;
    background:#fff;
}

.gm-b2b-cart-icon .dashicons{
    width:auto;
    height:auto;
    font-size:64px;
    color:var(--gm-orange);
}

.gm-b2b-eyebrow{
    margin:0 0 6px;
    font-size:12px;
    font-weight:800;
    letter-spacing:.12em;
    color:var(--gm-orange);
}

.gm-b2b-empty-message h1{
    margin:0 0 12px;
    font-size:32px;
    line-height:1.1;
    font-weight:800;
}

.gm-b2b-empty-message p:not(.gm-b2b-eyebrow){
    max-width:520px;
    margin:0;
    color:var(--gm-muted);
    font-size:16px;
    line-height:1.6;
}

.gm-b2b-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:24px;
}

.gm-b2b-actions .button{
    min-height:48px;
    padding:13px 22px !important;
    border-radius:7px !important;
    font-weight:700 !important;
    text-decoration:none !important;
}

.gm-b2b-primary{
    border:1px solid var(--gm-orange) !important;
    background:var(--gm-orange) !important;
    color:#fff !important;
}

.gm-b2b-secondary{
    border:1px solid #bbb !important;
    background:#fff !important;
    color:var(--gm-black) !important;
}

.gm-b2b-reasons{padding:38px 34px}
.gm-b2b-reasons h2{margin:0 0 28px;font-size:18px}
.gm-b2b-reason-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 24px}
.gm-b2b-reason-grid div{position:relative;padding-left:18px}
.gm-b2b-reason-grid div:before{content:"";position:absolute;left:0;top:5px;width:7px;height:7px;border-radius:50%;background:var(--gm-orange)}
.gm-b2b-reason-grid strong{display:block;margin-bottom:5px;font-size:14px}
.gm-b2b-reason-grid span{display:block;color:var(--gm-muted);font-size:12px;line-height:1.45}

.gm-b2b-discovery-grid{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:16px;
    margin-top:16px;
}

.gm-b2b-search-card,.gm-b2b-category-card{
    min-height:220px;
    border:1px solid var(--gm-line);
    border-radius:10px;
    background:#fff;
    padding:28px;
}

.gm-b2b-search-card h2,.gm-b2b-category-card h2{margin:0 0 8px;font-size:23px}
.gm-b2b-search-card p,.gm-b2b-category-card p{margin:0;color:var(--gm-muted);font-size:14px;line-height:1.5}

.gm-b2b-product-search{display:flex;margin-top:24px;border:1px solid #d7d7d7;border-radius:7px;overflow:hidden;background:#fff}
.gm-b2b-product-search input[type="search"]{flex:1;min-width:0;height:48px;padding:0 14px;border:0 !important;outline:0;box-shadow:none !important}
.gm-b2b-product-search button{height:48px;border:0;background:var(--gm-black);color:#fff;padding:0 18px;font-weight:700;cursor:pointer}
.gm-b2b-search-hints{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.gm-b2b-search-hints span{padding:5px 8px;border-radius:5px;background:#f0f0f0;color:#777;font-size:10px}

.gm-b2b-category-card{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    overflow:hidden;
    color:var(--gm-black) !important;
    text-decoration:none !important;
    transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.gm-b2b-category-card:hover{transform:translateY(-2px);border-color:#ddd;box-shadow:0 12px 30px rgba(0,0,0,.06)}
.gm-b2b-category-card>div:first-child{position:relative;z-index:2;max-width:58%}
.gm-b2b-link{display:inline-block;margin-top:20px;color:var(--gm-orange);font-weight:800;font-size:13px}

.gm-b2b-product-visual{position:absolute;right:8px;bottom:8px;width:42%;height:80%;opacity:.95}
.gm-b2b-product-visual i{position:absolute;display:block;border:1px solid #e5d5b7;background:linear-gradient(90deg,#faf0d8 0 40%,#fffdf7 40% 76%,#d6c39e 76%);border-radius:50% / 12%}
.gm-b2b-rolls i:nth-child(1){width:95px;height:125px;right:6px;bottom:5px;transform:rotate(9deg)}
.gm-b2b-rolls i:nth-child(2){width:82px;height:105px;right:88px;bottom:2px;transform:rotate(-8deg)}
.gm-b2b-rolls i:nth-child(3){width:70px;height:86px;right:50px;bottom:64px;transform:rotate(4deg)}
.gm-b2b-stretch-rolls i{background:linear-gradient(90deg,#f4f4f4 0,#fff 55%,#e7e7e7 100%);border-color:#ededed;border-radius:18px}
.gm-b2b-stretch-rolls i:nth-child(1){width:54px;height:150px;right:15px;bottom:0}
.gm-b2b-stretch-rolls i:nth-child(2){width:47px;height:120px;right:72px;bottom:0}
.gm-b2b-stretch-rolls i:nth-child(3){width:45px;height:95px;right:118px;bottom:0}

.gm-b2b-trust-bar{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    margin-top:16px;
    border:1px solid var(--gm-line);
    border-radius:9px;
    background:var(--gm-soft);
}
.gm-b2b-trust-bar span{padding:17px 20px;text-align:center;font-size:12px;font-weight:700;border-right:1px solid #ddd}
.gm-b2b-trust-bar span:last-child{border-right:0}

/* Carrinho preenchido: mantem WooCommerce funcional, mas com aparencia B2B mais limpa. */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals{
    margin-top:18px;
}
.woocommerce-cart table.shop_table{border:1px solid var(--gm-line);border-radius:10px;overflow:hidden}
.woocommerce-cart table.shop_table th{background:#f7f7f7;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.woocommerce-cart .cart_totals{padding:24px;border:1px solid var(--gm-line);border-radius:10px;background:#fff}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{background:var(--gm-orange) !important;border-radius:7px;font-weight:800}
.woocommerce-cart .quantity .qty{min-height:40px;border:1px solid #ddd;border-radius:5px}
.woocommerce-cart button[name="update_cart"]{opacity:.65}

@media(max-width:980px){
    .gm-b2b-empty-hero{grid-template-columns:1fr}
    .gm-b2b-empty-message{border-right:0;border-bottom:1px solid var(--gm-line)}
    .gm-b2b-discovery-grid{grid-template-columns:1fr}
}

@media(max-width:640px){
    .gm-b2b-empty-message{grid-template-columns:1fr;padding:25px}
    .gm-b2b-cart-icon{width:92px;height:92px}
    .gm-b2b-cart-icon .dashicons{font-size:44px}
    .gm-b2b-empty-message h1{font-size:27px}
    .gm-b2b-reason-grid{grid-template-columns:1fr}
    .gm-b2b-reasons{padding:25px}
    .gm-b2b-trust-bar{grid-template-columns:1fr 1fr}
    .gm-b2b-trust-bar span{border-bottom:1px solid #ddd}
    .gm-b2b-category-card>div:first-child{max-width:65%}
}

/* v1.2.0: neutraliza mensagens de carrinho vazio geradas pelo tema. */
.woocommerce-cart .cart-empty,
.woocommerce-cart .woocommerce-info.cart-empty,
.woocommerce-cart .empty-cart,
.woocommerce-cart .empty-cart-content > h1,
.woocommerce-cart .empty-cart-content > h2,
.woocommerce-cart .empty-cart-content > p,
body.page-id-0 .cart-empty{
    display:none !important;
}
.gm-b2b-page-title{margin:0 0 20px;padding:0 2px}
.gm-b2b-page-title span{display:block;margin-bottom:8px;color:#888;font-size:12px}
.gm-b2b-page-title h1{margin:0;font-size:28px;line-height:1.1;font-weight:800;color:var(--gm-black)}
.gm-b2b-empty-message h2{margin:0 0 12px;font-size:32px;line-height:1.1;font-weight:800}

/* v1.4.0 - Página de confirmação do pedido / catálogo B2B */
.woocommerce-order-received .woocommerce,
.woocommerce-order-received .woocommerce-order{
    width:100%;
}

.woocommerce-order-received .woocommerce-order{
    max-width:1240px;
    margin:0 auto;
}

.gm-b2b-thankyou{
    margin:0 0 26px;
    color:var(--gm-black);
}

.gm-b2b-thankyou-card{
    display:grid;
    grid-template-columns:116px minmax(0,1fr);
    gap:30px;
    align-items:start;
    padding:40px 42px;
    border:1px solid var(--gm-line);
    border-radius:14px;
    background:#fff;
    box-shadow:0 10px 35px rgba(0,0,0,.045);
}

.gm-b2b-success-icon{
    width:104px;
    height:104px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#fff7f2;
}

.gm-b2b-success-icon svg{
    width:72px;
    height:72px;
    overflow:visible;
}

.gm-b2b-success-icon circle{
    fill:none;
    stroke:var(--gm-orange);
    stroke-width:3;
}

.gm-b2b-success-icon path{
    fill:none;
    stroke:var(--gm-orange);
    stroke-width:4;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.gm-b2b-thankyou-copy h1{
    margin:2px 0 10px;
    color:var(--gm-black);
    font-size:34px;
    line-height:1.12;
    font-weight:800;
}

.gm-b2b-thankyou-copy > p:not(.gm-b2b-eyebrow){
    max-width:760px;
    margin:0;
    color:var(--gm-muted);
    font-size:16px;
    line-height:1.65;
}

.gm-b2b-order-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    max-width:720px;
    margin-top:27px;
    border:1px solid var(--gm-line);
    border-radius:9px;
    overflow:hidden;
    background:#fafafa;
}

.gm-b2b-order-meta > div{
    padding:16px 20px;
    border-right:1px solid var(--gm-line);
}

.gm-b2b-order-meta > div:last-child{border-right:0}
.gm-b2b-order-meta span{display:block;margin-bottom:4px;color:#777;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.gm-b2b-order-meta strong{display:block;color:var(--gm-black);font-size:17px}
.gm-b2b-order-meta .gm-b2b-status{color:#267a3c}

.gm-b2b-thankyou-actions{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:24px;
}

.gm-b2b-thankyou-actions .button{
    min-height:46px;
    padding:12px 20px !important;
    border-radius:7px !important;
    font-weight:800 !important;
    text-decoration:none !important;
}

.gm-b2b-next-steps{
    display:grid;
    grid-template-columns:minmax(0,1fr) 80px minmax(0,1fr) 80px minmax(0,1fr);
    align-items:center;
    gap:12px;
    margin-top:16px;
    padding:24px 30px;
    border:1px solid var(--gm-line);
    border-radius:12px;
    background:#fafafa;
}

.gm-b2b-next-step{
    display:flex;
    align-items:center;
    gap:13px;
}

.gm-b2b-step-number{
    flex:0 0 36px;
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border:1px solid #d7d7d7;
    border-radius:50%;
    background:#fff;
    color:#777;
    font-size:13px;
    font-weight:800;
}

.gm-b2b-next-step.is-active .gm-b2b-step-number{
    border-color:var(--gm-orange);
    background:var(--gm-orange);
    color:#fff;
}

.gm-b2b-next-step strong{display:block;margin-bottom:3px;font-size:13px;color:var(--gm-black)}
.gm-b2b-next-step small{display:block;color:#777;font-size:11px;line-height:1.4}
.gm-b2b-step-line{height:1px;background:#ddd}

.woocommerce-order-received .woocommerce-order-details{
    margin:18px 0 0 !important;
    padding:28px 30px;
    border:1px solid var(--gm-line);
    border-radius:12px;
    background:#fff;
    box-shadow:0 8px 28px rgba(0,0,0,.03);
}

.woocommerce-order-received .woocommerce-order-details__title{
    margin:0 0 18px !important;
    color:var(--gm-black);
    font-size:21px !important;
    line-height:1.2;
    font-weight:800;
}

.woocommerce-order-received .woocommerce-order-details table.shop_table{
    margin:0 !important;
    border:0 !important;
    border-collapse:separate !important;
    border-spacing:0 !important;
}

.woocommerce-order-received .woocommerce-order-details table.shop_table thead th{
    padding:12px 15px !important;
    border:0 !important;
    border-bottom:1px solid var(--gm-line) !important;
    background:#f7f7f7;
    color:#666;
    font-size:11px;
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.05em;
}

.woocommerce-order-received .woocommerce-order-details table.shop_table tbody td{
    padding:18px 15px !important;
    border:0 !important;
    border-bottom:1px solid #efefef !important;
    color:var(--gm-black);
    font-size:15px;
}

.woocommerce-order-received .woocommerce-order-details table.shop_table tbody tr:last-child td{
    border-bottom:0 !important;
}

.woocommerce-order-received .woocommerce-order-details .product-name a{
    color:var(--gm-black) !important;
    font-weight:750;
    text-decoration:none !important;
}

.woocommerce-order-received .woocommerce-order-details .product-quantity{
    display:inline-flex;
    margin-left:7px;
    padding:3px 8px;
    border-radius:20px;
    background:#fff2ea;
    color:var(--gm-orange);
    font-size:12px;
    font-weight:800;
}

@media(max-width:800px){
    .gm-b2b-thankyou-card{grid-template-columns:1fr;padding:28px 24px}
    .gm-b2b-success-icon{width:82px;height:82px}
    .gm-b2b-success-icon svg{width:58px;height:58px}
    .gm-b2b-thankyou-copy h1{font-size:28px}
    .gm-b2b-order-meta{grid-template-columns:1fr}
    .gm-b2b-order-meta > div{border-right:0;border-bottom:1px solid var(--gm-line)}
    .gm-b2b-order-meta > div:last-child{border-bottom:0}
    .gm-b2b-next-steps{grid-template-columns:1fr;gap:16px}
    .gm-b2b-step-line{display:none}
    .woocommerce-order-received .woocommerce-order-details{padding:22px 18px}
}

/* v1.5.0 - Carrinho preenchido TPLEX B2B */
.gm-b2b-filled-cart{max-width:1440px;margin:0 auto 34px;color:var(--gm-black);font-family:inherit}.gm-b2b-filled-cart *{box-sizing:border-box}
.gm-b2b-cart-title{margin-bottom:22px}.gm-b2b-cart-title span b{padding:0 7px;color:#aaa}
.gm-b2b-cart-steps{display:grid;grid-template-columns:1.05fr 1fr 1fr;max-width:970px;margin:0 0 18px;border-bottom:1px solid var(--gm-line);background:#fafafa;border-radius:10px 10px 0 0;overflow:hidden}
.gm-b2b-cart-step{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:14px 18px;color:#666;font-size:14px;border-right:1px solid #eee}.gm-b2b-cart-step:last-child{border-right:0}.gm-b2b-cart-step .dashicons{color:#666}.gm-b2b-cart-step.is-active{background:#fff;color:var(--gm-orange)}.gm-b2b-cart-step.is-active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:var(--gm-orange)}.gm-b2b-cart-step.is-active .dashicons{color:var(--gm-orange)}
.gm-b2b-cart-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.gm-b2b-cart-form{margin:0!important}.gm-b2b-cart-card{border:1px solid var(--gm-line);border-radius:12px;background:#fff;padding:0 28px;box-shadow:0 8px 28px rgba(0,0,0,.025)}
.gm-b2b-cart-grid-head,.gm-b2b-cart-row{display:grid;grid-template-columns:1.2fr 1fr 190px;gap:24px}.gm-b2b-cart-grid-head{padding:22px 0 15px;border-bottom:1px solid var(--gm-line);font-size:13px;font-weight:800}.gm-b2b-cart-row{align-items:center;padding:24px 0;border-bottom:1px solid #eee}.gm-b2b-cart-product{display:flex;gap:18px;align-items:center;min-width:0}.gm-b2b-product-thumb{flex:0 0 105px;width:105px}.gm-b2b-product-thumb img{display:block;width:100%;height:92px;object-fit:contain;border-radius:7px;background:#fafafa}.gm-b2b-product-info{min-width:0}.gm-b2b-product-name,.gm-b2b-product-info>strong{display:block;margin-bottom:8px;color:var(--gm-black)!important;text-decoration:none!important;font-size:17px;font-weight:800;line-height:1.3}.gm-b2b-product-meta{display:block;margin-top:4px;color:#777;font-size:12px}.gm-b2b-product-meta b{color:#555}.gm-b2b-product-meta a{color:inherit!important;text-decoration:none!important}
.gm-b2b-cart-specs{color:#333;font-size:13px;line-height:1.55}.gm-b2b-cart-specs ul{margin:0;padding-left:18px}.gm-b2b-cart-specs li{margin:4px 0}.gm-b2b-formatted-data dl.variation{margin:0}.gm-b2b-formatted-data dt,.gm-b2b-formatted-data dd{display:inline;margin:0 4px 5px 0}.gm-b2b-formatted-data dd:after{content:"";display:block}.gm-b2b-spec-muted{color:#888;font-size:12px}
.gm-b2b-cart-qty{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.gm-b2b-cart-qty .quantity{display:flex;align-items:center}.gm-b2b-cart-qty input.qty{width:72px!important;min-height:44px!important;text-align:center;border:1px solid #ddd!important;border-radius:7px!important;background:#fff}.gm-b2b-remove{display:inline-flex;align-items:center;gap:5px;color:#777!important;text-decoration:none!important;font-size:12px}.gm-b2b-remove .dashicons{font-size:16px;width:16px;height:16px}.gm-b2b-remove:hover{color:#c93426!important}
.gm-b2b-cart-actions-row{display:flex;align-items:center;gap:12px;padding:20px 0}.gm-b2b-cart-actions-row .button{min-height:42px;padding:10px 16px!important;border-radius:7px!important;font-size:12px!important;font-weight:750!important;text-decoration:none!important}.gm-b2b-empty-link{margin-left:auto;display:inline-flex!important;align-items:center;gap:6px}.gm-b2b-empty-link .dashicons{font-size:16px;width:16px;height:16px}
.gm-b2b-cart-sidebar{position:sticky;top:28px}.gm-b2b-summary-card{padding:24px;border:1px solid var(--gm-line);border-radius:12px;background:#fff;box-shadow:0 8px 28px rgba(0,0,0,.025)}.gm-b2b-summary-card h2{margin:0 0 18px;font-size:22px}.gm-b2b-summary-count{display:flex;gap:13px;padding:17px;border-radius:9px;background:#fff4ed}.gm-b2b-summary-count>.dashicons{flex:0 0 28px;width:28px;height:28px;font-size:28px;color:var(--gm-black)}.gm-b2b-summary-count strong{display:block;margin-bottom:4px;font-size:14px}.gm-b2b-summary-count p{margin:0;color:#555;font-size:12px;line-height:1.5}.gm-b2b-summary-card .button{display:flex!important;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;margin-top:12px;padding:12px 16px!important;border-radius:7px!important;font-size:13px!important;font-weight:800!important;text-decoration:none!important}.gm-b2b-checkout{justify-content:space-between!important}.gm-b2b-support .dashicons{font-size:18px;width:18px;height:18px}.gm-b2b-security-card{display:flex;gap:14px;margin-top:16px;padding:19px;border-radius:10px;background:#fff4ed}.gm-b2b-security-card>.dashicons{width:32px;height:32px;font-size:32px;color:var(--gm-orange)}.gm-b2b-security-card strong{display:block;margin-bottom:4px;font-size:13px}.gm-b2b-security-card p{margin:0;color:#555;font-size:11px;line-height:1.5}
.gm-b2b-cart-benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:22px;padding:18px 0;border-top:1px solid var(--gm-line);border-bottom:1px solid var(--gm-line)}.gm-b2b-cart-benefits>div{display:flex;gap:13px;align-items:flex-start;padding:0 22px;border-right:1px solid #e7e7e7}.gm-b2b-cart-benefits>div:last-child{border-right:0}.gm-b2b-cart-benefits .dashicons{flex:0 0 32px;width:32px;height:32px;font-size:32px;color:var(--gm-orange)}.gm-b2b-cart-benefits p{margin:0}.gm-b2b-cart-benefits strong{display:block;font-size:12px}.gm-b2b-cart-benefits small{display:block;margin-top:3px;color:#666;font-size:10px;line-height:1.4}
/* Oculta estruturas visuais de totais do WooCommerce porque este fluxo e catalogo sem precos. */
.woocommerce-cart .cart-collaterals,.woocommerce-cart .cart_totals{display:none!important}.gm-b2b-filled-cart button[name="update_cart"]{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
@media(max-width:1050px){.gm-b2b-cart-layout{grid-template-columns:1fr}.gm-b2b-cart-sidebar{position:static}.gm-b2b-cart-steps{max-width:none}.gm-b2b-cart-benefits{grid-template-columns:1fr 1fr}.gm-b2b-cart-benefits>div:nth-child(2){border-right:0}}
@media(max-width:760px){.gm-b2b-cart-steps{grid-template-columns:1fr}.gm-b2b-cart-step{justify-content:flex-start;border-right:0;border-bottom:1px solid #eee}.gm-b2b-cart-grid-head{display:none}.gm-b2b-cart-card{padding:0 18px}.gm-b2b-cart-row{grid-template-columns:1fr;gap:16px}.gm-b2b-product-thumb{flex-basis:88px;width:88px}.gm-b2b-product-thumb img{height:80px}.gm-b2b-cart-qty{flex-direction:row;align-items:center;justify-content:space-between}.gm-b2b-cart-actions-row{flex-direction:column;align-items:stretch}.gm-b2b-empty-link{margin-left:0}.gm-b2b-cart-actions-row .button{justify-content:center!important;width:100%}.gm-b2b-cart-benefits{grid-template-columns:1fr}.gm-b2b-cart-benefits>div{padding:14px 8px;border-right:0;border-bottom:1px solid #eee}.gm-b2b-cart-benefits>div:last-child{border-bottom:0}}
