/* ==============================
   Koode cart overrides
   Loaded after WHMCS standard_cart CSS
   ============================== */

#order-standard_cart .products {
    margin-top: 20px;
}

/* Product card wrapper */

#order-standard_cart .products .product.koode-order-product {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: 0 !important;
    margin: 0 0 28px !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 22px !important;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.12) !important;
    overflow: hidden !important;
}

/* Header */

#order-standard_cart .products .product.koode-order-product header.koode-order-product-header {
    margin: 0 !important;
    padding: 18px 24px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    border-radius: 0 !important;
}

#order-standard_cart .products .product.koode-order-product header.koode-order-product-header span {
    color: #ffffff !important;
    font-size: 1.18rem !important;
    font-weight: 800 !important;
}

/* Body */

#order-standard_cart .products .product.koode-order-product div.product-desc,
#order-standard_cart .products .product.koode-order-product .koode-order-product-body {
    float: none !important;
    width: 100% !important;
    flex: 1 1 auto !important;
    min-height: 180px !important;
    padding: 22px 24px 10px !important;
    font-size: 0.92rem !important;
}

#order-standard_cart .products .product.koode-order-product .koode-order-product-body p {
    margin: 0 0 16px !important;
    color: #4b5563 !important;
    line-height: 1.55 !important;
}

/* Features */

#order-standard_cart .products .product.koode-order-product .koode-order-features {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

#order-standard_cart .products .product.koode-order-product .koode-order-features li {
    display: flex !important;
    gap: 9px !important;
    padding: 4px 0 !important;
    margin-bottom: 6px !important;
    color: #374151 !important;
    line-height: 1.35 !important;
}

#order-standard_cart .products .product.koode-order-product .feature-check {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 19px !important;
    width: 19px !important;
    height: 19px !important;
    margin-top: 1px !important;
    border-radius: 999px !important;
    background: #dcfce7 !important;
    color: #16a34a !important;
    font-size: 0.72rem !important;
}

/* Footer */

#order-standard_cart .products .product.koode-order-product footer.koode-order-product-footer {
    float: none !important;
    width: 100% !important;
    margin: auto 0 0 !important;
    padding: 18px 24px 24px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    border-top: 1px solid rgba(15, 23, 42, 0.07) !important;
    text-align: left !important;
    font-size: 1rem !important;
}

/* Price */

#order-standard_cart .products .product.koode-order-product .koode-order-price {
    margin: 0 !important;
    text-align: left !important;
}

#order-standard_cart .products .product.koode-order-product .price {
    display: block !important;
    color: #111827 !important;
    font-size: 2.4rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

#order-standard_cart .products .product.koode-order-product .koode-price-cycle {
    display: block !important;
    margin: 4px 0 0 !important;
    color: #6b7280 !important;
    font-size: 0.85rem !important;
}

#order-standard_cart .products .product.koode-order-product small {
    display: block !important;
    margin-top: 5px !important;
    color: #6b7280 !important;
}

/* Button */

#order-standard_cart .products .product.koode-order-product .koode-order-button {
    flex: 0 0 auto !important;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 11px 21px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 12px 28px rgba(124, 58, 237, 0.28) !important;
}

#order-standard_cart .products .product.koode-order-product .koode-order-button:hover,
#order-standard_cart .products .product.koode-order-product .koode-order-button:focus {
    background: linear-gradient(135deg, #f43f5e 0%, #6d28d9 100%) !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Mobile */

@media (max-width: 767.98px) {
    #order-standard_cart .products .product.koode-order-product div.product-desc,
    #order-standard_cart .products .product.koode-order-product .koode-order-product-body {
        min-height: 0 !important;
    }

    #order-standard_cart .products .product.koode-order-product footer.koode-order-product-footer {
        flex-direction: column !important;
        align-items: flex-start !important;
    }

    #order-standard_cart .products .product.koode-order-product .koode-order-button {
        width: 100% !important;
        text-align: center !important;
    }
}

#order-standard_cart .koode-cart-body-full {
    float: none !important;
    width: 100% !important;
    max-width: 1120px;
    margin: 0 auto;
}

/* ==============================
   Koode domain register
   ============================== */

#order-standard_cart .koode-cart-body-full {
    float: none !important;
    width: 100% !important;
    max-width: 1120px;
    margin: 0 auto;
}

#order-standard_cart .koode-domain-register .header-lined {
    margin-bottom: 22px;
}

#order-standard_cart .koode-domain-register .header-lined h1 {
    font-weight: 850;
    color: #111827;
}

#order-standard_cart .koode-domain-register > p {
    margin-bottom: 18px;
    color: #4b5563;
    font-size: 1.05rem;
}

#order-standard_cart .koode-domain-register .domain-checker-container {
    margin: 0 0 28px;
    padding: 0;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 22px;
    box-shadow: 0 18px 45px rgba(15, 23, 42, 0.10);
    overflow: hidden;
}

#order-standard_cart .koode-domain-register .domain-checker-container::before {
    content: "Hae verkkotunnusta";
    display: block;
    padding: 18px 24px;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%);
    color: #ffffff;
    font-size: 1.08rem;
    font-weight: 850;
}

#order-standard_cart .koode-domain-register .domain-checker-bg {
    padding: 30px 24px !important;
    background-image: none !important;
    background: #ffffff !important;
}

#order-standard_cart .koode-domain-register .input-group-box {
    padding: 0 !important;
    background: transparent !important;
    border-radius: 999px !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-domain-register #inputDomain {
    height: 52px;
    border: 1px solid rgba(15, 23, 42, 0.12);
    border-radius: 999px 0 0 999px !important;
    padding: 0 22px;
    font-size: 1rem;
    box-shadow: none;
}

#order-standard_cart .koode-domain-register #btnCheckAvailability {
    height: 52px;
    min-width: 128px;
    border: 0 !important;
    border-radius: 0 999px 999px 0 !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800;
}

#order-standard_cart .koode-domain-register #btnCheckAvailability:hover,
#order-standard_cart .koode-domain-register #btnCheckAvailability:focus {
    background: linear-gradient(135deg, #f43f5e 0%, #6d28d9 100%) !important;
}

/* Results */

#order-standard_cart .koode-domain-register #DomainSearchResults {
    margin-top: 26px;
}

#order-standard_cart .koode-domain-register .primary-domain-header,
#order-standard_cart .koode-domain-register .suggested-domains .panel-heading,
#order-standard_cart .koode-domain-register .suggested-domains .card-header {
    padding: 16px 24px;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 18px 18px 0 0;
    font-weight: 800;
}

#order-standard_cart .koode-domain-register #searchDomainInfo,
#order-standard_cart .koode-domain-register .suggested-domains {
    background: #ffffff;
    border: 1px solid rgba(15, 23, 42, 0.08);
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

#order-standard_cart .koode-domain-register .domain-checker-result-headline {
    margin: 0;
    padding: 24px;
}

#order-standard_cart .koode-domain-register .domain-checker-available {
    color: #16a34a;
    font-weight: 800;
}

#order-standard_cart .koode-domain-register .domain-checker-unavailable,
#order-standard_cart .koode-domain-register .domain-checker-invalid {
    color: #dc2626;
    font-weight: 800;
}

#order-standard_cart .koode-domain-register .domain-price .price {
    display: inline-block;
    margin-right: 12px;
    color: #111827;
    font-size: 1.5rem;
    font-weight: 900;
}

#order-standard_cart .koode-domain-register .btn-add-to-cart,
#order-standard_cart .koode-domain-register .domain-contact-support {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800;
}

/* Pricing table / promo boxes */

#order-standard_cart .koode-domain-register .domain-pricing,
#order-standard_cart .koode-domain-register .domain-promo-box {
    border-radius: 18px;
}

@media (max-width: 767.98px) {
    #order-standard_cart .koode-domain-register #inputDomain {
        border-radius: 999px !important;
        margin-bottom: 10px;
    }

    #order-standard_cart .koode-domain-register #btnCheckAvailability {
        width: 100%;
        border-radius: 999px !important;
    }
}

/* ==============================
   Koode domain promo boxes
   ============================== */

#order-standard_cart .koode-domain-register .domain-promo-box {
    position: relative;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 210 px;
    margin: 0 0 24px;
    padding: 0 24px 24px !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

#order-standard_cart .koode-domain-register .domain-promo-box {
    margin-top: 24px !important;
}

#order-standard_cart .koode-domain-register .domain-pricing + .row {
    margin-top: 26px;
}

#order-standard_cart .koode-domain-register .domain-promo-box p:last-of-type {
    margin-bottom: 18px;
}

#order-standard_cart .koode-domain-register .domain-promo-box .btn {
    margin-top: auto;
}

#order-standard_cart .koode-domain-register .domain-promo-box .clearfix {
    margin: 0 -24px 18px;
    padding: 16px 24px;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%);
    color: #ffffff;
}

#order-standard_cart .koode-domain-register .domain-promo-box h3 {
    margin: 0;
    color: #ffffff;
    font-size: 1.05rem;
    font-weight: 800;
    white-space: normal;
}

#order-standard_cart .koode-domain-register .domain-promo-box i {
    display: none;
}

#order-standard_cart .koode-domain-register .domain-promo-box p {
    margin: 0 0 12px;
    color: #4b5563;
    line-height: 1.5;
}

#order-standard_cart .koode-domain-register .domain-promo-box .font-bold,
#order-standard_cart .koode-domain-register .domain-promo-box .text-warning,
#order-standard_cart .koode-domain-register .domain-promo-box .text-primary {
    color: #fff !important;
    font-weight: 600;
}

#order-standard_cart .koode-domain-register .domain-promo-box .btn {
    align-self: flex-start;
    margin-top: auto;
    border: 0 !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800;
    box-shadow: 0 10px 22px rgba(124, 58, 237, 0.24);
}

#order-standard_cart .koode-domain-register .domain-promo-box .btn:hover,
#order-standard_cart .koode-domain-register .domain-promo-box .btn:focus {
    background: linear-gradient(135deg, #f43f5e 0%, #6d28d9 100%) !important;
    color: #ffffff !important;
    text-decoration: none;
}

#order-standard_cart .koode-domain-register .domain-promo-box .small {
    margin-top: 12px;
    color: #6b7280;
}

/* ==============================
   Koode configure product domain options
   ============================== */

#order-standard_cart .domain-checker-result-headline {
    margin: 0 0 20px !important;
    padding: 22px 24px !important;
    background: #ffffff !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08) !important;
    text-align: center !important;
    font-size: 1.25rem !important;
    font-weight: 850 !important;
}

#order-standard_cart .domain-checker-available {
    color: #16a34a !important;
}

#order-standard_cart .domain-checker-unavailable,
#order-standard_cart .domain-checker-invalid {
    color: #dc2626 !important;
}

#order-standard_cart .domain-options .btn,
#order-standard_cart .domain-suggestions .btn,
#order-standard_cart .btn-group.domain-suggestion-pricing .btn,
#order-standard_cart .btn-group-lg .btn,
#order-standard_cart .domain-checker-result-headline + .text-center .btn,
#order-standard_cart button[type="submit"].btn-primary {
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 22px rgba(124, 58, 237, 0.24) !important;
}

#order-standard_cart .domain-options .btn:hover,
#order-standard_cart .domain-suggestions .btn:hover,
#order-standard_cart .btn-group.domain-suggestion-pricing .btn:hover,
#order-standard_cart .btn-group-lg .btn:hover,
#order-standard_cart button[type="submit"].btn-primary:hover {
    background: linear-gradient(135deg, #f43f5e 0%, #6d28d9 100%) !important;
    color: #ffffff !important;
}

#order-standard_cart .sub-heading {
    margin: 28px 0 24px !important;
    border-top: 0 !important;
    height: auto !important;
    text-align: left !important;
}

#order-standard_cart .sub-heading span {
    position: static !important;
    display: inline-block !important;
    padding: 0 !important;
    background: transparent !important;
    color: #111827 !important;
    font-size: 1.25rem !important;
    font-weight: 850 !important;
}

#order-standard_cart .row.domain-suggestions {
    margin: 0 0 24px !important;
}

#order-standard_cart .row.domain-suggestions > div {
    margin-bottom: 14px !important;
    padding: 18px !important;
    background: #ffffff !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06) !important;
}

#order-standard_cart .alert.alert-info.info-text-sm {
    margin: 22px 0 !important;
    padding: 14px 18px !important;
    background: #eef2ff !important;
    border: 0 !important;
    border-radius: 14px !important;
    color: #4b5563 !important;
}

/* ==============================
   Koode product domain selection
   ============================== */

#order-standard_cart .koode-product-domain {
    float: none !important;
    width: 100% !important;
    max-width: 1120px;
    margin: 0 auto;
}

#order-standard_cart .koode-product-domain .header-lined {
    margin-bottom: 24px;
}

#order-standard_cart .koode-product-domain .header-lined h1 {
    font-weight: 850;
    color: #111827;
}

#order-standard_cart .koode-product-domain .domain-selection-options {
    display: grid;
    gap: 18px;
    margin: 0 0 28px !important;
}

#order-standard_cart .koode-product-domain .domain-selection-options .option {
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 20px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

#order-standard_cart .koode-product-domain .domain-selection-options .option > label {
    display: block;
    margin: 0 !important;
    padding: 16px 24px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%);
    color: #ffffff !important;
    font-size: 1.02rem !important;
    font-weight: 800 !important;
}

#order-standard_cart .koode-product-domain .domain-selection-options .option > label input {
    margin-right: 10px;
}

#order-standard_cart .koode-product-domain .domain-input-group {
    margin: 0 !important;
    padding: 24px !important;
    background: #ffffff !important;
}

#order-standard_cart .koode-product-domain .form-control {
    height: 46px;
    border-radius: 12px !important;
    border: 1px solid rgba(15, 23, 42, 0.12) !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-product-domain .input-group-text {
    border-radius: 12px 0 0 12px !important;
    border-color: rgba(15, 23, 42, 0.12) !important;
    background: #f8fafc !important;
}

#order-standard_cart .koode-product-domain .btn-primary,
#order-standard_cart .koode-product-domain #btnDomainContinue {
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 22px rgba(124, 58, 237, 0.24);
}

#order-standard_cart .koode-product-domain .btn-primary:hover,
#order-standard_cart .koode-product-domain #btnDomainContinue:hover {
    background: linear-gradient(135deg, #f43f5e 0%, #6d28d9 100%) !important;
    color: #ffffff !important;
}

#order-standard_cart .koode-product-domain #DomainSearchResults {
    margin-top: 26px;
}

#order-standard_cart .koode-product-domain .primary-domain-header,
#order-standard_cart .koode-product-domain .suggested-domains .card-header {
    padding: 16px 24px;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    border: 0 !important;
    border-radius: 18px 18px 0 0;
    font-weight: 800;
}

#order-standard_cart .koode-product-domain #searchDomainInfo,
#order-standard_cart .koode-product-domain .suggested-domains {
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
    overflow: hidden;
}

#order-standard_cart .koode-product-domain .domain-lookup-primary-results {
    padding: 24px;
}

#order-standard_cart .koode-product-domain .headline {
    font-size: 1.25rem;
    font-weight: 850;
}

#order-standard_cart .koode-product-domain .domain-checker-available {
    color: #16a34a !important;
}

#order-standard_cart .koode-product-domain .domain-checker-unavailable,
#order-standard_cart .koode-product-domain .domain-checker-invalid {
    color: #dc2626 !important;
}

@media (max-width: 767.98px) {
    #order-standard_cart .koode-product-domain .domain-input-group {
        padding: 20px !important;
    }

    #order-standard_cart .koode-product-domain .btn {
        width: 100%;
        margin-top: 10px;
    }
}

/* Hide lower suggested domains block, keep spotlight TLD checks */
#order-standard_cart .koode-product-domain .suggested-domains {
    display: none !important;
}

#order-standard_cart .koode-domain-register .suggested-domains {
    display: none !important;
}

/* ==============================
   Koode View Cart
   ============================== */

#order-standard_cart .koode-view-cart .secondary-cart-body {
    width: calc(100% - 360px);
}

#order-standard_cart .koode-view-cart .secondary-cart-sidebar {
    width: 340px;
}

/* Tuotelista */

#order-standard_cart .koode-view-cart .view-cart-items-header {
    padding: 18px 24px;
    border-radius: 18px 18px 0 0;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%);
    color: #fff;
    font-weight: 700;
}

#order-standard_cart .koode-view-cart .view-cart-items {
    background: #fff;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 14px 35px rgba(15,23,42,.08);
    overflow: hidden;
}

#order-standard_cart .koode-view-cart .view-cart-items .item {
    padding: 22px 24px;
    border-bottom: 1px solid rgba(15,23,42,.08);
}

#order-standard_cart .koode-view-cart .view-cart-items .item:last-child {
    border-bottom: 0;
}

#order-standard_cart .koode-view-cart .item-title {
    display: block;
    font-size: 1.05rem;
    font-weight: 800;
    color: #111827;
}

#order-standard_cart .koode-view-cart .item-group {
    display: block;
    margin-top: 4px;
    color: #6b7280;
}

#order-standard_cart .koode-view-cart .item-domain {
    display: block;
    margin-top: 6px;
    color: #7c3aed;
    font-weight: 600;
}

#order-standard_cart .koode-view-cart .item-price {
    text-align: right;
}

#order-standard_cart .koode-view-cart .item-price > span:first-child {
    display: block;
    font-size: 1.25rem;
    font-weight: 800;
    color: #111827;
}

#order-standard_cart .koode-view-cart .cycle {
    color: #6b7280;
}

/* Edit / remove */

#order-standard_cart .koode-view-cart .btn-link {
    color: #7c3aed;
}

#order-standard_cart .koode-view-cart .btn-remove-from-cart {
    color: #ef4444 !important;
}

/* Tyhjennä kori */

#order-standard_cart .koode-view-cart .empty-cart {
    margin-top: 18px;
}

#order-standard_cart .koode-view-cart #btnEmptyCart {
    color: #ef4444;
}

/* Promo */

#order-standard_cart .koode-view-cart .view-cart-tabs {
    margin-top: 28px;
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(15,23,42,.08);
    overflow: hidden;
}

#order-standard_cart .koode-view-cart .tab-content {
    padding: 24px;
}

#order-standard_cart .koode-view-cart #inputPromotionCode {
    border-radius: 12px;
}

/* Yhteenveto */

#order-standard_cart .koode-view-cart .order-summary {
    background: #fff;
    border-radius: 18px;
    box-shadow: 0 18px 45px rgba(15,23,42,.10);
    overflow: hidden;
}

#order-standard_cart .koode-view-cart .order-summary h2 {
    margin: 0;
    padding: 18px 24px;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%);
    color: #fff;
    font-size: 1.1rem;
    font-weight: 800;
}

#order-standard_cart .koode-view-cart .summary-container {
    padding: 24px;
}

#order-standard_cart .koode-view-cart .subtotal,
#order-standard_cart .koode-view-cart .recurring-totals {
    margin-bottom: 14px;
}

#order-standard_cart .koode-view-cart .total-due-today {
    margin-top: 22px;
    padding: 18px;
    border-radius: 14px;
    background: #f8fafc;
    text-align: center;
}

#order-standard_cart .koode-view-cart .total-due-today .amt {
    display: block;
    font-size: 2rem;
    font-weight: 900;
    color: #111827;
}

/* Checkout nappi */

#order-standard_cart .koode-view-cart .btn-checkout {
    width: 100%;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    font-weight: 800;
}

#order-standard_cart .koode-view-cart .btn-checkout:hover {
    background: linear-gradient(135deg,#f43f5e 0%,#6d28d9 100%) !important;
}

#order-standard_cart .koode-view-cart .btn-continue-shopping {
    margin-top: 10px;
    color: #7c3aed;
}

/* Mobile */

@media (max-width: 991px) {

    #order-standard_cart .koode-view-cart .secondary-cart-body,
    #order-standard_cart .koode-view-cart .secondary-cart-sidebar {
        width: 100%;
    }

    #order-standard_cart .koode-view-cart .secondary-cart-sidebar {
        margin-top: 24px;
    }
}

/* ==============================
   Koode Configure Product
   ============================== */

#order-standard_cart .koode-configure-product {
    float: none !important;
    width: 100% !important;
    max-width: 1120px;
    margin: 0 auto;
}

#order-standard_cart .koode-configure-product .product-info,
#order-standard_cart .koode-configure-product .field-container,
#order-standard_cart .koode-configure-product .product-configurable-options,
#order-standard_cart .koode-configure-product #productAddonsContainer,
#order-standard_cart .koode-configure-product .order-summary {
    background: #fff !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 35px rgba(15,23,42,.08);
    padding: 24px !important;
    border: 0 !important;
}

#order-standard_cart .koode-configure-product .sub-heading {
    height: auto !important;
    border: 0 !important;
    margin: 28px 0 18px !important;
    text-align: left !important;
}

#order-standard_cart .koode-configure-product .sub-heading span {
    position: static !important;
    display: block !important;
    padding: 16px 24px !important;
    border-radius: 18px 18px 0 0 !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    color: #fff !important;
    font-weight: 800 !important;
}

#order-standard_cart .koode-configure-product .product-title {
    font-size: 1.45rem !important;
    font-weight: 850;
    color: #111827;
}

#order-standard_cart .koode-configure-product .form-control {
    border-radius: 12px !important;
    border: 1px solid rgba(15,23,42,.12) !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-configure-product .order-summary {
    padding: 0 !important;
    overflow: hidden;
}

#order-standard_cart .koode-configure-product .order-summary h2 {
    margin: 0;
    padding: 18px 24px;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%);
    color: #fff;
    font-size: 1.1rem;
    font-weight: 800;
}

#order-standard_cart .koode-configure-product .summary-container {
    padding: 24px !important;
}

#order-standard_cart .koode-configure-product #btnCompleteProductConfig {
    margin-top: 18px;
    border: 0 !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    color: #fff !important;
    font-weight: 800;
}

/* Configure product text sizing */

#order-standard_cart .koode-configure-product .product-info {
    font-size: 1rem !important;
    line-height: 1.6 !important;
}

#order-standard_cart .koode-configure-product .product-info p:not(.product-title) {
    color: #374151 !important;
    font-size: 0.98rem !important;
}

#order-standard_cart .koode-configure-product .product-info .product-title {
    margin-bottom: 10px !important;
    font-size: 1.6rem !important;
    line-height: 1.25 !important;
}

#order-standard_cart .koode-configure-product .product-info ul,
#order-standard_cart .koode-configure-product .product-info li {
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
}

/* Order summary text sizing */

#order-standard_cart .koode-configure-product .order-summary,
#order-standard_cart .koode-configure-product .summary-container {
    font-size: 0.95rem !important;
}

#order-standard_cart .koode-configure-product .order-summary .product-name {
    font-size: 1.05rem !important;
    font-weight: 800 !important;
}

#order-standard_cart .koode-configure-product .order-summary .product-group {
    font-size: 0.9rem !important;
    color: #4b5563 !important;
}

#order-standard_cart .koode-configure-product .order-summary .summary-totals,
#order-standard_cart .koode-configure-product .order-summary .subtotal,
#order-standard_cart .koode-configure-product .order-summary .recurring-totals {
    font-size: 0.95rem !important;
}

#order-standard_cart .koode-configure-product .order-summary .total-due-today .amt {
    font-size: 2.15rem !important;
    font-weight: 900 !important;
}

/* View cart: text polish */

#order-standard_cart .koode-view-cart .item-title {
    font-size: 1.12rem !important;
    line-height: 1.35 !important;
}

#order-standard_cart .koode-view-cart .item-group,
#order-standard_cart .koode-view-cart .item-domain,
#order-standard_cart .koode-view-cart small {
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
}

#order-standard_cart .koode-view-cart .item-price > span:first-child {
    font-size: 1.45rem !important;
}

#order-standard_cart .koode-view-cart .cycle {
    display: block;
    margin-top: 4px;
    font-size: 0.85rem !important;
}

/* View cart: promo code box */

#order-standard_cart .koode-view-cart .view-cart-tabs {
    margin-top: 26px !important;
    background: #ffffff !important;
    border: 0 !important;
    border-radius: 18px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08) !important;
    overflow: hidden;
}

#order-standard_cart .koode-view-cart .view-cart-tabs .nav-tabs {
    padding: 0 !important;
    border: 0 !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
}

#order-standard_cart .koode-view-cart .view-cart-tabs .nav-tabs .nav-link {
    margin: 0 !important;
    padding: 16px 22px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #ffffff !important;
    font-weight: 800 !important;
}

#order-standard_cart .koode-view-cart .view-cart-tabs .tab-content {
    padding: 24px !important;
    background: #ffffff !important;
}

#order-standard_cart .koode-view-cart #inputPromotionCode {
    height: 48px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(15, 23, 42, 0.12) !important;
    padding-left: 46px !important;
    font-size: 0.98rem !important;
}

#order-standard_cart .koode-view-cart .view-cart-tabs .field-icon {
    height: 48px !important;
    line-height: 48px !important;
}

#order-standard_cart .koode-view-cart .view-cart-tabs .btn-default {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 11px 18px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800 !important;
    box-shadow: 0 10px 22px rgba(124, 58, 237, 0.22) !important;
}

#order-standard_cart .koode-view-cart .koode-cart-label {
    margin-top: 12px !important;
}

#order-standard_cart .koode-view-cart .order-summary,
#order-standard_cart .koode-view-cart .summary-container {
    font-size: 0.98rem !important;
}

#order-standard_cart .koode-view-cart .order-summary .subtotal,
#order-standard_cart .koode-view-cart .order-summary .bordered-totals,
#order-standard_cart .koode-view-cart .order-summary .recurring-totals {
    font-size: 0.98rem !important;
    line-height: 1.5 !important;
}

#order-standard_cart .koode-view-cart .order-summary .recurring-charges {
    font-size: 0.92rem !important;
}

#order-standard_cart .koode-view-cart .order-summary .total-due-today span:not(.amt) {
    font-size: 0.95rem !important;
}

/* Cart item title slightly smaller */

#order-standard_cart .koode-view-cart .item-title {
    font-size: 1rem !important;
    font-weight: 750 !important;
}

/* Order summary recurring totals clearer */

#order-standard_cart .koode-view-cart .order-summary .recurring-totals {
    margin: 10px 0 18px !important;
    padding: 12px 14px !important;
    background: #f8fafc !important;
    border-radius: 12px !important;
}

#order-standard_cart .koode-view-cart .order-summary .recurring-totals > span:first-child {
    display: none !important;
}

#order-standard_cart .koode-view-cart .order-summary .recurring-charges {
    float: none !important;
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    font-size: 0.92rem !important;
    line-height: 1.45 !important;
    color: #4b5563 !important;
}

#order-standard_cart .koode-view-cart .order-summary .recurring-charges .cost {
    font-weight: 800 !important;
    color: #111827 !important;
}

/* Empty cart link polish */

#order-standard_cart .koode-view-cart .empty-cart {
    margin: 12px 0 0 !important;
    text-align: right !important;
}

#order-standard_cart .koode-view-cart #btnEmptyCart {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #ef4444 !important;
    font-size: 0.85rem !important;
    font-weight: 600 !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-view-cart #btnEmptyCart:hover {
    color: #dc2626 !important;
    text-decoration: underline !important;
}

/* ==============================
   Checkout
   ============================== */

#order-standard_cart .koode-checkout {
    max-width: 1100px;
    margin: 0 auto;
}

#order-standard_cart .koode-checkout .sub-heading {
    margin: 36px 0 0 !important;
    border: 0 !important;
    height: auto !important;
}

#order-standard_cart .koode-checkout .sub-heading span {
    position: static !important;
    display: block !important;
    padding: 18px 24px !important;
    border-radius: 18px 18px 0 0 !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    color: #fff !important;
    font-size: 1.05rem !important;
    font-weight: 800 !important;
	margin-top: 2rem;
}

#order-standard_cart .koode-checkout .row {
    margin-bottom: 0;
}

#order-standard_cart .koode-checkout .field-container,
#order-standard_cart .koode-checkout .apply-credit-container,
#order-standard_cart .koode-checkout #paymentGatewaysContainer,
#order-standard_cart .koode-checkout .marketing-email-optin {
    background: #fff;
    border-radius: 0 0 18px 18px;
    padding: 24px;
    box-shadow: 0 14px 35px rgba(15,23,42,.08);
}

#order-standard_cart .koode-checkout .form-control {
    height: 48px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(15,23,42,.12) !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-checkout textarea.form-control {
    height: auto !important;
    min-height: 120px;
}

#order-standard_cart .koode-checkout .field-icon {
    color: #7c3aed !important;
}

#order-standard_cart .koode-checkout #totalDueToday {
    border: 0 !important;
    border-radius: 18px !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    color: #fff !important;
    padding: 22px !important;
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    margin-top: 2rem;
}

#order-standard_cart .koode-checkout #totalCartPrice {
    font-size: 2rem !important;
    font-weight: 900 !important;
}

#order-standard_cart .koode-checkout #btnCompleteOrder {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 16px 42px !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    background: linear-gradient(135deg,#ec4899 0%,#7c3aed 100%) !important;
    box-shadow: 0 14px 35px rgba(124,58,237,.25);
	margin-top: 2rem;
}

/* Checkout login note */

#order-standard_cart .koode-checkout .koode-checkout-login-note {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin: 0 0 28px;
    padding: 22px 24px;
    background: #ffffff;
    border-radius: 18px;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
}

#order-standard_cart .koode-checkout .koode-checkout-login-text strong {
    display: block;
    margin-bottom: 4px;
    color: #111827;
    font-size: 1.05rem;
    font-weight: 850;
}

#order-standard_cart .koode-checkout .koode-checkout-login-text span {
    color: #4b5563;
}

#order-standard_cart .koode-checkout .koode-checkout-login-actions {
    flex: 0 0 auto;
}

#order-standard_cart .koode-checkout .koode-checkout-login-actions .btn {
    border: 0 !important;
    border-radius: 999px !important;
    padding: 10px 18px !important;
    background: linear-gradient(135deg, #ec4899 0%, #7c3aed 100%) !important;
    color: #ffffff !important;
    font-weight: 800;
    box-shadow: 0 10px 22px rgba(124, 58, 237, 0.22);
}

@media (max-width: 767.98px) {
    #order-standard_cart .koode-checkout .koode-checkout-login-note {
        flex-direction: column;
        align-items: flex-start;
    }

    #order-standard_cart .koode-checkout .koode-checkout-login-actions,
    #order-standard_cart .koode-checkout .koode-checkout-login-actions .btn {
        width: 100%;
    }
}

/* Checkout section content backgrounds */

#order-standard_cart .koode-checkout .sub-heading + .row,
#order-standard_cart .koode-checkout .sub-heading + p + .row,
#order-standard_cart .koode-checkout .sub-heading + .field-container,
#order-standard_cart .koode-checkout .sub-heading + .alert + .row,
#order-standard_cart .koode-checkout .sub-heading + .text-center,
#order-standard_cart .koode-checkout .sub-heading + div:not(.sub-heading) {
    background: #f8fafc !important;
    padding: 24px !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
}

/* Remove double card feel where section already has its own wrapper */

#order-standard_cart .koode-checkout .sub-heading + .field-container {
    margin-top: 0 !important;
}

/* Better spacing inside checkout sections */

#order-standard_cart .koode-checkout .form-group {
    margin-bottom: 16px !important;
}

#order-standard_cart .koode-checkout .row {
    row-gap: 12px;
}

#order-standard_cart .koode-checkout .field,
#order-standard_cart .koode-checkout .form-control {
    margin-bottom: 0 !important;
}

/* Inputs on light grey section background */

#order-standard_cart .koode-checkout .field,
#order-standard_cart .koode-checkout .form-control,
#order-standard_cart .koode-checkout textarea {
    background: #ffffff !important;
}

/* Payment area consistency */

#order-standard_cart .koode-checkout #paymentGatewaysContainer,
#order-standard_cart .koode-checkout .cc-input-container,
#order-standard_cart .koode-checkout .marketing-email-optin {
    background: #f8fafc !important;
    border: 0 !important;
    border-radius: 0 0 18px 18px !important;
    padding: 24px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
}

/* Notes textarea section */

#order-standard_cart .koode-checkout textarea[name="notes"] {
    min-height: 130px;
    border-radius: 12px !important;
}

/* Tighten headings */

#order-standard_cart .koode-checkout .sub-heading {
    margin-top: 26px !important;
}

/* First heading after login note */

#order-standard_cart .koode-checkout .koode-checkout-login-note + .alert + form .sub-heading,
#order-standard_cart .koode-checkout form > .sub-heading:first-of-type {
    margin-top: 0 !important;
}

/* Checkout: keep section bodies aligned with gradient headers */

#order-standard_cart .koode-checkout .sub-heading + .row,
#order-standard_cart .koode-checkout .sub-heading + p + .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

#order-standard_cart .koode-checkout .sub-heading + .row > [class*="col-"],
#order-standard_cart .koode-checkout .sub-heading + p + .row > [class*="col-"] {
    padding-left: 12px !important;
    padding-right: 12px !important;
}

/* Checkout: domain registrant info text + selector in one card */

#order-standard_cart .koode-checkout .sub-heading + p.small.text-muted {
    margin: 0 !important;
    padding: 24px 24px 10px !important;
    background: #f8fafc !important;
    border-radius: 0 !important;
    color: #374151 !important;
    font-size: 0.95rem !important;
    line-height: 1.55 !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-checkout .sub-heading + p.small.text-muted + .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 24px 24px !important;
    background: #f8fafc !important;
    border-radius: 0 0 18px 18px !important;
    box-shadow: 0 14px 35px rgba(15, 23, 42, 0.08);
}

#order-standard_cart .koode-checkout .sub-heading + p.small.text-muted + .row > [class*="col-"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

#order-standard_cart .koode-checkout #paymentGatewaysContainer {
    margin-bottom: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-checkout .cc-input-container {
    margin-top: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#order-standard_cart .koode-checkout .koode-payment-total {
    margin: 0 0 28px !important;
    padding: 20px 24px !important;
    background: #f8fafc !important;
    border: 2px solid rgba(124, 58, 237, 0.22) !important;
    border-radius: 0 0 18px 18px !important;
    text-align: right;
}

#order-standard_cart .koode-checkout .koode-payment-total span {
    display: block;
    margin-bottom: 4px;
    color: #4b5563;
    font-size: 0.95rem;
}

#order-standard_cart .koode-checkout .koode-payment-total strong {
    color: #111827;
    font-size: 1.8rem;
    font-weight: 900;
}

#order-standard_cart .koode-checkout #totalDueToday {
    background: linear-gradient(...);
}