
/* ==========================================================================
   Centar Madrugada – registration checkout v1.2.1
   Clean native Woo layout; old Elementor/EAEL checkout content is bypassed.
   ========================================================================== */

body.cm-registration-checkout{
    --cmc-purple:#8324e4;
    --cmc-purple-dark:#6718ba;
    --cmc-purple-pale:#f4ecfb;
    --cmc-purple-wash:#fbf7fd;
    --cmc-canvas:#f6f2f8;
    --cmc-canvas-warm:#faf7fb;
    --cmc-ink:#302833;
    --cmc-text:#665c6b;
    --cmc-muted:#8b8090;
    --cmc-line:#e6dce9;
    --cmc-line-strong:#d7c8df;
    --cmc-white:#fff;
    --cmc-danger:#b42318;
    --cmc-danger-bg:#fff7f6;
    --cmc-shadow:0 12px 32px rgba(57,33,71,.07);
    margin:0;
    background:var(--cmc-canvas);
    color:var(--cmc-text);
}

.cm-checkout-page{
    position:relative;
    min-height:60vh;
    padding:0 22px 78px;
    overflow:hidden;
    background:
        radial-gradient(circle at 8% 6%, rgba(131,36,228,.08) 0, rgba(131,36,228,0) 28%),
        radial-gradient(circle at 93% 16%, rgba(111,28,138,.055) 0, rgba(111,28,138,0) 24%),
        linear-gradient(180deg, #fbf8fc 0, var(--cmc-canvas) 240px, var(--cmc-canvas) 100%);
}
.cm-checkout-page-inner{
    width:100%;
    max-width:1220px;
    margin:0 auto;
}
body.cm-registration-checkout .woocommerce{
    width:100%;
    max-width:none;
    margin:0;
}

/* Intro: deliberately lighter than v1.2.0 and closer to the rest of the site. */
.cm-checkout-intro{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:30px;
    margin:0 0 28px;
    padding:44px 4px 26px;
    border-bottom:1px solid rgba(131,36,228,.10);
}
.cm-checkout-intro-copy{max-width:720px;}
.cm-checkout-eyebrow{
    display:block;
    margin-bottom:8px;
    color:var(--cmc-purple);
    font-size:.72rem;
    font-weight:850;
    letter-spacing:.11em;
    line-height:1.2;
    text-transform:uppercase;
}
.cm-checkout-intro h1{
    margin:0 0 9px!important;
    color:var(--cmc-ink)!important;
    font-size:clamp(2rem,3.2vw,2.8rem)!important;
    font-weight:750!important;
    letter-spacing:-.035em!important;
    line-height:1.05!important;
}
.cm-checkout-intro p{
    max-width:680px;
    margin:0!important;
    color:var(--cmc-text)!important;
    font-size:.98rem;
    line-height:1.62;
}
.cm-checkout-back{
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
    padding:8px 0;
    color:var(--cmc-purple)!important;
    font-size:.84rem;
    font-weight:750;
    text-decoration:none!important;
}
.cm-checkout-back:hover{color:var(--cmc-purple-dark)!important;}

/* Coupon: preserve it, but do not let it become a giant Woo notice. */
body.cm-registration-checkout .woocommerce-form-coupon-toggle{
    max-width:720px;
    margin:0 0 18px;
}
body.cm-registration-checkout .woocommerce-form-coupon-toggle .woocommerce-info{
    min-height:0!important;
    margin:0!important;
    padding:10px 13px!important;
    border:1px solid var(--cmc-line)!important;
    border-radius:11px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--cmc-muted)!important;
    font-size:.78rem!important;
}
body.cm-registration-checkout .woocommerce-form-coupon-toggle .woocommerce-info:before{
    display:none!important;
}
body.cm-registration-checkout .woocommerce-form-coupon-toggle a{
    color:var(--cmc-purple)!important;
    font-weight:750;
}
body.cm-registration-checkout form.checkout_coupon{
    max-width:540px;
    margin:0 0 22px!important;
    padding:15px!important;
    border:1px solid var(--cmc-line)!important;
    border-radius:13px!important;
    background:#fff!important;
}

/* Two-column checkout without false vertical "steps":
   left = participants + purchaser, right = summary/payment. */
body.cm-registration-checkout form.checkout.woocommerce-checkout{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(420px,450px);
    gap:24px 38px;
    align-items:start;
    margin:0!important;
}
body.cm-registration-checkout form.checkout > #customer_details{
    grid-column:1;
    grid-row:1;
}
body.cm-registration-checkout form.checkout > .cm-checkout-registration{
    grid-column:1;
    grid-row:2;
}
body.cm-registration-checkout form.checkout > #order_review_heading{
    display:none!important;
}
body.cm-registration-checkout form.checkout > #order_review{
    grid-column:2;
    grid-row:1 / span 2;
    position:sticky;
    top:92px;
}

/* Main cards */
.cm-checkout-registration,
body.cm-registration-checkout #customer_details,
body.cm-registration-checkout #order_review{
    margin:0!important;
    padding:26px!important;
    border:1px solid rgba(111,28,138,.10)!important;
    border-radius:20px!important;
    background:rgba(255,255,255,.96)!important;
    box-shadow:var(--cmc-shadow)!important;
}
body.cm-registration-checkout #customer_details{
    float:none!important;
    width:100%!important;
}
body.cm-registration-checkout #order_review{
    background:
        linear-gradient(180deg,#fff 0%,#fff 72%,#fdfbfe 100%)!important;
}
body.cm-registration-checkout #customer_details .col-1,
body.cm-registration-checkout #customer_details .col-2{
    float:none!important;
    width:100%!important;
}
body.cm-registration-checkout #customer_details .col-2:not(:has(.form-row)){
    display:none!important;
}

/* Section headings: small "Korak" pill instead of floating numbered circles. */
.cm-checkout-section-heading,
.cm-checkout-native-heading{
    display:flex;
    align-items:flex-start;
    gap:13px;
    margin:0 0 20px;
}
.cm-checkout-step{
    display:inline-flex;
    flex:0 0 auto;
    align-items:center;
    justify-content:center;
    min-height:26px;
    margin-top:1px;
    padding:5px 9px;
    border:1px solid rgba(131,36,228,.14);
    border-radius:999px;
    background:var(--cmc-purple-pale);
    color:var(--cmc-purple);
    font-size:.65rem;
    font-weight:850;
    letter-spacing:.045em;
    line-height:1;
    text-transform:uppercase;
}
.cm-checkout-section-heading h2,
.cm-checkout-native-heading h2,
.cm-checkout-summary-heading h2{
    margin:0 0 4px!important;
    color:var(--cmc-ink)!important;
    font-size:1.25rem!important;
    font-weight:750!important;
    letter-spacing:-.018em!important;
    line-height:1.2!important;
}
.cm-checkout-section-heading p,
.cm-checkout-native-heading p,
.cm-checkout-summary-heading p{
    margin:0!important;
    color:var(--cmc-muted)!important;
    font-size:.82rem;
    line-height:1.45;
}
body.cm-registration-checkout .woocommerce-billing-fields > h3:first-child{
    display:none!important;
}

/* Registration/product */
.cm-checkout-registration-item + .cm-checkout-registration-item{
    margin-top:22px;
    padding-top:22px;
    border-top:1px solid var(--cmc-line);
}
.cm-checkout-product-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:15px 16px;
    border:1px solid rgba(131,36,228,.10);
    border-radius:14px;
    background:var(--cmc-purple-wash);
}
.cm-checkout-product-copy{
    display:flex;
    flex-direction:column;
    gap:3px;
    min-width:0;
}
.cm-checkout-product-title{
    color:var(--cmc-ink);
    font-size:.98rem;
    font-weight:780;
    line-height:1.35;
}
.cm-checkout-product-meta{
    color:var(--cmc-muted);
    font-size:.78rem;
    line-height:1.4;
}
.cm-checkout-product-price{
    margin-top:2px;
    color:var(--cmc-purple);
    font-size:.82rem;
    font-weight:800;
}
.cm-checkout-qty-wrap{
    flex:0 0 auto;
    min-width:128px;
}
.cm-checkout-qty-label{
    display:block;
    margin:0 0 6px;
    color:var(--cmc-muted);
    font-size:.63rem;
    font-weight:850;
    letter-spacing:.07em;
    text-align:center;
    text-transform:uppercase;
}
.cm-checkout-qty{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:5px;
}
.cm-checkout-qty button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:34px!important;
    height:34px!important;
    min-width:34px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid var(--cmc-line-strong)!important;
    border-radius:9px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--cmc-purple)!important;
    font-size:1.18rem!important;
    line-height:1!important;
}
.cm-checkout-qty button:hover,
.cm-checkout-qty button:focus{
    border-color:var(--cmc-purple)!important;
    background:var(--cmc-purple)!important;
    color:#fff!important;
}
.cm-registration-qty{
    width:48px!important;
    height:34px!important;
    min-height:34px!important;
    margin:0!important;
    padding:4px!important;
    border:1px solid var(--cmc-line-strong)!important;
    border-radius:9px!important;
    background:#fff!important;
    color:var(--cmc-ink)!important;
    font-size:.9rem!important;
    font-weight:800!important;
    text-align:center!important;
    -moz-appearance:textfield;
}
.cm-registration-qty::-webkit-outer-spin-button,
.cm-registration-qty::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}
.cm-checkout-qty-wrap small{
    display:block;
    margin-top:5px;
    color:var(--cmc-muted);
    font-size:.64rem;
    text-align:center;
}

/* Participants */
.cm-checkout-participants{
    display:grid;
    gap:11px;
    margin-top:15px;
}
.cm-checkout-participant{
    padding:15px 16px 5px;
    border:1px solid var(--cmc-line);
    border-radius:14px;
    background:#fff;
}
.cm-checkout-participant-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin-bottom:10px;
    color:var(--cmc-ink);
    font-size:.86rem;
}
.cm-checkout-participant-head strong{
    font-weight:800;
}
.cm-checkout-self{
    display:flex;
    align-items:center;
    gap:8px;
    margin:0 0 4px!important;
    color:#504655;
    font-size:.81rem;
    font-weight:750;
    cursor:pointer;
}
.cm-checkout-self.is-hidden{display:none!important;}
.cm-checkout-self input{
    width:17px!important;
    height:17px!important;
    min-height:17px!important;
    margin:0!important;
    accent-color:var(--cmc-purple);
}
.cm-checkout-self-note{
    margin:0 0 12px!important;
    color:var(--cmc-muted);
    font-size:.69rem;
    line-height:1.45;
}
.cm-participant-fields.is-hidden{display:none;}
.cm-participant-field-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:11px;
}

/* Billing/participant fields */
body.cm-registration-checkout .woocommerce form .form-row{
    margin:0 0 13px!important;
    padding:0!important;
}
body.cm-registration-checkout .woocommerce form .form-row label{
    display:block;
    margin:0 0 5px!important;
    padding:0!important;
    color:#5a505f!important;
    font-size:.74rem!important;
    font-weight:760!important;
    line-height:1.35!important;
}
body.cm-registration-checkout .woocommerce form .form-row .required{
    color:var(--cmc-purple)!important;
}
body.cm-registration-checkout .woocommerce form .form-row .optional{
    display:none!important;
}
body.cm-registration-checkout .woocommerce form .form-row input.input-text,
body.cm-registration-checkout .woocommerce form .form-row textarea,
body.cm-registration-checkout .woocommerce form .form-row select,
body.cm-registration-checkout .select2-container--default .select2-selection--single{
    width:100%!important;
    min-height:45px!important;
    border:1px solid #ddd3e3!important;
    border-radius:10px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--cmc-ink)!important;
    font-size:.88rem!important;
    transition:border-color .16s ease, box-shadow .16s ease!important;
}
body.cm-registration-checkout .woocommerce form .form-row input.input-text,
body.cm-registration-checkout .woocommerce form .form-row textarea{
    padding:9px 11px!important;
}
body.cm-registration-checkout .woocommerce form .form-row textarea{
    min-height:90px!important;
}
body.cm-registration-checkout .woocommerce form .form-row input.input-text:focus,
body.cm-registration-checkout .woocommerce form .form-row textarea:focus,
body.cm-registration-checkout .woocommerce form .form-row select:focus,
body.cm-registration-checkout .select2-container--open .select2-selection--single{
    border-color:rgba(131,36,228,.62)!important;
    box-shadow:0 0 0 3px rgba(131,36,228,.08)!important;
    outline:none!important;
}
body.cm-registration-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{
    padding-left:11px!important;
    color:var(--cmc-ink)!important;
    line-height:43px!important;
}
body.cm-registration-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
    height:43px!important;
}
body.cm-registration-checkout #is_legal_entity_field,
body.cm-registration-checkout .billko-radio{
    margin:2px 0 16px!important;
    padding:12px 13px!important;
    border:1px solid rgba(131,36,228,.12)!important;
    border-radius:12px!important;
    background:var(--cmc-purple-wash)!important;
}
body.cm-registration-checkout #is_legal_entity{
    accent-color:var(--cmc-purple);
}

/* Pravna osoba je sama naručitelj/platitelj; osobno ime i prezime nisu dio billing bloka. */
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_first_name_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_last_name_field{
    display:none!important;
}

/* Fizička osoba ne treba poslovne podatke ni adresu sjedišta. */
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_company_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_eu_vat_number_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_country_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_address_1_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_city_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_postcode_field{
    display:none!important;
}

/* Kod fizičke osobe ime i prezime ostaju prvi identifikacijski podaci naručitelja. */
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_first_name_field,
body.cm-registration-checkout #customer_details.cm-billing-private-person #billing_last_name_field{
    display:block;
}

/* Kod pravne osobe poslovni podaci i adresa sjedišta moraju biti vidljivi. */
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_company_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_eu_vat_number_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_country_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_address_1_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_city_field,
body.cm-registration-checkout #customer_details.cm-billing-legal-entity #billing_postcode_field{
    display:block!important;
}

/* Summary/payment sidebar */
.cm-checkout-summary-heading{
    margin:0 0 21px;
    padding:0 0 18px;
    border-bottom:1px solid var(--cmc-line);
}
.cm-checkout-summary-heading .cm-checkout-eyebrow{
    margin-bottom:7px;
}
.cm-checkout-summary-heading h2{
    font-size:1.38rem!important;
}
.cm-checkout-summary-heading p{
    max-width:330px;
    font-size:.84rem!important;
    line-height:1.5!important;
}

body.cm-registration-checkout #order_review table.shop_table{
    width:100%!important;
    margin:0!important;
    border:0!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    background:transparent!important;
}

/* The column labels were visually crowding the actual information.
   The card itself already makes the meaning obvious. */
body.cm-registration-checkout #order_review table.shop_table thead{
    display:none!important;
}

body.cm-registration-checkout #order_review table.shop_table tbody tr.cart_item td{
    padding:4px 0 22px!important;
    border:0!important;
    vertical-align:top!important;
}

body.cm-registration-checkout #order_review table.shop_table tbody .product-name{
    width:69%;
    padding-right:26px!important;
    color:var(--cmc-ink)!important;
    font-size:.91rem!important;
    font-weight:720!important;
    line-height:1.52!important;
}

body.cm-registration-checkout #order_review table.shop_table tbody .product-name .product-quantity{
    display:inline-block;
    margin-left:4px;
    color:var(--cmc-muted)!important;
    font-size:.76rem!important;
    font-weight:700!important;
    white-space:nowrap;
}

body.cm-registration-checkout #order_review table.shop_table tbody .product-total{
    width:31%;
    padding-left:10px!important;
    color:var(--cmc-ink)!important;
    font-size:1.02rem!important;
    font-weight:800!important;
    line-height:1.45!important;
    text-align:right!important;
    white-space:nowrap;
}

body.cm-registration-checkout #order_review table.shop_table tbody .product-total .amount{
    color:var(--cmc-ink)!important;
    font-weight:820!important;
}

/* Subtotal is redundant in this direct-registration flow when it equals total. */
body.cm-registration-checkout #order_review table.shop_table .cart-subtotal{
    display:none!important;
}

body.cm-registration-checkout #order_review table.shop_table tfoot{
    display:table-row-group;
}

body.cm-registration-checkout #order_review table.shop_table .order-total th,
body.cm-registration-checkout #order_review table.shop_table .order-total td{
    padding:17px 16px!important;
    border:0!important;
    background:var(--cmc-purple-pale)!important;
    color:var(--cmc-ink)!important;
    vertical-align:middle!important;
}

body.cm-registration-checkout #order_review table.shop_table .order-total th{
    width:45%;
    border-radius:13px 0 0 13px!important;
    font-size:.82rem!important;
    font-weight:800!important;
    letter-spacing:.01em;
}

body.cm-registration-checkout #order_review table.shop_table .order-total td{
    width:55%;
    border-radius:0 13px 13px 0!important;
    text-align:right!important;
}

body.cm-registration-checkout #order_review table.shop_table .order-total .amount{
    color:var(--cmc-purple)!important;
    font-size:1.48rem!important;
    font-weight:880!important;
    letter-spacing:-.025em;
    white-space:nowrap;
}

.cm-checkout-payment-heading{
    display:flex;
    flex-direction:column;
    gap:3px;
    margin:27px 0 12px;
    padding-top:22px;
    border-top:1px solid var(--cmc-line);
}
.cm-checkout-payment-heading strong{
    color:var(--cmc-ink);
    font-size:1rem;
}
.cm-checkout-payment-heading span{
    color:var(--cmc-muted);
    font-size:.74rem;
    line-height:1.45;
}

body.cm-registration-checkout #payment{
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
}
body.cm-registration-checkout #payment ul.payment_methods{
    margin:0!important;
    padding:0!important;
    border:0!important;
}
body.cm-registration-checkout #payment ul.payment_methods li{
    margin:0 0 10px!important;
    padding:14px 15px!important;
    border:1px solid var(--cmc-line)!important;
    border-radius:13px!important;
    background:#fff!important;
}
body.cm-registration-checkout #payment ul.payment_methods li:last-child{
    margin-bottom:0!important;
}
body.cm-registration-checkout #payment ul.payment_methods li > input[type=radio]{
    accent-color:var(--cmc-purple);
}
body.cm-registration-checkout #payment ul.payment_methods li > label{
    color:var(--cmc-ink)!important;
    font-size:.86rem!important;
    font-weight:780!important;
}
body.cm-registration-checkout #payment div.payment_box{
    margin:11px 0 0!important;
    padding:12px 13px!important;
    border-radius:10px!important;
    background:var(--cmc-purple-wash)!important;
    color:var(--cmc-text)!important;
    font-size:.77rem!important;
    line-height:1.55!important;
}
body.cm-registration-checkout #payment div.payment_box p{
    margin:0!important;
}
body.cm-registration-checkout #payment div.payment_box:before{
    display:none!important;
}
body.cm-registration-checkout #payment .place-order{
    padding:18px 0 0!important;
}
body.cm-registration-checkout #payment #place_order{
    float:none!important;
    width:100%!important;
    min-height:52px!important;
    margin:10px 0 0!important;
    padding:13px 18px!important;
    border:1px solid var(--cmc-purple)!important;
    border-radius:12px!important;
    background:var(--cmc-purple)!important;
    box-shadow:none!important;
    color:#fff!important;
    font-size:.98rem!important;
    font-weight:820!important;
    line-height:1.2!important;
    text-transform:none!important;
}
body.cm-registration-checkout #payment #place_order:hover,
body.cm-registration-checkout #payment #place_order:focus{
    border-color:var(--cmc-purple-dark)!important;
    background:var(--cmc-purple-dark)!important;
    color:#fff!important;
}
body.cm-registration-checkout #payment .woocommerce-privacy-policy-text,
body.cm-registration-checkout #payment .form-row.validate-required{
    color:var(--cmc-muted)!important;
    font-size:.72rem!important;
    line-height:1.55!important;
}

/* Notices */
body.cm-registration-checkout .woocommerce-error,
body.cm-registration-checkout .woocommerce-message,
body.cm-registration-checkout .woocommerce-info{
    margin:0 0 17px!important;
    padding:13px 15px 13px 42px!important;
    border:1px solid var(--cmc-line)!important;
    border-top-width:1px!important;
    border-radius:12px!important;
    background:#fff!important;
    box-shadow:none!important;
    color:var(--cmc-text)!important;
    font-size:.8rem!important;
    text-transform:none!important;
}
body.cm-registration-checkout .woocommerce-error{
    border-color:#f0c8c3!important;
    background:var(--cmc-danger-bg)!important;
}
body.cm-registration-checkout .woocommerce-error:before,
body.cm-registration-checkout .woocommerce-info:before,
body.cm-registration-checkout .woocommerce-message:before{
    top:13px!important;
    left:15px!important;
    color:var(--cmc-purple)!important;
}
body.cm-registration-checkout .woocommerce-error:before{
    color:var(--cmc-danger)!important;
}

/* Order received / existing thank-you presentation gets the same shell. */
body.cm-registration-checkout .woocommerce-order{
    padding:40px 0 0;
}
body.cm-registration-checkout .woocommerce-order > *{
    max-width:850px;
    margin-left:auto;
    margin-right:auto;
}

/* Responsive */
@media(max-width:1040px){
    .cm-checkout-page{padding-left:18px;padding-right:18px;}
    .cm-checkout-intro{
        align-items:flex-start;
        flex-direction:column;
        gap:14px;
        padding-top:32px;
    }
    body.cm-registration-checkout form.checkout.woocommerce-checkout{
        display:block!important;
    }
    body.cm-registration-checkout #customer_details{
        margin-top:0!important;
    }
    body.cm-registration-checkout .cm-checkout-registration,
    body.cm-registration-checkout #order_review{
        margin-top:18px!important;
    }
    body.cm-registration-checkout #order_review{
        position:static!important;
    }
}
@media(max-width:640px){
    .cm-checkout-page{
        padding:0 12px 54px;
        background:
            radial-gradient(circle at 10% 2%, rgba(131,36,228,.07), rgba(131,36,228,0) 24%),
            var(--cmc-canvas);
    }
    .cm-checkout-intro{
        margin-bottom:20px;
        padding:25px 2px 19px;
    }
    .cm-checkout-intro h1{font-size:1.95rem!important;}
    .cm-checkout-intro p{font-size:.88rem!important;}
    .cm-checkout-registration,
    body.cm-registration-checkout #customer_details,
    body.cm-registration-checkout #order_review{
        padding:17px!important;
        border-radius:16px!important;
    }
    .cm-checkout-section-heading,
    .cm-checkout-native-heading{
        flex-direction:column;
        gap:8px;
    }
    .cm-checkout-product-row{
        align-items:flex-start;
        flex-direction:column;
    }
    .cm-checkout-qty-wrap{
        width:100%;
    }
    .cm-checkout-qty-label{text-align:left;}
    .cm-checkout-qty{justify-content:flex-start;}
    .cm-checkout-qty-wrap small{text-align:left;}
    .cm-participant-field-grid{grid-template-columns:1fr;}
    body.cm-registration-checkout .woocommerce form .form-row-first,
    body.cm-registration-checkout .woocommerce form .form-row-last{
        float:none!important;
        width:100%!important;
    }
}
