/* Nexum order form. Defaults below are overridden by the Nexum addon/theme :root values. */
:where(:root) {
    --nx-primary: #2563eb;
    --nx-primary-rgb: 37, 99, 235;
    --nx-primary-hover: #1d4ed8;
    --nx-success: #0f9d5c;
    --nx-success-rgb: 15, 157, 92;
    --nx-success-alt: #12b76a;
    --nx-warning: #d17400;
    --nx-warning-rgb: 209, 116, 0;
    --nx-danger: #f04438;
    --nx-danger-rgb: 240, 68, 56;
    --nx-bg: #f1f1f1;
    --nx-card-bg: #ffffff;
    --nx-text: #1e293b;
    --nx-muted: #64748b;
    --nx-border: #eef0f4;
    --nx-shadow-sm: 0 1px 2px rgba(16, 24, 40, 0.04);
    --nx-pill-active-bg: #eefdf6;
    --nx-pill-active-text: #067a50;
    --nx-font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    --nx-font-size: 14px;
    --nx-font-size-h1: 28px;
    --nx-font-size-h2: 22px;
    --nx-font-size-h3: 18px;
    --nx-font-size-sm: 12px;
    --nx-font-size-xs: calc(var(--nx-font-size) - 3px);
    --nx-font-size-md: calc(var(--nx-font-size) - 0.5px);
    --nx-font-size-lg: calc(var(--nx-font-size) + 1px);
    --nx-font-size-xl: calc(var(--nx-font-size) + 2px);
    --nx-weight-heading: 600;
    --nx-radius-card: 18px;
    --nx-radius-button: 11px;
    --nx-radius-input: 11px;
    --nx-radius-badge: 999px;
    --nx-radius-sm: calc(var(--nx-radius-card) * 0.45);
    --nx-radius-md: calc(var(--nx-radius-card) * 0.65);
    --nx-space-1: 4px;
    --nx-space-2: 8px;
    --nx-space-3: 12px;
    --nx-space-4: 16px;
    --nx-space-5: 20px;
    --nx-space-6: 24px;
    --nx-space-7: 32px;
    --nx-space-8: 40px;
    --nx-container-width: 1280px;
    --nx-content-padding: 32px;
    --nx-header-height: 64px;
    --nx-topbar-utility-height: 48px;
    --nx-transition: 0.15s ease;
    --nx-transition-fast: 0.12s ease;
    --nx-transition-slow: 0.2s ease;
}

#order-nexum button:focus,
#order-nexum button:active,
#order-nexum button:focus-visible,
#order-nexum a:focus,
#order-nexum a:active,
#order-nexum a:focus-visible,
#order-nexum .btn:focus,
#order-nexum .btn:active,
#order-nexum input:focus,
#order-nexum select:focus {
    outline: none;
    box-shadow: none;
}

#order-nexum {
    --nx-primary-dark: var(--nx-primary-hover, #1e40af);
    --nx-text-body: var(--nx-muted, #475467);
    --nx-border-soft: var(--nx-border, #eef1f6);
    --nx-input-border: var(--nx-border, #e2e8f0);
    --nx-success-dark: var(--nx-success, #059669);
    --nx-success-text: var(--nx-success, #0c7d54);
    --nx-danger-text: var(--nx-danger, #dc2626);
    --nx-danger-soft: rgba(var(--nx-danger-rgb, 220, 38, 38), .09);
    --nx-radius-btn: var(--nx-radius-button, 12px);
    --nx-shadow-card: var(--nx-shadow-sm, 0 1px 2px rgba(16, 24, 40, .04));
    --nx-shadow-elevated: 0 8px 24px rgba(16, 24, 40, .06);
    --nx-shadow-btn: 0 8px 20px rgba(var(--nx-primary-rgb, 37, 99, 235), .28);
}

#order-nexum .form-control,
#order-nexum .item,
#order-nexum .active,
#order-nexum .product,
#order-nexum .product-info,
#order-nexum .mc-promo,
#order-nexum .product-recommendation,
#order-nexum .input-group-box,
#order-nexum .view-cart-promotion-code,
#order-nexum .spotlight-tld,
#order-nexum .spotlight-tlds,
#order-nexum .option,
#order-nexum .unavailable,
#order-nexum .tab-content,
#order-nexum .summary-container,
#order-nexum .apply-credit-container,
#order-nexum .service-renewals,
#order-nexum .domain-lookup-suggestions-loader {
    background: var(--nx-card-bg);
    background-color: var(--nx-card-bg);
    color: var(--nx-text);
    border-color: var(--nx-border);
}
#order-nexum,
#order-nexum p,
#order-nexum td,
#order-nexum th,
#order-nexum li,
#order-nexum label,
#order-nexum span:not([class]) {
    color: var(--nx-text);
}

/* Base resets for standard cart container */
#order-nexum {
    font-family: var(--nx-font-family, 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);
    color: var(--nx-text);
    background: transparent;
    -webkit-font-smoothing: antialiased;
}

#order-nexum .row-flex,
.row-flex {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin: 0;
}

#order-nexum .cart-sidebar,
.cart-sidebar {
    flex: 0 0 250px;
    width: 250px;
}

body.nx-cart-no-sidebar #order-nexum:not(.nx-cart-catalog) .cart-sidebar,
body.nx-cart-no-sidebar #order-nexum:not(.nx-cart-catalog) .sidebar-collapsed,
body.nx-cart-no-sidebar #order-standard_cart .cart-sidebar {
    display: none !important;
}
body.nx-cart-no-sidebar #order-nexum:not(.nx-cart-catalog) .cart-body,
body.nx-cart-no-sidebar #order-standard_cart .cart-body {
    flex: 1 1 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
}

/* High specificity overrides for cart-body and secondary-cart-body */
body.nx-theme #order-nexum .cart-body,
body #order-nexum .cart-body,
html body #order-nexum .cart-body,
#order-nexum .cart-body {
    flex: 1 1 0%;
    width: auto;
    min-width: 0;
}

body.nx-theme #order-nexum .secondary-cart-body,
body #order-nexum .secondary-cart-body,
html body #order-nexum .secondary-cart-body,
#order-nexum .secondary-cart-body,
.secondary-cart-body {
    flex: 1 1 0%;
    width: auto;
    min-width: 0;
}

body.nx-theme #order-nexum .secondary-cart-sidebar,
body #order-nexum .secondary-cart-sidebar,
html body #order-nexum .secondary-cart-sidebar,
#order-nexum .secondary-cart-sidebar,
.secondary-cart-sidebar {
    flex: 0 0 clamp(300px, 26%, 360px) !important;
    width: clamp(300px, 26%, 360px) !important;
}

body.nx-theme #frmConfigureProduct,
body #frmConfigureProduct,
html body #frmConfigureProduct,
#frmConfigureProduct {
    display: block;
    width: 100%;
}

body.nx-theme #frmConfigureProduct > .row,
body #frmConfigureProduct > .row,
html body #frmConfigureProduct > .row,
#frmConfigureProduct > .row {
    display: flex;
    flex-wrap: nowrap;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
}

/* Mobile responsive overrides */
@media (max-width: 991.98px) {
    #order-nexum .row-flex, 
    .row-flex {
        flex-direction: column;
    }
    
    #order-nexum .sidebar-collapsed,
    .sidebar-collapsed {
        display: none !important;
    }

    #order-nexum .cart-sidebar,
    .cart-sidebar,
    body.nx-theme #order-nexum .cart-body,
    body #order-nexum .cart-body,
    html body #order-nexum .cart-body,
    #order-nexum .cart-body,
    body.nx-theme #frmConfigureProduct > .row,
    body #frmConfigureProduct > .row,
    html body #frmConfigureProduct > .row,
    #frmConfigureProduct > .row,
    body.nx-theme #order-nexum .secondary-cart-body,
    body #order-nexum .secondary-cart-body,
    html body #order-nexum .secondary-cart-body,
    #order-nexum .secondary-cart-body,
    .secondary-cart-body,
    body.nx-theme #order-nexum .secondary-cart-sidebar,
    body #order-nexum .secondary-cart-sidebar,
    html body #order-nexum .secondary-cart-sidebar,
    #order-nexum .secondary-cart-sidebar,
    .secondary-cart-sidebar {
        flex: 1 1 100% !important;
        width: 100% !important;
    }
    #order-nexum .secondary-cart-sidebar,
    .secondary-cart-sidebar {
        margin-left: 0 !important;
        margin-right: 0 !important;
        margin-top: var(--nx-space-5, 20px) !important;
        box-sizing: border-box !important;
    }
    #orderSummary {
        box-sizing: border-box !important;
        max-width: 100%;
    }
    /* flex-direction: column above handles the stacking, so nowrap is safe. */
    body.nx-theme #frmConfigureProduct > .row,
    body #frmConfigureProduct > .row,
    html body #frmConfigureProduct > .row,
    #frmConfigureProduct > .row {
        flex-direction: column;
    }
}

/* Sidebar Categories & Actions menu */
#order-nexum .list-group,
#order-nexum .nav-tabs {
    border-radius: var(--nx-radius-card);
    border: 1px solid var(--nx-border);
    box-shadow: 0 1px 2px rgba(16,24,40,.04);
    background: var(--nx-card-bg);
    padding: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 24px;
}

#order-nexum .list-group-item,
#order-nexum .nav-tabs > li > a {
    border: none;
    border-radius: var(--nx-radius-md);
    font-weight: 400;
    font-size: var(--nx-font-size-md);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}
/* The tab pills still need what was removed above; the sidebar rows do not. */
#order-nexum .nav-tabs > li > a {
    color: var(--nx-muted);
    padding: 10px 16px;
    background: transparent;
    transition: background-color var(--nx-transition), color var(--nx-transition);
}

#order-nexum .nav-tabs > li > a:hover {
    color: var(--nx-primary-text, var(--nx-primary));
    background: rgba(var(--nx-primary-rgb), 0.07);
}

#order-nexum .list-group-item:hover:not(.active):not(.domain-suggestion) {
    background: transparent;
    text-decoration: none;
    padding-left: 12px;
    padding-right: 12px;
}

#order-nexum .list-group-item.active,
#order-nexum .list-group-item.active:hover,
#order-nexum .nav-tabs > li.active > a,
#order-nexum .nav-tabs > li.active > a:hover {
    color: var(--nx-primary-text, var(--nx-primary));
    background: rgba(var(--nx-primary-rgb), 0.07);
}

/* Form Controls (Inputs, Textareas, Selects) */
#order-nexum .form-control {
    border-radius: var(--nx-radius-md);
    border: 1px solid var(--nx-border);
    padding: 10px 16px;
    font-size: var(--nx-font-size);
    font-weight: 400;
    color: var(--nx-text);
    height: auto;
    box-shadow: none;
    background: var(--nx-card-bg);
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}

#order-nexum .intl-tel-input { width: 100%; display: block; }
#order-nexum .intl-tel-input .form-control { padding-left: 52px; }
#order-nexum .intl-tel-input.iti-sdc-2 .form-control { padding-left: 66px; }
#order-nexum .intl-tel-input.iti-sdc-3 .form-control { padding-left: 74px; }

#order-nexum .intl-tel-input.allow-dropdown { display: flex; align-items: stretch; }
#order-nexum .intl-tel-input.allow-dropdown .flag-container {
    position: relative;
    right: auto;
    flex: 0 0 auto;
}
#order-nexum .intl-tel-input.allow-dropdown .form-control {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    padding-left: 14px;
}

#order-nexum .intl-tel-input.separate-dial-code .selected-flag {
    background-color: var(--nx-bg);
    color: var(--nx-text);
    font-weight: 400;
    border-top-left-radius: var(--nx-radius-md);
    border-bottom-left-radius: var(--nx-radius-md);
    border-right: 1px solid var(--nx-border);
}
#order-nexum .intl-tel-input.separate-dial-code .selected-dial-code { color: var(--nx-text); }
#order-nexum .intl-tel-input .selected-flag .iti-arrow { border-top-color: var(--nx-muted); }
#order-nexum .intl-tel-input .selected-flag .iti-arrow.up { border-bottom-color: var(--nx-muted); }
#order-nexum .intl-tel-input.allow-dropdown .flag-container:hover .selected-flag {
    background-color: rgba(var(--nx-primary-rgb), .08);
}
#order-nexum .intl-tel-input:focus-within .selected-flag { border-right-color: var(--nx-primary); }

#order-nexum .intl-tel-input .country-list {
    background-color: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    box-shadow: var(--nx-shadow-elevated);
    color: var(--nx-text);
}
#order-nexum .intl-tel-input .country-list .divider { border-bottom-color: var(--nx-border); }
#order-nexum .intl-tel-input .country-list .country { color: var(--nx-text); }
#order-nexum .intl-tel-input .country-list .country .dial-code { color: var(--nx-muted); }
#order-nexum .intl-tel-input .country-list .country.highlight,
#order-nexum .intl-tel-input .country-list .country:hover {
    background-color: rgba(var(--nx-primary-rgb), .08);
}

#order-nexum .form-control:focus {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.12);
}

#order-nexum .prepend-icon { position: relative; }
#order-nexum .prepend-icon .field-icon {
    position: absolute;
    left: 1px;
    top: 1px;
    bottom: 1px;
    width: 42px;
    height: auto;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    z-index: 3;
    pointer-events: none;
}
#order-nexum .field-icon i,
#order-nexum .prepend-icon .field-icon i {
    color: var(--nx-muted);
    font-size: var(--nx-font-size-lg);
}
#order-nexum .prepend-icon .field,
#order-nexum .prepend-icon .form-control,
#order-nexum .prepend-icon select.form-control {
    padding-left: 44px;
}

/* Primary and Action Buttons */
#order-nexum .btn-primary,
#order-nexum .btn-checkout {
    background: var(--nx-primary);
    border: none;
    border-radius: var(--nx-radius-btn);
    padding: 13px 26px;
    font-weight: 400;
    font-size: 14.5px;
    color: #fff;
    box-shadow: var(--nx-shadow-btn);
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
}

#order-nexum .btn-primary:hover,
#order-nexum .btn-checkout:hover {
    background: var(--nx-primary-dark);
    transform: translateY(-1px);
    box-shadow: 0 10px 24px rgba(var(--nx-primary-rgb), .34);
}

/* Panel / Card Overrides */
#order-nexum .panel,
#order-nexum .card {
    border-radius: var(--nx-radius-card);
    border: 1px solid var(--nx-border);
    box-shadow: var(--nx-shadow-card);
    background: var(--nx-card-bg);
    margin-bottom: 24px;
    overflow: hidden;
}

#order-nexum .card:has(.intl-tel-input),
#order-nexum .panel:has(.intl-tel-input) {
    overflow: visible;
}

#order-nexum .panel-heading,
#order-nexum .card-header {
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-weight: 400;
    font-size: var(--nx-font-size-xl);
    letter-spacing: -0.3px;
    padding: 18px 24px;
    border-bottom: 1px solid var(--nx-border-soft);
    text-transform: none;
}

#order-nexum .panel-body,
#order-nexum .card-body {
    padding: 24px;
}

/* Sidebar panel specific overrides to ensure they match mockup design */
#order-nexum .card-sidebar {
    border-radius: var(--nx-radius-card);
    border: 1px solid var(--nx-border);
    box-shadow: 0 1px 2px rgba(16,24,40,.04);
    overflow: hidden;
    background: var(--nx-card-bg);
}

/* Strip borders, backgrounds, and shadows from nested inner sidebar containers */
#order-nexum .card-sidebar .collapsable-card-body,
#order-nexum .card-sidebar .list-group,
#order-nexum .card-sidebar .card-body,
#order-nexum .card-sidebar .panel-body {
    border: none;
    background: transparent;
    box-shadow: none;
    margin: 0;
    padding: 8px;
}

#order-nexum .card-sidebar .card-header,
#order-nexum .card-sidebar .panel-heading {
    background: transparent;
    color: var(--nx-text);
    border-bottom: 1px solid var(--nx-border);
    padding: 16px 20px;
}

#order-nexum .card-sidebar .panel-title,
#order-nexum .card-sidebar .card-header h3 {
    color: var(--nx-text);
    font-size: var(--nx-font-size-lg);
    font-weight: 600;
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

#order-nexum .card-sidebar .panel-title span.material-symbols-rounded,
#order-nexum .card-sidebar .card-header h3 span.material-symbols-rounded {
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .card-sidebar .list-group-item {
    border: none;
    display: flex;
    align-items: center;
}

#order-nexum .card-sidebar .list-group-item span.material-symbols-rounded {
    color: inherit;
}

/* Sidebar List-Group Active Item styling (Mockup Light Blue Pill) */
#order-nexum .card-sidebar .list-group-item.active {
    font-weight: 400;
}

#order-nexum .card-sidebar .list-group-item.active span.material-symbols-rounded {
    color: var(--nx-primary-text, var(--nx-primary));
}

/* Domain Selection Card widgets styled like mockup design */
#order-nexum .nx-domain-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 24px;
}

#order-nexum .nx-domain-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    padding: 24px;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    box-shadow: 0 1px 2px rgba(16,24,40,.04);
}

#order-nexum .nx-domain-card.active {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.08);
}

#order-nexum .nx-domain-label {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 0;
    cursor: pointer;
    width: 100%;
}

/* Custom Radio Dot */
#order-nexum .nx-domain-radio-wrapper {
    position: relative;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
}

#order-nexum .nx-domain-radio-wrapper input[type="radio"],
#order-nexum .nx-domain-radio-wrapper .iradio_square-blue {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    opacity: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    border-radius: 0 !important;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    z-index: 2;
}
#order-nexum .nx-domain-radio-wrapper input[type="radio"]::before {
    content: none;
}

#order-nexum .nx-domain-radio-dot {
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid var(--nx-border);
    background: var(--nx-card-bg);
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
}

#order-nexum .nx-domain-card.active .nx-domain-radio-dot {
    border-color: var(--nx-primary);
}

#order-nexum .nx-domain-radio-dot::after {
    content: '';
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--nx-primary);
    display: none;
}

#order-nexum .nx-domain-card.active .nx-domain-radio-dot::after {
    display: block;
}

/* Icon Pill Box */
#order-nexum .nx-domain-icon-wrapper {
    width: 40px;
    height: 40px;
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), 0.06);
    color: var(--nx-primary-text, var(--nx-primary));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

#order-nexum .nx-domain-icon-wrapper.existing-icon {
    background: rgba(var(--nx-success-rgb), .10);
    color: var(--nx-success);
}

#order-nexum .nx-domain-icon-wrapper span {
    font-size: 20px;
}

/* Text */
#order-nexum .nx-domain-text {
    display: flex;
    flex-direction: column;
    text-align: left;
}

#order-nexum .nx-domain-title {
    font-size: var(--nx-font-size-lg);
    font-weight: 600;
    color: var(--nx-text);
}

#order-nexum .nx-domain-desc {
    font-size: 12.5px;
    color: var(--nx-muted);
    margin-top: 2px;
}

/* Input Group */
#order-nexum .nx-domain-input-group {
    padding-top: 20px;
    margin-top: 20px;
    border-top: 1px dashed var(--nx-border);
    display: none; /* Hide by default */
}

/* Show only when the card is active */
#order-nexum .nx-domain-card.active .nx-domain-input-group {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

#order-nexum .nx-domain-search-box {
    display: flex;
    align-items: center;
    border: 1.5px solid var(--nx-border);
    border-radius: 14px;
    padding: 6px 6px 6px 16px;
    background: var(--nx-bg);
    gap: 12px;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), box-shadow var(--nx-transition-fast);
}

#order-nexum .nx-domain-search-box:hover {
    border-color: rgba(var(--nx-primary-rgb), 0.35);
}

#order-nexum .nx-domain-search-box:focus-within {
    border-color: var(--nx-primary);
    background: var(--nx-card-bg);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.10);
}
#order-nexum .nx-domain-search-box:focus-within .search-icon {
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .nx-domain-search-box .search-icon {
    color: var(--nx-muted);
    font-size: 20px;
    transition: color var(--nx-transition-fast);
}

#order-nexum .nx-domain-search-box input {
    border: none;
    box-shadow: none;
    background: transparent;
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    padding: 0;
    width: 100%;
    outline: none;
    height: auto;
}

#order-nexum .nx-domain-search-box input::placeholder {
    color: var(--nx-muted);
}

/* Custom Search/Check Button */
#order-nexum .nx-domain-btn {
    background: var(--nx-primary);
    color: #fff;
    border: none;
    border-radius: var(--nx-radius-md);
    padding: 10px 20px;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    cursor: pointer;
    transition: background-color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    height: 38px;
    white-space: nowrap;
    box-shadow: none;
    margin: 0;
    flex-shrink: 0;
}

#order-nexum .nx-domain-btn:hover {
    background: var(--nx-primary-hover);
    box-shadow: 0 4px 12px rgba(var(--nx-primary-rgb), 0.25);
}
#order-nexum .nx-domain-btn:active {
    transform: translateY(1px);
    box-shadow: none;
}

#order-nexum .nx-domain-btn .material-symbols-rounded {
    font-size: var(--nx-font-size-xl);
}

/* Filters row */
#order-nexum .nx-domain-filters {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

#order-nexum .nx-filter-select-wrapper {
    position: relative;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    padding: 8px 32px 8px 16px;
    background: var(--nx-card-bg);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
}

#order-nexum .nx-filter-select-wrapper.decorative {
    cursor: not-allowed;
    background: var(--nx-bg);
}

#order-nexum .nx-filter-select-wrapper select {
    border: none;
    background: transparent;
    outline: none;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
    -webkit-appearance: none;
    appearance: none;
    padding: 0;
    margin: 0;
    height: auto;
    width: auto;
    box-shadow: none;
}

#order-nexum .nx-filter-select-wrapper.decorative select {
    color: var(--nx-muted);
    cursor: not-allowed;
}

#order-nexum .nx-filter-select-wrapper .dropdown-icon {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: var(--nx-font-size-xl);
    color: var(--nx-muted);
    pointer-events: none;
}
#order-nexum .nx-filter-select-wrapper:has(.nx-custom-select-wrapper) .dropdown-icon {
    display: none;
}
#order-nexum .nx-filter-select-wrapper .nx-custom-select-wrapper { width: 100%; }
#order-nexum .nx-filter-select-wrapper .nx-custom-select-trigger {
    border: none;
    background: transparent;
    padding: 0;
    width: 100%;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text);
    gap: 8px;
}
#order-nexum .nx-filter-select-wrapper.decorative .nx-custom-select-trigger {
    color: var(--nx-muted);
    cursor: not-allowed;
}

/* Custom Checkbox */
#order-nexum .nx-filter-checkbox {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
    margin: 0;
}

#order-nexum .nx-filter-checkbox input[type="checkbox"],
#order-nexum .nx-filter-checkbox .icheckbox_square-blue {
    display: none !important;
}

#order-nexum .nx-filter-checkbox .checkbox-box {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    border-radius: 6px;
    border: 1.5px solid var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.10);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

#order-nexum .nx-filter-checkbox .checkbox-box::after {
    content: '\e5ca'; /* check icon */
    font-family: 'Material Symbols Rounded';
    font-size: var(--nx-font-size);
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    display: block;
}

/* Order Summary Column Styling (design: dark gradient header + white body) */
#orderSummary {
    position: relative;
    border-radius: var(--nx-radius-card);
    border: 1px solid var(--nx-border);
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-elevated);
    overflow: hidden;
    width: 100%;
    padding: 0;
}

#orderSummary .order-summary {
    background: transparent;
    border: none;
    border-radius: 0;
    margin: 0;
    padding: 0;
}

/* Header bar — the summary title (h2) becomes a full-bleed gradient strip. */
#orderSummary h2,
#orderSummary .summary-header {
    background: linear-gradient(105deg,
        color-mix(in srgb, var(--nx-primary) 38%, #000) 0%,
        color-mix(in srgb, var(--nx-primary) 62%, #000) 48%,
        color-mix(in srgb, var(--nx-primary) 80%, #000) 100%);
    color: #fff;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    padding: 16px 18px;
    text-align: left;
    margin: 0;
    border: none;
    letter-spacing: -.2px;
}

/* Body content wrapper gets the padding the card no longer has */
#orderSummary .summary-container,
#orderSummary .panel-body {
    padding: 18px;
    background: var(--nx-card-bg);
    color: var(--nx-text);
}

#orderSummary > .text-center {
    padding: 0 18px 18px;
    background: var(--nx-card-bg);
}

#orderSummary .btn-primary {
    background: var(--nx-primary);
    border-radius: var(--nx-radius-btn);
    padding: 13px 20px;
    font-size: 14.5px;
    font-weight: 400;
    width: 100%;
    margin-top: 18px;
}

/* Billing Cycle Choice Radio Grid */
#order-nexum .billing-cycle-options {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 16px;
    margin-bottom: 24px;
}

#order-nexum .billing-cycle-options label {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    background: var(--nx-card-bg, #fff);
    text-align: center;
    cursor: pointer;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    margin: 0;
    font-weight: 400;
}

#order-nexum .billing-cycle-options label:has(input:checked),
#order-nexum .billing-cycle-card.active {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.08);
}

#order-nexum .addons-list,
#order-nexum .addon-products {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 16px;
    margin-top: 16px;
}
#order-nexum .addons-list > [class*="col-"],
#order-nexum .addon-products > [class*="col-"] {
    width: auto;
    max-width: none;
    flex: none;
    padding-left: 0;
    padding-right: 0;
}

#order-nexum .panel-addon {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    background: var(--nx-card-bg);
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    margin: 0;
}
#order-nexum .panel-addon .panel-body > label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 8px;
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
}
#order-nexum .panel-addon .panel-body {
    padding: 0;
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    line-height: 1.55;
}
#order-nexum .panel-addon .panel-body > br { display: none; }

#order-nexum .products .row-eq-height {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
}
#order-nexum .nx-addon-col {
    padding: 0 10px;
    margin-bottom: 20px;
    transition: opacity var(--nx-transition);
}
#order-nexum .nx-addon-col > .product {
    width: 100%;
    height: 100%;
}
#order-nexum .nx-addon-col > .product > form.form-inline {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

#order-nexum .panel-addon:has(input:checked) {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.08);
}

#order-nexum .panel-addon .btn-add-to-cart {
    background: var(--nx-card-bg);
    border: 1.5px solid var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
    border-radius: var(--nx-radius-md);
    font-weight: 400;
    padding: 8px 16px;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
}

#order-nexum .panel-addon .btn-add-to-cart:hover {
    background: var(--nx-primary);
    color: #fff;
}

/* Custom Config Option Rows */
#order-nexum .config-option-row {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    padding: 14px 20px;
    margin-bottom: 8px;
    background: var(--nx-card-bg);
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
}

#order-nexum .config-option-row:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
}

/* "Total Due Today" success alert (checkout / viewcart) — design: compact green pill */
#order-nexum .alert-success {
    background: rgba(var(--nx-success-rgb), 0.08);
    border: 1px solid rgba(var(--nx-success-rgb), 0.25);
    border-radius: var(--nx-radius-md);
    color: var(--nx-success);
    padding: 14px 18px;
    text-align: center;
    margin-bottom: 20px;
    box-shadow: none;
    font-weight: 400;
    font-size: 14.5px;
}

#order-nexum .alert-success h3 {
    font-size: var(--nx-font-size-xl);
    font-weight: 600;
    margin: 0;
    color: var(--nx-success-text);
}

#order-nexum #nxCheckoutTotalBanner {
    display: none;
}

/* Product Specs Grid Styling */
#order-nexum .nx-product-card {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    padding: 24px;
    background: var(--nx-card-bg);
    box-shadow: 0 1px 3px rgba(16,24,40,.05);
}

#order-nexum .nx-left-specs {
    border-top: 1px solid var(--nx-border);
    padding-top: 20px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 16px;
    width: 100%;
}

#order-nexum .nx-left-spec-row {
    background: var(--nx-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    padding: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    gap: 4px;
}

#order-nexum .nx-left-spec-val {
    font-size: var(--nx-font-size-xl);
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .nx-left-spec-key {
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    color: var(--nx-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Billing Cycle active border and box-shadow override */
#order-nexum .billing-cycle-card.active {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.08);
}

/* Option Row (Config options / MarketConnect) active states */
.nx-option-row:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
}

#order-nexum .nx-plp-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    align-items: stretch;
    margin: 0 0 24px;
}

#order-nexum .nx-plp-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    display: flex;
    flex-direction: column;
    overflow: hidden;
    position: relative;
    transition: transform var(--nx-transition-slow), box-shadow var(--nx-transition-slow), border-color var(--nx-transition-slow);
    width: auto;
    float: none;
    margin: 0;
    padding: 0;
}

#order-nexum .nx-plp-card.featured {
    border-color: var(--nx-primary);
    box-shadow: 0 22px 46px rgba(var(--nx-primary-rgb), .14);
}

/* diagonal "Popular" ribbon */
#order-nexum .nx-plp-ribbon {
    position: absolute;
    top: 18px;
    right: -34px;
    transform: rotate(45deg);
    background: var(--nx-primary);
    color: #fff;
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    letter-spacing: .6px;
    padding: 5px 44px;
    text-transform: uppercase;
    z-index: 2;
}

#order-nexum .nx-plp-head {
    padding: 24px 26px 18px;
    border-bottom: 1px solid var(--nx-border-soft);
}

#order-nexum .nx-plp-icon {
    width: 46px;
    height: 46px;
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), 0.10);
    color: var(--nx-primary-text, var(--nx-primary));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
}

#order-nexum .nx-plp-icon .material-symbols-rounded { font-size: 25px; }

#order-nexum .nx-plp-name {
    font-size: 20px;
    font-weight: 400;
    letter-spacing: -.4px;
    color: var(--nx-text);
}

#order-nexum .nx-plp-stock {
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-success);
    margin-top: 4px;
}

#order-nexum .nx-plp-desc {
    font-size: 13px;
    color: var(--nx-muted);
    margin-top: 8px;
    line-height: 1.55;
    display: -webkit-box;
    -webkit-line-clamp: 6;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

#order-nexum .nx-plp-body {
    padding: 22px 26px;
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}

#order-nexum .nx-plp-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 20px;
}

#order-nexum .nx-plp-chips:empty { display: none; margin: 0; }
#order-nexum .nx-plp-chip-source { display: none; }

#order-nexum .nx-plp-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(var(--nx-primary-rgb), 0.10);
    border: 1px solid rgba(var(--nx-primary-rgb), 0.18);
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: 11.5px;
    font-weight: 400;
    padding: 6px 11px;
    border-radius: var(--nx-radius-badge);
}

#order-nexum .nx-plp-chip .material-symbols-rounded { font-size: var(--nx-font-size-lg); color: var(--nx-primary-text, var(--nx-primary)); }

#order-nexum .nx-plp-feat {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

#order-nexum .nx-plp-feat-row {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: var(--nx-font-size-md);
    color: var(--nx-text-body);
    margin: 0;
}

#order-nexum .nx-plp-feat-row .lbl {
    flex: 1 1 auto;
    color: var(--nx-text-body);
}

#order-nexum .nx-plp-feat-row .tick {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    border-radius: 50%;
    background: rgba(var(--nx-primary-rgb), 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
}

#order-nexum .nx-plp-feat-row .tick .material-symbols-rounded { font-size: var(--nx-font-size); color: var(--nx-primary-text, var(--nx-primary)); }

#order-nexum .nx-plp-feat-row b {
    color: var(--nx-text);
    font-weight: 400;
    margin-left: auto;
    padding-left: 14px;
}

#order-nexum .nx-plp-foot { padding: 0 26px 26px; }

#order-nexum .nx-plp-price-label { font-size: var(--nx-font-size-sm); font-weight: 400; color: var(--nx-muted); }

#order-nexum .nx-plp-price { display: flex; align-items: baseline; gap: 4px; margin-top: 2px; }

#order-nexum .nx-plp-price .amt { font-size: 30px; font-weight: 400; letter-spacing: -1px; color: var(--nx-text); }

#order-nexum .nx-plp-cycle { font-size: 12.5px; font-weight: 400; color: var(--nx-muted); margin-top: 1px; }

#order-nexum .nx-plp-setup { font-size: 11.5px; color: var(--nx-muted); margin-top: 4px; }

#order-nexum .nx-plp-cta {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    margin-top: 18px;
    background: var(--nx-primary);
    color: #fff;
    font-weight: 400;
    font-size: 14.5px;
    padding: 13px 0;
    border-radius: var(--nx-radius-md);
    text-decoration: none;
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
    box-shadow: 0 10px 22px rgba(var(--nx-primary-rgb), .26);
}

#order-nexum .nx-plp-cta:hover {
    background: var(--nx-primary-hover);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 12px 26px rgba(var(--nx-primary-rgb), .32);
}

#order-nexum .nx-plp-cta .material-symbols-rounded { font-size: 19px; }

#order-nexum .nx-complete {
    display: flex;
    flex-direction: column;
    gap: 20px;
    width: 100%;
    max-width: 66.6667%;
    margin-inline: auto;
}
@media (max-width: 991.98px) {
    #order-nexum .nx-complete {
        max-width: 100%;
    }
}

#order-nexum .nx-complete-hero {
    position: relative;
    background: linear-gradient(150deg, var(--nx-success), var(--nx-success-dark));
    border-radius: var(--nx-radius-card);
    box-shadow: 0 14px 34px color-mix(in srgb, var(--nx-success) 28%, transparent);
    padding: 34px;
    text-align: center;
    color: #fff;
    overflow: hidden;
}
#order-nexum .nx-complete-decor {
    position: absolute; right: -40px; top: -40px;
    width: 170px; height: 170px; border-radius: 50%;
    background: rgba(255, 255, 255, .10);
}
#order-nexum .nx-complete-check {
    width: 70px; height: 70px; border-radius: 50%;
    background: rgba(255, 255, 255, .18);
    display: inline-flex; align-items: center; justify-content: center;
    font-size: 40px; margin-bottom: 14px;
    font-variation-settings: 'FILL' 1; position: relative; z-index: 1;
}
#order-nexum .nx-complete-hero h1 {
    margin: 0; font-size: 26px; font-weight: 600; letter-spacing: -.5px;
    color: #fff; border: none;
}
#order-nexum .nx-complete-hero p {
    margin: 8px 0 0; font-size: var(--nx-font-size);
    color: color-mix(in srgb, #fff 82%, transparent);
}

#order-nexum .nx-complete-details {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1px; background: var(--nx-border-soft);
    border: 1px solid var(--nx-border); border-radius: var(--nx-radius-card); overflow: hidden;
}
#order-nexum .nx-complete-cell { background: var(--nx-card-bg); padding: 18px 22px; }
#order-nexum .nx-complete-cell .k { font-size: var(--nx-font-size-sm); color: var(--nx-muted); font-weight: 400; }
#order-nexum .nx-complete-cell .v { font-size: var(--nx-font-size-lg); font-weight: 400; color: var(--nx-text); margin-top: 3px; }
#order-nexum .nx-complete-cell .v.mono { font-family: ui-monospace, Menlo, monospace; }
#order-nexum .nx-complete-cell .v.nx-paid { color: var(--nx-success); }
#order-nexum .nx-complete-cell .v.nx-pending { color: var(--nx-warning); }

#order-nexum .nx-complete-next {
    background: var(--nx-card-bg); border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card); box-shadow: var(--nx-shadow-card); padding: 24px;
}
#order-nexum .nx-complete-next-title {
    font-size: var(--nx-font-size-sm); font-weight: 600; letter-spacing: .6px;
    text-transform: uppercase; color: var(--nx-muted); margin-bottom: 16px;
}
#order-nexum .nx-complete-next-rows {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 16px;
}
#order-nexum .nx-next-row { display: flex; gap: 13px; margin-bottom: 16px; align-items: flex-start; }
#order-nexum .nx-complete-next-rows .nx-next-row { margin-bottom: 0; }
#order-nexum .nx-next-ic {
    width: 34px; height: 34px; flex: 0 0 34px; border-radius: var(--nx-radius-md);
    display: flex; align-items: center; justify-content: center;
}
#order-nexum .nx-next-ic .material-symbols-rounded { font-size: 19px; font-variation-settings: 'FILL' 1; }
#order-nexum .nx-next-ic.blue { background: rgba(var(--nx-primary-rgb), 0.10); color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-next-ic.amber { background: rgba(var(--nx-warning-rgb, 245, 158, 11), 0.10); color: var(--nx-warning); }
#order-nexum .nx-next-ic.green { background: rgba(var(--nx-success-rgb, 18, 183, 106), 0.10); color: var(--nx-success); }
#order-nexum .nx-next-row .t { font-size: var(--nx-font-size); font-weight: 400; color: var(--nx-text); }
#order-nexum .nx-next-row .d { font-size: 12.5px; color: var(--nx-muted); margin-top: 1px; }

#order-nexum .nx-complete-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
#order-nexum .nx-complete-btn {
    display: inline-flex; align-items: center; gap: 8px;
    background: var(--nx-primary); color: #fff;
    font-weight: 400; font-size: var(--nx-font-size);
    padding: 12px 24px; border-radius: var(--nx-radius-button); text-decoration: none;
    box-shadow: 0 8px 18px rgba(var(--nx-primary-rgb), .28); transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
}
#order-nexum .nx-complete-btn:hover {
    background: var(--nx-primary-hover); color: #fff;
    transform: translateY(-1px);
}
#order-nexum .nx-complete-btn-ghost {
    display: inline-flex; align-items: center; gap: 8px;
    border: 1px solid var(--nx-input-border); color: var(--nx-text); font-weight: 400; font-size: var(--nx-font-size);
    padding: 12px 24px; border-radius: var(--nx-radius-button); text-decoration: none; background: var(--nx-card-bg);
}
#order-nexum .nx-complete-btn-ghost:hover { border-color: var(--nx-primary); color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-complete-btn-plain { display: inline-flex; align-items: center; color: var(--nx-muted); font-weight: 400; font-size: var(--nx-font-size); padding: 12px 16px; text-decoration: none; }
#order-nexum .nx-complete-btn .material-symbols-rounded,
#order-nexum .nx-complete-btn-ghost .material-symbols-rounded { font-size: var(--nx-font-size-h3); }

#order-nexum .order-confirmation-addon-output {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 24px;
    color: var(--nx-text);
}
#order-nexum .order-confirmation-addon-output:empty { display: none; }

/* ---- Billing cycle cards ---- */
#order-nexum .billing-cycle-card {
    position: relative;
    width: 100%;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 16px);
    padding: 20px;
    background: var(--nx-card-bg, #fff);
    cursor: pointer;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    box-sizing: border-box;
}
#order-nexum .billing-cycle-card:hover { border-color: var(--nx-primary); }
/* Room above the title for the corner dot, so a long cycle name never runs under it. */
#order-nexum .billing-cycle-card { padding: 32px 14px 20px; text-align: center; }
#order-nexum .billing-cycle-card .cycle-title { overflow-wrap: anywhere; }
#order-nexum .billing-cycle-card .nx-cycle-input,
#order-nexum .billing-cycle-card .iradio_square-blue,
#order-nexum .billing-cycle-card .icheckbox_square-blue,
#order-nexum .billing-cycle-card .iCheck-helper,
#order-nexum .billing-cycle-card input[type="radio"] { display: none !important; }
#order-nexum .billing-cycle-card .cycle-select-dot {
    position: absolute;
    top: 10px; right: 10px;
    width: 18px; height: 18px;
    border-radius: 50%;
    border: 2px solid var(--nx-border);
    display: flex; align-items: center; justify-content: center;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
    background: var(--nx-card-bg, #fff);
}
#order-nexum .billing-cycle-card .cycle-select-dot > span {
    width: 8px; height: 8px; border-radius: 50%;
    background: var(--nx-primary); display: none;
}
#order-nexum .billing-cycle-card.active .cycle-select-dot { border-color: var(--nx-primary); }
#order-nexum .billing-cycle-card.active .cycle-select-dot > span { display: block; }
/* NOTE: .billing-cycle-card.active bg/border already defined earlier in custom.css */
#order-nexum .billing-cycle-card .cycle-title {
    font-size: 11.5px; font-weight: 600; color: var(--nx-muted);
    text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 6px;
}
#order-nexum .billing-cycle-card .cycle-price {
    font-size: var(--nx-font-size-h3); font-weight: 400; color: var(--nx-text);
}
#order-nexum .billing-cycle-card .cycle-setup {
    font-size: var(--nx-font-size-xs); color: var(--nx-muted); font-weight: 400; margin-top: 4px;
}
#order-nexum .billing-cycle-card .cycle-savings {
    font-size: 10px;
    background: var(--nx-pill-active-bg, #ecfdf3);
    color: var(--nx-pill-active-text, #0c7d54);
    padding: 2px 8px; border-radius: 6px; font-weight: 400; margin-top: 6px;
}

/* ---- Quantity stepper ---- */
#order-nexum .nx-qty-wrapper {
    display: inline-flex; align-items: center;
    border: 1px solid transparent;
    box-shadow: 0 1px 3px rgba(15, 23, 42, .08);
    border-radius: var(--nx-radius-button, 12px);
    background: var(--nx-card-bg, #fff);
    overflow: hidden; max-width: 140px;
}
#order-nexum .nx-qty-wrapper button {
    border: none; background: transparent; padding: 10px 14px;
    cursor: pointer; color: var(--nx-muted);
    display: flex; align-items: center; justify-content: center; outline: none;
}
#order-nexum .nx-qty-wrapper button:hover { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-qty-wrapper input[type="number"] {
    width: 45px; border: none; padding: 0; height: auto; box-shadow: none;
    font-size: var(--nx-font-size-lg); font-weight: 400; outline: none; text-align: center;
    -moz-appearance: textfield; appearance: textfield; background: transparent; color: var(--nx-text);
}

/* ---- Decorated option / addon rows ---- */
#order-nexum .nx-option-row {
    display: flex; align-items: center;
    justify-content: space-between;
    padding: 14px 20px;
    border-radius: var(--nx-radius-button, 12px);
    border: 1.5px solid var(--nx-border);
    cursor: pointer; transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
    margin: 0 0 10px 0; background: var(--nx-card-bg, #fff);
    width: 100%; box-sizing: border-box; font-weight: 400;
}
#order-nexum .nx-option-row:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb, 37,99,235), 0.04);
}
#order-nexum .nx-option-row .nx-option-left { display: flex; align-items: center; gap: 12px; }
/* Sizing and colour come from the shared input[type="radio"] rules. */
#order-nexum .nx-option-row .nx-option-radio { margin: 0; }
#order-nexum .nx-option-row .nx-option-name {
    font-size: var(--nx-font-size-md); font-weight: 400; color: var(--nx-text);
}
#order-nexum .nx-option-row .nx-option-price {
    font-size: var(--nx-font-size-md); font-weight: 400; color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-option-row:hover:not(:has(input:checked)) {
    border-color: rgba(var(--nx-primary-rgb), 0.4);
    background: rgba(var(--nx-primary-rgb), 0.02);
}

#order-nexum #frmCheckout {
    background: transparent;
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    display: block;
    width: 100%;
}

/* Section headers (personal info, billing address, security, payment…) */
#order-nexum .sub-heading {
    margin: 28px 0 18px;
    padding: 0 0 12px;
    border-bottom: 1px solid var(--nx-border-soft);
}
#order-nexum .sub-heading > span,
#order-nexum .sub-heading .primary-bg-color {
    background: none;
    color: var(--nx-text);
    font-size: 15.5px;
    font-weight: 600;
    letter-spacing: -0.2px;
    padding: 0;
    display: block;
}
#order-nexum .sub-heading small,
#order-nexum .sub-heading i { color: var(--nx-muted); font-weight: 500; }

/* Consistent field spacing */
#order-nexum #frmCheckout .form-group { margin-bottom: 16px; }
#order-nexum #frmCheckout label:not(.field-icon):not(.radio-inline):not(.checkbox-inline):not(.radio) {
    font-size: 12.5px;
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: 6px;
}
#order-nexum .field-help-text {
    font-size: var(--nx-font-size-sm); color: var(--nx-muted);
    display: block; margin-top: 4px;
}

/* The "already registered / create account" bar */
#order-nexum .already-registered {
    background: rgba(var(--nx-primary-rgb), 0.04);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    padding: 16px 20px;
    margin-bottom: 20px;
}
#order-nexum .already-registered p { margin: 0; color: var(--nx-muted); font-weight: 400; }

/* Account picker rows (existing customer with multiple accounts) */
#order-nexum #frmCheckout .account {
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    background: var(--nx-card-bg);
    padding: 14px 18px;
    margin-bottom: 12px;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
}
#order-nexum #frmCheckout .account > label.radio-inline {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    width: 100%;
    margin: 0;
    cursor: pointer;
}
#order-nexum #frmCheckout .account > label.radio-inline > input[type="radio"],
#order-nexum #frmCheckout .account > label.radio-inline > .icheckbox_square-blue,
#order-nexum #frmCheckout .account > label.radio-inline > .iradio_square-blue {
    margin-top: 2px;
    flex-shrink: 0;
}
#order-nexum #frmCheckout .account > label.radio-inline > .address {
    flex: 1 1 auto;
    min-width: 0;
}
/* The markup carries Bootstrap's .border-bottom (1px !important); keep all four sides alike. */
#order-nexum #frmCheckout .account.border-bottom {
    border-bottom: 1.5px solid var(--nx-border) !important;
}
#order-nexum #frmCheckout .account.border-bottom.active,
#order-nexum #frmCheckout .account.border-bottom:has(input:checked) {
    border-bottom-color: var(--nx-primary) !important;
}
/* .active is set by scripts.js; :has() covers first paint before it runs. */
#order-nexum #frmCheckout .account.active,
#order-nexum #frmCheckout .account:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
}

#order-nexum #frmCheckout .nx-acct-new-fields {
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--nx-border-soft, var(--nx-border));
}
#order-nexum #frmCheckout .nx-acct-new-fields .sub-heading:first-child {
    margin-top: 0;
}

#order-nexum #frmCheckout .nx-acct-detail {
    display: grid;
    grid-template-rows: 0fr;
    opacity: 0;
    transition: grid-template-rows var(--nx-transition-slow), opacity var(--nx-transition-slow);
}
#order-nexum #frmCheckout .nx-acct-detail-inner {
    min-height: 0;
    overflow: hidden;
}
#order-nexum #frmCheckout .nx-acct-detail .small {
    display: block;
    margin-top: 8px;
}
#order-nexum #frmCheckout .nx-acct-detail-lines {
    display: flex;
    flex-direction: column;
    gap: 3px;
}
#order-nexum #frmCheckout .nx-acct-detail-lines span {
    display: block;
    color: var(--nx-muted);
    font-weight: 400;
}
#order-nexum #frmCheckout .account.active .nx-acct-detail,
#order-nexum #frmCheckout .account:has(input:checked) .nx-acct-detail {
    grid-template-rows: 1fr;
    opacity: 1;
}

/* ---- "From where you hear" / payment method radio list as pills ---- */
#order-nexum #paymentGatewaysContainer .text-center {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-start;
    text-align: left;
}
#order-nexum #paymentGatewaysContainer .radio-inline {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 12px 18px 12px 16px;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-button, 12px);
    background: var(--nx-card-bg);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
    min-width: 150px;
}
#order-nexum #paymentGatewaysContainer .radio-inline:hover {
    border-color: rgba(var(--nx-primary-rgb), 0.5);
}
#order-nexum #paymentGatewaysContainer .radio-inline input[type="radio"] {
    position: static;
    margin: 0;
}
#order-nexum #paymentGatewaysContainer .radio-inline:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.05);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), 0.08);
}
#order-nexum #paymentGatewaysContainer > p.small {
    font-weight: 400; color: var(--nx-text);
    font-size: 13px; margin-bottom: 12px;
}

/* Credit-card input panel — subtle inset card */
#order-nexum #creditCardInputFields {
    background: var(--nx-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    padding: 20px;
    margin-top: 16px;
}
#order-nexum #creditCardInputFields ul { list-style: none; padding: 0; margin: 4px 0; }

/* Apply-credit + "enter new card" radios */
#order-nexum #applyCreditContainer .radio,
#order-nexum #creditCardInputFields .radio-inline {
    display: flex; align-items: center; gap: 8px;
    color: var(--nx-text); font-weight: 400;
}

/* Additional notes textarea already picks up .form-control rules */

/* ---- Mailing list opt-in as a Yes/No pill card ---- */
#order-nexum .marketing-email-optin {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    padding: 20px 22px;
    margin: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
#order-nexum .marketing-email-optin h4 {
    font-size: var(--nx-font-size-lg); font-weight: 600;
    color: var(--nx-text); margin: 0;
}
#order-nexum .marketing-email-optin p { color: var(--nx-muted); margin: 0; font-size: 13px; }

#order-nexum .icheckbox_square-blue,
#order-nexum .icheckbox_square-green,
#order-nexum .iradio_square-blue {
    background: none !important;
    background-image: none !important;
    width: auto !important;
    height: auto !important;
    display: inline-flex !important;
    align-items: center;
    vertical-align: middle;
    position: static !important;
}
/* iCheck inlines these on the input; the wrapper no longer overlays it. */
#order-nexum .icheckbox_square-blue > input,
#order-nexum .icheckbox_square-green > input,
#order-nexum .iradio_square-blue > input {
    position: static !important;
    top: auto !important;
    left: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    display: inline-grid !important;
    place-content: center;
}
/* The helper is the plugin's click target and sits on top of the input. */
#order-nexum .icheckbox_square-blue > ins.iCheck-helper,
#order-nexum .icheckbox_square-green > ins.iCheck-helper,
#order-nexum .iradio_square-blue > ins.iCheck-helper {
    display: none !important;
}

#order-nexum input[type="radio"],
#order-nexum input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    width: 17px !important;
    height: 17px !important;
    flex-shrink: 0;
    background: var(--nx-card-bg) !important;
    border: 1.5px solid var(--nx-border) !important;
    box-shadow: none;
    cursor: pointer;
    transition: background-color var(--nx-transition), border-color var(--nx-transition);
    display: inline-grid;
    place-content: center;
}
#order-nexum input[type="radio"] { border-radius: 50%; }
#order-nexum input[type="checkbox"] { border-radius: 5px; }

#order-nexum input[type="radio"]::before {
    content: "";
    width: 7px;
    height: 7px;
    border-radius: 50%;
    transform: scale(0);
    transition: transform var(--nx-transition);
    background: #fff;
}
#order-nexum input[type="checkbox"]::before {
    content: "";
    width: 10px;
    height: 10px;
    transform: scale(0);
    transition: transform var(--nx-transition);
    background: #fff;
    clip-path: polygon(14% 44%, 0 65%, 39% 100%, 100% 16%, 80% 0%, 39% 62%);
}
#order-nexum input[type="radio"]:checked,
#order-nexum input[type="checkbox"]:checked {
    background: var(--nx-primary) !important;
    border-color: var(--nx-primary) !important;
}
#order-nexum input[type="radio"]:checked::before,
#order-nexum input[type="checkbox"]:checked::before {
    transform: scale(1);
}
#order-nexum input[type="radio"]:hover:not(:checked),
#order-nexum input[type="checkbox"]:hover:not(:checked) {
    border-color: rgba(var(--nx-primary-rgb), .5) !important;
}
#order-nexum input[type="radio"]:focus-visible,
#order-nexum input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--nx-primary);
    outline-offset: 2px;
}
#order-nexum input[type="radio"]:disabled,
#order-nexum input[type="checkbox"]:disabled {
    opacity: .5;
    cursor: default;
}

/* TOS + complete order area */
#order-nexum #frmCheckout .checkbox-inline { color: var(--nx-text); font-weight: 400; }
#order-nexum #frmCheckout > .text-center:last-of-type { margin-top: 24px; }

/* Password strength meter */
#order-nexum .password-strength-meter .progress {
    border-radius: var(--nx-radius-badge); height: 8px;
    background: var(--nx-bg); overflow: hidden;
}

/* Security / SSL confirmation strip */
#order-nexum .checkout-security-msg {
    background: rgba(var(--nx-primary-rgb), 0.04);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    color: var(--nx-muted);
    margin-top: 20px;
    font-weight: 400;
}

/* Error feedback */
#order-nexum .alert-danger {
    background: rgba(var(--nx-danger-rgb), 0.06);
    border: 1px solid rgba(var(--nx-danger-rgb), 0.25);
    color: var(--nx-danger);
    border-radius: var(--nx-radius-card);
}

@keyframes nx-btn-spin { to { transform: rotate(360deg); } }

#order-nexum .nx-btn-loading {
    position: relative;
    box-sizing: border-box;
    pointer-events: none;
    color: transparent !important;
    filter: brightness(.9);
    --nx-btn-spinner: #fff;
}
#order-nexum .nx-btn-loading > * { visibility: hidden !important; }
#order-nexum .nx-btn-loading i.fa-spinner,
#order-nexum .nx-btn-loading .loader {
    display: none !important;
}
/* The one spinner. */
#order-nexum .nx-btn-loading::after {
    content: "";
    position: absolute;
    inset: 0;
    margin: auto;
    width: 16px;
    height: 16px;
    border: 2px solid color-mix(in srgb, var(--nx-btn-spinner) 35%, transparent);
    border-top-color: var(--nx-btn-spinner);
    border-radius: 50%;
    animation: nx-btn-spin .6s linear infinite;
    pointer-events: none;
}
#order-nexum .nx-btn-loading.nx-btn-outline,
#order-nexum .nx-btn-loading.btn-default,
#order-nexum .nx-btn-loading.nx-modal-cancel,
#order-nexum .nx-btn-loading.nx-pm-btn-outline,
#order-nexum .nx-btn-loading.nx-pm-btn-sm,
#order-nexum .nx-btn-loading.nx-cfg-btn-outline {
    --nx-btn-spinner: var(--nx-primary);
}
@media (prefers-reduced-motion: reduce) {
    #order-nexum .nx-btn-loading::after { animation: none; }
}

#order-nexum #containerProductValidationErrors {
    padding: var(--nx-space-5) var(--nx-space-6);
    margin-bottom: var(--nx-space-6);
    border-left: 4px solid var(--nx-danger);
    box-shadow: var(--nx-shadow-sm);
    color: var(--nx-text);
}
#order-nexum #containerProductValidationErrors > p {
    margin: 0 0 var(--nx-space-2);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-danger);
}
#order-nexum #containerProductValidationErrorsList {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 6px;
}
#order-nexum #containerProductValidationErrorsList li {
    position: relative;
    padding-left: 14px;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum #containerProductValidationErrorsList li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--nx-danger);
}

/* Spec tiles: icon on the left, value over its label; long labels wrap inside the tile. */
#order-nexum .nx-left-specs {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 12px;
    align-items: stretch;
}
#order-nexum .nx-left-spec-row {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 12px;
    row-gap: 2px;
    align-items: center;
    align-content: center;
    justify-content: stretch;
    text-align: left;
    padding: 12px 14px;
    min-height: 62px;
}
#order-nexum .nx-left-spec-row .material-symbols-rounded {
    grid-column: 1;
    grid-row: 1 / span 2;
    width: 34px;
    height: 34px;
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), 0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 19px;
}
#order-nexum .nx-left-spec-row .nx-left-spec-val {
    grid-column: 2;
    grid-row: 1;
    font-size: var(--nx-font-size);
    font-weight: 500;
    line-height: 1.3;
    color: var(--nx-text);
    margin: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}
#order-nexum .nx-left-spec-row .nx-left-spec-key {
    grid-column: 2;
    grid-row: 2;
    font-size: 12.5px;
    line-height: 1.35;
    text-transform: none;
    letter-spacing: 0;
    color: var(--nx-muted);
    overflow-wrap: anywhere;
}
/* A line with no value: the label takes both rows and reads as the main text. */
#order-nexum .nx-left-spec-row .nx-left-spec-val:empty { display: none; }
#order-nexum .nx-left-spec-row .nx-left-spec-val:empty + .nx-left-spec-key {
    grid-row: 1 / span 2;
    font-size: var(--nx-font-size-md);
    color: var(--nx-text);
}

#order-nexum #orderSummary,
#order-nexum #frmConfigureProduct .secondary-cart-body {
    margin-top: 0 !important;
}

#order-nexum { --nx-cart-sticky-top: var(--nx-space-5); }

body.nx-header-sticky #order-nexum {
    --nx-cart-sticky-top: calc(
        var(--nx-header-offset, var(--nx-header-height, 64px)) + var(--nx-space-4)
    );
}
body.nx-menu-top.nx-header-sticky:has(.nx-topbar-expanded) #order-nexum {
    --nx-cart-sticky-top: calc(
        var(--nx-header-offset,
            calc(var(--nx-header-height, 64px) + var(--nx-topbar-utility-height, 48px))
        ) + var(--nx-space-4)
    );
}

@media (min-width: 992px) {
    #order-nexum .secondary-cart-sidebar {
        position: sticky;
        position: -webkit-sticky;
        top: var(--nx-cart-sticky-top);
        align-self: flex-start;
        z-index: 1;
    }
    #order-nexum #orderSummary,
    #order-nexum .nx-cfg-panel {
        position: static;
        top: auto;
    }
}
@media (max-width: 991.98px) {
    #order-nexum .secondary-cart-sidebar {
        position: static !important;
        top: auto !important;
        width: 100% !important;
    }
    #order-nexum #orderSummary,
    #order-nexum .nx-cfg-panel {
        position: static;
        top: auto;
        width: 100%;
    }
}

#order-nexum .nx-custom-select-wrapper {
    position: relative;
    display: inline-block;
    width: 100%;
}
#order-nexum .nx-custom-select-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 42px;
    padding: 0 16px;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-input, 10px);
    cursor: pointer;
    text-align: left;
    transition: background-color var(--nx-transition-slow), border-color var(--nx-transition-slow), color var(--nx-transition-slow), box-shadow var(--nx-transition-slow), transform var(--nx-transition-slow);
}
#order-nexum .nx-custom-select-trigger:hover,
#order-nexum .nx-custom-select-wrapper.open .nx-custom-select-trigger {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), 0.1);
}
#order-nexum .nx-custom-select-trigger i {
    font-size: var(--nx-font-size-xs);
    color: var(--nx-muted);
    transition: transform var(--nx-transition-slow);
}
#order-nexum .nx-custom-select-wrapper.open .nx-custom-select-trigger i {
    transform: rotate(180deg);
}

#order-nexum .prepend-icon .nx-custom-select-trigger { padding-left: 44px; }
#order-nexum .prepend-icon .nx-custom-select-wrapper { display: block; }
#order-nexum .nx-custom-select-trigger .nx-cs-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1 1 auto;
    min-width: 0;
    margin-right: 8px;
}
#order-nexum .nx-custom-select-options {
    position: absolute;
    top: calc(100% + 10px) !important;
    left: 0;
    right: 0;
    display: none;
    list-style: none;
    padding: 6px;
    margin: 0;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
    z-index: 1000;
    max-height: 240px;
    overflow-y: auto;
}
#order-nexum .nx-custom-select-option {
    padding: 8px 12px;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text);
    border-radius: var(--nx-radius-sm);
    cursor: pointer;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
    margin: 0;
    list-style: none;
}
#order-nexum .nx-custom-select-option:hover {
    background: rgba(var(--nx-primary-rgb), 0.05);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-custom-select-option.selected {
    background: var(--nx-primary);
    color: #ffffff;
    font-weight: 400;
}
#order-nexum .nx-custom-select-option.disabled {
    opacity: .5;
    cursor: not-allowed;
    pointer-events: none;
}

#order-nexum .div-renewal-period-label,
#order-nexum .qty,
#order-nexum .panel-price,
#order-nexum .transfer-not-eligible,
#order-nexum .option,
#order-nexum .option-selected,
#order-nexum .product-info,
#order-nexum .order-summary {
    color: var(--nx-text);
}

/* ---- Page headline ---- */
#order-nexum .header-lined {
    border: none;
    padding: 0;
    margin: 0px;
}
#order-nexum .header-lined h1 {
    font-size: 27px;
    font-weight: 600;
    letter-spacing: -.6px;
    color: var(--nx-text);
    border: none;
    padding: 0;
    margin: 0;
}
#order-nexum .header-lined p {
    color: var(--nx-muted);
    font-size: var(--nx-font-size);
    margin: 6px 0 0;
}

#order-nexum .nx-vc-head {
    display: flex;
    align-items: flex-end;
    gap: var(--nx-space-4);
    flex-wrap: wrap;
}
#order-nexum .nx-vc-head-text { min-width: 0; }
#order-nexum .nx-vc-head-meta {
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
    margin: 7px 0 0;
}
#order-nexum .nx-vc-head-back {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    flex: 0 0 auto;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
    white-space: nowrap;
}
#order-nexum .nx-vc-head-back:hover { color: var(--nx-primary-hover); }
#order-nexum .nx-vc-head-back .material-symbols-rounded { font-size: 17px; }

/* ---- Generic alerts ---- */
#order-nexum .alert {
    border-radius: var(--nx-radius-card, 14px);
    font-weight: 400;
    box-shadow: none;
}
#order-nexum .alert-info {
    background: rgba(var(--nx-primary-rgb), .06);
    border: 1px solid rgba(var(--nx-primary-rgb), .22);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .alert-warning {
    background: rgba(var(--nx-warning-rgb), .08);
    border: 1px solid rgba(var(--nx-warning-rgb), .3);
    color: var(--nx-warning);
}

#order-nexum .nx-vc-cart-head {
    display: flex;
    align-items: center;
    gap: var(--nx-space-3);
    flex-wrap: wrap;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-bottom: none;
    border-radius: var(--nx-radius-card) var(--nx-radius-card) 0 0;
    padding: 15px 20px;
    margin: 0;
}
#order-nexum .nx-vc-cart-title {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.25px;
    color: var(--nx-text);
}
#order-nexum .nx-vc-cart-empty {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 12px;
    font-weight: 400;
    color: var(--nx-muted);
    cursor: pointer;
    transition: color var(--nx-transition);
}
#order-nexum .nx-vc-cart-empty:hover { color: var(--nx-danger); }
#order-nexum .nx-vc-cart-empty .material-symbols-rounded { font-size: 17px; }

#order-nexum .nx-vc-cart-head + .view-cart-items {
    border-top: none;
    border-radius: 0 0 var(--nx-radius-card) var(--nx-radius-card);
}
#order-nexum .view-cart-items {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card, 0 1px 3px rgba(16, 24, 40, .06));
    overflow: hidden;
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0;
}
#order-nexum .view-cart-items .item {
    background: var(--nx-card-bg);
    border: none;
    border-bottom: 1px solid var(--nx-border-soft, var(--nx-border));
    border-radius: 0;
    box-shadow: none;
    padding: 16px 20px;
    margin: 0;
    transition: background-color var(--nx-transition-fast);
}
#order-nexum .view-cart-items .item:hover {
    background: color-mix(in srgb, var(--nx-primary) 2%, var(--nx-card-bg));
    border-color: var(--nx-border-soft, var(--nx-border));
    box-shadow: none;
}
/* Last row closes on the panel's own border, not a second one. */
#order-nexum .view-cart-items .item:last-child { border-bottom: none; }
#order-nexum .view-cart-items .item:nth-child(odd),
#order-nexum .view-cart-items .item:nth-child(even) {
    background: var(--nx-card-bg);
}
#order-nexum .view-cart-items .item > .row {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-left: 0;
    margin-right: 0;
}
#order-nexum .view-cart-items .item > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}
#order-nexum .view-cart-items .item > .row > [class*="col-sm-7"],
#order-nexum .view-cart-items .item > .row > [class*="col-sm-5"] {
    flex: 1 1 58%;
    max-width: none;
    padding-right: 20px;
}
#order-nexum .view-cart-items .item > .row > .item-qty {
    flex: 0 0 100px;
    max-width: 100px;
    padding-right: 12px;
}
#order-nexum .view-cart-items .item > .row > .item-price {
    flex: 0 0 auto;
    width: auto;
    min-width: 130px;
    margin-left: auto;
    padding-right: 0;
}
#order-nexum .view-cart-items .item > .row > .nx-ci-actions {
    flex: 0 0 100%;
    max-width: 100%;
    order: 10;
    justify-content: flex-start;
    padding-top: 0;
    margin-top: 10px;
    margin-left: 47px;
    border-top: none;
}
#order-nexum .view-cart-items .item.item-addon > .row > .nx-ci-actions {
    margin-left: 47px;
}
#order-nexum .view-cart-items .item.item-addon {
    margin-left: 0;
    border-left: none;
    border-radius: 0;
    background: color-mix(in srgb, var(--nx-border) 22%, var(--nx-card-bg));
    padding-left: 44px;
}
#order-nexum .view-cart-items .item.item-addon:hover {
    background: color-mix(in srgb, var(--nx-border) 30%, var(--nx-card-bg));
}
#order-nexum .item-title {
    display: block;
    font-size: 14.5px;
    font-weight: 700;
    letter-spacing: -.3px;
    color: var(--nx-text);
    line-height: 1.35;
}
#order-nexum .item-title .btn-link {
    color: var(--nx-muted);
    font-size: var(--nx-font-size-sm);
    font-weight: 600;
    text-decoration: none;
    padding: 2px 6px;
    border-radius: var(--nx-radius-sm);
    background: transparent;
}
#order-nexum .item-title .btn-link:hover {
    color: var(--nx-primary-text, var(--nx-primary));
    background: transparent;
}
#order-nexum .item-group {
    display: inline-flex;
    align-items: center;
    font-size: 10px;
    font-weight: 400;
    letter-spacing: .5px;
    text-transform: uppercase;
    color: var(--nx-primary-text, var(--nx-primary));
    background: rgba(var(--nx-primary-rgb), .09);
    border: none;
    border-radius: var(--nx-radius-badge);
    padding: 3px 8px;
    margin: 6px 0 0;
    line-height: 1.4;
}
#order-nexum .item-domain {
    display: block;
    font-size: 12.5px;
    font-weight: 400;
    color: var(--nx-muted);
    background: transparent;
    border-radius: 0;
    padding: 0;
    margin-top: 2px;
}
#order-nexum .nx-ci-config {
    list-style: none;
    margin: 9px 0 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
#order-nexum .nx-ci-config li {
    position: static;
    padding: 4px 9px;
    font-size: 11px;
    font-weight: 400;
    color: var(--nx-text);
    background: color-mix(in srgb, var(--nx-border) 30%, var(--nx-card-bg));
    border: 1px solid var(--nx-border);
    border-radius: 7px;
    line-height: 1.45;
}
#order-nexum .nx-ci-config li::before { content: none; }
#order-nexum .item small { color: var(--nx-muted); display: block; margin-top: 8px; line-height: 1.7; }
#order-nexum .item-price {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    text-align: right;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
    line-height: 1.35;
}
#order-nexum .item-price > span:first-child {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: -.4px;
    color: var(--nx-text);
    font-variant-numeric: tabular-nums;
}
#order-nexum .item-price .cycle,
#order-nexum .item-price .renewal,
#order-nexum .item-price .setup-fee {
    display: block;
    font-size: 12.5px;
    font-weight: 400;
    color: var(--nx-muted);
    margin-top: 0;
}
#order-nexum .item-price .dropdown .btn {
    margin-top: 4px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-sm);
    background: var(--nx-bg);
    color: var(--nx-text);
    font-size: 12px;
    font-weight: 400;
    padding: 4px 10px;
}
#order-nexum .item-qty .btn { color: var(--nx-primary-text, var(--nx-primary)); font-weight: 400; }
#order-nexum .btn-remove-from-cart {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    padding: 0;
    color: var(--nx-muted);
    background: transparent;
    border: none;
    border-radius: var(--nx-radius-md);
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
    text-decoration: none;
}
#order-nexum .btn-remove-from-cart:hover {
    color: var(--nx-danger-text);
    background: var(--nx-danger-soft);
}
#order-nexum .view-cart-empty {
    background: var(--nx-card-bg);
    border: 1.5px dashed var(--nx-border);
    border-radius: var(--nx-radius-card);
    padding: 48px 24px;
    text-align: center;
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .view-cart-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 16px 0 20px;
    flex-wrap: wrap;
}
#order-nexum .view-cart-footer .empty-cart {
    text-align: right;
    margin: 0;
}
#order-nexum .nx-cart-footer-continue,
#order-nexum .nx-cart-footer-empty {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    height: 42px;
    padding: 0 18px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-size: 13px;
    font-weight: 400;
    text-decoration: none;
    box-shadow: none;
    transition: border-color var(--nx-transition), color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .nx-cart-footer-continue .material-symbols-rounded,
#order-nexum .nx-cart-footer-empty .material-symbols-rounded {
    font-size: 18px;
    color: var(--nx-muted);
}
#order-nexum .nx-cart-footer-continue:hover,
#order-nexum .nx-cart-footer-empty:hover {
    border-color: color-mix(in srgb, var(--nx-primary) 35%, var(--nx-border));
    color: var(--nx-primary-text, var(--nx-primary));
    background: rgba(var(--nx-primary-rgb), .04);
    text-decoration: none;
}
#order-nexum .nx-cart-footer-empty:hover .material-symbols-rounded {
    color: var(--nx-danger);
}
#order-nexum .empty-cart .btn { margin: 0; }
#order-nexum .row-upgrade-credit {
    border-top: 1px dashed var(--nx-border);
    margin-top: 14px;
    padding-top: 12px;
}
#order-nexum .upgrade-calc-msg { color: var(--nx-muted); font-size: 12.5px; }

#order-nexum .view-cart-tabs {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card, 0 1px 3px rgba(16, 24, 40, .06));
    overflow: hidden;
    margin-top: var(--nx-space-4, 16px);
}
/* The cart panel now closes on its own bottom corners again. */
#order-nexum .nx-vc-cart-head ~ .view-cart-tabs { margin-top: var(--nx-space-4, 16px); }
#order-nexum .view-cart-items:has(+ .view-cart-tabs),
#order-nexum .nx-vc-cart-head + .view-cart-items:has(+ .view-cart-tabs) {
    border-bottom: 1px solid var(--nx-border-soft, var(--nx-border));
    border-radius: 0 0 var(--nx-radius-card) var(--nx-radius-card);
}
#order-nexum .view-cart-tabs .nav-tabs {
    flex-direction: row;
    border: none;
    border-radius: 0 !important;
    box-shadow: none;
    margin-bottom: 0;
    padding: 0 20px;
    gap: 4px;
    background: linear-gradient(105deg,
        color-mix(in srgb, var(--nx-primary) 38%, #000) 0%,
        color-mix(in srgb, var(--nx-primary) 62%, #000) 48%,
        color-mix(in srgb, var(--nx-primary) 80%, #000) 100%);
}
#order-nexum .view-cart-tabs .nav-tabs > li,
#order-nexum .view-cart-tabs .nav-tabs > li.active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
}

#order-nexum .view-cart-tabs .nav-tabs > li > a {
    border: none;
    border-radius: 0 !important;
    padding: 15px 6px;
    font-size: 13.5px;
    font-weight: 400;
    letter-spacing: -.1px;
    color: rgba(255, 255, 255, .72);
    background: transparent;
    margin: 0 10px -1px 10px;
    border-bottom: 2px solid transparent;
    transition: color var(--nx-transition), border-color var(--nx-transition);
    text-decoration: none;
}
#order-nexum .view-cart-tabs .nav-tabs > li > a:hover {
    color: #fff;
    background: transparent;
    border-bottom-color: rgba(255, 255, 255, .35);
}
#order-nexum .view-cart-tabs .nav-tabs > li > a.active {
    color: #fff !important;
    background: transparent !important;
    border-bottom: 2px solid #fff !important;
    text-decoration: none !important;
}
#order-nexum .view-cart-tabs .nav-tabs > li > a:not(.active) {
    color: rgba(255, 255, 255, .72) !important;
    background: transparent !important;
    border-bottom: 2px solid transparent !important;
}
#order-nexum .view-cart-tabs .tab-content {
    border: none;
    padding: 22px;
    background: var(--nx-card-bg);
}
#order-nexum .nx-promo-msg {
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: var(--nx-radius-md);
    padding: 12px 16px;
    margin-bottom: 14px;
    font-size: 13px;
    font-weight: 400;
    text-align: left;
}
#order-nexum .nx-promo-msg .material-symbols-rounded {
    font-size: 19px;
    flex-shrink: 0;
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-promo-msg.is-warning {
    background: rgba(var(--nx-warning-rgb), .08);
    border: 1px solid rgba(var(--nx-warning-rgb), .3);
    color: var(--nx-warning);
}
#order-nexum .nx-promo-msg.is-info {
    background: rgba(var(--nx-primary-rgb), .06);
    border: 1px solid rgba(var(--nx-primary-rgb), .22);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-promo-msg.is-success {
    background: rgba(var(--nx-success-rgb), .08);
    border: 1px solid rgba(var(--nx-success-rgb), .25);
    color: var(--nx-success);
}

#order-nexum .view-cart-promotion-code {
    border: 1.5px dashed var(--nx-primary);
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), .05);
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    text-align: center;
    padding: 14px;
    margin-bottom: 14px;
}
#order-nexum .view-cart-tabs .btn-default {
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-btn);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-weight: 400;
    padding: 11px 20px;
}
#order-nexum .view-cart-tabs .btn-default:hover {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .nx-promo-form {
    margin: 0;
    padding: 0;
    background: none;
    box-shadow: none;
}
#order-nexum .nx-promo-input-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    width: 100%;
}
#order-nexum .nx-promo-field {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 10px;
    height: 48px;
    padding: 0 18px;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum .nx-promo-field:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-promo-ico {
    flex: 0 0 auto;
    font-size: 20px;
    color: var(--nx-muted);
    font-variation-settings: 'FILL' 0;
}
#order-nexum .nx-promo-field:focus-within .nx-promo-ico {
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-promo-input {
    flex: 1 1 auto;
    min-width: 0;
    height: 48px;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: 14px;
    font-weight: 400;
    color: var(--nx-text);
    outline: none;
    box-shadow: none;
}
#order-nexum .nx-promo-input:focus,
#order-nexum .nx-promo-input:focus-visible { outline: none; }
#order-nexum .nx-promo-input::placeholder {
    color: var(--nx-muted);
    font-weight: 400;
}
#order-nexum .nx-promo-input,
#order-nexum .nx-cpd-field input,
#order-nexum .nx-cpd-field select,
#order-nexum .nx-dt-field input,
#order-nexum .nx-dfilters-search input {
    background: transparent !important;
    background-color: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    outline: none !important;
    -webkit-appearance: none;
    appearance: none;
}
#order-nexum .nx-promo-input:-webkit-autofill,
#order-nexum .nx-cpd-field input:-webkit-autofill,
#order-nexum .nx-dt-field input:-webkit-autofill {
    -webkit-text-fill-color: var(--nx-text);
    -webkit-box-shadow: 0 0 0 100px var(--nx-card-bg) inset !important;
    caret-color: var(--nx-text);
}
#order-nexum .nx-promo-btn {
    flex: 0 0 auto;
    height: 48px;
    padding: 0 24px;
    margin: 0;
    border: 0;
    border-radius: var(--nx-radius-md);
    background: var(--nx-primary);
    color: #fff;
    font-size: 13.5px;
    font-weight: 400;
    letter-spacing: -.1px;
    white-space: nowrap;
    cursor: pointer;
    box-shadow: 0 1px 2px rgba(16, 24, 40, .08);
    transition: background-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum .nx-promo-btn:hover,
#order-nexum .nx-promo-btn:focus {
    background: color-mix(in srgb, var(--nx-primary) 82%, #000);
    color: #fff;
    box-shadow: 0 2px 6px rgba(var(--nx-primary-rgb), .28);
    outline: none;
}

/* Estimate taxes tab */
#order-nexum .nx-tax-form {
    margin: 0;
    background: none;
    padding: 0;
    border-radius: 0;
    box-shadow: none;
}
#order-nexum .nx-tax-fields {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
    margin-bottom: 16px;
}
#order-nexum .nx-tax-field label {
    display: block;
    font-size: 12px;
    font-weight: 400;
    letter-spacing: .3px;
    color: var(--nx-muted);
    margin-bottom: 6px;
}
#order-nexum .nx-tax-field .form-control {
    height: 46px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    font-size: 14px;
    font-weight: 400;
    color: var(--nx-text);
    padding: 0 14px;
}
#order-nexum .nx-tax-field .form-control:focus {
    border-color: color-mix(in srgb, var(--nx-primary) 45%, var(--nx-border));
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .10);
}
#order-nexum .nx-tax-submit {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 160px;
    height: 46px;
    padding: 0 24px;
    border: 0;
    border-radius: var(--nx-radius-md);
    background: var(--nx-primary);
    color: #fff;
    font-size: 13.5px;
    font-weight: 400;
    box-shadow: var(--nx-shadow-btn, none);
    transition: background-color var(--nx-transition), transform var(--nx-transition);
}
#order-nexum .nx-tax-submit:hover,
#order-nexum .nx-tax-submit:focus {
    background: color-mix(in srgb, var(--nx-primary) 82%, #000);
    color: #fff;
    transform: translateY(-1px);
}

@media (max-width: 575.98px) {
    #order-nexum .nx-promo-input-wrap {
        flex-wrap: wrap;
        gap: 8px;
    }
    #order-nexum .nx-promo-field {
        flex: 1 1 100%;
        height: 40px;
    }
    #order-nexum .nx-promo-input {
        flex: 1 1 100%;
        height: 40px;
    }
    #order-nexum .nx-promo-btn {
        flex: 1 1 100%;
        width: 100%;
    }
    #order-nexum .nx-tax-fields {
        grid-template-columns: 1fr;
    }
    #order-nexum .nx-tax-submit {
        width: 100%;
    }
}
#order-nexum .view-cart-gateway-checkout {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    padding: 18px;
    margin-bottom: 16px;
    text-align: center;
}

/* ================= ORDER SUMMARY (shared partial + sidebars) ================= */
#order-nexum .order-summary .product-name,
#order-nexum #producttotal .product-name {
    display: block;
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    letter-spacing: -.2px;
    color: var(--nx-text);
    margin-bottom: 2px;
}
#order-nexum .order-summary .product-group,
#order-nexum #producttotal .product-group {
    display: block;
    font-size: 11.5px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .5px;
    color: var(--nx-muted);
    margin-bottom: 12px;
}
#order-nexum .order-summary .clearfix,
#order-nexum #producttotal .clearfix {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text-body);
    padding: 6px 0;
}
#order-nexum .order-summary .clearfix .float-left,
#order-nexum #producttotal .clearfix .float-left {
    float: none;
    min-width: 0;
    flex: 1 0 auto;
    max-width: 60%;
}
#order-nexum .order-summary .clearfix .float-right,
#order-nexum #producttotal .clearfix .float-right {
    float: none;
    flex: 0 1 auto;
    min-width: 0;
    text-align: right;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum #producttotal > .clearfix .float-left {
    color: var(--nx-muted);
}
#order-nexum #producttotal > .clearfix:first-of-type .float-left {
    color: var(--nx-text);
    font-weight: 400;
}

#order-nexum .summary-totals,
#order-nexum .bordered-totals,
#orderSummary .summary-totals,
#orderSummary .bordered-totals {
    border-top: 1px dashed var(--nx-border);
    border-bottom: 1px dashed var(--nx-border);
    margin: 14px 0;
    padding: 12px 0;
    background: transparent;
    color: var(--nx-text);
}
#order-nexum .summary-totals .clearfix,
#orderSummary .summary-totals .clearfix {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .order-summary .subtotal,
#order-nexum .order-summary .recurring-totals {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    padding: 6px 0;
    color: var(--nx-text);
}
#order-nexum .recurring-charges .cost { font-weight: 400; color: var(--nx-text); }
#order-nexum .recurring-charges { font-size: 12.5px; color: var(--nx-muted); text-align: right; }
#order-nexum .total-due-today,
#orderSummary .total-due-today {
    background: var(--nx-primary);
    border: none;
    border-radius: var(--nx-radius-md);
    text-align: left;
    padding: 15px 17px;
    margin: 16px 0 4px;
    box-shadow: 0 8px 20px rgba(var(--nx-primary-rgb), .22);
}
#order-nexum .total-due-today .amt,
#orderSummary .total-due-today .amt {
    display: block;
    font-size: 27px;
    font-weight: 400;
    letter-spacing: -1.1px;
    color: #fff;
    font-variant-numeric: tabular-nums;
    margin-top: 3px;
}
#order-nexum .total-due-today span:not(.amt),
#orderSummary .total-due-today span:not(.amt) {
    font-size: 10.5px;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .9px;
    color: rgba(255, 255, 255, .82);
}
#order-nexum #orderSummary .loader {
    position: absolute;
    top: 0;
    right: 18px;
    height: calc(32px + (var(--nx-font-size-md) * 1.3));
    line-height: calc(32px + (var(--nx-font-size-md) * 1.3));
    padding: 0;
    color: #fff;
    font-size: var(--nx-font-size-md);
    z-index: 10;
}
#order-nexum #orderSummary .loader i { vertical-align: middle; }
#order-nexum .express-checkout-buttons .separator {
    text-align: center;
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    letter-spacing: 1px;
    color: var(--nx-muted);
    margin: 10px 0;
}
#order-nexum #orderSummary .btn-checkout,
#order-nexum #orderSummary .btn-success {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    background: var(--nx-primary);
    border: none;
    border-radius: var(--nx-radius-btn);
    color: #fff;
    font-weight: 400;
    font-size: 14.5px;
    padding: 13px 20px;
    margin-top: 14px;
    box-shadow: var(--nx-shadow-btn);
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
}
#order-nexum #orderSummary .btn-checkout:hover { background: var(--nx-primary-dark); transform: translateY(-1px); }
#order-nexum #orderSummary .btn-checkout.disabled { opacity: .5; pointer-events: none; }
#order-nexum .btn-continue-shopping {
    display: inline-block;
    width: 100%;
    text-align: center;
    color: var(--nx-muted);
    font-weight: 400;
    font-size: 13px;
    margin-top: 8px;
    text-decoration: none;
}
#order-nexum .btn-continue-shopping:hover { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum #btnGoToCart { width: 100%; margin-top: 14px; }

/* ================= CHECKOUT extras ================= */
#order-nexum .already-registered .btn {
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    font-size: 13px;
    padding: 9px 18px;
    border: 1.5px solid var(--nx-primary);
    background: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
    box-shadow: none;
}
#order-nexum .already-registered .btn:hover { background: var(--nx-primary); color: #fff; }
#order-nexum .sub-heading-borderless { text-align: center; margin: 20px 0 8px; }
#order-nexum .sub-heading-borderless > span {
    background: none;
    color: var(--nx-muted);
    font-size: var(--nx-font-size-sm);
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    padding: 0;
}
#order-nexum #btnCompleteOrder {
    width: 100%;
    max-width: 420px;
    padding: 15px 28px;
    font-size: 15.5px;
    border-radius: var(--nx-radius-btn);
}
#order-nexum .generate-password {
    border: 1.5px solid var(--nx-input-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-weight: 400;
    font-size: 12.5px;
}
#order-nexum .generate-password:hover { border-color: var(--nx-primary); color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .social-signin-btns { display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 8px 0; }
#order-nexum #existingCardsContainer {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 14px;
}
#order-nexum .nx-pm-saved-row {
    padding: 14px 18px;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    background: var(--nx-card-bg);
    cursor: pointer;
    transition: border-color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .nx-pm-saved-row:hover {
    border-color: color-mix(in srgb, var(--nx-primary) 40%, var(--nx-border));
}
#order-nexum .nx-pm-saved-row:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), .04);
}
#order-nexum .nx-pm-saved-row.is-expired { opacity: .55; cursor: not-allowed; }
#order-nexum .nx-pm-saved-main {
    display: flex;
    align-items: center;
    gap: 12px;
}
#order-nexum .nx-pm-saved-radio { margin: 0; flex: 0 0 17px; }
/* Same iCheck sprite flatten as every other radio this theme restyles. */
#order-nexum .nx-pm-saved-radio input[type="radio"] {
    position: static !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    background: none;
    border: none;
    accent-color: var(--nx-primary);
}
#order-nexum .nx-pm-saved-radio .icheckbox_square-blue {
    position: static !important;
    display: inline-flex !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
}
#order-nexum .nx-pm-saved-radio .iCheck-helper { display: none !important; }
#order-nexum .nx-pm-saved-brand {
    flex: 0 0 40px;
    width: 40px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    background: var(--nx-bg);
    color: var(--nx-muted);
}
#order-nexum .nx-pm-saved-brand i { font-size: 18px; }
#order-nexum .nx-pm-saved-body { flex: 1 1 auto; min-width: 0; }
#order-nexum .nx-pm-saved-name {
    display: block;
    font-size: 13.5px;
    font-weight: 400;
    color: var(--nx-text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#order-nexum .nx-pm-saved-name .type {
    text-transform: capitalize;
    color: var(--nx-muted);
    font-weight: 400;
    margin-right: 4px;
}
#order-nexum .nx-pm-saved-desc {
    display: block;
    margin-top: 2px;
    font-size: 12px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-pm-saved-desc:empty { display: none; }
#order-nexum .nx-pm-saved-expiry {
    flex: 0 0 auto;
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-muted);
    text-align: right;
}

/* ================= NEW CARD FIELDS ================= */
#order-nexum .cc-input-container {
    background: transparent;
    border: none;
    border-radius: 0;
    padding: 0;
    margin-top: 0;
}
#order-nexum .cc-input-container > ul {
    list-style: none;
    margin: 8px 0 0;
    padding: 0;
}
#order-nexum .cc-input-container > ul > li {
    padding: 14px 18px;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    background: var(--nx-card-bg);
    cursor: pointer;
    transition: border-color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .cc-input-container > ul > li:hover {
    border-color: color-mix(in srgb, var(--nx-primary) 40%, var(--nx-border));
}
#order-nexum .cc-input-container > ul > li:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), .04);
}
#order-nexum .cc-input-container > ul .radio-inline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
}
#order-nexum .cc-input-container > ul input[type="radio"] {
    position: static !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    background: none;
    border: none;
    flex-shrink: 0;
    accent-color: var(--nx-primary);
}
#order-nexum .cc-input-container > ul .icheckbox_square-blue {
    position: static !important;
    display: inline-flex !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    flex-shrink: 0;
}
#order-nexum .cc-input-container > ul .iCheck-helper { display: none !important; }
#order-nexum #newCardInfo {
    margin: 12px 0 0 18px;
    padding-top: 12px;
    border-top: 1px solid var(--nx-border-soft, var(--nx-border));
}
#order-nexum #newCardInfo .form-group { margin-bottom: 14px; }
#order-nexum #newCardInfo label:not(.field-icon) {
    display: block;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
    margin-bottom: 6px;
}

/* ================= DOMAIN SEARCH (register / results) ================= */
#order-nexum .domain-checker-container { margin-bottom: 26px; }
#order-nexum .domain-checker-bg {
    background:
        linear-gradient(140deg, rgba(var(--nx-primary-rgb, 37, 99, 235), .18), rgba(var(--nx-primary-rgb, 37, 99, 235), 0)),
        linear-gradient(140deg, #1e293b, #0c1526);
    border-radius: var(--nx-radius-card);
    padding: 34px 26px;
    box-shadow: var(--nx-shadow-elevated);
}
#order-nexum .domain-checker-bg .input-group-box {
    background: var(--nx-card-bg);
    border: none;
    border-radius: var(--nx-radius-card);
    padding: 6px;
    display: flex;
    align-items: stretch;
    box-shadow: 0 12px 30px rgba(2, 8, 20, .35);
}
#order-nexum .domain-checker-bg .input-group-box .form-control {
    border: none;
    background: transparent;
    box-shadow: none;
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-text);
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    height: auto;
}
#order-nexum .domain-checker-bg .input-group-box .form-control::placeholder { color: var(--nx-muted); }
#order-nexum .domain-checker-bg .input-group-btn,
#order-nexum .domain-checker-bg .input-group-append {
    display: flex;
    align-items: stretch;
    flex: 0 0 auto;
    width: auto;
    position: static;
    margin: 0;
}
#order-nexum .domain-checker-bg .btn-primary {
    border-radius: calc(var(--nx-radius-card) - 6px);
    padding: 12px 26px;
    box-shadow: none;
    white-space: nowrap;
}
#order-nexum .default-captcha {
    display: inline-block;
    max-width: 360px;
    margin: 0 auto;
    padding: 18px 22px;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    box-shadow: 0 4px 16px rgba(16, 24, 40, .08);
    text-align: center;
}
#order-nexum .default-captcha,
#order-nexum .default-captcha p,
#order-nexum .default-captcha small,
#order-nexum .default-captcha label {
    color: var(--nx-muted);
    font-size: 13px;
    line-height: 1.5;
}
#order-nexum .default-captcha p { margin: 0 0 12px; }
#order-nexum .default-captcha > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
#order-nexum .default-captcha #inputCaptchaImage { border-radius: var(--nx-radius-sm, 8px); display: block; }
#order-nexum .default-captcha #inputCaptcha {
    width: auto;
    max-width: 130px;
    height: auto;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-sm, 8px);
    background: var(--nx-bg);
    color: var(--nx-text);
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 400;
    box-shadow: none;
}
#order-nexum .default-captcha #inputCaptcha:focus {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-cpd-captcha-row { margin-top: 16px; text-align: center; }
#order-nexum .domain-checker-result-headline {
    border-radius: var(--nx-radius-card);
    padding: 20px 24px;
    text-align: center;
    font-size: var(--nx-font-size-xl);
    font-weight: 400;
    letter-spacing: -.2px;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    margin-bottom: 20px;
}
#order-nexum .domain-checker-available {
    color: var(--nx-success, #12b76a);
}
#order-nexum p.domain-checker-available,
#order-nexum div.domain-checker-result-headline.domain-checker-available {
    background: rgba(var(--nx-success-rgb, 18, 183, 106), .07);
    border-color: rgba(var(--nx-success-rgb, 18, 183, 106), .3);
}
#order-nexum .domain-checker-unavailable { color: var(--nx-danger-text); }
#order-nexum div.domain-checker-result-headline.domain-checker-unavailable {
    background: rgba(var(--nx-danger-rgb, 220, 38, 38), .06);
    border-color: rgba(var(--nx-danger-rgb, 220, 38, 38), .28);
}

#order-nexum #DomainSearchResults { margin-top: 24px; position: relative; }
#order-nexum #searchDomainInfo { margin-bottom: 20px; }

#order-nexum #primaryLookupResult {
    position: relative;
    overflow: hidden;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 50px 100px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 16px;
}
#order-nexum .nx-cpd-featured-ribbon {
    position: absolute;
    top: 18px;
    right: -22px;
    width: 100px;
    padding: 3px 0;
    transform: rotate(45deg);
    background: var(--nx-primary, #dc2626);
    color: #fff;
    font-size: 9px;
    font-weight: 400;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
#order-nexum .nx-cpd-featured-ribbon .material-symbols-rounded {
    font-size: 11px;
    line-height: 1;
    font-variation-settings: 'FILL' 1, 'wght' 600, 'GRAD' 0, 'opsz' 20;
}
#order-nexum .nx-cpd-featured-ribbon.w-hidden { display: none; }
#order-nexum .nx-cpd-try-again {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    padding: 11px 22px;
    border: none;
    border-radius: var(--nx-radius-btn);
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    box-shadow: none;
    cursor: pointer;
    transition: background-color var(--nx-transition-fast), color var(--nx-transition-fast);
}
#order-nexum .nx-cpd-try-again:hover { background: var(--nx-primary); color: #fff; }
#order-nexum .nx-cpd-try-again .material-symbols-rounded { font-size: 18px; line-height: 1; color: inherit; }
#order-nexum .nx-cpd-try-again.w-hidden { display: none; }
#order-nexum #primaryLookupResult .headline {
    flex: 1 1 260px;
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    font-size: var(--nx-font-size-h3);
    font-weight: 400;
    letter-spacing: -.2px;
    text-align: left;
}
#order-nexum #primaryLookupResult .headline::before {
    font-family: 'Material Symbols Rounded';
    font-size: 30px;
    font-weight: 400;
    line-height: 1;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#order-nexum #primaryLookupResult .headline.domain-checker-available::before {
    content: 'check';
    background: color-mix(in srgb, var(--nx-success) 16%, transparent);
    color: var(--nx-success);
}
#order-nexum #primaryLookupResult .headline.domain-checker-unavailable::before {
    content: 'close';
    background: color-mix(in srgb, var(--nx-danger, #dc2626) 14%, transparent);
    color: var(--nx-danger, #dc2626);
}
#order-nexum .nx-cpd-result-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
}
#order-nexum #primaryLookupResult .headline.domain-checker-available .nx-cpd-result-msg { color: var(--nx-success); }
#order-nexum #primaryLookupResult .headline.domain-checker-unavailable { color: var(--nx-danger, #dc2626); }
#order-nexum .nx-cpd-result-msg { color: var(--nx-text); }
#order-nexum .nx-cpd-result-price {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-result-price .price {
    font-weight: 400;
    color: var(--nx-text);
    margin-right: 3px;
}
#order-nexum .nx-cpd-result-note {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 10px 2px 0;
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-result-note .material-symbols-rounded { font-size: 16px; }
#order-nexum .nx-cpd-result-note.w-hidden { display: none; }

@media (max-width: 767.98px) {
    #order-nexum #primaryLookupResult {
        flex-direction: column;
        text-align: center;
        padding: 32px 20px;
    }
    #order-nexum #primaryLookupResult .headline {
        flex-direction: column;
        text-align: center;
        gap: 12px;
        flex-basis: auto;
    }
    #order-nexum #primaryLookupResult .headline::before {
        width: 64px;
        height: 64px;
        flex: 0 0 64px;
        font-size: 34px;
    }
    #order-nexum .nx-cpd-result-body { align-items: center; }
    #order-nexum #primaryLookupResult .domain-price,
    #order-nexum #primaryLookupResult .nx-cpd-atc-group,
    #order-nexum #primaryLookupResult .nx-cpd-atc-group .btn-add-to-cart,
    #order-nexum #primaryLookupResult .nx-cpd-try-again,
    #order-nexum #primaryLookupResult .domain-contact-support {
        width: 100%;
        justify-content: center;
    }
}
#order-nexum #primaryLookupSearching {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin: 0 0 16px;
    padding: 18px 24px;
    border-radius: var(--nx-radius-card);
    border: 1px solid var(--nx-border);
    background: var(--nx-card-bg);
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    letter-spacing: -.2px;
    text-align: center;
}
#order-nexum #primaryLookupResult .btn.headline {
    display: inline-flex;
    width: auto;
    margin: 0 auto 16px;
    padding: 11px 24px;
    font-size: var(--nx-font-size-md);
    border-radius: var(--nx-radius-btn);
    background: var(--nx-primary);
    border-color: var(--nx-primary);
    color: #fff;
}
#order-nexum #primaryLookupResult .transfer-eligible,
#order-nexum #primaryLookupResult .transfer-not-eligible,
#order-nexum #primaryLookupResult .domain-invalid {
    flex: 1 1 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    color: var(--nx-muted);
    font-size: var(--nx-font-size-md);
    padding: 8px 0;
}
#order-nexum #primaryLookupResult .transfer-eligible .headline,
#order-nexum #primaryLookupResult .transfer-not-eligible .headline,
#order-nexum #primaryLookupResult .domain-invalid .headline {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px;
    margin-bottom: 4px;
    font-weight: 400;
    flex: 0 0 auto;
}
#order-nexum #primaryLookupResult .transfer-eligible p:not(.headline),
#order-nexum #primaryLookupResult .transfer-not-eligible p:not(.headline),
#order-nexum #primaryLookupResult .domain-invalid p:not(.headline) {
    margin: 0 0 6px;
    line-height: 1.6;
}
#order-nexum #primaryLookupResult .transfer-eligible p:not(.headline):last-child,
#order-nexum #primaryLookupResult .transfer-not-eligible p:not(.headline):last-child,
#order-nexum #primaryLookupResult .domain-invalid p:not(.headline):last-child {
    margin-bottom: 0;
}
#order-nexum #primaryLookupResult:has(.transfer-not-eligible:not([style*="none"])) .nx-cpd-try-again,
#order-nexum #primaryLookupResult:has(.transfer-eligible:not([style*="none"])) .nx-cpd-try-again,
#order-nexum #primaryLookupResult:has(.domain-invalid:not([style*="none"])) .nx-cpd-try-again {
    display: none !important;
}

#order-nexum #primaryLookupResult .domain-error,
#order-nexum #primaryLookupResult .domain-unavailable,
#order-nexum #primaryLookupResult .domain-tld-unavailable {
    flex: 1 1 100%;
}
#order-nexum #primaryLookupResult .nx-cpd-try-again {
    order: 1;
    flex: 0 0 auto;
    margin: 6px auto 0;
}

#order-nexum #primaryLookupResult:has(.transfer-eligible:not([style*="none"])) .domain-price .nx-cpd-atc-group {
    display: none !important;
}
#order-nexum #primaryLookupResult.nx-cpd-has-continue > #btnDomainContinue,
#order-nexum #primaryLookupResult.nx-cpd-has-continue > #btnDomainContinue.w-hidden {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex: 0 0 auto;
    margin-left: auto;
    white-space: nowrap;
}
#order-nexum #primaryLookupResult.nx-cpd-has-continue .transfer-eligible {
    flex: 1 1 auto;
    width: auto;
}
#order-nexum .nx-cpd-continue-bar:not(:has(#btnDomainContinue)) { display: none !important; }
@media (max-width: 767.98px) {
    #order-nexum #primaryLookupResult.nx-cpd-has-continue > #btnDomainContinue,
    #order-nexum #primaryLookupResult.nx-cpd-has-continue > #btnDomainContinue.w-hidden {
        flex: 1 1 100%;
        width: 100%;
        margin-left: 0;
        margin-top: 4px;
    }
}

#order-nexum #primaryLookupResult .transfer-eligible {
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 18px;
    flex-wrap: wrap;
}
#order-nexum #primaryLookupResult .transfer-eligible .headline {
    flex-direction: row;
    align-items: center;
    text-align: left;
    gap: 18px;
    margin-bottom: 0;
    width: 100%;
}
#order-nexum #primaryLookupResult .transfer-eligible p:not(.headline) {
    padding-left: 72px;
    text-align: left;
}
#order-nexum #primaryLookupResult:has(.transfer-eligible:not([style*="none"])) .domain-price {
    flex: 1 1 100%;
    text-align: left;
    padding-left: 72px;
    margin-top: 2px;
}
@media (max-width: 767.98px) {
    #order-nexum #primaryLookupResult .transfer-eligible,
    #order-nexum #primaryLookupResult .transfer-eligible .headline {
        flex-direction: column;
        text-align: center;
        gap: 12px;
    }
    #order-nexum #primaryLookupResult .transfer-eligible p:not(.headline) {
        padding-left: 0;
        text-align: center;
    }
    #order-nexum #primaryLookupResult:has(.transfer-eligible:not([style*="none"])) .domain-price {
        padding-left: 0;
        text-align: center;
    }
}
#order-nexum #primaryLookupResult .domain-error:empty { display: none !important; }
#order-nexum .domain-price {
    flex: 0 0 auto;
    margin: 0;
    text-align: right;
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    font-weight: 400;
}
#order-nexum #primaryLookupResult .domain-price .nx-cpd-atc-group { margin-top: 10px; }
#order-nexum #primaryLookupResult .domain-price .register-price-label { display: none; }
#order-nexum .domain-checker-result-headline p { margin: 0 0 10px; }
#order-nexum .domain-price .price {
    display: block;
    font-size: 22px;
    font-weight: 400;
    color: var(--nx-text);
    margin: 2px 0 0;
}
#order-nexum .btn-add-to-cart {
    background: var(--nx-primary);
    color: #fff;
    border: none;
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    padding: 11px 22px;
    box-shadow: var(--nx-shadow-btn);
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
}
#order-nexum .btn-add-to-cart:hover { background: var(--nx-primary-dark); }
#order-nexum .btn-add-to-cart .to-add {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
}
#order-nexum .btn-add-to-cart .to-add .material-symbols-rounded,
#order-nexum .btn-add-to-cart .added .material-symbols-rounded {
    display: inline-block !important;
    font-size: 18px;
    line-height: 1;
    color: inherit;
}
#order-nexum .btn-add-to-cart .loading,
#order-nexum .btn-add-to-cart .added,
#order-nexum .btn-add-to-cart .unavailable {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    gap: 6px;
}
#order-nexum .btn-add-to-cart .loading {
    min-width: 76px;
}
#order-nexum .btn-add-to-cart .loading .fa-spinner {
    margin: 0;
}
#order-nexum .btn-add-to-cart.checkout {
    background: var(--nx-primary) !important;
    border-color: var(--nx-primary) !important;
    color: #fff !important;
    box-shadow: none !important;
}
#order-nexum .btn-add-to-cart.checkout:hover { background: var(--nx-primary-dark) !important; }
#order-nexum .btn-add-to-cart.product-domain:has(.added:not([style*="none"])) {
    background: var(--nx-primary) !important;
    border-color: var(--nx-primary) !important;
    color: #fff !important;
    box-shadow: none !important;
}
#order-nexum .btn-add-to-cart.product-domain:has(.added:not([style*="none"])):hover {
    background: var(--nx-primary-dark) !important;
}
#order-nexum .domain-lookup-loader { color: var(--nx-muted); font-weight: 400; }

/* Spotlight TLDs */
#order-nexum .nx-cpd-sec-title {
    font-size: var(--nx-font-size-h3, 20px);
    font-weight: 600;
    color: var(--nx-text);
    letter-spacing: -.3px;
    margin: 26px 0 12px;
}
#order-nexum .spotlight-tlds { background: transparent; margin-bottom: 20px; }
#order-nexum .spotlight-tlds-container {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    gap: 12px;
}
#order-nexum .spotlight-tlds-container.nx-cpd-hide-while-loading {
    display: none !important;
}
#order-nexum .spotlight-tld-container {
    width: auto;
    float: none;
    padding: 0;
    flex: 0 0 calc((100% - 4 * 12px) / 5);
    max-width: calc((100% - 4 * 12px) / 5);
    box-sizing: border-box;
}
@media (max-width: 991.98px) {
    #order-nexum .spotlight-tld-container {
        flex: 0 0 calc((100% - 2 * 12px) / 3);
        max-width: calc((100% - 2 * 12px) / 3);
    }
}
@media (max-width: 767.98px) {
    #order-nexum .spotlight-tlds-container.nx-mobile-carousel,
    #order-nexum .nx-mobile-carousel {
        display: flex !important;
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        overflow-y: hidden;
        overflow-anchor: none;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        -ms-overflow-style: none;
        gap: 12px !important;
        padding: 4px 0 14px !important;
        margin: 0 !important;
        touch-action: pan-x pan-y;
    }
    #order-nexum .nx-mobile-carousel::-webkit-scrollbar { display: none; }
    #order-nexum .nx-mobile-carousel > * {
        flex: 0 0 100% !important;
        width: 100% !important;
        min-width: 100% !important;
        max-width: 100% !important;
        scroll-snap-align: center !important;
        box-sizing: border-box;
    }
    #order-nexum .nx-carousel-dots {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 0;
        margin-top: 6px;
        margin-bottom: 18px;
        overflow: hidden;
        margin-left: auto;
        margin-right: auto;
    }
    #order-nexum .nx-carousel-dots .nx-dot-rail {
        display: flex;
        align-items: center;
        gap: 6px;
        transition: transform .22s ease;
        will-change: transform;
    }
    #order-nexum .nx-carousel-dots .nx-dot {
        width: 8px;
        height: 8px;
        border-radius: 50%;
        border: 0;
        padding: 0;
        background: var(--nx-muted);
        opacity: .35;
        cursor: pointer;
        transition: background-color var(--nx-transition), opacity var(--nx-transition), transform var(--nx-transition);
        flex-shrink: 0;
    }
    #order-nexum .nx-carousel-dots .nx-dot.is-edge:not(.is-active) {
        transform: scale(.55);
        opacity: .25;
    }
    #order-nexum .nx-carousel-dots .nx-dot.is-active {
        background: var(--nx-primary);
        opacity: 1;
        transform: scale(1.25);
    }
}
@media (min-width: 768px) {
    #order-nexum .nx-carousel-dots { display: none !important; }
}

@keyframes nx-cpd-spin { to { transform: rotate(360deg); } }
@keyframes nx-cpd-shimmer { 0% { opacity: .45; } 50% { opacity: 1; } 100% { opacity: .45; } }

#order-nexum .nx-cpd-skeleton-block.w-hidden { display: none; }
#order-nexum .nx-cpd-skel-line {
    border-radius: 6px;
    background: var(--nx-border-soft);
}
#order-nexum .nx-cpd-skeleton-status {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 18px 0 4px;
    font-size: 13px;
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-spin {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2.5px solid var(--nx-border);
    border-top-color: var(--nx-primary);
    animation: nx-cpd-spin .8s linear infinite;
}

#order-nexum .nx-cpd-skeleton-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 12px;
}
@media (max-width: 991px) {
    #order-nexum .nx-cpd-skeleton-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767.98px) {
    #order-nexum .nx-cpd-skeleton-grid {
        display: flex;
        flex-wrap: nowrap;
        overflow: hidden;
        gap: 0;
        padding: 4px 0 14px;
    }
    #order-nexum .nx-cpd-skeleton-grid .nx-cpd-skel-card {
        flex: 0 0 100%;
        width: 100%;
        min-width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }
    #order-nexum .nx-cpd-skeleton-grid .nx-cpd-skel-card:not(:first-child) {
        display: none;
    }
}
#order-nexum .nx-cpd-skel-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 24px 16px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    animation: nx-cpd-shimmer 1.4s ease-in-out infinite;
}
#order-nexum .nx-cpd-skel-ext { width: 74px; height: 26px; }
#order-nexum .nx-cpd-skel-price { width: 56px; height: 14px; }
#order-nexum .nx-cpd-skel-btn { align-self: stretch; height: 38px; margin-top: 4px; }

#order-nexum .nx-cpd-skeleton-rows { padding: 10px; }
#order-nexum .nx-cpd-skel-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 12px 6px;
    animation: nx-cpd-shimmer 1.4s ease-in-out infinite;
}
#order-nexum .nx-cpd-skel-domain { width: 45%; height: 16px; }
#order-nexum .nx-cpd-skel-row-price { width: 60px; height: 16px; margin-left: auto; }
#order-nexum .nx-cpd-skel-row-btn { width: 120px; height: 38px; }

#order-nexum .spotlight-tld {
    position: relative;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: 16px;
    box-shadow: var(--nx-shadow-card);
    padding: 18px 12px 14px;
    text-align: center;
    color: var(--nx-text);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    height: 100%;
    overflow: visible;
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
}
#order-nexum .spotlight-tld:hover { border-color: var(--nx-primary); transform: translateY(-2px); }
#order-nexum .spotlight-tld span { padding: 0; }
#order-nexum .spotlight-tld .nx-cpd-spot-ext,
#order-nexum .spotlight-tld > .nx-cpd-spot-ext,
#order-nexum .spotlight-tld > .nx-cpd-spot-ext-img {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 72px;
    box-sizing: border-box;
    padding: 8px 12px 10px;
    font-size: 26px;
    font-weight: 400;
    letter-spacing: -.5px;
    color: var(--nx-text);
    line-height: 1.1;
}
#order-nexum .nx-cpd-spot-ext-img img {
    max-height: 26px;
    max-width: 84px;
    width: auto;
}
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img,
html.nx-dark #order-nexum .nx-cpd-featured-ext-img img {
    filter: brightness(0) invert(1);
}
#order-nexum .nx-cpd-spot-ext-img img[alt=".biz"], #order-nexum .nx-cpd-featured-ext-img img[alt=".biz"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".cloud"], #order-nexum .nx-cpd-featured-ext-img img[alt=".cloud"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".co"], #order-nexum .nx-cpd-featured-ext-img img[alt=".co"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".eu"], #order-nexum .nx-cpd-featured-ext-img img[alt=".eu"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".in"], #order-nexum .nx-cpd-featured-ext-img img[alt=".in"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".info"], #order-nexum .nx-cpd-featured-ext-img img[alt=".info"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".me"], #order-nexum .nx-cpd-featured-ext-img img[alt=".me"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".online"], #order-nexum .nx-cpd-featured-ext-img img[alt=".online"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".pk"], #order-nexum .nx-cpd-featured-ext-img img[alt=".pk"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".studio"], #order-nexum .nx-cpd-featured-ext-img img[alt=".studio"],
#order-nexum .nx-cpd-spot-ext-img img[alt=".us"], #order-nexum .nx-cpd-featured-ext-img img[alt=".us"] {
    background: #fff;
    border-radius: 6px;
    padding: 4px 8px;
}
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".biz"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".biz"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".co"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".co"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".cloud"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".cloud"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".eu"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".eu"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".in"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".in"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".info"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".info"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".me"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".me"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".online"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".online"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".pk"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".pk"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".studio"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".studio"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".us"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".us"] {
    background: transparent;
}
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".biz"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".biz"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".eu"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".eu"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".info"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".info"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".in"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".in"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".me"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".me"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".us"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".us"] {
    filter: none;
}
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".online"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".online"] {
    filter: brightness(2.2);
}
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".co"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".co"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".cloud"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".cloud"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".pk"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".pk"],
html.nx-dark #order-nexum .nx-cpd-spot-ext-img img[alt=".studio"], html.nx-dark #order-nexum .nx-cpd-featured-ext-img img[alt=".studio"] {
    filter: invert(1);
}
#order-nexum .spotlight-tld .domain-lookup-result {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    padding: 14px 14px 16px;
    border-top: 1px solid var(--nx-border);
    margin-top: auto;
    box-sizing: border-box;
    gap: 10px;
    background: transparent;
}
#order-nexum .spotlight-tld .domain-lookup-result > .available.price { order: 1; }
#order-nexum .spotlight-tld .domain-lookup-result > .btn.unavailable,
#order-nexum .spotlight-tld .domain-lookup-result > .btn.invalid,
#order-nexum .spotlight-tld .domain-lookup-result > .nx-cpd-atc-group,
#order-nexum .spotlight-tld .domain-lookup-result > .domain-contact-support {
    order: 2;
}
#order-nexum .spotlight-tld.nx-avail { border-color: rgba(var(--nx-primary-rgb), .35); }
#order-nexum .spotlight-tld .available.price {
    display: block;
    font-size: 15px;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .spotlight-tld .available.price .nx-cpd-featured-term {
    display: none;
}
#order-nexum .nx-cpd-atc-group {
    display: flex;
    width: 100%;
    margin-top: 8px;
    border-radius: var(--nx-radius-md);
    overflow: hidden;
    box-shadow: none;
}
#order-nexum .nx-cpd-atc-group .btn-add-to-cart {
    flex: 1 1 auto;
    margin: 0;
    border-radius: 0;
    box-shadow: none;
}
#order-nexum .nx-cpd-btn-remove {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: var(--nx-primary);
    color: #fff;
    cursor: pointer;
    transition: background-color var(--nx-transition), opacity var(--nx-transition);
}
#order-nexum .nx-cpd-btn-remove .fa-trash { font-size: 14px; color: inherit; }
#order-nexum .nx-cpd-btn-remove:hover { background: color-mix(in srgb, var(--nx-primary) 65%, #000); }
#order-nexum .nx-cpd-btn-remove.nx-cpd-btn-remove-busy { opacity: .6; pointer-events: none; }
#order-nexum .nx-cpd-btn-remove.w-hidden { display: none; }

#order-nexum .spotlight-tld .btn-add-to-cart {
    width: 100%;
    margin-top: 6px;
    padding: 11px;
    border-radius: 10px;
    font-size: 13.5px;
    font-weight: 400;
    box-shadow: none;
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .spotlight-tld .btn-add-to-cart:hover {
    background: var(--nx-primary);
    color: #fff;
}
#order-nexum .spotlight-tld .nx-cpd-atc-group .btn-add-to-cart {
    margin-top: 0;
    border-radius: 0;
}
#order-nexum .spotlight-tld .btn.unavailable,
#order-nexum .spotlight-tld .btn.invalid {
    width: 100%;
    margin: 6px 0 0;
    padding: 11px;
    background: var(--nx-bg);
    border: none;
    color: var(--nx-muted);
    border-radius: 10px;
    font-size: 13.5px;
    font-weight: 400;
}
/* Suggested domains list */
#order-nexum .suggested-domains {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    overflow: hidden;
    margin-bottom: 22px;
}
#order-nexum .suggested-domains .card-header {
    font-weight: 400;
    font-size: var(--nx-font-size-h3, 20px);
    letter-spacing: -.3px;
    color: var(--nx-text);
    background: transparent;
    border-bottom: 1px solid var(--nx-border-soft);
    padding: 18px 22px 14px;
}
#order-nexum .suggested-domains .list-group {
    border: none;
    border-radius: 0;
    box-shadow: none;
    padding: 0;
    margin: 0;
    gap: 0;
}
#order-nexum .domain-suggestion.list-group-item {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    border: none;
    border-top: 1px solid var(--nx-border-soft);
    border-radius: 0;
    padding: 16px 22px;
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    background: transparent;
}
#order-nexum .domain-suggestion.list-group-item:first-child { border-top: none; }
#order-nexum .domain-suggestion.list-group-item.w-hidden { display: none; }

#order-nexum .spotlight-tld-new,
#order-nexum .spotlight-tld-sale,
#order-nexum .spotlight-tld-hot {
    width: auto;
    position: absolute;
    top: -9px;
    left: 14px;
    right: auto;
    letter-spacing: .6px;
    padding: 4px 9px;
    font-size: 10.5px;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: 6px;
    transform: none;
}
#order-nexum .spotlight-tld-new,
#order-nexum .spotlight-tld-sale,
#order-nexum .spotlight-tld-hot {
    background-color: color-mix(in srgb, var(--nx-primary) 14%, var(--nx-card-bg));
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .domain-suggestion .extension { color: var(--nx-primary-text, var(--nx-primary)); font-weight: 400; }
#order-nexum .domain-suggestion .actions {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 12px;
}
#order-nexum .domain-suggestion .actions .price { font-weight: 400; color: var(--nx-text); white-space: nowrap; }
#order-nexum .domain-suggestion .btn-add-to-cart {
    padding: 8px 16px;
    font-size: 12.5px;
    box-shadow: none;
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .domain-suggestion .btn-add-to-cart:hover {
    background: var(--nx-primary);
    color: #fff;
}
#order-nexum .domain-suggestion .nx-cpd-atc-group .btn-add-to-cart {
    border-radius: 0;
}
#order-nexum .domain-suggestion .promo,
#order-nexum .domain-suggestion .promo.hot,
#order-nexum .domain-suggestion .promo.new,
#order-nexum .domain-suggestion .promo.sale {
    background: transparent;
    padding: 0;
    text-transform: none;
    color: inherit;
}
#order-nexum .domain-suggestion .promo span {
    font-size: 10px;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: var(--nx-radius-badge);
    padding: 3px 10px;
}
#order-nexum .domain-suggestion .promo .sales-group-sale {
    background: rgba(var(--nx-warning-rgb, 247, 169, 53), .15);
    color: var(--nx-warning, #b7791f);
}
#order-nexum .domain-suggestion .promo .sales-group-new {
    background: rgba(var(--nx-success-rgb, 18, 183, 106), .12);
    color: var(--nx-success, #12b76a);
}
#order-nexum .domain-suggestion .promo .sales-group-hot {
    background: rgba(var(--nx-danger-rgb, 220, 38, 38), .1);
    color: var(--nx-danger, #dc2626);
}
#order-nexum .suggested-domains .card-footer {
    background: transparent;
    border-top: 1px solid var(--nx-border-soft);
    padding: 14px;
}
#order-nexum .suggested-domains .card-footer a { color: var(--nx-primary-text, var(--nx-primary)); font-weight: 400; text-decoration: none; }
#order-nexum .domain-suggestions-warning { padding: 0 22px 16px; text-align: left; }
#order-nexum .domain-suggestions-warning p { color: var(--nx-muted); font-size: var(--nx-font-size-sm); margin: 0; }

#order-nexum .nx-cpd-continue-bar {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 16px 22px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-top: 22px;
}
#order-nexum .nx-cpd-continue-bar #btnDomainContinue {
    padding: 11px 26px;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    border-radius: var(--nx-radius-btn);
}
#order-nexum .nx-cpd-continue-bar #btnDomainContinue.w-hidden { display: none; }
#order-nexum .nx-cpd-continue-bar:has(#btnDomainContinue.w-hidden) { display: none; }

#order-nexum .featured-tlds-container {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}
@media (max-width: 1199.98px) {
    #order-nexum .featured-tlds-container {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Featured TLDs + pricing table */
#order-nexum .featured-tld {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 26px 18px 0;
    overflow: hidden;
    width: 100%;
    max-width: none;
    min-height: 210px;
    display: flex;
    flex-direction: column;
}
#order-nexum .nx-cpd-featured-head {
    text-align: center;
    padding-bottom: 14px;
}
#order-nexum .nx-cpd-featured-ext {
    display: block;
    font-size: 34px;
    font-weight: 800;
    letter-spacing: -.5px;
    color: var(--nx-text);
}
#order-nexum .featured-tld:not(.nx-cpd-featured-tld-alt) .nx-cpd-featured-ext { color: var(--nx-text); }
#order-nexum .featured-tld.nx-cpd-featured-tld-alt .nx-cpd-featured-ext { color: var(--nx-text); }
#order-nexum .nx-cpd-featured-ext-img {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
}
#order-nexum .nx-cpd-featured-ext-img img {
    max-height: 40px;
    max-width: 130px;
    width: auto;
}
#order-nexum .nx-cpd-spot-ext-img img[alt=".name"] { max-height: 25.1px; max-width: 88px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".news"] { max-height: 17.1px; max-width: 89.4px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".online"] { max-height: 31.2px; max-width: 95.3px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".us"] { max-height: 51.1px; max-width: 45.1px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".co"] { max-height: 24.9px; max-width: 61.5px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".shop"] { max-height: 25.8px; max-width: 70.3px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".live"] { max-height: 22.4px; max-width: 69.4px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".me"] { max-height: 44.9px; max-width: 49.2px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".info"] { max-height: 36.5px; max-width: 78.7px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".cloud"] { max-height: 55.3px; max-width: 102.8px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".net"] { max-height: 32px; max-width: 68.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".com"] { max-height: 26px; max-width: 84px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".couk"] { max-height: 41.9px; max-width: 72.7px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".pk"] { max-height: 34.3px; max-width: 46.3px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".blog"] { max-height: 31.4px; max-width: 70.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".host"] { max-height: 30.7px; max-width: 73.8px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".tech"] { max-height: 22px; max-width: 69.9px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".app"] { max-height: 25.9px; max-width: 69.2px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".eu"] { max-height: 34.2px; max-width: 63.3px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".website"] { max-height: 24.8px; max-width: 120.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".social"] { max-height: 25.3px; max-width: 85.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".dev"] { max-height: 27.3px; max-width: 67.8px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".store"] { max-height: 20.4px; max-width: 76.8px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".studio"] { max-height: 56.2px; max-width: 97.1px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".in"] { max-height: 45px; max-width: 49px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".tv"] { max-height: 36.5px; max-width: 60.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".biz"] { max-height: 35.4px; max-width: 61.2px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".club"] { max-height: 20.9px; max-width: 75.1px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".ca"] { max-height: 37px; max-width: 58.6px; }
#order-nexum .nx-cpd-spot-ext-img img[alt=".rocks"] { max-height: 17.8px; max-width: 86.5px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".name"] { max-height: 38.6px; max-width: 133.2px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".news"] { max-height: 26.3px; max-width: 135.7px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".online"] { max-height: 47.9px; max-width: 144.1px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".us"] { max-height: 78.6px; max-width: 67.2px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".co"] { max-height: 38.5px; max-width: 92.8px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".shop"] { max-height: 39.7px; max-width: 106.2px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".live"] { max-height: 34.4px; max-width: 105px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".me"] { max-height: 69px; max-width: 73.5px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".info"] { max-height: 56.2px; max-width: 118.9px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".cloud"] { max-height: 85.2px; max-width: 155.5px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".net"] { max-height: 49.2px; max-width: 103.4px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".com"] { max-height: 40px; max-width: 127.1px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".couk"] { max-height: 64.4px; max-width: 109.3px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".pk"] { max-height: 52.8px; max-width: 71.1px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".blog"] { max-height: 48.3px; max-width: 106.4px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".host"] { max-height: 47.3px; max-width: 111.3px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".tech"] { max-height: 33.9px; max-width: 105.7px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".app"] { max-height: 39.8px; max-width: 104.7px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".eu"] { max-height: 52.6px; max-width: 95.2px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".website"] { max-height: 38.1px; max-width: 182.9px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".social"] { max-height: 38.9px; max-width: 129.6px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".dev"] { max-height: 41.9px; max-width: 102.6px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".store"] { max-height: 31.4px; max-width: 116.4px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".studio"] { max-height: 86.4px; max-width: 146.9px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".in"] { max-height: 69.3px; max-width: 73.3px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".tv"] { max-height: 56.2px; max-width: 91.1px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".biz"] { max-height: 54.5px; max-width: 92px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".club"] { max-height: 32.1px; max-width: 113.7px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".ca"] { max-height: 56.9px; max-width: 88.4px; }
#order-nexum .nx-cpd-featured-ext-img img[alt=".rocks"] { max-height: 27.5px; max-width: 131.3px; }
#order-nexum .nx-cpd-featured-foot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 16px 0;
    border-top: 1px solid var(--nx-border-soft);
    margin-top: auto;
}
#order-nexum .nx-cpd-featured-price {
    font-size: 14px;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-cpd-featured-term {
    margin-left: 4px;
    font-size: 12px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-featured-unavailable { color: var(--nx-muted); font-weight: 400; }
#order-nexum .nx-cpd-featured-foot .nx-cpd-tbl-register {
    padding: 9px 18px;
    font-size: 13px;
}
/* ---------- Browse extensions: toolbar, category multiselect, pagination ---------- */
#order-nexum .nx-cpd-tbl-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 14px;
}
#order-nexum .nx-cpd-tbl-toolbar .nx-cpd-sec-title { margin: 0; }
#order-nexum .nx-cpd-tbl-search {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 40px;
    padding: 0 14px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    min-width: 220px;
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum .nx-cpd-tbl-search:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-cpd-tbl-search:focus-within .material-symbols-rounded { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-cpd-tbl-search .material-symbols-rounded { font-size: 18px; color: var(--nx-muted); }
#order-nexum .nx-cpd-tbl-search input {
    border: 0;
    background: transparent;
    outline: none;
    font-family: var(--nx-font-family);
    font-size: 14px;
    color: var(--nx-text);
    width: 100%;
}
#order-nexum .nx-cpd-tbl-search input::placeholder { color: var(--nx-muted); }

@media (max-width: 767.98px) {
    #order-nexum .nx-cpd-tbl-toolbar {
        flex-direction: column;
        align-items: stretch;
        gap: 10px;
    }
    #order-nexum .nx-cpd-tbl-search,
    #order-nexum .nx-cpd-catselect {
        width: 100%;
        min-width: 0;
        flex: 1 1 100%;
    }
    #order-nexum .nx-cpd-tbl-search {
        height: auto;
        min-height: 46px;
    }
    #order-nexum .nx-cpd-tbl-search input {
        font-size: 15px;
    }
    #order-nexum .nx-cpd-catselect-trigger {
        min-height: 46px;
    }
    #order-nexum .featured-tlds-container.nx-mobile-carousel {
        margin-top: 18px !important;
    }
}

#order-nexum .nx-cpd-catselect { position: relative; margin-bottom: 18px; }
#order-nexum .nx-cpd-catselect-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    width: 100%;
    min-height: 46px;
    padding: 8px 16px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    cursor: pointer;
}
#order-nexum .nx-cpd-catselect.is-open .nx-cpd-catselect-trigger {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-cpd-cat-chips {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}
#order-nexum .nx-cpd-cat-chip {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: rgba(var(--nx-primary-rgb), .08);
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: 13px;
    font-weight: 400;
    padding: 5px 10px;
    border-radius: var(--nx-radius-badge);
}
#order-nexum .nx-cpd-cat-chip-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: 15px;
    line-height: 1;
    cursor: pointer;
}
#order-nexum .nx-cpd-cat-chip-remove:hover { background: rgba(var(--nx-primary-rgb), .18); }
#order-nexum .nx-cpd-catselect-arrow {
    font-size: 20px;
    color: var(--nx-muted);
    transition: transform var(--nx-transition);
}
#order-nexum .nx-cpd-catselect.is-open .nx-cpd-catselect-arrow { transform: rotate(180deg); }
#order-nexum .nx-cpd-catselect-menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 40;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-elevated);
    padding: 8px;
    max-height: 280px;
    overflow-y: auto;
}
#order-nexum .nx-cpd-catselect-option {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: var(--nx-radius-md);
    font-size: 14px;
    color: var(--nx-text);
    cursor: pointer;
    margin: 0;
}
#order-nexum .nx-cpd-catselect-option:hover { background: rgba(var(--nx-primary-rgb), .06); }
#order-nexum .nx-cpd-catselect-option[data-nx-cat="__all__"] { border-bottom: 1px solid var(--nx-border); border-radius: 0; margin-bottom: 4px; padding-bottom: 12px; font-weight: 400; }

#order-nexum .nx-cpd-tbl-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
}
#order-nexum .nx-cpd-tbl-pagesize {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 13.5px;
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-tbl-pagesize select {
    height: 34px;
    padding: 0 8px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-size: 13.5px;
}
#order-nexum .nx-cpd-tbl-pages { display: flex; align-items: center; gap: 6px; }
#order-nexum .nx-cpd-tbl-pages button {
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-size: 13.5px;
    font-weight: 400;
    cursor: pointer;
}
#order-nexum .nx-cpd-tbl-pages button:hover { border-color: var(--nx-primary); color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-cpd-tbl-pages button.is-active {
    background: var(--nx-primary);
    border-color: var(--nx-primary);
    color: #fff;
}
#order-nexum .nx-cpd-tbl-pages button:disabled { opacity: .4; cursor: not-allowed; }
@media (max-width: 767.98px) {
    #order-nexum .nx-cpd-tbl-pagination {
        justify-content: center;
        text-align: center;
    }
    #order-nexum .nx-cpd-tbl-pagesize,
    #order-nexum .nx-cpd-tbl-pages {
        justify-content: center;
        width: 100%;
    }
}
#order-nexum .domain-pricing .bg-white {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    overflow: hidden;
}
#order-nexum .tld-pricing-header {
    background: transparent;
    color: var(--nx-muted);
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .8px;
    padding: 14px 0;
    border-bottom: 1px solid var(--nx-border-soft);
}
#order-nexum .domain-pricing .tld-pricing-header [class*="col-"],
#order-nexum .domain-pricing .tld-pricing-header div:nth-child(odd),
#order-nexum .domain-pricing .tld-pricing-header div,
#order-nexum .domain-pricing .tld-pricing-header .tld-column {
    background: transparent !important;
    background-color: transparent !important;
    border-bottom: none !important;
    border-color: transparent !important;
    border-radius: 0 !important;
    height: auto !important;
}
/* The Domain heading lines up with the TLDs under it (left, px-4) and with the other headings. */
#order-nexum .domain-pricing .tld-pricing-header .tld-column {
    text-align: left;
    padding: 0 1.5rem !important;
    line-height: inherit;
}
#order-nexum .domain-pricing .tld-pricing-header { align-items: center; }
#order-nexum .tld-row {
    padding: 14px 0;
    border-bottom: 1px solid var(--nx-border-soft);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    background: var(--nx-card-bg);
    transition: background var(--nx-transition);
}
#order-nexum .tld-row:last-child { border-bottom: none; }
#order-nexum .domain-pricing .tld-row.highlighted {
    background: var(--nx-card-bg) !important;
}
#order-nexum .domain-pricing .tld-row > [class*="col-"],
#order-nexum .domain-pricing .tld-row .row {
    background: transparent;
}
#order-nexum .domain-pricing .bg-white,
#order-nexum .bg-white {
    background: var(--nx-card-bg) !important;
    background-color: var(--nx-card-bg) !important;
}
#order-nexum .tld-row strong { font-weight: 400; color: var(--nx-primary-text, var(--nx-primary)); font-size: var(--nx-font-size-lg); }
#order-nexum .tld-row small { color: var(--nx-muted); }
#order-nexum .domain-pricing .tld-row .col-4,
#order-nexum .domain-pricing .tld-row .col-3 {
    color: var(--nx-text);
    font-weight: 400;
}
#order-nexum .tld-row .col-md-4 {
    border-right: 1px solid var(--nx-border-soft);
}
#order-nexum .nx-cpd-tbl-register {
    height: 32px;
    padding: 0 16px;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    background: rgba(var(--nx-primary-rgb), .12);
    border-color: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cpd-tbl-register:hover {
    background: var(--nx-primary);
    color: #fff;
}
@media (max-width: 767.98px) {
    #order-nexum .domain-pricing .tld-row .col-md-8 > .row.no-gutters {
        flex-wrap: wrap;
    }
    #order-nexum .domain-pricing .tld-row .col-md-8 > .row.no-gutters > .col-3:nth-child(-n+3) {
        flex: 1 1 33.333%;
        max-width: 33.333%;
    }
    #order-nexum .domain-pricing .tld-row .col-md-8 > .row.no-gutters > .col-3:last-child {
        flex: 1 1 100%;
        max-width: 100%;
        margin-top: 10px;
        padding-left: 16px;
        padding-right: 16px;
        box-sizing: border-box;
    }
    #order-nexum .domain-pricing .tld-row .col-md-8 > .row.no-gutters > .col-3:last-child .nx-cpd-tbl-register {
        width: 100%;
    }
}
#order-nexum .nx-cpd-featured-foot .nx-dt-featured-transfer {
    height: 32px;
    padding: 9px 18px;
    font-size: 13px;
    font-weight: 400;
    background: rgba(var(--nx-primary-rgb), .12);
    border-color: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cpd-featured-foot .nx-dt-featured-transfer:hover {
    background: var(--nx-primary);
    color: #fff;
}

#order-nexum .nx-cpd-sticky-bar {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-top: 0;
    padding: 16px max(calc((100vw - var(--nx-container-width, 1280px)) / 2), 22px, env(safe-area-inset-right)) calc(16px + env(safe-area-inset-bottom)) max(calc((100vw - var(--nx-container-width, 1280px)) / 2), 22px, env(safe-area-inset-left));
    background: color-mix(in srgb, var(--nx-card-bg) 72%, transparent);
    backdrop-filter: blur(16px) saturate(160%);
    -webkit-backdrop-filter: blur(16px) saturate(160%);
    border: none;
    border-top: 1px solid var(--nx-border);
    border-radius: 0;
    box-shadow: 0 -8px 30px rgba(16, 24, 40, .10);
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    #order-nexum .nx-cpd-sticky-bar {
        background: var(--nx-card-bg);
    }
}
body:has(#order-nexum .nx-cpd-sticky-bar:not([hidden])) {
    padding-bottom: 88px;
}
#order-nexum .nx-cpd-sticky-count {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: var(--nx-font-size-md);
    color: var(--nx-text);
    font-weight: 400;
}
#order-nexum .nx-cpd-sticky-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 6px;
    border-radius: 50%;
    background: var(--nx-primary);
    color: #fff;
    font-size: 12.5px;
    font-weight: 400;
}
#order-nexum .nx-cpd-sticky-continue {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 22px;
    height: 42px;
}
#order-nexum .nx-cpd-sticky-continue .material-symbols-rounded { font-size: 18px; }
@media (max-width: 767.98px) {
    #order-nexum .nx-cpd-sticky-continue {
        gap: 0;
    }
    #order-nexum .nx-cpd-sticky-continue .material-symbols-rounded {
        display: none;
    }
}
#order-nexum .domain-pricing .two-row-center {
    border-right: none;
    color: var(--nx-text);
}
@media (min-width: 768px) {
    #order-nexum .domain-pricing .two-row-center {
        border-right: 1px solid var(--nx-border-soft);
    }
}
#order-nexum .tld-sale-group {
    font-size: 10px;
    font-weight: 400;
    text-transform: uppercase;
    border-radius: var(--nx-radius-badge);
    padding: 2px 9px;
    margin-left: 6px;
    background: rgba(var(--nx-primary-rgb), .1);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .tld-sale-group-hot { background: rgba(249, 97, 90, .12); color: var(--nx-danger, #f9615a); }
#order-nexum .tld-sale-group-new { background: rgba(42, 213, 136, .12); color: var(--nx-success, #2ad588); }
#order-nexum .tld-sale-group-sale { background: rgba(247, 169, 53, .16); color: #b5790a; }
#order-nexum .domain-promo-box-row {
    display: flex;
    flex-wrap: wrap;
    margin: 22px -10px 0;
}
#order-nexum .domain-promo-box-col {
    padding: 0 10px;
    margin-bottom: 20px;
}
#order-nexum .domain-promo-box-col > .domain-promo-box {
    width: 100%;
    height: 100%;
}

#order-nexum .domain-promo-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 26px;
    margin: 22px 0 0;
    text-align: center;
    color: var(--nx-text);
}
#order-nexum .domain-promo-box-col > .domain-promo-box { margin: 0; }
#order-nexum .domain-promo-box > .clearfix {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
#order-nexum .domain-promo-box i.fas,
#order-nexum .domain-promo-box i.far {
    float: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    color: var(--nx-primary-text, var(--nx-primary));
    background: rgba(var(--nx-primary-rgb), 0.10);
    border-radius: var(--nx-radius-card);
    font-size: 26px;
    margin-bottom: 14px;
}
#order-nexum .domain-promo-box h3 {
    font-weight: 600;
    letter-spacing: -.4px;
    color: var(--nx-text);
    margin: 0 0 6px;
}
#order-nexum .domain-promo-box p { margin: 0 0 10px; }
#order-nexum .domain-promo-box .btn-warning,
#order-nexum .domain-promo-box .btn-primary {
    margin-top: auto;
    align-self: center;
    background: var(--nx-primary);
    border: none;
    color: #fff;
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    padding: 11px 24px;
    box-shadow: var(--nx-shadow-btn);
}
#order-nexum .domain-promo-box .text-warning { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .domain-promo-box .small { color: var(--nx-muted); margin: 12px 0 0; }

/* Domain transfer card + domain options */
#order-nexum #frmDomainTransfer .panel .card-footer,
#order-nexum .panel-footer {
    background: transparent;
    border-top: 1px solid var(--nx-border-soft);
    padding: 16px 24px;
}
#order-nexum .btn-transfer { border-radius: var(--nx-radius-btn); }
#order-nexum .domain-suggestions label { font-weight: 400; color: var(--nx-text); }
#order-nexum .domain-suggestions > div[class*="col-"] {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    padding: 12px 16px;
    margin: 0 0 10px;
    width: 100%;
    max-width: 100%;
    flex: 0 0 100%;
}
#order-nexum .domain-suggestions .btn-default,
#order-nexum .btn-group .btn-default,
#order-nexum .dropdown .btn-default {
    border: 1.5px solid var(--nx-input-border);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    border-radius: var(--nx-radius-md);
    font-weight: 400;
}
#order-nexum .dropdown-menu {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    box-shadow: var(--nx-shadow-elevated);
    padding: 6px;
}
#order-nexum .dropdown-menu li a,
#order-nexum .dropdown-menu .dropdown-item a {
    color: var(--nx-text);
    font-weight: 400;
    font-size: 13px;
    border-radius: var(--nx-radius-sm);
    padding: 8px 12px;
    display: block;
    text-decoration: none;
}
#order-nexum .dropdown-menu li a:hover { background: rgba(var(--nx-primary-rgb), .06); color: var(--nx-primary-text, var(--nx-primary)); }

#order-nexum .view-cart-items .dropdown-menu {
    width: max-content;
    max-width: min(280px, calc(100vw - 32px));
}
#order-nexum .view-cart-items .dropdown-menu li a {
    white-space: nowrap;
}
#order-nexum .view-cart-items:has(.dropdown-menu.show) {
    overflow: visible;
}

/* ================= CONFIGURE DOMAINS ================= */
#order-nexum .nx-hosting-yes { color: var(--nx-success, #12b76a); font-weight: 400; }
#order-nexum .nx-hosting-no { color: var(--nx-danger-text); font-weight: 400; text-decoration: none; }
#order-nexum .panel-addon .panel-price {
    background: var(--nx-bg);
    border-top: 1px dashed var(--nx-border);
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    padding: 12px 16px;
    text-align: center;
    margin-top: 12px;
    border-radius: var(--nx-radius-md);
}
#order-nexum .panel-addon .panel-add {
    text-align: center;
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    font-size: 13px;
    padding: 10px 0 0;
    cursor: pointer;
}
#order-nexum .panel-addon.panel-addon-selected {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), .08);
}

/* ================= RENEWALS (domains + services) ================= */
#order-nexum .domain-renewal,
#order-nexum .service-renewal {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 22px 24px;
    margin-bottom: 16px;
}
#order-nexum .domain-renewal h3,
#order-nexum .service-renewal h3 {
    font-size: var(--nx-font-size-h3);
    font-weight: 600;
    letter-spacing: -.3px;
    color: var(--nx-text);
    margin: 0 0 4px;
}
#order-nexum .service-renewal h4 { font-size: var(--nx-font-size); font-weight: 600; color: var(--nx-primary-text, var(--nx-primary)); margin: 0 0 8px; }
#order-nexum .domain-renewal p,
#order-nexum .service-renewal p { color: var(--nx-muted); font-size: 13px; }
#order-nexum .label {
    border-radius: var(--nx-radius-badge);
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: .4px;
    padding: 5px 12px;
    display: inline-block;
}
#order-nexum .label-success { background: rgba(var(--nx-success-rgb, 18, 183, 106), .12); color: var(--nx-success-text); }
#order-nexum .label-warning { background: rgba(var(--nx-warning-rgb, 245, 158, 11), .14); color: var(--nx-warning); }
#order-nexum .label-danger { background: var(--nx-danger-soft); color: var(--nx-danger-text); }
#order-nexum .label-info,
#order-nexum .label-default,
#order-nexum .label-grey { background: var(--nx-bg); color: var(--nx-muted); border: 1px solid var(--nx-border); }
#order-nexum .btn-add-renewal-to-cart {
    background: var(--nx-card-bg);
    border: 1.5px solid var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    padding: 9px 18px;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
}
#order-nexum .btn-add-renewal-to-cart:hover { background: var(--nx-primary); color: #fff; }
#order-nexum .div-renewal-ineligible { color: var(--nx-muted); font-weight: 400; }
#order-nexum .div-renewal-ineligible i { margin-right: 6px; color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .addon-renewals {
    border-top: 1px dashed var(--nx-border);
    margin-top: 16px;
    padding-top: 14px;
}
#order-nexum .addon-renewals .service-renewal { box-shadow: none; background: var(--nx-bg); }
#order-nexum .service-renewals-filter,
#order-nexum .domain-renewals-filter { max-width: 260px !important; display: inline-block !important; }
#order-nexum .service-renewals-quick-filter {
    border: 1.5px solid var(--nx-input-border) !important;
    border-radius: var(--nx-radius-md) !important;
    background: var(--nx-card-bg) !important;
    color: var(--nx-text) !important;
    font-weight: 400 !important;
}

/* ================= ADDONS page (cart.php?gid=addons) ================= */

/* Header row: title + subtitle on the left, search + View Cart on the right. */
#order-nexum .nx-addons-head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--nx-space-4, 16px);
    flex-wrap: wrap;
}
#order-nexum .nx-addons-head-text { min-width: 0; }
#order-nexum .nx-addons-head-sub {
    margin: 7px 0 0;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addons-head-actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
#order-nexum .nx-addons-search {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 210px;
    padding: 0 12px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
}
#order-nexum .nx-addons-search .material-symbols-rounded { font-size: 18px; color: var(--nx-muted); }
#order-nexum .nx-addons-search input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    padding: 11px 0;
    font-size: 13px;
    color: var(--nx-text);
}
#order-nexum .nx-addons-search input:focus-visible { outline: none; }
#order-nexum .nx-addons-search:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-addons-viewcart {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 10px 15px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-muted);
    font-weight: 400;
    font-size: 12.5px;
    white-space: nowrap;
    transition: border-color var(--nx-transition), color var(--nx-transition);
}
#order-nexum .nx-addons-viewcart:hover {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
    text-decoration: none;
}
#order-nexum .nx-addons-viewcart .material-symbols-rounded { font-size: 17px; }

#order-nexum .nx-addons-target {
    position: relative;
    z-index: 40;
    overflow: visible;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: var(--nx-space-5, 20px);
    padding: 16px 20px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-sm);
}
#order-nexum .nx-addons-target-ico {
    font-size: 20px;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-addons-target-text { min-width: 0; }
#order-nexum .nx-addons-target-title {
    font-size: 13.5px;
    font-weight: 700;
    color: var(--nx-text);
}
#order-nexum .nx-addons-target-hint {
    margin-top: 1px;
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addons-target-select {
    margin-left: auto;
    min-width: 240px;
    padding: 10px 12px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-size: 13px;
    font-weight: 400;
    cursor: pointer;
}
#order-nexum .nx-addons-target-select:focus-visible {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-addons-target .nx-custom-select-wrapper {
    margin-left: auto;
    width: auto;
    min-width: 240px;
    flex-shrink: 0;
}
#order-nexum .nx-addons-target .nx-custom-select-wrapper {
    flex: 1 1 240px;
    min-width: 240px;
    z-index: 20;
}
#order-nexum .nx-addons-target .nx-custom-select-wrapper.open {
    z-index: 50;
}
#order-nexum .nx-addons-target .nx-custom-select-options {
    z-index: 30;
    max-height: 220px;
}
#order-nexum .nx-addons-target .nx-custom-select-option {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    line-height: 1.35;
}

/* Result count + sort toolbar. */
#order-nexum .nx-addons-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: var(--nx-space-4, 16px);
    margin-bottom: var(--nx-space-3, 12px);
}
#order-nexum .nx-addons-count {
    font-size: 12px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addons-sort {
    display: flex;
    gap: 4px;
    padding: 4px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
}
#order-nexum .nx-addons-sort button {
    padding: 7px 13px;
    border: 0;
    border-radius: var(--nx-radius-sm);
    background: transparent;
    color: var(--nx-muted);
    font-size: 12px;
    font-weight: 400;
    white-space: nowrap;
    cursor: pointer;
    transition: background-color var(--nx-transition), color var(--nx-transition);
}
#order-nexum .nx-addons-sort button.is-active {
    background: var(--nx-primary);
    color: #fff;
}
#order-nexum .nx-addons-empty-filtered {
    text-align: center;
    padding: var(--nx-space-6, 24px) 0;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-muted);
}

/* Addon card. */
#order-nexum .products .product:not(.nx-plp-card) {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 0;
    margin-bottom: 0;
    overflow: hidden;
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum .products .product:not(.nx-plp-card):hover {
    border-color: color-mix(in srgb, var(--nx-primary) 25%, var(--nx-border));
    box-shadow: var(--nx-shadow-elevated, var(--nx-shadow-card));
}
#order-nexum .nx-addon-head {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 22px 0;
}
#order-nexum .nx-addon-ico {
    flex: 0 0 38px;
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: var(--nx-radius-button);
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
    overflow: hidden;
}
#order-nexum .nx-addon-ico .material-symbols-rounded {
    display: none;
}
#order-nexum .nx-addon-ico::before {
    display: block;
    font-family: Arial, sans-serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 1;
}
#order-nexum .nx-addon-ico-add_box::before { content: '+'; }
#order-nexum .nx-addon-ico-extension::before { content: '[]'; font-size: 18px; }
#order-nexum .nx-addon-ico-stars::before { content: '*'; }
#order-nexum .nx-addon-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#order-nexum .nx-addon-name {
    min-width: 0;
    font-size: 14.5px;
    font-weight: 400;
    letter-spacing: -.25px;
    color: var(--nx-text);
}
#order-nexum .nx-addon-desc {
    margin: 11px 0 0;
    padding: 0 22px;
    color: var(--nx-muted);
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.6;
    width: 100%;
}
#order-nexum .nx-addon-features {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin: 10px 0 0;
    padding: 0 22px;
    width: 100%;
}
#order-nexum .nx-addon-features:empty { margin: 0; }
#order-nexum .nx-addon-feature {
    display: flex;
    align-items: flex-start;
    gap: 7px;
    font-size: 12px;
    font-weight: 400;
    color: var(--nx-text-body, var(--nx-text));
    line-height: 1.5;
}
#order-nexum .nx-addon-feature-ico {
    flex-shrink: 0;
    margin-top: 1px;
    font-size: 15px;
    color: var(--nx-success, #12b76a);
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-addon-select-wrap {
    padding: 14px 22px 0;
    margin: 0;
    width: 100%;
}
#order-nexum .panel-addon,
#order-nexum .nx-addon-col > .product {
    overflow: visible;
}
#order-nexum .nx-addon-select-wrap .nx-custom-select-wrapper.open {
    position: relative;
    z-index: 50;
}
#order-nexum .nx-addon-select-wrap .nx-custom-select-options {
    z-index: 30;
}
#order-nexum .nx-addon-unavailable {
    margin: 10px 22px 0;
    padding: 9px 12px;
    border: 1px solid rgba(var(--nx-warning-rgb), .25);
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-warning-rgb), .06);
    color: var(--nx-warning, var(--nx-text));
    font-size: 11.5px;
    font-weight: 400;
}
#order-nexum .nx-addon-col.is-unavailable .product { opacity: .55; }
#order-nexum .nx-addon-col.is-unavailable .nx-addon-select-wrap { display: none; }
#order-nexum .nx-addon-foot {
    margin-top: auto;
    border-top: 1px solid var(--nx-border-soft);
    padding: 16px 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}
#order-nexum .nx-addon-price { text-align: left; }
#order-nexum .nx-addon-price-amt {
    font-size: 17px;
    font-weight: 400;
    letter-spacing: -.3px;
    color: var(--nx-primary-text, var(--nx-primary));
    font-variant-numeric: tabular-nums;
}
#order-nexum .nx-addon-price-cycle {
    margin-left: 4px;
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addon-setup {
    display: block;
    margin-top: 2px;
    font-size: 11px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addon-btn,
#order-nexum .products .product:not(.nx-plp-card) .btn-success {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    background: var(--nx-primary);
    border: none;
    color: #fff;
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    font-size: 12.5px;
    padding: 11px 18px;
    box-shadow: var(--nx-shadow-btn, none);
    cursor: pointer;
    transition: background-color var(--nx-transition), transform var(--nx-transition);
}
#order-nexum .nx-addon-btn:hover { background: var(--nx-primary-hover); }
#order-nexum .nx-addon-btn .material-symbols-rounded { font-size: 16px; }
#order-nexum .nx-addon-btn:disabled {
    background: var(--nx-border);
    color: var(--nx-muted);
    cursor: not-allowed;
    box-shadow: none;
}

/* "Not sure which addon fits?" help card. */
#order-nexum .nx-addons-help {
    display: flex;
    align-items: center;
    gap: 13px;
    margin-top: var(--nx-space-4, 16px);
    padding: 16px 20px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-sm);
    flex-wrap: wrap;
}
#order-nexum .nx-addons-help > .material-symbols-rounded {
    font-size: 20px;
    color: var(--nx-muted);
}
#order-nexum .nx-addons-help-text { min-width: 0; }
#order-nexum .nx-addons-help-title {
    font-size: 13px;
    font-weight: 700;
    color: var(--nx-text);
}
#order-nexum .nx-addons-help-sub {
    margin-top: 2px;
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-addons-help-cta {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-left: auto;
    padding: 10px 15px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    color: var(--nx-muted);
    font-weight: 400;
    font-size: 12.5px;
    white-space: nowrap;
    transition: border-color var(--nx-transition), color var(--nx-transition);
}
#order-nexum .nx-addons-help-cta:hover {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
    text-decoration: none;
}
#order-nexum .nx-addons-help-cta .material-symbols-rounded { font-size: 17px; }

@media (max-width: 767.98px) {
    #order-nexum .nx-addons-target-select { margin-left: 0; width: 100%; }
    #order-nexum .nx-addons-target .nx-custom-select-wrapper { margin-left: 0; width: 100%; min-width: 0; }
    #order-nexum .nx-addons-toolbar { flex-direction: column; align-items: flex-start; }
    #order-nexum .nx-addons-help-cta { margin-left: 0; width: 100%; justify-content: center; }
}

/* ================= ERROR / FRAUD ================= */
#order-nexum .error-heading {
    background: rgba(var(--nx-danger-rgb, 220, 38, 38), .06);
    border: 1px solid rgba(var(--nx-danger-rgb, 220, 38, 38), .25);
    color: var(--nx-danger-text);
    border-radius: var(--nx-radius-card);
    text-align: center;
    font-size: var(--nx-font-size-xl);
    font-weight: 600;
    padding: 22px;
}
#order-nexum .error-heading i { display: block; font-size: 30px; margin-bottom: 8px; }
#order-nexum .btn-default:not(.dropdown-toggle) {
    border: 1.5px solid var(--nx-input-border);
    border-radius: var(--nx-radius-btn);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-weight: 400;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
}
#order-nexum .btn-default:not(.dropdown-toggle):hover {
    background: rgba(var(--nx-primary-rgb), 0.06);
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
}

body.nx-theme .modal-backdrop.show { opacity: .55; }

.nx-cart-modal:not(#recommendationsModal) .modal-dialog { max-width: 440px; }

.nx-cart-modal .modal-content {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: 0 24px 60px rgba(16, 24, 40, .18);
    color: var(--nx-text);
    overflow: hidden;
}

.nx-cart-modal .modal-body {
    position: relative;
    padding: 28px 28px 20px;
    text-align: center;
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
    line-height: 1.55;
}

.nx-cart-modal .modal-body > .float-right {
    float: none !important;
    position: absolute;
    top: 12px;
    right: 12px;
    z-index: 2;
}
.nx-cart-modal .close {
    width: 30px;
    height: 30px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 50%;
    background: transparent;
    color: var(--nx-muted);
    font-size: 20px;
    line-height: 1;
    opacity: 1;
    text-shadow: none;
    transition: background-color var(--nx-transition), color var(--nx-transition);
}
.nx-cart-modal .close:hover {
    background: var(--nx-bg);
    color: var(--nx-text);
}

.nx-cart-modal .modal-title {
    font-weight: 600;
    font-size: var(--nx-font-size-xl);
    color: var(--nx-text);
    margin: 0 0 8px;
}
.nx-cart-modal .modal-title i {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    margin: 0 auto 18px;
    border-radius: 50%;
    font-size: 24px !important;
    line-height: 1 !important;
    vertical-align: middle;
    color: var(--nx-danger, #dc2626);
    background: color-mix(in srgb, var(--nx-danger, #dc2626) 12%, var(--nx-card-bg));
}
.nx-cart-modal .modal-title span { display: block; }

.nx-cart-modal .modal-footer {
    border-top: 1px solid var(--nx-border) !important;
    background: var(--nx-bg);
    padding: 16px 28px;
    gap: 10px;
}
.nx-cart-modal .modal-footer > * { margin: 0; }

.nx-cart-modal .modal-footer .btn {
    min-width: 104px;
    padding: 10px 22px;
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    font-size: var(--nx-font-size-md);
    transition: background-color var(--nx-transition), border-color var(--nx-transition), color var(--nx-transition), box-shadow var(--nx-transition);
}
.nx-cart-modal .modal-footer .btn-default.btn-default {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    color: var(--nx-text);
}
.nx-cart-modal .modal-footer .btn-default.btn-default:hover {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
}
.nx-cart-modal .modal-footer .btn-primary.btn-primary {
    background: var(--nx-primary);
    border: 1px solid var(--nx-primary);
    color: #fff;
    box-shadow: 0 6px 14px rgba(var(--nx-primary-rgb), .25);
}
.nx-cart-modal .modal-footer .btn-primary.btn-primary:hover {
    background: var(--nx-primary-hover);
    border-color: var(--nx-primary-hover);
    color: #fff;
}

#order-nexum .nx-cart-modal.modal-remove-item .modal-footer .btn-primary.btn-primary.btn-primary {
    background: var(--nx-danger, #dc2626);
    border-color: var(--nx-danger, #dc2626);
    color: #fff;
    box-shadow: 0 6px 14px color-mix(in srgb, var(--nx-danger, #dc2626) 28%, transparent);
}
#order-nexum .nx-cart-modal.modal-remove-item .modal-footer .btn-primary.btn-primary.btn-primary:hover {
    background: color-mix(in srgb, var(--nx-danger, #dc2626) 85%, #000);
    border-color: color-mix(in srgb, var(--nx-danger, #dc2626) 85%, #000);
    color: #fff;
}

#order-nexum .nx-cart-modal .modal-header,
.nx-cart-modal .modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    text-align: left;
    padding: 16px 20px;
    background: transparent !important;
    border-bottom: 1px solid var(--nx-border);
    color: var(--nx-text);
    border-radius: var(--nx-radius-card) var(--nx-radius-card) 0 0;
}
#order-nexum .nx-cart-modal .modal-header .modal-title,
.nx-cart-modal .modal-header .modal-title,
body.nx-theme .nx-cart-modal .modal-header .modal-title {
    margin: 0;
    font-size: var(--nx-font-size-lg);
    font-weight: 600;
    color: var(--nx-text) !important;
}
#order-nexum .nx-cart-modal .modal-header .close,
.nx-cart-modal .modal-header .close,
body.nx-theme .nx-cart-modal .modal-header .close {
    position: static;
    float: none;
    margin: 0 0 0 auto;
    padding: 0;
    color: var(--nx-muted) !important;
    opacity: 1;
    text-shadow: none;
}
#order-nexum .nx-cart-modal .modal-header .close:hover,
.nx-cart-modal .modal-header .close:hover {
    color: var(--nx-text) !important;
}
.nx-cart-modal .modal-body { padding-top: 20px; }

#recommendationsModal .modal-dialog { max-width: 720px; }
#recommendationsModal .modal-body {
    text-align: left;
    color: var(--nx-text);
    max-height: 70vh;
    overflow-y: auto;
}
#recommendationsModal .modal-header h4 {
    margin: 0;
    font-size: var(--nx-font-size-lg);
    font-weight: 600;
    color: var(--nx-text);
}
body.nx-theme #recommendationsModal .modal-footer { justify-content: flex-end; }

@media (max-width: 575.98px) {
    body.nx-theme .modal-body { padding: 24px 20px 16px; }
    body.nx-theme .modal-footer { padding: 14px 20px; flex-direction: column-reverse; }
    body.nx-theme .modal-footer .btn { width: 100%; }
}

/* ================= RESPONSIVE ================= */
@media (max-width: 767.98px) {
    #order-nexum .view-cart-items .item { padding: 14px 16px; }
    #order-nexum .view-cart-items .item.item-addon { margin-left: 0; border-left: 0; padding-left: 16px; }
    /* No room to indent under the icon on a phone, so the actions go flush. */
    #order-nexum .view-cart-items .item > .row > .nx-ci-actions,
    #order-nexum .view-cart-items .item.item-addon > .row > .nx-ci-actions { display: none !important; }
    #order-nexum .view-cart-items .item > .row > .nx-ci-actions,
    #order-nexum .view-cart-items .item.item-addon > .row > .nx-ci-actions { margin-left: 0; }
    #order-nexum .view-cart-items .item > .row > [class*="col-sm-7"],
    #order-nexum .view-cart-items .item > .row > [class*="col-sm-5"] {
        flex: 0 0 100%;
        padding-right: 0;
    }
    #order-nexum .item-price {
        text-align: left;
        align-items: flex-start;
        margin-top: 12px;
        padding-top: 12px;
        border-top: 1px dashed var(--nx-border);
        flex: 0 0 100% !important;
        margin-left: 0;
    }
    #order-nexum .view-cart-footer {
        flex-direction: column;
        align-items: stretch;
    }
    #order-nexum .view-cart-footer .empty-cart { text-align: center; }
    #order-nexum .nx-cart-footer-continue,
    #order-nexum .nx-cart-footer-empty { width: 100%; justify-content: center; }
    #order-nexum .domain-checker-bg { padding: 22px 16px; }
    #order-nexum .domain-checker-bg .input-group-box { flex-direction: column; gap: 8px; }
    #order-nexum .domain-checker-bg .btn-primary { width: 100%; }
    #order-nexum .domain-suggestion .actions { width: 100%; justify-content: space-between; }
    #order-nexum #paymentGatewaysContainer .radio-inline { width: 100%; min-width: 0; }
    #order-nexum #btnCompleteOrder { max-width: 100%; }
    #order-nexum .already-registered { display: flex; flex-direction: column-reverse; gap: 10px; }
    #order-nexum .already-registered .float-right { float: none; }
    #order-nexum .products .product:not(.nx-plp-card) footer { flex-direction: column; align-items: stretch; text-align: center; }
    #order-nexum .tld-pricing-header .tld-column { display: none; }
    #order-nexum .header-lined h1 { font-size: var(--nx-font-size-h2); }
}

/* ---- Addon promo container (addonsPromoOutput) ---- */
#order-nexum .addon-promo-container {
    margin: 0 0 16px;
    padding: 22px 24px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-card, 0 1px 2px rgba(16,24,40,.04));
    color: var(--nx-text);
    font-size: var(--nx-font-size-md);
    overflow: hidden;
}
#order-nexum .addon-promo-container h3 {
    margin: 0 0 8px;
    font-size: var(--nx-font-size-xl);
    font-weight: 600;
    color: var(--nx-text);
}
#order-nexum .addon-promo-container .logo {
    float: right;
    margin: 0 0 12px 20px;
    text-align: right;
    line-height: normal;
}
#order-nexum .addon-promo-container img { max-width: 120px; height: auto; }
#order-nexum .addon-promo-container .description {
    margin: 10px 0;
    color: var(--nx-muted);
    line-height: 1.5;
}
#order-nexum .addon-promo-container label {
    margin-top: 4px;
    width: auto;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .addon-promo-container a {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    text-decoration: underline;
}

#order-nexum .mc-promos { margin: 0 0 24px; max-width: 100%; }
#order-nexum .mc-promo {
    margin: 0 0 14px;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card, 0 1px 2px rgba(16,24,40,.04));
    overflow: hidden;
    color: var(--nx-text);
}
#order-nexum .mc-promo:last-child { margin-bottom: 0; }

#order-nexum .mc-promo .header {
    display: grid;
    grid-template-columns: auto 1fr auto auto;
    grid-template-areas: "icon content cta expander";
    align-items: center;
    gap: 16px;
    height: auto;
    padding: 18px 20px;
}
#order-nexum .mc-promo .icon {
    grid-area: icon;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    border-radius: var(--nx-radius-md);
    background: var(--nx-bg);
    padding: 8px;
}
/* Without a cap the logo drove the card's height. */
#order-nexum .mc-promo .icon img {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    display: block;
}
#order-nexum .mc-promo .content { grid-area: content; min-width: 0; }
#order-nexum .mc-promo .cta {
    grid-area: cta;
    display: flex;
    align-items: center;
    gap: 14px;
    flex-shrink: 0;
}
#order-nexum .mc-promo .expander {
    grid-area: expander;
    cursor: pointer;
    line-height: 1;
    flex-shrink: 0;
}

#order-nexum .mc-promo .headline { font-size: var(--nx-font-size-lg); font-weight: 400; color: var(--nx-text); }
#order-nexum .mc-promo .tagline { font-size: var(--nx-font-size-sm); font-weight: 400; color: var(--nx-muted); margin-top: 2px; }
#order-nexum .mc-promo .truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

#order-nexum .mc-promo .body {
    padding: 16px 20px;
    border-top: 1px solid var(--nx-border);
    background: var(--nx-bg);
    font-size: var(--nx-font-size-sm);
    color: var(--nx-text);
}
#order-nexum .mc-promo .body ul {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 8px 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}
#order-nexum .mc-promo .body li {
    float: none;
    width: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--nx-muted);
}
#order-nexum .mc-promo .body i,
#order-nexum .mc-promo .body .fa-check,
#order-nexum .mc-promo .expander { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .mc-promo .expander .rotate { transition: transform var(--nx-transition-fast); }
#order-nexum .mc-promo .expander .rotate.down { transform: rotate(90deg); }

#order-nexum .mc-promo .price {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    font-size: var(--nx-font-size-md);
    white-space: nowrap;
}
#order-nexum .mc-promo .btn-add {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--nx-primary);
    color: #fff;
    border: none;
    border-radius: var(--nx-radius-btn);
    padding: 9px 16px;
    font-weight: 400;
    font-size: var(--nx-font-size-sm);
    white-space: nowrap;
    overflow: visible;
    transition: background-color var(--nx-transition-fast), box-shadow var(--nx-transition-fast);
}
#order-nexum .mc-promo .btn-add:hover {
    background: var(--nx-primary-hover);
    color: #fff;
    box-shadow: 0 6px 14px rgba(var(--nx-primary-rgb), .25);
}
#order-nexum .mc-promo .btn-add .arrow {
    background: none;
    padding: 0;
    font-size: var(--nx-font-size-xs);
    display: inline-flex;
    align-items: center;
}

@media (max-width: 575.98px) {
    #order-nexum .mc-promo .header {
        grid-template-columns: auto 1fr auto;
        grid-template-areas:
            "icon content expander"
            "cta  cta     cta";
        gap: 12px;
        padding: 16px;
    }
    #order-nexum .mc-promo .cta { justify-content: space-between; width: 100%; }
}

/* ---- Stock sub-heading panels (metrics / server config / addons) ---- */
#order-nexum .sub-heading {
    border: none;
    margin: 0 0 14px;
    padding: 0;
}
#order-nexum .sub-heading span,
#order-nexum .sub-heading .primary-bg-color {
    background: transparent;
    color: var(--nx-text);
    font-size: var(--nx-font-size-lg);
    font-weight: 600;
    padding: 0;
}
#order-nexum .sub-heading .primary-bg-color small,
#order-nexum .sub-heading .primary-bg-color i { color: var(--nx-muted); font-weight: 500; }

/* ---- Stock addon panels (.panel-add / .panel-price) ---- */
#order-nexum .panel-addon .panel-add {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}
#order-nexum .panel-addon .panel-price {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}

/* ---- Field container / clearfix wrappers ---- */
#order-nexum .field-container {
    background: transparent;
    border: none;
    padding: 0;
}

/* ---- Shared cart utilities ---- */
#order-nexum .nx-w-100 { width: 100%; }
#order-nexum .nx-lh-32 { line-height: 32px; }

/* Respect the OS "reduce motion" setting, matching nexum.css. */
@media (prefers-reduced-motion: reduce) {
    #order-nexum *,
    #order-nexum *::before,
    #order-nexum *::after {
        animation-duration: 0.01ms;
        animation-iteration-count: 1;
        transition-duration: 0.01ms;
    }
}

#order-nexum .nx-filter-select-wrapper:focus-within,
#order-nexum .input-group-box:focus-within {
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), 0.15);
}
#order-nexum .nx-qty-wrapper:focus-within {
    box-shadow: 0 1px 6px rgba(15, 23, 42, .14);
}
#order-nexum .nx-qty-wrapper button:focus-visible,
#order-nexum .nx-cpd-bare-input:focus-visible,
#order-nexum .nx-filter-select-wrapper select:focus-visible {
    outline: 2px solid var(--nx-primary);
    outline-offset: 1px;
}

/* Icon baseline, matching nexum.css. No font-size: components set their own. */
#order-nexum .material-symbols-rounded {
    line-height: 1;
    vertical-align: middle;
    flex-shrink: 0;
    user-select: none;
}
#order-nexum .fas,
#order-nexum .far,
#order-nexum .fab {
    line-height: 1;
    vertical-align: middle;
}

#order-nexum .nx-cpd-hero {
    background: linear-gradient(
        135deg,
        color-mix(in srgb, var(--nx-primary) 12%, var(--nx-card-bg)) 0%,
        var(--nx-card-bg) 60%
    );
    border-color: color-mix(in srgb, var(--nx-primary) 22%, var(--nx-border));
    position: relative;
    overflow: hidden;
}
@supports not (background: color-mix(in srgb, red 10%, blue)) {
    #order-nexum .nx-cpd-hero {
        background: var(--nx-card-bg);
        border-color: var(--nx-border);
    }
}

#order-nexum .nx-cpd-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--nx-text);
    margin-bottom: 6px;
}
#order-nexum .nx-cpd-bare-input {
    border: none;
    width: 100%;
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    background: transparent;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
}
#order-nexum .nx-cpd-tld-select {
    border: none;
    border-left: 1px solid var(--nx-border);
    border-radius: 0;
    padding: 0 var(--nx-space-3) 0 0;
    margin-right: var(--nx-space-2);
}
#order-nexum .nx-cpd-sep {
    font-size: var(--nx-font-size-xl);
    font-weight: 400;
    color: var(--nx-muted);
    padding: 0 var(--nx-space-1);
}
#order-nexum .nx-cpd-prefix {
    font-size: var(--nx-font-size);
    font-weight: 400;
    color: var(--nx-muted);
    padding-left: var(--nx-space-1);
}
#order-nexum .nx-cpd-w80 { width: 80px; flex-grow: 0; }
#order-nexum .nx-cpd-grow { flex-grow: 1; }
#order-nexum .nx-cpd-pr-24 { padding-right: var(--nx-space-6); }
#order-nexum .nx-cpd-right-0 { right: 0; }
#order-nexum .nx-cpd-disabled { cursor: not-allowed; }

#order-nexum .nx-steps-clip {
    position: relative;
    margin-left: calc(var(--nx-content-padding, 32px) * -1);
    margin-right: calc(var(--nx-content-padding, 32px) * -1);
    width: auto;
    max-width: none;
    overflow-x: hidden;
}
body.nx-sidebar-mode-icons #order-nexum .nx-steps-clip {
    margin-left: calc(var(--nx-content-padding, 32px) * -0.6);
    margin-right: calc(var(--nx-content-padding, 32px) * -0.6);
}
@media (max-width: 991px) {
    #order-nexum .nx-steps-clip {
        margin-left: -16px;
        margin-right: -16px;
    }
}
#order-nexum .nx-cart-steps-container {
    position: relative;
    margin-top: 0;
    margin-bottom: var(--nx-space-6);
    width: 100%;
    max-width: 100%;
    padding: 14px max(calc((100% - var(--nx-container-width, 1200px)) / 2), 24px);
    background: var(--nx-card-bg);
    border: none;
    border-bottom: 1px solid var(--nx-border);
    border-radius: 0;
    box-shadow: none;
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    overflow: visible;
}
#order-nexum .nx-cart-steps-track {
    padding: 5px;
    gap: var(--nx-space-2);
    min-width: 0;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
}
body.nx-theme .nx-content-wrapper:has(.nx-steps-clip) { padding-top: 0; }
html:has(#order-nexum .nx-steps-clip) { overflow-x: hidden; }
/* Sits at the right end of the track, opposite the steps. */
#order-nexum .nx-steps-secure {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-left: auto;
    padding-left: var(--nx-space-4);
    flex: 0 0 auto;
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    color: var(--nx-muted);
    white-space: nowrap;
}
#order-nexum .nx-steps-secure .material-symbols-rounded {
    font-size: 16px;
    color: var(--nx-success);
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-cart-step {
    gap: 9px;
    flex-shrink: 0;
    min-width: 0;
}
#order-nexum .nx-step-label {
    white-space: nowrap;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
    letter-spacing: -0.1px;
    transition: color var(--nx-transition-fast);
}

#order-nexum .nx-step-number {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    line-height: 1;
    flex-shrink: 0;
    background: var(--nx-bg);
    border: 1.5px solid var(--nx-border);
    color: var(--nx-muted);
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast), color var(--nx-transition-fast), box-shadow var(--nx-transition-fast);
}
#order-nexum .nx-cart-step.is-current .nx-step-number {
    background: var(--nx-card-bg);
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.16);
}
#order-nexum .nx-cart-step.is-done .nx-step-number {
    background: var(--nx-primary);
    border-color: var(--nx-primary);
    color: #fff;
}
#order-nexum .nx-cart-step.is-current .nx-step-label {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}
#order-nexum .nx-cart-step.is-done .nx-step-label { color: var(--nx-text); }

#order-nexum .nx-step-divider {
    flex: 0 0 auto;
    width: 46px;
    min-width: 46px;
    height: 2px;
    margin: 0 var(--nx-space-3, 12px);
    border-radius: var(--nx-radius-badge);
    background: var(--nx-border);
    transition: background-color var(--nx-transition-fast);
}
#order-nexum .nx-step-divider.is-done { background: var(--nx-primary); }

@media (max-width: 1249.98px) {
    #order-nexum .nx-cart-steps-container {
        flex-wrap: wrap !important;
        row-gap: var(--nx-space-2, 8px);
    }
    #order-nexum .nx-cart-steps-track {
        padding: 10px;
        flex: 1 1 100%;
        width: 100%;
        justify-content: center;
        justify-content: safe center;
    }
    #order-nexum .nx-steps-secure {
        flex: 1 1 100%;
        width: 100%;
        margin-left: 0;
        padding-left: 0;
        justify-content: center;
    }
}

@media (max-width: 767.98px) {
    #order-nexum .nx-cart-steps-container {
        padding: 0 var(--nx-space-4, 16px) var(--nx-space-4);
    }
    #order-nexum .nx-cart-steps-track {
        gap: var(--nx-space-1);
    }
    #order-nexum .nx-cart-step:not(.is-current) .nx-step-label { display: none; }
    #order-nexum .nx-step-divider {
        width: 24px;
        min-width: 24px;
        margin: 0 var(--nx-space-2, 8px);
    }
}
@media (max-width: 479.98px) {
    #order-nexum .nx-step-label { display: none; }
    #order-nexum .nx-step-number { width: 24px; height: 24px; }
    #order-nexum .nx-step-divider {
        width: 16px;
        min-width: 16px;
        margin: 0 6px;
    }
}

/* Page header */
#order-nexum .nx-cfg-title {
    font-size: 26px;
    font-weight: 600;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-1);
}
#order-nexum .nx-cfg-subtitle {
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
    font-weight: 500;
    margin: 0;
}

/* Section card - the repeated white panel */
#order-nexum .nx-cfg-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    padding: var(--nx-space-6);
    box-shadow: var(--nx-shadow-sm);
    margin-bottom: var(--nx-space-6);
}
#order-nexum .nx-cfg-card-flush {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    overflow: hidden;
    box-shadow: var(--nx-shadow-sm);
    margin-bottom: var(--nx-space-6);
}

/* Section headings */
#order-nexum .nx-cfg-h2 {
    font-size: var(--nx-font-size-h3);
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-1);
}
#order-nexum .nx-cfg-h3 {
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-4);
}
#order-nexum .nx-cfg-h3-tight {
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-3);
}
#order-nexum .nx-cfg-lead {
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
    font-weight: 400;
    margin-bottom: var(--nx-space-5);
}
#order-nexum .nx-cfg-note {
    font-size: 13px;
    color: var(--nx-muted);
    font-weight: 400;
    margin-bottom: var(--nx-space-4);
}

/* Product package card */
#order-nexum .nx-product-card {
    border: 1px solid var(--nx-border);
    border-radius: calc(var(--nx-radius-card) + 2px);
    padding: var(--nx-space-6);
    background: var(--nx-bg);
    margin-bottom: var(--nx-space-6);
    box-shadow: var(--nx-shadow-sm);
    transition: border-color var(--nx-transition-slow), box-shadow var(--nx-transition-slow);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}
#order-nexum .nx-card-icon-wrapper {
    width: 48px;
    height: 48px;
    border-radius: var(--nx-radius-md);
    background: rgba(var(--nx-primary-rgb), 0.06);
    color: var(--nx-primary-text, var(--nx-primary));
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: var(--nx-space-4);
}
#order-nexum .nx-product-title {
    font-size: 20px;
    font-weight: 600;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-2);
    text-align: left;
}
#order-nexum .nx-product-description {
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
    line-height: 1.5;
    margin: 0 0 var(--nx-space-5);
    max-width: 100%;
    text-align: left;
}
#order-nexum .nx-left-specs {
    border-top: 1px solid var(--nx-border);
    padding-top: var(--nx-space-4);
    width: 100%;
}
#order-nexum .nx-cfg-spec-ico {
    font-size: 20px;
    color: var(--nx-primary-text, var(--nx-primary));
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-cfg-icon-24 {
    font-size: 24px;
    font-variation-settings: 'FILL' 1;
}

/* Form fields */
#order-nexum .nx-cfg-label {
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-2);
}
#order-nexum .nx-cfg-label-bold { font-weight: 400; }
#order-nexum .nx-cfg-select {
    border-radius: var(--nx-radius-md);
    font-weight: 400;
    font-size: var(--nx-font-size);
    height: 42px;
}
#order-nexum .nx-cfg-input {
    border-radius: var(--nx-radius-sm);
    font-weight: 400;
}
#order-nexum .nx-cfg-input-qty {
    border-radius: var(--nx-radius-sm);
    font-weight: 400;
    width: 100px;
}
/* Size and colour come from the shared input[type="checkbox"] rules. */
#order-nexum .nx-cfg-check-lg {
    width: 18px !important;
    height: 18px !important;
    margin-top: 3px;
}
#order-nexum .nx-cfg-check-label {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: 14px 20px;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-button, 12px);
    background: var(--nx-card-bg);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
    transition: background-color var(--nx-transition), border-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum .nx-cfg-check-label:hover:not(:has(input:checked)) {
    border-color: rgba(var(--nx-primary-rgb), 0.4);
    background: rgba(var(--nx-primary-rgb), 0.02);
}
#order-nexum .nx-cfg-check-label:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
}
#order-nexum .nx-cfg-check-label > span { min-width: 0; }

#order-nexum .nx-cfg-check-label .iradio_square-blue,
#order-nexum .nx-cfg-check-label .icheckbox_square-blue,
#order-nexum .nx-option-row .iradio_square-blue,
#order-nexum .nx-option-row .icheckbox_square-blue {
    position: static !important;
    display: inline-flex !important;
    align-items: center;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    flex-shrink: 0;
}
#order-nexum .nx-cfg-check-label .iCheck-helper,
#order-nexum .nx-option-row .iCheck-helper { display: none !important; }

#order-nexum .nx-cfg-check-label input.nx-cfg-check,
#order-nexum .nx-option-row input.nx-option-radio {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    background: none;
    border: none;
}

/* Metrics list */
#order-nexum .nx-cfg-metric-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: var(--nx-space-2);
}
#order-nexum .nx-cfg-metric-item {
    background: var(--nx-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    padding: var(--nx-space-3);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    display: flex;
    align-items: center;
    justify-content: space-between;
}
#order-nexum .nx-cfg-metric-value {
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
}

/* Promo / upsell banner */
#order-nexum .nx-cfg-promo-row {
    display: flex;
    min-height: 120px;
    border-bottom: 1px solid var(--nx-border);
}
#order-nexum .nx-cfg-promo-body {
    flex: 1;
    padding: var(--nx-space-6);
    text-align: left;
}
#order-nexum .nx-cfg-promo-art {
    width: 140px;
    background: rgb(var(--nx-primary-rgb));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
#order-nexum .nx-cfg-promo-art-ico {
    font-size: 48px;
    color: #fff;
}
#order-nexum .nx-cfg-promo-title {
    font-size: var(--nx-font-size-xl);
    font-weight: 600;
    color: var(--nx-primary-text, var(--nx-primary));
    margin: 0 0 6px;
}
#order-nexum .nx-cfg-promo-text {
    font-size: 13px;
    color: var(--nx-muted);
    font-weight: 400;
    margin: 0 0 var(--nx-space-1);
    line-height: 1.4;
}
#order-nexum .nx-cfg-promo-text-last {
    font-size: 13px;
    color: var(--nx-muted);
    font-weight: 400;
    margin: 0;
    line-height: 1.4;
}
#order-nexum .nx-cfg-promo-link {
    font-size: 13px;
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    text-decoration: underline;
}
#order-nexum .nx-cfg-promo-foot {
    padding: var(--nx-space-4) var(--nx-space-6);
    display: flex;
    flex-direction: column;
    gap: var(--nx-space-2);
    background: var(--nx-card-bg);
}

/* Option rows */
#order-nexum .nx-cfg-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: var(--nx-space-3) var(--nx-space-4);
    border-radius: var(--nx-radius-md);
    border: 1px solid var(--nx-border);
    cursor: pointer;
    transition: border-color var(--nx-transition), background var(--nx-transition);
    margin: 0;
}
#order-nexum .nx-cfg-option:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
}
#order-nexum .nx-cfg-option-left {
    display: flex;
    align-items: center;
    gap: var(--nx-space-3);
}
#order-nexum .nx-cfg-option-name {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-cfg-option-price {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
}

/* Submit button */
#order-nexum .nx-cfg-submit {
    width: 100%;
    background: var(--nx-primary);
    border: none;
    color: #fff;
    padding: 14px var(--nx-space-5);
    border-radius: var(--nx-radius-button);
    font-weight: 400;
    font-size: var(--nx-font-size-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--nx-space-2);
    transition: background var(--nx-transition-slow), box-shadow var(--nx-transition-slow);
    cursor: pointer;
    box-shadow: 0 4px 12px rgba(var(--nx-primary-rgb), 0.15);
}
#order-nexum .nx-cfg-submit:hover { background: var(--nx-primary-hover); }
#order-nexum .nx-cd-continue {
    width: auto;
    display: inline-flex;
    min-width: 200px;
    padding-left: var(--nx-space-7);
    padding-right: var(--nx-space-7);
}

/* Addon / upsell panel */
#order-nexum .nx-cfg-panel {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: calc(var(--nx-radius-card) + 2px);
    overflow: hidden;
    box-shadow: var(--nx-shadow-sm);
    width: 100%;
    margin-bottom: var(--nx-space-4);
}
/* Was background:#111827 + color:#fff, which ignored the theme in both modes. */
#order-nexum .nx-cfg-panel-head {
    background: linear-gradient(105deg,
        color-mix(in srgb, var(--nx-primary) 38%, #000) 0%,
        color-mix(in srgb, var(--nx-primary) 62%, #000) 48%,
        color-mix(in srgb, var(--nx-primary) 80%, #000) 100%);
    color: #fff;
    font-size: var(--nx-font-size-xl);
    font-weight: 400;
    text-transform: none;
    padding: 18px var(--nx-space-6);
    margin: 0;
    border: none;
    text-align: left;
    border-top-left-radius: calc(var(--nx-radius-card) + 2px);
    border-top-right-radius: calc(var(--nx-radius-card) + 2px);
}
#order-nexum .nx-cfg-panel-body {
    border-top: none;
    padding: var(--nx-space-6) var(--nx-space-6) 10px;
}
#order-nexum .nx-cfg-panel-badge {
    display: none;
    position: absolute;
    top: 0;
    right: var(--nx-space-6);
    height: calc(36px + (var(--nx-font-size-xl) * 1.3));
    line-height: calc(36px + (var(--nx-font-size-xl) * 1.3));
    color: #fff;
    font-size: var(--nx-font-size-lg);
    z-index: 10;
}
#order-nexum .nx-cfg-panel-badge i { vertical-align: middle; }
#order-nexum .nx-cfg-choice-card {
    border-radius: var(--nx-radius-card);
    padding: var(--nx-space-6);
    transition: border-color var(--nx-transition-slow), box-shadow var(--nx-transition-slow);
    cursor: pointer;
    border: 1px solid var(--nx-border);
    margin: 0;
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-sm);
}
#order-nexum .nx-cfg-choice-card:hover:not(:has(input:checked)) {
    border-color: rgba(var(--nx-primary-rgb), 0.4);
}
#order-nexum .nx-cfg-choice-card:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), 0.04);
    box-shadow: 0 0 0 4px rgba(var(--nx-primary-rgb), 0.08);
}
#order-nexum .nx-cfg-check-lg {
    accent-color: var(--nx-primary);
    cursor: pointer;
}
#order-nexum .nx-cfg-choice-card:has(> .nx-cfg-addon-label) { padding: 0; }
#order-nexum .nx-cfg-addon-label {
    padding: var(--nx-space-6);
    margin: 0;
    cursor: pointer;
    font-weight: inherit;
}

/* Was a hardcoded amber tint; now follows --nx-warning. */
#order-nexum .nx-cfg-warnbox {
    background: rgba(var(--nx-warning-rgb), 0.04);
    border: 1px solid rgba(var(--nx-warning-rgb), 0.15);
    border-radius: var(--nx-radius-md);
    padding: var(--nx-space-4);
    margin-top: var(--nx-space-4);
    display: flex;
    align-items: center;
    gap: 10px;
}
#order-nexum .nx-cfg-warnbox .nx-cfg-ico-warning { flex-shrink: 0; }
#order-nexum .nx-cfg-addtocart-row {
    display: flex;
    justify-content: center;
    margin-top: var(--nx-space-6);
}

#order-nexum .nx-cfg-btn-success {
    background: var(--nx-primary);
    border: none;
    color: #fff;
    padding: var(--nx-space-3) var(--nx-space-8, 32px);
    border-radius: var(--nx-radius-btn);
    font-weight: 400;
    font-size: 14.5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: var(--nx-space-2);
    min-width: 200px;
    box-shadow: 0 8px 18px rgba(var(--nx-primary-rgb), .25);
    transition: background-color var(--nx-transition-fast), box-shadow var(--nx-transition-fast), transform var(--nx-transition-fast);
}
#order-nexum .nx-cfg-btn-success:hover {
    background: var(--nx-primary-hover);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(var(--nx-primary-rgb), .32);
}
#order-nexum .nx-cfg-btn-success:active {
    transform: translateY(0);
    box-shadow: 0 4px 10px rgba(var(--nx-primary-rgb), .22);
}
#order-nexum .nx-cfg-ico-success {
    color: var(--nx-success);
    font-size: var(--nx-font-size-h3);
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-cfg-ico-warning {
    color: var(--nx-warning);
    font-size: 20px;
}
#order-nexum .nx-cfg-ico-18 { font-size: var(--nx-font-size-h3); font-variation-settings: 'wght' 700; }

/* Item rows */
#order-nexum .nx-cfg-item-title {
    font-size: 15.5px;
    font-weight: 600;
    color: var(--nx-text);
    display: block;
    margin-bottom: var(--nx-space-1);
}
#order-nexum .nx-cfg-item-price {
    font-size: 15.5px;
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
    display: block;
}
#order-nexum .nx-cfg-h4 {
    font-size: var(--nx-font-size-xl);
    font-weight: 400;
    color: var(--nx-text);
    margin-bottom: var(--nx-space-4);
    text-align: left;
}
#order-nexum .nx-cfg-eyebrow {
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    color: var(--nx-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: block;
    margin-top: 2px;
}
#order-nexum .nx-cfg-hint {
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    display: block;
    margin-top: var(--nx-space-1);
}
#order-nexum .nx-cfg-meta-center {
    font-size: 12.5px;
    color: var(--nx-muted);
    font-weight: 400;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-top: var(--nx-space-4);
}
#order-nexum .nx-cfg-link {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    text-decoration: underline;
}
#order-nexum .nx-cfg-link:hover,
#order-nexum .nx-cfg-promo-link:hover {
    color: var(--nx-primary-hover);
}

/* Layout helpers */
#order-nexum .nx-cfg-split {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--nx-space-4);
    width: 100%;
}
#order-nexum .nx-cfg-stack-16 {
    display: flex;
    flex-direction: column;
    gap: var(--nx-space-4);
    margin: 0 0 var(--nx-space-6);
}
#order-nexum .nx-cfg-stack-6 {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 10px;
}
#order-nexum .nx-cfg-row-12 {
    display: flex;
    gap: var(--nx-space-3);
    align-items: flex-start;
}
#order-nexum .nx-cfg-hidden { display: none; }
#order-nexum .nx-cfg-bold-18 { font-size: 18px; line-height: 1; font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 24; }

/* Small utilities */
#order-nexum .nx-cfg-strong-primary { font-weight: 400; color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-cfg-text-15 { font-size: var(--nx-font-size-lg); }
#order-nexum .nx-cfg-muted-sm { font-size: var(--nx-font-size-md); font-weight: 400; color: var(--nx-muted); }
#order-nexum .nx-cfg-text-sm { font-size: var(--nx-font-size-md); color: var(--nx-text); font-weight: 400; }
#order-nexum .nx-cfg-pad-body { padding: 0 var(--nx-space-6) var(--nx-space-6); }
#order-nexum .nx-cfg-relative { position: relative; }
#order-nexum .nx-cfg-right { text-align: right; flex-shrink: 0; }
#order-nexum .nx-cfg-left { text-align: left; }
#order-nexum .nx-cfg-m-0 { margin: 0; }
#order-nexum .nx-cfg-mt-6 { margin-top: 6px; }
#order-nexum .nx-cfg-gap-8 { gap: var(--nx-space-2); }

#order-nexum .product-recommendations-container { margin-bottom: 8px; }
#order-nexum .product-recommendations {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 16px;
}
#order-nexum .product-recommendations > p {
    grid-column: 1 / -1;
    margin: 0 0 4px;
    color: var(--nx-muted);
    font-size: var(--nx-font-size-md);
}

#order-nexum .product-recommendation {
    display: flex;
    flex-direction: column;
    border: 1px solid var(--nx-border);
    border-left: 3px solid var(--nx-rec-accent, var(--nx-primary));
    border-radius: var(--nx-radius-card);
    background: var(--nx-card-bg);
    box-shadow: var(--nx-shadow-card);
    overflow: hidden;
    margin: 0;
}
#order-nexum .product-recommendation .header {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-areas:
        "content expander"
        "cta     cta";
    gap: 4px 10px;
    padding: 16px 18px;
    align-items: start;
}
#order-nexum .product-recommendation .content { grid-area: content; min-width: 0; }
#order-nexum .product-recommendation .expander { grid-area: expander; }
#order-nexum .product-recommendation .cta {
    grid-area: cta;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 12px;
}
#order-nexum .product-recommendation .headline {
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .product-recommendation .tagline {
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    margin-top: 2px;
}
#order-nexum .product-recommendation .truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#order-nexum .product-recommendation .price {
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    display: flex;
    flex-direction: column;
    line-height: 1.25;
    color: var(--nx-rec-accent, var(--nx-primary));
}
#order-nexum .product-recommendation .price .setup-fee {
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .product-recommendation .btn-add {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border: none;
    border-radius: var(--nx-radius-btn);
    padding: 9px 16px;
    font-weight: 400;
    font-size: var(--nx-font-size-sm);
    background: var(--nx-rec-accent, var(--nx-primary));
    color: #fff;
    white-space: nowrap;
    text-decoration: none;
    flex-shrink: 0;
}
#order-nexum .product-recommendation .btn-add:hover { filter: brightness(1.08); }
#order-nexum .product-recommendation .btn-add .text { color: inherit; }
#order-nexum .product-recommendation .btn-add .arrow {
    display: inline-flex;
    align-items: center;
    background: none;
    color: inherit;
    font-size: var(--nx-font-size-xs);
}
#order-nexum .product-recommendation .expander {
    cursor: pointer;
    font-size: var(--nx-font-size-md);
    line-height: 1;
    padding-top: 4px;
    color: var(--nx-rec-accent, var(--nx-primary));
}
#order-nexum .product-recommendation .expander .rotate { transition: transform var(--nx-transition-fast); }
#order-nexum .product-recommendation.open .expander .rotate { transform: rotate(90deg); }

#order-nexum .product-recommendation .body {
    border-top: 1px solid var(--nx-border);
    background: var(--nx-bg);
    padding: 14px 18px;
}
#order-nexum .product-recommendation .body p {
    margin: 0;
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    line-height: 1.55;
}
/* Product artwork sat at its natural size and pushed the card open. */
#order-nexum .product-recommendation img {
    max-width: 100%;
    max-height: 120px;
    width: auto;
    height: auto;
    display: block;
    margin: 0 auto;
}

@media (max-width: 575.98px) {
    #order-nexum .product-recommendations { grid-template-columns: 1fr; }
    #order-nexum .product-recommendation .cta { flex-direction: column; align-items: stretch; }
    #order-nexum .product-recommendation .btn-add { justify-content: center; }
}

#order-nexum .nx-checkout-section {
    margin-top: var(--nx-space-5);
    padding-top: 0;
    border-top: none;
}
#order-nexum .nx-checkout-head {
    margin-bottom: var(--nx-space-3);
}
#order-nexum .nx-checkout-title {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -0.25px;
    color: var(--nx-text);
}
/* Buttons carry no drop shadow here either - same rule as the client area. */
#order-nexum .btn,
#order-nexum .btn-checkout,
#order-nexum .btn-primary {
    box-shadow: var(--nx-btn-shadow, none);
}

/* ---------- the block itself ---------- */
#order-nexum .card-sidebar,
#order-nexum .panel-sidebar {
    background: transparent;
    border: 0;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
    margin-bottom: 28px;
}

/* ---------- heading: plain text, no rule under it ---------- */
#order-nexum .card-sidebar .card-header,
#order-nexum .card-sidebar .panel-heading {
    background: transparent;
    border: 0;
    border-bottom: 0;
    padding: 0 0 10px;
}

#order-nexum .card-sidebar .card-minimise,
#order-nexum .card-sidebar .panel-minimise {
    display: none;
}
#order-nexum .card-sidebar .card-header,
#order-nexum .card-sidebar .panel-heading {
    cursor: default;
}

/* ---------- list: no card, no padding of its own ---------- */
#order-nexum .card-sidebar .list-group,
#order-nexum .card-sidebar .collapsable-card-body,
#order-nexum .card-sidebar .card-body,
#order-nexum .card-sidebar .panel-body {
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

#order-nexum .list-group {
    background: transparent;
    border: 0;
    box-shadow: none;
    padding: 0;
    gap: 2px;
}

/* ---------- heading ---------- */
#order-nexum .card-sidebar .panel-title,
#order-nexum .card-sidebar .card-title {
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0;
    color: var(--nx-text);
    display: flex;
    align-items: center;
}
#order-nexum .card-sidebar .card-header,
#order-nexum .card-sidebar .panel-heading {
    padding: 0 0 14px;
}
#order-nexum .card-sidebar .panel-title > i,
#order-nexum .card-sidebar .card-title > i {
    display: none;
}

/* ---------- rows ---------- */
#order-nexum .card-sidebar .list-group-item,
#order-nexum .list-group-item {
    padding: 6px 0;
    margin: 1px;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--nx-primary-text, var(--nx-primary));
    background: transparent;
    gap: 8px;
    border-radius: 4px;
    transition: padding .24s ease, background-color .24s ease;
}

#order-nexum .list-group-item .nx-side-ico,
#order-nexum .list-group-item .material-symbols-rounded,
#order-nexum .list-group-item i {
    font-size: 14px;
    line-height: 1;
    flex-shrink: 0;
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .list-group-item.child,
#order-nexum .list-group-item.sub-item {
    padding-left: 34px;
}

/* ---------- currency box ---------- */
#order-nexum .card-sidebar .nx-custom-select-trigger,
#order-nexum .card-sidebar select {
    height: 38px;
    font-size: 14px;
    font-weight: 400;
}

#order-nexum .nx-cpd-choices {
    padding: 8px;
    margin-bottom: 16px;
}

#order-nexum .nx-cpd-options {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

#order-nexum .nx-cpd-option {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0;
    padding: 14px 16px;
    border: 1px solid transparent;
    border-radius: var(--nx-radius-md);
    cursor: pointer;
    transition: background-color var(--nx-transition-fast), border-color var(--nx-transition-fast);
}
#order-nexum .nx-cpd-option:hover {
    background: rgba(var(--nx-primary-rgb), .04);
}

#order-nexum .nx-cpd-option:has(input:checked) {
    background: rgba(var(--nx-primary-rgb), .06);
    border-color: color-mix(in srgb, var(--nx-primary) 40%, var(--nx-border));
}

#order-nexum .nx-cpd-option input[type="radio"] {
    flex-shrink: 0;
    margin: 0;
}

#order-nexum .nx-cpd-option-ico {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
    border-radius: var(--nx-radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(var(--nx-primary-rgb), .08);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cpd-option-ico .material-symbols-rounded { font-size: 20px; }

#order-nexum .nx-cpd-option-text {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
#order-nexum .nx-cpd-option-title {
    font-size: 14.5px;
    font-weight: 600;
    color: var(--nx-text);
    line-height: 1.35;
}
#order-nexum .nx-cpd-option-desc {
    font-size: 12.5px;
    color: var(--nx-muted);
    margin-top: 2px;
}

#order-nexum .nx-cpd-band {
    background: linear-gradient(105deg,
        color-mix(in srgb, var(--nx-primary) 38%, #000) 0%,
        color-mix(in srgb, var(--nx-primary) 62%, #000) 48%,
        color-mix(in srgb, var(--nx-primary) 80%, #000) 100%);
    border: 0;
    border-radius: var(--nx-radius-card);
    padding: 30px 32px;
    margin-top: 20px;
}
#order-nexum .nx-cpd-band > * {
    max-width: 840px;
    margin-inline: auto;
}

#order-nexum .nx-cpd-band .nx-cpd-field,
#order-nexum .nx-cpd-band .nx-cpd-field.is-ai {
    background: var(--nx-card-bg);
    border-color: transparent;
}
#order-nexum .nx-cpd-band .nx-cpd-field:focus-within,
#order-nexum .nx-cpd-band .nx-cpd-field.is-ai:focus-within {
    border-color: transparent;
    box-shadow: 0 0 0 3px rgba(255, 255, 255, .28);
}
#order-nexum .nx-cpd-band .nx-cpd-modes-label { color: #fff; }
#order-nexum .nx-cpd-band .default-captcha,
#order-nexum .nx-dt-hero .default-captcha {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
    max-width: 420px;
    margin: 18px auto 0;
    padding: 16px 18px;
    border-radius: 14px;
    box-shadow: none;
    text-align: center;
}
#order-nexum .nx-cpd-band .default-captcha {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .18);
}
#order-nexum .nx-cpd-band .default-captcha p {
    flex: 1 1 100%;
    margin: 0;
    font-size: 12.5px;
    line-height: 1.5;
    color: rgba(255, 255, 255, .82);
}
#order-nexum .nx-dt-hero .default-captcha {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
}
#order-nexum .nx-dt-hero .default-captcha p {
    flex: 1 1 100%;
    margin: 0;
    font-size: 12.5px;
    line-height: 1.5;
    color: var(--nx-muted);
}
#order-nexum .nx-cpd-band .default-captcha > div,
#order-nexum .nx-dt-hero .default-captcha > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
}
#order-nexum .nx-cpd-band .default-captcha #inputCaptchaImage,
#order-nexum .nx-dt-hero .default-captcha #inputCaptchaImage {
    height: 42px;
    width: auto;
    max-width: 100%;
    min-width: 0;
    border-radius: 9px;
    display: block;
}
#order-nexum .nx-cpd-band .default-captcha #inputCaptcha,
#order-nexum .nx-dt-hero .default-captcha #inputCaptcha {
    width: 130px;
    max-width: 130px;
    min-width: 0;
    height: 42px;
    border-radius: 9px;
    color: var(--nx-text);
    padding: 0 14px;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 2px;
    text-align: center;
    text-transform: uppercase;
    box-shadow: none;
}
#order-nexum .nx-cpd-band .default-captcha #inputCaptcha {
    border: 1px solid rgba(255, 255, 255, .3);
    background: #fff;
}
#order-nexum .nx-cpd-band .default-captcha #inputCaptcha:focus {
    outline: none;
    border-color: #fff;
    box-shadow: none;
}
#order-nexum .nx-dt-hero .default-captcha #inputCaptcha {
    border: 1px solid var(--nx-border);
    background: var(--nx-bg);
}
#order-nexum .nx-dt-hero .default-captcha #inputCaptcha:focus {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-cpd-band .default-captcha #inputCaptcha::placeholder,
#order-nexum .nx-dt-hero .default-captcha #inputCaptcha::placeholder {
    letter-spacing: 0;
    font-weight: 400;
}
#order-nexum .nx-cpd-band .recaptcha-container,
#order-nexum .nx-dt-hero .recaptcha-container {
    display: flex;
    justify-content: center;
    margin-top: 18px;
}
#order-nexum .nx-cpd-band .nx-cpd-modes-inner {
    background: rgba(255, 255, 255, .13);
    border-color: transparent;
}
#order-nexum .nx-cpd-band .nx-cpd-mode,
#order-nexum .nx-cpd-band .nx-cpd-mode .material-symbols-rounded { color: #fff; }
#order-nexum .nx-cpd-band .nx-cpd-mode:not(.is-active):hover {
    background: rgba(255, 255, 255, .10);
}
#order-nexum .nx-cpd-band .nx-cpd-mode.is-active {
    background: var(--nx-card-bg);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cpd-band .nx-cpd-mode.is-active .material-symbols-rounded {
    color: var(--nx-primary-text, var(--nx-primary));
    -webkit-text-fill-color: var(--nx-primary);
}
#order-nexum .nx-cpd-band .nx-cpd-tld {
    background: var(--nx-card-bg);
    border-color: transparent;
}
#order-nexum .nx-cpd-band .nx-cpd-aside {
    border-left: 0;
    padding-left: 0;
}
#order-nexum .nx-cpd-band .nx-dfilters-toggle,
#order-nexum .nx-cpd-band .nx-dfilters-toggle:hover,
#order-nexum .nx-cpd-band .nx-dfilters-toggle:focus,
#order-nexum .nx-cpd-band .nx-dfilters-toggle:focus-visible,
#order-nexum .nx-cpd-band .nx-dfilters-toggle:active,
#order-nexum .nx-cpd-band .nx-cpd-filters.is-open .nx-dfilters-toggle {
    background: var(--nx-bg) !important;
    border-color: var(--nx-border) !important;
    color: var(--nx-text) !important;
    box-shadow: none !important;
}
#order-nexum .nx-cpd-band .nx-cpd-btn,
#order-nexum .nx-cpd-band .nx-cpd-btn span,
#order-nexum .nx-cpd-band .nx-cpd-btn:hover,
#order-nexum .nx-cpd-band .nx-cpd-btn:hover span,
#order-nexum .nx-cpd-band .nx-cpd-btn:focus,
#order-nexum .nx-cpd-band .nx-cpd-btn:focus span,
#order-nexum .nx-cpd-band .nx-cpd-btn:active,
#order-nexum .nx-cpd-band .nx-cpd-btn:active span {
    color: #fff;
}
#order-nexum .nx-cpd-band .nx-cpd-btn {
    background: var(--nx-primary);
    border: 0;
    box-shadow: none;
    outline: none;
    transition: background var(--nx-transition);
}
#order-nexum .nx-cpd-band .nx-cpd-btn:hover,
#order-nexum .nx-cpd-band .nx-cpd-btn:focus,
#order-nexum .nx-cpd-band .nx-cpd-btn:focus-visible,
#order-nexum .nx-cpd-band .nx-cpd-btn:active {
    background: color-mix(in srgb, var(--nx-primary) 78%, #000);
    border: 0;
    box-shadow: none;
    outline: none;
}

#order-nexum .nx-cpd-row {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

#order-nexum .nx-cpd-field {
    flex: 1 1 320px;
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    height: 52px;
    padding: 0 10px 0 18px;
    border: 1px solid var(--nx-border);
    border-radius: 8px;
    background: var(--nx-bg);
}
#order-nexum .nx-cpd-field:not(:has(.nx-cpd-aside)),
#order-nexum .nx-cpd-field:has(.nx-cpd-filters[hidden]) { padding-right: 18px; }
#order-nexum .nx-cpd-field:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .nx-cpd-field input:focus,
#order-nexum .nx-cpd-field input:focus-visible,
#order-nexum .nx-dt-field input:focus,
#order-nexum .nx-dt-field input:focus-visible,
#order-nexum .nx-cpd-tbl-search input:focus,
#order-nexum .nx-cpd-tbl-search input:focus-visible {
    outline: none;
}
#order-nexum .nx-dt-field:focus-within {
    box-shadow: 0 2px 10px rgba(16, 24, 40, .07), 0 0 0 3px rgba(var(--nx-primary-rgb), .18);
}

#order-nexum .nx-cpd-aside {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}
#order-nexum .nx-cpd-field input,
#order-nexum .nx-cpd-field select {
    flex: 1 1 auto;
    min-width: 0;
    height: auto;
    padding: 0;
    border: 0;
    background: transparent;
    outline: none;
    box-shadow: none;
    font-family: var(--nx-font-family);
    font-size: 16px;
    color: var(--nx-text);
}
#order-nexum .nx-cpd-field-ico { font-size: 21px; color: var(--nx-primary-text, var(--nx-primary)); flex-shrink: 0; }
#order-nexum .nx-cpd-field-tld { flex: 0 1 150px; }
#order-nexum .nx-cpd-prefix { font-size: 15px; color: var(--nx-muted); flex-shrink: 0; }
#order-nexum .nx-cpd-dot { font-size: 20px; color: var(--nx-muted); flex-shrink: 0; }

#order-nexum .nx-cpd-tld {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    height: 52px;
    padding: 0 6px;
    border: 1px solid var(--nx-border);
    border-radius: 8px;
    background: var(--nx-bg);
}
#order-nexum .nx-cpd-tld select {
    border: 0;
    background: transparent;
    box-shadow: none;
    height: 40px;
    padding: 0 10px;
    font-family: var(--nx-font-family);
    font-size: 15px;
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
}

#order-nexum .nx-cpd-bare-select {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
}
#order-nexum .nx-cpd-bare-select .nx-custom-select-wrapper { width: 100%; }
#order-nexum .nx-cpd-tld .nx-custom-select-wrapper { width: auto; }
#order-nexum .nx-cpd-tld .nx-custom-select-trigger,
#order-nexum .nx-cpd-bare-select .nx-custom-select-trigger {
    height: 40px;
    min-width: 74px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    font-size: 15px;
    font-weight: 400;
    color: var(--nx-text);
    gap: 10px;
    outline: none;
    box-shadow: none;
}
#order-nexum .nx-cpd-tld .nx-custom-select-trigger:hover,
#order-nexum .nx-cpd-bare-select .nx-custom-select-trigger:hover {
    background: color-mix(in srgb, var(--nx-text) 6%, transparent);
    border-color: transparent;
    box-shadow: none;
}
#order-nexum .nx-cpd-tld .nx-custom-select-trigger:focus-visible,
#order-nexum .nx-cpd-bare-select .nx-custom-select-trigger:focus-visible {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .18);
}
#order-nexum .nx-cpd-tld .nx-custom-select-wrapper.open .nx-custom-select-trigger,
#order-nexum .nx-cpd-bare-select .nx-custom-select-wrapper.open .nx-custom-select-trigger {
    background: color-mix(in srgb, var(--nx-primary) 10%, transparent);
    border-color: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
    box-shadow: none;
}
#order-nexum .nx-cpd-tld .nx-custom-select-trigger i,
#order-nexum .nx-cpd-bare-select .nx-custom-select-trigger i {
    font-size: 11px;
    color: var(--nx-muted);
}

#order-nexum .nx-cpd-btn {
    height: 52px;
    padding: 0 26px;
    border: 0;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 400;
    flex-shrink: 0;
}

@media (max-width: 700px) {
    #order-nexum .nx-cpd-band { padding: 20px; }
    #order-nexum .nx-cpd-row { gap: 10px; }
    #order-nexum .nx-cpd-field,
    #order-nexum .nx-cpd-tld { flex: 1 1 100%; }
    #order-nexum .nx-cpd-btn { width: 100%; }
    #order-nexum .nx-cpd-option { padding: 12px; gap: 10px; }
    #order-nexum .nx-cpd-option-ico { flex-basis: 34px; width: 34px; height: 34px; }
}
@media (max-width: 899.98px) {
    #order-nexum .nx-cpd-tld { flex: 1 1 100%; width: 100%; }
    #order-nexum .nx-cpd-tld .nx-custom-select-wrapper,
    #order-nexum .nx-cpd-tld .nx-custom-select-trigger { width: 100%; }
    #order-nexum .nx-cpd-tld .nx-custom-select-options {
        left: 0 !important;
        right: 0 !important;
        width: auto !important;
        min-width: 0;
    }
}

@media (max-width: 767.98px) {
    #order-nexum #frmDomainChecker { display: flex; flex-direction: column; }
    #order-nexum #frmDomainChecker .nx-cpd-modes { order: 2; margin-top: 16px; margin-bottom: 0; }
    #order-nexum #frmDomainChecker .nx-cpd-row { order: 1; }
    #order-nexum #frmDomainChecker .nx-cpd-captcha-row { order: 3; }
}

@media (max-width: 767.98px) {
    #order-nexum .nx-cpd-modes-inner {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 3px !important;
    }
    #order-nexum .nx-cpd-mode {
        padding: 8px 11px !important;
        font-size: 11.5px !important;
        gap: 5px !important;
    }
    #order-nexum .nx-cpd-mode .material-symbols-rounded { font-size: 15px !important; }
}

@media (max-width: 899.98px) {
    #order-nexum .nx-cpd-field { flex: 1 1 100% !important; }
    #order-nexum .nx-cpd-field {
        flex-wrap: wrap !important;
        height: auto !important;
        min-height: 52px;
        row-gap: 10px;
        padding-top: 6px;
        padding-bottom: 6px;
    }
    #order-nexum .nx-cpd-row { flex-wrap: wrap !important; gap: 10px; }
    #order-nexum .nx-cpd-row .nx-cpd-aside {
        flex: 1 1 100% !important;
        width: 100% !important;
        margin: 0 !important;
    }
    #order-nexum .nx-cpd-row .nx-cpd-aside .nx-cpd-filters {
        min-height: 52px;
        width: 100% !important;
        flex-direction: column !important;
        align-items: stretch !important;
        position: relative;
    }
    #order-nexum .nx-cpd-row .nx-cpd-aside .nx-dfilters-menu {
        position: static !important;
        left: auto !important;
        right: auto !important;
        width: auto !important;
        min-width: 0 !important;
        max-width: none;
        margin-top: 8px;
    }
    #order-nexum .nx-cpd-row .nx-cpd-aside .nx-dfilters-panel {
        position: static !important;
        left: auto !important;
        right: auto !important;
        width: auto !important;
        top: auto !important;
        margin-top: 8px;
    }
    #order-nexum .nx-cpd-row .nx-cpd-aside .nx-dfilters-toggle {
        width: 100% !important;
        height: 52px;
        justify-content: flex-start;
        background: var(--nx-bg);
        border: 1px solid var(--nx-border);
        border-radius: 8px;
    }
    #order-nexum .nx-cpd-btn {
        flex: 1 1 100% !important;
        width: 100% !important;
        margin-left: 0;
        margin-top: 10px;
        border-radius: 8px;
    }
}

#order-nexum .nx-cpd-option .icheckbox_square-blue,
#order-nexum .nx-cpd-option .iradio_square-blue,
#order-nexum .nx-cpd-option div[class^="icheckbox"],
#order-nexum .nx-cpd-option div[class^="iradio"] {
    background: none !important;
    width: auto !important;
    height: auto !important;
    display: inline-flex !important;
    pointer-events: none;
}
#order-nexum .nx-cpd-option input[type="radio"] {
    position: static !important;
    opacity: 1 !important;
    display: inline-grid !important;
    place-content: center;
    pointer-events: none;
}
#order-nexum .nx-cpd-modes {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-bottom: 16px;
}
#order-nexum .nx-cpd-modes-center { justify-content: center; margin-bottom: 20px; }
#order-nexum .nx-cpd-modes-label {
    font-size: 21px;
    font-weight: 400;
    line-height: 1.2;
    color: var(--nx-text);
}
#order-nexum .nx-cpd-modes-inner {
    display: flex;
    gap: 4px;
    padding: 4px;
    border-radius: var(--nx-radius-badge);
    background: var(--nx-bg);
    border: 1px solid var(--nx-border);
}
#order-nexum .nx-cpd-mode {
    display: flex;
    align-items: center;
    gap: 7px;
    padding: 8px 16px;
    border: 0;
    border-radius: var(--nx-radius-badge);
    background: transparent;
    font-family: var(--nx-font-family);
    font-size: 13px;
    font-weight: 400;
    white-space: nowrap;
    color: var(--nx-muted);
    cursor: pointer;
    transition: background-color var(--nx-transition), color var(--nx-transition);
}
#order-nexum .nx-cpd-mode .material-symbols-rounded { font-size: 17px; }
#order-nexum .nx-cpd-mode.is-active {
    background: var(--nx-card-bg);
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .nx-cpd-mode-ai .material-symbols-rounded {
    color: var(--nx-muted);
    transition: color var(--nx-transition);
}
#order-nexum .nx-cpd-mode.is-active .material-symbols-rounded {
    color: var(--nx-primary-text, var(--nx-primary));
    -webkit-text-fill-color: var(--nx-primary);
}

#order-nexum .nx-cpd-field-ico {
    transition: color var(--nx-transition);
}
#order-nexum .nx-cpd-field.is-ai .nx-cpd-field-ico {
    color: var(--nx-primary-text, var(--nx-primary));
    -webkit-text-fill-color: var(--nx-primary);
}
#order-nexum .nx-cpd-field.is-ai {
    border-color: rgba(var(--nx-primary-rgb), .35);
    background:
        linear-gradient(135deg, rgba(var(--nx-primary-rgb), .06) 0%, rgba(124, 92, 255, .06) 100%),
        var(--nx-bg);
}
#order-nexum .nx-cpd-field.is-ai:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .14);
}

.nx-custom-select-search {
    position: sticky;
    top: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    margin: -6px -6px 6px;
    background: var(--nx-card-bg);
    border-bottom: 1px solid var(--nx-border);
}
.nx-custom-select-search .material-symbols-rounded {
    font-size: 18px;
    color: var(--nx-muted);
    flex-shrink: 0;
}
.nx-custom-select-search input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    outline: none;
    box-shadow: none;
    -webkit-appearance: none;
    appearance: none;
    -webkit-tap-highlight-color: transparent;
    font-family: var(--nx-font-family);
    font-size: 13.5px;
    color: var(--nx-text);
}
#order-nexum .nx-custom-select-search,
#order-nexum .nx-custom-select-search input {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}
#order-nexum .nx-custom-select-search:focus-within {
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
}
#order-nexum .nx-custom-select-search input:focus,
#order-nexum .nx-custom-select-search input:focus-visible,
#order-nexum .nx-custom-select-search input:active {
    outline: 0 !important;
    box-shadow: none !important;
    border: 0 !important;
}
.nx-custom-select-noresult {
    padding: 12px;
    text-align: center;
    font-size: 13px;
    color: var(--nx-muted);
}

#order-nexum .nx-cpd-tld .nx-custom-select-options {
    left: auto;
    right: 0;
}
#order-nexum .nx-cpd-tld .nx-custom-select-options,
#order-nexum .nx-cpd-bare-select .nx-custom-select-options {
    z-index: 60;
    min-width: 240px;
    max-height: 320px;
    margin-top: 10px;
    padding: 6px;
    border-radius: 14px;
    box-shadow: 0 18px 40px rgba(15, 23, 42, .18);
}
#order-nexum .nx-cpd-tld .nx-custom-select-option,
#order-nexum .nx-cpd-bare-select .nx-custom-select-option {
    border-radius: 9px;
    font-weight: 400;
}
#order-nexum .nx-cpd-row { position: relative; z-index: 5; }

.nx-custom-select-group {
    padding: 10px 12px 6px;
    font-size: 11.5px;
    font-weight: 400;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--nx-muted);
    list-style: none;
    cursor: default;
}
.nx-custom-select-group + .nx-custom-select-option { margin-top: 0; }

#order-nexum .nx-cpd-filters[hidden] { display: none; }
#order-nexum .nx-cpd-filters .nx-dfilters-toggle {
    height: 40px;
    padding: 0 10px;
    border: 1px solid transparent;
    border-radius: 9px;
    background: transparent;
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    outline: none;
    box-shadow: none;
}
#order-nexum .nx-cpd-filters .nx-dfilters-toggle .material-symbols-rounded {
    font-size: 20px;
    color: var(--nx-muted);
}
@media (hover: hover) {
    #order-nexum .nx-cpd-filters .nx-dfilters-toggle:hover {
        background: color-mix(in srgb, var(--nx-text) 6%, transparent);
        border-color: transparent;
        color: var(--nx-text);
    }
}
#order-nexum .nx-cpd-filters .nx-dfilters-toggle:focus-visible {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .18);
}
#order-nexum .nx-cpd-filters.is-open .nx-dfilters-toggle {
    background: color-mix(in srgb, var(--nx-primary) 10%, transparent);
    border-color: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cpd-filters.has-filters .nx-dfilters-toggle::after { display: none; }
#order-nexum .nx-dfilters-tld.is-locked {
    cursor: not-allowed;
    opacity: .7;
}
#order-nexum .nx-dfilters-tld.is-locked:hover { background: transparent; }

#order-nexum .nx-cpd-filters .nx-dfilters-menu {
    left: auto;
    right: 0;
    top: calc(100% + 14px);
    z-index: 60;
    text-align: left;
}
#order-nexum .nx-cpd-filters .nx-dfilters-panel {
    left: calc(100% + 8px);
    right: auto;
    top: calc(100% + 14px);
    z-index: 61;
    text-align: left;
}
#order-nexum .nx-cpd-filters .nx-dfilters-list {
    max-height: 240px;
    overflow-y: auto;
}
@media (max-width: 1100px) {
    #order-nexum .nx-cpd-filters .nx-dfilters-panel {
        left: auto;
        right: calc(100% + 8px);
    }
}

#order-nexum .nx-dfilters-check input[type="checkbox"],
#order-nexum .nx-dfilters-check input[type="checkbox"].nx-dfilters-check,
body.nx-theme #order-nexum .nx-dfilters-check input[type="checkbox"] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    accent-color: initial !important;
    position: static !important;
    display: inline-block !important;
    flex: 0 0 17px !important;
    flex-shrink: 0 !important;
    flex-grow: 0 !important;
    width: 17px !important;
    min-width: 17px !important;
    max-width: 17px !important;
    height: 17px !important;
    min-height: 17px !important;
    max-height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1.5px solid var(--nx-border) !important;
    border-radius: 4px !important;
    background-color: var(--nx-card-bg) !important;
    outline: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
}
#order-nexum .nx-dfilters-check input[type="checkbox"]:checked,
body.nx-theme #order-nexum .nx-dfilters-check input[type="checkbox"]:checked {
    background-color: var(--nx-primary) !important;
    border-color: var(--nx-primary) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: 11px !important;
}

/* ========================= sidebar: card panels ========================= */
#order-nexum .card-sidebar,
#order-nexum .panel-sidebar {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-sm);
    padding: 14px;
    margin-bottom: 16px;
    overflow: visible;
}

#order-nexum .card-sidebar .card-header,
#order-nexum .card-sidebar .panel-heading {
    background: transparent;
    border: 0;
    padding: 4px 8px 12px;
    cursor: default;
}
#order-nexum .card-sidebar .panel-title,
#order-nexum .card-sidebar .card-title {
    display: flex;
    align-items: center;
    gap: 9px;
    margin: 0;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: -.1px;
    color: var(--nx-text);
}
#order-nexum .card-sidebar .panel-title > i,
#order-nexum .card-sidebar .card-title > i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    font-size: 15px;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .card-sidebar .panel-title > span.material-symbols-rounded,
#order-nexum .card-sidebar .card-title > span.material-symbols-rounded {
    font-size: 19px;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .card-sidebar .card-minimise,
#order-nexum .card-sidebar .panel-minimise {
    display: none;
}

#order-nexum .card-sidebar .list-group,
#order-nexum .card-sidebar .collapsable-card-body,
#order-nexum .card-sidebar .card-body,
#order-nexum .card-sidebar .panel-body {
    display: flex;
    flex-direction: column;
    gap: 2px;
    background: transparent;
    border: 0;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

#order-nexum .card-sidebar .list-group-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    margin: 0;
    border: 0;
    border-radius: var(--nx-radius-md);
    background: transparent;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var(--nx-text);
    transition: background-color var(--nx-transition), color var(--nx-transition);
}
#order-nexum .card-sidebar .list-group-item .nx-side-ico,
#order-nexum .card-sidebar .list-group-item .material-symbols-rounded,
#order-nexum .card-sidebar .list-group-item i {
    flex-shrink: 0;
    font-size: 18px;
    line-height: 1;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .card-sidebar .list-group-item:hover {
    background: color-mix(in srgb, var(--nx-primary) 7%, transparent);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .card-sidebar .list-group-item.active,
#order-nexum .card-sidebar .list-group-item.active:hover {
    background: color-mix(in srgb, var(--nx-primary) 10%, transparent);
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}
#order-nexum .card-sidebar .list-group-item.child,
#order-nexum .card-sidebar .list-group-item.sub-item {
    padding-left: 40px;
}

#order-nexum .card-sidebar .nx-custom-select-trigger,
#order-nexum .card-sidebar select {
    width: 100%;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    font-size: 14px;
    font-weight: 400;
    color: var(--nx-text);
}

#order-nexum .btn,
#order-nexum .btn:hover,
#order-nexum .btn:active,
#order-nexum .btn:focus,
#order-nexum .nx-btn,
#order-nexum .nx-btn:hover,
#order-nexum .nx-btn:active,
#order-nexum .nx-btn:focus,
#order-nexum button,
#order-nexum button:hover,
#order-nexum button:active,
#order-nexum button:focus,
#order-nexum input[type="submit"],
#order-nexum input[type="submit"]:hover,
#order-nexum input[type="submit"]:focus {
    box-shadow: none;
}
#order-nexum .btn:focus-visible,
#order-nexum .nx-btn:focus-visible,
#order-nexum button:focus-visible,
#order-nexum input[type="submit"]:focus-visible {
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--nx-primary) 25%, transparent);
}

#order-nexum .nx-ci-col {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-width: 0;
}
#order-nexum .nx-ci-ico {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-ci-ico .material-symbols-rounded {
    font-size: 19px;
    font-variation-settings: 'FILL' 1;
}
#order-nexum .nx-ci-body {
    display: block;
    min-width: 0;
    flex: 1 1 auto;
}

#order-nexum .nx-ci-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 14px;
}
#order-nexum .nx-ci-act {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    width: auto;
    height: auto;
    padding: 0;
    border: 0;
    border-radius: var(--nx-radius-sm);
    background: transparent;
    color: var(--nx-muted);
    font-size: 12px;
    font-weight: 400;
    text-decoration: none;
    cursor: pointer;
    transition: color var(--nx-transition);
}
#order-nexum .nx-ci-act .material-symbols-rounded {
    font-size: 16px;
}
#order-nexum .nx-ci-act-edit:hover,
#order-nexum .nx-ci-act-edit:focus {
    background: transparent;
    color: var(--nx-primary-text, var(--nx-primary));
    text-decoration: none;
}
#order-nexum .nx-ci-act-del:hover,
#order-nexum .nx-ci-act-del:focus {
    background: transparent;
    color: var(--nx-danger);
}

#order-nexum .view-cart-items .item .nx-ci-actions {
    flex: 0 0 100%;
    max-width: 100%;
    flex-wrap: nowrap;
    padding-left: 0;
    padding-right: 0;
    gap: 14px;
}
@media (min-width: 576px) {
    #order-nexum .view-cart-items .item .nx-ci-actions {
        display: flex !important;
    }
}
#order-nexum .view-cart-items .item .item-price {
    flex: 0 0 auto;
    max-width: none;
}
#order-nexum .nx-ci-act {
    width: auto;
    height: auto;
    flex: 0 0 auto;
}

#order-nexum .nx-cart-modal.modal-remove-item .modal-header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 20px 24px;
    background: var(--nx-card-bg);
    border: 0;
    border-bottom: 1px solid var(--nx-border);
}
#order-nexum .nx-cart-modal.modal-remove-item .nx-modal-ico {
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--nx-danger);
    color: #fff;
}
#order-nexum .nx-cart-modal.modal-remove-item .nx-modal-ico .material-symbols-rounded {
    font-size: 18px;
    font-variation-settings: 'wght' 700;
}
#order-nexum .nx-cart-modal.modal-remove-item .modal-title {
    flex: 1 1 auto;
    margin: 0;
    text-align: left;
    font-size: 17px;
    font-weight: 600;
    color: var(--nx-text);
}
#order-nexum .nx-cart-modal.modal-remove-item .close {
    position: static;
    flex: 0 0 auto;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: var(--nx-radius-md);
    background: transparent;
    opacity: 1;
    color: var(--nx-muted);
    text-shadow: none;
}
#order-nexum .nx-cart-modal.modal-remove-item .close:hover {
    background: rgba(var(--nx-primary-rgb), .08);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-cart-modal.modal-remove-item .close .material-symbols-rounded { font-size: 20px; }

#order-nexum .nx-cart-modal.modal-remove-item .modal-body {
    padding: 22px 24px 4px;
    text-align: left;
    font-size: 14.5px;
    color: var(--nx-muted);
}

#order-nexum .nx-cart-modal.modal-remove-item .modal-footer {
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    padding: 18px 24px 24px;
    background: var(--nx-card-bg);
    border: 0;
}
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-confirm,
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-cancel {
    height: 42px;
    min-width: 96px;
    padding: 0 20px;
    border-radius: var(--nx-radius-md);
    font-size: 14px;
    font-weight: 400;
}
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-confirm {
    background: var(--nx-danger);
    border: 0;
    color: #fff;
}
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-confirm:hover,
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-confirm:focus {
    background: color-mix(in srgb, var(--nx-danger) 82%, #000);
    color: #fff;
}
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-cancel {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    color: var(--nx-text);
}
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-cancel:hover,
#order-nexum .nx-cart-modal.modal-remove-item .btn.nx-modal-cancel:focus {
    background: var(--nx-bg);
    border-color: var(--nx-border);
    color: var(--nx-text);
}

#order-nexum .nx-btn-arrow,
#order-nexum .nx-cfg-submit .material-symbols-rounded {
    font-size: 18px;
    line-height: 1;
    font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 24;
}

#order-nexum .checkout-error-feedback {
    padding: 20px 24px;
    text-align: left;
    color: var(--nx-text);
}
#order-nexum .checkout-error-feedback > p {
    margin: 0 0 12px;
    font-size: 14.5px;
    font-weight: 400;
    color: var(--nx-text);
    text-align: left;
}
#order-nexum .checkout-error-feedback ul {
    margin: 0;
    padding-left: 22px;
    list-style: disc;
    text-align: left;
}
#order-nexum .checkout-error-feedback li {
    margin: 0 0 6px;
    padding: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--nx-text);
    text-align: left;
    list-style: disc;
}
#order-nexum .checkout-error-feedback li::marker {
    color: var(--nx-danger);
}
#order-nexum .checkout-error-feedback li:last-child { margin-bottom: 0; }

#order-nexum .nx-btn-arrow,
#order-nexum .nx-cfg-bold-18 {
    color: inherit;
}

#order-nexum .nx-checkout-submit-row {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

#order-nexum .nx-checkout-tos {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 14px 2px 0;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--nx-muted);
    cursor: pointer;
}
#order-nexum .nx-checkout-tos input[type="checkbox"] {
    flex: 0 0 17px;
    margin: 2px 0 0;
}
#order-nexum .nx-checkout-tos a {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}
#order-nexum .nx-tos-error {
    display: flex;
    align-items: flex-start;
    gap: 6px;
    margin: 8px 2px 0;
    font-size: 12.5px;
    font-weight: 400;
    line-height: 1.5;
    color: var(--nx-danger, #f04438);
}
#order-nexum .nx-tos-error[hidden] { display: none; }
#order-nexum .nx-checkout-tos input[type="checkbox"].is-invalid {
    outline: 2px solid var(--nx-danger, #f04438);
    outline-offset: 1px;
    border-radius: 3px;
}

#order-nexum .nx-cfg-submit,
#order-nexum .btn-checkout {
    flex-direction: row;
}
#order-nexum .nx-cfg-submit .material-symbols-rounded,
#order-nexum .btn-checkout .nx-btn-arrow {
    order: 2;
}

#order-nexum #producttotal .product-name {
    display: flex;
    align-items: center;
    gap: 9px;
}
#order-nexum .nx-sum-ico {
    flex: 0 0 26px;
    width: 26px;
    height: 26px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 7px;
    background: rgba(255, 255, 255, .16);
    color: #fff;
    font-size: 15px;
    font-variation-settings: 'FILL' 1;
}

#order-nexum .nx-optin-toggle {
    display: inline-flex;
    align-items: center;
    margin: 4px 0 0;
    cursor: pointer;
}
#order-nexum .nx-optin-toggle input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
}
#order-nexum .nx-optin-track {
    position: relative;
    display: block;
    width: 46px;
    height: 26px;
    border-radius: var(--nx-radius-badge);
    background: var(--nx-border);
    transition: background-color var(--nx-transition-fast);
}
#order-nexum .nx-optin-track::after {
    content: "";
    position: absolute;
    top: 3px;
    left: 3px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: var(--nx-card-bg);
    box-shadow: 0 1px 3px rgba(16, 24, 40, .2);
    transition: transform var(--nx-transition-fast);
}
#order-nexum .nx-optin-toggle input:checked + .nx-optin-track {
    background: var(--nx-primary);
}
#order-nexum .nx-optin-toggle input:checked + .nx-optin-track::after {
    transform: translateX(20px);
}
#order-nexum .nx-optin-toggle input:focus-visible + .nx-optin-track {
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .25);
}

#order-nexum .btn .nx-btn-arrow,
#order-nexum .btn-checkout .nx-btn-arrow,
#order-nexum #orderSummary .btn-checkout .nx-btn-arrow,
#order-nexum .nx-cfg-submit .material-symbols-rounded,
#order-nexum .nx-cfg-bold-18 {
    color: currentColor !important;
    -webkit-text-fill-color: currentColor;
    background: none;
    font-size: 19px;
    line-height: 1;
    font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 24;
}

#order-nexum .nx-checkout-head .nx-checkout-title {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.25px;
    color: var(--nx-text);
    margin: 0;
}
#order-nexum .nx-checkout-head {
    margin-bottom: var(--nx-space-3);
}
#order-nexum .nx-pay-head { margin-top: 34px; }

#order-nexum .nx-notes-head {
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    user-select: none;
}
#order-nexum .nx-notes-body { margin-top: var(--nx-space-4, 16px); }
#order-nexum .nx-notes-head-ico {
    font-size: 19px;
    color: var(--nx-muted);
}
#order-nexum .nx-notes-head .nx-checkout-title { margin: 0; }
#order-nexum .nx-notes-head-optional {
    font-size: 11.5px;
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-notes-head-chevron {
    margin-left: auto;
    font-size: 20px;
    color: var(--nx-muted);
    transition: transform var(--nx-transition);
}
#order-nexum .nx-notes-group { margin-bottom: 0; }

#order-nexum .nx-pay-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-sm);
    padding: 22px;
}

#order-nexum .nx-doms-registrant-title {
    margin: 0 0 6px;
}

#order-nexum .nx-acct-wrap { display: block; }

#order-nexum .nx-acct-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-sm);
    overflow: hidden;
    margin-bottom: 34px;
}

#order-nexum .nx-acct-card:has(.nx-custom-select-wrapper),
#order-nexum .nx-acct-card:has(.intl-tel-input),
#order-nexum .nx-pay-card:has(.nx-custom-select-wrapper),
#order-nexum .nx-doms-registrant-card:has(.nx-custom-select-wrapper) {
    overflow: visible;
}
#order-nexum .nx-acct-panel {
    border: 0;
    border-radius: 0;
    padding: 22px;
    transition: background-color var(--nx-transition);
}
/* Separates the two rows in place of the old gap. */
#order-nexum .nx-acct-panel + .nx-acct-panel {
    border-top: 1px solid var(--nx-border-soft, var(--nx-border));
}
#order-nexum .nx-acct-panel:not(.is-active):not(.nx-acct-panel-plain):hover {
    background: rgba(var(--nx-primary-rgb), .03);
}
#order-nexum .nx-acct-panel.is-active {
    background: rgba(var(--nx-primary-rgb), .04);
}
#order-nexum .nx-acct-head {
    display: flex;
    align-items: center;
    gap: 12px;
    width: 100%;
    margin: -22px -22px 0;
    padding: 18px 22px;
    border: 0;
    outline: none;
    box-shadow: none;
    background: transparent;
    font-family: var(--nx-font-family);
    font-size: 15px;
    font-weight: 400;
    color: var(--nx-text);
    text-align: left;
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
}
#order-nexum .nx-acct-head:focus,
#order-nexum .nx-acct-head:focus-visible {
    outline: none;
    box-shadow: none;
}
#order-nexum .nx-acct-panel:not(.is-active) .nx-acct-head { margin-bottom: -22px; }
#order-nexum .nx-acct-panel.is-active .nx-acct-head { margin-bottom: 18px; }
#order-nexum .nx-acct-dot {
    flex: 0 0 18px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    border: 2px solid var(--nx-border);
    background: var(--nx-card-bg);
    position: relative;
    transition: border-color var(--nx-transition);
}
#order-nexum .nx-acct-panel.is-active .nx-acct-dot {
    border-color: var(--nx-primary);
}
#order-nexum .nx-acct-panel.is-active .nx-acct-dot::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: var(--nx-primary);
}
#order-nexum .nx-acct-panel .sub-heading { display: none; }

#order-nexum .nx-acct-panel-plain .sub-heading {
    display: block;
    margin: var(--nx-space-5, 20px) 0 var(--nx-space-3, 12px);
    padding: 0 0 var(--nx-space-2, 8px);
    border-bottom: 1px solid var(--nx-border-soft, var(--nx-border));
}
#order-nexum .nx-acct-panel-plain .sub-heading:first-child { margin-top: 0; }
#order-nexum .nx-acct-panel-plain .sub-heading > span,
#order-nexum .nx-acct-panel-plain .sub-heading .primary-bg-color {
    background: none;
    color: var(--nx-text);
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.25px;
    padding: 0;
    display: block;
}

#order-nexum .nx-gw-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    text-align: left;
}
#order-nexum .nx-gw-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 0;
    padding: 14px 18px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    font-size: 14px;
    font-weight: 400;
    color: var(--nx-text);
    cursor: pointer;
    transition: border-color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .nx-gw-row:hover {
    border-color: color-mix(in srgb, var(--nx-primary) 40%, var(--nx-border));
}
#order-nexum .nx-gw-row:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), .05);
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
}
#order-nexum .nx-gw-row input[type="radio"] {
    position: static !important;
    top: auto !important;
    left: auto !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    background: none;
    border: none;
    flex-shrink: 0;
    accent-color: var(--nx-primary);
}
#order-nexum .nx-gw-row .icheckbox_square-blue {
    position: static !important;
    display: inline-flex !important;
    width: 17px !important;
    height: 17px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    flex-shrink: 0;
}
#order-nexum .nx-gw-row .iCheck-helper { display: none !important; }

#order-nexum .nx-pay-card { margin-bottom: 34px; }
#order-nexum .nx-pay-details {
    border-top: 1px solid var(--nx-border-soft, var(--nx-border));
    margin-top: var(--nx-space-5, 20px);
    padding-top: var(--nx-space-5, 20px);
}
#order-nexum .nx-pay-details .cc-input-container,
#order-nexum .nx-pay-details #paymentGatewayInput { margin: 0; }
#order-nexum .nx-pay-details .form-group:last-child { margin-bottom: 0; }

#order-nexum .nx-cc-details-head {
    font-size: 13px;
    font-weight: 400;
    letter-spacing: -.1px;
    color: var(--nx-text);
    background: transparent;
    padding: 0;
    margin: 0 0 12px;
    border: none;
}

#order-nexum #paymentGatewaysContainer { margin-bottom: 0; }
#order-nexum #paymentGatewaysContainer > .small.text-muted { display: none; }

#order-nexum .nx-gw-row {
    justify-content: flex-start;
    position: relative;
}
#order-nexum .nx-gw-row .nx-gw-logo {
    margin-left: auto;
    max-height: 22px;
    width: auto;
}

#order-nexum .nx-gw-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--nx-space-4);
    flex-wrap: wrap;
    margin-bottom: var(--nx-space-4);
}
#order-nexum .nx-gw-head-title {
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: -.25px;
    color: var(--nx-text);
}
#order-nexum .nx-gw-head-count {
    margin: 4px 0 0;
    font-size: 12.5px;
    font-weight: 400;
    color: var(--nx-muted);
    max-width: 320px;
}
#order-nexum .nx-gw-search {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    min-width: 190px;
    padding: 0 12px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
}
#order-nexum .nx-gw-search .material-symbols-rounded { font-size: 17px; color: var(--nx-muted); }
#order-nexum .nx-gw-search input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    padding: 9px 0;
    font-size: 12.5px;
    color: var(--nx-text);
    outline: none !important;
    box-shadow: none !important;
}
#order-nexum .nx-gw-search input:focus,
#order-nexum .nx-gw-search input:focus-visible {
    outline: none !important;
    box-shadow: none !important;
}
#order-nexum .nx-gw-search:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
@media (max-width: 767.98px) {
    #order-nexum .nx-gw-search {
        flex: 1 1 100%;
        width: 100%;
        min-width: 0;
    }
}

/* Group label — same eyebrow treatment used for the addon-picker groups. */
#order-nexum .nx-gw-group-head {
    font-size: 10.5px;
    font-weight: 400;
    letter-spacing: .6px;
    text-transform: uppercase;
    color: var(--nx-muted);
    margin: var(--nx-space-4) 0 var(--nx-space-2);
}
#order-nexum .nx-gw-group-head:first-of-type { margin-top: 0; }
#order-nexum .nx-gw-empty {
    text-align: center;
    padding: var(--nx-space-5) 0;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-muted);
}

#order-nexum .nx-gw-tiles {
    display: flex;
    flex-direction: column;
    gap: 8px;
}
#order-nexum .nx-gw-tile {
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
    padding: 14px 18px;
    max-width: none;
    border: 1.5px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    cursor: pointer;
    transition: border-color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .nx-gw-tile:hover {
    border-color: color-mix(in srgb, var(--nx-primary) 40%, var(--nx-border));
}
#order-nexum .nx-gw-tile:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), .05);
}
#order-nexum .nx-gw-tile input[type="radio"] {
    position: absolute !important;
    top: 10px !important;
    left: auto !important;
    right: 10px;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 0 !important;
    background: none;
    border: none;
}
#order-nexum .nx-gw-tile .icheckbox_square-blue,
#order-nexum .nx-gw-tile .iradio_square-blue {
    position: absolute !important;
    top: 10px;
    right: 10px;
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    opacity: 0 !important;
}
#order-nexum .nx-gw-tile .iCheck-helper { display: none !important; }
#order-nexum .nx-gw-tile:has(input:checked)::after {
    content: 'check_circle';
    font-family: 'Material Symbols Rounded';
    font-variation-settings: 'FILL' 1;
    position: absolute;
    top: 50%;
    right: 16px;
    transform: translateY(-50%);
    font-size: 20px;
    line-height: 1;
    color: var(--nx-primary-text, var(--nx-primary));
    border-radius: 50%;
}
#order-nexum .nx-gw-tile:has(input:checked) { padding-right: 48px; }
#order-nexum .nx-gw-tile-ico {
    font-size: 22px;
    color: var(--nx-muted);
}
#order-nexum .nx-gw-tile:has(input:checked) .nx-gw-tile-ico { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-gw-tile-name {
    font-size: 13.5px;
    font-weight: 400;
    color: var(--nx-text);
}

#order-nexum .nx-acct-legacy-toggle {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
}

#order-nexum .nx-acct-panel,
#order-nexum .nx-acct-panel *,
#order-nexum .nx-acct-panel *:focus,
#order-nexum .nx-acct-panel *:focus-visible {
    outline: none;
}

#order-nexum .nx-acct-panel[data-nx-acct="existing"],
#order-nexum .nx-acct-panel[data-nx-acct="new"],
#order-nexum .nx-acct-panel[data-nx-acct="existing"].is-active,
#order-nexum .nx-acct-panel[data-nx-acct="new"].is-active {
    outline: none !important;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] *,
#order-nexum .nx-acct-panel[data-nx-acct="new"] * {
    outline: none !important;
}

#order-nexum .nx-acct-panel .btn-primary,
#order-nexum .nx-acct-panel .btn-primary span {
    color: #fff !important;
}

#order-nexum .form-group .input-group {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}
#order-nexum .input-group {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}
#order-nexum .input-group > .form-control {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: auto !important;
}
#order-nexum .input-group > .input-group-btn,
#order-nexum .input-group > .input-group-append {
    flex: 0 0 auto !important;
    display: flex !important;
    width: auto !important;
}
#order-nexum .form-group .input-group .form-control {
    flex: 1 1 auto;
    min-width: 0;
}
#order-nexum .form-group .input-group .input-group-btn,
#order-nexum .form-group .input-group .input-group-append {
    flex: 0 0 auto;
    display: flex;
    width: auto;
    margin-left: 8px;
}
#order-nexum .form-group .input-group .input-group-btn .btn,
#order-nexum .form-group .input-group .input-group-append .btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    color: var(--nx-muted);
    font-weight: 400;
    font-size: 13px;
}
#order-nexum .form-group .input-group .input-group-btn .btn:hover {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum .nx-dc-head {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 26px 30px;
    margin-bottom: 20px;
}
#order-nexum .nx-dc-title {
    margin: 0;
    font-size: var(--nx-font-size-h1, 25px);
    font-weight: 600;
    letter-spacing: -.4px;
    color: var(--nx-text);
}
#order-nexum .nx-dc-sub { margin: 8px 0 0; font-size: var(--nx-font-size-lg); color: var(--nx-muted); }

#order-nexum .nx-dc-alert {
    display: flex;
    gap: 12px;
    background: rgba(var(--nx-danger-rgb, 240, 68, 56), .07);
    border: 1px solid rgba(var(--nx-danger-rgb, 240, 68, 56), .25);
    border-radius: var(--nx-radius-card);
    padding: 16px 20px;
    margin-bottom: 20px;
    color: var(--nx-danger, #f04438);
}
#order-nexum .nx-dc-alert p { margin: 0 0 4px; font-weight: 400; }
#order-nexum .nx-dc-alert ul { margin: 0; padding-left: 20px; font-size: var(--nx-font-size-md); }

#order-nexum .nx-dc-list { display: flex; flex-direction: column; gap: 14px; }
#order-nexum .nx-dc-card {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    overflow: hidden;
}
#order-nexum .nx-dc-row {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 26px;
    flex-wrap: wrap;
}
#order-nexum .nx-dc-ico {
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    border-radius: 12px;
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}
#order-nexum .nx-dc-id { min-width: 0; }
#order-nexum .nx-dc-name {
    font-size: 17.5px;
    font-weight: 400;
    letter-spacing: -.2px;
    color: var(--nx-text);
    word-break: break-all;
}
#order-nexum .nx-dc-tags { margin-top: 7px; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
#order-nexum .nx-dc-tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 7px;
    padding: 4px 10px;
    font-size: 11.5px;
    font-weight: 400;
    text-decoration: none;
}
#order-nexum .nx-dc-tag .material-symbols-rounded { font-size: 15px; color: inherit; }
#order-nexum .nx-dc-tag-ok { background: rgba(var(--nx-success-rgb, 18, 183, 106), .12); color: var(--nx-success, #12b76a); }
#order-nexum .nx-dc-tag-warn { background: rgba(var(--nx-danger-rgb, 240, 68, 56), .10); color: var(--nx-danger, #f04438); }
#order-nexum .nx-dc-tag-warn:hover { background: rgba(var(--nx-danger-rgb, 240, 68, 56), .18); color: var(--nx-danger, #f04438); }
#order-nexum .nx-dc-tag-info { background: var(--nx-bg); color: var(--nx-muted); }

#order-nexum .nx-dc-meta { margin-left: auto; display: flex; align-items: center; gap: 22px; }
#order-nexum .nx-dc-period { text-align: right; }
#order-nexum .nx-dc-period-label {
    display: block;
    font-size: 10.5px;
    letter-spacing: .9px;
    text-transform: uppercase;
    color: var(--nx-muted);
    font-weight: 400;
}
#order-nexum .nx-dc-period-val {
    margin-top: 4px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--nx-border);
    border-radius: 9px;
    padding: 7px 12px;
    font-size: 13.5px;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-dc-remove {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border: 1px solid rgba(var(--nx-danger-rgb, 240, 68, 56), .25);
    background: var(--nx-card-bg);
    color: var(--nx-danger, #f04438);
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 13.5px;
    font-weight: 400;
    cursor: pointer;
    transition: background-color var(--nx-transition);
}
#order-nexum .nx-dc-remove:hover { background: rgba(var(--nx-danger-rgb, 240, 68, 56), .10); }
#order-nexum .nx-dc-remove .material-symbols-rounded { font-size: 18px; color: inherit; }

#order-nexum .nx-dc-epp {
    border-top: 1px solid var(--nx-border-soft);
    padding: 18px 26px;
    display: flex;
    flex-direction: column;
    gap: 7px;
}
#order-nexum .nx-dc-epp label { font-size: 12.5px; font-weight: 400; color: var(--nx-muted); margin: 0; }
#order-nexum .nx-dc-epp input {
    height: 46px;
    border: 1px solid var(--nx-border);
    border-radius: 10px;
    background: var(--nx-card-bg);
    color: var(--nx-text);
    padding: 0 15px;
    font-size: 14px;
    max-width: 420px;
}
#order-nexum .nx-dc-epp-help { font-size: 12.3px; color: var(--nx-muted); }

#order-nexum .nx-dc-addons {
    border-top: 1px solid var(--nx-border-soft);
    padding: 18px 26px 22px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}
@media (max-width: 991px) { #order-nexum .nx-dc-addons { grid-template-columns: 1fr; } }
#order-nexum .nx-dc-addon {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: start;
    gap: 0 11px;
    border: 1px solid var(--nx-border-soft);
    background: var(--nx-card-bg);
    border-radius: 13px;
    padding: 16px 18px;
    margin: 0;
    cursor: pointer;
    font-weight: 400;
    transition: border-color var(--nx-transition), background-color var(--nx-transition);
}
#order-nexum .nx-dc-addon > input[type="checkbox"],
#order-nexum .nx-dc-addon > .icheckbox_square-blue,
#order-nexum .nx-dc-addon > .icheckbox_square-green {
    margin-top: 1px;
    align-self: start;
}
#order-nexum .nx-dc-addon-title { display: block; font-size: 14px; font-weight: 600; color: var(--nx-text); }
#order-nexum .nx-dc-addon-desc { display: block; margin-top: 5px; font-size: 12.3px; line-height: 1.55; color: var(--nx-muted); }
#order-nexum .nx-dc-addon-info { font-size: 17px; color: var(--nx-border); }
#order-nexum .nx-dc-addon-foot {
    grid-column: 1 / -1;
    margin-top: 14px;
    display: flex;
    align-items: center;
    gap: 10px;
}
#order-nexum .nx-dc-addon-price { font-size: 13.5px; font-weight: 400; color: var(--nx-text); }
#order-nexum .nx-dc-addon-term { font-size: 11.5px; color: var(--nx-muted); }
#order-nexum .nx-dc-addon-btn {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    border-radius: 9px;
    padding: 8px 14px;
    font-size: 12.5px;
    font-weight: 400;
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
    white-space: nowrap;
}
#order-nexum .nx-dc-addon-btn .material-symbols-rounded { font-size: 16px; color: inherit; }
#order-nexum .nx-dc-btn-ico-added,
#order-nexum .nx-dc-btn-added { display: none; }

#order-nexum .nx-dc-addon.is-selected {
    border-color: rgba(var(--nx-primary-rgb), .35);
    background: rgba(var(--nx-primary-rgb), .04);
}
#order-nexum .nx-dc-addon.is-selected .nx-dc-addon-price { color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-dc-addon.is-selected .nx-dc-addon-btn { background: var(--nx-primary); color: #fff; }
#order-nexum .nx-dc-addon.is-selected .nx-dc-btn-ico-add,
#order-nexum .nx-dc-addon.is-selected .nx-dc-btn-add { display: none; }
#order-nexum .nx-dc-addon.is-selected .nx-dc-btn-ico-added,
#order-nexum .nx-dc-addon.is-selected .nx-dc-btn-added { display: inline; }

#order-nexum .nx-dc-extra {
    border-top: 1px solid var(--nx-border-soft);
    background: var(--nx-bg);
    padding: 22px 26px;
}
#order-nexum .nx-dc-extra-head {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 16px;
    font-size: 13px;
    font-weight: 400;
    letter-spacing: .2px;
    color: var(--nx-warning, #b54708);
}
#order-nexum .nx-dc-extra-head .material-symbols-rounded { font-size: 18px; color: inherit; }
#order-nexum .nx-dc-extra-grid {
    display: grid;
    grid-template-columns: 190px 1fr;
    gap: 16px 22px;
    align-items: center;
}
@media (max-width: 767px) { #order-nexum .nx-dc-extra-grid { grid-template-columns: 1fr; gap: 6px 0; } }
#order-nexum .nx-dc-extra-label { font-size: 13.5px; color: var(--nx-muted); }
#order-nexum .nx-dc-extra-field input[type="text"],
#order-nexum .nx-dc-extra-field select {
    width: 100%;
    height: 44px;
    border: 1px solid var(--nx-border);
    border-radius: 10px;
    background: var(--nx-card-bg);
    color: var(--nx-text);
    padding: 0 15px;
    font-size: 13.5px;
}
#order-nexum .nx-dc-extra-field label { font-size: 13.5px; color: var(--nx-text); font-weight: 400; margin: 0; }

#order-nexum .nx-dc-ns {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-card);
    padding: 26px 30px;
    margin-top: 20px;
}
#order-nexum .nx-dc-ns-title { margin: 0; font-size: 18px; font-weight: 600; letter-spacing: -.2px; color: var(--nx-text); }
#order-nexum .nx-dc-ns-sub { margin: 8px 0 22px; font-size: 13.5px; color: var(--nx-muted); }
#order-nexum .nx-dc-ns-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px 20px; }
@media (max-width: 767px) { #order-nexum .nx-dc-ns-grid { grid-template-columns: 1fr; } }
#order-nexum .nx-dc-ns-item label { display: block; font-size: 12.5px; font-weight: 400; color: var(--nx-muted); margin-bottom: 7px; }
#order-nexum .nx-dc-ns-item input {
    width: 100%;
    height: 46px;
    border: 1px solid var(--nx-border);
    border-radius: 10px;
    background: var(--nx-card-bg);
    color: var(--nx-text);
    padding: 0 15px;
    font-size: 14px;
}

#order-nexum .nx-dc-footer {
    position: sticky;
    bottom: 0;
    z-index: 30;
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card);
    box-shadow: var(--nx-shadow-elevated);
    padding: 20px 26px;
    margin-top: 20px;
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}
#order-nexum .nx-dc-count { font-size: 13.5px; color: var(--nx-muted); }
#order-nexum .nx-dc-count strong {
    color: var(--nx-primary-text, var(--nx-primary));
    font-weight: 400;
    font-size: var(--nx-font-size-lg);
    margin-right: 2px;
}
#order-nexum .nx-dc-footer .nx-cd-continue { margin-left: auto; }

#order-nexum button:focus,
#order-nexum [role="button"]:focus,
#order-nexum .btn:focus,
#order-nexum a:focus,
#order-nexum summary:focus,
#order-nexum select:focus,
#order-nexum input:focus,
#order-nexum textarea:focus {
    outline: none;
}
#order-nexum button:focus-visible,
#order-nexum [role="button"]:focus-visible,
#order-nexum .btn:focus-visible,
#order-nexum a:focus-visible,
#order-nexum summary:focus-visible,
#order-nexum select:focus-visible,
#order-nexum input:focus-visible,
#order-nexum textarea:focus-visible {
    outline: 2px solid var(--nx-primary);
    outline-offset: 2px;
}
#order-nexum .form-control:focus-visible {
    outline: none;
}

#order-nexum .nx-dt-hero {
    text-align: center;
    padding: 40px 32px 34px;
    background: linear-gradient(180deg,
        color-mix(in srgb, var(--nx-primary) 8%, var(--nx-card-bg)) 0%,
        color-mix(in srgb, var(--nx-primary) 20%, var(--nx-card-bg)) 100%);
}
#order-nexum .nx-dt-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 16px;
    border-radius: var(--nx-radius-badge, 999px);
    background: var(--nx-card-bg);
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    box-shadow: 0 1px 3px rgba(16, 24, 40, .06);
}
#order-nexum .nx-dt-eyebrow .material-symbols-rounded { font-size: 15px; }
#order-nexum .nx-dt-hero-title {
    margin: 18px 0 0;
    font-size: 32px;
    font-weight: var(--nx-weight-heading, 700);
    letter-spacing: -.7px;
    color: var(--nx-text);
}
#order-nexum .nx-dt-hero-sub {
    margin: 10px auto 24px;
    max-width: 520px;
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
}

#order-nexum .nx-dt-row {
    display: flex;
    justify-content: center;
    gap: 10px;
    max-width: 660px;
    margin: 0 auto;
}
#order-nexum .nx-dt-field {
    flex: 1 1 auto;
    display: flex;
    align-items: center;
    gap: 11px;
    height: 56px;
    padding: 0 18px;
    border-radius: var(--nx-radius-input, 12px);
    background: var(--nx-card-bg);
    box-shadow: 0 2px 10px rgba(16, 24, 40, .07);
}
#order-nexum .nx-dt-field-ico { font-size: 21px; color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-dt-field input {
    flex: 1;
    min-width: 0;
    height: 100%;
    border: 0;
    background: transparent;
    outline: none;
    font-family: var(--nx-font-family);
    font-size: var(--nx-font-size-lg);
    color: var(--nx-text);
}
#order-nexum .nx-dt-submit {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 56px;
    padding: 0 26px;
    border: 0;
    border-radius: var(--nx-radius-btn, 12px);
    background: var(--nx-primary);
    color: #fff;
    font-family: var(--nx-font-family);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    cursor: pointer;
    box-shadow: 0 4px 14px rgba(var(--nx-primary-rgb), .28);
    transition: background-color var(--nx-transition);
}
#order-nexum .nx-dt-submit:hover:not([disabled]) { background: var(--nx-primary-hover); }
#order-nexum .nx-dt-submit[disabled] { opacity: .7; cursor: default; }
#order-nexum .nx-dt-submit-label { display: inline-flex; align-items: center; gap: 8px; }
#order-nexum .nx-dt-submit-label .material-symbols-rounded { font-size: 18px; }

/* Auth-code modal (asked for before the transfer is added to the cart). */
#order-nexum .nx-dt-auth-input {
    width: 100%;
    height: 46px;
    padding: 0 16px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-input, 10px);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-family: var(--nx-font-family);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
}
#order-nexum .nx-dt-auth-input:focus,
#order-nexum .nx-dt-auth-input:focus-visible {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
.nx-dt-auth-modal .nx-dt-auth-input {
    width: 100%;
    height: 46px;
    padding: 0 16px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-input, 10px);
    background: var(--nx-card-bg);
    color: var(--nx-text);
    font-family: var(--nx-font-family);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
}
.nx-dt-auth-modal .nx-dt-auth-input:focus,
.nx-dt-auth-modal .nx-dt-auth-input:focus-visible {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
.nx-dt-auth-modal .nx-dt-modal-desc {
    margin: 0 0 18px;
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
    line-height: 1.6;
}
.nx-dt-auth-modal .nx-dt-modal-label {
    display: block;
    margin-bottom: 7px;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-text);
}
.nx-dt-auth-modal .nx-dt-modal-err {
    display: block;
    margin-top: 8px;
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    color: var(--nx-danger, #dc2626);
}
.nx-dt-auth-modal .nx-dt-modal-err[hidden] { display: none; }

.nx-dt-auth-modal .modal-body {
    text-align: left;
    padding: 26px 28px 8px;
    color: var(--nx-text);
}
.nx-dt-auth-modal .modal-footer {
    justify-content: flex-start;
    border-top: none !important;
    background: var(--nx-card-bg);
    padding: 18px 28px 26px;
}
.nx-dt-auth-modal .modal-footer .btn.nx-modal-confirm {
    background: var(--nx-primary);
    border: 1px solid var(--nx-primary);
    color: #fff;
}
.nx-dt-auth-modal .modal-footer .btn.nx-modal-confirm:hover,
.nx-dt-auth-modal .modal-footer .btn.nx-modal-confirm:focus {
    background: var(--nx-primary-hover, var(--nx-primary));
    border-color: var(--nx-primary-hover, var(--nx-primary));
    color: #fff;
}
.nx-dt-auth-modal .modal-footer .btn.nx-modal-cancel {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    color: var(--nx-text);
}
.nx-dt-auth-modal .modal-footer .btn.nx-modal-cancel:hover,
.nx-dt-auth-modal .modal-footer .btn.nx-modal-cancel:focus {
    border-color: var(--nx-primary);
    color: var(--nx-primary-text, var(--nx-primary));
}

#order-nexum #transferUnavailable {
    margin: 18px auto 0;
    max-width: 720px;
    padding: 14px 20px;
    border: none;
    border-radius: var(--nx-radius-md, 12px);
    background: color-mix(in srgb, var(--nx-warning, #f59e0b) 14%, var(--nx-card-bg));
    color: color-mix(in srgb, var(--nx-warning, #f59e0b) 78%, #000);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    text-align: left;
}
#order-nexum #transferUnavailable.w-hidden { display: none; }

#order-nexum .nx-dt-perks {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 22px;
    margin-top: 20px;
}
#order-nexum .nx-dt-perk {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-dt-perk .material-symbols-rounded { font-size: 16px; color: var(--nx-success); }
#order-nexum .nx-dt-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
    gap: 20px;
    margin-top: 22px;
}
#order-nexum .nx-dt-sec { min-width: 0; }
#order-nexum .nx-dt-sec.is-full { grid-column: 1 / -1; }
#order-nexum .nx-dt-sec.is-half { grid-column: span 1; }
#order-nexum .nx-dt-sec > .nx-dt-card:last-child { margin-bottom: 0; }
@media (max-width: 991.98px) {
    #order-nexum .nx-dt-grid { grid-template-columns: minmax(0, 1fr); }
    #order-nexum .nx-dt-sec.is-half,
    #order-nexum .nx-dt-sec.is-full { grid-column: 1 / -1; }
}
#order-nexum .nx-dt-card { margin-bottom: 20px; }
#order-nexum .nx-dt-card-head { margin-bottom: 18px; }
#order-nexum .nx-dt-card-title {
    margin: 0;
    font-size: var(--nx-font-size-xl);
    font-weight: var(--nx-weight-heading, 700);
    color: var(--nx-text);
}
#order-nexum .nx-dt-card-sub {
    margin: 5px 0 0;
    font-size: var(--nx-font-size-md);
    color: var(--nx-muted);
}

#order-nexum .nx-dt-reqs {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap: 18px;
}
#order-nexum .nx-dt-req { display: flex; align-items: flex-start; gap: 12px; }
#order-nexum .nx-dt-req-ico {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    border-radius: var(--nx-radius-sm, 8px);
    background: rgba(var(--nx-primary-rgb), .10);
    color: var(--nx-primary-text, var(--nx-primary));
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#order-nexum .nx-dt-req-ico .material-symbols-rounded { font-size: 18px; }
#order-nexum .nx-dt-req-text { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
#order-nexum .nx-dt-req-text strong {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-dt-req-text small {
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    line-height: 1.5;
}

#order-nexum .nx-dt-prices {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 14px;
}
#order-nexum .nx-dt-price {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 16px;
    text-align: left;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md, 12px);
    background: var(--nx-card-bg);
    cursor: pointer;
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition), transform var(--nx-transition);
}
#order-nexum .nx-dt-price:hover {
    border-color: var(--nx-primary);
    box-shadow: 0 6px 18px rgba(var(--nx-primary-rgb), .10);
    transform: translateY(-2px);
}
#order-nexum .nx-dt-price-tld {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: var(--nx-font-size-xl);
    font-weight: var(--nx-weight-heading, 700);
    color: var(--nx-text);
}
#order-nexum .nx-dt-price-group {
    padding: 2px 8px;
    border-radius: var(--nx-radius-badge, 999px);
    font-size: 9.5px;
    font-weight: 400;
    letter-spacing: .6px;
    text-transform: uppercase;
    background: rgba(var(--nx-primary-rgb), .12);
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-dt-price-amount {
    font-size: var(--nx-font-size-lg);
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-dt-price-amount small {
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-muted);
}
#order-nexum .nx-dt-price-note {
    font-size: var(--nx-font-size-xs);
    color: var(--nx-muted);
}

#order-nexum .nx-dt-steps {
    list-style: none;
    margin: 0;
    padding: 0;
}
#order-nexum .nx-dt-step {
    position: relative;
    padding: 0 0 20px 28px;
    display: flex;
    flex-direction: column;
    gap: 3px;
}
#order-nexum .nx-dt-step:last-child { padding-bottom: 0; }
#order-nexum .nx-dt-step::before {
    content: '';
    position: absolute;
    top: 3px;
    left: 0;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 2px solid var(--nx-border);
    background: var(--nx-card-bg);
}
#order-nexum .nx-dt-step.is-current::before {
    border-color: var(--nx-primary);
    box-shadow: inset 0 0 0 2.5px var(--nx-primary);
}
#order-nexum .nx-dt-step:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 18px;
    left: 6px;
    bottom: 2px;
    width: 1px;
    background: var(--nx-border);
}
#order-nexum .nx-dt-step strong {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-dt-step small {
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
    line-height: 1.5;
}

#order-nexum .nx-dt-help { display: flex; align-items: flex-start; gap: 14px; }
#order-nexum .nx-dt-help > .material-symbols-rounded {
    font-size: 26px;
    color: var(--nx-primary-text, var(--nx-primary));
    flex-shrink: 0;
}
#order-nexum .nx-dt-help > div { display: flex; flex-direction: column; gap: 4px; }
#order-nexum .nx-dt-help strong {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-dt-help small {
    font-size: var(--nx-font-size-sm);
    color: var(--nx-muted);
}
#order-nexum .nx-dt-help a {
    font-size: var(--nx-font-size-sm);
    font-weight: 400;
    color: var(--nx-primary-text, var(--nx-primary));
    text-decoration: none;
}

#order-nexum .nx-dt-footnote {
    margin-top: 4px;
    text-align: center;
    font-size: var(--nx-font-size-xs);
    color: var(--nx-muted);
}

#order-nexum .nx-dt-card-head-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
#order-nexum .nx-dt-card-title-sm {
    font-size: var(--nx-font-size-sm);
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
    color: var(--nx-muted);
}
/* ---- Live cart panel ---------------------------------------------------- */
#order-nexum .nx-dt-cart .nx-dt-card-title {
    display: inline-flex;
    align-items: center;
    gap: 9px;
}
#order-nexum .nx-dt-cart .nx-dt-card-title .material-symbols-rounded { font-size: 19px; color: var(--nx-primary-text, var(--nx-primary)); }
#order-nexum .nx-dt-cart-count {
    flex: 0 0 auto;
    min-width: 24px;
    height: 24px;
    padding: 0 8px;
    border-radius: var(--nx-radius-badge, 999px);
    background: rgba(var(--nx-primary-rgb), .12);
    color: var(--nx-primary-text, var(--nx-primary));
    font-size: var(--nx-font-size-xs);
    font-weight: 400;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#order-nexum .nx-dt-cart-items { display: flex; flex-direction: column; }
#order-nexum .nx-dt-cart-item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 0;
    border-bottom: 1px solid var(--nx-border);
}
#order-nexum .nx-dt-cart-item:last-child { border-bottom: none; }
#order-nexum .nx-dt-cart-ico {
    flex: 0 0 auto;
    width: 30px;
    height: 30px;
    border-radius: var(--nx-radius-sm, 8px);
    background: rgba(var(--nx-primary-rgb), .08);
    color: var(--nx-primary-text, var(--nx-primary));
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
#order-nexum .nx-dt-cart-ico .material-symbols-rounded { font-size: 17px; }
#order-nexum .nx-dt-cart-body { display: flex; flex-direction: column; gap: 2px; min-width: 0; flex: 1 1 auto; }
#order-nexum .nx-dt-cart-body strong {
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    word-break: break-all;
}
#order-nexum .nx-dt-cart-body small { font-size: var(--nx-font-size-xs); color: var(--nx-muted); }
#order-nexum .nx-dt-cart-price {
    flex: 0 0 auto;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
    white-space: nowrap;
}
#order-nexum .nx-dt-cart-total {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    padding-top: 16px;
    border-top: 1px solid var(--nx-border);
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-dt-cart-total strong {
    font-size: 24px;
    font-weight: 400;
    letter-spacing: -.5px;
    color: var(--nx-primary-text, var(--nx-primary));
}
#order-nexum .nx-dt-cart-checkout {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    width: 100%;
    height: 50px;
    margin-top: 18px;
    border-radius: var(--nx-radius-btn, 12px);
    background: var(--nx-primary);
    color: #fff;
    font-size: var(--nx-font-size-md);
    font-weight: 400;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(var(--nx-primary-rgb), .28);
    transition: background-color var(--nx-transition);
}
#order-nexum .nx-dt-cart-checkout:hover {
    background: var(--nx-primary-hover);
    color: #fff;
    text-decoration: none;
}
#order-nexum .nx-dt-cart-checkout .material-symbols-rounded { font-size: 18px; }
#order-nexum .nx-dt-cart-note {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 12px;
    font-size: var(--nx-font-size-xs);
    color: var(--nx-muted);
}
#order-nexum .nx-dt-cart-note .material-symbols-rounded { font-size: 15px; color: var(--nx-success); }

@media (max-width: 600px) {
    #order-nexum .nx-dt-hero { padding: 28px 16px 26px; }
}
@media (max-width: 600px) {
    #order-nexum .nx-dt-hero-title { font-size: 25px; }
    #order-nexum .nx-dt-row { flex-direction: column; align-items: stretch; }
    #order-nexum .nx-dt-submit { width: 100%; justify-content: center; }
}

@media (min-width: 992px) {
    body.nx-theme .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) {
        --nx-of-pad: var(--nx-content-padding, 32px);
        padding-left: 0;
        padding-right: 0;
    }
    body.nx-theme.nx-sidebar-mode-compact .nx-content-wrapper:has(#order-nexum > .nx-steps-clip),
    body.nx-theme.nx-sidebar-mode-icons .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) {
        --nx-of-pad: calc(var(--nx-content-padding, 32px) * 0.6);
    }
    body.nx-theme .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) > .nx-content-container {
        max-width: none;
    }
    body.nx-theme .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) > .nx-content-container > #order-nexum > *:not(.nx-steps-clip):not(.modal) {
        padding-left: max(calc((100% - var(--nx-container-width, 1280px)) / 2), var(--nx-of-pad, 32px));
        padding-right: max(calc((100% - var(--nx-container-width, 1280px)) / 2), var(--nx-of-pad, 32px));
    }
    body.nx-theme .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) > .nx-content-container > #order-nexum > .nx-steps-clip {
        margin-left: 0;
        margin-right: 0;
    }
    body.nx-theme .nx-content-wrapper:has(#order-nexum > .nx-steps-clip) #order-nexum .nx-cart-steps-container {
        padding-left: max(calc((100% - var(--nx-container-width, 1280px)) / 2), var(--nx-of-pad, 32px));
        padding-right: max(calc((100% - var(--nx-container-width, 1280px)) / 2), var(--nx-of-pad, 32px));
    }
}

#order-nexum .nx-acct-panel .social-signin-btns,
#order-nexum #containerNewUserSignup .social-signin-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    margin: 4px 0 18px;
}
#order-nexum .social-signin-btns .g_id_signin,
#order-nexum .social-signin-btns .g_id_signin div {
    width: auto !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    float: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}
#order-nexum .social-signin-btns .btn,
#order-nexum .social-signin-btns a.btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

/* The lead-in line above it, and the "Sign up"/"or" rule, centred with it. */
#order-nexum #containerNewUserSignup > div > .providerPreLinking + .providerLinkingFeedback:empty { display: none; }
#order-nexum #containerNewUserSignup .sub-heading + p.text-center,
#order-nexum #containerNewUserSignup > div > p.small.text-center {
    margin: 0 0 14px;
    color: var(--nx-muted);
}

@media (max-width: 575.98px) {
    #order-nexum .nx-acct-panel .social-signin-btns,
    #order-nexum #containerNewUserSignup .social-signin-btns {
        margin: 4px 0 14px;
    }
    #order-nexum #containerNewUserSignup > div > p.small.text-center {
        font-size: 12.5px;
        line-height: 1.5;
        margin-bottom: 12px;
    }
    #order-nexum #containerNewUserSignup .row > [class*="col-sm-"] {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

#order-nexum #containerNewUserSignup > div:first-child .sub-heading {
    margin: 12px 0 10px;
    padding-bottom: 8px;
}
#order-nexum #containerNewUserSignup > div:first-child > p.small.text-center,
#order-nexum #containerNewUserSignup .providerPreLinking ~ p.small.text-center {
    margin: 0 0 10px;
}
#order-nexum .nx-acct-panel .social-signin-btns,
#order-nexum #containerNewUserSignup .social-signin-btns {
    margin: 0 0 12px;
}
#order-nexum #containerNewUserSignup > div:first-child + .sub-heading {
    margin-top: 14px;
}

#order-nexum .nx-acct-panel[data-nx-acct="existing"] .sub-heading-borderless {
    margin: 10px 0 6px;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] p.small.text-center {
    margin: 0 0 10px;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] .social-signin-btns {
    margin: 0 0 6px;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] .text-center:has(#btnExistingLogin) {
    margin-top: 2px;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] .row:has(#inputEmail),
#order-nexum .nx-acct-panel[data-nx-acct="existing"] .row:has(#inputPassword) {
    margin-bottom: 0;
}
#order-nexum .nx-acct-panel[data-nx-acct="existing"] .form-group {
    margin-bottom: 10px;
}

#order-nexum .primary-bg-color {
    background-color: transparent;
}

@media (max-width: 767.98px) {
    #order-nexum .view-cart-items .item > .row > .nx-ci-actions,
    #order-nexum .view-cart-items .item.item-addon > .row > .nx-ci-actions {
        display: flex !important;
        flex: 0 0 100%;
        max-width: 100%;
        margin-left: 0;
        margin-top: 12px;
        padding-left: 0;
        padding-right: 0;
    }
}
@media (max-width: 575.98px) {
    #order-nexum .view-cart-items .item .item-title .d-sm-none,
    #order-nexum .view-cart-items .item .item-title .visible-xs-inline {
        display: none !important;
    }
}

#order-nexum .prepend-icon:has(.intl-tel-input) .field-icon {
    display: none;
}
#order-nexum .prepend-icon .intl-tel-input .field,
#order-nexum .prepend-icon .intl-tel-input .form-control,
#order-nexum .intl-tel-input.allow-dropdown .form-control,
#order-nexum .intl-tel-input.allow-dropdown input.field {
    padding-left: 16px !important;
}
#order-nexum .intl-tel-input .selected-flag {
    width: 84px;
    padding-left: 12px;
    background-color: var(--nx-bg);
    border-right: 1px solid var(--nx-border);
    border-top-left-radius: var(--nx-radius-input, 11px);
    border-bottom-left-radius: var(--nx-radius-input, 11px);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
#order-nexum .intl-tel-input:focus-within .selected-flag {
    border-right-color: var(--nx-primary);
}
#order-nexum .intl-tel-input .country-list {
    z-index: 1000;
    min-width: 260px;
    max-height: 240px;
    overflow-y: auto;
}
#order-nexum .intl-tel-input .country-list .country {
    padding: 9px 12px;
    line-height: 1.3;
}
@media (max-width: 500px) {
    #order-nexum .intl-tel-input .country-list {
        min-width: 0;
        width: max-content;
        max-width: min(86vw, 320px);
        max-height: 210px;
    }
    #order-nexum .intl-tel-input .country-list .country { white-space: nowrap; }
}

#order-nexum .nx-itl-search {
    list-style: none;
    position: sticky;
    top: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 10px;
    line-height: normal;
    background: var(--nx-card-bg);
    border-bottom: 1px solid var(--nx-border);
}
#order-nexum .nx-itl-search .material-symbols-rounded {
    font-size: 18px;
    color: var(--nx-muted);
    flex-shrink: 0;
}
#order-nexum .nx-itl-search input,
#order-nexum .nx-itl-search input.form-control {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    height: auto;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
    font-family: var(--nx-font-family);
    font-size: 13.5px;
    font-weight: 400;
    color: var(--nx-text);
}
#order-nexum .nx-itl-search input::placeholder { color: var(--nx-muted); }
#order-nexum .nx-itl-search input:focus,
#order-nexum .nx-itl-search input:focus-visible {
    outline: none;
    box-shadow: none;
    border: 0;
}
/* Focus shows on the row, not as a ring around the input. */
#order-nexum .nx-itl-search:focus-within { border-bottom-color: var(--nx-primary); }
#order-nexum .nx-itl-search:focus-within .material-symbols-rounded { color: var(--nx-primary-text, var(--nx-primary)); }

#order-nexum .nx-itl-empty {
    list-style: none;
    padding: 12px;
    text-align: center;
    font-size: 13px;
    color: var(--nx-muted);
}

#order-nexum .intl-tel-input.allow-dropdown {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    background: var(--nx-card-bg);
    overflow: hidden;
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}
/* The focus ring belongs to the pair now, not to the input alone. */
#order-nexum .intl-tel-input.allow-dropdown:focus-within {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
#order-nexum .intl-tel-input.allow-dropdown .form-control,
#order-nexum .intl-tel-input.allow-dropdown input.field {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
#order-nexum .intl-tel-input.allow-dropdown .selected-flag {
    border-top-left-radius: var(--nx-radius-md);
    border-bottom-left-radius: var(--nx-radius-md);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: 1px solid var(--nx-border);
}
#order-nexum .intl-tel-input.allow-dropdown:focus-within,
#order-nexum .intl-tel-input.allow-dropdown:has(.country-list:not(.hide)) {
    overflow: visible;
}

@media (max-width: 575.98px) {
    #order-nexum .generate-password {
        margin-bottom: 14px;
    }
}

#order-nexum .nx-pay-card #default-captcha-domainchecker {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 12px;
    /* Undoes the .row negative side margins and the .pb-3 the include sets. */
    margin: 0;
    padding-bottom: 0;
}
/* The hint takes its own full-width line above the pair. */
#order-nexum .nx-pay-card #default-captcha-domainchecker .nx-form-hint {
    flex: 0 0 100%;
    margin: 0 0 4px;
    text-align: center;
    color: var(--nx-muted);
    font-size: 13px;
    line-height: 1.5;
}
#order-nexum .nx-pay-card #default-captcha-domainchecker > .col-6 {
    flex: 0 0 auto;
    width: auto;
    max-width: none;
    padding: 0;
}
#order-nexum .nx-pay-card #default-captcha-domainchecker #inputCaptchaImage {
    display: block;
    border-radius: var(--nx-radius-sm, 8px);
}
/* Matches the domain checker's input exactly. */
#order-nexum .nx-pay-card #default-captcha-domainchecker #inputCaptcha {
    width: auto;
    max-width: 130px;
    height: auto;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-sm, 8px);
    background: var(--nx-bg);
    color: var(--nx-text);
    padding: 10px 14px;
    font-size: 14px;
    font-weight: 400;
    box-shadow: none;
    float: none;
}
#order-nexum .nx-pay-card #default-captcha-domainchecker #inputCaptcha:focus {
    outline: none;
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .12);
}
@media (max-width: 400px) {
    #order-nexum .nx-pay-card #default-captcha-domainchecker > .col-6 { flex: 0 0 100%; }
    #order-nexum .nx-pay-card #default-captcha-domainchecker #inputCaptcha {
        max-width: 100%;
        width: 100%;
    }
}

#order-nexum .nx-acct-panel.is-active {
    background: transparent;
}

#order-nexum .nx-sec-card-head {
    padding-bottom: 14px;
    margin-bottom: 18px;
    border-bottom: 1px solid var(--nx-border);
}
#order-nexum .nx-sec-card-head .nx-checkout-title {
    margin: 0;
}

:root,
.modal,
.nx-cart-modal {
    --nx-radius-btn: var(--nx-radius-button, 11px);
    --nx-shadow-card: var(--nx-shadow-sm, 0 1px 2px rgba(16, 24, 40, .04));
}
.nx-cart-modal .modal-footer .btn,
.nx-cart-modal .modal-footer #btnContinueRecommendationsModal {
    border-radius: var(--nx-radius-button, 11px);
}

#order-nexum .nx-cpd-atc-group {
    align-items: stretch;
}
#order-nexum .nx-cpd-atc-group .btn-add-to-cart:hover,
#order-nexum .nx-cpd-atc-group .btn-add-to-cart:focus,
#order-nexum .nx-cpd-atc-group .btn-add-to-cart:focus-visible {
    transform: none;
    box-shadow: none;
}

#order-nexum .nx-cpd-atc-group .btn-add-to-cart {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
#order-nexum .nx-cpd-atc-group .btn-add-to-cart > span {
    justify-content: center;
}

/* Both halves the same height, whatever each one's content is. */
#order-nexum .nx-cpd-atc-group .btn-add-to-cart,
#order-nexum .nx-cpd-atc-group .nx-cpd-btn-remove {
    align-self: stretch;
}

#order-nexum .domain-lookup-result > .nx-cpd-atc-group {
    align-self: stretch;
    width: 100%;
}
#order-nexum .domain-lookup-result > .nx-cpd-atc-group:not(:has(.btn:not(.w-hidden):not([style*="display: none"]):not([style*="display:none"]))) {
    display: none;
}

#order-nexum .nx-cpd-btn-remove {
    background: color-mix(in srgb, var(--nx-primary) 82%, #000);
    box-shadow: inset 1px 0 0 rgba(255, 255, 255, .22);
}
#order-nexum .nx-cpd-btn-remove:hover,
#order-nexum .nx-cpd-btn-remove:focus-visible {
    background: color-mix(in srgb, var(--nx-primary) 62%, #000);
}
#order-nexum .nx-cpd-btn-remove i {
    color: rgba(255, 255, 255, .88);
}
#order-nexum .nx-cpd-btn-remove:hover i,
#order-nexum .nx-cpd-btn-remove:focus-visible i {
    color: #fff;
}

#order-nexum .btn-add-to-cart .loading .fa-spinner {
    margin: 0;
    font-size: 16px;
    line-height: 1;
    color: currentColor;
}

#order-nexum .spotlight-tld .btn-add-to-cart .loading {
    min-width: 0;
}
#order-nexum .domain-suggestion .btn-add-to-cart .loading {
    min-width: calc(11ch + 18px + 7px);
}

/* Icon font unavailable (no Nexum client theme): hide ligature names. */
.nx-no-msym #order-nexum .material-symbols-rounded { display: none !important; }

#order-nexum .nx-checkout-total-banner { display: none; }
#order-nexum .nx-cs-invalid .nx-custom-select-trigger { border-color: var(--nx-danger); }
#order-nexum #existingCardInfo { margin: 12px 0 0; }
#order-nexum .nx-skel-d1 { animation-delay: .12s; }
#order-nexum .nx-skel-d2 { animation-delay: .24s; }
#order-nexum .nx-skel-d3 { animation-delay: .36s; }
#order-nexum .nx-skel-d4 { animation-delay: .48s; }

/* Fallback for the domain filters menu when the client theme does not style it. */
:where(#order-nexum) .nx-dfilters [hidden] { display: none !important; }
:where(#order-nexum) .nx-dfilters { position: relative; display: flex; align-items: center; flex: 0 0 auto; }
:where(#order-nexum) .nx-dfilters-toggle { display: inline-flex; align-items: center; gap: 6px; height: 60px; padding: 0 18px; border: 1px solid var(--nx-border); border-radius: 15px; background: var(--nx-bg); font-size: 14.5px; line-height: 1; color: var(--nx-muted); cursor: pointer; white-space: nowrap; }
:where(#order-nexum) .nx-dfilters-menu,
:where(#order-nexum) .nx-dfilters-panel { position: absolute; z-index: 1080; padding: 8px; background: var(--nx-card-bg); border: 1px solid var(--nx-border); border-radius: var(--nx-radius-card); box-shadow: 0 12px 32px rgba(16, 24, 40, .10); text-align: left; }
:where(#order-nexum) .nx-dfilters-menu { top: calc(100% + 8px); left: 0; min-width: 230px; }
:where(#order-nexum) .nx-dfilters-panel { top: 0; left: calc(100% + 8px); width: 168px; }
:where(#order-nexum) .nx-dfilters-panel-len { width: 130px; }
:where(#order-nexum) .nx-dfilters-row,
:where(#order-nexum) .nx-dfilters-check { display: flex; align-items: center; gap: 10px; width: 100%; margin: 0; padding: 10px 12px; border: 0; border-radius: var(--nx-radius-md); background: transparent; font-size: 13.5px; color: var(--nx-text); cursor: pointer; text-align: left; }
:where(#order-nexum) .nx-dfilters-row:hover,
:where(#order-nexum) .nx-dfilters-check:hover { background: rgba(var(--nx-primary-rgb), .08); }
:where(#order-nexum) .nx-dfilters-label { flex: 1 1 auto; }
:where(#order-nexum) .nx-dfilters-arrow { font-size: 18px; color: var(--nx-muted); }
:where(#order-nexum) .nx-dfilters-count { display: inline-flex; align-items: center; justify-content: center; min-width: 24px; height: 20px; padding: 0 6px; border-radius: var(--nx-radius-badge); background: var(--nx-primary); color: #fff; font-size: 11.5px; }
:where(#order-nexum) .nx-dfilters-search { display: flex; align-items: center; gap: 8px; padding: 6px 10px; margin-bottom: 6px; border-bottom: 1px solid var(--nx-border); }
:where(#order-nexum) .nx-dfilters-search input { flex: 1 1 auto; min-width: 0; border: 0; background: transparent; outline: none; font-size: 13.5px; color: var(--nx-text); }
:where(#order-nexum) .nx-dfilters-list { max-height: 260px; overflow-y: auto; }
:where(#order-nexum) .nx-btn-primary { background: var(--nx-primary); color: #fff; }
:where(#order-nexum) .nx-btn-primary:hover { background: var(--nx-primary-hover); }
@media (max-width: 899.98px) {
    :where(#order-nexum) .nx-dfilters { width: 100%; }
    :where(#order-nexum) .nx-dfilters-toggle { width: 100%; justify-content: flex-start; }
    :where(#order-nexum) .nx-dfilters-menu { left: 0; right: 0; min-width: 0; }
    :where(#order-nexum) .nx-dfilters-panel { left: 0; right: 0; width: auto; }
}

/* Apply credit at checkout: a card like the panels around it. */
#order-nexum #applyCreditContainer {
    background: var(--nx-card-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    box-shadow: var(--nx-shadow-card);
    padding: 20px 22px;
    margin: 20px 0;
}
#order-nexum #applyCreditContainer > p {
    margin: 0 0 12px;
    font-weight: 600;
    color: var(--nx-text);
}
#order-nexum #applyCreditContainer .radio {
    margin: 0;
    padding: 12px 14px;
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md, 10px);
    background: transparent;
    cursor: pointer;
    line-height: 1.45;
}
#order-nexum #applyCreditContainer .radio + .radio { margin-top: 8px; }
#order-nexum #applyCreditContainer .radio:has(input:checked) {
    border-color: var(--nx-primary);
    background: rgba(var(--nx-primary-rgb), .06);
}

/* Recommendations modal: it is rendered outside #order-nexum, so it gets its own rules. */
#recommendationsModal .product-recommendations > p { color: var(--nx-text); margin: 0 0 12px; }
#recommendationsModal .product-recommendation {
    background: var(--nx-card-bg) !important;
    color: var(--nx-text);
    border: 1px solid var(--nx-border) !important;
    border-left: 3px solid var(--nx-rec-accent, var(--nx-primary)) !important;
    border-radius: var(--nx-radius-card, 14px);
    margin: 0 0 10px;
    overflow: hidden;
}
#recommendationsModal .product-recommendation .header,
#recommendationsModal .product-recommendation .content,
#recommendationsModal .product-recommendation .body {
    background: transparent !important;
    border: 0 !important;
}
#recommendationsModal .product-recommendation .headline { color: var(--nx-text) !important; font-weight: 600; }
#recommendationsModal .product-recommendation .tagline,
#recommendationsModal .product-recommendation .truncate { color: var(--nx-muted) !important; }
#recommendationsModal .product-recommendation .price { color: var(--nx-text); }
/* Credit covers the whole order: WHMCS hides the gateways; the card keeps its title and says why. */
#order-nexum .nx-pay-credit-note { display: none; }
#order-nexum .nx-pay-card:has(> #paymentGatewaysContainer[style*="none"]) .nx-pay-credit-note { display: block; }
#order-nexum .nx-pay-card:has(> #paymentGatewaysContainer[style*="none"]) > .nx-pay-details { display: none; }
#order-nexum .nx-pay-credit-note .nx-gw-head-count { margin-bottom: 0; max-width: none; }
/* Dark mode: the tinted Add buttons need lighter text to stay readable. */
.nx-dark #order-nexum .spotlight-tld .btn-add-to-cart,
.nx-dark #order-nexum .domain-suggestion .btn-add-to-cart {
    background: rgba(var(--nx-primary-rgb), .22);
    color: var(--nx-text);
}
.nx-dark #order-nexum .spotlight-tld .btn-add-to-cart:hover,
.nx-dark #order-nexum .domain-suggestion .btn-add-to-cart:hover {
    background: var(--nx-primary);
    color: #fff;
}

/* Primary-coloured text: the darker dark-mode primary is for fills; text uses the link colour. */
.nx-dark { --nx-primary-text: var(--nx-link, #5686ef); }
/* Recommendations modal header: readable in both modes, title left and close right. */
#recommendationsModal .modal-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: transparent !important;
    border-bottom: 1px solid var(--nx-border);
    padding: 16px 20px;
}
#recommendationsModal .modal-header h4 {
    float: none !important;
    margin: 0;
    font-size: var(--nx-font-size-lg, 17px);
    font-weight: 600;
    color: var(--nx-text) !important;
}
#recommendationsModal .modal-header .close {
    float: none !important;
    margin: 0 0 0 auto;
    padding: 4px 8px;
    color: var(--nx-muted) !important;
    opacity: 1;
    text-shadow: none;
    font-size: 24px;
    line-height: 1;
}
#recommendationsModal .modal-header .close:hover { color: var(--nx-text) !important; }
#recommendationsModal .modal-header .clearfix { display: none; }

/* ================= GATEWAY CONTAINERS =================
   Gateway modules inject their own markup, iframes and stylesheets into the checkout. Their ids and
   classes are never renamed; these rules only restyle the containers so they follow the theme. The
   extra #frmCheckout outranks a module's own "#frmCheckout.<gateway>-payment-form #id" rules. */
#order-nexum #frmCheckout #creditCardInputFields {
    background: var(--nx-bg);
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-card, 14px);
    padding: 20px;
    text-align: left;
    color: var(--nx-text);
}
#order-nexum #frmCheckout #creditCardInputFields > ul,
#order-nexum #frmCheckout #creditCardInputFields > ul.selected {
    display: block;
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    margin: 8px 0 0;
    text-align: left;
}
#order-nexum #frmCheckout #creditCardInputFields .payment-instructions {
    color: var(--nx-muted);
    text-align: left;
    margin: 0 0 12px;
}
#order-nexum #frmCheckout [id$="_input_container"],
#order-nexum #frmCheckout [id$="_input_container_button"] {
    background: transparent;
    max-width: 100%;
}
#order-nexum #frmCheckout #paymentGatewayInput:empty { display: none; }
#order-nexum #frmCheckout .iframe-input-container,
#order-nexum #frmCheckout #paymentGatewayInput iframe { max-width: 100%; }
#order-nexum #frmCheckout #paymentGatewayInput iframe { border: 0; border-radius: var(--nx-radius-md); }

/* Stripe: the card number, expiry and CVC on one row at full width instead of Bootstrap's offset columns. */
#order-nexum #stripeElements { margin-bottom: 0; }
#order-nexum #stripeElements > .row { margin: 0 0 12px; justify-content: center; }
#order-nexum #stripeElements > .row > [class*="col-"] { flex: 0 1 auto; max-width: 100%; margin-left: 0; padding: 0; }
#order-nexum #stripeElements .stripe-cards-inputs {
    flex: none;
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    padding: 0;
}
#order-nexum #stripeElements .stripe-cards-inputs > .row {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr);
    gap: 12px;
    margin: 0;
}
#order-nexum #stripeElements .stripe-cards-inputs > .row > [class*="col-"] {
    flex: none;
    width: auto;
    max-width: none;
    padding: 0;
}
#order-nexum #stripeElements label {
    display: block;
    font-size: 13px;
    font-weight: 400;
    color: var(--nx-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-bottom: 6px;
}
#order-nexum #stripeElements .StripeElement.form-control {
    border: 1px solid var(--nx-border);
    border-radius: var(--nx-radius-md);
    height: 42px;
    padding: 11px 14px;
    transition: border-color var(--nx-transition), box-shadow var(--nx-transition);
}
#order-nexum #stripeElements .StripeElement--focus {
    border-color: var(--nx-primary);
    box-shadow: 0 0 0 3px rgba(var(--nx-primary-rgb), .15);
}
#order-nexum #stripeElements .StripeElement--invalid { border-color: var(--nx-danger, #f04438); }
@media (max-width: 575.98px) {
    #order-nexum #stripeElements .stripe-cards-inputs > .row { grid-template-columns: 1fr 1fr; }
    #order-nexum #stripeElements .stripe-cards-inputs > .row > [class*="col-"]:first-child { grid-column: 1 / -1; }
}
