/*
 * Modern Shopify-style WooCommerce Checkout
 * Glozin-specific, v2.3.0
 *
 * This file intentionally contains ONE coherent desktop/tablet layout.
 * It does not stack patches from earlier versions.
 */

/* =========================================================
   CHECKOUT SHELL
   ========================================================= */

body.woocommerce-checkout .msw-checkout-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 24px 0 60px !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .msw-checkout-shell *,
body.woocommerce-checkout .msw-checkout-shell *::before,
body.woocommerce-checkout .msw-checkout-shell *::after {
  box-sizing: border-box !important;
}

/* =========================================================
   DESKTOP / LAPTOP
   ========================================================= */

@media (min-width: 1025px) {

  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    width: min(1180px, calc(100vw - 80px)) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 390px !important;
    grid-template-areas: "customer review" !important;
    column-gap: 48px !important;
    row-gap: 0 !important;
    align-items: start !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #customer_details {
    grid-area: customer !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    grid-area: review !important;
    width: 100% !important;
    max-width: 390px !important;
    margin: 0 !important;
    padding: 0 !important;

    position: sticky !important;
    top: 24px !important;

    background: #fff !important;
    border: 1px solid #dedede !important;
    border-radius: 14px !important;
    box-shadow: none !important;

    float: none !important;
    clear: none !important;
    overflow: hidden !important;
  }

  /* =======================================================
     ORDER HEADER
     ======================================================= */

  body.woocommerce-checkout .msw-checkout-shell #order_review > #order_review_heading {
    display: block !important;
    width: 100% !important;
    height: auto !important;

    margin: 0 !important;
    padding: 22px 24px 18px !important;

    background: #fff !important;
    border: 0 !important;
    border-bottom: 1px solid #ededed !important;
    border-radius: 0 !important;

    color: #111 !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    font-weight: 600 !important;
    text-align: left !important;
  }

  /* =======================================================
     ORDER CONTENT
     ======================================================= */

  body.woocommerce-checkout .msw-checkout-shell #order_review > .shop_table,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    display: table !important;
    width: calc(100% - 48px) !important;
    max-width: none !important;
    margin: 0 24px !important;
    padding: 0 !important;

    border: 0 !important;
    border-collapse: collapse !important;
    background: #fff !important;
    table-layout: fixed !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table thead {
    display: table-header-group !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tbody,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tfoot {
    display: table-row-group !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr {
    display: table-row !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td {
    display: table-cell !important;
    border: 0 !important;
    background: transparent !important;
    vertical-align: middle !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table thead th {
    padding: 20px 0 12px !important;
    color: #111 !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table thead th:last-child {
    text-align: right !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table .product-name {
    width: 70% !important;
    padding: 10px 10px 18px 0 !important;
    text-align: left !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table .product-total {
    width: 30% !important;
    padding: 10px 0 18px 8px !important;
    text-align: right !important;
    vertical-align: top !important;
    white-space: nowrap !important;
    font-size: 14px !important;
    color: #111 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.order-total th,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.order-total td {
    padding: 17px 0 18px !important;
    border-top: 1px solid #dedede !important;
    color: #111 !important;
    font-size: 17px !important;
    font-weight: 700 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.order-total td {
    text-align: right !important;
    white-space: nowrap !important;
  }

  /* Product image / quantity / name */
  body.woocommerce-checkout .msw-checkout-shell #order_review .product-thumbnail {
    position: relative !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .product-thumbnail img {
    display: block !important;
    width: 56px !important;
    height: 70px !important;
    max-width: 56px !important;
    object-fit: cover !important;
    border-radius: 5px !important;
    margin: 0 12px 0 0 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .product-name img {
    vertical-align: middle !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .quantity {
    font-size: 0 !important;
  }

  /* =======================================================
     PAYMENT
     ======================================================= */

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment {
    display: block !important;
    width: calc(100% - 48px) !important;
    max-width: none !important;

    margin: 0 24px 24px !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;

    position: static !important;
    float: none !important;
    clear: both !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment ul.payment_methods {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #fff !important;
    border: 1px solid #dcdcdc !important;
    border-radius: 12px !important;

    list-style: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment ul.payment_methods > li {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 14px !important;

    background: #fff !important;
    border: 0 !important;
    border-radius: 12px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment ul.payment_methods > li > label {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 8px !important;

    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    color: #111 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 500 !important;

    writing-mode: horizontal-tb !important;
    white-space: normal !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment div.payment_box {
    display: block !important;
    width: 100% !important;
    max-width: none !important;

    margin: 10px 0 0 !important;
    padding: 13px 14px !important;

    background: #f5f5f5 !important;
    border: 0 !important;
    border-radius: 9px !important;

    color: #333 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;

    position: static !important;
    transform: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment div.payment_box::before {
    display: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment .place-order,
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment .form-row.place-order {
    width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment #place_order {
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 50px !important;

    margin: 0 !important;
    padding: 14px 20px !important;

    background: #111 !important;
    border: 0 !important;
    border-radius: 10px !important;

    color: #fff !important;
    font-size: 15px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
    text-align: center !important;
  }
}

/* =========================================================
   LAPTOP
   ========================================================= */

@media (min-width: 1025px) and (max-width: 1199px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    width: calc(100vw - 56px) !important;
    max-width: 1100px !important;
    grid-template-columns: minmax(0, 1fr) 350px !important;
    column-gap: 32px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    max-width: 350px !important;
  }
}

/* =========================================================
   TABLET LANDSCAPE
   ========================================================= */

@media (min-width: 769px) and (max-width: 1024px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    width: calc(100vw - 40px) !important;
    max-width: 960px !important;
    grid-template-columns: minmax(0, 1fr) 310px !important;
    column-gap: 22px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    max-width: 310px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review > #order_review_heading {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review > .shop_table,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    width: calc(100% - 36px) !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment {
    width: calc(100% - 36px) !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
  }
}

/* =========================================================
   TABLET PORTRAIT
   ========================================================= */

@media (min-width: 601px) and (max-width: 768px) {
  body.woocommerce-checkout .msw-checkout-shell {
    width: calc(100vw - 40px) !important;
    max-width: 720px !important;
    margin: 0 auto !important;
    padding-top: 20px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #customer_details,
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    width: 100% !important;
    max-width: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    position: static !important;
    margin-top: 24px !important;
  }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {
  body.woocommerce-checkout .msw-checkout-shell {
    width: calc(100vw - 18px) !important;
    max-width: 560px !important;
    margin: 0 auto !important;
    padding: 14px 0 36px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #customer_details,
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    width: 100% !important;
    max-width: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #customer_details .form-row-first,
  body.woocommerce-checkout .msw-checkout-shell #customer_details .form-row-last {
    display: block !important;
    width: 100% !important;
    margin-right: 0 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    position: static !important;
    margin-top: 24px !important;
  }
}




/* v2.9: final, single-source product row fix for Glozin/WooCommerce */
body.woocommerce-checkout .msw-checkout-shell #order_review,
body.woocommerce-checkout .msw-checkout-shell #order_review * {
  box-sizing: border-box !important;
}

@media (min-width: 601px) {
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    min-width: 0 !important;
    overflow: visible !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    display: table !important;
    width: calc(100% - 48px) !important;
    max-width: calc(100% - 48px) !important;
    margin: 0 24px !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.msw-product-row-fixed {
    display: table-row !important;
    width: auto !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td {
    display: table-cell !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-name,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td.product-name {
    width: 70% !important;
    max-width: 70% !important;
    padding: 12px 8px 16px 0 !important;
    overflow: visible !important;
    white-space: normal !important;
    vertical-align: top !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-total,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td.product-total {
    width: 30% !important;
    max-width: 30% !important;
    padding: 12px 0 16px 4px !important;
    text-align: right !important;
    vertical-align: top !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 10px !important;
    width: 100% !important;
    min-width: 0 !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb {
    display: block !important;
    position: static !important;
    float: none !important;
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 66px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
    display: block !important;
    position: static !important;
    float: none !important;
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 66px !important;
    max-height: 66px !important;
    object-fit: cover !important;
    margin: 0 !important;
    transform: none !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
    display: block !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: normal !important;
    overflow: visible !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.45 !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info > * {
    max-width: 100% !important;
    float: none !important;
    position: static !important;
    transform: none !important;
    white-space: normal !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.cart-subtotal th,
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.order-total th {
    width: 65% !important;
    text-align: left !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.cart-subtotal td,
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.order-total td {
    width: 35% !important;
    text-align: right !important;
    white-space: nowrap !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment,
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment ul.payment_methods,
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment div.payment_box,
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment .place-order,
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment #place_order {
    box-sizing: border-box !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    width: calc(100vw - 40px) !important;
    max-width: 960px !important;
    grid-template-columns: minmax(0, 1fr) 300px !important;
    column-gap: 24px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    width: 100% !important;
    max-width: 300px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review > #order_review_heading {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review #payment {
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    margin-left: 18px !important;
    margin-right: 18px !important;
  }
}

@media (min-width: 1025px) and (max-width: 1199px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout {
    width: calc(100vw - 56px) !important;
    max-width: 1100px !important;
    grid-template-columns: minmax(0, 1fr) 350px !important;
    column-gap: 32px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    max-width: 350px !important;
  }
}


/* =========================================================
   v3.0.0 FINAL LAPTOP/TABLET ALIGNMENT OVERRIDE
   Glozin + WooCommerce + Razorpay
   ========================================================= */
body.woocommerce-checkout .msw-checkout-shell {
  width: 100% !important;
  max-width: 100% !important;
  margin-inline: auto !important;
}

@media (min-width: 769px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout,
  body.woocommerce-checkout .msw-checkout-shell form.woocommerce-checkout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(330px, 380px) !important;
    grid-template-areas: "customer review" !important;
    align-items: start !important;
    gap: 36px !important;
    width: min(1180px, calc(100% - 48px)) !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    float: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #customer_details {
    grid-area: customer !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    float: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review {
    grid-area: review !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    float: none !important;
    justify-self: stretch !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    margin: 0 20px !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-name,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td.product-name {
    width: 72% !important;
    max-width: 72% !important;
    min-width: 0 !important;
    padding: 14px 8px 18px 0 !important;
    vertical-align: top !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-total,
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table td.product-total {
    width: 28% !important;
    max-width: 28% !important;
    min-width: 0 !important;
    padding: 14px 0 18px 4px !important;
    vertical-align: top !important;
    text-align: right !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
    display: grid !important;
    grid-template-columns: 56px minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb {
    display: block !important;
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    height: 70px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    float: none !important;
    overflow: hidden !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
    display: block !important;
    position: static !important;
    width: 56px !important;
    min-width: 56px !important;
    max-width: 56px !important;
    height: 70px !important;
    max-height: 70px !important;
    margin: 0 !important;
    object-fit: cover !important;
    transform: none !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    float: none !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    line-height: 1.45 !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info > *,
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info a,
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info .quantity {
    display: inline !important;
    position: static !important;
    float: none !important;
    width: auto !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info .quantity {
    display: inline-block !important;
    margin: 0 4px 0 0 !important;
    vertical-align: baseline !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review tr.cart-subtotal th,
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.order-total th {
    width: 65% !important;
    text-align: left !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review tr.cart-subtotal td,
  body.woocommerce-checkout .msw-checkout-shell #order_review tr.order-total td {
    width: 35% !important;
    text-align: right !important;
    white-space: nowrap !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment {
    width: calc(100% - 40px) !important;
    max-width: calc(100% - 40px) !important;
    margin: 14px 20px 20px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }
}

@media (min-width: 769px) and (max-width: 1100px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout,
  body.woocommerce-checkout .msw-checkout-shell form.woocommerce-checkout {
    width: calc(100% - 36px) !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    gap: 24px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review > #order_review_heading {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin-left: 16px !important;
    margin-right: 16px !important;
  }

  body.woocommerce-checkout .msw-checkout-shell #order_review #payment {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
    margin-left: 16px !important;
    margin-right: 16px !important;
  }
}

/* Keep tablet portrait and mobile stacking intact. */
@media (max-width: 768px) {
  body.woocommerce-checkout .msw-checkout-shell form.checkout,
  body.woocommerce-checkout .msw-checkout-shell form.woocommerce-checkout {
    width: calc(100% - 28px) !important;
    max-width: 720px !important;
    margin: 0 auto !important;
  }
}


/* v3.2.0 — deterministic order item layout for Glozin + WooCommerce */
body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.cart_item td.product-name {
  display: table-cell !important;
  width: 72% !important;
  max-width: 72% !important;
  min-width: 0 !important;
  vertical-align: middle !important;
  padding: 18px 8px 18px 0 !important;
  overflow: visible !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.cart_item td.product-total {
  display: table-cell !important;
  width: 28% !important;
  max-width: 28% !important;
  vertical-align: middle !important;
  text-align: right !important;
  padding: 18px 0 18px 4px !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: center !important;
  width: 100% !important;
  min-width: 0 !important;
  position: static !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb {
  display: block !important;
  position: static !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 60px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
  display: block !important;
  position: static !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 60px !important;
  max-height: 60px !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  position: static !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  text-align: left !important;
  line-height: 1.45 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-title-clean {
  display: block !important;
  position: static !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-quantity-clean {
  display: block !important;
  position: static !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.3 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info a,
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info img {
  display: none !important;
}
@media (min-width: 769px) {
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table {
    table-layout: fixed !important;
    width: 100% !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-name { width: 72% !important; }
  body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table th.product-total { width: 28% !important; text-align: right !important; }
}


/* v3.3.0 — final isolated product-row layout for Glozin checkout */
body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.cart_item td.product-name {
  overflow: visible !important;
  white-space: normal !important;
  vertical-align: middle !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review table.shop_table tr.cart_item td.product-total {
  vertical-align: middle !important;
  text-align: right !important;
  white-space: nowrap !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
  display: grid !important;
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  position: relative !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb {
  position: relative !important;
  display: block !important;
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  height: 70px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  line-height: 0 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
  display: block !important;
  position: static !important;
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  height: 70px !important;
  max-height: 70px !important;
  object-fit: cover !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 5px !important;
  transform: none !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  float: none !important;
  text-align: left !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
  line-height: 1.4 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-title-clean {
  display: block !important;
  position: static !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info .variation,
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info dl.variation {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-quantity-clean {
  position: absolute !important;
  top: -5px !important;
  right: -5px !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 4px !important;
  border: 1px solid #e5e5e5 !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #222 !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  box-sizing: border-box !important;
}
@media (max-width: 768px) {
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
    grid-template-columns: 48px minmax(0, 1fr) !important;
    gap: 10px !important;
  }
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb,
  body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 60px !important;
    max-height: 60px !important;
  }
}


/* v3.3.1 hotfix: keep extracted product title visible and reserve space beside thumbnail. */
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-layout {
  grid-template-columns: 56px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
  display: flex !important;
  visibility: visible !important;
  opacity: 1 !important;
  min-width: 0 !important;
  overflow: visible !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-title-clean {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #171717 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  overflow-wrap: anywhere !important;
  white-space: normal !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-thumb img {
  display: block !important;
}


/* v3.3.2: align order summary with the billing form and prevent price text in product title. */
@media (min-width: 769px) {
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    margin-top: 42px !important;
    top: 24px !important;
  }
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-info {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow-wrap: anywhere !important;
}
body.woocommerce-checkout .msw-checkout-shell #order_review .msw-product-title-clean {
  display: block !important;
  color: #171717 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
@media (max-width: 768px) {
  body.woocommerce-checkout .msw-checkout-shell #order_review {
    margin-top: 24px !important;
  }
}
