/* ==========================================================
   Custom Auth Suite™ Site — WooCommerce
   ========================================================== */

/*
 * INDEX
 * 08. CAS WooCommerce Core Polish v1.0.0
 * 09. CAS WooCommerce Purple + Order Review Polish v1.0.1
 * 10. CAS WooCommerce Cleanup v1.0.2
 * 11. CAS WooCommerce Final Hygiene Overrides v1.0.3
 */

/* ==========================================================
   08. CAS WooCommerce Core Polish v1.0.0
   Checkout and My Account spacing/card refinement.
   ========================================================== */

.cas-site.woocommerce-checkout .woocommerce,
.cas-site.woocommerce-cart .woocommerce,
.cas-site.woocommerce-account .woocommerce {
  width: 100%;
}

/* Main Woo page breathing room */
.cas-site.woocommerce-checkout .site-main,
.cas-site.woocommerce-cart .site-main,
.cas-site.woocommerce-account .site-main {
  padding-top: clamp(42px, 5vw, 82px);
  padding-bottom: clamp(56px, 7vw, 104px);
}

/* Page titles */
.cas-site.woocommerce-checkout .entry-title,
.cas-site.woocommerce-cart .entry-title,
.cas-site.woocommerce-account .entry-title,
.cas-site.woocommerce-checkout h1,
.cas-site.woocommerce-cart h1,
.cas-site.woocommerce-account h1 {
  margin-bottom: clamp(28px, 4vw, 48px);
  letter-spacing: -0.055em;
}

/* Shared Woo cards */
.cas-site .woocommerce form.checkout,
.cas-site .woocommerce form.login,
.cas-site .woocommerce form.register,
.cas-site .woocommerce-MyAccount-content,
.cas-site .woocommerce-checkout-review-order,
.cas-site .woocommerce-cart-form,
.cas-site .cart-collaterals .cart_totals {
  border: 1px solid rgba(31, 38, 55, 0.08) !important;
  border-radius: clamp(22px, 2.2vw, 30px) !important;
  background:
    radial-gradient(circle at 10% 0%, rgba(127,69,232,.045), transparent 24rem),
    radial-gradient(circle at 90% 10%, rgba(116,203,187,.045), transparent 22rem),
    rgba(255,255,255,.86) !important;
  box-shadow:
    0 24px 70px rgba(14, 24, 44, .075),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
}

/* Prevent Woo/Blocksy boxes from clipping labels and legends */
.cas-site .woocommerce form,
.cas-site .woocommerce-MyAccount-content,
.cas-site .woocommerce-checkout-review-order,
.cas-site .woocommerce table.shop_table {
  overflow: visible !important;
}

/* Checkout layout */
.cas-site.woocommerce-checkout form.checkout {
  padding: 0 !important;
  overflow: hidden !important;
}

.cas-site.woocommerce-checkout #customer_details,
.cas-site.woocommerce-checkout #order_review,
.cas-site.woocommerce-checkout #order_review_heading {
  padding: clamp(24px, 3vw, 42px) !important;
}

.cas-site.woocommerce-checkout #customer_details {
  background: rgba(255,255,255,.50);
}

.cas-site.woocommerce-checkout #order_review {
  background: rgba(255,255,255,.72);
  border-left: 1px solid rgba(31,38,55,.08);
}

.cas-site.woocommerce-checkout #order_review_heading {
  margin: 0 !important;
  padding-bottom: 0 !important;
}

/* Checkout headings */
.cas-site.woocommerce-checkout .woocommerce-billing-fields > h3,
.cas-site.woocommerce-checkout .woocommerce-additional-fields > h3,
.cas-site.woocommerce-checkout #order_review_heading,
.cas-site.woocommerce-checkout #order_review h3 {
  margin: 0 0 1.15rem !important;
  color: var(--cas-ink);
  font-size: clamp(1.15rem, 1.45vw, 1.45rem);
  line-height: 1.12;
  letter-spacing: -0.045em;
}

/* Woo fields */
.cas-site .woocommerce form .form-row {
  margin-bottom: 1.25rem !important;
  padding: 0 !important;
}

.cas-site .woocommerce form .form-row label {
  display: block;
  margin: 0 0 .52rem !important;
  color: var(--cas-ink);
  font-weight: 720;
  line-height: 1.25;
}

.cas-site .woocommerce form .form-row .required {
  color: #ff4d4d !important;
  text-decoration: none !important;
}

.cas-site .woocommerce input.input-text,
.cas-site .woocommerce textarea,
.cas-site .woocommerce select,
.cas-site .woocommerce .select2-container .select2-selection--single {
  min-height: 52px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(31,38,55,.14) !important;
  background: rgba(255,255,255,.92) !important;
  color: var(--cas-ink) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.84),
    0 10px 24px rgba(14,24,44,.035) !important;
}

.cas-site .woocommerce textarea {
  min-height: 150px !important;
  padding-top: 1rem !important;
}

.cas-site .woocommerce input.input-text,
.cas-site .woocommerce textarea {
  padding-left: 1.05rem !important;
  padding-right: 1.05rem !important;
}

/* Select2 vertical alignment */
.cas-site .woocommerce .select2-container .select2-selection--single {
  display: flex !important;
  align-items: center !important;
}

.cas-site .woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
  padding-left: 1.05rem !important;
  padding-right: 2.4rem !important;
  color: var(--cas-ink) !important;
  line-height: 1.2 !important;
}

.cas-site .woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 100% !important;
  right: .75rem !important;
}

/* Order review table */
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table {
  overflow: hidden !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.82) !important;
}

.cas-site .woocommerce table.shop_table th,
.cas-site .woocommerce table.shop_table td {
  padding: 1.05rem 1rem !important;
  color: var(--cas-ink);
  border-color: rgba(31,38,55,.075) !important;
  line-height: 1.45;
}

.cas-site .woocommerce table.shop_table td.product-name {
  padding-right: 1.5rem !important;
}

.cas-site .woocommerce table.shop_table .amount {
  font-weight: 760;
}

/* Payment box */
.cas-site.woocommerce-checkout #payment {
  margin-top: 1.6rem !important;
  border: 1px solid rgba(31,38,55,.08) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.70) !important;
  overflow: hidden !important;
}

.cas-site.woocommerce-checkout #payment ul.payment_methods {
  padding: 1.15rem 1.35rem !important;
  border-bottom: 1px solid rgba(31,38,55,.08) !important;
}

.cas-site.woocommerce-checkout #payment div.payment_box {
  margin: 0 !important;
  padding: 1.15rem 1.35rem !important;
  background: rgba(247,250,255,.74) !important;
  color: var(--cas-muted) !important;
}

.cas-site.woocommerce-checkout #payment div.form-row {
  padding: 1.35rem !important;
}

/* Main CTA buttons */
.cas-site .woocommerce button.button,
.cas-site .woocommerce a.button,
.cas-site .woocommerce input.button,
.cas-site .woocommerce #respond input#submit,
.cas-site .woocommerce .wc-forward {
  min-height: 50px;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(135deg, #914df0, #6b2bd7) !important;
  color: #fff !important;
  font-weight: 820 !important;
  box-shadow:
    0 18px 42px rgba(127,69,232,.24),
    inset 0 1px 0 rgba(255,255,255,.28) !important;
}

.cas-site .woocommerce button.button:hover,
.cas-site .woocommerce a.button:hover,
.cas-site .woocommerce input.button:hover {
  transform: translateY(-1px);
  filter: saturate(1.05);
}

/* My Account layout */
.cas-site.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: minmax(220px, 270px) minmax(0, 1fr);
  gap: clamp(24px, 3vw, 42px);
  align-items: start;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation {
  overflow: hidden !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li {
  margin: 0 !important;
  border-bottom: 1px solid rgba(31,38,55,.075);
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
  border-bottom: 0;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: flex !important;
  align-items: center;
  min-height: 62px;
  padding: 1rem 1.35rem !important;
  color: #7f45e8 !important;
  font-weight: 780;
  text-decoration: none !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background: linear-gradient(135deg, rgba(37,111,255,.95), rgba(37,111,255,.86)) !important;
  color: #fff !important;
}

/* My Account content padding */
.cas-site.woocommerce-account .woocommerce-MyAccount-content {
  min-height: 270px;
  padding: clamp(28px, 3.2vw, 44px) !important;
}

/* Tables inside My Account */
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.shop_table {
  margin: 0 !important;
  border-radius: 22px !important;
}

/* Dashboard paragraph spacing */
.cas-site.woocommerce-account .woocommerce-MyAccount-content p {
  margin-top: 0;
  margin-bottom: 1.05rem;
  color: var(--cas-ink);
  line-height: 1.6;
}

/* Address cards */
.cas-site.woocommerce-account .woocommerce-Address,
.cas-site.woocommerce-account .woocommerce-customer-details address {
  padding: clamp(22px, 2.5vw, 34px) !important;
  border: 1px dashed rgba(31,38,55,.12) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.64) !important;
}

.cas-site.woocommerce-account .woocommerce-Address-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}

.cas-site.woocommerce-account .woocommerce-Address-title h2,
.cas-site.woocommerce-account fieldset legend {
  margin: 0 !important;
  color: var(--cas-ink);
  font-size: 1.05rem;
  font-weight: 840;
  letter-spacing: -0.035em;
}

/* Account details form */
.cas-site.woocommerce-account form.edit-account {
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.cas-site.woocommerce-account form.edit-account fieldset {
  margin: 2rem 0 1.25rem !important;
  padding: 1.5rem 1.75rem !important;
  border: 1px dashed rgba(31,38,55,.12) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.55) !important;
}

.cas-site.woocommerce-account form.edit-account fieldset legend {
  padding: 0 .55rem !important;
}

/* Login/register page */
.cas-site.woocommerce-account .woocommerce-form-login,
.cas-site.woocommerce-account .woocommerce-form-register {
  padding: clamp(26px, 3vw, 42px) !important;
}

.cas-site.woocommerce-account .u-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(24px, 3vw, 42px);
}

.cas-site.woocommerce-account .u-column1,
.cas-site.woocommerce-account .u-column2 {
  width: auto !important;
  float: none !important;
}

.cas-site.woocommerce-account .u-column1 h2,
.cas-site.woocommerce-account .u-column2 h2 {
  margin: 0 0 1.1rem !important;
  color: var(--cas-ink);
  font-size: clamp(1.25rem, 1.8vw, 1.65rem);
  letter-spacing: -0.045em;
}

/* Lost password link and privacy text */
.cas-site .woocommerce-LostPassword,
.cas-site .woocommerce-privacy-policy-text {
  margin-top: 1rem !important;
  color: var(--cas-muted);
  line-height: 1.58;
}

/* Mobile */
@media (max-width: 920px) {
  .cas-site.woocommerce-account .woocommerce,
  .cas-site.woocommerce-account .u-columns {
    grid-template-columns: 1fr;
  }

  .cas-site.woocommerce-checkout #customer_details,
  .cas-site.woocommerce-checkout #order_review,
  .cas-site.woocommerce-checkout #order_review_heading,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content {
    padding: 22px !important;
  }

  .cas-site .woocommerce table.shop_table th,
  .cas-site .woocommerce table.shop_table td {
    padding: .9rem .75rem !important;
  }
}


/* ==========================================================
   09. CAS WooCommerce Purple + Order Review Polish v1.0.1
   CAS typography/colors, My Account active state, checkout table cleanup.
   ========================================================== */

/* WooCommerce frontend typography alignment */
.cas-site .woocommerce,
.cas-site .woocommerce-page,
.cas-site .woocommerce form,
.cas-site .woocommerce table,
.cas-site .woocommerce input,
.cas-site .woocommerce textarea,
.cas-site .woocommerce select,
.cas-site .woocommerce button {
  font-family: var(--cas-font, "Prompt", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif) !important;
}

/* CAS purple for Woo headings, strong labels and table headings */
.cas-site .woocommerce h1,
.cas-site .woocommerce h2,
.cas-site .woocommerce h3,
.cas-site .woocommerce h4,
.cas-site .woocommerce strong,
.cas-site .woocommerce b,
.cas-site .woocommerce table.shop_table th,
.cas-site .woocommerce label,
.cas-site .woocommerce legend,
.cas-site .woocommerce-MyAccount-navigation a,
.cas-site .woocommerce-MyAccount-content a {
  color: #7f45e8 !important;
}

.cas-site .woocommerce h1,
.cas-site .woocommerce h2,
.cas-site .woocommerce h3,
.cas-site .woocommerce h4,
.cas-site .woocommerce table.shop_table th,
.cas-site .woocommerce label,
.cas-site .woocommerce legend,
.cas-site .woocommerce-MyAccount-navigation a {
  font-weight: 820 !important;
}

/* Normal body copy remains readable, not purple */
.cas-site .woocommerce p,
.cas-site .woocommerce td,
.cas-site .woocommerce address,
.cas-site .woocommerce .woocommerce-privacy-policy-text,
.cas-site .woocommerce .woocommerce-info,
.cas-site .woocommerce .woocommerce-message,
.cas-site .woocommerce .woocommerce-error {
  color: var(--cas-ink) !important;
  font-weight: 420;
}

/* Keep amounts and totals refined */
.cas-site .woocommerce .amount,
.cas-site .woocommerce table.shop_table .amount,
.cas-site.woocommerce-checkout .order-total td,
.cas-site.woocommerce-checkout .order-total th,
.cas-site.woocommerce-cart .order-total td,
.cas-site.woocommerce-cart .order-total th {
  color: var(--cas-ink) !important;
  font-weight: 820 !important;
}

/* My Account active state: CAS purple, not Woo/blue */
.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.25), transparent 12rem),
    linear-gradient(135deg, #914df0 0%, #7f45e8 46%, #6726d4 100%) !important;
  color: #fff !important;
  box-shadow:
    0 16px 34px rgba(127,69,232,.22),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a * {
  color: #fff !important;
}

/* My Account hover */
.cas-site.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: rgba(127,69,232,.075) !important;
  color: #6726d4 !important;
}

/* Checkout order review: remove ugly Woo rectangular inner border */
.cas-site.woocommerce-checkout #order_review {
  border-left: 0 !important;
  box-shadow: none !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table,
.cas-site.woocommerce-checkout #payment,
.cas-site.woocommerce-checkout .shop_table {
  border: 0 !important;
  outline: 0 !important;
}

/* Order review as premium CAS glass card */
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(127,69,232,.055), transparent 18rem),
    radial-gradient(circle at 88% 8%, rgba(116,203,187,.045), transparent 16rem),
    rgba(255,255,255,.88) !important;
  box-shadow:
    0 22px 60px rgba(14,24,44,.07),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
  overflow: hidden !important;
}

/* Remove hard rectangular lines, replace with soft separators */
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  border-top: 0 !important;
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid rgba(127,69,232,.075) !important;
  background: transparent !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  padding-top: 1.35rem !important;
  padding-bottom: 1.1rem !important;
  background: rgba(255,255,255,.40) !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table tbody td {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
  padding-top: 1.15rem !important;
  padding-bottom: 1.15rem !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table tr:last-child th,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table tr:last-child td {
  border-bottom: 0 !important;
}

/* Product meta inside checkout order */
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
  color: var(--cas-ink) !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name strong,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name b,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .wc-item-meta-label,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table dt {
  color: #7f45e8 !important;
  font-weight: 820 !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total {
  text-align: right !important;
  white-space: nowrap;
}

/* Payment panel: integrate visually with order card */
.cas-site.woocommerce-checkout #payment {
  margin-top: 1.35rem !important;
  border-radius: 26px !important;
  background:
    radial-gradient(circle at 88% 0%, rgba(127,69,232,.05), transparent 16rem),
    rgba(255,255,255,.82) !important;
  box-shadow:
    0 20px 54px rgba(14,24,44,.06),
    inset 0 1px 0 rgba(255,255,255,.76) !important;
}

.cas-site.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid rgba(127,69,232,.08) !important;
  background: rgba(255,255,255,.40) !important;
}

.cas-site.woocommerce-checkout #payment div.payment_box {
  background: rgba(127,69,232,.035) !important;
  border-radius: 18px !important;
  margin: .25rem 1.35rem 1.1rem !important;
}

.cas-site.woocommerce-checkout #payment div.payment_box::before {
  display: none !important;
}

/* Privacy paragraph in checkout */
.cas-site.woocommerce-checkout .woocommerce-privacy-policy-text {
  padding: 0 1.35rem !important;
  font-size: .96rem;
}

.cas-site.woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: #7f45e8 !important;
  font-weight: 820;
}

/* Place order button full premium width */
.cas-site.woocommerce-checkout #place_order {
  width: 100%;
  min-height: 58px;
  font-size: 1rem;
}

/* Checkout form internal card cleanup */
.cas-site.woocommerce-checkout form.checkout {
  border: 1px solid rgba(127,69,232,.09) !important;
}

.cas-site.woocommerce-checkout #customer_details {
  border-right: 1px solid rgba(127,69,232,.075);
}

.cas-site.woocommerce-checkout #order_review_heading {
  color: #7f45e8 !important;
}

/* Checkout bold labels under product rows */
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name br + strong,
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name strong:first-of-type {
  display: inline-block;
  margin-top: .28rem;
}

/* Login/register Woo forms: headings purple and cards softer */
.cas-site.woocommerce-account .u-column1 h2,
.cas-site.woocommerce-account .u-column2 h2,
.cas-site.woocommerce-account .woocommerce-MyAccount-content h2,
.cas-site.woocommerce-account .woocommerce-MyAccount-content h3 {
  color: #7f45e8 !important;
}

/* Buttons secondary/ghost cleanup */
.cas-site .woocommerce a.button:not(.checkout-button),
.cas-site .woocommerce button.button:not(#place_order),
.cas-site .woocommerce input.button {
  padding-inline: 1.45rem !important;
}

/* Mobile checkout: remove split borders */
@media (max-width: 920px) {
  .cas-site.woocommerce-checkout #customer_details {
    border-right: 0;
    border-bottom: 1px solid rgba(127,69,232,.075);
  }

  .cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total {
    text-align: left !important;
  }

  .cas-site.woocommerce-checkout #payment div.payment_box {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
}


/* ==========================================================
   10. CAS WooCommerce Cleanup v1.0.2
   Checkout order-review border removal, account active state,
   lost password card, softer copy and shop CTA suppression.
   ========================================================== */

/* Scope Blocksy's pale border token only inside Woo CAS pages. */
.cas-site.woocommerce-checkout,
.cas-site.woocommerce-cart,
.cas-site.woocommerce-account {
  --theme-palette-color-5: rgba(127, 69, 232, .075) !important;
}

/* Softer Woo copy. Keep headings/bold CAS purple from previous round. */
.cas-site .woocommerce,
.cas-site .woocommerce p,
.cas-site .woocommerce td,
.cas-site .woocommerce address,
.cas-site .woocommerce .woocommerce-privacy-policy-text,
.cas-site .woocommerce .woocommerce-info,
.cas-site .woocommerce .woocommerce-message,
.cas-site .woocommerce .woocommerce-error,
.cas-site .woocommerce .form-row .description,
.cas-site .woocommerce small,
.cas-site .woocommerce em {
  color: #4f5f76 !important;
}

.cas-site .woocommerce input,
.cas-site .woocommerce textarea,
.cas-site .woocommerce select,
.cas-site .woocommerce .select2-selection__rendered {
  color: #34445d !important;
}

/* Keep product/order names readable, not too black. */
.cas-site .woocommerce table.shop_table td,
.cas-site .woocommerce table.shop_table .product-name {
  color: #2c3950 !important;
}

/* My Account nav: remove old white corner/background artifacts. */
.cas-site.woocommerce-account .woocommerce-MyAccount-navigation {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation ul {
  overflow: hidden !important;
  border: 1px solid rgba(31,38,55,.08) !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.88) !important;
  box-shadow:
    0 20px 54px rgba(14,24,44,.07),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

/* Active item: CAS purple, rounded correctly on first/last item. */
.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
  background:
    radial-gradient(circle at 18% 0%, rgba(255,255,255,.28), transparent 10rem),
    linear-gradient(135deg, #a362f4 0%, #7f45e8 52%, #6726d4 100%) !important;
  color: #fff !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.26),
    0 14px 30px rgba(127,69,232,.16) !important;
}
.cas-site.woocommerce-account .ct-acount-nav,
.cas-site.woocommerce-account .ct-account-nav {
  background: transparent !important;
  box-shadow: none !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li:first-child.is-active a {
  border-top-left-radius: 23px !important;
  border-top-right-radius: 23px !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-navigation li:last-child.is-active a {
  border-bottom-left-radius: 23px !important;
  border-bottom-right-radius: 23px !important;
}

/* Checkout: remove Blocksy/Woo rectangular order-review frame. */
.cas-site.woocommerce-checkout .ct-order-review,
.cas-site.woocommerce-checkout div.ct-order-review,
.cas-site.woocommerce-checkout .ct-order-review[data-sticky],
.cas-site.woocommerce-checkout .woocommerce-checkout-review-order {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.cas-site.woocommerce-checkout .ct-order-review::before,
.cas-site.woocommerce-checkout .ct-order-review::after {
  display: none !important;
}

/* Checkout: make heading part of CAS order card flow. */
.cas-site.woocommerce-checkout .ct-order-review > h3,
.cas-site.woocommerce-checkout #order_review_heading {
  margin: 0 0 1.2rem !important;
  padding: 0 !important;
  color: #7f45e8 !important;
  font-weight: 840 !important;
}

/* Checkout: final card surface only on the actual table/payment blocks. */
.cas-site.woocommerce-checkout #order_review {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.cas-site.woocommerce-checkout .woocommerce-checkout-review-order-table {
  border: 1px solid rgba(127,69,232,.08) !important;
  box-shadow:
    0 22px 60px rgba(14,24,44,.065),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

/* Payment area: no gray frame, soft CAS surface. */
.cas-site.woocommerce-checkout #payment {
  border: 1px solid rgba(127,69,232,.08) !important;
  box-shadow:
    0 22px 60px rgba(14,24,44,.06),
    inset 0 1px 0 rgba(255,255,255,.82) !important;
}

/* Lost password page: proper centered CAS card. */
.cas-site.woocommerce-account .woocommerce-ResetPassword,
.cas-site.woocommerce-account form.lost_reset_password {
  width: min(560px, 100%) !important;
  margin: 0 auto !important;
  padding: clamp(28px, 3.2vw, 44px) !important;
  border: 1px solid rgba(127,69,232,.09) !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 15% 0%, rgba(127,69,232,.055), transparent 18rem),
    radial-gradient(circle at 88% 12%, rgba(116,203,187,.045), transparent 16rem),
    rgba(255,255,255,.88) !important;
  box-shadow:
    0 24px 70px rgba(14,24,44,.075),
    inset 0 1px 0 rgba(255,255,255,.80) !important;
}

.cas-site.woocommerce-account .woocommerce-ResetPassword p,
.cas-site.woocommerce-account form.lost_reset_password p {
  margin-bottom: 1.25rem !important;
  line-height: 1.6 !important;
}

.cas-site.woocommerce-account form.lost_reset_password .form-row {
  margin-bottom: 1.35rem !important;
}

/* Hide Woo "Browse products" CTA in empty account/download states. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info .button.wc-forward,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info a.button {
  display: none !important;
}

/* Hide default Woo shop/product archive entry CTAs where Woo injects them. */
.cas-site.woocommerce-account a[href*="/shop"],
.cas-site.woocommerce-account a[href*="/negozio"] {
  display: none !important;
}

/* Checkout/cart/account links remain CAS purple but softer on hover. */
.cas-site .woocommerce a {
  color: #7f45e8 !important;
  text-decoration-color: rgba(127,69,232,.45) !important;
  text-underline-offset: .16em;
}

.cas-site .woocommerce a:hover {
  color: #ff8500 !important;
  text-decoration-color: rgba(255,133,0,.55) !important;
}

/* Mobile lost password/order review. */
@media (max-width: 920px) {
  .cas-site.woocommerce-account .woocommerce-ResetPassword,
  .cas-site.woocommerce-account form.lost_reset_password {
    padding: 24px !important;
  }

  .cas-site.woocommerce-checkout .ct-order-review {
    padding: 0 !important;
  }
}

/* ============================================================
   CAS WooCommerce Checkout Consent Polish v1.0.0
   Purpose: keep legal/withdrawal checkbox text readable and
   visually aligned with WooCommerce privacy notice.
   ============================================================ */

.cas-site.woocommerce-checkout .woocommerce-privacy-policy-text,
.cas-site.woocommerce-checkout .woocommerce-privacy-policy-text p {
  color: #4f5d73 !important;
}

.cas-site.woocommerce-checkout .cas-ls-checkout-legal-consent-box label.checkbox,
.cas-site.woocommerce-checkout .cas-ls-digital-consent-box label.checkbox {
  color: #4f5d73 !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;
}

.cas-site.woocommerce-checkout .cas-ls-checkout-legal-consent-box label.checkbox *,
.cas-site.woocommerce-checkout .cas-ls-digital-consent-box label.checkbox * {
  font-weight: inherit !important;
}

.cas-site.woocommerce-checkout .cas-ls-checkout-legal-consent-box label.checkbox a,
.cas-site.woocommerce-checkout .cas-ls-digital-consent-box label.checkbox a {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 0.16em !important;
}

.cas-site.woocommerce-checkout .cas-ls-checkout-legal-consent-box label.checkbox a:hover,
.cas-site.woocommerce-checkout .cas-ls-digital-consent-box label.checkbox a:hover {
  color: #ff7a00 !important;
}

.cas-site.woocommerce-checkout .cas-ls-checkout-legal-consent-box .required,
.cas-site.woocommerce-checkout .cas-ls-digital-consent-box .required {
  color: #e24072 !important;
}


/* ============================================================
   CAS WooCommerce Order Received / Thank You Polish v1.0.0
   Purpose: make the post-checkout confirmation page readable,
   branded, and print/PDF friendlier.
   ============================================================ */

.cas-site.woocommerce-order-received .woocommerce {
  max-width: 1120px;
  margin: 0 auto;
}

.cas-site.woocommerce-order-received .woocommerce-notice--success,
.cas-site.woocommerce-order-received .woocommerce-thankyou-order-received {
  margin: 0 0 22px !important;
  padding: 22px 26px !important;
  border: 1px solid rgba(106, 58, 183, .18) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 8% 0%, rgba(136, 75, 255, .12), transparent 34%),
    linear-gradient(180deg, rgba(250, 247, 255, .96), rgba(255, 255, 255, .98)) !important;
  color: #4f5d73 !important;
  font-size: clamp(1.05rem, 1.7vw, 1.28rem) !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  box-shadow: 0 24px 70px rgba(54, 38, 93, .08) !important;
}

.cas-site.woocommerce-order-received .woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  list-style: none !important;
}

.cas-site.woocommerce-order-received .woocommerce-order-overview li {
  float: none !important;
  margin: 0 !important;
  padding: 16px 16px !important;
  border: 1px solid rgba(106, 58, 183, .14) !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, .86) !important;
  color: #6f7890 !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
  box-shadow: 0 14px 34px rgba(54, 38, 93, .06) !important;
}

.cas-site.woocommerce-order-received .woocommerce-order-overview li strong {
  display: block !important;
  margin-top: 7px !important;
  color: #252238 !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  word-break: break-word !important;
}

.cas-site.woocommerce-order-received .woocommerce-order-details,
.cas-site.woocommerce-order-received .woocommerce-customer-details,
.cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note,
.cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary,
.cas-site.woocommerce-order-received .cas-ls-wc-order-summary,
.cas-site.woocommerce-order-received .cas-ls-order-summary {
  margin: 24px 0 !important;
  padding: 24px !important;
  border: 1px solid rgba(106, 58, 183, .16) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, .94) !important;
  box-shadow: 0 24px 70px rgba(54, 38, 93, .07) !important;
}

.cas-site.woocommerce-order-received .woocommerce-order-details h2,
.cas-site.woocommerce-order-received .woocommerce-customer-details h2,
.cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note h2,
.cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary h2,
.cas-site.woocommerce-order-received .cas-ls-wc-order-summary h2,
.cas-site.woocommerce-order-received .cas-ls-order-summary h2 {
  margin: 0 0 18px !important;
  color: #753ff0 !important;
  font-size: clamp(1.35rem, 2vw, 1.85rem) !important;
  font-weight: 900 !important;
  line-height: 1.12 !important;
  letter-spacing: -.035em !important;
}

.cas-site.woocommerce-order-received table.shop_table {
  overflow: hidden !important;
  border: 1px solid rgba(106, 58, 183, .14) !important;
  border-radius: 18px !important;
  background: #fff !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.cas-site.woocommerce-order-received table.shop_table th,
.cas-site.woocommerce-order-received table.shop_table td {
  padding: 15px 16px !important;
  border-color: rgba(106, 58, 183, .10) !important;
  color: #4f5d73 !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
}

.cas-site.woocommerce-order-received table.shop_table th {
  color: #252238 !important;
  font-weight: 850 !important;
}

.cas-site.woocommerce-order-received table.shop_table tfoot th,
.cas-site.woocommerce-order-received table.shop_table tfoot td {
  background: rgba(250, 247, 255, .72) !important;
}

.cas-site.woocommerce-order-received table.shop_table tfoot tr:last-child th,
.cas-site.woocommerce-order-received table.shop_table tfoot tr:last-child td {
  color: #252238 !important;
  font-size: 1.08rem !important;
  font-weight: 900 !important;
}

.cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note p,
.cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary p,
.cas-site.woocommerce-order-received .cas-ls-wc-order-summary p,
.cas-site.woocommerce-order-received .cas-ls-order-summary p,
.cas-site.woocommerce-order-received .woocommerce-customer-details address {
  color: #4f5d73 !important;
  font-size: 1rem !important;
  font-style: normal !important;
  font-weight: 550 !important;
  line-height: 1.6 !important;
}

.cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note strong,
.cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary strong,
.cas-site.woocommerce-order-received .cas-ls-wc-order-summary strong,
.cas-site.woocommerce-order-received .cas-ls-order-summary strong {
  color: #252238 !important;
  font-weight: 850 !important;
}

.cas-site.woocommerce-order-received .woocommerce-customer-details address {
  padding: 18px !important;
  border: 1px solid rgba(106, 58, 183, .12) !important;
  border-radius: 18px !important;
  background: rgba(250, 247, 255, .56) !important;
}

@media (max-width: 900px) {
  .cas-site.woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .cas-site.woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: 1fr;
  }

  .cas-site.woocommerce-order-received .woocommerce-order-details,
  .cas-site.woocommerce-order-received .woocommerce-customer-details,
  .cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note,
  .cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary,
  .cas-site.woocommerce-order-received .cas-ls-wc-order-summary,
  .cas-site.woocommerce-order-received .cas-ls-order-summary {
    padding: 18px !important;
    border-radius: 20px !important;
  }
}

@media print {
  .cas-site.woocommerce-order-received header,
  .cas-site.woocommerce-order-received .site-header,
  .cas-site.woocommerce-order-received footer,
  .cas-site.woocommerce-order-received .site-footer,
  .cas-site.woocommerce-order-received .ct-header,
  .cas-site.woocommerce-order-received .ct-footer,
  .cas-site.woocommerce-order-received .cas-site-footer,
  .cas-site.woocommerce-order-received .cas-footer,
  .cas-site.woocommerce-order-received nav,
  .cas-site.woocommerce-order-received .woocommerce-breadcrumb {
    display: none !important;
  }

  .cas-site.woocommerce-order-received .woocommerce {
    max-width: 100% !important;
  }

  .cas-site.woocommerce-order-received .woocommerce-notice--success,
  .cas-site.woocommerce-order-received .woocommerce-thankyou-order-received,
  .cas-site.woocommerce-order-received .woocommerce-order-details,
  .cas-site.woocommerce-order-received .woocommerce-customer-details,
  .cas-site.woocommerce-order-received .cas-ls-digital-consent-order-note,
  .cas-site.woocommerce-order-received .cas-ls-wc-digital-order-summary,
  .cas-site.woocommerce-order-received .cas-ls-wc-order-summary,
  .cas-site.woocommerce-order-received .cas-ls-order-summary {
    box-shadow: none !important;
    break-inside: avoid !important;
    page-break-inside: avoid !important;
  }

  .cas-site.woocommerce-order-received .woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}


/* ============================================================
   CAS WooCommerce Order Received Notice Alignment v1.0.0
   Purpose: align WooCommerce success icon/bell with thank-you text.
   ============================================================ */

.cas-site.woocommerce-order-received .woocommerce-notice--success,
.cas-site.woocommerce-order-received .woocommerce-thankyou-order-received {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.cas-site.woocommerce-order-received .woocommerce-notice--success::before,
.cas-site.woocommerce-order-received .woocommerce-thankyou-order-received::before {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  width: 28px !important;
  height: 28px !important;
  margin: 0 !important;
  line-height: 1 !important;
}

.cas-site.woocommerce-order-received .woocommerce-notice--success > *,
.cas-site.woocommerce-order-received .woocommerce-thankyou-order-received > * {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* ============================================================
   CAS WooCommerce Order Received Notice Logo Spin v1.1.0
   Continuous slower vertical spin
   ============================================================ */

.cas-site.woocommerce-order-received .woocommerce-notice--success::before,
.cas-site.woocommerce-order-received .woocommerce-thankyou-order-received::before {
  content: "" !important;
  position: static !important;
  inset: auto !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  width: 82px !important;
  height: 82px !important;
  min-width: 82px !important;
  min-height: 82px !important;
  margin: 0 !important;
  background-image: url("/wp-content/uploads/2026/06/cas_logo_spin_82x82.webp") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: contain !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  background-color: transparent !important;
}

/* ============================================================
   CAS WooCommerce My Account Downloads Polish v1.0.0
   Purpose: clean CAS package downloads, disabled states,
   product metadata, and button layout.
   ============================================================ */

.cas-site.woocommerce-account .woocommerce-MyAccount-downloads {
  border: 1px solid rgba(106, 58, 183, .12) !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background: rgba(255, 255, 255, .96) !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-downloads th {
  color: #753ff0 !important;
  font-size: .92rem !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-downloads td {
  vertical-align: middle !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-downloads td.download-product {
  width: 56% !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-downloads td.download-file {
  width: 190px !important;
  text-align: center !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-product {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  min-width: 0 !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-product strong {
  color: #172238 !important;
  font-size: .98rem !important;
  font-weight: 850 !important;
  line-height: 1.35 !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-meta {
  display: block !important;
  color: #657187 !important;
  font-size: .82rem !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-domains {
  color: #4f5d73 !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-action {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 7px !important;
  width: 100% !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-button,
.cas-site.woocommerce-account .woocommerce-MyAccount-downloads .cas-ls-my-download-button.button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 128px !important;
  max-width: 150px !important;
  min-height: 42px !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  white-space: normal !important;
  text-align: center !important;
  font-size: .82rem !important;
  font-weight: 900 !important;
  line-height: 1.08 !important;
  letter-spacing: -.01em !important;
  box-shadow: 0 16px 32px rgba(106, 58, 183, .16) !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-button.is-ready {
  background: linear-gradient(135deg, #8b48f4, #6d2ee8) !important;
  color: #ffffff !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-button.is-ready:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 22px 42px rgba(106, 58, 183, .24) !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-button.is-disabled {
  background: #eef1f7 !important;
  color: #7a8497 !important;
  box-shadow: none !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
}

.cas-site.woocommerce-account .cas-ls-my-download-note {
  display: block !important;
  max-width: 180px !important;
  color: #7a8497 !important;
  font-size: .72rem !important;
  font-weight: 750 !important;
  line-height: 1.25 !important;
  text-align: center !important;
}

.cas-site.woocommerce-account tr.is-cas-download-unavailable td {
  background: rgba(248, 250, 253, .72) !important;
}

.cas-site.woocommerce-account tr.is-cas-download-unavailable .cas-ls-my-download-product strong {
  color: #4f5d73 !important;
}

@media (max-width: 760px) {
  .cas-site.woocommerce-account .woocommerce-MyAccount-downloads td.download-product,
  .cas-site.woocommerce-account .woocommerce-MyAccount-downloads td.download-file {
    width: auto !important;
    text-align: left !important;
  }

  .cas-site.woocommerce-account .cas-ls-my-download-action {
    align-items: flex-start !important;
  }

  .cas-site.woocommerce-account .cas-ls-my-download-note {
    text-align: left !important;
  }
}


/* ============================================================
   CAS WooCommerce My Account Digital Address UX v1.1.0
   Purpose:
   - Custom Auth Suite™ is digital-only: Billing remains visible,
     Shipping is hidden by PHP guard.
   - When Woo/Blocksy keeps the default two-column address wrapper,
     the remaining Billing card must expand naturally.
   - Edit Billing/Shipping address forms keep the same internal
     breathing room as the other CAS WooCommerce account forms.
   ============================================================ */

/* My Account > Addresses overview: one visible Billing card, full width. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses.col2-set,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .u-columns.woocommerce-Addresses,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .addresses.woocommerce-Addresses {
  display: block !important;
  width: 100% !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::before,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses::after,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .addresses::before,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .addresses::after {
  display: none !important;
  content: none !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address.col-1,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Addresses > .woocommerce-Address.u-column1 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

/* My Account > Edit Billing/Shipping address: title alignment. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
.cas-site.woocommerce-account .woocommerce-MyAccount-content > h3:first-child,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form > h2:first-child,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form > h3:first-child {
  margin: 0 !important;
  padding: clamp(26px, 3vw, 42px) clamp(26px, 3vw, 42px) 0 !important;
}

/* My Account > Edit Billing/Shipping address: fields breathing room. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-billing-fields,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-shipping-fields {
  padding: clamp(22px, 2.6vw, 34px) clamp(26px, 3vw, 42px) clamp(26px, 3vw, 42px) !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields__field-wrapper {
  display: block !important;
}

.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields > p:last-child,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-billing-fields > p:last-child,
.cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-shipping-fields > p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 920px) {
  .cas-site.woocommerce-account .woocommerce-MyAccount-content > h2:first-child,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content > h3:first-child,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content form > h2:first-child,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content form > h3:first-child {
    padding: 22px 22px 0 !important;
  }

  .cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-address-fields,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-billing-fields,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content form .woocommerce-shipping-fields {
    padding: 18px 22px 22px !important;
  }
}

/* ============================================================
   CAS WooCommerce My Account Table Actions Spacing v1.0.2
   Purpose:
   - Keep Orders pagination buttons away from the orders table.
   - Keep CAS SE Passkeys action buttons away from the passkeys table.
   - Avoid cross-over rules that make Orders and Passkeys fight each other.
   ============================================================ */

/* Woo Orders pagination/actions: spacing belongs to the pagination wrapper. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Pagination,
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table + .woocommerce-pagination,
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table + .woocommerce-Pagination,
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.shop_table + .woocommerce-pagination,
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.shop_table + .woocommerce-Pagination {
  display: flex !important;
  gap: 14px !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  margin-top: clamp(22px, 2.4vw, 34px) !important;
}

/* Buttons inside the pagination wrapper must not add their own vertical offset. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination .button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Pagination .button {
  margin-top: 0 !important;
}

/*
 * CAS SE Passkeys endpoint:
 * spacing belongs to the passkeys table/block, not to every Woo shop_table.
 * This avoids breaking Orders pagination.
 */
.cas-site.woocommerce-account .woocommerce-MyAccount-content table[class*="passkey"],
.cas-site.woocommerce-account .woocommerce-MyAccount-content table.cas-site-passkeys-table,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys table,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-table,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkey-table {
  margin-bottom: clamp(22px, 2.4vw, 34px) !important;
}

/* CAS SE passkeys action wrappers, when present. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-actions,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-buttons {
  margin-top: clamp(18px, 2vw, 28px) !important;
}

/* Direct passkey buttons rendered after the passkeys table/block. */
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-table + .button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-table + button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-table + a.button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys table + .button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys table + button,
.cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys table + a.button {
  margin-top: 0 !important;
}

@media (max-width: 782px) {
  .cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-pagination,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Pagination,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table + .woocommerce-pagination,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content table.woocommerce-orders-table + .woocommerce-Pagination,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content table.shop_table + .woocommerce-pagination,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content table.shop_table + .woocommerce-Pagination {
    margin-top: 22px !important;
  }

  .cas-site.woocommerce-account .woocommerce-MyAccount-content table[class*="passkey"],
  .cas-site.woocommerce-account .woocommerce-MyAccount-content table.cas-site-passkeys-table,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys table,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkeys-table,
  .cas-site.woocommerce-account .woocommerce-MyAccount-content .cas-site-passkey-table {
    margin-bottom: 22px !important;
  }
}

/* --------------------------------------------------------------------------
   CAS WooCommerce Cart Empty + Notices Refinement v1.0.4
   -------------------------------------------------------------------------- */

/*
 * Empty cart: preserve the real empty-cart title/icon and hide only Woo's
 * product upsell area ("New in store").
 */
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-heading:not(.wc-block-cart__empty-cart__title),
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block h2.wp-block-heading:not(.wc-block-cart__empty-cart__title),
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-separator,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block hr.wp-block-separator,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wp-block-woocommerce-product-new,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-grid,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .products,
.cas-site.woocommerce-cart .cart-empty ~ h2,
.cas-site.woocommerce-cart .cart-empty ~ .products,
.cas-site.woocommerce-cart .cart-empty ~ .wc-block-grid,
.cas-site.woocommerce-cart .cart-empty ~ .wp-block-woocommerce-product-new {
  display: none !important;
}

/* Empty cart block spacing. */
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
  width: min(100%, 720px) !important;
  margin: 34px auto 0 !important;
  text-align: center !important;
}

/* Main empty-cart title remains visible. */
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title {
  display: block !important;
  color: #243044 !important;
  font-weight: 800 !important;
  letter-spacing: -0.02em !important;
}

/* Empty-cart icon: CAS violet when Woo exposes it through pseudo/SVG classes. */
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .with-empty-cart-icon::before,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title::before,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__icon,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__icon *,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block svg,
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block svg *,
.cas-site.woocommerce-cart .cart-empty::before,
.cas-site.woocommerce-cart .wc-empty-cart-message .cart-empty::before,
.cas-site.woocommerce-cart .woocommerce-info.cart-empty::before,
.cas-site.woocommerce-cart .ct-empty-cart svg,
.cas-site.woocommerce-cart .ct-empty-cart svg * {
  color: var(--cas-site-purple, #7c3aed) !important;
  fill: var(--cas-site-purple, #7c3aed) !important;
  stroke: var(--cas-site-purple, #7c3aed) !important;
  background-color: var(--cas-site-purple, #7c3aed) !important;
}

/*
 * Classic Woo notices + Woo Blocks notices.
 * The cart removal snackbar is emitted by Woo Blocks in:
 * .wc-block-components-notices__snackbar / .wc-block-components-notice-snackbar-list
 */
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error,
.cas-site.woocommerce-cart .woocommerce-message,
.cas-site.woocommerce-cart .woocommerce-info,
.cas-site.woocommerce-cart .woocommerce-error,
.cas-site.woocommerce-cart .wc-empty-cart-message,
.cas-site.woocommerce-cart .wc-block-components-notice-banner,
.cas-site.woocommerce-cart .wc-block-components-notice-banner.is-info,
.cas-site.woocommerce-cart .wc-block-components-notice-banner.is-success,
.cas-site.woocommerce-cart .wc-block-components-notice-banner.is-error,
.cas-site.woocommerce-cart .wc-block-components-notices__snackbar .wc-block-components-snackbar,
.cas-site.woocommerce-cart .wc-block-components-notice-snackbar-list .wc-block-components-snackbar {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  width: min(100%, 1120px) !important;
  min-height: 64px !important;
  margin: 18px auto 22px !important;
  padding: 18px 22px !important;
  color: #243044 !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(124, 58, 237, 0.07), transparent 18rem),
    rgba(255, 255, 255, 0.88) !important;
  border: 1px solid rgba(124, 58, 237, 0.16) !important;
  border-radius: 18px !important;
  box-shadow: 0 18px 45px rgba(36, 48, 68, 0.10) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  font-weight: 650 !important;
  line-height: 1.45 !important;
}

/* Snackbar container positioning when Woo Blocks emits a cart-remove notice. */
.cas-site.woocommerce-cart .wc-block-components-notices__snackbar,
.cas-site.woocommerce-cart .wc-block-components-notice-snackbar-list {
  z-index: 9999 !important;
}

/* Notice icons. */
.cas-site.woocommerce-cart .woocommerce-message::before,
.cas-site.woocommerce-cart .woocommerce-info::before,
.cas-site.woocommerce-cart .woocommerce-error::before,
.cas-site.woocommerce-cart .wc-empty-cart-message::before,
.cas-site.woocommerce-cart .wc-block-components-notice-banner > svg,
.cas-site.woocommerce-cart .wc-block-components-notice-banner > svg *,
.cas-site.woocommerce-cart .wc-block-components-notice-banner .wc-block-components-notice-banner__icon,
.cas-site.woocommerce-cart .wc-block-components-notice-banner .wc-block-components-notice-banner__icon *,
.cas-site.woocommerce-cart .wc-block-components-snackbar svg,
.cas-site.woocommerce-cart .wc-block-components-snackbar svg * {
  color: var(--cas-site-purple, #7c3aed) !important;
  fill: var(--cas-site-purple, #7c3aed) !important;
  stroke: var(--cas-site-purple, #7c3aed) !important;
}

/* Hide Undo/Restore actions: cart restore is intentionally blocked by CAS guards. */
.cas-site.woocommerce-cart .woocommerce-message .restore-item,
.cas-site.woocommerce-cart .woocommerce-message a.restore-item,
.cas-site.woocommerce-cart .woocommerce-message a.button.restore-item,
.cas-site.woocommerce-cart .woocommerce-message .button.restore-item,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message .restore-item,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message a.restore-item,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message a.button.restore-item,
.cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message .button.restore-item,
.cas-site.woocommerce-cart .wc-block-components-notice-banner .restore-item,
.cas-site.woocommerce-cart .wc-block-components-notice-banner a.restore-item,
.cas-site.woocommerce-cart .wc-block-components-notice-banner .wc-forward,
.cas-site.woocommerce-cart .wc-block-components-notice-banner a.button,
.cas-site.woocommerce-cart .wc-block-components-notice-banner button,
.cas-site.woocommerce-cart .wc-block-components-snackbar .restore-item,
.cas-site.woocommerce-cart .wc-block-components-snackbar a.restore-item,
.cas-site.woocommerce-cart .wc-block-components-snackbar .wc-forward,
.cas-site.woocommerce-cart .wc-block-components-snackbar a.button,
.cas-site.woocommerce-cart .wc-block-components-snackbar button {
  display: none !important;
}

@media (max-width: 760px) {
  .cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block {
    width: calc(100% - 28px) !important;
    margin-top: 24px !important;
  }

  .cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message,
  .cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-info,
  .cas-site.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-error,
  .cas-site.woocommerce-cart .woocommerce-message,
  .cas-site.woocommerce-cart .woocommerce-info,
  .cas-site.woocommerce-cart .woocommerce-error,
  .cas-site.woocommerce-cart .wc-empty-cart-message,
  .cas-site.woocommerce-cart .wc-block-components-notice-banner,
  .cas-site.woocommerce-cart .wc-block-components-notices__snackbar .wc-block-components-snackbar,
  .cas-site.woocommerce-cart .wc-block-components-notice-snackbar-list .wc-block-components-snackbar {
    width: calc(100% - 28px) !important;
    margin: 14px auto 18px !important;
    padding: 16px 18px !important;
    border-radius: 18px !important;
    font-size: 15px !important;
  }
}


/* CAS Woo Notices + Cart Polish v1.0.1
   Owner: cas-woocommerce.css

   Stabilizes WooCommerce classic notices, Woo Blocks notices/snackbars,
   empty cart states and cart/card borders around the CAS sticky header.
   No editorial text is generated in CSS.
*/

.cas-site.woocommerce-cart,
.cas-site.woocommerce-checkout,
body.cas-site.woocommerce-cart,
body.cas-site.woocommerce-checkout {
  scroll-padding-top: calc(var(--cas-mobile-adminbar-real-height, 0px) + var(--cas-mobile-header-real-height, 82px) + 18px) !important;
}

/* Remove Woo pseudo-icons that render inconsistently with CAS typography. */
.cas-site .woocommerce-message::before,
.cas-site .woocommerce-info::before,
.cas-site .woocommerce-error::before,
.cas-site .woocommerce-message::after,
.cas-site .woocommerce-info::after,
.cas-site .woocommerce-error::after,
.cas-site .cart-empty.woocommerce-info::before,
.cas-site .cart-empty.woocommerce-info::after {
  content: none !important;
  display: none !important;
}

/* Remove the empty phantom block Woo may leave after classic empty-cart info. */
.cas-site .wc-empty-cart-message:empty,
.cas-site .wc-empty-cart-message:blank {
  display: none !important;
}

/* Classic notices. */
.cas-site .woocommerce-notices-wrapper {
  width: 100% !important;
  max-width: min(1180px, calc(100vw - 32px)) !important;
  margin: 0 auto 20px !important;
  padding: 0 !important;
  clear: both !important;
}

.cas-site .woocommerce-message,
.cas-site .woocommerce-info,
.cas-site .woocommerce-error,
.cas-site .cart-empty.woocommerce-info,
.cas-site .wc-block-components-notice-banner {
  position: relative !important;
  overflow: hidden !important;

  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;

  width: 100% !important;
  max-width: min(1180px, calc(100vw - 32px)) !important;
  margin: 16px auto 18px !important;
  padding: 17px 22px !important;

  border: 1px solid rgba(127,69,232,.13) !important;
  border-left: 5px solid #7f45e8 !important;
  border-radius: 20px !important;

  background:
    radial-gradient(circle at 8% 0%, rgba(127,69,232,.065), transparent 18rem),
    radial-gradient(circle at 100% 12%, rgba(255,171,61,.055), transparent 16rem),
    linear-gradient(180deg, rgba(255,255,255,.965), rgba(248,250,255,.91)) !important;

  box-shadow:
    0 16px 38px rgba(24,36,60,.065),
    inset 0 1px 0 rgba(255,255,255,.78) !important;

  color: #1f2937 !important;
  font-family: var(--cas-font-body, inherit) !important;
  font-size: .96rem !important;
  line-height: 1.46 !important;
  font-weight: 700 !important;
  letter-spacing: -.012em !important;
}

.cas-site.woocommerce-checkout .woocommerce-error {
  border-left-color: #ef4444 !important;
}

.cas-site .woocommerce-message a,
.cas-site .woocommerce-info a,
.cas-site .woocommerce-error a,
.cas-site .wc-block-components-notice-banner a {
  color: #7f45e8 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

.cas-site .woocommerce-message a:hover,
.cas-site .woocommerce-info a:hover,
.cas-site .woocommerce-error a:hover,
.cas-site .wc-block-components-notice-banner a:hover {
  text-decoration: underline !important;
}

/* Woo Blocks notices. */
.cas-site .wc-block-components-notice-banner {
  align-items: flex-start !important;
}

.cas-site .wc-block-components-notice-banner > svg,
.cas-site .wc-block-components-notice-banner__icon {
  display: none !important;
}

.cas-site .wc-block-components-notice-banner__content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  color: #1f2937 !important;
}

/* Classic cart: remove ugly outer outlines and rebuild soft CAS cards. */
.cas-site.woocommerce-cart .woocommerce,
body.cas-site.woocommerce-cart .woocommerce {
  max-width: min(1240px, calc(100vw - 32px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.cas-site.woocommerce-cart .woocommerce-cart-form,
body.cas-site.woocommerce-cart .woocommerce-cart-form,
.cas-site.woocommerce-cart .cart-collaterals,
body.cas-site.woocommerce-cart .cart-collaterals,
.cas-site.woocommerce-cart .cart_totals,
body.cas-site.woocommerce-cart .cart_totals {
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.cas-site.woocommerce-cart table.shop_table,
body.cas-site.woocommerce-cart table.shop_table,
.cas-site.woocommerce-cart .woocommerce-cart-form__contents,
body.cas-site.woocommerce-cart .woocommerce-cart-form__contents,
.cas-site.woocommerce-cart .cart_totals table,
body.cas-site.woocommerce-cart .cart_totals table {
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;

  border: 1px solid rgba(31,38,55,.075) !important;
  border-radius: 26px !important;

  background:
    radial-gradient(circle at 8% 0%, rgba(127,69,232,.05), transparent 18rem),
    radial-gradient(circle at 100% 14%, rgba(116,203,187,.04), transparent 16rem),
    linear-gradient(180deg, rgba(255,255,255,.80), rgba(248,250,255,.58)) !important;

  box-shadow:
    0 18px 46px rgba(24,36,60,.06),
    inset 0 1px 0 rgba(255,255,255,.78) !important;
}

.cas-site.woocommerce-cart table.shop_table th,
.cas-site.woocommerce-cart table.shop_table td,
body.cas-site.woocommerce-cart table.shop_table th,
body.cas-site.woocommerce-cart table.shop_table td {
  border-color: rgba(31,38,55,.075) !important;
}

.cas-site.woocommerce-cart .cart_totals h2,
body.cas-site.woocommerce-cart .cart_totals h2 {
  margin: 0 0 16px !important;
  color: #7f45e8 !important;
  font-family: var(--cas-font-brand, inherit) !important;
  font-weight: 850 !important;
  letter-spacing: -.035em !important;
}

/* Woo Blocks empty cart. */
.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
.cas-site.woocommerce-cart .wc-block-cart__empty-cart,
body.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
body.cas-site.woocommerce-cart .wc-block-cart__empty-cart {
  position: relative !important;
  z-index: 1 !important;

  width: 100% !important;
  max-width: 980px !important;
  margin: 24px auto 52px !important;
  padding: clamp(46px, 8vw, 88px) 22px !important;

  border: 0 !important;
  outline: 0 !important;
  border-radius: 28px !important;

  background:
    radial-gradient(circle at 8% 0%, rgba(127,69,232,.06), transparent 20rem),
    radial-gradient(circle at 100% 12%, rgba(255,171,61,.05), transparent 18rem),
    linear-gradient(180deg, rgba(255,255,255,.44), rgba(248,250,255,.24)) !important;

  box-shadow: none !important;
  text-align: center !important;
}

.cas-site.woocommerce-cart .wc-block-cart__empty-cart__title,
body.cas-site.woocommerce-cart .wc-block-cart__empty-cart__title {
  color: #1f2937 !important;
  font-family: var(--cas-font-brand, inherit) !important;
  font-weight: 850 !important;
  letter-spacing: -.035em !important;
}

/* Store API snackbar/undo. */
.cas-site .wc-block-components-snackbar-list {
  z-index: 99990 !important;
  box-sizing: border-box !important;
}

.cas-site .wc-block-components-snackbar {
  overflow: hidden !important;

  border: 1px solid rgba(127,69,232,.14) !important;
  border-radius: 17px !important;

  background:
    radial-gradient(circle at 8% 0%, rgba(127,69,232,.06), transparent 12rem),
    linear-gradient(180deg, rgba(255,255,255,.985), rgba(248,250,255,.96)) !important;

  box-shadow:
    0 18px 44px rgba(24,36,60,.14),
    inset 0 1px 0 rgba(255,255,255,.84) !important;

  color: #1f2937 !important;
  font-family: var(--cas-font-body, inherit) !important;
  font-weight: 700 !important;
}

.cas-site .wc-block-components-snackbar__content,
.cas-site .wc-block-components-snackbar__content a {
  color: #1f2937 !important;
}

.cas-site .wc-block-components-snackbar__action {
  color: #7f45e8 !important;
  font-weight: 850 !important;
}

@media (max-width: 782px) {
  .cas-site.woocommerce-cart .woocommerce-notices-wrapper,
  .cas-site.woocommerce-checkout .woocommerce-notices-wrapper,
  body.cas-site.woocommerce-cart .woocommerce-notices-wrapper,
  body.cas-site.woocommerce-checkout .woocommerce-notices-wrapper,
  .cas-site.woocommerce-cart .wc-block-components-notices,
  body.cas-site.woocommerce-cart .wc-block-components-notices {
    margin-top: calc(var(--cas-mobile-adminbar-real-height, 0px) + 12px) !important;
    scroll-margin-top: calc(var(--cas-mobile-adminbar-real-height, 0px) + var(--cas-mobile-header-real-height, 82px) + 18px) !important;
  }

  .cas-site .woocommerce-message,
  .cas-site .woocommerce-info,
  .cas-site .woocommerce-error,
  .cas-site .cart-empty.woocommerce-info,
  .cas-site .wc-block-components-notice-banner {
    width: calc(100vw - 28px) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 15px 16px !important;
    border-radius: 17px !important;
  }

  .cas-site.woocommerce-cart table.shop_table,
  body.cas-site.woocommerce-cart table.shop_table,
  .cas-site.woocommerce-cart .woocommerce-cart-form__contents,
  body.cas-site.woocommerce-cart .woocommerce-cart-form__contents,
  .cas-site.woocommerce-cart .cart_totals table,
  body.cas-site.woocommerce-cart .cart_totals table {
    border-radius: 22px !important;
  }

  .cas-site .wc-block-components-snackbar-list {
    position: fixed !important;
    inset: auto 14px auto 14px !important;
    top: calc(var(--cas-mobile-adminbar-real-height, 0px) + var(--cas-mobile-header-real-height, 82px) + 12px) !important;
    right: 14px !important;
    bottom: auto !important;
    left: 14px !important;

    width: auto !important;
    max-width: none !important;

    transform: none !important;
    pointer-events: none !important;
  }

  .cas-site .wc-block-components-snackbar {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    pointer-events: auto !important;
  }

  .cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
  .cas-site.woocommerce-cart .wc-block-cart__empty-cart,
  body.cas-site.woocommerce-cart .wp-block-woocommerce-empty-cart-block,
  body.cas-site.woocommerce-cart .wc-block-cart__empty-cart {
    margin-top: 18px !important;
    padding-top: clamp(52px, 12vw, 82px) !important;
    min-height: min(64vh, 620px) !important;
  }
}

/* /CAS Woo Notices + Cart Polish v1.0.1 */


/* =========================================================
   CAS CHECKOUT PRO UI — P2
   Scope: Classic WooCommerce checkout only.
   Purpose:
   - use real Prompt weights (400/500), avoiding synthetic bold;
   - move checkout labels/content toward the darker Cart grammar;
   - align fiscal radio controls inline with their option labels;
   - preserve CAS purple as accent, not dominant body text.
   ========================================================= */

.cas-site.woocommerce-checkout .woocommerce-billing-fields > h3,
.cas-site.woocommerce-checkout .woocommerce-additional-fields > h3,
.cas-site.woocommerce-checkout #order_review_heading,
.cas-site.woocommerce-checkout #order_review h3 {
  color: #252238 !important;
  font-weight: 500 !important;
}

.cas-site.woocommerce-checkout .woocommerce form .form-row > label,
.cas-site.woocommerce-checkout .woocommerce form .form-row > label:first-child {
  color: #252238 !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
}

.cas-site.woocommerce-checkout .woocommerce form .form-row .optional {
  color: #667085 !important;
  font-weight: 400 !important;
}

.cas-site.woocommerce-checkout .woocommerce form .form-row .required {
  color: #ff4d4f !important;
  font-weight: 500 !important;
}

/* Customer-type radio group: radio and text on the same visual row. */
.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper {
  display: grid !important;
  grid-template-columns: 20px minmax(0, 1fr) !important;
  column-gap: 10px !important;
  row-gap: 10px !important;
  align-items: center !important;
  width: 100% !important;
  margin-top: 8px !important;
}

.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper
> br {
  display: none !important;
}

.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper
> input[type="radio"] {
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  align-self: center !important;
}

.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper
> label {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #252238 !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  cursor: pointer !important;
}

/* Required state belongs to the radio group, not to each option label. */
.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper
> label
.required,
.cas-site.woocommerce-checkout
#billing_cas_customer_type_field
> .woocommerce-input-wrapper
> label
abbr.required {
  display: none !important;
}

/* Keep field contents visually close to the Cart: dark, readable, lighter weight. */
.cas-site.woocommerce-checkout
.woocommerce-billing-fields
input.input-text,
.cas-site.woocommerce-checkout
.woocommerce-billing-fields
textarea,
.cas-site.woocommerce-checkout
.woocommerce-billing-fields
.select2-selection__rendered {
  color: #252238 !important;
  font-weight: 400 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-name,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-total,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
th,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
td {
  color: #252238 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-name strong,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
.product-name b,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
.wc-item-meta-label,
.cas-site.woocommerce-checkout
.woocommerce-checkout-review-order-table
dt {
  color: #252238 !important;
  font-weight: 500 !important;
}

/* End CAS CHECKOUT PRO UI — P2 */

/* =========================================================
   CAS CHECKOUT ERROR NOTICE — CONSOLIDATED
   Scope: Classic WooCommerce checkout only.
   Keeps WooCommerce native notice/data-id behavior intact and
   exposes sticky-header-safe anchor targets.
   ========================================================= */

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout {
  margin: 0 0 30px !important;
  scroll-margin-top: var(--cas-checkout-scroll-offset, 180px) !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error {
  display: grid !important;
  gap: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 10px 22px !important;
  overflow: hidden !important;
  border: 1px solid rgba(220, 38, 38, .18) !important;
  border-left: 4px solid #e5484d !important;
  border-radius: 18px !important;
  background:
    linear-gradient(
      135deg,
      rgba(255, 248, 248, .96),
      rgba(255, 255, 255, .98)
    ) !important;
  box-shadow: 0 14px 34px rgba(31, 35, 48, .07) !important;
  color: #344054 !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error::before {
  display: none !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
> li {
  position: relative !important;
  margin: 0 !important;
  padding: 12px 4px 12px 28px !important;
  color: #344054 !important;
  font-family: "Prompt", sans-serif !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  list-style: none !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
> li + li {
  border-top: 1px solid rgba(52, 64, 84, .09) !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
> li::before {
  content: "!" !important;
  position: absolute !important;
  top: 14px !important;
  left: 2px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 999px !important;
  background: rgba(229, 72, 77, .11) !important;
  color: #c9343a !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
> li strong {
  color: #252238 !important;
  font-family: "Prompt", sans-serif !important;
  font-weight: 500 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
a {
  color: #344054 !important;
  font-weight: 400 !important;
  text-decoration-color: rgba(124, 58, 237, .45) !important;
  text-decoration-thickness: 1px !important;
  text-underline-offset: 3px !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
a strong,
.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
a b {
  color: inherit !important;
  font-weight: 400 !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
a:hover,
.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
a:focus-visible {
  color: #252238 !important;
  text-decoration-color: #7c3aed !important;
}

.cas-site.woocommerce-checkout
.woocommerce-NoticeGroup-checkout
ul.woocommerce-error
> li[data-id] {
  cursor: pointer;
}

.cas-site.woocommerce-checkout
#cas_license_domain,
.cas-site.woocommerce-checkout
#cas_license_extra_domains,
.cas-site.woocommerce-checkout
#billing_cas_customer_type,
.cas-site.woocommerce-checkout
#billing_company,
.cas-site.woocommerce-checkout
#billing_cas_fiscal_code,
.cas-site.woocommerce-checkout
#billing_cas_vat_it,
.cas-site.woocommerce-checkout
#billing_cas_vat_eu,
.cas-site.woocommerce-checkout
#billing_cas_sdi,
.cas-site.woocommerce-checkout
#billing_cas_pec,
.cas-site.woocommerce-checkout
#billing_cas_tax_id,
.cas-site.woocommerce-checkout
#cas_ls_checkout_privacy_terms_consent,
.cas-site.woocommerce-checkout
#cas_ls_immediate_digital_access_consent,
.cas-site.woocommerce-checkout
#cas_ls_technical_support_immediate_consent {
  scroll-margin-top: var(--cas-checkout-scroll-offset, 180px) !important;
}

/* End CAS CHECKOUT ERROR NOTICE — CONSOLIDATED */

/* =========================================================
   CAS CHECKOUT CONSENT UI — CONSOLIDATED
   One canonical visual contract; no P4/P5 override stacking.
   ========================================================= */

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-box {
  margin: 0 0 16px !important;
  padding: 16px !important;
  border: 1px solid rgba(124, 58, 237, .22) !important;
  border-radius: 18px !important;
  background: rgba(124, 58, 237, .025) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field {
  margin: 0 !important;
  padding: 15px 16px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: rgba(255, 255, 255, .62) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item {
  margin: 0 0 14px !important;
  padding: 15px 16px 16px !important;
  border: 1px solid rgba(124, 58, 237, .22) !important;
  border-radius: 14px !important;
  background: rgba(124, 58, 237, .035) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
.cas-ls-digital-consent-field {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
input[type="checkbox"],
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
input[type="checkbox"] {
  -webkit-appearance: none !important;
  appearance: none !important;
  position: relative !important;
  display: inline-block !important;
  width: 22px !important;
  min-width: 22px !important;
  height: 22px !important;
  margin: 1px 0 0 !important;
  vertical-align: top !important;
  border: 2px solid #7c3aed !important;
  border-radius: 6px !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(124, 58, 237, .08) !important;
  cursor: pointer !important;
  transition:
    background-color .16s ease,
    border-color .16s ease,
    box-shadow .16s ease !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
input[type="checkbox"]:hover,
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
input[type="checkbox"]:hover {
  border-color: #6d28d9 !important;
  box-shadow: 0 0 0 4px rgba(124, 58, 237, .12) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
input[type="checkbox"]:focus-visible,
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
input[type="checkbox"]:focus-visible {
  outline: 2px solid #ff8500 !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(124, 58, 237, .14) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
input[type="checkbox"]:checked,
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
input[type="checkbox"]:checked {
  border-color: #7c3aed !important;
  background: #7c3aed !important;
  box-shadow: 0 0 0 3px rgba(124, 58, 237, .12) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
input[type="checkbox"]:checked::after,
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
input[type="checkbox"]:checked::after {
  content: "" !important;
  position: absolute !important;
  top: 2px !important;
  left: 6px !important;
  width: 6px !important;
  height: 11px !important;
  border: solid #ffffff !important;
  border-width: 0 2px 2px 0 !important;
  transform: rotate(45deg) !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
label.checkbox {
  position: relative !important;
  display: block !important;
  margin: 0 !important;
  padding-left: 34px !important;
  color: #344054 !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  cursor: pointer !important;
}

.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-field
label.checkbox
input[type="checkbox"] {
  position: absolute !important;
  top: 1px !important;
  left: 0 !important;
  margin: 0 !important;
}

.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
.cas-ls-digital-consent-field
label.checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #1f2937 !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  cursor: pointer !important;
}

.cas-site.woocommerce-checkout
.cas-ls-digital-consent-copy {
  margin: 9px 0 0 32px !important;
  color: #475467 !important;
  font-weight: 400 !important;
  font-size: .96em !important;
  line-height: 1.55 !important;
}

/* Inline required-consent message: text signal only, no extra border. */
.cas-site.woocommerce-checkout
.cas-ls-checkout-legal-consent-box
.checkout-inline-error-message,
.cas-site.woocommerce-checkout
.cas-ls-digital-consent-item
.checkout-inline-error-message {
  color: #c9343a !important;
  font-weight: 500 !important;
}

@media (max-width: 600px) {
  .cas-site.woocommerce-checkout
  .cas-ls-checkout-legal-consent-box {
    padding: 13px !important;
  }

  .cas-site.woocommerce-checkout
  .cas-ls-checkout-legal-consent-field {
    padding: 14px !important;
  }

  .cas-site.woocommerce-checkout
  .cas-ls-digital-consent-item {
    padding: 14px !important;
  }

  .cas-site.woocommerce-checkout
  .cas-ls-digital-consent-copy {
    margin-left: 32px !important;
  }
}

/* End CAS CHECKOUT CONSENT UI — CONSOLIDATED */
