/* Product configuration: keep the order form legible in the dark Neonhost palette. */
body.page-order #frmConfigureProduct {
    --cart-bg: #1d1a29;
    --cart-bg-raised: #252033;
    --cart-border: #4d3c65;
    --cart-text: #f7f4ff;
    --cart-muted: #c9bfd7;
    --cart-purple: #b676f4;
    --cart-pink: #f277c5;
    color: var(--cart-text);
}

body.page-order #frmConfigureProduct .section-title,
body.page-order #frmConfigureProduct .panel-title,
body.page-order #frmConfigureProduct .product-config-info h2 {
    color: var(--cart-text);
}

body.page-order #frmConfigureProduct .section-desc {
    color: var(--cart-muted);
}

body.page-order #frmConfigureProduct .panel.panel-form,
body.page-order #frmConfigureProduct .panel.panel-check,
body.page-order #frmConfigureProduct .panel.panel-summary {
    background: var(--cart-bg);
    border: 1px solid var(--cart-border);
    border-radius: 15px;
    color: var(--cart-text);
    box-shadow: 0 12px 32px rgba(0, 0, 0, .12);
}

body.page-order #frmConfigureProduct .panel.panel-form.product-config-info {
    background: linear-gradient(135deg, #292039, #1d1a29 70%);
    border-color: #77539a;
    border-left: 3px solid var(--cart-purple);
}

body.page-order #frmConfigureProduct .product-config-info > .panel-body {
    padding: 28px 30px;
}

body.page-order #frmConfigureProduct .product-config-info h2 {
    margin: 0 0 22px;
    font-size: clamp(20px, 2vw, 26px);
    line-height: 1.3;
    font-weight: 700;
}

body.page-order #frmConfigureProduct .product-info,
body.page-order #frmConfigureProduct .product-info :is(p, li, span, div, strong, b, i) {
    color: var(--cart-muted) !important;
}

body.page-order #frmConfigureProduct .product-info :is(strong, b) {
    color: var(--cart-text) !important;
}

body.page-order #frmConfigureProduct .product-info a {
    color: var(--cart-purple) !important;
}

body.page-order #frmConfigureProduct .product-info :is(ul, ol) {
    padding-left: 22px;
}

body.page-order #frmConfigureProduct .product-info li + li {
    margin-top: 5px;
}

body.page-order #frmConfigureProduct .panel.panel-check.checked {
    background: var(--cart-bg-raised);
    border-color: var(--cart-purple);
    box-shadow: 0 0 0 1px rgba(182, 118, 244, .2);
}

body.page-order #frmConfigureProduct .check-title,
body.page-order #frmConfigureProduct .check-content,
body.page-order #frmConfigureProduct .panel-form label,
body.page-order #frmConfigureProduct .form-group {
    color: var(--cart-text);
}

body.page-order #frmConfigureProduct .check-subtitle,
body.page-order #frmConfigureProduct .check-cycle,
body.page-order #frmConfigureProduct .co-cycle {
    color: var(--cart-muted);
}

body.page-order #frmConfigureProduct .panel-form .form-control {
    background: #171522;
    border-color: #5b4a73;
    color: var(--cart-text);
}

body.page-order #frmConfigureProduct .panel-form .form-control:focus {
    border-color: var(--cart-purple);
    box-shadow: 0 0 0 3px rgba(182, 118, 244, .18);
}

body.page-order #frmConfigureProduct .panel-form .form-control::placeholder {
    color: #afa4c1;
}

body.page-order #frmConfigureProduct .panel-range-slider > .panel-body {
    padding: 32px 28px 38px;
}

body.page-order #frmConfigureProduct .irs-line {
    background: #473858;
    border-color: #665079;
}

body.page-order #frmConfigureProduct .irs-bar,
body.page-order #frmConfigureProduct .irs-bar-edge {
    background: linear-gradient(90deg, #a66cf0, #e871bd);
    border-color: #be83ee;
}

body.page-order #frmConfigureProduct .irs-slider {
    background: #f7eaff;
    border-color: #ae75e5;
}

body.page-order #frmConfigureProduct .irs-grid-text,
body.page-order #frmConfigureProduct .irs-min,
body.page-order #frmConfigureProduct .irs-max {
    color: var(--cart-muted);
}

body.page-order #frmConfigureProduct .irs-grid-pol {
    background: #766489;
}

body.page-order #frmConfigureProduct .irs-from,
body.page-order #frmConfigureProduct .irs-to,
body.page-order #frmConfigureProduct .irs-single {
    background: var(--cart-purple);
    color: #191121;
}

body.page-order #frmConfigureProduct .panel.panel-summary {
    background: linear-gradient(155deg, #382454, #281e3c 75%);
    border-color: #8056a2;
    box-shadow: 0 16px 38px rgba(34, 15, 55, .2);
}

body.page-order #frmConfigureProduct .panel-summary :is(.panel-heading, .panel-body, .panel-footer) {
    background: transparent;
    border-color: rgba(226, 195, 255, .2);
}

body.page-order #frmConfigureProduct .panel-summary :is(h2, h3, h4, .panel-title, .summary-total, .total-due-today) {
    color: var(--cart-text);
}

body.page-order #frmConfigureProduct .panel-summary .price-amount {
    font-size: clamp(25px, 2.1vw, 34px);
    letter-spacing: -.025em;
    white-space: nowrap;
}

body.page-order #frmConfigureProduct .panel-summary .btn:not(:disabled):not(.disabled) {
    background: linear-gradient(110deg, #a66cf0, #e871bd);
    border-color: #d18bea;
    color: #1b1025;
    font-weight: 700;
}

body.page-order #frmConfigureProduct .panel-summary .btn:disabled,
body.page-order #frmConfigureProduct .panel-summary .btn.disabled {
    background: #574d64;
    border-color: #73677f;
    color: #dfd8e6;
    opacity: .75;
}

@media (max-width: 767px) {
    body.page-order #frmConfigureProduct .product-config-info > .panel-body,
    body.page-order #frmConfigureProduct .panel-range-slider > .panel-body {
        padding: 22px 20px;
    }
}
