/* aego.pl — Zamówienie (WooCommerce checkout)
 * Ładowany na: is_checkout()
 *
 * Celuje w NATYWNY markup WooCommerce (#customer_details, #order_review,
 * #payment, p.form-row), żeby działać z bramkami płatności po ich podpięciu.
 * Układ wzorowany na titanroll.pl: hero + 2 kolumny, podsumowanie sticky.
 */

/* ===== RESET KADENCE ===== */
body.woocommerce-checkout .entry-content-wrap { padding: 0 !important; }
body.woocommerce-checkout article.single-entry { box-shadow: none !important; }
body.woocommerce-checkout .entry-content { max-width: none !important; }
body.woocommerce-checkout .kadence-woo-checkout-form-wrap,
body.woocommerce-checkout .kadence-woo-checkout-wrap { display: contents !important; }
body.woocommerce-checkout .entry-hero,
body.woocommerce-checkout .kadence-page-title-wrap,
body.woocommerce-checkout h1.entry-title,
body.woocommerce-checkout .page-title { display: none !important; }

/* ===== RESET FLOAT-LAYOUTU WC ===== */
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout .col2-set,
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
  width: 100% !important;
  float: none !important;
}

/* ===== UKŁAD 2-KOLUMNOWY ===== */
.aego-checkout__layout {
  display: grid;
  grid-template-columns: 1fr 440px;
  gap: 40px;
  align-items: start;
  max-width: var(--aego-max);
  margin: 0 auto;
  padding: 40px 24px 80px;
}
.aego-checkout__main { min-width: 0; }

/* ===== KARTA Z DANYMI ===== */
.aego-checkout__card {
  background: var(--aego-surface);
  border: 1px solid var(--aego-line);
  border-radius: var(--aego-r-lg);
  padding: 28px 30px;
}
.aego-checkout__card-title {
  font-size: 1.1rem;
  margin: 0 0 8px;
}
.aego-checkout__card-hint {
  font-size: .88rem;
  color: var(--aego-ink-2);
  margin: 0 0 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--aego-line);
}

/* WC wstawia własne nagłówki sekcji — chowamy, mamy swój */
.aego-checkout .woocommerce-billing-fields > h3,
.aego-checkout .woocommerce-shipping-fields { display: none; }

/* ===== POLA FORMULARZA ===== */
.aego-checkout p.form-row {
  margin: 0 0 18px;
  display: flex;
  flex-direction: column;
}
.aego-checkout .form-row-first,
.aego-checkout .form-row-last {
  display: inline-flex;
  width: calc(50% - 8px);
  vertical-align: top;
}
.aego-checkout .form-row-first { margin-right: 16px; }

.aego-checkout label {
  font-size: .82rem;
  font-weight: 600;
  color: var(--aego-ink-2);
  margin-bottom: 7px;
}
.aego-checkout label .required { color: var(--aego-cta); text-decoration: none; border: 0; }
.aego-checkout .optional { color: var(--aego-ink-2); font-weight: 400; }

.aego-checkout input.input-text,
.aego-checkout textarea,
.aego-checkout select {
  width: 100%;
  height: 48px;
  border: 1px solid var(--aego-line);
  border-radius: var(--aego-r);
  padding: 0 15px;
  font-size: .95rem;
  color: var(--aego-ink);
  background: #fff;
  outline: none;
  font-family: inherit;
  transition: border-color .15s, box-shadow .15s;
}
.aego-checkout textarea { height: auto; min-height: 90px; padding: 12px 15px; resize: vertical; }
.aego-checkout input.input-text:focus,
.aego-checkout textarea:focus,
.aego-checkout select:focus {
  border-color: var(--aego-navy);
  box-shadow: 0 0 0 3px rgba(15, 36, 56, .08);
}
.aego-checkout .woocommerce-invalid input.input-text { border-color: #b3321a; }

/* ===== PASEK ZAUFANIA POD FORMULARZEM ===== */
.aego-checkout__reassure {
  display: grid;
  gap: 18px;
  margin-top: 24px;
  padding: 22px 26px;
  background: var(--aego-surface-2);
  border-radius: var(--aego-r-lg);
}
.aego-checkout__reassure strong { display: block; font-size: .92rem; margin-bottom: 3px; }
.aego-checkout__reassure span { font-size: .85rem; color: var(--aego-ink-2); }

/* ===== PRAWA KOLUMNA: PODSUMOWANIE ===== */
.aego-checkout__aside { position: sticky; top: 24px; }
.aego-checkout__review {
  background: #fff;
  border: 1px solid var(--aego-line);
  border-radius: var(--aego-r-lg);
  box-shadow: var(--aego-shadow);
  overflow: hidden;
}
#order_review_heading {
  font-size: 1rem !important;
  font-weight: 700;
  margin: 0 !important;
  padding: 20px 24px !important;
  border-bottom: 1px solid var(--aego-line);
}

/* Tabela pozycji */
.woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; }
.woocommerce-checkout-review-order-table thead th {
  font-size: .68rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .07em;
  color: var(--aego-ink-2);
  text-align: left;
  padding: 16px 24px 10px;
}
.woocommerce-checkout-review-order-table thead th.product-total { text-align: right; }
.woocommerce-checkout-review-order-table .cart_item td {
  padding: 14px 24px;
  font-size: .9rem;
  color: var(--aego-ink-2);
  border-bottom: 1px solid var(--aego-line);
  vertical-align: top;
}
.woocommerce-checkout-review-order-table .cart_item td.product-name {
  font-weight: 600;
  color: var(--aego-ink);
  line-height: 1.4;
}
.woocommerce-checkout-review-order-table .cart_item td.product-total {
  text-align: right;
  font-weight: 700;
  white-space: nowrap;
  color: var(--aego-ink);
}
.woocommerce-checkout-review-order-table .product-quantity { color: var(--aego-ink-2); font-weight: 400; }

/* Sumy */
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout-review-order-table tfoot td {
  padding: 12px 24px;
  font-size: .92rem;
  border-bottom: 1px solid var(--aego-line);
}
.woocommerce-checkout-review-order-table tfoot th { font-weight: 400; color: var(--aego-ink-2); text-align: left; }
.woocommerce-checkout-review-order-table tfoot td { text-align: right; font-weight: 700; color: var(--aego-ink); }
.woocommerce-checkout-review-order-table tfoot tr.order-total th,
.woocommerce-checkout-review-order-table tfoot tr.order-total td {
  border-top: 2px solid var(--aego-navy);
  border-bottom: none;
  padding-top: 16px;
  padding-bottom: 16px;
}
.woocommerce-checkout-review-order-table tfoot tr.order-total th { font-weight: 700; color: var(--aego-ink); }
.woocommerce-checkout-review-order-table tfoot tr.order-total td { font-size: 1.4rem; letter-spacing: -.02em; }

/* ===== PŁATNOŚCI ===== */
#payment {
  background: var(--aego-surface-2);
  border-top: 1px solid var(--aego-line);
}
#payment ul.payment_methods {
  list-style: none;
  margin: 0;
  padding: 18px 24px 6px;
  border: none;
}
#payment ul.payment_methods li {
  margin-bottom: 8px;
  padding: 0;
  background: #fff;
  border: 1px solid var(--aego-line);
  border-radius: var(--aego-r);
  overflow: hidden;
}
#payment ul.payment_methods li > label {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  font-size: .93rem;
  font-weight: 600;
  color: var(--aego-ink);
  cursor: pointer;
  margin: 0;
}
#payment ul.payment_methods li input[type="radio"] {
  width: auto; height: auto;
  accent-color: var(--aego-cta);
}
#payment ul.payment_methods li img { margin-left: auto; max-height: 26px; }
#payment .payment_box {
  background: var(--aego-surface-2);
  border-top: 1px solid var(--aego-line);
  margin: 0;
  padding: 14px 16px;
  font-size: .84rem;
  color: var(--aego-ink-2);
  line-height: 1.5;
}
#payment .payment_box::before { display: none; }

/* ===== ZGODY ===== */
.aego-consent {
  font-size: .86rem;
  padding: 0;
  margin: 0 0 10px !important;
  line-height: 1.35;
}
.aego-consent label {
  display: flex;
  gap: 11px;
  align-items: flex-start;
  margin: 0;
  font-weight: 400;
  color: var(--aego-ink);
  cursor: pointer;
  font-size: .86rem;
}
.aego-consent input {
  width: auto !important;
  height: auto !important;
  margin-top: 3px;
  flex: none;
  accent-color: var(--aego-cta);
}
.aego-consent a { color: var(--aego-cta); font-weight: 600; text-decoration: underline; }

/* ===== PRZYCISK ZAMÓWIENIA ===== */
#payment .place-order { padding: 8px 24px 24px; margin: 0; }
#payment #place_order {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 54px;
  margin: 6px 0 0;
  background: var(--aego-cta) !important;
  color: #fff !important;
  font-size: 1.02rem !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: var(--aego-r) !important;
  cursor: pointer;
  box-shadow: none !important;
  transition: background .12s;
}
#payment #place_order:hover { background: var(--aego-cta-hover) !important; }

/* ===== KUPON / LOGOWANIE ===== */
.woocommerce-form-login-toggle,
.woocommerce-form-coupon-toggle {
  max-width: var(--aego-max);
  margin: 0 auto;
  padding: 24px 24px 0;
}
.woocommerce-form-login-toggle .woocommerce-info,
.woocommerce-form-coupon-toggle .woocommerce-info {
  background: var(--aego-navy-soft);
  border: 1px solid #d4e0ef;
  border-radius: var(--aego-r);
  padding: 12px 16px;
  font-size: .88rem;
  color: var(--aego-navy);
  list-style: none;
}
.woocommerce-form-login-toggle .woocommerce-info a,
.woocommerce-form-coupon-toggle .woocommerce-info a { color: var(--aego-cta); font-weight: 600; }

.woocommerce-form.login,
.woocommerce-form-coupon {
  max-width: var(--aego-max);
  margin: 16px auto 0;
  padding: 22px 24px;
  background: #fff;
  border: 1px solid var(--aego-line);
  border-radius: var(--aego-r-lg);
}

/* ===== KOMUNIKATY ===== */
.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
  max-width: var(--aego-max);
  margin: 16px auto;
  padding: 14px 18px;
  border-radius: var(--aego-r);
  font-size: .9rem;
  list-style: none;
}
.woocommerce-error { background: #fdecea; border: 1px solid #f5c6c0; color: #8e2a17; }
.woocommerce-message { background: #e3f5e9; border: 1px solid #b7e2c6; color: var(--aego-green-hover); }

@media (max-width: 980px) {
  .aego-checkout__layout {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 28px 20px 64px;
  }

  /* Na telefonie rozdzielamy podsumowanie od płatności bez zmiany natywnego
     markupu WooCommerce: podsumowanie → dane → płatność → informacje. */
  .aego-checkout__main,
  .aego-checkout__aside,
  .aego-checkout__review,
  .aego-checkout #order_review {
    display: contents;
  }

  .aego-checkout #order_review_heading,
  .aego-checkout .woocommerce-checkout-review-order-table { order: 1; }
  .aego-checkout__card { order: 2; margin-top: 28px; padding: 22px 20px; }
  .aego-checkout #payment { order: 3; margin-top: 28px; }
  .aego-checkout__reassure { order: 4; }

  .aego-checkout #order_review_heading {
    background: #fff;
    border: 1px solid var(--aego-line);
    border-bottom: 0;
    border-radius: var(--aego-r-lg) var(--aego-r-lg) 0 0;
  }
  .aego-checkout .woocommerce-checkout-review-order-table {
    background: #fff;
    border: 1px solid var(--aego-line);
    border-top: 0;
    border-radius: 0 0 var(--aego-r-lg) var(--aego-r-lg);
    box-shadow: var(--aego-shadow);
  }
  .aego-checkout #payment {
    border: 1px solid var(--aego-line);
    border-radius: var(--aego-r-lg);
    overflow: hidden;
  }

  .aego-checkout .form-row-first,
  .aego-checkout .form-row-last { width: 100%; margin-right: 0; }
}
