/* The Carat Farm — Night theme (from the Carat Farm design system tokens.json, theme "night").
   Loaded after the other stylesheets when Ring Builder → Settings → Site look is Night.
   ":root" ties with WordPress's global-styles block; "html:root" wins it on the front end. */
:root, html:root {
  color-scheme: dark;
  --paper: #12100E;
  --surface: #1C1916;
  --furrow: #26211C;
  --line: #3A332C;
  --ink: #FFF0D2;
  --ink-soft: #B9B3A6;
  --flesh-lit: #FF8E4E;
  --flesh: #FF7B42;
  --flesh-deep: #FF9450;
  --girdle: #E05329;
  --gold: #FFDA84;
  --cream: #2A241D;
  --leaf-lit: #7FD09B;
  --leaf: #4FB07E;
  --leaf-deep: #59B884;
  --leaf-shade: #7FD09B;
  --night: #0A0908;
  --shadow-card: 0 1px 2px rgba(0,0,0,0.4), 0 8px 24px rgba(0,0,0,0.45);
  --cf-stripe: #211D19;

  /* theme.json presets, so global styles (body, links, headings, buttons) follow. */
  --wp--preset--color--paper: #12100E;
  --wp--preset--color--surface: #1C1916;
  --wp--preset--color--furrow: #26211C;
  --wp--preset--color--line: #3A332C;
  --wp--preset--color--ink: #FFF0D2;
  --wp--preset--color--ink-soft: #B9B3A6;
  --wp--preset--color--flesh: #FF7B42;
  --wp--preset--color--flesh-deep: #FF9450;
  --wp--preset--color--girdle: #E05329;
  --wp--preset--color--cream: #2A241D;
  --wp--preset--color--leaf-deep: #59B884;
  --wp--preset--color--leaf-shade: #7FD09B;
  --wp--preset--color--night: #0A0908;
}

body { background: var(--paper); color: var(--ink); }

/* The deepest surfaces sit one step below the page; a hairline keeps their edge. */
.cf-strip { border-bottom: 1px solid var(--line); }
.cf-cta { border-block: 1px solid var(--line); }
.cf-footer-field { border-top: 1px solid var(--line); }

/* Product photos: multiply blending is for white grounds; on Night it turns photos black. */
.cf-card__img, .cfb-stage__photo { mix-blend-mode: normal; }
.cf-card__well:has(.cf-card__img), .cfb-stage__ring:has(.cfb-stage__photo) { background: var(--surface); }

/* Sprouts: soften the drop shadow that assumed a light ground. */
.cf-sprout__gem .cf-mark { filter: drop-shadow(0 2px 0 rgba(0,0,0,.35)); }
.cfb-hero__big .cf-mark { filter: drop-shadow(0 18px 28px rgba(0,0,0,.55)); }

/* Metal swatches need a light ring to read against dark chips. */
.cf-metal__dot { box-shadow: inset 0 0 0 1px rgba(255,240,210,.25); }

/* Selected chip: ink fill is cream on Night, so its text goes dark. */
.cf-chip[aria-checked="true"] { color: var(--night); }

/* Dialog backdrop a touch deeper so the panel separates from a dark page. */
.cfb-dialog::backdrop { background: rgba(0,0,0,.7); }
.cfb-dialog { border: 1px solid var(--line); }

/* ---------- Forms everywhere (builder, contact, WooCommerce) ---------- */
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], input[type="search"], input[type="url"],
select, textarea {
  background-color: var(--surface);
  color: var(--ink);
  border-color: var(--ink-soft);
}
input::placeholder, textarea::placeholder { color: #8C8578; }

/* ---------- WooCommerce blocks (cart, checkout, mini-cart, account) ---------- */
.wc-block-components-text-input input, .wc-block-components-combobox .components-combobox-control input,
.wc-block-components-select .wc-block-components-select__select, .wc-blocks-components-select__select,
.wc-block-components-textarea, .wc-block-components-form .wc-block-components-text-input input {
  background-color: var(--surface) !important;
  color: var(--ink) !important;
  border-color: var(--ink-soft) !important;
}
.wc-block-components-text-input label, .wc-blocks-components-select__label,
.wc-block-components-text-input.is-active label { color: var(--ink-soft) !important; }
.wc-block-mini-cart__drawer .components-modal__content,
.wc-block-mini-cart__drawer .wc-block-mini-cart__template-part,
.wc-block-components-drawer, .wc-block-components-drawer__content { background: var(--surface) !important; color: var(--ink) !important; }
.wc-block-components-panel, .wc-block-components-totals-wrapper, .wc-block-components-order-summary,
.wp-block-woocommerce-checkout-order-summary-block { border-color: var(--line) !important; }
.wc-block-components-radio-control__option, .wc-block-components-radio-control-accordion-option { border-color: var(--line) !important; }
.wc-block-components-notice-banner { background: var(--surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
.wc-block-components-quantity-selector { border-color: var(--ink-soft) !important; }
.wc-block-components-quantity-selector input, .wc-block-components-quantity-selector__button { color: var(--ink) !important; background: transparent !important; }
.wc-block-components-product-badge { background: var(--surface) !important; color: var(--ink) !important; border-color: var(--line) !important; }
.wc-block-components-spinner::after { border-color: var(--ink) transparent transparent !important; }
.select2-container--default .select2-selection--single, .select2-dropdown { background: var(--surface) !important; color: var(--ink) !important; border-color: var(--ink-soft) !important; }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--ink) !important; }

/* Core blocks in generic pages. */
.wp-block-separator { border-color: var(--line); color: var(--line); }
.wp-block-table td, .wp-block-table th { border-color: var(--line); }
.wp-block-search__input { background: var(--surface); color: var(--ink); border-color: var(--ink-soft); }
.wp-block-navigation__responsive-container.is-menu-open { background-color: var(--paper) !important; color: var(--ink) !important; }
