.heatdecor-confirmation {
  --confirmation-green: #14834b;
  --confirmation-border: #e3e9e5;
  --confirmation-muted: #627068;
  width: 100%;
  max-width: none;
  margin: 16px auto 72px;
  color: #202c25;
  font-size: 15px;
  line-height: 1.6;
}
.heatdecor-confirmation .heatdecor-confirmation__hero {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding: 36px;
  border: 1px solid #d6e8dd;
  border-radius: 16px;
  background: #f2f8f4;
}
.heatdecor-confirmation__icon {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  border-radius: 50%;
  background: #dcefe3;
  color: var(--confirmation-green);
}
.heatdecor-confirmation__intro { flex: 1; min-width: 0; }
.heatdecor-confirmation .heatdecor-confirmation__eyebrow {
  margin: 0 0 8px;
  color: var(--confirmation-green);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.heatdecor-confirmation .heatdecor-confirmation__hero h1 {
  margin: 0 0 12px;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.025em;
}
.heatdecor-confirmation .heatdecor-confirmation__hero p:not(.heatdecor-confirmation__eyebrow) {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  color: #415449;
  font-size: 15px;
  line-height: 1.6;
}
.heatdecor-confirmation .heatdecor-confirmation__hero .heatdecor-confirmation__hint { margin-top: 6px; }
.heatdecor-confirmation .heatdecor-confirmation__hero--failed { background: #fff8f1; border-color: #edd9c4; }
.heatdecor-confirmation__hero--failed .heatdecor-confirmation__icon { background: #fae7d4; color: #a55416; }
.heatdecor-confirmation__hero--failed .heatdecor-confirmation__eyebrow { color: #a55416; }
.heatdecor-confirmation__overview {
  display: grid;
  grid-template-columns: 1fr 1fr 1.3fr 1.2fr;
  margin: 24px 0;
  border: 1px solid var(--confirmation-border);
  border-radius: 12px;
  background: #fff;
  overflow: hidden;
}
.heatdecor-confirmation__overview > div { padding: 22px 24px; min-width: 0; }
.heatdecor-confirmation__overview > div + div { border-left: 1px solid var(--confirmation-border); }
.heatdecor-confirmation__overview dt { margin: 0 0 8px; color: var(--confirmation-muted); font-size: 12px; font-weight: 500; }
.heatdecor-confirmation__overview dd { margin: 0; font-size: 16px; font-weight: 600; overflow-wrap: anywhere; }
.heatdecor-confirmation__overview .heatdecor-confirmation__total { background: #f8faf8; }
.heatdecor-confirmation__total dd { color: var(--confirmation-green); font-size: 23px; line-height: 1.3; }
.heatdecor-confirmation__total dd small { display: block; font-size: 12px; font-weight: 400; color: var(--confirmation-muted); }
.heatdecor-confirmation__actions { display: flex; gap: 12px; flex-wrap: wrap; margin-bottom: 32px; }
.heatdecor-confirmation a.heatdecor-confirmation__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  min-height: 46px;
  padding: 11px 22px;
  border: 1px solid var(--confirmation-green);
  border-radius: 7px;
  background: var(--confirmation-green);
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
}
.heatdecor-confirmation a.heatdecor-confirmation__button--secondary { background: #fff; color: var(--confirmation-green); border-color: #cbd9d0; }
.heatdecor-confirmation a.heatdecor-confirmation__button:hover { background: #106739; border-color: #106739; color: #fff; }
.heatdecor-confirmation a:focus-visible { outline: 3px solid #14834b; outline-offset: 4px; }
.heatdecor-confirmation__payment:empty { display: none; }
.heatdecor-confirmation__payment:not(:empty) { margin-bottom: 24px; padding: 24px; border: 1px solid var(--confirmation-border); border-radius: 12px; }
.heatdecor-confirmation__details { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr); gap: 24px; align-items: start; }
.heatdecor-confirmation__details > * { min-width: 0; grid-column: 1 / -1; }
.heatdecor-confirmation__details > .woocommerce-order-details { grid-column: 1; grid-row: auto; }
.heatdecor-confirmation__details > .woocommerce-customer-details { grid-column: 2; }
.heatdecor-confirmation .woocommerce-order-details,
.heatdecor-confirmation .woocommerce-customer-details { margin: 0; padding: 26px; border: 1px solid var(--confirmation-border); border-radius: 12px; background: #fff; }
.heatdecor-confirmation h2,
.heatdecor-confirmation h3 { margin: 0 0 20px; font-size: 19px; line-height: 1.4; font-weight: 600; }
.heatdecor-confirmation table.shop_table { width: 100%; margin: 0; border: 0; border-collapse: collapse; table-layout: fixed; font-size: 14px; }
.heatdecor-confirmation table.shop_table th,
.heatdecor-confirmation table.shop_table td { border: 0; border-bottom: 1px solid #edf0ed; padding: 15px 0; vertical-align: top; overflow-wrap: anywhere; }
.heatdecor-confirmation table.shop_table tr > :last-child { width: 36%; padding-left: 16px; text-align: right; }
.heatdecor-confirmation table.shop_table thead th { padding-top: 0; color: var(--confirmation-muted); font-size: 12px; font-weight: 500; }
.heatdecor-confirmation table.shop_table a { color: #202c25; text-decoration: none; font-weight: 500; }
.heatdecor-confirmation table.shop_table a:hover { text-decoration: underline; color: var(--confirmation-green); }
.heatdecor-confirmation table.shop_table tfoot th { font-weight: 500; color: var(--confirmation-muted); }
.heatdecor-confirmation table.shop_table tfoot td { font-weight: 600; }
.heatdecor-confirmation table.shop_table tfoot tr:last-child > * { border-bottom: 0; }
.heatdecor-confirmation .wc-item-meta { padding-left: 0; margin: 8px 0 0; list-style: none; color: var(--confirmation-muted); font-size: 12px; }
.heatdecor-confirmation .wc-item-meta p { display: inline; margin: 0; }
.heatdecor-confirmation .woocommerce-customer-details .col2-set { display: block; width: 100%; }
.heatdecor-confirmation .woocommerce-customer-details .col2-set .col-1,
.heatdecor-confirmation .woocommerce-customer-details .col2-set .col-2 { float: none; width: 100%; max-width: none; padding: 0; }
.heatdecor-confirmation .woocommerce-customer-details .col2-set .col-2 { margin-top: 26px; padding-top: 24px; border-top: 1px solid var(--confirmation-border); }
.heatdecor-confirmation .woocommerce-customer-details address { width: auto; padding: 0; border: 0; border-radius: 0; font-style: normal; line-height: 1.8; overflow-wrap: anywhere; }
.heatdecor-confirmation .woocommerce-customer-details address p { margin-bottom: 0; }
.heatdecor-confirmation ul.order_details { display: flex; flex-wrap: wrap; gap: 16px; margin: 0; padding: 0; }
.heatdecor-confirmation ul.order_details li { float: none; border: 0; margin: 0; padding: 0; overflow-wrap: anywhere; }
.heatdecor-confirmation .woocommerce-bacs-bank-details { margin-top: 20px; }
.heatdecor-confirmation .woocommerce-bacs-bank-details h3 { font-size: 15px; }
@media (max-width: 900px) {
  .heatdecor-confirmation__hero { flex-wrap: wrap; }
  .heatdecor-confirmation__overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .heatdecor-confirmation__overview > div:nth-child(3) { border-left: 0; }
  .heatdecor-confirmation__overview > div:nth-child(n+3) { border-top: 1px solid var(--confirmation-border); }
  .heatdecor-confirmation__details { grid-template-columns: minmax(0, 1fr); }
  .heatdecor-confirmation__details > .woocommerce-customer-details { grid-column: 1; }
}
@media (max-width: 540px) {
  .heatdecor-confirmation { margin-top: 8px; margin-bottom: 40px; }
  .heatdecor-confirmation .heatdecor-confirmation__hero { gap: 16px; padding: 24px 20px; }
  .heatdecor-confirmation__icon { width: 48px; height: 48px; flex-basis: 48px; }
  .heatdecor-confirmation__intro { flex-basis: calc(100% - 64px); }
  .heatdecor-confirmation__overview > div { padding: 16px; }
  .heatdecor-confirmation__overview dd { font-size: 14px; }
  .heatdecor-confirmation__total dd { font-size: 20px; }
  .heatdecor-confirmation__actions { gap: 10px; }
  .heatdecor-confirmation__actions a { width: 100%; }
  .heatdecor-confirmation .woocommerce-order-details,
  .heatdecor-confirmation .woocommerce-customer-details,
  .heatdecor-confirmation__payment:not(:empty) { padding: 20px 16px; }
}
