/* ==========================================================================
   The Unboxed Academy — WooCommerce brand styling (classic cart/checkout)
   Enqueued by the child theme on WooCommerce pages only. Restyles the
   classic (shortcode) cart, checkout, My Account and order-received screens
   to match the sales page — without changing any Woo functionality.

   NOTE: theming a framework needs !important to beat Astra + Woo defaults.
   If your Astra header/footer selectors differ, tweak the "page shell" block.
   ========================================================================== */
:root{
  --uba-bg:#0B0E13; --uba-panel:#12161E; --uba-panel2:#141922;
  --uba-line:rgba(255,255,255,.09); --uba-line2:rgba(255,255,255,.14);
  --uba-text:#EAF0F7; --uba-muted:#98A2B3; --uba-dim:#6B7688;
  --uba-accent:#1E9BFF; --uba-grad:linear-gradient(135deg,#3AAEFF,#1478F5);
  --uba-ink:#04121f; --uba-field:#0D1117;
}

/* ---------- page shell ---------- */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account,
body.woocommerce-order-received,
body.woocommerce-page{
  background:var(--uba-bg)!important;
  color:var(--uba-text)!important;
  font-family:'Instrument Sans',system-ui,sans-serif;
}
body.woocommerce-page .entry-title,
body.woocommerce-page h1,body.woocommerce-page h2,body.woocommerce-page h3{
  font-family:'Space Grotesk',sans-serif!important;color:var(--uba-text)!important;letter-spacing:-.01em;
}
body.woocommerce-page a{color:var(--uba-accent);}
body.woocommerce-page p,body.woocommerce-page li,body.woocommerce-page td,body.woocommerce-page th{color:var(--uba-text);}

/* Astra header/footer — blend to dark. Adjust selectors to your Astra setup,
   or disable the header/footer on these pages via Astra's page settings. */
body.woocommerce-page .site-header,
body.woocommerce-page .ast-primary-header-bar,
body.woocommerce-page .main-header-bar,
body.woocommerce-page .site-footer,
body.woocommerce-page .ast-footer-overlay{
  background:var(--uba-bg)!important;border-color:var(--uba-line)!important;
}
body.woocommerce-page .main-header-menu a,
body.woocommerce-page .site-title a,
body.woocommerce-page .ast-site-identity a{color:var(--uba-text)!important;}

/* ---------- tables: cart + order review ---------- */
.woocommerce table.shop_table{
  background:var(--uba-panel)!important;border:1px solid var(--uba-line)!important;
  border-radius:16px!important;border-collapse:separate!important;overflow:hidden;
}
.woocommerce table.shop_table th{
  background:transparent!important;color:var(--uba-dim)!important;
  font-family:'Space Grotesk',sans-serif;text-transform:uppercase;letter-spacing:.08em;
  font-size:12px;border-bottom:1px solid var(--uba-line)!important;padding:16px!important;
}
.woocommerce table.shop_table td{
  background:transparent!important;color:var(--uba-text)!important;
  border-top:1px solid var(--uba-line)!important;padding:18px 16px!important;vertical-align:middle;
}
.woocommerce table.shop_table .product-name a{color:var(--uba-text)!important;font-family:'Space Grotesk',sans-serif;font-weight:600;}
.woocommerce table.shop_table img{border-radius:10px;}
.woocommerce .cart_item .amount,.woocommerce .order-total .amount,.woocommerce-Price-amount{color:var(--uba-text)!important;font-family:'Space Grotesk',sans-serif;}

/* remove (×) link */
.woocommerce a.remove{color:var(--uba-dim)!important;background:transparent!important;border:0!important;font-weight:700;}
.woocommerce a.remove:hover{color:#ff6b6b!important;background:transparent!important;}

/* quantity stepper */
.woocommerce .quantity .qty{
  background:var(--uba-field)!important;border:1px solid var(--uba-line2)!important;color:var(--uba-text)!important;
  border-radius:10px!important;padding:10px!important;font-family:'Space Grotesk',sans-serif;
}

/* ---------- form fields ---------- */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce #order_review input.input-text,
.woocommerce .coupon input.input-text,
.woocommerce input.input-text,
.woocommerce textarea,
.woocommerce select,
.select2-container--default .select2-selection--single{
  background:var(--uba-field)!important;border:1px solid var(--uba-line2)!important;color:var(--uba-text)!important;
  border-radius:10px!important;padding:12px 14px!important;font-family:'Instrument Sans',sans-serif;min-height:46px;
}
.woocommerce ::placeholder,.select2-container--default .select2-selection__placeholder{color:var(--uba-dim)!important;}
.woocommerce label,.woocommerce .form-row label{color:var(--uba-muted)!important;font-weight:500;}
.woocommerce form.checkout .col2-set,.woocommerce #customer_details{color:var(--uba-text);}
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{width:100%;}

/* ---------- buttons ---------- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{
  background:rgba(255,255,255,.08)!important;color:var(--uba-text)!important;border:0!important;
  border-radius:11px!important;font-family:'Space Grotesk',sans-serif!important;font-weight:600!important;
  padding:13px 22px!important;text-shadow:none!important;transition:filter .15s ease,transform .15s ease;
}
.woocommerce a.button:hover,.woocommerce button.button:hover{filter:brightness(1.15);}
.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce input.button.alt,
.woocommerce #place_order,.wc-proceed-to-checkout a.checkout-button{
  background:var(--uba-grad)!important;color:var(--uba-ink)!important;
  box-shadow:0 12px 30px rgba(30,155,255,.35)!important;
}
.wc-proceed-to-checkout a.checkout-button,.woocommerce #place_order{width:100%;text-align:center;padding:16px!important;font-size:16px!important;}
.woocommerce a.button.alt:hover,.woocommerce button.button.alt:hover,
.woocommerce #place_order:hover,.wc-proceed-to-checkout a.checkout-button:hover{filter:brightness(1.06);transform:translateY(-1px);}

/* ---------- summary / totals panels ---------- */
.woocommerce .cart_totals,
.woocommerce-checkout #order_review,
.woocommerce .woocommerce-order-details,
.woocommerce .woocommerce-customer-details,
.woocommerce-account .woocommerce-MyAccount-content{
  background:linear-gradient(160deg,#141B26,#0E1219)!important;border:1px solid var(--uba-line)!important;
  border-radius:18px!important;padding:24px!important;
}
.woocommerce .cart_totals h2,.woocommerce #order_review_heading,.woocommerce-order-details h2{color:var(--uba-text)!important;}
.woocommerce .cart_totals table,.woocommerce-checkout-review-order-table{background:transparent!important;border:0!important;}
.woocommerce .cart_totals table td,.woocommerce .cart_totals table th,
.woocommerce-checkout-review-order-table td,.woocommerce-checkout-review-order-table th{border-top:1px solid var(--uba-line)!important;padding:12px 6px!important;}

/* ---------- payment box ---------- */
.woocommerce-checkout #payment{background:transparent!important;}
.woocommerce-checkout #payment ul.payment_methods{
  background:var(--uba-field)!important;border:1px solid var(--uba-line)!important;border-radius:12px!important;
  list-style:none!important;margin:0 0 16px!important;padding:8px 16px!important;
}
.woocommerce-checkout #payment ul.payment_methods li{border-bottom:1px solid var(--uba-line);padding:12px 0;}
.woocommerce-checkout #payment ul.payment_methods li:last-child{border-bottom:0;}
.woocommerce-checkout #payment div.payment_box{background:rgba(255,255,255,.04)!important;color:var(--uba-muted)!important;border-radius:10px;}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:rgba(255,255,255,.04)!important;}
.woocommerce-checkout #payment label{color:var(--uba-text)!important;}

/* ---------- My Account navigation ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;}
.woocommerce-account .woocommerce-MyAccount-navigation li{
  border:1px solid var(--uba-line);border-radius:10px;margin-bottom:8px;background:var(--uba-panel);
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active{background:rgba(30,155,255,.12);border-color:rgba(30,155,255,.3);}
.woocommerce-account .woocommerce-MyAccount-navigation a{color:var(--uba-text)!important;display:block;padding:12px 16px;}

/* ---------- notices ---------- */
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews,.woocommerce-error{
  background:var(--uba-panel)!important;color:var(--uba-text)!important;
  border-top:3px solid var(--uba-accent)!important;border-radius:10px;
}
.woocommerce-error{border-top-color:#ff6b6b!important;}
.woocommerce-message::before,.woocommerce-info::before{color:var(--uba-accent)!important;}
.woocommerce-message a.button,.woocommerce-info a.button{background:rgba(255,255,255,.1)!important;}

/* ---------- My Account: addresses & sub-columns (were rendering light) ---------- */
.woocommerce-account .woocommerce-Addresses,
.woocommerce-account .u-columns,
.woocommerce-account .col2-set{background:transparent!important;}
.woocommerce-account .woocommerce-Address,
.woocommerce-account .u-column1,
.woocommerce-account .u-column2,
.woocommerce-account .col2-set .col-1,
.woocommerce-account .col2-set .col-2{
  background:rgba(255,255,255,.02)!important;border:1px solid var(--uba-line)!important;
  border-radius:14px!important;padding:20px!important;color:var(--uba-text)!important;
}
.woocommerce-account .woocommerce-Address-title h3,
.woocommerce-account .woocommerce-Address-title{color:var(--uba-text)!important;background:transparent!important;border:0!important;}
.woocommerce-account address{color:var(--uba-muted)!important;font-style:normal;background:transparent!important;border:0!important;padding:0!important;}
.woocommerce-account .woocommerce-Address-title a.edit{color:var(--uba-accent)!important;}
