/*
 * חלק בקוד: theme/assets/css/forms.css
 * טפסים גנריים של WooCommerce / WordPress (שדות חיוב, כפתורים, הודעות מערכת, חיפוש, תגובות) בסגנון Ledger.
 * טפסי התוסף (.ls-form) מקבלים את המבנה מ-frontend.css של התוסף.
 */

.woocommerce form .form-row label, .comment-form label { display: block; font-weight: 600; font-size: 14px; margin-bottom: 6px; color: var(--ls-color-ink); }
.woocommerce form .form-row .required { color: var(--ls-color-error); text-decoration: none; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea, .woocommerce form .form-row select, .woocommerce .select2-container .select2-selection--single,
.comment-form input[type=text], .comment-form input[type=email], .comment-form input[type=url], .comment-form textarea, .search-form input[type=search], .wp-block-search__input {
    width: 100%; box-sizing: border-box; border: 1px solid var(--ls-color-line); background: var(--ls-color-bg); color: var(--ls-color-ink); border-radius: var(--ls-radius-ledger); padding: 10px 14px; font: 16px/1.5 var(--ls-font-body); min-height: 44px; }
.woocommerce .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, .comment-form textarea:focus, .comment-form input:focus { outline: 2px solid var(--ls-color-gold); outline-offset: 1px; border-color: var(--ls-color-gold); }
.woocommerce form .form-row { margin-bottom: var(--ls-space-4); padding: 0; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 48%; }
@media (max-width: 640px) { .woocommerce form .form-row-first, .woocommerce form .form-row-last { width: 100%; float: none; } }

/* Buttons (WC + WP) */
.woocommerce button.button, .woocommerce a.button, .woocommerce input.button, .woocommerce #respond input#submit, .wp-block-button__link, .comment-form .submit, .wp-block-search__button {
    display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: var(--ls-radius-ledger); border: 1px solid var(--ls-color-line); background: var(--ls-color-panel); color: var(--ls-color-ink); font: 600 15px/1.2 var(--ls-font-body); padding: 11px 20px; cursor: pointer; text-decoration: none; transition: transform .15s, background .15s; }
.woocommerce button.button:hover, .woocommerce a.button:hover { background: var(--ls-color-bg-2); color: var(--ls-color-ink); transform: translateY(-1px); }
.woocommerce button.button.alt, .woocommerce a.button.alt, .woocommerce #payment #place_order, .wp-block-button__link, .comment-form .submit, .wp-block-search__button, .woocommerce button.button[name="save_account_details"], .woocommerce button.button[name="save_address"] {
    background: var(--ls-color-gold); border-color: var(--ls-color-gold); color: var(--ls-color-panel); box-shadow: var(--ls-shadow-soft); }
.woocommerce button.button.alt:hover, .woocommerce a.button.alt:hover, .woocommerce #payment #place_order:hover { background: var(--ls-color-gold-dark); border-color: var(--ls-color-gold-dark); color: var(--ls-color-panel); }
.woocommerce button.button:disabled, .woocommerce button.button:disabled[disabled] { opacity: .6; }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice, .wc-block-components-notice-banner { border: 0 !important; border-block-start: 3px solid currentColor !important; border-radius: var(--ls-radius-ledger); background: var(--ls-color-panel) !important; color: var(--ls-color-ink); padding: 14px 18px !important; margin: 0 0 var(--ls-space-6) !important; box-shadow: var(--ls-shadow-soft); list-style: none; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }
.woocommerce-message { color: var(--ls-color-status-active); background: var(--ls-color-status-active-bg) !important; }
.woocommerce-info { color: var(--ls-color-gold-dark); }
.woocommerce-error { color: var(--ls-color-error); background: var(--ls-color-error-bg) !important; }
.woocommerce-error li, .woocommerce-message li { margin: 0; }
.woocommerce-message .button, .woocommerce-info .button { float: none; margin-inline-start: auto; }

/* Comments */
.comment-form textarea { min-height: 140px; }

/* WP core blocks spacing in content */
.ls-page__body > *:first-child { margin-top: 0; }

/* WooCommerce billing grid (WC core CSS is disabled, so lay the fields out ourselves) */
.woocommerce-billing-fields__field-wrapper, .woocommerce-address-fields__field-wrapper, .woocommerce-additional-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 var(--ls-space-4); }
.woocommerce form .form-row-wide, .woocommerce form .form-row.notes, .woocommerce form .form-row[id*="email"], .woocommerce form .form-row[id*="phone"] { grid-column: 1 / -1; }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { width: auto; float: none; }
@media (max-width: 640px) { .woocommerce-billing-fields__field-wrapper, .woocommerce-address-fields__field-wrapper { grid-template-columns: 1fr; } }
.woocommerce form .form-row .optional { color: var(--ls-color-faint); font-weight: 400; font-size: 12px; }
.woocommerce-checkout #customer_details .woocommerce-billing-fields p.form-row label { font-size: 14px; }
.blockUI.blockOverlay { background: rgba(243,236,221,.6) !important; }
