#order-standard_cart {
    --snetti-primary: #219c90;
    --snetti-primary-strong: #187c73;
    --snetti-ink: #0f2230;
    --snetti-muted: #637381;
    --snetti-border: #d9e5e7;
    --snetti-surface: #ffffff;
    --snetti-surface-soft: #f4f8f8;
}

#order-standard_cart .header-lined h1 {
    color: var(--snetti-ink);
    font-weight: 800;
    letter-spacing: -.03em;
}

#order-standard_cart .header-lined p,
#order-standard_cart .product-desc,
#order-standard_cart .product-info,
#order-standard_cart .summary-container {
    color: var(--snetti-muted);
}

#order-standard_cart .product,
#order-standard_cart .product-info,
#order-standard_cart .order-summary,
#order-standard_cart .view-cart-items,
#order-standard_cart .domain-selection-options .option,
#order-standard_cart .field-container,
#order-standard_cart .sub-heading span {
    border-color: var(--snetti-border);
    border-radius: 1rem;
    background: var(--snetti-surface);
}

/* Existing-account selector (checkout "switch account"). The parent
   standard_cart forces #f6f6f6 tiles and a #fff active tile with no text
   colour, so the selected account is unreadable on dark and looks raw on
   light. Tie the tiles to the surface palette in both modes. */
#order-standard_cart .account-select-container {
    border-right-color: var(--snetti-border);
}

#order-standard_cart .account-select-container div.account {
    border-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

#order-standard_cart .account-select-container div.account.active {
    border-color: var(--snetti-primary);
    background: var(--snetti-surface);
    box-shadow: inset 3px 0 0 var(--snetti-primary);
}

#order-standard_cart .account-select-container .address strong {
    color: var(--snetti-ink);
}

#order-standard_cart .account-select-container .address .small {
    color: var(--snetti-muted);
}

/* --- Available addons, promo box, gateway notice, selected domain, credit
   The parent standard_cart hard-codes #fff/#e8e8e8/#efefef/#333/#ccc on these
   surfaces with no text colour, so they read as light slabs / light-on-light
   in dark mode and look raw in light mode. Tie them to the cart palette. --- */

#order-standard_cart .addon-products .panel-addon {
    overflow: hidden;
    border: 1px solid var(--snetti-border);
    border-radius: 1rem;
    background: var(--snetti-surface);
    color: var(--snetti-ink);
    box-shadow: 0 18px 50px -44px rgba(15, 34, 48, .5);
    transition: border-color .18s ease, box-shadow .18s ease;
}

#order-standard_cart .panel-addon:hover {
    border-color: rgba(33, 156, 144, .55);
    box-shadow: 0 22px 60px -42px rgba(15, 34, 48, .38);
}

#order-standard_cart .panel-addon .panel-body {
    color: var(--snetti-muted);
}

#order-standard_cart .panel-addon .panel-body label {
    color: var(--snetti-ink);
}

#order-standard_cart .panel-addon .panel-price {
    border-top: 1px solid var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-primary);
    font-weight: 800;
}

#order-standard_cart .panel-addon .panel-add {
    background: var(--snetti-primary);
    color: #fff;
}

#order-standard_cart .panel-addon-selected {
    border-color: var(--snetti-primary);
    box-shadow: 0 0 0 1px var(--snetti-primary), 0 22px 60px -42px rgba(15, 34, 48, .38);
}

#order-standard_cart .panel-addon-selected .panel-add {
    background: var(--snetti-primary-strong);
    color: #fff;
}

/* Promotion code box + gateway checkout notice. */
#order-standard_cart .view-cart-promotion-code {
    border: 1px dashed var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

#order-standard_cart .view-cart-gateway-checkout {
    background: var(--snetti-surface-soft);
    color: var(--snetti-muted);
}

/* Selected domain option + apply-credit box. */
#order-standard_cart .domain-selection-options .option-selected {
    background: var(--snetti-surface-soft);
}

#order-standard_cart .apply-credit-container {
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

/* Usage-based metric pricing modal table header. */
#order-standard_cart .modal-metric-pricing .table th {
    color: var(--snetti-ink);
}

/* Domain & service renewals (cart.php?a=renewdomains). The parent forces
   #f8f8f8/#f4f4f4 tile backgrounds with #ccc dividers and a #fff search box,
   so the renewal list reads as a light slab in dark mode. Theme the tiles,
   dividers, search box and ineligible text. */
#order-standard_cart .domain-renewals,
#order-standard_cart .service-renewals {
    border-top-color: var(--snetti-border);
    background-color: var(--snetti-surface-soft);
}

#order-standard_cart .domain-renewals .domain-renewal,
#order-standard_cart .service-renewals .service-renewal,
#order-standard_cart .addon-renewals .service-renewal {
    border-bottom-color: var(--snetti-border);
}

#order-standard_cart .domain-renewals .domain-renewal:nth-child(even),
#order-standard_cart .service-renewals .service-renewal:nth-child(even),
#order-standard_cart .addon-renewals .service-renewal:nth-child(even) {
    background-color: var(--snetti-surface);
}

#order-standard_cart .domain-renewals .domain-renewal h3,
#order-standard_cart .service-renewals .service-renewal h3,
#order-standard_cart p.domain-renewal-desc {
    color: var(--snetti-ink);
}

#order-standard_cart .service-renewals .div-renewal-ineligible {
    color: var(--snetti-muted);
}

/* Renewal search box — same hard-coded #fff+search.png as the DataTables
   filter; replace with an inline currentColor magnifier on the themed surface. */
#order-standard_cart .form-control.domain-renewals-filter,
#order-standard_cart .form-control.service-renewals-filter {
    padding-left: 2.6rem !important;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237f8c9a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: .8rem center !important;
    background-size: 1rem 1rem !important;
    background-color: var(--snetti-surface) !important;
    border-color: var(--snetti-border) !important;
    color: var(--snetti-ink) !important;
}

/* --- Domain availability results ---------------------------------------- */
/* The parent renders availability as faint green/red text with no container,
   and the transfer boxes as raw pastel slabs. Turn each state into a clear,
   padded status panel with an accent border + icon color so available vs.
   unavailable vs. invalid are unmistakable in both light and dark modes. */

/* Status tokens — the *background* and *border* carry the semantic hue
   (green / red / neutral), while the body text uses the high-contrast ink
   token so the message is always readable. Only the domain name (strong)
   takes the saturated status colour as an accent. */
#order-standard_cart {
    --snetti-status-ok-text: #166534;
    --snetti-status-ok-bg: #ecfdf5;
    --snetti-status-ok-border: #22c55e;
    --snetti-status-bad-text: #991b1b;
    --snetti-status-bad-bg: #fef2f2;
    --snetti-status-bad-border: #ef4444;
    --snetti-status-neutral-text: #334155;
    --snetti-status-neutral-bg: #f1f5f9;
    --snetti-status-neutral-border: #94a3b8;
}

/* Headline result rows (".headline") — available / unavailable / invalid. */
#order-standard_cart .domain-available,
#order-standard_cart .domain-checker-available {
    margin: 1rem auto;
    padding: 1rem 1.25rem;
    border: 1px solid var(--snetti-status-ok-border);
    border-left-width: 4px;
    border-radius: .75rem;
    background: var(--snetti-status-ok-bg);
    color: var(--snetti-ink);
    font-weight: 700;
}

#order-standard_cart .domain-available strong,
#order-standard_cart .domain-checker-available strong {
    color: var(--snetti-status-ok-text);
}

#order-standard_cart .domain-unavailable,
#order-standard_cart .domain-checker-unavailable,
#order-standard_cart .domain-checker-invalid,
#order-standard_cart .domain-error {
    margin: 1rem auto;
    padding: 1rem 1.25rem;
    border: 1px solid var(--snetti-status-bad-border);
    border-left-width: 4px;
    border-radius: .75rem;
    background: var(--snetti-status-bad-bg);
    color: var(--snetti-ink);
    font-weight: 700;
}

#order-standard_cart .domain-unavailable strong,
#order-standard_cart .domain-checker-unavailable strong,
#order-standard_cart .domain-checker-invalid strong,
#order-standard_cart .domain-error strong {
    color: var(--snetti-status-bad-text);
}

/* Contact-support "button" sits among the headlines; keep it as a real button. */
#order-standard_cart .domain-contact-support {
    display: inline-block;
    margin: .5rem auto;
}

/* Transfer eligibility boxes. */
#order-standard_cart .transfer-eligible {
    border: 1px solid var(--snetti-status-ok-border);
    border-left-width: 4px;
    border-radius: .75rem;
    background: var(--snetti-status-ok-bg);
    color: var(--snetti-ink);
}

#order-standard_cart .transfer-eligible .headline,
#order-standard_cart .transfer-eligible p.domain-checker-available {
    color: var(--snetti-status-ok-text);
}

#order-standard_cart .transfer-not-eligible {
    border: 1px solid var(--snetti-status-neutral-border);
    border-left-width: 4px;
    border-radius: .75rem;
    background: var(--snetti-status-neutral-bg);
    color: var(--snetti-ink);
}

#order-standard_cart .transfer-not-eligible .headline,
#order-standard_cart .transfer-not-eligible p,
#order-standard_cart .domain-invalid p,
#order-standard_cart .domain-invalid .headline {
    color: var(--snetti-status-neutral-text);
}

#order-standard_cart .domain-invalid {
    border: 1px solid var(--snetti-status-bad-border);
    border-left-width: 4px;
    border-radius: .75rem;
    background: var(--snetti-status-bad-bg);
    color: var(--snetti-ink);
}

/* Dark-mode status tokens — deep tinted backgrounds; body text follows the
   light page-text token, and only the domain-name accent takes the hue. */
html[data-snetti-theme="dark"] #order-standard_cart {
    --snetti-status-ok-text: #4ade80;
    --snetti-status-ok-bg: rgba(34, 197, 94, .14);
    --snetti-status-ok-border: rgba(34, 197, 94, .5);
    --snetti-status-bad-text: #f87171;
    --snetti-status-bad-bg: rgba(239, 68, 68, .16);
    --snetti-status-bad-border: rgba(239, 68, 68, .52);
    --snetti-status-neutral-text: #94a3b8;
    --snetti-status-neutral-bg: rgba(148, 163, 184, .14);
    --snetti-status-neutral-border: rgba(148, 163, 184, .42);
}

#order-standard_cart .product {
    overflow: hidden;
    box-shadow: 0 22px 60px -48px rgba(15, 34, 48, .55);
    transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

#order-standard_cart .product:hover {
    border-color: rgba(33, 156, 144, .55);
    box-shadow: 0 24px 70px -42px rgba(15, 34, 48, .38);
    transform: translateY(-4px);
}

#order-standard_cart .product header {
    border-bottom-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
    font-weight: 800;
}

#order-standard_cart .product .product-pricing .price,
#order-standard_cart .total-due-today .amt {
    color: var(--snetti-primary);
    font-weight: 800;
}

#order-standard_cart .btn-primary,
#order-standard_cart .btn-success,
#order-standard_cart .domain-lookup-result .btn-primary {
    border-color: var(--snetti-primary);
    background: var(--snetti-primary);
    color: #fff;
}

#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-success:hover,
#order-standard_cart .btn-primary:focus,
#order-standard_cart .btn-success:focus {
    border-color: var(--snetti-primary-strong);
    background: var(--snetti-primary-strong);
}

/* Theme-aware Suggested Domains panel and indeterminate lookup line. */
#order-standard_cart .suggested-domains {
    position: relative;
    overflow: hidden;
    margin: 1.5rem 0;
    border: 1px solid var(--snetti-border);
    border-radius: 1rem;
    background: var(--snetti-surface);
    color: var(--snetti-ink);
    box-shadow: 0 20px 54px -44px rgba(15, 34, 48, .55);
}

#order-standard_cart .suggested-domains .panel-heading,
#order-standard_cart .suggested-domains .card-header {
    padding: 1rem 1.25rem;
    border-bottom: 2px solid var(--snetti-primary);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
    font-weight: 800;
}

#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader {
    position: relative;
    overflow: hidden;
    min-height: 5.25rem;
    padding: 1.75rem 1.25rem;
    border-bottom: 1px solid var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-muted);
    opacity: 1;
    text-align: center;
}

#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader i {
    color: var(--snetti-primary);
}

#order-standard_cart .suggested-domains.is-progressive-loading .domain-lookup-suggestions-loader {
    display: flex !important;
    align-items: center;
    gap: .7rem;
    min-height: 0;
    padding: .85rem 1.25rem;
    background: var(--snetti-surface-soft);
    color: var(--snetti-muted);
    text-align: left;
}

#order-standard_cart .snetti-domain-progress-icon,
#order-standard_cart .snetti-domain-placeholder-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background: rgba(33, 156, 144, .13);
    color: var(--snetti-primary);
}

#order-standard_cart .snetti-domain-progress-label {
    color: var(--snetti-muted);
    font-size: .9rem;
}

#order-standard_cart .snetti-domain-progress-label strong {
    color: var(--snetti-ink);
    font-weight: 800;
}

#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader::before,
#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 3px;
    content: "";
}

#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader::before {
    background: var(--snetti-border);
}

#order-standard_cart .suggested-domains .domain-lookup-suggestions-loader::after {
    width: 38%;
    border-radius: 999px;
    background: linear-gradient(90deg, transparent, var(--snetti-primary), transparent);
    animation: snetti-domain-suggestions-loading 1.25s ease-in-out infinite;
}

#order-standard_cart .suggested-domains .list-group,
#order-standard_cart .suggested-domains .list-group-item,
#order-standard_cart .suggested-domains .panel-footer,
#order-standard_cart .suggested-domains .card-footer,
#order-standard_cart .suggested-domains .domain-suggestions-warning {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

#order-standard_cart .suggested-domains .list-group-item {
    transition: background-color .18s ease;
}

#order-standard_cart .suggested-domains .list-group-item:hover {
    background: var(--snetti-surface-soft);
}

#order-standard_cart .suggested-domains .snetti-domain-placeholder {
    display: grid !important;
    grid-template-columns: 2rem minmax(0, 1fr) 5.5rem;
    gap: .85rem;
    align-items: center;
    min-height: 4.6rem;
    padding: .75rem 1rem;
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
    text-align: left;
}

#order-standard_cart .snetti-domain-placeholder-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .15rem;
}

#order-standard_cart .snetti-domain-placeholder-name {
    overflow: hidden;
    color: var(--snetti-ink);
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#order-standard_cart .snetti-domain-placeholder-status {
    color: var(--snetti-muted);
    font-size: .78rem;
}

#order-standard_cart .snetti-domain-placeholder-action {
    width: 5.5rem;
    height: 2rem;
    border-radius: .55rem;
    background: var(--snetti-surface-soft);
    box-shadow: inset 0 0 0 1px var(--snetti-border);
}

#order-standard_cart .suggested-domains .snetti-domain-result-enter {
    animation: snetti-domain-result-enter .24s ease-out both;
}

#order-standard_cart .suggested-domains .price,
#order-standard_cart .suggested-domains .more-suggestions a {
    color: var(--snetti-primary);
}

/* Suggested domains with normal pricing should expose one clear purchase action. */
#order-standard_cart .suggested-domains .domain-contact-support {
    display: none !important;
}

#order-standard_cart .suggested-domains .btn-add-to-cart {
    border-color: var(--snetti-primary);
    background: var(--snetti-primary);
    color: #fff;
    font-weight: 700;
}

#order-standard_cart .suggested-domains .btn-add-to-cart:hover,
#order-standard_cart .suggested-domains .btn-add-to-cart:focus,
#order-standard_cart .suggested-domains .btn-add-to-cart.checkout {
    border-color: var(--snetti-primary-strong);
    background: var(--snetti-primary-strong);
    color: #fff;
}

#order-standard_cart .suggested-domains .domain-suggestions-warning,
#order-standard_cart .suggested-domains .domain-suggestions-warning p,
#order-standard_cart .suggested-domains .no-more {
    color: var(--snetti-muted);
}

@keyframes snetti-domain-suggestions-loading {
    from {
        transform: translateX(-110%);
    }
    to {
        transform: translateX(275%);
    }
}

@keyframes snetti-domain-result-enter {
    from {
        opacity: 0;
        transform: translateY(6px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Automatic availability verification of revealed suggestions (theme.js).
   While a suggestion is being looked up its action area becomes a thick
   shimmering placeholder line; rows that come back taken are dimmed and fall
   back to WHMCS's native unavailable button state. */
#order-standard_cart .suggested-domains .snetti-check-running .actions > *:not(.snetti-domain-check-skeleton) {
    display: none !important;
}

#order-standard_cart .suggested-domains .snetti-check-running .actions {
    min-width: 7.5rem;
}

#order-standard_cart .suggested-domains .snetti-domain-check-skeleton {
    display: inline-block;
    width: 6.5rem;
    height: 1.1rem;
    border-radius: 999px;
    background: linear-gradient(90deg,
        var(--snetti-surface-soft) 0%,
        var(--snetti-border) 50%,
        var(--snetti-surface-soft) 100%);
    background-size: 200% 100%;
    box-shadow: inset 0 0 0 1px var(--snetti-border);
    animation: snetti-domain-check-shimmer 1.1s linear infinite;
    vertical-align: middle;
}

#order-standard_cart .suggested-domains .snetti-check-taken {
    color: var(--snetti-muted);
}

#order-standard_cart .suggested-domains .snetti-check-taken .domain,
#order-standard_cart .suggested-domains .snetti-check-taken .extension {
    opacity: .6;
    text-decoration: line-through;
    text-decoration-color: var(--snetti-status-neutral-border);
}

#order-standard_cart .suggested-domains .snetti-check-taken .btn-add-to-cart,
#order-standard_cart .suggested-domains .snetti-check-taken .btn-add-to-cart:hover,
#order-standard_cart .suggested-domains .snetti-check-taken .btn-add-to-cart:focus {
    border-color: var(--snetti-status-neutral-border);
    background: var(--snetti-status-neutral-bg);
    color: var(--snetti-status-neutral-text);
    cursor: not-allowed;
}

@keyframes snetti-domain-check-shimmer {
    from {
        background-position: 200% 0;
    }
    to {
        background-position: -200% 0;
    }
}

/* Vertical payment-method accordion (progressively enhanced by theme.js). */
#order-standard_cart #paymentGatewaysContainer {
    margin: 1.5rem 0;
}

#order-standard_cart #paymentGatewaysContainer > .small {
    margin-bottom: .75rem;
    color: var(--snetti-muted) !important;
}

#order-standard_cart .snetti-payment-accordion {
    display: flex;
    flex-direction: column;
    gap: .75rem;
    text-align: left;
}

#order-standard_cart .snetti-payment-item {
    overflow: hidden;
    border: 1px solid var(--snetti-border);
    border-radius: 1rem;
    background: var(--snetti-surface);
    box-shadow: 0 12px 34px -30px rgba(15, 34, 48, .5);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

#order-standard_cart .snetti-payment-item:hover {
    border-color: rgba(33, 156, 144, .58);
    transform: translateY(-1px);
}

#order-standard_cart .snetti-payment-item:focus-within {
    outline: 3px solid rgba(33, 156, 144, .2);
    outline-offset: 2px;
}

#order-standard_cart .snetti-payment-item.is-selected {
    border-color: var(--snetti-primary);
    box-shadow: 0 18px 46px -32px rgba(24, 124, 115, .72);
}

#order-standard_cart .snetti-payment-item.is-selected.has-details {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

#order-standard_cart .snetti-payment-tab {
    display: grid;
    grid-template-columns: 2.75rem minmax(0, 1fr) auto auto;
    gap: .85rem;
    align-items: center;
    width: 100%;
    min-height: 4.5rem;
    margin: 0;
    padding: .8rem 1rem;
    background: var(--snetti-surface);
    color: var(--snetti-ink);
    cursor: pointer;
    text-align: left;
}

#order-standard_cart .snetti-payment-item.is-selected .snetti-payment-tab {
    background: linear-gradient(90deg, rgba(33, 156, 144, .11), rgba(33, 156, 144, .025));
}

#order-standard_cart .snetti-payment-icon {
    display: block;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: .7rem;
    object-fit: contain;
    box-shadow: 0 7px 20px -15px rgba(15, 34, 48, .55);
}

#order-standard_cart .snetti-payment-name {
    min-width: 0;
    color: inherit;
    font-size: 1rem;
    font-weight: 750;
    line-height: 1.3;
}

#order-standard_cart .snetti-payment-tab > .iradio_square-blue,
#order-standard_cart .snetti-payment-tab > input[type="radio"] {
    margin: 0;
}

#order-standard_cart .snetti-payment-chevron {
    width: .68rem;
    height: .68rem;
    margin: 0 .2rem 0 .1rem;
    border-right: 2px solid var(--snetti-muted);
    border-bottom: 2px solid var(--snetti-muted);
    transform: rotate(45deg) translateY(-2px);
    transition: border-color .18s ease, transform .18s ease;
}

#order-standard_cart .snetti-payment-item.is-selected .snetti-payment-chevron {
    border-color: var(--snetti-primary);
    transform: rotate(225deg) translate(-2px, -2px);
}

#order-standard_cart .snetti-payment-details {
    display: none;
}

#order-standard_cart .snetti-payment-accordion.has-payment-details .snetti-payment-details {
    display: block;
    margin-top: -.75rem;
    padding: 1rem;
    border: 1px solid var(--snetti-primary);
    border-top: 0;
    border-radius: 0 0 1rem 1rem;
    background: var(--snetti-surface-soft);
    box-shadow: 0 18px 46px -32px rgba(24, 124, 115, .72);
}

#order-standard_cart .snetti-payment-details > :last-child {
    margin-bottom: 0;
}

#order-standard_cart .snetti-payment-notice {
    margin: 0;
    padding: .85rem 1rem;
    border: 1px solid rgba(33, 156, 144, .32);
    border-radius: .75rem;
    background: rgba(33, 156, 144, .08);
    color: var(--snetti-ink);
    font-size: .94rem;
    line-height: 1.55;
}

#order-standard_cart .snetti-payment-details .cc-input-container {
    margin: 0;
    border: 0;
    border-radius: .75rem;
    box-shadow: none;
}

html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-item,
html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-tab {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-item:hover {
    border-color: rgba(45, 196, 176, .58);
}

html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-item.is-selected {
    border-color: #2dc4b0;
    box-shadow: 0 18px 48px -30px rgba(45, 196, 176, .42);
}

html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-item.is-selected .snetti-payment-tab {
    background: linear-gradient(90deg, rgba(45, 196, 176, .14), rgba(45, 196, 176, .025));
}

html[data-snetti-theme="dark"] #order-standard_cart .snetti-payment-accordion.has-payment-details .snetti-payment-details {
    border-color: #2dc4b0;
    background: #0d1520;
}

@media (max-width: 575px) {
    #order-standard_cart .snetti-payment-tab {
        grid-template-columns: 2.5rem minmax(0, 1fr) auto auto;
        gap: .65rem;
        min-height: 4.15rem;
        padding: .7rem .75rem;
    }

    #order-standard_cart .snetti-payment-icon {
        width: 2.5rem;
        height: 2.5rem;
    }

    #order-standard_cart .snetti-payment-accordion.has-payment-details .snetti-payment-details {
        padding: .75rem;
    }
}

#order-standard_cart .btn {
    border-radius: .65rem;
    font-weight: 700;
}

#order-standard_cart .form-control,
#order-standard_cart .custom-select,
#order-standard_cart .input-group-text {
    border-color: var(--snetti-border);
    border-radius: .65rem;
}

#order-standard_cart .form-control:focus,
#order-standard_cart .custom-select:focus {
    border-color: rgba(33, 156, 144, .65);
    box-shadow: 0 0 0 .2rem rgba(33, 156, 144, .12);
}

#order-standard_cart .cart-sidebar .list-group-item.active,
#order-standard_cart .cart-sidebar .list-group-item.active:hover,
#order-standard_cart .sidebar-collapsed .panel-heading {
    border-color: var(--snetti-primary);
    background: var(--snetti-primary);
}

#order-standard_cart .order-summary {
    overflow: hidden;
    border: 1px solid var(--snetti-border);
    box-shadow: 0 24px 70px -48px rgba(15, 34, 48, .5);
}

#order-standard_cart .order-summary h2 {
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

#order-standard_cart .view-cart-items-header,
#order-standard_cart .empty-cart {
    border-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
}

#order-standard_cart.snetti-catalog {
    --snetti-catalog-primary: #2f9fe7;
    --snetti-catalog-accent: #2f9fe7;
    --snetti-catalog-accent-strong: #177fc0;
    --snetti-catalog-accent-contrast: #ffffff;
    --snetti-catalog-check: #2563eb;
    --snetti-catalog-section: #ffffff;
    --snetti-catalog-featured: #eff8ff;
    --snetti-catalog-featured-border: #2f9fe7;
    --snetti-catalog-card: #ffffff;
    --snetti-catalog-line: #dfe7ef;
    --snetti-catalog-copy: #637381;
    --snetti-catalog-heading: #111827;
    margin: 2.5rem auto 0;
    max-width: 1380px;
    padding: 0 1rem 3rem;
}

#order-standard_cart.snetti-catalog--hosting {
    --snetti-catalog-primary: #2f9fe7;
    --snetti-catalog-accent: #3b0738;
    --snetti-catalog-accent-strong: #250323;
    --snetti-catalog-accent-contrast: #ffffff;
    --snetti-catalog-button: #fbbf24;
    --snetti-catalog-button-hover: #f59e0b;
    --snetti-catalog-button-contrast: #18181b;
    --snetti-catalog-check: #4d7c0f;
    --snetti-catalog-section: #fafafa;
    --snetti-catalog-featured: #f2faee;
    --snetti-catalog-featured-border: #047857;
}

#order-standard_cart.snetti-catalog--wordpress {
    --snetti-catalog-primary: #2f9fe7;
    --snetti-catalog-accent: #047857;
    --snetti-catalog-accent-strong: #065f46;
    --snetti-catalog-accent-contrast: #ffffff;
    --snetti-catalog-button: #34d399;
    --snetti-catalog-button-hover: #10b981;
    --snetti-catalog-button-contrast: #052e16;
    --snetti-catalog-check: #047857;
    --snetti-catalog-section: #ecfdf5;
    --snetti-catalog-featured: #e7f9f0;
    --snetti-catalog-featured-border: #047857;
}

#order-standard_cart.snetti-catalog--email {
    --snetti-catalog-primary: #2f9fe7;
    --snetti-catalog-accent: #2f9fe7;
    --snetti-catalog-accent-strong: #177fc0;
    --snetti-catalog-accent-contrast: #ffffff;
    --snetti-catalog-button: #49aff0;
    --snetti-catalog-button-hover: #2f9fe7;
    --snetti-catalog-button-contrast: #ffffff;
    --snetti-catalog-check: #2563eb;
    --snetti-catalog-section: #f3f9fd;
    --snetti-catalog-featured: #edf8ff;
    --snetti-catalog-featured-border: #2f9fe7;
}

#order-standard_cart.snetti-catalog--ssl {
    --snetti-catalog-primary: #2f9fe7;
    --snetti-catalog-accent: #7c3aed;
    --snetti-catalog-accent-strong: #6d28d9;
    --snetti-catalog-accent-contrast: #ffffff;
    --snetti-catalog-button: #7c3aed;
    --snetti-catalog-button-hover: #6d28d9;
    --snetti-catalog-button-contrast: #ffffff;
    --snetti-catalog-check: #7c3aed;
    --snetti-catalog-section: #faf7ff;
    --snetti-catalog-featured: #f4edff;
    --snetti-catalog-featured-border: #7c3aed;
}

#order-standard_cart .snetti-catalog-shell {
    border-radius: 1.5rem;
    background:
        radial-gradient(circle at 50% -10%, color-mix(in srgb, var(--snetti-catalog-accent) 9%, transparent), transparent 34rem),
        var(--snetti-catalog-section);
    padding: 2.5rem 2rem;
}

#order-standard_cart .snetti-catalog-hero {
    margin: 0 auto;
    max-width: 66rem;
    text-align: center;
}

/* Temporary product-group campaign strip; removal steps live in snetti-promo-banner.php. */
#order-standard_cart .snetti-catalog-promo-strip {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .55rem 1rem;
    width: min(100%, 54rem);
    margin: 0 auto 1.25rem;
    padding: .65rem 1rem;
    border: 1px solid color-mix(in srgb, var(--snetti-catalog-accent) 36%, var(--snetti-catalog-line));
    border-radius: .7rem;
    background: color-mix(in srgb, var(--snetti-catalog-accent) 8%, var(--snetti-catalog-card));
    color: var(--snetti-catalog-heading);
    line-height: 1.35;
}

#order-standard_cart .snetti-catalog-promo-strip__offer {
    flex: 0 0 auto;
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    font-weight: 900;
    letter-spacing: -.025em;
    text-transform: uppercase;
}

#order-standard_cart .snetti-catalog-promo-strip__offer > span + span {
    margin-inline-start: .25em;
}

#order-standard_cart .snetti-catalog-promo-strip__highlight {
    color: var(--snetti-catalog-primary);
}

#order-standard_cart .snetti-catalog-promo-strip__message {
    font-size: .82rem;
    font-weight: 800;
}

#order-standard_cart .snetti-catalog-eyebrow {
    margin: 0;
    color: var(--snetti-catalog-primary);
    font-size: .875rem;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
}

#order-standard_cart .snetti-catalog-hero h1 {
    margin: .45rem 0 0;
    color: var(--snetti-catalog-heading);
    font-size: clamp(2.35rem, 5vw, 3.4rem);
    font-weight: 850;
    letter-spacing: -.045em;
    line-height: 1.06;
}

#order-standard_cart .snetti-catalog-tagline {
    margin: .85rem auto 0;
    max-width: 46rem;
    color: var(--snetti-catalog-copy);
    font-size: 1rem;
    line-height: 1.75;
}

#order-standard_cart .snetti-catalog-benefits {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .8rem 2rem;
    margin: 1.35rem auto 0;
    color: var(--snetti-catalog-heading);
    font-size: .875rem;
    font-weight: 700;
}

#order-standard_cart .snetti-catalog-benefits span {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
}

#order-standard_cart .snetti-catalog-benefits i {
    color: var(--snetti-catalog-check);
    font-size: 1.1rem;
}

#order-standard_cart .snetti-billing-toggle {
    display: inline-flex;
    margin: 1.55rem auto 0;
    padding: .25rem;
    border: 1px solid var(--snetti-catalog-line);
    border-radius: 999px;
    background: var(--snetti-catalog-card);
    box-shadow: 0 8px 26px -20px rgba(15, 23, 42, .5);
}

#order-standard_cart .snetti-billing-toggle button {
    min-width: 6rem;
    min-height: 2.15rem;
    padding: .35rem 1.15rem;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--snetti-catalog-copy);
    font-size: .875rem;
    font-weight: 750;
    transition: background-color .18s ease, color .18s ease, box-shadow .18s ease;
}

#order-standard_cart .snetti-billing-toggle button:hover {
    color: var(--snetti-catalog-heading);
}

#order-standard_cart .snetti-billing-toggle button.is-active {
    background: var(--snetti-catalog-primary);
    color: var(--snetti-catalog-accent-contrast);
    box-shadow: 0 8px 18px -12px var(--snetti-catalog-primary);
}

#order-standard_cart .snetti-billing-toggle button:focus-visible,
#order-standard_cart .snetti-order-button:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--snetti-catalog-primary) 42%, transparent);
    outline-offset: 3px;
}

#order-standard_cart .snetti-product-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(245px, 1fr));
    gap: 2.5rem 1.15rem;
    margin-top: 3rem;
}

#order-standard_cart .snetti-product-card {
    position: relative;
    display: flex;
    min-width: 0;
    min-height: 100%;
    flex-direction: column;
    overflow: visible;
    border: 1px solid var(--snetti-catalog-line);
    border-radius: .85rem;
    background: var(--snetti-catalog-card);
    box-shadow: 0 12px 35px -28px rgba(15, 23, 42, .65);
    transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

#order-standard_cart .snetti-product-card:hover {
    transform: translateY(-4px);
    border-color: color-mix(in srgb, var(--snetti-catalog-accent) 52%, var(--snetti-catalog-line));
    box-shadow: 0 24px 44px -30px rgba(15, 23, 42, .68);
}

#order-standard_cart .snetti-product-card.is-featured {
    border-color: color-mix(in srgb, var(--snetti-catalog-featured-border) 70%, transparent);
    background: var(--snetti-catalog-featured);
    box-shadow:
        0 0 0 1px color-mix(in srgb, var(--snetti-catalog-featured-border) 25%, transparent),
        0 24px 44px -30px rgba(15, 23, 42, .68);
}

#order-standard_cart .snetti-popular-badge {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 50%;
    width: max-content;
    max-width: calc(100% - 2rem);
    transform: translate(-50%, -50%);
    padding: .52rem 1.2rem;
    border-radius: 999px;
    background: var(--snetti-catalog-accent);
    color: var(--snetti-catalog-accent-contrast);
    box-shadow: 0 12px 22px -14px var(--snetti-catalog-accent);
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
}

#order-standard_cart .snetti-product-heading,
#order-standard_cart .snetti-product-buy,
#order-standard_cart .snetti-product-features {
    padding: 1.3rem;
}

#order-standard_cart .snetti-product-heading h2 {
    margin: 0;
    color: var(--snetti-catalog-heading);
    font-size: clamp(1.4rem, 2vw, 1.75rem);
    font-weight: 850;
    letter-spacing: -.035em;
    line-height: 1.15;
}

#order-standard_cart .snetti-product-summary {
    min-height: 5rem;
    margin-top: .8rem;
    color: var(--snetti-catalog-copy);
    font-size: .91rem;
    line-height: 1.65;
}

#order-standard_cart .snetti-product-summary p {
    margin: 0;
}

#order-standard_cart .snetti-product-buy {
    border-top: 1px solid var(--snetti-catalog-line);
    border-bottom: 1px solid var(--snetti-catalog-line);
}

#order-standard_cart .snetti-price-line {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35rem;
    color: var(--snetti-catalog-heading);
}

#order-standard_cart .snetti-price-line strong {
    font-size: clamp(2rem, 3vw, 2.55rem);
    font-weight: 850;
    letter-spacing: -.04em;
    line-height: 1;
}

#order-standard_cart .snetti-price-line span {
    color: var(--snetti-catalog-copy);
    font-size: .84rem;
    font-weight: 700;
}

#order-standard_cart .snetti-product-buy p {
    margin: .28rem 0 0;
    color: var(--snetti-catalog-copy);
    font-size: .76rem;
}

#order-standard_cart .snetti-product-buy p b {
    color: var(--snetti-catalog-heading);
}

#order-standard_cart .snetti-product-buy .snetti-original-price {
    margin-bottom: .3rem;
    color: color-mix(in srgb, var(--snetti-catalog-copy) 72%, transparent);
    font-size: .82rem;
    text-decoration: line-through;
}

#order-standard_cart .snetti-product-buy .snetti-promotion-pill {
    display: inline-flex;
    margin-top: .55rem;
    padding: .3rem .65rem;
    border-radius: 999px;
    background: rgba(34, 197, 94, .14);
    color: #22a35a;
    font-size: .72rem;
    font-weight: 850;
    letter-spacing: .035em;
    line-height: 1;
    text-transform: uppercase;
}

#order-standard_cart .snetti-order-button {
    display: flex;
    min-height: 3rem;
    align-items: center;
    justify-content: center;
    margin-top: 1.25rem;
    padding: .7rem 1rem;
    border-radius: .42rem;
    background: var(--snetti-catalog-button, var(--snetti-catalog-accent));
    color: var(--snetti-catalog-button-contrast, var(--snetti-catalog-accent-contrast));
    font-size: .875rem;
    font-weight: 850;
    text-align: center;
    transition: background-color .18s ease, transform .18s ease;
}

#order-standard_cart .snetti-order-button:hover {
    transform: translateY(-1px);
    background: var(--snetti-catalog-button-hover, var(--snetti-catalog-accent-strong));
    color: var(--snetti-catalog-button-contrast, var(--snetti-catalog-accent-contrast));
    text-decoration: none;
}

#order-standard_cart .snetti-order-button.is-disabled {
    opacity: .55;
    cursor: not-allowed;
}

#order-standard_cart .snetti-product-features {
    flex: 1;
}

#order-standard_cart .snetti-product-features h3 {
    margin: 0;
    color: var(--snetti-catalog-heading);
    font-size: 1rem;
    font-weight: 850;
}

#order-standard_cart .snetti-product-features ul {
    display: grid;
    gap: .65rem;
    margin: .95rem 0 0;
    padding: 0;
    list-style: none;
}

#order-standard_cart .snetti-product-features li {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    color: var(--snetti-catalog-copy);
    font-size: .86rem;
    line-height: 1.45;
}

#order-standard_cart .snetti-product-features li i {
    flex: 0 0 auto;
    margin-top: .2rem;
    color: var(--snetti-catalog-check);
}

#order-standard_cart .snetti-product-features li strong {
    color: var(--snetti-catalog-heading);
}

#order-standard_cart .snetti-catalog-note {
    margin: 1.25rem 0 0;
    color: var(--snetti-catalog-copy);
    font-size: .82rem;
}

#order-standard_cart .snetti-comparison {
    margin-top: 3rem;
    padding: 1.5rem;
    border: 1px solid var(--snetti-catalog-line);
    border-radius: 1rem;
    background: color-mix(in srgb, var(--snetti-catalog-card) 90%, transparent);
    box-shadow: 0 16px 45px -36px rgba(15, 23, 42, .62);
}

#order-standard_cart .snetti-comparison-heading {
    margin-bottom: 1.25rem;
    text-align: center;
}

#order-standard_cart .snetti-comparison-heading h2 {
    margin: 0;
    color: var(--snetti-catalog-heading);
    font-size: 1.65rem;
    font-weight: 850;
    letter-spacing: -.03em;
}

#order-standard_cart .snetti-comparison-heading p {
    margin: .35rem 0 0;
    color: var(--snetti-catalog-copy);
    font-size: .88rem;
}

#order-standard_cart .snetti-comparison-scroll {
    overflow-x: auto;
    border: 1px solid var(--snetti-catalog-line);
    border-radius: .75rem;
}

#order-standard_cart .snetti-comparison table {
    width: 100%;
    min-width: 740px;
    border-collapse: separate;
    border-spacing: 0;
    color: var(--snetti-catalog-copy);
    font-size: .84rem;
}

#order-standard_cart .snetti-comparison th,
#order-standard_cart .snetti-comparison td {
    padding: .85rem 1rem;
    border-top: 1px solid var(--snetti-catalog-line);
    text-align: center;
}

#order-standard_cart .snetti-comparison thead th {
    border-top: 0;
    background: color-mix(in srgb, var(--snetti-catalog-accent) 7%, var(--snetti-catalog-card));
    color: var(--snetti-catalog-heading);
    font-weight: 850;
}

#order-standard_cart .snetti-comparison th:first-child {
    position: sticky;
    z-index: 1;
    left: 0;
    min-width: 12rem;
    background: var(--snetti-catalog-card);
    color: var(--snetti-catalog-heading);
    text-align: left;
    font-weight: 750;
}

#order-standard_cart .snetti-comparison thead th:first-child {
    background: color-mix(in srgb, var(--snetti-catalog-accent) 7%, var(--snetti-catalog-card));
}

#order-standard_cart [hidden] {
    display: none !important;
}

body.snetti-catalog-route .master-breadcrumb {
    display: none;
}

body.snetti-catalog-route #main-body > .container {
    width: 100%;
    max-width: none;
    padding-right: 0;
    padding-left: 0;
}

body.snetti-catalog-route #main-body > .container > .row {
    margin-right: 0;
    margin-left: 0;
}

body.snetti-catalog-route #main-body .primary-content {
    padding-right: 0;
    padding-left: 0;
}

html[data-snetti-theme="dark"] #order-standard_cart.snetti-catalog {
    --snetti-catalog-card: #131a27;
    --snetti-catalog-line: #2c3545;
    --snetti-catalog-copy: #aeb8c8;
    --snetti-catalog-heading: #f7f9fc;
    --snetti-catalog-section: #0c111c;
    --snetti-catalog-featured: #101c2a;
}

html[data-snetti-theme="dark"] #order-standard_cart.snetti-catalog--hosting {
    --snetti-catalog-section: #090b13;
    --snetti-catalog-featured: #10211d;
}

html[data-snetti-theme="dark"] #order-standard_cart.snetti-catalog--wordpress {
    --snetti-catalog-section: #071812;
    --snetti-catalog-featured: #0b241b;
}

html[data-snetti-theme="dark"] #order-standard_cart.snetti-catalog--email {
    --snetti-catalog-section: #0b111c;
    --snetti-catalog-featured: #0c2030;
}

html[data-snetti-theme="dark"] #order-standard_cart.snetti-catalog--ssl {
    --snetti-catalog-section: #130d20;
    --snetti-catalog-featured: #201334;
}

/*
 * The parent standard_cart order form is light-only. Keep the WHMCS markup
 * and behaviour, but supply a complete dark palette for cart, configuration,
 * checkout, payment, and order-summary screens.
 */
html[data-snetti-theme="dark"] #order-standard_cart {
    --snetti-ink: #eef4f8;
    --snetti-muted: #aebccb;
    --snetti-border: #2c3949;
    --snetti-surface: #101824;
    --snetti-surface-soft: #151f2d;
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .header-lined h1,
html[data-snetti-theme="dark"] #order-standard_cart h1,
html[data-snetti-theme="dark"] #order-standard_cart h2,
html[data-snetti-theme="dark"] #order-standard_cart h3,
html[data-snetti-theme="dark"] #order-standard_cart h4,
html[data-snetti-theme="dark"] #order-standard_cart .item-title,
html[data-snetti-theme="dark"] #order-standard_cart .product-name,
html[data-snetti-theme="dark"] #order-standard_cart .total-due-today,
html[data-snetti-theme="dark"] #order-standard_cart .recurring-charges {
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart label,
html[data-snetti-theme="dark"] #order-standard_cart p,
html[data-snetti-theme="dark"] #order-standard_cart small,
html[data-snetti-theme="dark"] #order-standard_cart .item-group,
html[data-snetti-theme="dark"] #order-standard_cart .item-domain,
html[data-snetti-theme="dark"] #order-standard_cart .item-price,
html[data-snetti-theme="dark"] #order-standard_cart .cycle,
html[data-snetti-theme="dark"] #order-standard_cart .summary-container,
html[data-snetti-theme="dark"] #order-standard_cart .product-group,
html[data-snetti-theme="dark"] #order-standard_cart .btn-continue-shopping {
    color: var(--snetti-muted);
}

html[data-snetti-theme="dark"] #order-standard_cart .view-cart-items,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-items .item,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-items .item:nth-child(even),
html[data-snetti-theme="dark"] #order-standard_cart .order-summary,
html[data-snetti-theme="dark"] #order-standard_cart .order-summary .summary-container,
html[data-snetti-theme="dark"] #order-standard_cart .product,
html[data-snetti-theme="dark"] #order-standard_cart .product-info,
html[data-snetti-theme="dark"] #order-standard_cart .field-container,
html[data-snetti-theme="dark"] #order-standard_cart .domain-selection-options .option,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-tabs .tab-content,
html[data-snetti-theme="dark"] #order-standard_cart .account-select-container,
html[data-snetti-theme="dark"] #order-standard_cart .cc-input-container,
html[data-snetti-theme="dark"] #order-standard_cart .payment-methods .payment-method {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

/* Inner account tiles re-declare #f6f6f6 / #fff on top of the container, so
   override them explicitly to keep the dark surface + readable ink text. */
html[data-snetti-theme="dark"] #order-standard_cart .account-select-container div.account {
    border-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .account-select-container div.account.active {
    border-color: var(--snetti-primary);
    background: var(--snetti-surface);
}

html[data-snetti-theme="dark"] #order-standard_cart .account-select-container div.account.active:hover,
html[data-snetti-theme="dark"] #order-standard_cart .account-select-container div.account:hover {
    background: #152131;
}

/* --- Dark overrides for addon panels, promo box, gateway notice, selected
   domain, apply-credit and metric-pricing table. The light block above uses
   the cart palette, but these surfaces re-declare hard-coded #fff/#e8e8e8/
   #efefef on top, so pin them to the dark surface explicitly. --- */

html[data-snetti-theme="dark"] #order-standard_cart .addon-products .panel-addon,
html[data-snetti-theme="dark"] #order-standard_cart .panel-addon {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .panel-addon .panel-body {
    color: var(--snetti-muted);
}

html[data-snetti-theme="dark"] #order-standard_cart .panel-addon .panel-body label {
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .panel-addon .panel-price {
    border-top-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-primary);
}

html[data-snetti-theme="dark"] #order-standard_cart .panel-addon .panel-add,
html[data-snetti-theme="dark"] #order-standard_cart .panel-addon-selected .panel-add {
    background: var(--snetti-primary);
    color: #fff;
}

html[data-snetti-theme="dark"] #order-standard_cart .panel-addon-selected {
    border-color: var(--snetti-primary);
}

html[data-snetti-theme="dark"] #order-standard_cart .view-cart-promotion-code {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .view-cart-gateway-checkout {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-muted);
}

html[data-snetti-theme="dark"] #order-standard_cart .domain-selection-options .option-selected {
    background: var(--snetti-surface-soft);
}

html[data-snetti-theme="dark"] #order-standard_cart .apply-credit-container {
    border-color: var(--snetti-border);
    background: var(--snetti-surface);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .modal-metric-pricing .table,
html[data-snetti-theme="dark"] #order-standard_cart .modal-metric-pricing .table th,
html[data-snetti-theme="dark"] #order-standard_cart .modal-metric-pricing .table td {
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .modal-metric-pricing .table-striped tbody tr:nth-of-type(odd) {
    background-color: rgba(255, 255, 255, .04);
}

html[data-snetti-theme="dark"] #order-standard_cart .modal-metric-pricing .table th {
    background: var(--snetti-surface-soft);
    border-bottom-color: var(--snetti-border);
}

/* Domain & service renewals — dark overrides for the tiles, dividers,
   ineligible text and the search box (parent hard-codes #f8f8f8/#f4f4f4/#ccc/
   #fff). */
html[data-snetti-theme="dark"] #order-standard_cart .domain-renewals,
html[data-snetti-theme="dark"] #order-standard_cart .service-renewals,
html[data-snetti-theme="dark"] #order-standard_cart .addon-renewals .service-renewal {
    border-top-color: var(--snetti-border);
    background-color: var(--snetti-surface-soft);
}

html[data-snetti-theme="dark"] #order-standard_cart .domain-renewals .domain-renewal,
html[data-snetti-theme="dark"] #order-standard_cart .service-renewals .service-renewal,
html[data-snetti-theme="dark"] #order-standard_cart .addon-renewals .service-renewal {
    border-bottom-color: var(--snetti-border);
}

html[data-snetti-theme="dark"] #order-standard_cart .domain-renewals .domain-renewal:nth-child(even),
html[data-snetti-theme="dark"] #order-standard_cart .service-renewals .service-renewal:nth-child(even),
html[data-snetti-theme="dark"] #order-standard_cart .addon-renewals .service-renewal:nth-child(even) {
    background-color: var(--snetti-surface);
}

html[data-snetti-theme="dark"] #order-standard_cart .domain-renewals .domain-renewal h3,
html[data-snetti-theme="dark"] #order-standard_cart .service-renewals .service-renewal h3,
html[data-snetti-theme="dark"] #order-standard_cart p.domain-renewal-desc,
html[data-snetti-theme="dark"] #order-standard_cart p.domain-renewal-desc {
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .service-renewals .div-renewal-ineligible {
    color: var(--snetti-muted);
}

html[data-snetti-theme="dark"] #order-standard_cart .form-control.domain-renewals-filter,
html[data-snetti-theme="dark"] #order-standard_cart .form-control.service-renewals-filter {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23a6b3c2' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E") !important;
    background-color: #0d1520 !important;
    border-color: var(--snetti-border) !important;
    color: var(--snetti-ink) !important;
}

html[data-snetti-theme="dark"] #order-standard_cart .view-cart-items-header,
html[data-snetti-theme="dark"] #order-standard_cart .empty-cart,
html[data-snetti-theme="dark"] #order-standard_cart .order-summary h2,
html[data-snetti-theme="dark"] #order-standard_cart .product header,
html[data-snetti-theme="dark"] #order-standard_cart .sub-heading span,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] {
    border-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .cart-sidebar .list-group-item,
html[data-snetti-theme="dark"] #order-standard_cart .sidebar-collapsed,
html[data-snetti-theme="dark"] #order-standard_cart .form-control,
html[data-snetti-theme="dark"] #order-standard_cart .custom-select,
html[data-snetti-theme="dark"] #order-standard_cart .input-group-text,
html[data-snetti-theme="dark"] #order-standard_cart select,
html[data-snetti-theme="dark"] #order-standard_cart textarea {
    border-color: var(--snetti-border);
    background: #0d1520;
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .form-control::placeholder,
html[data-snetti-theme="dark"] #order-standard_cart textarea::placeholder {
    color: #7f90a3;
}

html[data-snetti-theme="dark"] #order-standard_cart .view-cart-tabs .nav-tabs a {
    color: var(--snetti-muted);
}

html[data-snetti-theme="dark"] #order-standard_cart .btn-default,
html[data-snetti-theme="dark"] #order-standard_cart .btn-secondary {
    border-color: var(--snetti-border);
    background: var(--snetti-surface-soft);
    color: var(--snetti-ink);
}

html[data-snetti-theme="dark"] #order-standard_cart .btn-default:hover,
html[data-snetti-theme="dark"] #order-standard_cart .btn-secondary:hover {
    border-color: rgba(33, 156, 144, .7);
    background: #1a2937;
    color: #fff;
}

html[data-snetti-theme="dark"] #order-standard_cart .summary-totals,
html[data-snetti-theme="dark"] #order-standard_cart .bordered-totals,
html[data-snetti-theme="dark"] #order-standard_cart .recurring-totals,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-items .item,
html[data-snetti-theme="dark"] #order-standard_cart .view-cart-tabs .nav-tabs {
    border-color: var(--snetti-border);
}

@media (max-width: 767px) {
    #order-standard_cart.snetti-catalog {
        margin-top: 1.25rem;
        padding-inline: .5rem;
    }

    #order-standard_cart .snetti-catalog-shell {
        padding: 2rem 1rem;
        border-radius: 1rem;
    }

    #order-standard_cart .snetti-catalog-promo-strip {
        flex-direction: column;
        gap: .25rem;
        padding: .7rem .8rem;
    }

    #order-standard_cart .snetti-product-grid {
        grid-template-columns: 1fr;
    }

    #order-standard_cart .snetti-product-summary {
        min-height: 0;
    }

    #order-standard_cart .snetti-comparison {
        padding: .75rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    #order-standard_cart .snetti-product-card,
    #order-standard_cart .snetti-order-button,
    #order-standard_cart .snetti-billing-toggle button,
    #order-standard_cart .suggested-domains .snetti-domain-result-enter,
    #order-standard_cart .suggested-domains .snetti-domain-check-skeleton,
    #order-standard_cart .suggested-domains .domain-lookup-suggestions-loader::after {
        animation: none;
        transition: none;
    }
}
