/*
 * חלק בקוד: theme/assets/css/checkout.css
 * צ'ק-אאוט רחב ומזמין (גרסה 2): כותרת עם שלבים, טור ראשי עם 3 כרטיסים ממוספרים
 * (פרטים | תיק ומסמכים | תשלום), טור צד דביק עם סיכום, "מה קורה אחרי", הבטחות ויצירת קשר.
 * בהמשך הקובץ: עמוד תודה, עמוד תשלום להצעה (order-pay) ועמוד סימולציה של ישראכרט — ללא שינוי.
 * כל הצבעים מ-tokens.css. אין hex בקומפוננטות.
 */

/* ---------- 0. Page frame: wider canvas on checkout, no share bar ---------- */
.ls-is-checkout .ls-page__inner { max-width: 1360px; }
.ls-is-checkout .ls-share { display: none; }
.ls-page--wc { padding-block: var(--ls-space-4) var(--ls-space-12); }
.ls-page--wc .ls-checkout, .ls-page--wc .ls-account { padding-block-start: 0; }
.woocommerce-checkout .woocommerce-message .wc-forward { display: none; }

.ls-checkout { --ls-co-gap: clamp(20px, 2.4vw, 36px); max-width: 1320px; padding-block: var(--ls-space-6) var(--ls-space-16); }

/* ---------- 1. Hero: title + steps ---------- */
.ls-checkout__hero {
	display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--ls-space-6);
	padding: clamp(24px, 3vw, 40px);
	margin-block-end: var(--ls-co-gap);
	border-radius: calc(var(--ls-radius-ledger) * 1.6);
	background: var(--ls-gradient-band);
	color: var(--ls-color-band-text);
	box-shadow: var(--ls-shadow-ledger);
	position: relative; overflow: hidden;
}
.ls-checkout__hero::after { /* soft brass glow */
	content: ""; position: absolute; inset-inline-start: -10%; top: -60%; width: 55%; aspect-ratio: 1;
	background: radial-gradient(circle, color-mix(in srgb, var(--ls-color-gold-bright) 28%, transparent), transparent 65%);
	pointer-events: none;
}
.ls-checkout__hero-text { position: relative; z-index: 1; max-width: 62ch; }
.ls-checkout__eyebrow { margin: 0 0 6px; font-size: var(--ls-fs-label); letter-spacing: var(--ls-ls-label); font-weight: 700; color: var(--ls-color-brand-title); }
.ls-checkout__title { font-family: var(--ls-font-display); font-size: var(--ls-fs-display); line-height: var(--ls-lh-tight); margin: 0 0 var(--ls-space-3); color: var(--ls-color-panel); }
.ls-checkout__lead { margin: 0; font-size: 18px; opacity: .88; }

.ls-checkout__steps { position: relative; z-index: 1; list-style: none; margin: 0; padding: 0; display: flex; gap: var(--ls-space-2); flex-wrap: wrap; }
.ls-checkout__steps li {
	display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px 8px 16px;
	border-radius: var(--ls-radius-pill); border: 1px solid color-mix(in srgb, var(--ls-color-band-text) 25%, transparent);
	font-size: var(--ls-fs-small); font-weight: 600; color: var(--ls-color-band-text);
}
.ls-checkout__steps li span { width: 22px; height: 22px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; background: color-mix(in srgb, var(--ls-color-band-text) 18%, transparent); }
.ls-checkout__steps li.is-current { background: var(--ls-color-gold-bright); border-color: var(--ls-color-gold-bright); color: var(--ls-color-band-bottom); }
.ls-checkout__steps li.is-current span { background: var(--ls-color-band-bottom); color: var(--ls-color-brand-title); }

/* ---------- 2. Layout ---------- */
/* Blocksy styles form.checkout as its own 2-col grid — neutralise it, we own the grid. */
.ls-checkout form.checkout.ls-checkout__form { display: block !important; grid-template-columns: none !important; }
.ls-checkout__layout { display: grid; grid-template-columns: 1fr; gap: var(--ls-co-gap); align-items: start; }
@media (min-width: 1024px) {
	.ls-checkout__layout { grid-template-columns: minmax(0, 1fr) minmax(360px, 420px); }
	.ls-checkout__side { position: sticky; top: 104px; }
	.admin-bar .ls-checkout__side { top: 136px; }
}
.ls-checkout__main { display: grid; gap: var(--ls-co-gap); min-width: 0; }
.ls-checkout__side { display: grid; gap: var(--ls-space-4); min-width: 0; }

/* ---------- 3. Cards ---------- */
.ls-checkout__card {
	background: var(--ls-color-panel); border: 1px solid var(--ls-color-line-soft);
	border-radius: calc(var(--ls-radius-ledger) * 1.4); box-shadow: var(--ls-shadow-soft);
	padding: clamp(20px, 2.6vw, 36px);
}
.ls-checkout__card-title { display: flex; align-items: center; gap: 12px; font-family: var(--ls-font-display); font-size: var(--ls-fs-h2); margin: 0 0 4px; color: var(--ls-color-ink); }
.ls-checkout__num { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; font-family: var(--ls-font-body); font-size: 15px; font-weight: 700; background: var(--ls-color-ink); color: var(--ls-color-brand-title); }
.ls-checkout__card-lead { margin: 0 0 var(--ls-space-6); padding-inline-start: 46px; color: var(--ls-color-muted); font-size: 15px; }

/* Wrappers WC/Blocksy add inside our cards — flatten them */
.ls-checkout .ct-customer-details, .ls-checkout .ct-order-review { display: block !important; margin: 0; padding: 0; background: none; border: 0; box-shadow: none; }
.ls-checkout .woocommerce-billing-fields > h3,
.ls-checkout .woocommerce-additional-fields > h3 { display: none; }

/* ---------- 4. Fields ---------- */
.ls-checkout .woocommerce-billing-fields__field-wrapper,
.ls-checkout .woocommerce-additional-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; }
.ls-checkout .form-row { margin: 0 !important; padding: 0 !important; width: auto !important; float: none !important; grid-column: span 2; }
.ls-checkout .form-row-first, .ls-checkout .form-row-last { grid-column: span 1; }
@media (max-width: 640px) { .ls-checkout .form-row-first, .ls-checkout .form-row-last { grid-column: span 2; } }
.ls-checkout .woocommerce-additional-fields { margin-top: 18px; }
/* WC's address-i18n.js re-sorts address rows and forces form-row-wide — pin our order/width by id instead. */
.ls-checkout #billing_first_name_field { order: 1; } .ls-checkout #billing_last_name_field { order: 2; }
.ls-checkout #billing_email_field { order: 3; }      .ls-checkout #billing_phone_field { order: 4; }
.ls-checkout #billing_address_1_field { order: 5; }  .ls-checkout #billing_city_field { order: 6; }
.ls-checkout #billing_postcode_field { order: 7; }   .ls-checkout #billing_company_field { order: 8; }
.ls-checkout #billing_country_field { order: 9; }
@media (min-width: 641px) {
	.ls-checkout :is(#billing_email_field, #billing_phone_field, #billing_address_1_field, #billing_city_field, #billing_postcode_field, #billing_company_field) { grid-column: span 1; }
}
.ls-checkout .ls-hidden-country { display: none !important; }

.ls-checkout .form-row label, .ls-checkout .ls-field__label { display: block; font-size: 14px; font-weight: 600; color: var(--ls-color-ink); margin: 0 0 6px; line-height: 1.4; }
.ls-checkout .form-row label .optional { font-weight: 400; color: var(--ls-color-faint); font-size: 12px; }
.ls-checkout .form-row .required, .ls-checkout .ls-field__required { color: var(--ls-color-error); text-decoration: none; border: 0; }

.ls-checkout input.input-text, .ls-checkout textarea, .ls-checkout select,
.ls-checkout .ls-field input[type="text"], .ls-checkout .ls-field input[type="date"], .ls-checkout .ls-field input[type="email"],
.ls-checkout .ls-field input[type="tel"], .ls-checkout .ls-field input[type="number"], .ls-checkout .ls-field select, .ls-checkout .ls-field textarea {
	width: 100%; min-height: 50px; padding: 12px 14px; font: inherit; font-size: 16px; color: var(--ls-color-ink);
	background: var(--ls-color-panel-2); border: 1px solid var(--ls-color-line); border-radius: var(--ls-radius-ledger);
	transition: border-color .15s, box-shadow .15s, background-color .15s;
}
.ls-checkout textarea { min-height: 110px; resize: vertical; }
.ls-checkout input.input-text:hover, .ls-checkout textarea:hover, .ls-checkout .ls-field input:hover { border-color: var(--ls-color-faint); }
.ls-checkout input.input-text:focus, .ls-checkout textarea:focus, .ls-checkout select:focus, .ls-checkout .ls-field input:focus, .ls-checkout .ls-field textarea:focus {
	outline: none; background: var(--ls-color-panel); border-color: var(--ls-color-gold);
	box-shadow: 0 0 0 4px color-mix(in srgb, var(--ls-color-gold-bright) 22%, transparent);
}
.ls-checkout input::placeholder, .ls-checkout textarea::placeholder { color: var(--ls-color-faint); }
.ls-checkout .woocommerce-invalid input.input-text { border-color: var(--ls-color-error); background: var(--ls-color-error-bg); }
.ls-checkout .woocommerce-validated input.input-text { border-color: color-mix(in srgb, var(--ls-color-status-active) 50%, var(--ls-color-line)); }

/* ---------- 5. Case card: intake + upload (rendered by ls-office) ---------- */
.ls-checkout__case .ls-intake { margin: 0; padding: 0; background: none; border: 0; }
.ls-checkout__case .ls-intake__title { font-family: var(--ls-font-body); font-size: 13px; font-weight: 700; letter-spacing: var(--ls-ls-label); color: var(--ls-color-gold-dark); margin: 0 0 var(--ls-space-4); }
.ls-checkout__case .ls-intake > .ls-field { margin: 0 0 20px; }
.ls-checkout__case .ls-field__choices { display: flex; flex-wrap: wrap; gap: 10px; }
.ls-checkout__case .ls-field__choice {
	position: relative; display: inline-flex; align-items: center; gap: 8px; margin: 0; cursor: pointer;
	padding: 10px 18px; border: 1px solid var(--ls-color-line); border-radius: var(--ls-radius-pill); background: var(--ls-color-panel-2);
	font-weight: 600; transition: border-color .15s, background-color .15s;
}
.ls-checkout__case .ls-field__choice:hover { border-color: var(--ls-color-gold); }
.ls-checkout__case .ls-field__choice:has(input:checked) { border-color: var(--ls-color-gold); background: color-mix(in srgb, var(--ls-color-gold-bright) 16%, var(--ls-color-panel)); }
.ls-checkout__case .ls-field__choice input { accent-color: var(--ls-color-gold); margin: 0; }

.ls-checkout__case .ls-upload {
	margin: var(--ls-space-6) 0 0; padding: clamp(18px, 2vw, 28px);
	border: 2px dashed var(--ls-color-line); border-radius: calc(var(--ls-radius-ledger) * 1.4);
	background: var(--ls-color-panel-2); transition: border-color .15s, background-color .15s;
}
.ls-checkout__case .ls-upload:hover, .ls-checkout__case .ls-upload:focus-within { border-color: var(--ls-color-gold); background: var(--ls-color-panel); }
.ls-checkout__case .ls-upload__title { font-family: var(--ls-font-display); font-size: 20px; margin: 0 0 8px; }
.ls-checkout__case .ls-upload__guidance { margin: 0 0 8px; color: var(--ls-color-muted); font-size: 14px; }
.ls-checkout__case .ls-upload__docs { list-style: none; margin: 0 0 var(--ls-space-4); padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 10px; }
.ls-checkout__case .ls-upload__docs li { padding: 12px 14px; background: var(--ls-color-panel); border: 1px solid var(--ls-color-line-soft); border-radius: var(--ls-radius-ledger); font-size: 15px; line-height: 1.5; }
.ls-checkout__case .ls-upload__docs li small { color: var(--ls-color-muted); }
.ls-checkout__case .ls-upload__docs .ls-badge { margin-inline-start: 6px; }
.ls-checkout__case .ls-upload input[type="file"] { width: 100%; padding: 10px; font: inherit; font-size: 14px; color: var(--ls-color-muted); background: var(--ls-color-panel); border: 1px solid var(--ls-color-line-soft); border-radius: var(--ls-radius-ledger); cursor: pointer; }
.ls-checkout__case .ls-upload input[type="file"]::file-selector-button {
	margin-inline-end: 12px; padding: 10px 18px; border: 0; border-radius: var(--ls-radius-pill); cursor: pointer;
	font: inherit; font-weight: 700; background: var(--ls-color-ink); color: var(--ls-color-brand-title);
}
.ls-checkout__case .ls-upload__hint { margin: 10px 0 0; font-size: 13px; color: var(--ls-color-faint); }

/* ---------- 6. Payment card ---------- */
.ls-checkout__pay .ls-checkout__card-title { margin-bottom: var(--ls-space-6); }
.ls-checkout #payment { background: transparent; border-radius: 0; }
.ls-checkout #payment ul.payment_methods { list-style: none; margin: 0 0 var(--ls-space-6); padding: 0; display: grid; gap: 12px; border: 0; }
.ls-checkout #payment ul.payment_methods li {
	position: relative; margin: 0; padding: 18px 20px; line-height: 1.5;
	border: 1.5px solid var(--ls-color-line); border-radius: calc(var(--ls-radius-ledger) * 1.2); background: var(--ls-color-panel-2);
	transition: border-color .15s, background-color .15s, box-shadow .15s;
}
.ls-checkout #payment ul.payment_methods li:has(input:checked) { border-color: var(--ls-color-gold); background: var(--ls-color-panel); box-shadow: 0 0 0 4px color-mix(in srgb, var(--ls-color-gold-bright) 18%, transparent); }
.ls-checkout #payment ul.payment_methods li input.input-radio { accent-color: var(--ls-color-gold); width: 18px; height: 18px; vertical-align: middle; margin: 0 0 0 10px; }
.ls-checkout #payment ul.payment_methods li label { font-weight: 700; font-size: 17px; display: inline-flex; flex-wrap: wrap; align-items: center; gap: 10px; cursor: pointer; margin: 0; }
.ls-checkout #payment ul.payment_methods li label img { max-height: 26px; width: auto; margin: 0; }
.ls-checkout #payment div.payment_box { background: transparent !important; padding: 8px 0 0 !important; margin: 0 !important; color: var(--ls-color-muted); font-size: 14px; }
.ls-checkout #payment div.payment_box p { margin: 0 0 4px; }
.ls-checkout #payment div.payment_box::before { display: none; }
.ls-checkout #payment .place-order { padding: 0 !important; margin: 0; display: grid; gap: var(--ls-space-4); }

.ls-checkout .woocommerce-privacy-policy-text { font-size: 13px; color: var(--ls-color-faint); }
.ls-checkout .woocommerce-privacy-policy-text p { margin: 0; }
.ls-checkout .woocommerce-terms-and-conditions-wrapper { margin: 0; }
.ls-checkout .woocommerce-terms-and-conditions-wrapper .form-row { padding: 14px 16px !important; background: var(--ls-color-panel-2); border: 1px solid var(--ls-color-line-soft); border-radius: var(--ls-radius-ledger); }
.ls-checkout .woocommerce-form__label-for-checkbox { display: flex !important; align-items: flex-start; gap: 10px; font-weight: 500 !important; font-size: 15px !important; margin: 0 !important; cursor: pointer; }
.ls-checkout .woocommerce-form__label-for-checkbox input { accent-color: var(--ls-color-gold); width: 18px; height: 18px; margin: 3px 0 0; flex: none; }
.ls-checkout .woocommerce-terms-and-conditions-link { font-weight: 700; }

.ls-checkout #place_order {
	width: 100%; min-height: 58px; padding: 16px 28px; font-size: 19px; font-weight: 700; letter-spacing: .01em;
	border: 0; border-radius: var(--ls-radius-pill); cursor: pointer;
	background: linear-gradient(180deg, var(--ls-color-gold-bright), var(--ls-color-gold)); color: var(--ls-color-band-bottom);
	box-shadow: 0 10px 24px color-mix(in srgb, var(--ls-color-gold) 35%, transparent);
	transition: transform .15s, box-shadow .15s, filter .15s;
}
.ls-checkout #place_order:hover { transform: translateY(-1px); filter: brightness(1.04); box-shadow: 0 14px 30px color-mix(in srgb, var(--ls-color-gold) 42%, transparent); }
.ls-checkout #place_order:focus-visible { outline: 3px solid var(--ls-color-ink); outline-offset: 3px; }
.ls-checkout #place_order::before { content: "🔒"; margin-inline-end: 10px; font-size: 16px; }

.ls-checkout__cards-row { list-style: none; margin: var(--ls-space-4) 0 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.ls-checkout__cards-row li { font-size: 12px; font-weight: 700; color: var(--ls-color-muted); padding: 4px 10px; border: 1px solid var(--ls-color-line-soft); border-radius: 6px; background: var(--ls-color-panel-2); }

/* ---------- 7. Side: summary ---------- */
.ls-checkout__summary {
	background: var(--ls-color-panel); border-radius: calc(var(--ls-radius-ledger) * 1.4); box-shadow: var(--ls-shadow-ledger);
	border-block-start: 4px solid var(--ls-color-gold); padding: clamp(20px, 2.2vw, 28px);
}
.ls-checkout__summary-title { font-family: var(--ls-font-display); font-size: 24px; margin: 0 0 var(--ls-space-4); }
.ls-checkout .woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; margin: 0; border: 0; }
.ls-checkout .woocommerce-checkout-review-order-table thead { display: none; }
.ls-checkout .woocommerce-checkout-review-order-table th, .ls-checkout .woocommerce-checkout-review-order-table td { padding: 12px 0; border: 0; border-block-end: 1px solid var(--ls-color-line-soft); text-align: start; vertical-align: top; background: none; }
.ls-checkout .woocommerce-checkout-review-order-table td.product-total, .ls-checkout .woocommerce-checkout-review-order-table tfoot td { text-align: end; white-space: nowrap; }
.ls-checkout .woocommerce-checkout-review-order-table .cart_item .product-name { font-weight: 700; font-size: 17px; }
.ls-checkout .woocommerce-checkout-review-order-table .product-quantity { display: none; }
.ls-checkout .woocommerce-checkout-review-order-table tfoot th { font-weight: 500; color: var(--ls-color-muted); }
.ls-checkout .woocommerce-checkout-review-order-table .order-total th, .ls-checkout .woocommerce-checkout-review-order-table .order-total td { border: 0; padding-top: var(--ls-space-4); vertical-align: baseline; }
.ls-checkout .woocommerce-checkout-review-order-table .order-total th { font-weight: 700; color: var(--ls-color-ink); font-size: 17px; }
.ls-checkout .woocommerce-checkout-review-order-table .order-total td { font-family: var(--ls-font-display); font-size: 32px; color: var(--ls-color-gold-dark); }
.ls-checkout__vat { margin: 6px 0 0; font-size: 13px; color: var(--ls-color-faint); }

.ls-checkout__next { background: var(--ls-color-panel-2); border: 1px solid var(--ls-color-line-soft); border-radius: calc(var(--ls-radius-ledger) * 1.4); padding: 20px 22px; }
.ls-checkout__next h3 { font-family: var(--ls-font-display); font-size: 19px; margin: 0 0 12px; }
.ls-checkout__next ol { list-style: none; margin: 0; padding: 0; counter-reset: lsnext; display: grid; gap: 10px; }
.ls-checkout__next li { counter-increment: lsnext; position: relative; padding-inline-start: 34px; font-size: 15px; line-height: 1.55; }
.ls-checkout__next li::before { content: counter(lsnext); position: absolute; inset-inline-start: 0; top: 1px; width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 700; background: var(--ls-color-gold); color: var(--ls-color-panel); }

.ls-checkout__assure { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.ls-checkout__assure li { display: grid; gap: 2px; padding: 12px 4px 12px 0; padding-inline-start: 30px; position: relative; font-size: 14px; line-height: 1.5; border-block-end: 1px solid var(--ls-color-line-soft); }
.ls-checkout__assure li:last-child { border: 0; }
.ls-checkout__assure li::before { content: "✓"; position: absolute; inset-inline-start: 4px; top: 12px; font-weight: 700; color: var(--ls-color-status-active); }
.ls-checkout__assure strong { font-size: 15px; color: var(--ls-color-ink); }
.ls-checkout__assure span { color: var(--ls-color-muted); }

.ls-checkout__help { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; padding: 14px 18px; border-radius: var(--ls-radius-ledger); background: var(--ls-color-bg-2); font-size: 15px; }
.ls-checkout__help span { color: var(--ls-color-muted); }
.ls-checkout__help a { font-weight: 700; color: var(--ls-color-ink); text-decoration: none; }
.ls-checkout__help a:hover { text-decoration: underline; }
.ls-checkout__wa { padding: 4px 12px; border-radius: var(--ls-radius-pill); background: var(--ls-color-whatsapp); color: var(--ls-color-band-bottom) !important; }

/* Notices above the form */
.ls-checkout .woocommerce-NoticeGroup, .ls-checkout .woocommerce-error { grid-column: 1 / -1; }
.ls-checkout .woocommerce-error { list-style: none; margin: 0 0 var(--ls-space-4); padding: 16px 20px; border-radius: var(--ls-radius-ledger); background: var(--ls-color-error-bg); color: var(--ls-color-error); border: 1px solid color-mix(in srgb, var(--ls-color-error) 30%, transparent); }

/* Blocked overlay while WC refreshes */
.ls-checkout .blockUI.blockOverlay { border-radius: inherit; }

/* Hide WC noise */
.woocommerce-checkout .woocommerce-form-coupon-toggle, .woocommerce-checkout .woocommerce-shipping-fields { display: none; }

/* Mobile */
@media (max-width: 1023px) {
	.ls-checkout__side { order: -1; }
	.ls-checkout__next, .ls-checkout__assure, .ls-checkout__help { display: none; }
}
@media (max-width: 640px) {
	.ls-checkout__hero { border-radius: var(--ls-radius-ledger); }
	.ls-checkout__steps { width: 100%; }
	.ls-checkout__card-lead { padding-inline-start: 0; }
}

/* ======================================================================
 * Thank you
 * ====================================================================== */
.ls-thankyou { max-width: 760px; margin-inline: auto; padding-block: var(--ls-space-12); text-align: center; }
.ls-thankyou__icon { width: 72px; height: 72px; border-radius: 50%; background: var(--ls-color-status-active-bg); color: var(--ls-color-status-active); display: grid; place-items: center; margin: 0 auto var(--ls-space-4); font-size: 34px; }
.ls-thankyou__title { font-family: var(--ls-font-display); font-size: var(--ls-fs-h1); margin: 0 0 var(--ls-space-3); }
.ls-thankyou__lead { color: var(--ls-color-muted); font-size: 18px; margin: 0 auto var(--ls-space-6); max-width: 60ch; }
.ls-thankyou__order-summary { background: var(--ls-color-panel); border-radius: var(--ls-radius-ledger); box-shadow: var(--ls-shadow-ledger); padding: var(--ls-space-6); text-align: start; margin-block-end: var(--ls-space-6); }
.ls-thankyou__order-summary dl { display: grid; grid-template-columns: auto 1fr; gap: 8px 20px; margin: 0; }
.ls-thankyou__order-summary dt { color: var(--ls-color-muted); }
.ls-thankyou__order-summary dd { margin: 0; font-weight: 600; }
.ls-thankyou__actions { display: flex; justify-content: center; gap: var(--ls-space-3); flex-wrap: wrap; }
.ls-thankyou__failed { color: var(--ls-color-error); }
.ls-thankyou__magic-prompt { background: var(--ls-color-panel-2); border-radius: var(--ls-radius-ledger); padding: var(--ls-space-4); margin-top: var(--ls-space-6); color: var(--ls-color-muted); }

/* ======================================================================
 * Order-pay (quote payment)
 * ====================================================================== */
.woocommerce-order-pay #order_review { background: var(--ls-color-panel); border-radius: var(--ls-radius-ledger); box-shadow: var(--ls-shadow-ledger); padding: var(--ls-space-6); max-width: 720px; }
.woocommerce-order-pay .shop_table { width: 100%; border-collapse: collapse; margin: 0 0 var(--ls-space-4); }
.woocommerce-order-pay .shop_table th, .woocommerce-order-pay .shop_table td { padding: 10px 0; border-block-end: 1px solid var(--ls-color-line-soft); text-align: start; }
.woocommerce-order-pay .shop_table tfoot .order-total th, .woocommerce-order-pay .shop_table tfoot .order-total td { font-family: var(--ls-font-display); font-size: 22px; color: var(--ls-color-gold-dark); border: 0; }
.woocommerce-order-pay #payment ul.payment_methods { list-style: none; margin: 0 0 var(--ls-space-4); padding: 0; display: grid; gap: var(--ls-space-2); border: 0; }
.woocommerce-order-pay #payment ul.payment_methods li { padding: var(--ls-space-3) var(--ls-space-4); border: 1px solid var(--ls-color-line); border-radius: var(--ls-radius-ledger); background: var(--ls-color-bg); }
.woocommerce-order-pay #payment div.payment_box { background: transparent !important; padding: var(--ls-space-2) 0 0 !important; margin: 0 !important; color: var(--ls-color-muted); font-size: 14px; }
.woocommerce-order-pay #payment div.payment_box::before { display: none; }
.woocommerce-order-pay #place_order { width: 100%; font-size: 17px; padding: 14px 24px; }

/* Blocksy restyles radios/checkboxes with appearance:none — inside our checkout cards use native controls tinted with brass */
.ls-checkout input[type="checkbox"], .ls-checkout input[type="radio"] {
	appearance: auto !important; -webkit-appearance: auto !important; display: inline-block !important;
	position: static !important; opacity: 1 !important; width: 18px !important; height: 18px !important;
	background: none !important; border: 0 !important; box-shadow: none !important; accent-color: var(--ls-color-gold); flex: none;
}
.ls-checkout input[type="checkbox"]::before, .ls-checkout input[type="checkbox"]::after,
.ls-checkout input[type="radio"]::before, .ls-checkout input[type="radio"]::after { display: none !important; }
.ls-checkout #payment ul.payment_methods li > label::before, .ls-checkout #payment ul.payment_methods li > label::after { display: none !important; content: none !important; }
