/* WooCommerce dark theme overrides for WooMyData Demo */

/* ── Base ── */
.woocommerce-page,
.woocommerce { background: var(--bg); color: var(--text); }

/* ── Forms ── */
.woocommerce .woocommerce-form input,
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="tel"],
.woocommerce input[type="password"],
.woocommerce input[type="number"],
.woocommerce textarea,
.woocommerce select {
  background: var(--bg2) !important;
  border: 1px solid rgba(217,119,6,.18) !important;
  color: #fff !important;
  border-radius: var(--radius) !important;
  padding: .65rem .9rem !important;
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: .9rem !important;
  transition: border-color .15s !important;
}
.woocommerce input[type="text"]::placeholder,
.woocommerce input[type="email"]::placeholder,
.woocommerce input[type="tel"]::placeholder,
.woocommerce input[type="password"]::placeholder,
.woocommerce input[type="number"]::placeholder,
.woocommerce textarea::placeholder {
  color: rgba(255,255,255,.35) !important;
  opacity: 1 !important;
}
/* WooCommerce uses floating labels — make sure the label text is visible */
.woocommerce-checkout .woocommerce-input-wrapper,
.woocommerce form .form-row label,
.woocommerce-billing-fields label,
.woocommerce-shipping-fields label,
.woocommerce-additional-fields label {
  color: rgba(248,250,252,.65) !important;
}
.woocommerce input:focus,
.woocommerce textarea:focus,
.woocommerce select:focus {
  border-color: var(--amber) !important;
  outline: none !important;
  box-shadow: 0 0 0 2px rgba(217,119,6,.12) !important;
}
.woocommerce label {
  color: rgba(248,250,252,.6) !important;
  font-size: .82rem !important;
  font-family: 'JetBrains Mono', monospace !important;
  letter-spacing: .06em !important;
  text-transform: uppercase !important;
}

/* ── Checkout sections ── */
.woocommerce-checkout-review-order-table,
.woocommerce-checkout .shop_table {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--text) !important;
}
.woocommerce-checkout .shop_table th,
.woocommerce-checkout .shop_table td {
  border-color: var(--border) !important;
  color: var(--text) !important;
  padding: .75rem 1rem !important;
}
.woocommerce-checkout .shop_table tfoot tr:last-child td,
.woocommerce-checkout .shop_table tfoot tr:last-child th {
  color: #fff !important;
  font-weight: 700 !important;
  font-size: 1.05rem !important;
}

/* ── Section headings ── */
.woocommerce h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3 {
  font-family: 'Orbitron', sans-serif !important;
  color: #fff !important;
  font-size: .9rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  border-bottom: 1px solid var(--border) !important;
  padding-bottom: .75rem !important;
  margin-bottom: 1.25rem !important;
}

/* ── Place Order button ── */
#place_order,
.woocommerce button[type="submit"],
.woocommerce .button.alt {
  background: var(--amber) !important;
  color: #fff !important;
  border: none !important;
  border-radius: var(--radius) !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-weight: 700 !important;
  font-size: .85rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  padding: 1rem 2rem !important;
  transition: all .2s !important;
  box-shadow: 0 4px 20px rgba(217,119,6,.25) !important;
  width: 100% !important;
}
#place_order:hover,
.woocommerce button[type="submit"]:hover,
.woocommerce .button.alt:hover {
  background: var(--amber2) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 24px rgba(217,119,6,.35) !important;
}

/* ── Payment methods ── */
.woocommerce-checkout #payment {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
}
.woocommerce-checkout #payment ul.payment_methods {
  border-bottom: 1px solid var(--border) !important;
}
.woocommerce-checkout #payment ul.payment_methods li {
  color: var(--text) !important;
}
.woocommerce-checkout #payment div.payment_box {
  background: var(--bg3) !important;
  color: var(--muted) !important;
  font-size: .85rem !important;
}
.woocommerce-checkout #payment div.payment_box::before {
  border-bottom-color: var(--bg3) !important;
}

/* ── Notices ── */
.woocommerce-message,
.woocommerce-info {
  background: rgba(217,119,6,.08) !important;
  border-top-color: var(--amber) !important;
  color: var(--text) !important;
}
.woocommerce-error {
  background: rgba(220,38,38,.08) !important;
  border-top-color: var(--red) !important;
  color: var(--text) !important;
}

/* ── Order received (thank you) ── */
.woocommerce-order-received .entry-title,
.woocommerce-thankyou-section h2 {
  font-family: 'Orbitron', sans-serif !important;
  color: #fff !important;
}
.woocommerce-order {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 1.5rem !important;
  color: var(--text) !important;
}
.woocommerce-order-overview__order,
.woocommerce-order-overview__date,
.woocommerce-order-overview__email,
.woocommerce-order-overview__total,
.woocommerce-order-overview__payment-method {
  border: 1px solid var(--border) !important;
  color: var(--text) !important;
}
.woocommerce-order-overview__total strong {
  color: var(--amber) !important;
}

/* ── WooCommerce Blocks Checkout — label & placeholder fixes ── */

/* Floating labels inside block checkout */
.wc-block-components-text-input label,
.wc-block-components-select label,
.wc-block-components-textarea label,
.wc-block-components-form .wc-block-components-text-input label,
.wc-block-checkout__contact-fields label,
.wc-block-checkout__shipping-fields label,
.wc-block-checkout__billing-fields label {
  color: rgba(248,250,252,.65) !important;
  font-size: .82rem !important;
}

/* Label when input is empty/unfocused — the floating placeholder */
.wc-block-components-text-input:not(.is-active) label,
.wc-block-components-text-input.has-error:not(.is-active) label {
  color: rgba(248,250,252,.45) !important;
  top: 50% !important;
  font-size: .9rem !important;
}

/* Label when input is focused or has value */
.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:focus ~ label,
.wc-block-components-text-input input:not(:placeholder-shown) ~ label {
  color: rgba(217,119,6,.9) !important;
  font-size: .72rem !important;
}

/* Input fields inside blocks */
.wc-block-components-text-input input,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="password"],
.wc-block-components-select select,
.wc-block-components-textarea textarea {
  background: #1e293b !important;
  border: 1px solid rgba(217,119,6,.2) !important;
  color: #ffffff !important;
  border-radius: 4px !important;
  font-family: 'Space Grotesk', sans-serif !important;
}

/* Placeholder text visible */
.wc-block-components-text-input input::placeholder,
.wc-block-components-textarea textarea::placeholder {
  color: rgba(248,250,252,.4) !important;
  opacity: 1 !important;
}

/* Block checkout section headings */
.wc-block-checkout__step-heading,
.wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-fields-block h2,
.wp-block-woocommerce-checkout-shipping-address-block h2,
.wp-block-woocommerce-checkout-billing-address-block h2 {
  color: #ffffff !important;
  font-family: 'Orbitron', sans-serif !important;
  font-size: 1rem !important;
  letter-spacing: .08em !important;
}

/* Block checkout container */
.wp-block-woocommerce-checkout,
.wc-block-checkout {
  background: transparent !important;
  color: var(--text) !important;
}

/* Order summary in blocks */
.wc-block-components-order-summary,
.wc-block-cart-items,
.wc-block-components-totals-wrapper {
  background: #1e293b !important;
  border: 1px solid rgba(217,119,6,.12) !important;
  border-radius: 4px !important;
}
.wc-block-components-totals-item,
.wc-block-components-order-summary-item {
  border-color: rgba(217,119,6,.08) !important;
  color: var(--text) !important;
}
.wc-block-components-totals-item__label,
.wc-block-components-order-summary-item__individual-prices {
  color: rgba(248,250,252,.7) !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #d97706 !important;
  font-weight: 700 !important;
}

/* Place order button */
.wc-block-components-checkout-place-order-button,
.wc-block-components-button.wc-block-components-checkout-place-order-button {
  background: #d97706 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 4px !important;
  font-family: 'JetBrains Mono', monospace !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  box-shadow: 0 4px 16px rgba(217,119,6,.3) !important;
}
.wc-block-components-checkout-place-order-button:hover {
  background: #b45309 !important;
}

/* Radio buttons & checkboxes */
.wc-block-components-radio-control__input:checked,
.wc-block-components-checkbox input:checked {
  accent-color: #d97706 !important;
}
.wc-block-components-radio-control__label,
.wc-block-components-checkbox__label {
  color: rgba(248,250,252,.75) !important;
}

/* Payment methods */
.wc-block-components-payment-method-label,
.wc-block-components-payment-method-description {
  color: rgba(248,250,252,.75) !important;
}
.wc-block-components-radio-control-accordion-option {
  background: #1e293b !important;
  border-color: rgba(217,119,6,.15) !important;
}
.wc-block-components-radio-control-accordion-option--checked {
  border-color: #d97706 !important;
}

/* Express payment buttons area */
.wc-block-components-express-payment-continue-rule {
  color: rgba(248,250,252,.4) !important;
}
.wc-block-components-express-payment-continue-rule::before,
.wc-block-components-express-payment-continue-rule::after {
  border-color: rgba(217,119,6,.15) !important;
}

/* Notices */
.wc-block-components-notice-banner {
  background: rgba(217,119,6,.08) !important;
  border-color: #d97706 !important;
  color: rgba(248,250,252,.8) !important;
}
.wc-block-components-notice-banner.is-error {
  background: rgba(220,38,38,.08) !important;
  border-color: #dc2626 !important;
}

/* Country/state selects */
.wc-block-components-country-input .wc-block-components-combobox input,
.wc-block-components-state-input .wc-block-components-combobox input {
  background: #1e293b !important;
  color: #fff !important;
  border-color: rgba(217,119,6,.2) !important;
}
