.woocommerce-cart-form .actions {
    display: none !important;
}

.tcr-checkout-options {
    margin: 0 0 12px
}

.tcr-opt-product {
    margin-bottom: 1.75em;
}

.tcr-opt-heading {
    font-weight: 600;
    margin-top: 16px
}

.tcr-opt-group {
    padding: 1.75rem;
    border-bottom: 1px solid #e9e6ed;
    border-radius: 0;
}

.tcr-opt-group:last-child {
    border-bottom: none;
}

.tcr-opt-form.tcr-boxed-content {
    padding: 0 !important;
}

.tcr-opt-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 8px 0
}

.tcr-opt-row label {
    display: inline-flex;
    align-items: center;
    justify-content: start;
    padding: 4px 0;
    gap: 8px;
}

.tcr-opt-title {
    flex: 1;
    font-weight: 700;
}

.tcr-opt-title > small {
    font-weight: 400;
    font-size: 14px;
    color: rgba(255,255,255,.84);
}

.tcr-opt-price {
    white-space: nowrap;
    font-weight: 700;
}

.tcr-opt-note {
    display: none;
    margin-top: 4px;
    margin-bottom: 16px;
    font-size: 14px;
    color: rgba(255,255,255,.84);
}

/**
 * Custom radio styling to match checkbox cards (tcr-cancel)
 * Applies to the Yes/No radios in the cart options
 */

/* Make labels behave like custom checkbox controls */
.tcr-opt-row label {
    position: relative;
    cursor: pointer;
    padding-left: 1.75rem; /* room for faux box */
}

/* Visually hide the native radio but keep it accessible and clickable */
.tcr-opt-row label input[type="radio"] {
    position: absolute;
    left: 0;
    top: .25rem;
    width: 1.25rem;
    height: 1.25rem;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

/* Faux square box (same metrics as .tcr-cancel label:before) */
.tcr-opt-row label:before {
    display: block;
    position: absolute;
    left: 0;
    top: .25rem;
    content: "";
    width: 1.25rem;
    height: 1.25rem;
    border-radius: .25rem;
    background: #fff;
    border: 1px solid #f8f9fa;
}

/* Orange checkmark when selected (same style as .tcr-cancel.checked label:after) */
.tcr-opt-row label:has(input:checked)::after {
    display: block;
    position: absolute;
    content: "";
    left: 7px;
    top: .35rem;
    width: 7px;
    height: 15px;
    border: solid #ff7b3a;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg);
}

/* Keyboard focus ring on the faux box */
.tcr-opt-row label:has(input:focus-visible)::before {
    outline: 2px solid #ff7b3a;
    outline-offset: 2px;
}

.tcr-opt-product:not(.tcr-opt-product--invalid) .tcr-opt-description {
    display: none;
}

.tcr-opt-description {
    margin-bottom: 1rem;
    color: #f2545b;
}

.tcr-opt-product.tcr-opt-product--invalid .tcr-opt-group--invalid  .tcr-opt-title,
.tcr-opt-product.tcr-opt-product--invalid .tcr-opt-group--invalid  .tcr-opt-price
{
    color: #f2545b;
}

.tcr-opt-product.tcr-opt-product--invalid .tcr-opt-description {
    display: block;
}
