/*
 * ChironMed: WooCommerce cart, checkout, order received, My account and Subscriptions.
 * Loaded only on store pages, after WooCommerce's own stylesheet.
 */

.cm-store-page .site-main{background:var(--cm-ground)}
.cm-store-wrap{padding-top:56px;padding-bottom:96px}
.cm-store-head{margin-bottom:24px}
.cm-store-head .h2{margin:0}
.cm-store-page .woocommerce{font-size:16px;color:var(--cm-ink)}
.cm-store-page .woocommerce h2,.cm-store-page .woocommerce h3{font-family:var(--cm-display);font-weight:700;letter-spacing:-.3px;color:var(--cm-ink)}
.cm-store-page .woocommerce h3{font-size:22px;margin:0 0 16px}
.cm-store-page .woocommerce a{color:var(--cm-blue)}

/* progress */
.cm-steps-bar{list-style:none;margin:0 0 28px;padding:0;display:flex;gap:8px;flex-wrap:wrap}
.cm-steps-bar li{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--cm-line);border-radius:999px;padding:6px 16px 6px 6px;font-size:14px;font-weight:600;color:var(--cm-muted)}
.cm-steps-bar li span{width:28px;height:28px;border-radius:999px;background:var(--cm-ground);display:flex;align-items:center;justify-content:center;font-size:13px}
.cm-steps-bar li.now{color:var(--cm-ink);border-color:var(--cm-blue)}
.cm-steps-bar li.now span{background:var(--cm-blue);color:#fff}
.cm-steps-bar li.done span{background:var(--cm-teal);color:#fff}

/* buttons */
.cm-store-page .woocommerce a.button,.cm-store-page .woocommerce button.button,.cm-store-page .woocommerce input.button,.cm-store-page .woocommerce #respond input#submit{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px;border-radius:10px;border:1.5px solid var(--cm-ink);
  background:#fff;color:var(--cm-ink);font:700 16px var(--cm-text);line-height:1.2;text-decoration:none;box-shadow:none}
.cm-store-page .woocommerce a.button:hover,.cm-store-page .woocommerce button.button:hover,.cm-store-page .woocommerce input.button:hover{background:var(--cm-blue-t);color:var(--cm-ink)}
.cm-store-page .woocommerce a.button.alt,.cm-store-page .woocommerce button.button.alt,.cm-store-page .woocommerce input.button.alt,
.cm-store-page .woocommerce #place_order,.cm-store-page .woocommerce a.checkout-button{background:var(--cm-blue);border-color:var(--cm-blue);color:#fff}
.cm-store-page .woocommerce a.button.alt:hover,.cm-store-page .woocommerce button.button.alt:hover,.cm-store-page .woocommerce #place_order:hover,.cm-store-page .woocommerce a.checkout-button:hover{background:var(--cm-blue-d);border-color:var(--cm-blue-d);color:#fff}
.cm-store-page .woocommerce #place_order,.cm-store-page .woocommerce a.checkout-button{width:100%;min-height:56px;font-size:17px;border-radius:12px}
.cm-store-page .woocommerce button.button:disabled,.cm-store-page .woocommerce button.button:disabled[disabled]{opacity:.5;padding:0 22px}

/* fields */
.cm-store-page .woocommerce form .form-row{margin:0 0 16px;padding:0}
.cm-store-page .woocommerce form .form-row label{font-size:14px;font-weight:600;margin-bottom:6px;display:block;line-height:1.4}
.cm-store-page .woocommerce form .form-row .required{color:#B42318;text-decoration:none}
.cm-store-page .woocommerce form .form-row input.input-text,.cm-store-page .woocommerce form .form-row textarea,.cm-store-page .woocommerce form .form-row select,
.cm-store-page .woocommerce .select2-container .select2-selection--single,.cm-store-page .woocommerce input.input-text,.cm-store-page .woocommerce .coupon input.input-text{
  min-height:48px;border:1.5px solid #C9D2E0;border-radius:10px;padding:10px 14px;font:16px var(--cm-text);background:#fff;color:var(--cm-ink);box-sizing:border-box;width:100%}
.cm-store-page .woocommerce .select2-container .select2-selection--single{display:flex;align-items:center;padding:0 8px}
.cm-store-page .woocommerce .select2-container .select2-selection--single .select2-selection__arrow{top:10px;right:8px}
.cm-store-page .woocommerce form .form-row textarea{min-height:110px}
.cm-store-page .woocommerce form .form-row input.input-text:focus,.cm-store-page .woocommerce form .form-row textarea:focus,.cm-store-page .woocommerce form .form-row select:focus{border-color:var(--cm-blue);outline:none;box-shadow:0 0 0 3px rgba(6,87,163,.15)}
.cm-store-page .woocommerce form .form-row.woocommerce-invalid input.input-text{border-color:#D92D20}
.cm-store-page .woocommerce form .form-row-first,.cm-store-page .woocommerce form .form-row-last{width:calc(50% - 8px)}

/* notices */
.cm-store-page .woocommerce-message,.cm-store-page .woocommerce-info,.cm-store-page .woocommerce-error,.cm-notices .woocommerce-message,.cm-notices .woocommerce-info,.cm-notices .woocommerce-error{
  border:1px solid var(--cm-line);border-left-width:1px;border-radius:14px;background:#fff;padding:16px 20px 16px 52px;margin:0 0 20px;font-size:15px;color:var(--cm-ink);list-style:none}
.cm-store-page .woocommerce-message::before,.cm-store-page .woocommerce-info::before,.cm-store-page .woocommerce-error::before{top:16px;left:20px}
.cm-store-page .woocommerce-message,.cm-notices .woocommerce-message{background:var(--cm-teal-t);border-color:#B9DCD9}
.cm-store-page .woocommerce-message::before{color:var(--cm-teal)}
.cm-store-page .woocommerce-info,.cm-notices .woocommerce-info{background:var(--cm-blue-t);border-color:#C5D8F0}
.cm-store-page .woocommerce-info::before{color:var(--cm-blue)}
.cm-store-page .woocommerce-error,.cm-notices .woocommerce-error{background:#FEF3F2;border-color:#FECDCA}
.cm-store-page .woocommerce-error::before{color:#D92D20}
.cm-store-page .woocommerce-message .button,.cm-store-page .woocommerce-info .button{min-height:36px!important;padding:0 14px!important;font-size:14px!important;float:right}
.cm-notices{padding-top:24px}

/* tables */
.cm-store-page .woocommerce table.shop_table{border:1px solid var(--cm-line);border-radius:16px;border-collapse:separate;border-spacing:0;background:#fff;overflow:hidden;margin:0 0 24px}
.cm-store-page .woocommerce table.shop_table th{font-weight:700;font-size:14px;color:var(--cm-muted);background:var(--cm-ground);padding:14px 16px}
.cm-store-page .woocommerce table.shop_table td{padding:16px;border-top:1px solid #EDF0F5}
.cm-store-page .woocommerce table.shop_table tfoot th,.cm-store-page .woocommerce table.shop_table tfoot td{background:#fff;color:var(--cm-ink);font-size:15px}
.cm-store-page .woocommerce table.shop_table .order-total th,.cm-store-page .woocommerce table.shop_table .order-total td{font-size:18px;font-weight:700}
.cm-store-page .woocommerce table.shop_table .order-total .amount{font-family:var(--cm-display);font-size:24px}
.cm-store-page .woocommerce .product-name a{color:var(--cm-ink);font-weight:700;text-decoration:none}
.cm-store-page .woocommerce td.product-name dl.variation{margin:6px 0 0;font-size:14px;color:var(--cm-body)}
.cm-store-page .woocommerce td.product-name dl.variation dt{font-weight:600}
.cm-store-page .woocommerce .subscription-details,.cm-store-page .woocommerce .first-payment-date{display:block;font-size:13px;color:var(--cm-muted);font-weight:500;margin-top:2px}
.cm-store-page .woocommerce a.remove{color:var(--cm-muted)!important;border:1px solid var(--cm-line);font-size:18px}
.cm-store-page .woocommerce a.remove:hover{background:#FEF3F2;color:#D92D20!important}
.cm-store-page .woocommerce table.cart img{display:none}
.cm-store-page .woocommerce table.cart td.actions .coupon{display:flex;gap:8px;align-items:center}
.cm-store-page .woocommerce table.cart td.actions .coupon .input-text{width:200px;margin:0}

/* cart */
.cm-store-page .woocommerce .cart-collaterals .cart_totals{width:100%;max-width:440px;float:right;background:#fff;border:1px solid var(--cm-line);border-radius:20px;padding:24px}
.cm-store-page .woocommerce .cart-collaterals .cart_totals h2{font-size:22px;margin:0 0 12px}
.cm-store-page .woocommerce .cart-collaterals .cart_totals table.shop_table{border:0;border-radius:0}
.cm-store-page .woocommerce .cart-collaterals .cart_totals table.shop_table th{background:none;padding-left:0}
.cm-store-page .woocommerce .cart-collaterals .cart_totals table.shop_table td{padding-right:0;text-align:right}
.cm-store-page .woocommerce .cart-empty{font-size:18px}

/* checkout: details left, order summary right */
.cm-store-page .woocommerce form.checkout{display:grid;grid-template-columns:minmax(0,1fr) 440px;column-gap:32px;align-items:start}
.cm-store-page .woocommerce form.checkout > *{grid-column:1}
.cm-store-page .woocommerce form.checkout #order_review_heading,.cm-store-page .woocommerce form.checkout #order_review{grid-column:2}
.cm-store-page .woocommerce form.checkout #customer_details{grid-row:1 / span 3}
.cm-store-page .woocommerce form.checkout #order_review_heading{grid-row:1;margin:0;background:var(--cm-navy);color:#fff;padding:20px 24px;border-radius:20px 20px 0 0;font-size:20px}
.cm-store-page .woocommerce form.checkout #order_review{grid-row:2;background:#fff;border:1px solid var(--cm-line);border-top:0;border-radius:0 0 20px 20px;padding:20px 24px 24px;position:sticky;top:96px}
.cm-store-page .woocommerce .col2-set{width:100%;display:block}
.cm-store-page .woocommerce .col2-set .col-1,.cm-store-page .woocommerce .col2-set .col-2{float:none;width:100%;background:#fff;border:1px solid var(--cm-line);border-radius:20px;padding:24px;margin:0 0 20px;box-sizing:border-box}
.cm-store-page .woocommerce form.checkout #order_review table.shop_table{border:0;border-radius:0;margin-bottom:16px}
.cm-store-page .woocommerce form.checkout #order_review table.shop_table th{background:none;padding:10px 0}
.cm-store-page .woocommerce form.checkout #order_review table.shop_table td{padding:10px 0}
.cm-store-page .woocommerce form.checkout #order_review table.shop_table td:last-child,.cm-store-page .woocommerce form.checkout #order_review table.shop_table th:last-child{text-align:right}
.cm-store-page .woocommerce form.checkout #order_review .recurring-totals th{padding-top:18px;color:var(--cm-teal)}

/* payment box (Razorpay and others) */
.cm-store-page .woocommerce #payment{background:var(--cm-ground);border-radius:16px}
.cm-store-page .woocommerce #payment ul.payment_methods{border-bottom:1px solid var(--cm-line);padding:16px}
.cm-store-page .woocommerce #payment ul.payment_methods li{font-weight:600;line-height:1.5}
.cm-store-page .woocommerce #payment ul.payment_methods li img{max-height:24px;vertical-align:middle;margin-left:8px}
.cm-store-page .woocommerce #payment div.payment_box{background:#fff;border-radius:10px;color:var(--cm-body);font-size:14px;font-weight:400}
.cm-store-page .woocommerce #payment div.payment_box::before{border-bottom-color:#fff}
.cm-store-page .woocommerce #payment div.form-row{padding:16px}
.cm-store-page .woocommerce .woocommerce-terms-and-conditions-wrapper{font-size:14px;color:var(--cm-body)}
.cm-help{font-size:14px;color:var(--cm-muted);margin:14px 0 0;text-align:center}

/* order received */
.cm-store-page .woocommerce-order .woocommerce-thankyou-order-received{font-family:var(--cm-display);font-size:28px;font-weight:700;color:var(--cm-ink);background:var(--cm-teal-t);border-radius:16px;padding:20px 24px;margin:0 0 20px}
.cm-store-page .woocommerce ul.order_details{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:0 0 28px;padding:0}
.cm-store-page .woocommerce ul.order_details li{float:none;border:1px solid var(--cm-line)!important;background:#fff;border-radius:14px;padding:14px 16px;margin:0;font-size:13px;color:var(--cm-muted);text-transform:none}
.cm-store-page .woocommerce ul.order_details li strong{font-size:16px;color:var(--cm-ink);margin-top:4px}
.cm-store-page .woocommerce .woocommerce-customer-details address{border:1px solid var(--cm-line);border-radius:16px;background:#fff;padding:20px;font-style:normal}

/* My account */
.cm-store-page.woocommerce-account .woocommerce{display:grid;grid-template-columns:260px minmax(0,1fr);gap:32px;align-items:start}
.cm-store-page.woocommerce-account .woocommerce > .woocommerce-notices-wrapper{grid-column:1 / -1}
.cm-store-page .woocommerce-MyAccount-navigation,.cm-store-page .woocommerce-MyAccount-content{float:none!important;width:auto!important}
.cm-store-page .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:8px;background:#fff;border:1px solid var(--cm-line);border-radius:16px}
.cm-store-page .woocommerce-MyAccount-navigation li a{display:block;padding:11px 14px;border-radius:10px;color:var(--cm-ink)!important;text-decoration:none;font-weight:600;font-size:15px}
.cm-store-page .woocommerce-MyAccount-navigation li a:hover{background:var(--cm-ground)}
.cm-store-page .woocommerce-MyAccount-navigation li.is-active a{background:var(--cm-blue-t);color:var(--cm-blue-d)!important}
.cm-store-page .woocommerce-MyAccount-content{background:#fff;border:1px solid var(--cm-line);border-radius:20px;padding:28px}
.cm-store-page .woocommerce-MyAccount-content table.shop_table{border-radius:12px}
.cm-store-page.woocommerce-account:not(.logged-in) .woocommerce{display:block}
.cm-store-page .woocommerce form.login,.cm-store-page .woocommerce form.register{border:1px solid var(--cm-line);border-radius:20px;background:#fff;padding:28px;margin:0 0 20px}
.cm-store-page .woocommerce #customer_login{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.cm-store-page .woocommerce #customer_login .u-column1,.cm-store-page .woocommerce #customer_login .u-column2{float:none;width:auto}
.cm-store-page .woocommerce:not(:has(#customer_login)) form.login{max-width:480px}

/* subscriptions (WooCommerce Subscriptions) */
.cm-store-page .woocommerce .subscription-status,.cm-store-page .woocommerce .order-status,.cm-store-page .woocommerce mark.order-status{display:inline-block;background:var(--cm-ground);border-radius:999px;padding:3px 10px;font-size:13px;font-weight:700;color:var(--cm-body)}
.cm-store-page .woocommerce table.shop_table.subscription_details td{text-align:left}
.cm-store-page .woocommerce table.shop_table.subscription_details td .button{min-height:38px;padding:0 14px;font-size:14px;margin:0 6px 6px 0}

@media (max-width:1000px){
  .cm-store-page .woocommerce form.checkout{grid-template-columns:1fr}
  .cm-store-page .woocommerce form.checkout #order_review_heading,.cm-store-page .woocommerce form.checkout #order_review,.cm-store-page .woocommerce form.checkout #customer_details{grid-column:1;grid-row:auto}
  .cm-store-page .woocommerce form.checkout #order_review{position:static}
  .cm-store-page.woocommerce-account .woocommerce{grid-template-columns:1fr}
  .cm-store-page .woocommerce #customer_login{grid-template-columns:1fr}
  .cm-store-page .woocommerce .cart-collaterals .cart_totals{float:none;max-width:none}
}
@media (max-width:680px){
  .cm-store-page .woocommerce form .form-row-first,.cm-store-page .woocommerce form .form-row-last{width:100%;float:none}
  .cm-store-wrap{padding-top:32px}
}
.cm-store-page.woocommerce-account .woocommerce > *{grid-column:1 / -1}
.cm-store-page.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation{grid-column:1;grid-row:2}
.cm-store-page.woocommerce-account .woocommerce > .woocommerce-MyAccount-content{grid-column:2;grid-row:2}
@media (max-width:1000px){.cm-store-page.woocommerce-account .woocommerce > .woocommerce-MyAccount-navigation,.cm-store-page.woocommerce-account .woocommerce > .woocommerce-MyAccount-content{grid-column:1;grid-row:auto}}
