/*
 * Ezra Cart
 *
 * Loaded only when the active order form directory is ezra_cart
 * (templates/ezra/includes/head.tpl and orderforms/ezra_cart/common.tpl).
 * Every selector starts with body.ezra-orderform-ezra-cart.
 *
 * The page stays on the light ezra-paper surface until this file loads, so a
 * missing stylesheet cannot put dark Standard Cart text on the navy portal.
 * This file then clears that pale sheet and paints the cart to match the portal.
 *
 * Product names, descriptions, features, prices, billing cycles, coupons, tax
 * and PayFast markup are not defined here. PayFast's own controls are not recoloured.
 */

body.ezra-orderform-ezra-cart {
    --ez-cart-bg: #050b18;
    --ez-cart-panel: #0b1a30;
    --ez-cart-panel-2: #081326;
    --ez-cart-fg: #f2f7fc;
    --ez-cart-muted: #b3c3d6;
    --ez-cart-subtle: #8ba0ba;
    --ez-cart-cyan: #22d3ee;
    --ez-cart-cyan-2: #67e8f9;
    --ez-cart-teal: #2dd4bf;
    --ez-cart-amber: #f5a623;
    --ez-cart-line: rgba(103, 232, 249, 0.22);
    --ez-cart-focus: 0 0 0 3px rgba(34, 211, 238, 0.45);
}

/* Drop the pale content sheet. Keep container padding so Bootstrap rows do not overflow. */
body.ezra-orderform-ezra-cart.ezra-paper section#main-body > .container {
    background: transparent;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body > .container h1,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body > .container h2,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body > .container h3,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body > .container .font-size-36 {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart.ezra-paper .master-breadcrumb .breadcrumb-item,
body.ezra-orderform-ezra-cart.ezra-paper .master-breadcrumb .breadcrumb-item.active {
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart.ezra-paper .master-breadcrumb .breadcrumb-item a {
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart #order-standard_cart {
    color: var(--ez-cart-muted);
    font-size: 15px;
    line-height: 1.5;
}

body.ezra-orderform-ezra-cart #order-standard_cart .header-lined {
    margin-bottom: 8px;
    border-bottom: 0;
}

body.ezra-orderform-ezra-cart #order-standard_cart .header-lined h1 {
    margin-bottom: 6px;
    font-size: 32px;
    line-height: 1.15;
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .header-lined p,
body.ezra-orderform-ezra-cart #order-standard_cart p {
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart a:not(.btn),
body.ezra-orderform-ezra-cart #order-standard_cart a:not(.btn) {
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart a:not(.btn):hover,
body.ezra-orderform-ezra-cart #order-standard_cart a:not(.btn):hover {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .text-muted,
body.ezra-orderform-ezra-cart #order-standard_cart .order-summary .recurring-charges,
body.ezra-orderform-ezra-cart #order-standard_cart .order-summary .recurring-charges .cost {
    color: var(--ez-cart-muted) !important;
}

body.ezra-orderform-ezra-cart #order-standard_cart label a,
body.ezra-orderform-ezra-cart #order-standard_cart .checkbox-inline a,
body.ezra-orderform-ezra-cart #order-standard_cart p a:not(.btn) {
    text-decoration: underline;
    text-underline-offset: 2px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .label-warning,
body.ezra-orderform-ezra-cart #order-standard_cart .badge-warning {
    background: var(--ez-cart-amber);
    color: #050b18;
}

body.ezra-orderform-ezra-cart #order-standard_cart .label-danger,
body.ezra-orderform-ezra-cart #order-standard_cart .badge-danger {
    background: #f4636f;
    color: #050b18;
}

/* --------------------------------------------------------------------------
 * Categories
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .card,
body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed .card {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: rgba(8, 19, 38, 0.72);
    color: var(--ez-cart-muted);
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .card-header,
body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed .card-header {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: transparent;
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .card-title,
body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar h3,
body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed h3 {
    color: var(--ez-cart-muted);
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .list-group-item {
    border-color: rgba(255, 255, 255, 0.08);
    background: transparent;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .list-group-item:hover,
body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .list-group-item:focus {
    background: rgba(34, 211, 238, 0.08);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar .list-group-item.active {
    background: rgba(34, 211, 238, 0.12);
    box-shadow: inset 3px 0 0 var(--ez-cart-cyan);
    color: var(--ez-cart-cyan-2);
}

@media (min-width: 1200px) {
    body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed {
        display: none;
    }
}

@media (max-width: 1199.98px) {
    body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar {
        display: none;
    }
}

/*
 * Product group: stack categories above the cards and give the grid a definite
 * width. A flex row plus minmax(0, 1fr) collapses the only mobile column to 0.
 */
body.ezra-orderform-ezra-cart.ezra-tpl-products #order-standard_cart > .row {
    display: block;
}

body.ezra-orderform-ezra-cart.ezra-tpl-products #order-standard_cart .cart-body {
    float: none;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed .float-right,
body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed .pull-right {
    float: none !important;
    display: block;
    width: 100%;
    max-width: 100%;
    margin: 8px 0 12px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed .float-right .form-control,
body.ezra-orderform-ezra-cart #order-standard_cart .sidebar-collapsed select {
    width: 100%;
    max-width: 100%;
}

/* Product group page: categories span the content width so four plans fit at 1440. */
@media (min-width: 1200px) {
    body.ezra-orderform-ezra-cart.ezra-tpl-products #order-standard_cart .cart-sidebar {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        float: none;
        width: 100%;
        max-width: 100%;
        margin-bottom: 8px;
    }

    body.ezra-orderform-ezra-cart.ezra-tpl-products #order-standard_cart .cart-sidebar > .card {
        flex: 1 1 240px;
        margin-bottom: 0;
    }
}

/* --------------------------------------------------------------------------
 * Plan cards. 4 across from 1200px, 2 from 700px, 1 below that. Any count wraps.
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid {
    display: grid;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 12px 0 24px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product {
    display: flex;
    flex-direction: column;
    float: none;
    width: auto;
    min-width: 0;
    height: auto;
    margin: 0;
    padding: 0;
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background: linear-gradient(165deg, rgba(16, 36, 63, 0.95), rgba(8, 19, 38, 0.92));
    color: var(--ez-cart-muted);
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
    margin: 0;
    padding: 16px 16px 12px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 0;
    background: transparent;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product header span {
    color: var(--ez-cart-fg);
    font-size: 18px;
    font-weight: 600;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product header .qty {
    float: none;
    flex: 0 0 auto;
    color: var(--ez-cart-amber);
    font-size: 12px;
    font-style: normal;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-tagline {
    margin: 0;
    padding: 12px 16px 0;
    color: var(--ez-cart-cyan-2);
    font-size: 14px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product div.product-desc {
    float: none;
    width: auto;
    flex: 1 1 auto;
    padding: 12px 16px 8px;
    font-size: 14px;
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-description {
    margin-bottom: 12px;
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-description :where(p, ul, ol) {
    margin: 0 0 8px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-description :where(h1, h2, h3, h4, h5, h6) {
    margin: 0 0 8px;
    color: var(--ez-cart-fg);
    font-size: 16px;
    line-height: 1.35;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-description :where(img, table, video, iframe) {
    max-width: 100%;
    height: auto;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-description :where(strong, b) {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product li {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
    padding: 8px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product span.feature-value {
    flex: 0 0 auto;
    max-width: 58%;
    color: var(--ez-cart-fg);
    font-weight: 600;
    text-align: left;
    overflow-wrap: break-word;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product span.feature-name {
    flex: 1 1 auto;
    min-width: 0;
    text-align: right;
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product footer {
    float: none;
    width: auto;
    margin: 0;
    margin-top: auto;
    padding: 8px 16px 16px;
    font-size: 15px;
    text-align: left;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product div.product-pricing {
    margin: 0 0 12px;
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .product div.product-pricing span.price {
    color: var(--ez-cart-fg);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .btn-order-now {
    display: block;
    width: 100%;
    border: 1px solid rgba(103, 232, 249, 0.55);
    border-radius: 10px;
    background: linear-gradient(120deg, var(--ez-cart-cyan), var(--ez-cart-teal));
    color: #050b18;
    font-weight: 600;
    white-space: normal;
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .btn-order-now:hover,
body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid .btn-order-now:focus {
    background: linear-gradient(120deg, var(--ez-cart-cyan-2), #5eead4);
    color: #050b18;
}

/* Featured is $product.isFeatured only. The badge text is the WHMCS language
   string featuredProduct (English: "Featured"), so the state is not colour alone. */
body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-featured {
    border: 2px solid var(--ez-cart-amber);
    box-shadow: 0 10px 28px rgba(245, 166, 35, 0.16);
}

body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-badge {
    margin: 0;
    padding: 7px 12px;
    background: var(--ez-cart-amber);
    color: #1a1203;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.3;
    text-align: center;
    text-transform: uppercase;
    overflow-wrap: anywhere;
}

@media (max-width: 1199.98px) {
    body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 699.98px) {
    body.ezra-orderform-ezra-cart #order-standard_cart .ezra-plan-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.ezra-orderform-ezra-cart #order-standard_cart .header-lined h1 {
        font-size: 26px;
    }
}

/* --------------------------------------------------------------------------
 * Forms, alerts, section labels
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart .form-control,
body.ezra-orderform-ezra-cart #order-standard_cart .field,
body.ezra-orderform-ezra-cart #order-standard_cart .custom-select,
body.ezra-orderform-ezra-cart #order-standard_cart select.form-control {
    border: 1px solid var(--ez-cart-line);
    border-radius: 10px;
    background: #06101f;
    color: var(--ez-cart-fg);
    min-height: 44px;
}

body.ezra-orderform-ezra-cart #order-standard_cart textarea.form-control {
    min-height: 96px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .form-control::placeholder {
    color: var(--ez-cart-subtle);
}

body.ezra-orderform-ezra-cart #order-standard_cart .form-control:focus,
body.ezra-orderform-ezra-cart #order-standard_cart .field:focus,
body.ezra-orderform-ezra-cart #order-standard_cart .custom-select:focus {
    border-color: var(--ez-cart-cyan);
    background: #06101f;
    color: var(--ez-cart-fg);
    box-shadow: var(--ez-cart-focus);
}

body.ezra-orderform-ezra-cart #order-standard_cart label {
    color: var(--ez-cart-muted);
    font-size: 14px;
    font-weight: 500;
}

body.ezra-orderform-ezra-cart #order-standard_cart .sub-heading {
    border-top-color: var(--ez-cart-line);
}

body.ezra-orderform-ezra-cart #order-standard_cart .sub-heading span,
body.ezra-orderform-ezra-cart #order-standard_cart .sub-heading-borderless span {
    background: var(--ez-cart-bg);
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart #order-standard_cart .alert {
    border-radius: 12px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .alert-success {
    border-color: rgba(45, 212, 191, 0.4);
    background: rgba(45, 212, 191, 0.12);
    color: #5eead4;
}

body.ezra-orderform-ezra-cart #order-standard_cart .alert-info {
    border-color: var(--ez-cart-line);
    background: rgba(34, 211, 238, 0.1);
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart #order-standard_cart .alert-warning {
    border-color: rgba(245, 166, 35, 0.45);
    background: rgba(245, 166, 35, 0.12);
    color: #ffc46b;
}

body.ezra-orderform-ezra-cart #order-standard_cart .alert-danger {
    border-color: rgba(244, 99, 111, 0.5);
    background: rgba(244, 99, 111, 0.12);
    color: #ff9aa3;
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-primary,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-success,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-primary,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-success {
    border: 1px solid rgba(103, 232, 249, 0.55);
    border-radius: 10px;
    background: linear-gradient(120deg, var(--ez-cart-cyan), var(--ez-cart-teal));
    color: #050b18;
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-primary:hover,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-primary:focus,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-success:hover,
body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-success:focus,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-primary:hover,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-primary:focus,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-success:hover,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-success:focus {
    background: linear-gradient(120deg, var(--ez-cart-cyan-2), #5eead4);
    color: #050b18;
}

body.ezra-orderform-ezra-cart.ezra-paper section#main-body #order-standard_cart .btn-warning {
    border-color: var(--ez-cart-amber);
    background: var(--ez-cart-amber);
    color: #050b18;
}

body.ezra-orderform-ezra-cart #order-standard_cart .btn-info {
    border: 1px solid rgba(103, 232, 249, 0.55);
    background: linear-gradient(120deg, var(--ez-cart-cyan), var(--ez-cart-teal));
    color: #050b18;
}

body.ezra-orderform-ezra-cart #order-standard_cart .btn-checkout {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: auto;
    max-width: 100%;
    overflow: visible;
    white-space: normal;
}

body.ezra-orderform-ezra-cart #order-standard_cart .btn-continue-shopping,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-link {
    color: var(--ez-cart-cyan-2);
    background: transparent;
}

body.ezra-orderform-ezra-cart #order-standard_cart .btn-default,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-secondary {
    border: 1px solid var(--ez-cart-line);
    border-radius: 10px;
    background: transparent;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .btn:focus {
    box-shadow: var(--ez-cart-focus);
}

/* --------------------------------------------------------------------------
 * Domain search
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-container {
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background-color: #081326;
    background-image: radial-gradient(900px 220px at 10% 0%, rgba(34, 211, 238, 0.16), transparent 60%), linear-gradient(160deg, #10243f, #081326);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-bg {
    padding: 36px 16px;
    background-color: transparent;
    background-image: none;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-container .input-group-box {
    padding: 8px;
    border-radius: 12px;
    background: rgba(5, 11, 24, 0.55);
}

body.ezra-orderform-ezra-cart #order-standard_cart #inputDomain,
body.ezra-orderform-ezra-cart #order-standard_cart #frmDomainChecker textarea {
    min-height: 52px;
    border: 0;
    background: #06101f;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart #btnCheckAvailability {
    min-height: 52px;
    border: 0;
    background: linear-gradient(120deg, var(--ez-cart-cyan), var(--ez-cart-teal));
    color: #050b18;
    font-weight: 600;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-result-headline,
body.ezra-orderform-ezra-cart #order-standard_cart .primary-domain-header {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-available {
    color: var(--ez-cart-teal);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-unavailable,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-invalid {
    color: #ff9aa3;
}

body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tlds {
    margin: 16px 0;
    padding: 0;
    background: transparent;
}

body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tlds-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0;
}

body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-1,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-2,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-3,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-4,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-5,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-6,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-7,
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld-container-8 {
    width: auto;
    flex: 1 1 140px;
    max-width: 100%;
    padding: 0;
}

body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld {
    height: auto;
    min-height: 112px;
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: var(--ez-cart-panel);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-lookup-result.list-group .list-group-item {
    border-color: rgba(255, 255, 255, 0.08);
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #DomainSearchResults .primary-domain-header,
body.ezra-orderform-ezra-cart #order-standard_cart .suggested-domains .card-header,
body.ezra-orderform-ezra-cart #order-standard_cart .suggested-domains .panel-heading {
    border-bottom-color: rgba(34, 211, 238, 0.45);
    background: transparent;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld .btn-add-to-cart,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-suggestion .btn-add-to-cart {
    border: 0;
    background: linear-gradient(120deg, var(--ez-cart-cyan), var(--ez-cart-teal));
    color: #050b18;
}

/* Standard Cart sets every spotlight span to display:block, which beats .w-hidden. */
body.ezra-orderform-ezra-cart #order-standard_cart .spotlight-tld .btn span.w-hidden,
body.ezra-orderform-ezra-cart #order-standard_cart .btn-add-to-cart > span.w-hidden {
    display: none;
}

body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0;
}

body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters a {
    border: 1px solid var(--ez-cart-line);
    border-radius: 999px;
    background: transparent;
    color: var(--ez-cart-fg);
    font-weight: 500;
}

body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters a:hover,
body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters a:focus,
body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters a.badge-success,
body.ezra-orderform-ezra-cart #order-standard_cart .tld-filters a.label-success {
    background: rgba(34, 211, 238, 0.16);
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .bg-white {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: var(--ez-cart-panel-2) !important;
    color: var(--ez-cart-fg);
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-pricing-header div,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-pricing-header .col-xs-4,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-pricing-header .col-4,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-pricing-header .tld-column {
    border-color: var(--ez-cart-line);
    background: #10243f;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-row,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-row .row,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-row [class*="col-"] {
    background: transparent !important;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .tld-row {
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-pricing .two-row-center {
    border-right-color: rgba(255, 255, 255, 0.08);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-promo-box {
    height: 100%;
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background: var(--ez-cart-panel);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-promo-box h3,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-promo-box i {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-promo-box .text-warning {
    color: var(--ez-cart-amber) !important;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-promo-box .text-primary {
    color: var(--ez-cart-cyan-2) !important;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-selection-options .option,
body.ezra-orderform-ezra-cart #order-standard_cart .domain-selection-options .option-selected {
    border: 1px solid var(--ez-cart-line);
    background: var(--ez-cart-panel);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .transfer-eligible,
body.ezra-orderform-ezra-cart #order-standard_cart .transfer-not-eligible {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .card,
body.ezra-orderform-ezra-cart #order-standard_cart .panel {
    border-color: var(--ez-cart-line);
    background: var(--ez-cart-panel);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .card-header,
body.ezra-orderform-ezra-cart #order-standard_cart .card-footer,
body.ezra-orderform-ezra-cart #order-standard_cart .panel-heading,
body.ezra-orderform-ezra-cart #order-standard_cart .panel-footer {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.08);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .card-title,
body.ezra-orderform-ezra-cart #order-standard_cart .panel-title,
body.ezra-orderform-ezra-cart #order-standard_cart .field-help-text {
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .panel-body,
body.ezra-orderform-ezra-cart #order-standard_cart .card-body,
body.ezra-orderform-ezra-cart #order-standard_cart .panel-addon label {
    background: transparent;
    color: var(--ez-cart-fg);
}

/* Stock configure-domains marks hosting state with inline colours meant for a white page. */
body.ezra-orderform-ezra-cart #order-standard_cart .form-group span[style*="009900"] {
    color: #5eead4 !important;
}

body.ezra-orderform-ezra-cart #order-standard_cart .form-group a[style*="cc0000"] {
    color: #ffb4bc !important;
}

/* --------------------------------------------------------------------------
 * Transfer and renewal
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart #frmDomainTransfer .card {
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background: var(--ez-cart-panel);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart #frmDomainTransfer .card-header,
body.ezra-orderform-ezra-cart #order-standard_cart #frmDomainTransfer .card-footer {
    background: transparent;
    border-color: rgba(255, 255, 255, 0.08);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart #frmDomainTransfer .card-title {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-renewals,
body.ezra-orderform-ezra-cart #order-standard_cart .service-renewals {
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-muted);
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-renewals .domain-renewal,
body.ezra-orderform-ezra-cart #order-standard_cart .service-renewals .service-renewal {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    background: transparent;
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-renewals .domain-renewal:nth-child(even),
body.ezra-orderform-ezra-cart #order-standard_cart .service-renewals .service-renewal:nth-child(even) {
    background: rgba(255, 255, 255, 0.03);
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-renewals .domain-renewal h3,
body.ezra-orderform-ezra-cart #order-standard_cart .service-renewals .service-renewal h3 {
    color: var(--ez-cart-fg);
    overflow-wrap: anywhere;
}

body.ezra-orderform-ezra-cart #order-standard_cart .domain-renewals-filter {
    max-width: 100%;
}

/* --------------------------------------------------------------------------
 * Configure, cart, summary
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #order-standard_cart .product-info {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: var(--ez-cart-panel);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .product-info .product-title {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .product-info :where(h1, h2, h3, h4) {
    font-size: 16px;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items-header {
    border-radius: 12px 12px 0 0;
    background: #10243f;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items {
    border: 1px solid var(--ez-cart-line);
    border-top: 0;
    border-radius: 0 0 12px 12px;
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item:nth-child(even) {
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-title,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-price,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-price span {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-group,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-domain,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-price .cycle {
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .order-summary {
    border: 1px solid var(--ez-cart-line);
    border-radius: 16px;
    background: #10243f;
    color: var(--ez-cart-fg);
    overflow: hidden;
}

body.ezra-orderform-ezra-cart #order-standard_cart .order-summary h2 {
    color: var(--ez-cart-fg);
    font-size: 22px;
}

body.ezra-orderform-ezra-cart #order-standard_cart .summary-container {
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .summary-container .clearfix,
body.ezra-orderform-ezra-cart #order-standard_cart .summary-container .total-due-today {
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .nav-tabs {
    border-bottom-color: var(--ez-cart-line);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .nav-link {
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .nav-link.active,
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .nav-tabs a[aria-selected="true"],
body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .nav-tabs a[aria-expanded="true"] {
    border-color: var(--ez-cart-line) var(--ez-cart-line) var(--ez-cart-panel-2);
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-tabs .tab-content {
    border: 1px solid var(--ez-cart-line);
    border-top: 0;
    border-radius: 0 0 12px 12px;
    background: var(--ez-cart-panel-2);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-promotion-code {
    border: 1px dashed rgba(103, 232, 249, 0.45);
    background: transparent;
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .panel-addon {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .panel-addon .panel-price {
    background: rgba(255, 255, 255, 0.04);
    color: var(--ez-cart-fg);
}

body.ezra-orderform-ezra-cart #order-standard_cart .panel-addon .panel-add {
    background: transparent;
    color: var(--ez-cart-cyan-2);
}

body.ezra-orderform-ezra-cart #order-standard_cart .account-select-container .account {
    border: 1px solid var(--ez-cart-line);
    border-radius: 12px;
    background: var(--ez-cart-panel);
    color: var(--ez-cart-muted);
}

body.ezra-orderform-ezra-cart #order-standard_cart .order-confirmation {
    color: var(--ez-cart-fg);
}

/* --------------------------------------------------------------------------
 * PayFast and other gateway output. Light surface, no recolour of their controls.
 * ----------------------------------------------------------------------- */

body.ezra-orderform-ezra-cart #paymentGatewaysContainer .card,
body.ezra-orderform-ezra-cart #paymentGatewaysContainer .panel-body,
body.ezra-orderform-ezra-cart #paymentGatewaysContainer .card-body,
body.ezra-orderform-ezra-cart #paymentGatewayInput .card,
body.ezra-orderform-ezra-cart #paymentGatewayInput .panel,
body.ezra-orderform-ezra-cart #paymentGatewayInput .panel-body,
body.ezra-orderform-ezra-cart #paymentGatewayInput .card-body,
body.ezra-orderform-ezra-cart #creditCardInputFields .card,
body.ezra-orderform-ezra-cart #creditCardInputFields .panel,
body.ezra-orderform-ezra-cart #creditCardInputFields .panel-body,
body.ezra-orderform-ezra-cart #creditCardInputFields .card-body,
body.ezra-orderform-ezra-cart #paymentGatewaysContainer,
body.ezra-orderform-ezra-cart #paymentGatewayInput,
body.ezra-orderform-ezra-cart #creditCardInputFields,
body.ezra-orderform-ezra-cart .apply-credit-container {
    margin-top: 12px;
    padding: 16px 18px;
    border: 1px solid #d5deea;
    border-radius: 12px;
    background: #f5f8fc;
    color: #142033;
}

body.ezra-orderform-ezra-cart #paymentGatewaysContainer label,
body.ezra-orderform-ezra-cart #paymentGatewaysContainer p,
body.ezra-orderform-ezra-cart #paymentGatewayInput,
body.ezra-orderform-ezra-cart #paymentGatewayInput p,
body.ezra-orderform-ezra-cart #paymentGatewayInput label,
body.ezra-orderform-ezra-cart #creditCardInputFields,
body.ezra-orderform-ezra-cart #creditCardInputFields label,
body.ezra-orderform-ezra-cart .apply-credit-container,
body.ezra-orderform-ezra-cart .apply-credit-container label {
    color: #142033;
}

body.ezra-orderform-ezra-cart #paymentGatewaysContainer .text-muted,
body.ezra-orderform-ezra-cart #paymentGatewayInput .text-muted,
body.ezra-orderform-ezra-cart #creditCardInputFields .text-muted,
body.ezra-orderform-ezra-cart .apply-credit-container .text-muted {
    color: #3d4d63 !important;
}

body.ezra-orderform-ezra-cart #paymentGatewaysContainer .form-control,
body.ezra-orderform-ezra-cart #paymentGatewaysContainer .field,
body.ezra-orderform-ezra-cart #paymentGatewayInput .form-control,
body.ezra-orderform-ezra-cart #paymentGatewayInput .field,
body.ezra-orderform-ezra-cart #paymentGatewayInput input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]),
body.ezra-orderform-ezra-cart #paymentGatewayInput select,
body.ezra-orderform-ezra-cart #paymentGatewayInput textarea,
body.ezra-orderform-ezra-cart #creditCardInputFields .form-control,
body.ezra-orderform-ezra-cart #creditCardInputFields .field,
body.ezra-orderform-ezra-cart #creditCardInputFields input:not([type="submit"]):not([type="button"]):not([type="radio"]):not([type="checkbox"]),
body.ezra-orderform-ezra-cart #creditCardInputFields select,
body.ezra-orderform-ezra-cart #creditCardInputFields textarea {
    border: 1px solid #c5d0de;
    background: #fff;
    color: #142033;
    box-shadow: none;
}

body.ezra-orderform-ezra-cart #paymentGatewayInput .btn,
body.ezra-orderform-ezra-cart #paymentGatewayInput button,
body.ezra-orderform-ezra-cart #paymentGatewayInput input[type="submit"],
body.ezra-orderform-ezra-cart #paymentGatewaysContainer .btn,
body.ezra-orderform-ezra-cart #creditCardInputFields .btn {
    background: unset;
    color: unset;
    border-color: unset;
    box-shadow: none;
}

@media (max-width: 575.98px) {
    body.ezra-orderform-ezra-cart #order-standard_cart .secondary-cart-sidebar,
    body.ezra-orderform-ezra-cart #order-standard_cart .secondary-cart-body,
    body.ezra-orderform-ezra-cart #order-standard_cart .cart-body,
    body.ezra-orderform-ezra-cart #order-standard_cart .cart-sidebar {
        max-width: 100%;
    }

    body.ezra-orderform-ezra-cart #order-standard_cart .domain-checker-bg {
        padding: 24px 8px;
    }

    body.ezra-orderform-ezra-cart #order-standard_cart .view-cart-items .item-title {
        font-size: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.ezra-orderform-ezra-cart #order-standard_cart .btn {
        transition: none;
    }
}
