
/* ══ Netebu · carrito, configuracion y pago ════════════════════ */
#order-standard_cart{
  --nb-blue:#4A90D9; --nb-violet:#7B5CF6; --nb-pink:#E84098;
  --nb-grad:linear-gradient(135deg,#4A90D9 0%,#7B5CF6 50%,#E84098 100%);
  --nb-grad-suave:linear-gradient(135deg,rgba(74,144,217,0.16) 0%,rgba(123,92,246,0.16) 50%,rgba(232,64,152,0.16) 100%);
  --nb-ink:#14111F; --nb-ink-2:#4C4560; --nb-ink-3:#726C85;
  --nb-line:#E9E4F3; --nb-line-2:#D8D0EC;
  --nb-paper:#FFFFFF; --nb-paper-2:#FAF8FE;
  --nb-violet-aa:#7656F6; --nb-ok:#0F9268; --nb-no:#C4453F;
  --nb-ff-d:"Outfit",system-ui,-apple-system,sans-serif;
  --nb-ff-b:"Figtree",system-ui,-apple-system,sans-serif;
  font-family:var(--nb-ff-b);
}
/* Croster declara h1..h4{color:#211b65} sobre el elemento */
#order-standard_cart h1,#order-standard_cart h2,
#order-standard_cart h3,#order-standard_cart h4{
  font-family:var(--nb-ff-d) !important; color:var(--nb-ink) !important;
  letter-spacing:-0.022em;
}

/* ── cabecera y migas ─────────────────────────────────────── */
#order-standard_cart .header-lined{
  border-bottom:1px solid var(--nb-line) !important;
  padding-bottom:18px; margin-bottom:30px !important;
}
#order-standard_cart .header-lined h1,
#order-standard_cart .header-lined h2{font-weight:700 !important}
#order-standard_cart .header-lined span,
#order-standard_cart .header-lined p{color:var(--nb-ink-3) !important}
#order-standard_cart .header-lined .breadcrumb li a{color:var(--nb-ink-3) !important}
#order-standard_cart .header-lined .breadcrumb li a:hover{color:var(--nb-violet-aa) !important}
#order-standard_cart .header-lined .breadcrumb li.active{
  color:var(--nb-ink-2) !important; font-weight:500;
}

/* ── carrito vacio ────────────────────────────────────────── */
/* El icono del tema es `fad` = FontAwesome Duotone, que se dibuja
   con DOS capas de pseudoelementos (:before opacity 0.4, :after
   opacity 1). Un `background-clip:text` sobre el <i> las funde en
   una mancha solida, porque el fondo no se hereda al pseudoelemento.
   Se apaga la fuente y se dibuja el carrito con una mascara SVG.   */
#order-standard_cart .alert-lg.no-data{
  background:var(--nb-paper) !important;
  border:1px solid var(--nb-line) !important;
  border-radius:20px !important;
  padding:52px 32px 44px !important;
  max-width:640px; margin:8px auto 48px !important; text-align:center;
  box-shadow:0 1px 2px rgba(20,17,31,0.05), 0 22px 50px -28px rgba(20,17,31,0.22);
}
#order-standard_cart .alert-lg.no-data .icon{
  width:92px; height:92px; margin:0 auto 26px;
  border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:var(--nb-grad-suave);
  box-shadow:inset 0 0 0 1px rgba(123,92,246,0.18);
}
#order-standard_cart .alert-lg.no-data .icon i{
  display:block; width:42px; height:42px;
  font-size:0 !important; color:transparent !important;
  background:var(--nb-grad);
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3.4%203.4h2.3l2.6%2011.4h9.9l2.4-7.7H7.2%27%2F%3E%3Ccircle%20cx%3D%2710.4%27%20cy%3D%2719.4%27%20r%3D%271.5%27%2F%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%2719.4%27%20r%3D%271.5%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M3.4%203.4h2.3l2.6%2011.4h9.9l2.4-7.7H7.2%27%2F%3E%3Ccircle%20cx%3D%2710.4%27%20cy%3D%2719.4%27%20r%3D%271.5%27%2F%3E%3Ccircle%20cx%3D%2718%27%20cy%3D%2719.4%27%20r%3D%271.5%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}
#order-standard_cart .alert-lg.no-data .icon i:before,
#order-standard_cart .alert-lg.no-data .icon i:after{content:none !important}
#order-standard_cart .alert-lg.no-data h4{
  font-weight:700 !important; font-size:1.5rem !important;
  margin:0 0 8px !important; letter-spacing:-0.025em;
}
#order-standard_cart .alert-lg.no-data .nb-sub{
  color:var(--nb-ink-3); font-size:0.98rem; margin:0 0 26px;
  font-family:var(--nb-ff-b);
}
/* aqui el boton de seguir comprando SI es la accion principal */
#order-standard_cart .alert-lg.no-data #continueShopping{
  background:var(--nb-grad) !important; border:0 !important; color:#fff !important;
  padding:13px 30px !important; font-size:1rem !important;
  box-shadow:0 12px 28px -12px rgba(123,92,246,0.55);
}
#order-standard_cart .alert-lg.no-data #continueShopping:hover{
  transform:translateY(-2px); color:#fff !important;
  box-shadow:0 18px 34px -14px rgba(123,92,246,0.66);
}

/* accesos rapidos, anadidos por el script del final */
#order-standard_cart .nb-atajos{margin-top:34px}
#order-standard_cart .nb-atajos .nb-atajos-tit{
  display:block; position:relative; margin-bottom:20px;
  font-family:var(--nb-ff-d); font-weight:600; font-size:0.78rem;
  letter-spacing:0.14em; text-transform:uppercase; color:var(--nb-ink-3);
}
#order-standard_cart .nb-atajos .nb-atajos-tit:before,
#order-standard_cart .nb-atajos .nb-atajos-tit:after{
  content:""; position:absolute; top:50%; width:calc(50% - 92px); height:1px;
  background:var(--nb-line-2);
}
#order-standard_cart .nb-atajos .nb-atajos-tit:before{left:0}
#order-standard_cart .nb-atajos .nb-atajos-tit:after{right:0}
#order-standard_cart .nb-atajos-grid{
  display:grid; grid-template-columns:repeat(4, minmax(0,1fr)); gap:12px;
}
#order-standard_cart .nb-atajos-grid a{
  display:flex; flex-direction:column; align-items:center; gap:9px;
  padding:18px 8px; border-radius:14px; text-decoration:none;
  border:1px solid var(--nb-line); background:var(--nb-paper-2);
  font-family:var(--nb-ff-d); font-weight:600; font-size:0.86rem;
  color:var(--nb-ink); line-height:1.25;
  transition:border-color 0.22s ease, transform 0.22s ease, box-shadow 0.22s ease;
}
#order-standard_cart .nb-atajos-grid a:hover{
  border-color:var(--nb-violet); transform:translateY(-3px);
  box-shadow:0 14px 28px -18px rgba(123,92,246,0.55);
  color:var(--nb-ink);
}
#order-standard_cart .nb-atajos-grid a i{
  width:26px; height:26px; display:block; background:var(--nb-grad);
}
#order-standard_cart .nb-atajos-grid a[data-nb="dominio"] i{
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M3%2012h18%27%2F%3E%3Cpath%20d%3D%27M12%203a15%2015%200%200%201%200%2018a15%2015%200%200%201%200-18z%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Ccircle%20cx%3D%2712%27%20cy%3D%2712%27%20r%3D%279%27%2F%3E%3Cpath%20d%3D%27M3%2012h18%27%2F%3E%3Cpath%20d%3D%27M12%203a15%2015%200%200%201%200%2018a15%2015%200%200%201%200-18z%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}
#order-standard_cart .nb-atajos-grid a[data-nb="hosting"] i{
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M7%2017.6C4.7%2017.6%203%2015.8%203%2013.6C3%2011.7%204.4%2010%206.2%209.7C6.7%207%209.1%205%2012%205C15.1%205%2017.7%207.4%2017.9%2010.5C19.7%2010.9%2021%2012.5%2021%2014.4C21%2016.2%2019.6%2017.6%2017.8%2017.6Z%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Cpath%20d%3D%27M7%2017.6C4.7%2017.6%203%2015.8%203%2013.6C3%2011.7%204.4%2010%206.2%209.7C6.7%207%209.1%205%2012%205C15.1%205%2017.7%207.4%2017.9%2010.5C19.7%2010.9%2021%2012.5%2021%2014.4C21%2016.2%2019.6%2017.6%2017.8%2017.6Z%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}
#order-standard_cart .nb-atajos-grid a[data-nb="vps"] i{
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%274%27%20width%3D%2718%27%20height%3D%276.4%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%273%27%20y%3D%2713.6%27%20width%3D%2718%27%20height%3D%276.4%27%20rx%3D%271.6%27%2F%3E%3Cpath%20d%3D%27M6.6%207.2h.01M6.6%2016.8h.01%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%273%27%20y%3D%274%27%20width%3D%2718%27%20height%3D%276.4%27%20rx%3D%271.6%27%2F%3E%3Crect%20x%3D%273%27%20y%3D%2713.6%27%20width%3D%2718%27%20height%3D%276.4%27%20rx%3D%271.6%27%2F%3E%3Cpath%20d%3D%27M6.6%207.2h.01M6.6%2016.8h.01%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}
#order-standard_cart .nb-atajos-grid a[data-nb="ssl"] i{
  -webkit-mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274.2%27%20y%3D%2710.4%27%20width%3D%2715.6%27%20height%3D%2710%27%20rx%3D%272.2%27%2F%3E%3Cpath%20d%3D%27M8.2%2010.4V7.6a3.8%203.8%200%200%201%207.6%200v2.8%27%2F%3E%3Cpath%20d%3D%27M12%2014.4v2.2%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
  mask:url("data:image/svg+xml,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2024%2024%27%20fill%3D%27none%27%20stroke%3D%27%23000%27%20stroke-width%3D%271.7%27%20stroke-linecap%3D%27round%27%20stroke-linejoin%3D%27round%27%3E%3Crect%20x%3D%274.2%27%20y%3D%2710.4%27%20width%3D%2715.6%27%20height%3D%2710%27%20rx%3D%272.2%27%2F%3E%3Cpath%20d%3D%27M8.2%2010.4V7.6a3.8%203.8%200%200%201%207.6%200v2.8%27%2F%3E%3Cpath%20d%3D%27M12%2014.4v2.2%27%2F%3E%3C%2Fsvg%3E") no-repeat center/contain;
}
@media (max-width:560px){
  #order-standard_cart .alert-lg.no-data{padding:40px 20px 34px !important}
  #order-standard_cart .nb-atajos-grid{grid-template-columns:repeat(2, minmax(0,1fr))}
  #order-standard_cart .nb-atajos .nb-atajos-tit:before,
  #order-standard_cart .nb-atajos .nb-atajos-tit:after{width:calc(50% - 92px)}
}

/* ── la tarjeta de cada linea del carrito ─────────────────── */
/* Es .panel-body, no .item-group. El tema le pone borde #d5dce5,
   radio 4px y una sombra azulada; se sustituye entera.          */
#order-standard_cart .cart-item .panel-body{
  border:1px solid var(--nb-line) !important;
  border-radius:14px !important;
  margin-bottom:14px !important;
  background:var(--nb-paper);
  box-shadow:0 1px 2px rgba(20,17,31,0.04), 0 10px 26px -20px rgba(20,17,31,0.18) !important;
  transition:border-color 0.24s ease, box-shadow 0.24s ease;
}
#order-standard_cart .cart-item .panel-body:hover{
  border-color:var(--nb-line-2) !important;
  box-shadow:0 2px 4px rgba(20,17,31,0.05), 0 16px 34px -20px rgba(90,60,200,0.26) !important;
}
#order-standard_cart .cart-item .panel-footer{
  border:1px solid var(--nb-line) !important;
  border-radius:14px !important;
  background:var(--nb-paper-2) !important;
}
/* los separadores internos son pseudoelementos, no bordes */
#order-standard_cart .cart-item .item-price:after,
#order-standard_cart .cart-item .item-qty:after{
  background-color:var(--nb-line) !important;
}
#order-standard_cart .cart-item .item-title{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  color:var(--nb-ink) !important; font-size:1.06rem !important;
  line-height:1.35;
}
#order-standard_cart .cart-item .item-title a{color:var(--nb-ink) !important}
/* el tema lo pinta con su morado #8f1faf !important */
#order-standard_cart .cart-item .item-domain{
  color:var(--nb-violet-aa) !important;
  font-family:var(--nb-ff-b) !important; font-weight:500 !important;
  font-size:0.9rem !important;
}
#order-standard_cart .cart-item .item-price strong,
#order-standard_cart .cart-item .item-price .strong,
#order-standard_cart .cart-item .addon-item-price strong{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  color:var(--nb-ink) !important; font-size:1.1rem;
  font-variant-numeric:tabular-nums;
}
#order-standard_cart .cart-item .cycle,
#order-standard_cart .cart-item .renewal,
#order-standard_cart .cart-item .renewal-price,
#order-standard_cart .cart-item .item-setup{
  font-family:var(--nb-ff-b) !important; font-weight:400 !important;
  color:var(--nb-ink-3) !important;
}
/* la etiqueta gris de cada addon: el tema la deja en #999 */
#order-standard_cart .cart-item .item-group,
#order-standard_cart .cart-item .addon-item-group{
  color:var(--nb-ink-3) !important; font-family:var(--nb-ff-b);
}
#order-standard_cart .cart-item .item-name,
#order-standard_cart .cart-item .addon-item-title{color:var(--nb-ink-2) !important}
#order-standard_cart .cart-item .item-addons .prod-addons-container{
  border-left:2px solid var(--nb-line-2) !important;
}
#order-standard_cart .cart-item .item-qty .form-control,
#order-standard_cart .cart-item .addon-item-qty .form-control{
  border:1px solid var(--nb-line-2) !important; border-radius:8px !important;
  font-family:var(--nb-ff-d); font-weight:600; text-align:center;
  color:var(--nb-ink) !important;
}

/* ── resumen lateral ──────────────────────────────────────── */
#order-standard_cart .cartsummary,
#order-standard_cart .order-summary{border:0 !important; background:transparent !important}
/* el tema la deja gris azulada #edf0f5 con borde #d5dce5 */
#order-standard_cart .summary-container-outer{
  background:var(--nb-paper) !important;
  border:1px solid var(--nb-line) !important;
  border-radius:16px !important; padding:20px !important;
  box-shadow:0 1px 2px rgba(20,17,31,0.05), 0 14px 36px -20px rgba(20,17,31,0.16);
}
#order-standard_cart .order-summary h2{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  font-size:1.14rem !important; padding:0 0 13px !important;
  border-bottom:1px solid var(--nb-line); margin:0 0 12px !important;
}
#order-standard_cart .order-summary .product-name{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  color:var(--nb-ink) !important; font-size:1.3em !important;
  letter-spacing:-0.02em;
}
#order-standard_cart .order-summary .product-group{
  color:var(--nb-ink-3) !important; font-size:0.86em;
}
#order-standard_cart .cart-summry-list .list-item{
  font-family:var(--nb-ff-b); padding:4px 0 !important;
  color:var(--nb-ink-2) !important;
}
#order-standard_cart .cart-summry-list .list-item.list-item-title{
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  color:var(--nb-ink) !important;
}
#order-standard_cart .cart-summry-list .list-item .item-value{
  font-family:var(--nb-ff-d); font-weight:600;
  color:var(--nb-ink) !important; font-variant-numeric:tabular-nums;
}
/* el tema ya trae border-bottom en estas: aqui solo se tine */
#order-standard_cart .order-summary .subtotal,
#order-standard_cart .order-summary .bordered-totals{
  border-bottom-color:var(--nb-line) !important;
}
#order-standard_cart .order-summary .subtotal{
  font-family:var(--nb-ff-d); font-weight:600; color:var(--nb-ink) !important;
}
#order-standard_cart .order-summary .summary-totals{
  border-top-color:var(--nb-line) !important;
  border-bottom-color:var(--nb-line) !important;
}
#order-standard_cart .order-summary .recurring-charges{color:var(--nb-ink-3) !important}
/* el total, que es lo que la gente mira. El tema le da 3em: se
   conserva la escala y se le pone el degradado de marca.        */
#order-standard_cart .order-summary .total-due-today,
#order-standard_cart .order-summary .total-due-today-padded{
  border-top:2px solid var(--nb-line-2) !important;
  margin-top:12px !important; padding-top:14px !important;
}
#order-standard_cart .order-summary .total-due-today .amt,
#order-standard_cart .order-summary .total-due-today-padded .amt{
  display:inline-block !important;
  font-family:var(--nb-ff-d) !important; font-weight:800 !important;
  font-size:2.6em !important; line-height:1.1 !important;
  letter-spacing:-0.032em; font-variant-numeric:tabular-nums;
  background:var(--nb-grad); -webkit-background-clip:text;
  background-clip:text; -webkit-text-fill-color:transparent; color:transparent;
}
/* las etiquetas del total mantienen su 14px: solo cambian de voz */
#order-standard_cart .order-summary .total-due-today span:not(.amt),
#order-standard_cart .order-summary .total-due-today-padded span:not(.amt){
  font-family:var(--nb-ff-d); font-weight:600; color:var(--nb-ink-2) !important;
  letter-spacing:0.01em;
}

/* ══ configuracion del pedido ═══════════════════════════════ */
/* El resumen de arriba: el tema lo pinta con el azul #058 de WHMCS */
#order-standard_cart .view-cart-items-header{
  background:var(--nb-grad) !important; color:#fff !important;
  background-clip:padding-box; -webkit-background-clip:padding-box;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  padding:11px 18px !important; border-radius:14px 14px 0 0 !important;
  font-size:0.86rem !important; letter-spacing:0.04em;
}
#order-standard_cart .view-cart-items{
  border:1px solid var(--nb-line) !important; border-top:0 !important;
  border-radius:0 0 14px 14px !important; overflow:hidden;
  margin:0 0 26px 0 !important;
}
#order-standard_cart .view-cart-items .item{
  background-color:var(--nb-paper) !important;
  border-bottom:1px solid var(--nb-line) !important;
  padding:14px 18px !important;
}
#order-standard_cart .view-cart-items .item:nth-child(even){
  background-color:var(--nb-paper-2) !important;
}
#order-standard_cart .view-cart-items .item:last-child{border-bottom:0 !important}
#order-standard_cart .view-cart-items .item-title{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  color:var(--nb-ink) !important; font-size:1.35em !important;
  letter-spacing:-0.02em;
}
#order-standard_cart .view-cart-items .item-domain{color:var(--nb-violet-aa) !important}
#order-standard_cart .view-cart-items .item-group{
  color:var(--nb-ink-3) !important; font-size:1em !important;
}
#order-standard_cart .view-cart-items .item-price span{
  font-family:var(--nb-ff-d); font-weight:700; color:var(--nb-ink) !important;
  font-variant-numeric:tabular-nums;
}
#order-standard_cart .view-cart-items .item-price .cycle{
  font-family:var(--nb-ff-b); font-weight:400; color:var(--nb-ink-3) !important;
}
#order-standard_cart .view-cart-items .item-qty input{
  border:1px solid var(--nb-line-2) !important; border-radius:8px !important;
  font-family:var(--nb-ff-d); font-weight:600;
}

/* el separador con etiqueta ("Ciclo de facturacion", "Extras"...) */
/* la linea de fondo del separador: el tema la degrada a negro */
#order-standard_cart .sub-heading:before{
  background:linear-gradient(to right,rgba(233,228,243,0),var(--nb-line-2),rgba(233,228,243,0)) !important;
}
#order-standard_cart .sub-heading span{
  background:var(--nb-paper) !important;
  border:1px solid var(--nb-line) !important;
  border-radius:999px !important; padding:4px 16px !important;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  color:var(--nb-ink) !important; font-size:0.86rem;
  letter-spacing:0.02em;
}

/* las opciones seleccionables: ciclo de facturacion y extras.
   El tema las deja grises (#edf0f5) y marca la elegida con su
   morado propio #8f1faf.                                        */
#order-standard_cart .cros-checkbox + span.pcb,
#order-standard_cart .nocheck + span.pcb,
#order-standard_cart .no-radio + span.pcb{
  border:1.5px solid var(--nb-line) !important;
  background-color:var(--nb-paper) !important;
  border-radius:12px !important;
  transition:border-color 0.22s ease, box-shadow 0.22s ease, transform 0.22s ease;
}
#order-standard_cart .cros-checkbox + span.pcb:hover,
#order-standard_cart .nocheck + span.pcb:hover,
#order-standard_cart .no-radio + span.pcb:hover{
  border-color:var(--nb-line-2) !important;
  box-shadow:0 8px 22px -16px rgba(20,17,31,0.28);
}
#order-standard_cart .cros-checkbox:checked + span.pcb,
#order-standard_cart .nocheck:checked + span.pcb,
#order-standard_cart .no-radio:checked + span.pcb{
  border:1.5px solid var(--nb-violet) !important;
  background-color:rgba(123,92,246,0.06) !important;
  box-shadow:0 10px 26px -18px rgba(123,92,246,0.5) !important;
}
#order-standard_cart .pcb .c-name{
  color:var(--nb-ink) !important;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
}
#order-standard_cart .pcb .addons{color:var(--nb-ink) !important; font-family:var(--nb-ff-d)}
/* el icono de radio/check que el tema pinta de morado */
#order-standard_cart .pcb .c-name:before,
#order-standard_cart .pcb .addons .addon-name:before{
  color:var(--nb-violet) !important;
}
#order-standard_cart .pcb .c-price{
  font-family:var(--nb-ff-d) !important; font-weight:700 !important;
  color:var(--nb-ink) !important; font-variant-numeric:tabular-nums;
}
#order-standard_cart .pcb .c-price .extra{
  color:var(--nb-ink-3) !important; font-family:var(--nb-ff-b);
}
/* la etiqueta de ahorro: el tema la deja amarillo chillon */
#order-standard_cart .pcb .c-save{
  background-color:var(--nb-ok) !important; color:#fff !important;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  border-radius:999px !important; padding:3px 9px !important;
  letter-spacing:0.01em;
}

/* las tarjetas de extras */
#order-standard_cart .panel-addon{
  border:1.5px solid var(--nb-line) !important;
  border-radius:14px !important; background:var(--nb-paper) !important;
  box-shadow:none !important;
  transition:border-color 0.22s ease, box-shadow 0.22s ease;
}
#order-standard_cart .panel-addon:hover{
  border-color:var(--nb-line-2) !important;
  box-shadow:0 10px 26px -18px rgba(20,17,31,0.24) !important;
}
#order-standard_cart .panel-addon.panel-addon-selected{
  border-color:var(--nb-violet) !important;
  background-color:rgba(123,92,246,0.06) !important;
}
#order-standard_cart .panel-addon .panel-body .panel-addon-name{
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  color:var(--nb-ink) !important;
}
#order-standard_cart .panel-addon .panel-body .panel-addon-price{
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  color:var(--nb-violet-aa) !important;
}
#order-standard_cart .panel-addon .panel-body p{color:var(--nb-ink-2) !important}

/* el acordeon de opciones configurables */
#order-standard_cart .accordion .card{
  border:1px solid var(--nb-line) !important; border-radius:14px !important;
  margin-bottom:10px; overflow:hidden;
}
#order-standard_cart .accordion .card .card-header{
  background:var(--nb-paper-2) !important;
  border-bottom:1px solid var(--nb-line) !important;
}
#order-standard_cart .accordion .card .card-header .promo-title .name{
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  color:var(--nb-ink) !important;
}
#order-standard_cart .accordion .card .card-header .promo-icon i{color:var(--nb-violet) !important}
#order-standard_cart .form-actions{border-top:1px solid var(--nb-line) !important}
#order-standard_cart .field-icon i{color:var(--nb-ink-3) !important}

/* ── tarjetas de producto del store (/store/<grupo>) ──────── */
/* Red de seguridad: una imagen de descripcion de producto no debe
   poder desbordar su tarjeta pase lo que pase. Las de Prestashop
   llevaban width="100%", que NO es valido en el atributo HTML de
   <img> (solo admite pixeles), asi que WHMCS lo descartaba al
   sanear y la imagen salia a su tamano natural: 1000 px dentro de
   una tarjeta de 280. El dato se corrige aparte; esto evita que
   vuelva a ocurrir con cualquier otro producto.                  */
/* SOLO `max-width` y `height`. NADA de `display:block` ni margenes
   automaticos: en estas tarjetas tambien hay <img> pequenas en linea
   —los checks verdes de cada caracteristica— y sacarlas del flujo las
   manda a su propia linea centrada. Una regla defensiva no debe
   cambiar la maquetacion de nada.                                  */
#order-standard_cart .cros-pricing-table img:not([src*="check"]){
  max-width:100% !important; height:auto !important;
}
#order-standard_cart .cros-pricing-table{overflow:hidden}

/* ── cupon de descuento ───────────────────────────────────── */
#order-standard_cart .view-cart-promotion-code .card,
#order-standard_cart .view-cart-promotion-code .panel{
  background:var(--nb-paper-2) !important;
  border:1px solid var(--nb-line) !important;
  border-radius:14px !important; box-shadow:none !important;
}
#order-standard_cart .view-cart-promotion-code .form-control{
  border:1px solid var(--nb-line-2) !important; border-right:0 !important;
  border-radius:10px 0 0 10px !important; height:46px;
  font-family:var(--nb-ff-b);
}
#order-standard_cart .view-cart-promotion-code .form-control:focus{
  border-color:var(--nb-violet) !important; box-shadow:none !important;
}
#order-standard_cart .view-cart-promotion-code .btn{
  border-radius:0 10px 10px 0 !important; height:46px;
}

/* ── botones ──────────────────────────────────────────────── */
#order-standard_cart .btn-primary,
#order-standard_cart .view-cart-gateway-checkout .btn-primary{
  background:var(--nb-grad) !important;
  border:0 !important; color:#fff !important;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  border-radius:11px !important; padding:12px 26px !important;
  box-shadow:0 10px 26px -12px rgba(123,92,246,0.5);
  transition:transform 0.22s ease, box-shadow 0.22s ease;
}
#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-primary:focus{
  transform:translateY(-2px); color:#fff !important;
  box-shadow:0 16px 32px -14px rgba(123,92,246,0.62);
}
#order-standard_cart .btn-default{
  background:transparent !important;
  border:1.5px solid var(--nb-line-2) !important;
  color:var(--nb-ink) !important;
  font-family:var(--nb-ff-d) !important; font-weight:600 !important;
  border-radius:11px !important;
  transition:border-color 0.22s ease, color 0.22s ease;
}
#order-standard_cart .btn-default:hover,
#order-standard_cart .btn-default:focus{
  border-color:var(--nb-violet) !important; color:var(--nb-violet-aa) !important;
  background:transparent !important;
}
/* los iconos pequenos de editar y quitar */
#order-standard_cart .cart-item .btn-icon,
#order-standard_cart .cart-item .btn-xs{
  border-radius:8px !important; border:1px solid var(--nb-line-2) !important;
  background:transparent !important; color:var(--nb-ink-3) !important;
  transition:border-color 0.2s ease, color 0.2s ease;
}
#order-standard_cart .cart-item .btn-icon:hover,
#order-standard_cart .btn-remove-from-cart:hover{
  border-color:var(--nb-no) !important; color:var(--nb-no) !important;
}
#order-standard_cart .order-summary i.fa-trash{color:var(--nb-ink-3)}
#order-standard_cart .order-summary i.fa-trash:hover{color:var(--nb-no)}

/* ── avisos ───────────────────────────────────────────────── */
#order-standard_cart .alert:not(.alert-lg){
  border-radius:12px !important; font-family:var(--nb-ff-b);
  border:1px solid var(--nb-line) !important;
}
#order-standard_cart .alert-success{
  background:rgba(15,146,104,0.09) !important;
  border-color:rgba(15,146,104,0.3) !important; color:#0B6B4D !important;
}
#order-standard_cart .alert-warning{
  background:rgba(176,115,16,0.09) !important;
  border-color:rgba(176,115,16,0.3) !important; color:#7A5210 !important;
}
#order-standard_cart .alert-danger,
#order-standard_cart .errorbox{
  background-color:rgba(196,69,63,0.09) !important;
  border:1px solid rgba(196,69,63,0.3) !important; color:#8E2B27 !important;
  border-radius:12px !important; font-family:var(--nb-ff-b);
}
#order-standard_cart .alert-info{
  background:var(--nb-grad-suave) !important;
  border-color:rgba(123,92,246,0.3) !important; color:var(--nb-ink-2) !important;
}

/* ── formularios del pago ─────────────────────────────────── */
#order-standard_cart .form-control,
#order-standard_cart select.form-control{
  border:1px solid var(--nb-line-2) !important; border-radius:10px !important;
  font-family:var(--nb-ff-b); color:var(--nb-ink) !important;
}
#order-standard_cart .form-control:focus{
  border-color:var(--nb-violet) !important;
  box-shadow:0 0 0 3px rgba(123,92,246,0.14) !important;
}
#order-standard_cart .control-label,
#order-standard_cart label{
  font-family:var(--nb-ff-d); font-weight:600; color:var(--nb-ink-2);
}
#order-standard_cart .panel:not(.cart-item):not(.panel-addon) > .panel-heading{
  background:var(--nb-paper-2) !important;
  border-bottom:1px solid var(--nb-line) !important;
  font-family:var(--nb-ff-d); font-weight:600; color:var(--nb-ink) !important;
}

/* ── el recorte del degradado va el ultimo, para que ninguna
      regla de arriba pueda pisarlo con el atajo `background` ── */
#order-standard_cart .btn-primary,
#order-standard_cart .view-cart-gateway-checkout .btn-primary,
#order-standard_cart .view-cart-items-header{
  background-clip:padding-box; -webkit-background-clip:padding-box;
}

@media (max-width:991px){
  #order-standard_cart .summary-container-outer{margin-top:20px}
}
@media (prefers-reduced-motion:reduce){
  #order-standard_cart *{transition:none !important}
}
