.bb-cotizador-root{font-family:inherit;color:#222;max-width:1080px;margin:0 auto;line-height:1.45}.bb-cotizador-root *{box-sizing:border-box}.bb-shell{padding:12px 2px 32px}.bb-header{text-align:center;padding:20px 10px 25px}.bb-mark{font-size:14px;font-weight:800;letter-spacing:.16em;color:#333}.bb-mark span{font-size:11px;color:#888;letter-spacing:.06em}.bb-header h2{font-size:clamp(25px,3.3vw,35px);line-height:1.17;margin:12px 0 8px;color:#222}.bb-header p,.bb-muted{color:#666;margin:0}.bb-cats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.bb-cat,.bb-product{font:inherit;text-align:left;background:white;border:1px solid #e5e2de;border-radius:13px;cursor:pointer;color:#252525;transition:all .15s ease;box-shadow:none}.bb-cat{min-height:146px;padding:16px 13px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.bb-cat:hover,.bb-product:hover{border-color:#aaa}.bb-cat.active,.bb-product.active{border:2px solid #3e4441;background:#f5f5f2;padding:15px 12px}.bb-cat strong{font-size:14px;line-height:1.25}.bb-cat small,.bb-product small{font-size:12px;color:#707070;line-height:1.35}.bb-cat-icon{font-size:25px;line-height:1;color:#535955}.bb-filter{margin:22px 0 0;background:#f7f7f5;padding:14px 16px;border-radius:12px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.bb-filter label,.bb-field label,.bb-field legend{font-size:14px;font-weight:600}.bb-filter select,.bb-field input:not([type=checkbox]):not([type=radio]),.bb-field select,.bb-field textarea{background:white;color:#222;border:1px solid #d8d8d8;border-radius:8px;font:inherit;padding:10px 12px;min-height:43px;max-width:100%;width:100%}.bb-filter select{width:auto;min-width:210px}.bb-hint{font-size:12px;color:#777}.bb-section-title{display:flex;justify-content:space-between;gap:10px;align-items:center;margin:24px 0 12px}.bb-section-title h3{font-size:20px;margin:0}.bb-section-title span{font-size:12px;color:#888}.bb-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.bb-product{padding:15px;display:flex;flex-direction:column;gap:7px;min-height:120px}.bb-product strong{font-size:15px}.bb-product-price{color:#343d38;font-size:14px;font-weight:700;margin-top:auto}.bb-detail{margin-top:24px;border:1px solid #e2e1de;border-radius:16px;background:#fff;padding:23px}.bb-detail h4{font-size:20px;margin:8px 0 6px}.bb-field{display:block;margin:18px 0;border:0;padding:0;min-width:0}.bb-field>label,.bb-field legend{display:block;margin-bottom:7px}.bb-field legend{padding:0}.bb-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.bb-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.bb-choice{display:flex!important;align-items:center;gap:10px;padding:12px!important;border:1px solid #e1e0dc;border-radius:9px;margin:7px 0!important;cursor:pointer;font-size:14px!important;font-weight:400!important}.bb-options .bb-choice{margin:0!important}.bb-choice input{accent-color:#343d38;flex-shrink:0;width:16px;height:16px}.bb-choice span{flex:1;line-height:1.4}.bb-choice strong{white-space:nowrap;font-size:13px}.bb-choice small{display:block;color:#777;margin-top:3px}.bb-indented{margin-left:21px!important;background:#f8f8f6}.bb-included{background:#f5f6f4;border-left:3px solid #66736a;padding:13px 16px;margin:12px 0;border-radius:0 7px 7px 0;font-size:14px}.bb-summary{background:#f8f8f6;border-radius:12px;padding:18px;margin-top:20px}.bb-summary h3{font-size:18px;margin:0 0 14px}.bb-line{display:flex;justify-content:space-between;gap:16px;padding:7px 0;font-size:14px}.bb-line span{color:#565656}.bb-total{border-top:1px solid #d9d9d5;margin-top:10px;padding-top:15px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:18px;font-weight:700}.bb-total strong{font-size:25px}.bb-summary p{font-size:12px;color:#777;margin:14px 0 0}.bb-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:16px}.bb-actions button{font:inherit;font-weight:700;border-radius:9px;padding:12px 20px;border:1px solid #333;cursor:pointer}.bb-primary{background:#fff;color:#222}.bb-whatsapp{background:#303e36;color:white}.bb-status{display:block;font-size:13px;margin-top:7px;color:#44564a}.bb-footer{text-align:center;margin-top:25px;color:#999;font-size:12px}@media(max-width:850px){.bb-cats{grid-template-columns:repeat(3,1fr)}.bb-products{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.bb-shell{padding:6px 0 24px}.bb-cats{grid-template-columns:repeat(2,minmax(0,1fr))}.bb-cat{min-height:125px;padding:12px}.bb-cat strong{font-size:13px}.bb-product{padding:12px}.bb-products{grid-template-columns:1fr 1fr}.bb-detail{padding:15px}.bb-two,.bb-options{grid-template-columns:1fr}.bb-choice{flex-wrap:wrap}.bb-total strong{font-size:21px}.bb-filter select{width:100%}.bb-actions button{width:100%}}@media(max-width:390px){.bb-products{grid-template-columns:1fr}}

.bb-addon-qty{background:#f9f9f8;border:1px solid #e6e4df;border-radius:10px;padding:14px;margin-top:10px}.bb-addon-qty>label{display:block;font-size:14px;font-weight:600;margin-bottom:8px}.bb-addon-qty select{width:100%;max-width:500px;min-height:43px;padding:9px;background:#fff;border:1px solid #d7d6d3;border-radius:8px}.bb-addon-qty small{display:block;color:#796e5c;margin-top:6px}.bb-notice{background:#fff7e9;color:#6d521d;border:1px solid #efdbb8;border-radius:10px;padding:12px 15px;font-size:14px;margin:14px 0}.bb-cotizador-root .bb-product:focus-visible,.bb-cotizador-root .bb-cat:focus-visible{outline:3px solid #b5a48a;outline-offset:2px}

.bb-actions .bb-whatsapp:disabled{opacity:.5;cursor:not-allowed;background:#777;border-color:#777}.bb-actions .bb-whatsapp{min-width:260px}

/* Cotizador Black Back v1.6: carrito interno */
.bb-cart{margin:24px 0 6px;border:1px solid #dcded9;background:#fff;border-radius:16px;padding:22px;scroll-margin-top:24px}.bb-cart-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}.bb-cart-head h3{margin:0;font-size:21px}.bb-cart-count{font-size:12px;font-weight:500;color:#666}.bb-cart-empty{padding:20px;background:#f8f8f6;border-radius:10px;margin-top:14px;color:#646464}.bb-cart-items{margin-top:12px}.bb-cart-item{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:16px 0;border-bottom:1px solid #ededeb}.bb-cart-item-main{min-width:0;flex:1}.bb-cart-item-main strong{display:block;font-size:15px}.bb-cart-item-main small{display:block;color:#686868;margin-top:5px;font-size:12px;overflow-wrap:anywhere}.bb-cart-item-side{text-align:right;flex-shrink:0}.bb-cart-item-side strong{white-space:nowrap;font-size:16px}.bb-cart-item-side div{display:flex;gap:6px;margin-top:9px;justify-content:end}.bb-cart-item-side button{font:inherit;font-size:12px;padding:6px 9px;border-radius:7px;border:1px solid #d4d7d2;background:white;color:#343c35;cursor:pointer}.bb-cart-total{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 0 15px;font-weight:700;font-size:18px}.bb-cart-total strong{font-size:26px;white-space:nowrap}.bb-add-cart,.bb-cart-send{font:inherit;border-radius:9px;padding:14px 20px;border:1px solid #263c30;cursor:pointer;font-weight:700;width:100%;background:#283c31;color:#fff}.bb-add-cart:hover,.bb-cart-send:hover{background:#3e5848}.bb-cart-note{margin:12px 0 0;font-size:12px}.bb-cart-status{font-size:13px;color:#2f6244;margin-top:8px}.bb-cart-send:disabled{opacity:.55;cursor:not-allowed}@media(max-width:560px){.bb-cart{padding:15px}.bb-cart-item-side{max-width:115px}.bb-cart-total strong{font-size:22px}}

/* v1.9: cuatro categorías centradas, texto e íconos centrados */
.bb-cotizador-root .bb-cats{grid-template-columns:repeat(4,minmax(0,1fr));justify-content:center;max-width:1000px;margin:0 auto}
.bb-cotizador-root .bb-cat{align-items:center;text-align:center;justify-content:center}
@media(max-width:850px){.bb-cotizador-root .bb-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.bb-cotizador-root .bb-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v1.14: subcategorías digitales */
.bb-cotizador-root .bb-digital-tabs{display:flex;gap:9px;flex-wrap:wrap;justify-content:center;margin:20px 0 14px}
.bb-cotizador-root .bb-digital-tab{font:inherit;font-size:14px;font-weight:600;border:1px solid #d6d8d5;background:#fff;color:#333;padding:11px 15px;border-radius:24px;cursor:pointer}
.bb-cotizador-root .bb-digital-tab.active{background:#343d38;color:#fff;border-color:#343d38}
.bb-cotizador-root .bb-included ul{margin:8px 0;padding-left:22px}
@media(max-width:560px){.bb-cotizador-root .bb-digital-tab{flex:1 1 100%;text-align:center}}

/* v1.16: typography scoped to Black Back cotizador only */
.bb-cotizador-root, .bb-cotizador-root button, .bb-cotizador-root input, .bb-cotizador-root select, .bb-cotizador-root textarea {font-family:"Poppins",Arial,sans-serif;}

/* v1.17: Black Back hover, focus and selected contrast — scoped to this plugin. */
.bb-cotizador-root {
  --bb-verde: #848872;
  --bb-tiza: #f2f1ee;
  --bb-verde-borde: #848872;
}
/* Inactive cards are light and readable, including Elementor button defaults. */
.bb-cotizador-root button.bb-cat,
.bb-cotizador-root button.bb-product,
.bb-cotizador-root button.bb-digital-tab {
  background: #fff !important;
  color: var(--bb-verde) !important;
  border-color: #c6c9bd !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.bb-cotizador-root button.bb-cat strong,
.bb-cotizador-root button.bb-product strong,
.bb-cotizador-root button.bb-cat .bb-cat-icon,
.bb-cotizador-root button.bb-product .bb-product-price,
.bb-cotizador-root button.bb-digital-tab strong {
  color: var(--bb-verde) !important;
}
.bb-cotizador-root button.bb-cat small,
.bb-cotizador-root button.bb-product small { color: #555b4a !important; }
/* Hover and keyboard focus: dark green background, light chalk typography. */
.bb-cotizador-root button.bb-cat:hover,
.bb-cotizador-root button.bb-product:hover,
.bb-cotizador-root button.bb-digital-tab:hover,
.bb-cotizador-root button.bb-cat:focus-visible,
.bb-cotizador-root button.bb-product:focus-visible,
.bb-cotizador-root button.bb-digital-tab:focus-visible,
.bb-cotizador-root button.bb-cat.active,
.bb-cotizador-root button.bb-product.active,
.bb-cotizador-root button.bb-digital-tab.active {
  background: var(--bb-verde) !important;
  border-color: var(--bb-verde-borde) !important;
  color: var(--bb-tiza) !important;
  box-shadow: 0 5px 14px rgba(65, 69, 53, .16) !important;
  opacity: 1 !important;
}
.bb-cotizador-root button.bb-cat:is(:hover,:focus-visible,.active) :is(strong,small,.bb-cat-icon),
.bb-cotizador-root button.bb-product:is(:hover,:focus-visible,.active) :is(strong,small,.bb-product-price),
.bb-cotizador-root button.bb-digital-tab:is(:hover,:focus-visible,.active) strong {
  color: var(--bb-tiza) !important;
  opacity: 1 !important;
}
.bb-cotizador-root button.bb-cat.active,
.bb-cotizador-root button.bb-product.active { outline-offset: 1px; }
@media (prefers-reduced-motion: reduce) {
  .bb-cotizador-root button.bb-cat,
  .bb-cotizador-root button.bb-product,
  .bb-cotizador-root button.bb-digital-tab { transition: none !important; }
}
