#order-standard_cart {
    --cart-navy: #071226;
    --cart-blue: #3978ff;
    --cart-cyan: #35d8ff;
    --cart-paper: #f4f7fb;
    --cart-line: #dfe6ef;
    color: #0a1830;
    font-size: 14px;
}

#order-standard_cart .cart-sidebar .panel,
#order-standard_cart .sidebar-collapsed,
#order-standard_cart .product,
#order-standard_cart .product-info,
#order-standard_cart .view-cart-items,
#order-standard_cart .view-cart-tabs,
#order-standard_cart .order-summary,
#order-standard_cart .summary-container,
#order-standard_cart .checkout-security-msg {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 18px 50px rgba(17, 43, 78, .07);
}

#order-standard_cart .header-lined {
    margin-bottom: 28px;
    border: 0;
}

#order-standard_cart .header-lined h1,
#order-standard_cart .product header,
#order-standard_cart .sub-heading span {
    color: var(--cart-navy);
    font-weight: 800;
    letter-spacing: -.03em;
}

#order-standard_cart .products .product {
    display: flex;
    min-height: 430px;
    padding: 28px;
    flex-direction: column;
}

#order-standard_cart .product header {
    margin: -28px -28px 24px;
    padding: 24px 28px;
    border-bottom: 1px solid var(--cart-line);
    background: linear-gradient(135deg, #f8fbff, #eef4ff);
    font-size: 1.3rem;
}

#order-standard_cart .product-desc { flex: 1; }
#order-standard_cart .product-info ul,
#order-standard_cart .product-desc ul { padding-left: 0; list-style: none; }
#order-standard_cart .product-desc li { margin: 10px 0; }
#order-standard_cart .product-info li,
#order-standard_cart .product-desc li { margin: 10px 0; }
#order-standard_cart .product footer { padding-top: 22px; border-top: 1px solid var(--cart-line); }
#order-standard_cart .product-pricing .price { color: var(--cart-navy); font-size: 1.65rem; font-weight: 800; }

/* The child products.tpl drops the Bootstrap col-md-6 wrapper, so the grid is
   declared here. Cards keep equal height without row-eq-height. */
#order-standard_cart .sh-product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(330px, 1fr));
    gap: 22px;
    align-items: stretch;
}
#order-standard_cart .sh-product-grid > .product { height: 100%; margin: 0; }

/* Descripción escrita por el operador. El contenido es suyo; la presentación se
   alinea con las tarjetas de plan del sitio público (.sh-live-plan-card), de modo
   que tienda, carrito y web se lean igual. Eso implica normalizar los iconos: se
   ocultan los <i> con color inline y se usa el mismo check azul del sitio. */
#order-standard_cart .product-desc ul.package-features,
#order-standard_cart .product-info ul.package-features { margin: 0; padding: 0; text-align: left !important; list-style: none; }

#order-standard_cart .product-desc ul.package-features li,
#order-standard_cart .product-info ul.package-features li,
#order-standard_cart .product-desc .card-body li,
#order-standard_cart .product-info .card-body li {
    display: block;
    position: relative;
    margin: 10px 0;
    padding-left: 20px;
    color: #4d5d74;
    font-size: 12px;
    line-height: 1.5;
}
#order-standard_cart .product-desc ul.package-features li:before,
#order-standard_cart .product-info ul.package-features li:before,
#order-standard_cart .product-desc .card-body li:before,
#order-standard_cart .product-info .card-body li:before {
    position: absolute;
    left: 0;
    color: var(--cart-blue);
    content: "\2713";
    font-weight: 800;
}
/* Los iconos propios del operador se reemplazan por el check del sistema. */
#order-standard_cart .product-desc li > i,
#order-standard_cart .product-info li > i,
#order-standard_cart .product-desc .card-body > i,
#order-standard_cart .product-info .card-body > i { display: none !important; }

/* Las descripciones no son homogéneas entre productos: unas arman el detalle con
   <li> y otras con <i> + texto + <br> sin lista. En la segunda forma no hay
   elemento al que colgarle el check, así que se reutiliza el propio <i> del
   operador cambiándole el glifo por el del sitio. */
#order-standard_cart .product-desc .card-body > i.fa-check,
#order-standard_cart .product-info .card-body > i.fa-check {
    display: inline !important;
    margin-right: 7px !important;
    color: var(--cart-blue) !important;
    font-family: inherit !important;
    font-style: normal;
    font-weight: 800;
}
#order-standard_cart .product-desc .card-body > i.fa-check:before,
#order-standard_cart .product-info .card-body > i.fa-check:before { content: "\2713"; }
/* La estrella sólo precede a los encabezados de sección, que ya no la llevan. */
#order-standard_cart .product-desc .card-body > i.fa-star,
#order-standard_cart .product-info .card-body > i.fa-star { display: none !important; }
#order-standard_cart .product-desc .card-body > strong,
#order-standard_cart .product-info .card-body > strong { display: inline-block; margin: 13px 0 3px; }
#order-standard_cart .product-desc .card-body > strong:first-child,
#order-standard_cart .product-info .card-body > strong:first-child { margin-top: 0; }

/* Un item con <strong> es un encabezado de sección: mismo tratamiento que
   .sh-plan-feature-section h4 en el sitio público. */
#order-standard_cart .product-desc ul.package-features li:has(> strong),
#order-standard_cart .product-info ul.package-features li:has(> strong),
#order-standard_cart .product-desc .card-body li:has(> strong),
#order-standard_cart .product-info .card-body li:has(> strong) {
    margin: 19px 0 8px;
    padding-left: 0;
    color: var(--cart-navy);
}
#order-standard_cart .product-desc ul.package-features li:has(> strong):before,
#order-standard_cart .product-info ul.package-features li:has(> strong):before,
#order-standard_cart .product-desc .card-body li:has(> strong):before,
#order-standard_cart .product-info .card-body li:has(> strong):before { content: none; }
#order-standard_cart .product-desc li > strong,
#order-standard_cart .product-info li > strong,
#order-standard_cart .product-desc .card-body strong,
#order-standard_cart .product-info .card-body strong {
    color: var(--cart-navy);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: normal;
    line-height: 1.35;
    text-transform: none;
}
#order-standard_cart .product-desc ul.package-features li:first-child,
#order-standard_cart .product-info ul.package-features li:first-child { margin-top: 0; }
#order-standard_cart .product-desc ul.package-features > br,
#order-standard_cart .product-info ul.package-features > br { display: none; }

/* Acordeón «Más características». Copia el panel de .sh-plan-details del sitio
   público: sin caja anidada alrededor del rótulo y con el caret pegado al texto.
   Sin JavaScript el panel queda desplegado en vez de inaccesible. */
#order-standard_cart .product-desc .card,
#order-standard_cart .product-info .card {
    margin-top: 20px;
    border: 1px solid var(--cart-line);
    border-radius: 10px;
    background: #f8faff;
    box-shadow: none;
}
#order-standard_cart .product-desc .card-header,
#order-standard_cart .product-info .card-header {
    padding: 13px 15px !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
    cursor: pointer;
}
/* El operador abre y cierra tres anchors en la cabecera y el nl2br de WHMCS
   deja un <br> dentro del anchor del rótulo, que lo empujaba a una segunda
   línea. La cabecera es un control de una sola línea: los saltos no van. */
#order-standard_cart .product-desc .card-header br,
#order-standard_cart .product-info .card-header br { display: none; }
/* Bootstrap le pone borde y fondo al .btn-link, lo que dibujaba una caja dentro
   de la caja del panel. */
#order-standard_cart .product-desc .card-header a,
#order-standard_cart .product-info .card-header a,
#order-standard_cart .product-desc .card-header .btn-link,
#order-standard_cart .product-info .card-header .btn-link {
    display: inline;
    padding: 0 !important;
    border: 0 !important;
    color: var(--cart-blue) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 12px !important;
    font-weight: 800;
    letter-spacing: normal;
    text-decoration: none !important;
    text-transform: none;
}
#order-standard_cart .product-desc .card-header .btn-icon,
#order-standard_cart .product-info .card-header .btn-icon { display: inline; }
/* El operador usa `ls ls-arrow-right`, un icono de Lagom que este tema no
   incluye: el control no mostraba ninguna señal de ser desplegable. Se usa el
   mismo triángulo que el marcador de <details> en el sitio público. */
#order-standard_cart .product-desc .card-header .btn-icon i,
#order-standard_cart .product-info .card-header .btn-icon i {
    color: var(--cart-blue);
    font-size: 11px;
    font-style: normal;
}
#order-standard_cart .product-desc .card-header .btn-icon i:before,
#order-standard_cart .product-info .card-header .btn-icon i:before { content: "\25B8"; }
#order-standard_cart .sh-accordion-open .card-header .btn-icon i:before { content: "\25BE"; }
#order-standard_cart .product-desc .card-header .btn-text,
#order-standard_cart .product-info .card-header .btn-text { margin-left: 5px; }

#order-standard_cart .product-desc .card-body,
#order-standard_cart .product-info .card-body {
    padding: 2px 15px 15px !important;
    border-top: 1px solid var(--cart-line);
    color: #4d5d74;
    font-size: 12px;
}
#order-standard_cart.sh-accordion-ready .product-desc .collapse.hide,
#order-standard_cart.sh-accordion-ready .product-info .collapse.hide { display: none; }
#order-standard_cart.sh-accordion-ready .product-desc .collapse.show,
#order-standard_cart.sh-accordion-ready .product-info .collapse.show { display: block; }
#order-standard_cart:not(.sh-accordion-ready) .product-desc .collapse,
#order-standard_cart:not(.sh-accordion-ready) .product-info .collapse { display: block; }

#order-standard_cart .sh-price-label {
    display: block;
    color: #61708a;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
#order-standard_cart .sh-price-cycle { color: #61708a; font-size: .8rem; font-weight: 600; }
#order-standard_cart .sh-setup-fee { display: block; margin-top: 3px; color: #77859a; font-size: .72rem; }

#order-standard_cart .btn-primary,
#order-standard_cart .btn-success,
#order-standard_cart .btn-order-now,
#order-standard_cart #btnCompleteOrder {
    min-height: 46px;
    border-color: var(--cart-blue);
    border-radius: 9px;
    color: #fff;
    background: var(--cart-blue);
    font-weight: 700;
    box-shadow: 0 12px 28px rgba(57, 120, 255, .2);
}

#order-standard_cart .form-control,
#order-standard_cart .custom-select {
    min-height: 46px;
    border-color: #cbd7e6;
    border-radius: 9px;
}

#order-standard_cart .form-control:focus,
#order-standard_cart .custom-select:focus,
#order-standard_cart button:focus-visible,
#order-standard_cart a:focus-visible {
    border-color: var(--cart-blue);
    outline: 3px solid rgba(53, 216, 255, .45);
    outline-offset: 2px;
    box-shadow: none;
}

#order-standard_cart .sub-heading { border: 0; }
#order-standard_cart .sub-heading span { padding: 0; background: transparent; font-size: 1.15rem; }
#order-standard_cart .field-container { padding: 24px; border: 1px solid var(--cart-line); border-radius: 14px; background: #fff; }
#order-standard_cart .order-summary {
    overflow: hidden;
    border: 0 !important;
    border-radius: 16px !important;
    background: var(--cart-navy) !important;
}
#order-standard_cart .order-summary .summary-container {
    color: #fff;
    border: 1px solid rgba(53, 216, 255, .2) !important;
    border-radius: 0 0 14px 14px !important;
    background: #0a1933 !important;
    box-shadow: 0 22px 55px rgba(7, 18, 38, .22);
}
#order-standard_cart .order-summary,
#order-standard_cart .order-summary h2,
#order-standard_cart .order-summary .total-due,
#order-standard_cart .order-summary .product-name,
#order-standard_cart .order-summary .product-group,
#order-standard_cart .order-summary .summary-totals,
#order-standard_cart .order-summary .summary-totals span { color: #fff !important; }
#order-standard_cart .order-summary .summary-container *,
#order-standard_cart .order-summary .summary-container .recurring-charges,
#order-standard_cart .order-summary .summary-container .btn-continue-shopping {
    color: #dfe9f8 !important;
}
#order-standard_cart .order-summary .summary-totals { border-color: rgba(255, 255, 255, .13); }
#order-standard_cart .order-summary .total-due .amt { color: var(--cart-cyan) !important; }
/* WHMCS paints #totalDueToday with its own light-green chip. Inside this navy
   panel the inherited light text left the amount the customer actually pays at
   a 1.1:1 contrast ratio, effectively invisible. */
#order-standard_cart .order-summary #totalDueToday,
#order-standard_cart .order-summary .total-due-today .amt {
    padding: 3px 9px;
    border-radius: 8px;
    color: var(--cart-cyan) !important;
    background: rgba(53, 216, 255, .12) !important;
    font-weight: 800;
}

/* Product configuration */
#order-standard_cart .secondary-cart-body { padding-right: 22px; }
#order-standard_cart .secondary-cart-sidebar { padding-left: 22px; }
#order-standard_cart .secondary-cart-sidebar > div {
    position: sticky;
    top: 24px;
}
#order-standard_cart .product-info {
    margin-bottom: 26px;
    padding: 26px;
    border: 1px solid var(--cart-line);
    border-radius: 16px;
    color: #0a1830;
    background: #fff;
    box-shadow: 0 18px 50px rgba(17, 43, 78, .06);
}
#order-standard_cart .product-info .product-title {
    margin-bottom: 18px;
    color: var(--cart-navy);
    font-size: 1.75rem;
    font-weight: 800;
}
#order-standard_cart .addon-promo-container {
    margin: 18px 0 !important;
    padding: 24px !important;
    overflow: hidden;
    border: 1px solid var(--cart-line) !important;
    border-radius: 15px;
    color: #263b58;
    background: #fff !important;
    box-shadow: 0 12px 35px rgba(17, 43, 78, .05);
}
#order-standard_cart .addon-promo-container h3 {
    color: var(--cart-navy);
    font-size: 1.3rem;
    font-weight: 800;
}
#order-standard_cart .addon-promo-container .description { color: #5b6c84; line-height: 1.6; }
#order-standard_cart .addon-promo-container label {
    min-height: 32px;
    margin: 0 !important;
    padding: 5px 0;
    color: #34465f;
    border-bottom: 1px solid #edf2f7;
    font-weight: 500;
}
#order-standard_cart .addon-promo-container label:last-child { border-bottom: 0; }
#order-standard_cart .addon-promo-container .logo img { max-width: 105px; max-height: 72px; }
#order-standard_cart .panel-addon {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-radius: 12px;
    color: #2f4159;
    background: #fff;
    box-shadow: 0 10px 25px rgba(17,43,78,.05);
}
#order-standard_cart .panel-addon .panel-body { padding: 18px; }
#order-standard_cart .panel-addon .panel-price { padding: 9px; color: #34465f; background: #f4f7fb; }
#order-standard_cart .panel-addon .panel-add { padding: 9px; background: #159c68; }
#order-standard_cart .alert-warning.info-text-sm {
    padding: 15px 18px;
    border: 1px solid #f0cf78;
    border-radius: 11px;
    color: #634a08;
    background: #fff8df;
}

/* Cart review and promotion */
#order-standard_cart .view-cart-items-header {
    padding: 15px 20px;
    border-radius: 13px 13px 0 0;
    color: #fff;
    background: var(--cart-navy);
    font-weight: 800;
}
#order-standard_cart .view-cart-items {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-radius: 0 0 13px 13px;
    background: #fff;
    box-shadow: 0 16px 40px rgba(17,43,78,.06);
}
#order-standard_cart .view-cart-items .item,
#order-standard_cart .view-cart-items .item:nth-child(even) {
    padding: 18px;
    color: #263950;
    border-bottom: 1px solid #e8eef5;
    background: #fff;
}
#order-standard_cart .view-cart-tabs {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-radius: 14px;
    background: #fff;
}
#order-standard_cart .view-cart-tabs .nav-tabs { padding: 8px 10px 0; }
#order-standard_cart .view-cart-tabs .nav-tabs a { color: #52637b; font-weight: 700; }
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded=true],
#order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected=true] {
    color: var(--cart-blue);
    background: #eef4ff;
}
#order-standard_cart .view-cart-tabs .tab-content { padding: 20px; background: #fff; }
#order-standard_cart .view-cart-promotion-code {
    padding: 14px 18px;
    border: 1px solid #cbd7e6;
    border-radius: 9px;
    color: #34465f;
    background: #f8faff;
}

/* Checkout */
#order-standard_cart #frmCheckout {
    padding: 30px;
    border: 1px solid var(--cart-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 20px 55px rgba(17,43,78,.07);
}
#order-standard_cart #frmCheckout .sub-heading {
    height: auto;
    margin: 34px 0 18px;
    padding: 0 0 12px;
    border: 0;
    border-bottom: 1px solid var(--cart-line);
    text-align: left;
}
#order-standard_cart #frmCheckout .sub-heading:first-child { margin-top: 0; }
#order-standard_cart #frmCheckout .sub-heading span {
    position: static;
    top: auto;
    color: var(--cart-navy) !important;
    background: transparent !important;
    font-size: 1.2rem;
}
#order-standard_cart .account-select-container {
    overflow: hidden;
    margin: 0 0 25px;
    border: 1px solid var(--cart-line) !important;
    border-radius: 13px;
    background: #f8faff;
}
#order-standard_cart .account-select-container div.account {
    padding: 16px !important;
    color: #34465f;
    border-color: var(--cart-line) !important;
    background: #f8faff !important;
}
#order-standard_cart .account-select-container div.account.active {
    box-shadow: inset 4px 0 0 var(--cart-blue);
    background: #fff !important;
}
#order-standard_cart .account-select-container label,
#order-standard_cart .account-select-container .address,
#order-standard_cart #paymentGatewaysContainer label {
    color: #263950 !important;
}
#order-standard_cart #totalDueToday {
    padding: 18px;
    border: 1px solid #9fdbbf;
    border-radius: 11px;
    color: #0a5d3c;
    background: #e6f7ef;
    font-size: 1.05rem;
}
#order-standard_cart #paymentGatewaysContainer {
    padding: 20px;
    border: 1px solid var(--cart-line);
    border-radius: 12px;
    background: #f8faff;
}
#order-standard_cart #paymentGatewaysContainer .radio-inline {
    margin: 6px 12px;
    padding: 9px 13px;
    border: 1px solid #d8e2ee;
    border-radius: 9px;
    background: #fff;
}
#order-standard_cart textarea.form-control,
#order-standard_cart textarea.field {
    min-height: 120px;
    color: #263950 !important;
    background: #fff !important;
}
#order-standard_cart .checkout-security-msg {
    padding: 20px 20px 20px 76px;
    color: #36506e;
    border: 1px solid #cce4ef;
    border-radius: 12px;
    background: #f0faff;
}
#order-standard_cart .checkout-security-msg i { color: #1586b8; }
#order-standard_cart #btnCompleteOrder {
    min-height: 54px;
    padding-inline: 28px;
    font-size: 1.05rem;
}

/* Last-chance recommendations */
#order-standard_cart .mc-promos { max-width: 760px; }
#order-standard_cart .mc-promo {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-bottom: 3px solid var(--cart-blue);
    border-radius: 12px;
    box-shadow: 0 10px 28px rgba(17,43,78,.05);
}
#order-standard_cart .mc-promo .header { min-height: 74px; color: #263950; }
#order-standard_cart .mc-promo .body { color: #465b75; background: #f8faff; }
#order-standard_cart .mc-promo .btn-add,
#order-standard_cart .mc-promo .arrow { background: var(--cart-blue) !important; }

.sh-shopping-cart .store-order-container {
    width: min(1280px, 100%);
    margin-inline: auto;
    padding: 30px;
    border: 1px solid var(--cart-line);
    border-radius: 18px;
    background: #fff;
    box-shadow: 0 22px 60px rgba(18, 44, 78, .08);
}
.sh-shopping-cart .store-order-container h2 {
    color: var(--cart-navy);
    font-size: clamp(28px, 3vw, 42px);
    font-weight: 800;
    letter-spacing: -.04em;
}
.sh-shopping-cart .store-order-container .payment-term,
.sh-shopping-cart .store-domain-tab-content {
    padding: 22px;
    border: 1px solid var(--cart-line);
    border-radius: 12px;
    background: var(--cart-paper);
}
.sh-shopping-cart .store-order-container .nav-tabs { border: 0; gap: 8px; }
.sh-shopping-cart .store-order-container .nav-tabs .nav-link {
    min-height: 46px;
    border: 1px solid var(--cart-line);
    border-radius: 9px;
    color: #52627a;
    background: #fff;
}
.sh-shopping-cart .store-order-container .nav-tabs .nav-link.active {
    color: #fff;
    border-color: var(--cart-blue);
    background: var(--cart-blue);
}
.sh-shopping-cart .store-order-container .btn-primary {
    min-height: 48px;
    padding-inline: 24px;
    border-radius: 9px;
}

body.sh-shopping-cart section#main-body {
    min-height: 70vh;
    padding: 32px 0 70px !important;
    background: linear-gradient(180deg, #f4f7fb 0, #fff 360px) !important;
}

body.sh-shopping-cart section#main-body > .container {
    max-width: none;
    padding: 0;
}

body.sh-shopping-cart #order-standard_cart {
    width: min(1320px, calc(100% - 32px));
    margin-inline: auto;
    font-size: 14px;
}

body.sh-shopping-cart #order-standard_cart .font-size-36,
body.sh-shopping-cart #order-standard_cart h1.font-size-36 {
    font-size: 1.875rem !important;
    line-height: 1.16 !important;
}

body.sh-shopping-cart #order-standard_cart .font-size-24 {
    font-size: 1.35rem !important;
    line-height: 1.25 !important;
}

body.sh-shopping-cart #order-standard_cart .btn-lg {
    min-height: 40px;
    padding: 9px 20px;
    font-size: .875rem;
    line-height: 1.2;
}

body.sh-shopping-cart #order-standard_cart .btn:not(.btn-link) {
    min-height: 40px;
    border-radius: 8px !important;
    font-size: .875rem;
    font-weight: 700;
}

body.sh-shopping-cart #order-standard_cart .btn-primary,
body.sh-shopping-cart #order-standard_cart .btn-success,
body.sh-shopping-cart #order-standard_cart .btn-info,
body.sh-shopping-cart #order-standard_cart .btn-warning,
body.sh-shopping-cart #order-standard_cart .btn-order-now,
body.sh-shopping-cart #order-standard_cart #btnCompleteOrder {
    color: #fff !important;
    border-color: var(--cart-blue) !important;
    background: var(--cart-blue) !important;
    box-shadow: 0 8px 20px rgba(57, 120, 255, .18);
}

body.sh-shopping-cart #order-standard_cart .btn-primary:hover,
body.sh-shopping-cart #order-standard_cart .btn-success:hover,
body.sh-shopping-cart #order-standard_cart .btn-info:hover,
body.sh-shopping-cart #order-standard_cart .btn-warning:hover,
body.sh-shopping-cart #order-standard_cart .btn-order-now:hover,
body.sh-shopping-cart #order-standard_cart #btnCompleteOrder:hover {
    border-color: #245fd9 !important;
    background: #245fd9 !important;
}

body.sh-shopping-cart #order-standard_cart .btn-default,
body.sh-shopping-cart #order-standard_cart .btn-secondary {
    color: #263950 !important;
    border-color: #c4d1e1 !important;
    background: #fff !important;
    box-shadow: none;
}

body.sh-shopping-cart #order-standard_cart #btnCompleteOrder {
    min-height: 40px !important;
    padding: 9px 22px !important;
    border-radius: 8px !important;
    font-size: .875rem !important;
    line-height: 1.2 !important;
}

body.sh-shopping-cart #order-standard_cart .panel,
body.sh-shopping-cart #order-standard_cart .card,
body.sh-shopping-cart #order-standard_cart .product-info,
body.sh-shopping-cart #order-standard_cart .field-container,
body.sh-shopping-cart #order-standard_cart .addon-promo-container {
    border-radius: 14px !important;
}

body.sh-shopping-cart #order-standard_cart .form-control,
body.sh-shopping-cart #order-standard_cart .custom-select {
    min-height: 42px;
    border-radius: 8px !important;
    font-size: .875rem;
}

body.sh-shopping-cart #header .navbar-light > .container {
    min-height: 64px;
}

body.sh-shopping-cart #header .form-inline {
    height: 44px !important;
}

body.sh-shopping-cart #header .input-group.search {
    height: 44px !important;
    flex-wrap: nowrap !important;
}

body.sh-shopping-cart #header .input-group.search .input-group-prepend {
    width: 40px;
    min-width: 40px;
    height: 40px;
}

body.sh-shopping-cart #header .input-group.search .form-control {
    width: auto !important;
    min-width: 0;
    height: 40px;
    flex: 1 1 auto;
    font-size: .875rem;
}

body.sh-shopping-cart #header #sh-internal-currency,
body.sh-shopping-cart #header .cart-btn {
    height: 40px;
    min-height: 40px;
}

/* Buying is a focused task: remove the catalogue navigation once the
 * customer is configuring or paying for an existing selection. */
body.sh-shopping-cart .cart-sidebar {
    display: none !important;
}

body.sh-shopping-cart .cart-sidebar + .cart-body,
body.sh-shopping-cart .cart-body {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    padding-inline: 0 !important;
}

#order-standard_cart #frmCheckout {
    width: min(1180px, calc(100% - 32px));
    margin-inline: auto;
    padding: 34px 38px;
    border: 1px solid var(--cart-line);
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 22px 65px rgba(17, 43, 78, .08);
}

#order-standard_cart #frmCheckout .form-control,
#order-standard_cart #frmCheckout .custom-select,
#order-standard_cart #frmCheckout input.field,
#order-standard_cart #frmCheckout select.field,
#order-standard_cart #frmCheckout textarea.field {
    min-height: 48px;
    border: 1.5px solid #9eb0c7 !important;
    border-radius: 10px !important;
    color: #0a1830 !important;
    background: #fff !important;
    box-shadow: 0 2px 0 rgba(7, 18, 38, .03), inset 0 1px 2px rgba(7, 18, 38, .025) !important;
}

#order-standard_cart #frmCheckout textarea.field {
    min-height: 130px;
    padding: 14px 16px;
    resize: vertical;
}

#order-standard_cart #frmCheckout .form-control:hover,
#order-standard_cart #frmCheckout .custom-select:hover,
#order-standard_cart #frmCheckout input.field:hover,
#order-standard_cart #frmCheckout select.field:hover,
#order-standard_cart #frmCheckout textarea.field:hover {
    border-color: #6f86a5 !important;
}

#order-standard_cart #frmCheckout .form-control:focus,
#order-standard_cart #frmCheckout .custom-select:focus,
#order-standard_cart #frmCheckout input.field:focus,
#order-standard_cart #frmCheckout select.field:focus,
#order-standard_cart #frmCheckout textarea.field:focus {
    border-color: var(--cart-blue) !important;
    outline: 3px solid rgba(57, 120, 255, .16) !important;
    outline-offset: 1px;
    box-shadow: 0 0 0 1px var(--cart-blue) !important;
}

#order-standard_cart #frmCheckout label,
#order-standard_cart #frmCheckout .field-label {
    color: #263950;
    font-weight: 700;
}

#order-standard_cart #frmCheckout input[type="radio"],
#order-standard_cart #frmCheckout input[type="checkbox"] {
    accent-color: var(--cart-blue);
}

#order-standard_cart #frmCheckout .account-select-container,
#order-standard_cart #frmCheckout .payment-methods-container,
#order-standard_cart #frmCheckout .cc-input-container {
    border: 1px solid var(--cart-line);
    border-radius: 13px;
    background: #f8faff;
}

@media (max-width: 767px) {
    #order-standard_cart .products .product { min-height: 0; padding: 22px; }
    #order-standard_cart .product header { margin: -22px -22px 20px; padding: 20px 22px; }
    #order-standard_cart .cart-body,
    #order-standard_cart .secondary-cart-body { padding-inline: 0; }
    #order-standard_cart .field-container { padding: 18px; }
    .sh-shopping-cart .store-order-container { padding: 20px 16px; border-radius: 13px; }
    #order-standard_cart #frmCheckout {
        width: min(100% - 20px, 1180px);
        padding: 22px 16px;
        border-radius: 14px;
    }
    #order-standard_cart .secondary-cart-body,
    #order-standard_cart .secondary-cart-sidebar { padding-inline: 0; }
    #order-standard_cart .secondary-cart-sidebar > div { position: static; }
    #order-standard_cart .addon-promo-container { padding: 18px !important; }
}

@media (prefers-reduced-motion: reduce) {
    #order-standard_cart * { scroll-behavior: auto !important; transition: none !important; }
}

/* ---------------------------------------------------------------------------
   Búsqueda, registro y transferencia de dominios.

   Estas pantallas se resuelven desde standard_cart y llegaban con la
   presentación de fábrica de WHMCS: una franja amarilla con un globo terráqueo
   y tarjetas de TLD en azul y amarillo, opuestas al navy/cian del sitio.
   --------------------------------------------------------------------------- */

/* El captcha se declara en un contenedor que queda con altura 0 mientras su
   iframe mide 60 px: no reserva espacio, se superpone al contenido siguiente y
   en la práctica no se puede resolver, de modo que ni el registro ni la
   transferencia llegan a enviarse. */
#order-standard_cart .g-recaptcha,
#order-standard_cart [id^="divDynamicRecaptcha"] {
    display: block;
    min-height: 78px;
    margin: 14px 0 4px;
}

#order-standard_cart .domain-checker-container {
    padding: 34px 28px;
    border: 1px solid rgba(53, 216, 255, .18);
    border-radius: 16px;
    background: radial-gradient(circle at 78% 30%, rgba(57, 120, 255, .28), transparent 42%), var(--cart-navy) !important;
    box-shadow: 0 22px 60px rgba(7, 18, 38, .22);
}
/* El globo de fábrica venía como imagen de fondo. */
#order-standard_cart .domain-checker-bg { background-image: none !important; }
#order-standard_cart .domain-checker-container h1,
#order-standard_cart .domain-checker-container h2,
#order-standard_cart .domain-checker-container p,
#order-standard_cart .domain-checker-container label { color: #fff; }

#order-standard_cart #frmDomainChecker .form-control,
#order-standard_cart #frmDomainTransfer .form-control {
    min-height: 52px;
    border-radius: 10px;
    font-size: 15px;
}
/* El borde claro sólo tiene sentido dentro del panel navy; en el formulario de
   transferencia, que va sobre tarjeta blanca, hace falta el borde del tema. */
#order-standard_cart .domain-checker-container .form-control {
    border: 1px solid rgba(255, 255, 255, .16);
    color: var(--cart-navy);
    background: #fff;
}
#order-standard_cart #frmDomainTransfer .form-control { border: 1px solid #cbd7e6; }
/* El botón conserva el azul primario del carrito para no introducir un tercer
   tratamiento; sólo se ajusta al alto del campo que acompaña. */
#order-standard_cart .domain-checker-container .btn {
    min-height: 52px;
    padding: 0 26px;
    border-radius: 10px;
    font-weight: 800;
}

/* Tarjetas de TLD destacados. */
#order-standard_cart .spotlight-tld {
    overflow: hidden;
    border: 1px solid var(--cart-line);
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 14px 38px rgba(18, 44, 78, .06);
}
#order-standard_cart .spotlight-tld .spotlight-tld-price,
#order-standard_cart .spotlight-tld [class*="price"] {
    color: #fff !important;
    background: var(--cart-navy) !important;
    font-weight: 800;
}
#order-standard_cart .tld-row,
#order-standard_cart .filtered-row { border-color: #eaf0f7; }
