/* ==========================================================================
   Adlerline — WordPress + WooCommerce Overrides
   Loaded after main.css to neutralize default WP/WC styles where needed.
   ========================================================================== */

/* Admin bar offset */
.admin-bar .site-header { top: 32px; }
.admin-bar .sidebar,
.admin-bar .summary { top: calc(var(--header-h) + var(--space-6) + 32px); }

@media (max-width: 782px) {
  .admin-bar .site-header { top: 46px; }
  .admin-bar .sidebar,
  .admin-bar .summary { top: calc(var(--header-h) + var(--space-6) + 46px); }
}

/* WooCommerce notices — re-style with our tokens */
.woocommerce-notices-wrapper { margin-bottom: var(--space-5); }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  padding: var(--space-4) var(--space-5);
  border-radius: var(--radius-md);
  font-size: 14px;
  border: 1px solid var(--color-border);
  background: var(--color-surface);
  list-style: none;
  margin: 0 0 var(--space-4);
  display: flex;
  align-items: center;
  gap: var(--space-3);
}
.woocommerce-message { border-left: 3px solid #16a34a; }
.woocommerce-info { border-left: 3px solid var(--color-red); }
.woocommerce-error { border-left: 3px solid #dc2626; color: #991b1b; }
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { display: none; }

/* WooCommerce default form styling -> match our system */
.woocommerce form .form-row {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0;
  padding: 0;
}
.woocommerce form .form-row label {
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text);
}
.woocommerce form .form-row .required { color: var(--color-red); text-decoration: none; }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce form .select2-container--default .select2-selection--single {
  height: 48px;
  padding: 0 16px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  font-size: 15px;
  color: var(--color-text);
  width: 100%;
  font-family: var(--font-sans);
  line-height: 46px;
}
.woocommerce form .form-row textarea { height: auto; padding: 12px 16px; line-height: 1.5; }
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: none;
  border-color: var(--color-red);
  box-shadow: 0 0 0 3px rgba(225,27,35,0.12);
}
.select2-container--default .select2-selection--single .select2-selection__rendered { line-height: 46px; padding: 0; }
.select2-container--default .select2-selection--single .select2-selection__arrow { height: 46px; }

/* WC button defaults -> use our .btn */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce #place_order,
.woocommerce-page #place_order,
.wc-block-components-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-2);
  padding: 14px 26px;
  font-size: 15px;
  font-weight: 600;
  border-radius: var(--radius-md);
  border: 1px solid transparent;
  background: var(--color-red);
  color: #fff;
  text-shadow: none;
  transition: background 120ms ease;
  font-family: var(--font-sans);
  line-height: 1;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce #place_order:hover { background: var(--color-red-hover); color: #fff; }

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce a.button.checkout-button {
  background: var(--color-red);
  color: #fff;
}

/* Quantity input on cart/single-product */
.woocommerce .quantity .qty {
  width: 80px;
  height: 44px;
  text-align: center;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  font-weight: 600;
}

/* Pagination — WC */
.woocommerce nav.woocommerce-pagination ul {
  display: flex;
  justify-content: center;
  gap: var(--space-2);
  margin: var(--space-10) 0 0;
  border: 0;
  padding: 0;
}
.woocommerce nav.woocommerce-pagination ul li {
  border: 0;
  margin: 0;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  width: 40px; height: 40px;
  display: inline-grid; place-items: center;
  border-radius: var(--radius-md);
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  background: var(--color-surface);
  border: 1px solid var(--color-border);
  padding: 0;
  line-height: 1;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--color-red);
  color: #fff;
  border-color: var(--color-red);
}

/* Cart/Checkout coupon row */
.woocommerce-form-coupon-toggle { margin-bottom: var(--space-4); }

/* WC catalog ordering form -> our toolbar select look */
.woocommerce-ordering { margin: 0; }
.woocommerce-ordering select.orderby {
  height: 44px;
  padding: 0 36px 0 14px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%235C6570' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>") no-repeat right 14px center;
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-family: var(--font-sans);
}
.woocommerce-ordering select.orderby:focus {
  outline: none;
  border-color: var(--color-red);
  box-shadow: 0 0 0 3px rgba(225,27,35,0.12);
}

/* Catalog .product-grid items rendered by WC -> ensure they fill the cell properly */
.product-grid > .product { all: unset; }
ul.products.product-grid { list-style: none; padding: 0; margin: 0; }

/* ==========================================================================
   Reviews tab — WC default form re-styling
   ========================================================================== */
.tabs__panel #reviews,
.tabs__panel.woocommerce-Reviews,
#tab-reviews {
  max-width: 720px;
}
#reviews #review_form_wrapper {
  background: var(--color-surface);
  border-radius: var(--radius-lg);
  padding: var(--space-8);
  box-shadow: var(--shadow-sm);
  margin-top: var(--space-5);
}
#reviews #reply-title,
#reviews #review_form_wrapper h2,
#reviews #review_form_wrapper h3 {
  font-size: 20px;
  margin-bottom: var(--space-2);
}
#reviews .comment-form-rating label,
#reviews .comment-form-comment label,
#reviews .comment-form-author label,
#reviews .comment-form-email label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: var(--color-text);
  margin-bottom: 6px;
}
#reviews .comment-form { display: flex; flex-direction: column; gap: var(--space-4); }
#reviews .comment-notes { font-size: 13px; color: var(--color-text-muted); }
#reviews .stars { display: inline-flex; gap: 4px; margin-top: 4px; font-size: 22px; }
#reviews .stars a { color: var(--color-text-muted); text-decoration: none; transition: color 100ms; }
#reviews .stars a:hover,
#reviews .stars.selected a.active,
#reviews .stars.selected a.active ~ a { color: var(--color-red); }
#reviews .stars.selected a:not(.active) { color: var(--color-red); }
#reviews .comment-form-comment textarea,
#reviews .comment-form input[type="text"],
#reviews .comment-form input[type="email"] {
  width: 100%;
  height: 48px;
  padding: 0 16px;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  font-size: 15px;
  color: var(--color-text);
  font-family: var(--font-sans);
}
#reviews .comment-form-comment textarea {
  height: auto;
  min-height: 140px;
  padding: 12px 16px;
  line-height: 1.5;
  resize: vertical;
}
#reviews .comment-form input:focus,
#reviews .comment-form textarea:focus {
  outline: none;
  border-color: var(--color-red);
  box-shadow: 0 0 0 3px rgba(225,27,35,0.12);
}
#reviews .form-submit {
  margin: 0;
}
#reviews .form-submit input[type="submit"],
#reviews #submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 14px 30px;
  font-size: 15px;
  font-weight: 600;
  border-radius: var(--radius-md);
  background: var(--color-red);
  color: #fff;
  border: 0;
  cursor: pointer;
  transition: background 120ms ease;
}
#reviews .form-submit input[type="submit"]:hover,
#reviews #submit:hover { background: var(--color-red-hover); }

#reviews .commentlist {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-6);
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}
#reviews .commentlist li {
  background: var(--color-surface);
  border-radius: var(--radius-md);
  padding: var(--space-5);
  box-shadow: var(--shadow-sm);
}
#reviews .star-rating { color: var(--color-red); }

/* Existing reviews placeholder when none */
.woocommerce-noreviews {
  padding: var(--space-5);
  background: var(--color-surface);
  border-radius: var(--radius-md);
  color: var(--color-text-muted);
  border: 1px dashed var(--color-border);
}

/* WC Comment cookies consent */
.comment-form-cookies-consent {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: 13px;
  color: var(--color-text-muted);
}
.comment-form-cookies-consent input[type="checkbox"] {
  width: 16px; height: 16px;
  accent-color: var(--color-red);
}

/* Select2 multilingual */
.select2-dropdown { border-color: var(--color-border); border-radius: var(--radius-md); }
.select2-results__option--highlighted { background: var(--color-red) !important; }
