/* =========================================================
   WOOCOMMERCE — Theme sync (Atonika / Domestika style)
   Checkout, cart and account pages keep the theme design.
   ========================================================= */

/* ---------- Layout ---------- */
.woocommerce .container,
.woocommerce-page .container { max-width: var(--container); margin-inline: auto; padding-inline: var(--gutter); }

/* WooCommerce pages: release the 760px cap from pages.css .entry-content */
.woocommerce-page .entry-content,
.woocommerce .entry-content {
  max-width: 100%;
}

.woocommerce h2,
.woocommerce-page h2,
.woocommerce h3,
.woocommerce-page h3 { color: var(--color-ink); }

/* Checkout: two-column grid (details left, sticky summary right) */
.atonika-checkout__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 40px;
  align-items: start;
}
.atonika-checkout__summary {
  position: sticky;
  top: 24px;
}
.atonika-checkout__details .col2-set::after {
  content: "";
  display: block;
  clear: both;
}
.atonika-checkout__details .col2-set .col-1,
.atonika-checkout__details .col2-set .col-2 {
  width: 100%;
  float: none;
}
@media (min-width: 701px) {
  .atonika-checkout__details .col2-set .col-1 { width: 48.5%; float: left; }
  .atonika-checkout__details .col2-set .col-2 { width: 48.5%; float: right; }
}
@media (max-width: 900px) {
  .atonika-checkout__layout { grid-template-columns: 1fr; }
  .atonika-checkout__summary { position: static; }
}

/* Order summary card */
.atonika-summary-card {
  border-radius: var(--radius-lg);
  background: #fff;
  box-shadow: var(--shadow-md);
  overflow: hidden;
}
.atonika-checkout__summary #order_review_heading {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 14px;
}

/* ---------- Buttons ---------- */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
  background: var(--color-accent);
  color: #fff;
  font-weight: 600;
  font-size: 16px;
  height: 48px;
  padding: 0 24px;
  border-radius: var(--radius-sm);
  border: 0;
  line-height: 48px;
  cursor: pointer;
  transition: background-color .15s ease, transform .1s ease;
}
.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover {
  background: var(--color-accent-dark);
  color: #fff;
}
.woocommerce button.button:disabled,
.woocommerce button.button[disabled] { background: var(--color-ink-3); color: #fff; }

/* ---------- Forms ---------- */
.woocommerce form .form-row label { font-weight: 500; color: var(--color-ink); margin-bottom: 6px; }
.woocommerce form .form-row label .required { color: var(--color-brand); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row .select2-container .select2-selection--single,
.woocommerce .woocommerce-billing-fields .select2-container .select2-selection--single {
  height: 48px;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-md);
  padding: 12px 14px;
  font-size: 15px;
  font-family: var(--font-sans);
  color: var(--color-ink);
  background: #fff;
  box-shadow: none;
}
.woocommerce form .form-row textarea { height: auto; min-height: 110px; resize: none; }
.woocommerce form .form-row .select2-container .select2-selection--single {
  display: flex;
  align-items: center;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--color-brand);
  outline: none;
  box-shadow: 0 0 0 3px rgba(242, 9, 92, .12);
}
.woocommerce form .form-row { margin-bottom: 18px; }

/* ---------- Order review (checkout summary) ---------- */
.woocommerce-checkout #order_review_heading { font-size: 20px; font-weight: 600; }
.woocommerce table.shop_table {
  border: 0;
  border-radius: var(--radius-lg);
  background: #fff;
  box-shadow: var(--shadow-md);
  margin: 0;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { border-bottom: 1px solid var(--color-line); padding: 12px 16px; }
.woocommerce table.shop_table tfoot th,
.woocommerce table.shop_table tfoot td { border-bottom: 0; }
.woocommerce table.shop_table tfoot tr:last-child th,
.woocommerce table.shop_table tfoot tr:last-child td { border-bottom: 0; }
.woocommerce table.shop_table .woocommerce-Price-amount { font-weight: 600; color: var(--color-ink); }
.woocommerce table.shop_table .order-total .woocommerce-Price-amount,
.woocommerce table.shop_table .cart-subtotal .woocommerce-Price-amount { color: var(--color-brand); }
.woocommerce table.shop_table tbody tr.cart_item .product-thumbnail img,
.woocommerce table.shop_table .product-thumbnail img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: var(--radius-sm);
}
.woocommerce table.shop_table thead .product-thumbnail { width: 56px; }

.woocommerce #payment {
  background: #fff;
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-md);
  padding: 24px;
  margin-top: 20px;
}
.woocommerce #payment ul.payment_methods {
  border-bottom: 1px solid var(--color-line);
  padding-bottom: 18px;
}
.woocommerce #payment div.payment_box {
  background: var(--color-bg-soft);
  border-radius: var(--radius-md);
  color: var(--color-ink-2);
}
.woocommerce #payment div.payment_box::before { display: none; }

/* ---------- Cart ---------- */
.woocommerce-cart .cart-collaterals .cart_totals table.shop_table { width: 100%; }
.woocommerce-cart .cart-collaterals .cart_totals h2 { font-size: 20px; }
.woocommerce-cart a.checkout-button.button.alt,
.woocommerce-cart button.checkout-button.button.alt { width: 100%; text-align: center; }

/* Place order */
.woocommerce #payment .place-order #place_order {
  width: 100%;
  margin-top: 8px;
}
.woocommerce #payment ul.payment_methods li input[type="radio"] {
  accent-color: var(--color-accent);
}

/* ---------- Messages ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-top: 3px solid var(--color-brand);
  border-radius: var(--radius-md);
  background: var(--color-brand-soft);
  color: var(--color-ink);
  box-shadow: none;
}
.woocommerce-info {
  border-top-color: var(--color-accent);
  background: var(--color-accent-soft);
}
.woocommerce-error {
  border-top-color: var(--color-red-600);
  background: #fee2e2;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { color: var(--color-brand); }
.woocommerce-info::before { color: var(--color-accent); }
.woocommerce-error::before { color: var(--color-red-600); }
.woocommerce-message a.button { margin-top: -4px; }

/* ---------- Account ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation ul { border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); overflow: hidden; }
.woocommerce-account .woocommerce-MyAccount-navigation li a { color: var(--color-ink); }
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active { background: var(--color-brand); color: #fff; }

/* ---------- Misc ---------- */
.woocommerce .woocommerce-checkout-review-order .product-name a { color: var(--color-ink); }
.woocommerce form.login, .woocommerce form.register {
  border: 1px solid var(--color-line);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-sm);
  padding: 24px;
}
.woocommerce .qty { border: 1px solid var(--color-line); border-radius: var(--radius-sm); padding: 8px; }
.woocommerce .remove { color: var(--color-brand) !important; }


/* =========================================================
   ATONIKA PALETTE OVERRIDE — navy / gold / cream
   Remaps the legacy Domestika tokens (pink/teal) to the
   theme palette defined in base.css (--atk-*).
   ========================================================= */

.woocommerce,
.woocommerce-page {
  background: var(--atk-cream);
  color: var(--atk-ink);
}

.woocommerce-page .site-main,
.woocommerce .site-main {
  padding-block: 48px 72px;
}

/* ---------- Page heading ---------- */
.woocommerce-page .entry-title,
.woocommerce .entry-title,
.woocommerce-page h1.page-title {
  color: var(--atk-navy);
  font-weight: 700;
  font-size: 34px;
  letter-spacing: -0.01em;
  margin: 0 0 28px;
}

.woocommerce h2,
.woocommerce-page h2,
.woocommerce h3,
.woocommerce-page h3,
.woocommerce-page #order_review_heading,
.woocommerce .woocommerce-billing-fields h3,
.woocommerce .woocommerce-shipping-fields h3,
.woocommerce .woocommerce-additional-fields h3 {
  color: var(--atk-navy);
  font-weight: 700;
}

/* ---------- Buttons ---------- */
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce button.button.alt,
.woocommerce a.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce #payment .place-order #place_order {
  background: var(--atk-navy);
  color: #fff;
  border-radius: 10px;
  font-weight: 600;
}

.woocommerce button.button:hover,
.woocommerce a.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce button.button.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit.alt:hover,
.woocommerce #payment .place-order #place_order:hover {
  background: var(--atk-navy-2);
  color: #fff;
}

.woocommerce a.button.wc-backward,
.woocommerce a.button.wc-forward:not(.checkout) {
  background: transparent;
  color: var(--atk-navy);
  border: 1.5px solid var(--atk-gold-dark);
}

.woocommerce a.button.wc-backward:hover,
.woocommerce a.button.wc-forward:not(.checkout):hover {
  background: var(--atk-gold);
  color: var(--atk-navy);
}

.woocommerce button.button:disabled,
.woocommerce button.button[disabled] {
  background: #9ca3af;
  color: #fff;
}

/* ---------- Forms ---------- */
.woocommerce form .form-row label {
  color: var(--atk-navy);
  font-weight: 600;
  font-size: 14px;
}

.woocommerce form .form-row label .required {
  color: var(--atk-gold-dark);
  text-decoration: none;
}

.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .form-row .select2-container .select2-selection--single,
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea,
.woocommerce-page form .form-row select {
  background: #fff;
  border: 1px solid var(--atk-line);
  border-radius: 10px;
  color: var(--atk-ink);
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--atk-gold-dark);
  box-shadow: 0 0 0 2px rgba(201,165,123,.22);
  outline: none;
}

/* ---------- Cards / summary ---------- */
.atonika-summary-card,
.woocommerce .cart-collaterals .cart_totals,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon {
  background: #fff;
  border: 1px solid var(--atk-line);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(27,42,94,.08);
}

.atonika-checkout__summary #order_review_heading {
  color: var(--atk-navy);
  font-size: 20px;
  font-weight: 700;
}

/* ---------- Tables ---------- */
.woocommerce table.shop_table,
.woocommerce table.shop_table th,
.woocommerce table.shop_table td {
  border-color: var(--atk-line);
}

.woocommerce table.shop_table thead th,
.woocommerce table.shop_table th {
  color: var(--atk-navy);
  font-weight: 700;
}

.woocommerce table.shop_table .order-total .amount,
.woocommerce .cart_totals .order-total .amount {
  color: var(--atk-navy);
  font-weight: 700;
  font-size: 20px;
}

.woocommerce .woocommerce-Price-amount {
  color: var(--atk-navy);
  font-weight: 600;
}

.woocommerce .woocommerce-checkout-review-order .product-name a,
.woocommerce .woocommerce-checkout-review-order .product-name {
  color: var(--atk-ink);
}

/* ---------- Payment box ---------- */
.woocommerce #payment {
  background: var(--atk-card);
  border-radius: 14px;
}

.woocommerce #payment div.payment_box {
  background: #fff;
  border: 1px solid var(--atk-line);
  border-radius: 10px;
  color: var(--atk-ink-soft);
}

.woocommerce #payment ul.payment_methods li input[type="radio"] {
  accent-color: var(--atk-navy);
}

.woocommerce #payment ul.payment_methods {
  border-bottom-color: var(--atk-line);
}

/* ---------- Notices ---------- */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
  border-top-color: var(--atk-gold-dark);
  background: #fff;
  border-radius: 10px;
  color: var(--atk-ink);
}

.woocommerce-message::before,
.woocommerce-info::before {
  color: var(--atk-gold-dark);
}

.woocommerce-error {
  border-top-color: #c0392b;
}

.woocommerce-message a.button,
.woocommerce-info a.button {
  background: var(--atk-navy);
  color: #fff;
}

/* ---------- Links ---------- */
.woocommerce a:not(.button),
.woocommerce-page a:not(.button) {
  color: var(--atk-navy);
}

.woocommerce a:not(.button):hover,
.woocommerce-page a:not(.button):hover {
  color: var(--atk-gold-dark);
}

.woocommerce .remove {
  color: var(--atk-navy) !important;
}

.woocommerce .remove:hover {
  background: var(--atk-navy) !important;
  color: #fff !important;
}

/* ---------- My account nav ---------- */
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  color: var(--atk-navy);
  border-radius: 10px;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active {
  background: var(--atk-navy);
  color: #fff;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
  background: rgba(27,42,94,.08);
}

/* ---------- Header / menu on shop pages ---------- */
body.woocommerce-page .alert-bar,
body.woocommerce-checkout .alert-bar,
body.woocommerce-cart .alert-bar,
body.woocommerce-account .alert-bar {
  display: none;
}

body.woocommerce-page .site-header,
body.woocommerce-checkout .site-header,
body.woocommerce-cart .site-header,
body.woocommerce-account .site-header {
  background: #fff;
  border-bottom: 1px solid var(--atk-line);
  color: var(--atk-navy);
}

body.woocommerce-page .site-header .brand,
body.woocommerce-page .site-header .brand::first-letter,
body.woocommerce-page .site-header .brand span,
body.woocommerce-checkout .site-header .brand,
body.woocommerce-checkout .site-header .brand span,
body.woocommerce-cart .site-header .brand,
body.woocommerce-cart .site-header .brand span {
  color: var(--atk-navy) !important;
}

body.woocommerce-page .site-header .site-nav a,
body.woocommerce-page .site-header .site-nav__list--desktop a,
body.woocommerce-checkout .site-header .site-nav__list--desktop a,
body.woocommerce-cart .site-header .site-nav__list--desktop a {
  color: #4b5563;
}

body.woocommerce-page .site-header .site-nav a:hover,
body.woocommerce-page .site-header .site-nav__list--desktop a:hover {
  background: rgba(27,42,94,.06);
  color: var(--atk-navy);
}

body.woocommerce-page .site-header .nav-plus__badge,
body.woocommerce-checkout .site-header .nav-plus__badge,
body.woocommerce-cart .site-header .nav-plus__badge {
  background: var(--atk-gold);
  color: var(--atk-navy);
  box-shadow: none;
}

body.woocommerce-page .site-header .btn--brand,
body.woocommerce-checkout .site-header .btn--brand,
body.woocommerce-cart .site-header .btn--brand,
body.woocommerce-account .site-header .btn--brand {
  background: var(--atk-gold);
  color: var(--atk-navy);
}

body.woocommerce-page .site-header .btn--brand:hover {
  background: var(--atk-gold-dark);
  color: var(--atk-navy);
}

body.woocommerce-page .site-header .site-actions .action-icon,
body.woocommerce-page .site-header .menu-toggle,
body.woocommerce-checkout .site-header .site-actions .action-icon,
body.woocommerce-cart .site-header .site-actions .action-icon {
  color: var(--atk-navy);
}

body.woocommerce-page .site-header .site-search .search-field {
  background: #fff;
  border-color: var(--atk-line);
  color: var(--atk-ink);
}

body.woocommerce-page .site-header .site-search .search-field:focus {
  border-color: var(--atk-gold-dark);
  box-shadow: 0 0 0 2px rgba(201,165,123,.22);
}

/* =========================================================
   HEADER FIX — logo gigante en vistas WooCommerce
   El isotipo (1085x1085) se renderizaba a 636px y rompia
   el header (brand 660x652, y:-294). Se fuerza el tamano.
   ========================================================= */
.site-header .brand,
body.woocommerce-page .site-header .brand,
body.woocommerce-checkout .site-header .brand,
body.woocommerce-cart .site-header .brand {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  height: auto;
  max-height: 44px;
  overflow: visible;
  line-height: 1;
}

.site-header .brand__logo,
body.woocommerce-page .site-header .brand__logo,
body.woocommerce-checkout .site-header .brand__logo,
body.woocommerce-cart .site-header .brand__logo,
body.woocommerce-account .site-header .brand__logo {
  height: 32px !important;
  width: 32px !important;
  max-height: 32px !important;
  max-width: 32px !important;
  min-width: 0 !important;
  object-fit: contain;
  flex: 0 0 32px;
  display: block;
}

.site-header .brand span {
  white-space: nowrap;
  line-height: 1.1;
}

.site-header__bar {
  min-width: 0;
  overflow: visible;
  flex-wrap: nowrap;
}

.site-header .site-nav--desktop { min-width: 0; flex-shrink: 0; }
.site-header .site-nav__list--desktop { flex-wrap: nowrap; }
.site-header .site-nav__list--desktop > li { flex-shrink: 0; }
.site-header .site-nav__list--desktop a { white-space: nowrap; }

.site-header .nav-plus { position: relative; display: inline-flex; align-items: center; white-space: nowrap; }
.site-header .nav-plus__badge { position: static; flex-shrink: 0; }

body.woocommerce-page,
body.woocommerce-checkout,
body.woocommerce-cart { overflow-x: hidden; }
