/* ==========================================================================
   Brastos Sodas — theme additions in the token language (tokens.css only)
   --------------------------------------------------------------------------
   The prototype's CSS (tokens, fonts, base, home, plp, pdp, cart) is copied 1:1 (components/fulfilment is replaced by orderday-skin.css)
   and not edited. This file holds only what the prototype never had to style:
     1. bits WordPress / WooCommerce generate (notices, checkout fields, order review, my-account);
     2. the food information block on the PDP (Reg. 1169/2011 — the prototype had a placeholder);
     3. the Omnibus prior-lowest-price line beside a sale price (2019/2161);
     4. server pagination without JS (the prototype listed all 26 cards and hid `Rodyti daugiau`);
     5. plain pages (page.php, 404, index).
   Motion: colour only (--t-colour), no layout animation. No shadows.
   ========================================================================== */

/* ---------- 3 · Omnibus: `Mažiausia kaina per 30 d.: 3,49 €` — its own line under the price row ---------- */
.card__price .prior, .pdp__price .prior { flex: 1 0 100%; font-size: var(--fz-tag); font-weight: 400; color: var(--ink-soft); }
.pdp__price .prior { font-size: var(--fz-meta); }

/* ---------- 4 · paginated shop without JS: `Rodyti daugiau` is a real link to the next page ---------- */
html.no-js .plp-more { display: flex; }
.plp-more .btn { text-decoration: none; }
.plp__desc { max-width: var(--measure); margin: calc(-1 * var(--sp-3)) 0 var(--sp-6); color: var(--ink-soft); }
.plp__desc p + p { margin-top: var(--sp-2); }
[data-plp-results][aria-busy="true"] { opacity: .6; transition: opacity var(--t-colour) var(--ease-out); }

/* ---------- 2 · food information (inside .acc__body) ---------- */
.food__block { display: grid; gap: var(--sp-2); }
.food__h { font-size: var(--fz-ui); font-weight: 600; line-height: var(--lh-tight); text-align: left; caption-side: top; padding-bottom: var(--sp-2); }
.food__ingr { line-height: var(--lh-body); }
.food__ingr strong, .food__ingr b, .food__trace strong, .food__trace b { font-weight: 700; }   /* EU 1169/2011 art. 21: allergens emphasised */
.food__trace { font-size: var(--fz-meta); color: var(--ink-soft); }
.food__nutri { width: 100%; max-width: 420px; border-collapse: collapse; font-size: var(--fz-meta); font-variant-numeric: tabular-nums lining-nums; }
.food__nutri th, .food__nutri td { padding: 6px 0; border-bottom: 1px solid var(--line); text-align: left; font-weight: 400; vertical-align: baseline; }
.food__nutri td { text-align: right; white-space: nowrap; padding-left: var(--sp-4); }
.food__nutri tr.is-sub th { padding-left: var(--sp-4); color: var(--ink-soft); }
.food__facts { display: grid; gap: var(--sp-2); font-size: var(--fz-meta); }
.food__facts > div { display: grid; grid-template-columns: minmax(9ch, max-content) 1fr; gap: var(--sp-4); }
.food__facts dt { color: var(--ink-soft); }
.food__facts dd { margin: 0; color: var(--ink); }

/* ---------- 1a · Woo notices: one quiet band, never a coloured slab ---------- */
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-message, .woocommerce-info, .woocommerce-error, .woocommerce-notice {
  display: flex; flex-wrap: wrap; align-items: center; gap: var(--sp-2) var(--sp-4); margin: var(--sp-4) 0; padding: var(--sp-3) var(--sp-4);
  list-style: none; border-radius: var(--rad-m); background: var(--chrome); color: var(--ink); font-size: var(--fz-ui); }
.woocommerce-message { background: var(--success-tint); }
.woocommerce-error { background: var(--sale-tint); color: var(--ink); }
.woocommerce-error li + li { margin-top: var(--sp-1); }
.woocommerce-message .button, .woocommerce-info .button { order: 2; margin-left: auto; }
.woocommerce-message a:not(.button), .woocommerce-info a:not(.button), .woocommerce-error a:not(.button) { color: var(--link); text-underline-offset: 3px; }
[role="alert"]:focus { outline: none; }

/* ---------- 1b · Woo buttons → our rectangle (.btn--primary face) ---------- */
.woocommerce .button, .woocommerce button.button, .woocommerce a.button, .woocommerce input.button, #place_order {
  display: inline-flex; align-items: center; justify-content: center; gap: var(--sp-2); min-height: 40px; padding: 0 var(--sp-4);
  border-radius: var(--rad-s); border: 1px solid var(--line-strong); background: transparent; color: var(--ink);
  font: inherit; font-size: var(--fz-ui); font-weight: 500; line-height: var(--lh-ui); text-decoration: none; cursor: pointer;
  transition: background-color var(--t-colour), color var(--t-colour), border-color var(--t-colour), transform var(--t-press); transition-timing-function: var(--ease-out); }
.woocommerce .button:hover { border-color: var(--ink); }
.woocommerce .button:active, #place_order:active { transform: scale(.97); }
.woocommerce .button.alt, #place_order { background: var(--forest); border-color: var(--forest); color: var(--cream); }
.woocommerce .button.alt:hover, #place_order:hover { background: var(--forest-deep); border-color: var(--forest-deep); }
#place_order { width: 100%; min-height: 48px; margin-top: var(--sp-3); }
.woocommerce .button:disabled, .woocommerce .button.disabled { background: var(--surface); color: var(--ink-muted); border-color: var(--line); cursor: not-allowed; }

/* ---------- 1c · form fields (checkout, my-account, login) ---------- */
.woocommerce form .form-row { display: grid; gap: var(--sp-1); margin: 0 0 var(--sp-3); padding: 0; }
.woocommerce form .form-row label { font-size: var(--fz-meta); color: var(--ink-soft); line-height: var(--lh-tight); }
.woocommerce form .form-row label.checkbox, .woocommerce form .form-row .woocommerce-form__label-for-checkbox { display: flex; align-items: flex-start; gap: var(--sp-2); font-size: var(--fz-ui); color: var(--ink); }
.woocommerce form .form-row .required { color: var(--tomato-ink); text-decoration: none; border: 0; }
.woocommerce form .form-row .optional { color: var(--ink-muted); }
.woocommerce form .input-text, .woocommerce form select, .woocommerce form textarea,
.woocommerce-page form .input-text, .woocommerce-page form select, .woocommerce-page form textarea {
  width: 100%; min-height: var(--target-min); padding: 0 var(--sp-3); border: 1px solid var(--line-strong); border-radius: var(--rad-s);
  background: var(--surface); color: var(--ink); font: inherit; font-size: var(--fz-ui); }
.woocommerce form textarea { min-height: 96px; padding: var(--sp-2) var(--sp-3); line-height: var(--lh-body); }
.woocommerce form .input-text:focus-visible, .woocommerce form select:focus-visible, .woocommerce form textarea:focus-visible { outline: var(--focus-ring-w) solid var(--focus); outline-offset: var(--focus-ring-offset); }
.woocommerce form .form-row.woocommerce-invalid .input-text, .woocommerce form .form-row.woocommerce-invalid select { border-color: var(--sale); }
.woocommerce form .form-row-first, .woocommerce form .form-row-last { min-width: 0; }
@media (min-width: 600px) {
  .woocommerce-billing-fields__field-wrapper, .woocommerce-shipping-fields__field-wrapper, .woocommerce-address-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; column-gap: var(--sp-4); }
  .woocommerce-billing-fields__field-wrapper .form-row-wide, .woocommerce-shipping-fields__field-wrapper .form-row-wide, .woocommerce-address-fields__field-wrapper .form-row-wide { grid-column: 1 / -1; }
}
.woocommerce form input[type="checkbox"], .woocommerce form input[type="radio"] { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--forest); flex: none; }
/* selectWoo (Woo's country / state picker) in our field face */
.select2-container .select2-selection--single { height: var(--target-min); border: 1px solid var(--line-strong); border-radius: var(--rad-s); background: var(--surface); }
.select2-container .select2-selection--single .select2-selection__rendered { line-height: calc(var(--target-min) - 2px); padding-left: var(--sp-3); color: var(--ink); }
.select2-container .select2-selection--single .select2-selection__arrow { height: calc(var(--target-min) - 2px); }
.select2-dropdown { border-color: var(--line-strong); border-radius: var(--rad-s); }
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] { background: var(--forest); color: var(--cream); }

/* ---------- 1d · checkout: the cart page's two columns, details 7 / review 5 on the chrome card ---------- */
.checkoutpg .woocommerce-billing-fields > h3, .checkoutpg .woocommerce-shipping-fields > h3, .checkoutpg .woocommerce-additional-fields > h3, .checkoutpg #ship-to-different-address {
  font-family: var(--ff-body); font-size: var(--fz-h3); font-weight: 600; line-height: var(--lh-tight); margin: 0 0 var(--sp-4); }
.checkoutpg .col2-set { display: grid; gap: var(--sp-6); }
.checkoutpg__details { min-width: 0; }
.checkoutpg__sum > h2 { font-family: var(--ff-body); font-size: var(--fz-h3); font-weight: 600; }
.woocommerce-checkout-review-order-table { width: 100%; border-collapse: collapse; font-size: var(--fz-ui); font-variant-numeric: tabular-nums lining-nums; }
.woocommerce-checkout-review-order-table th, .woocommerce-checkout-review-order-table td { padding: var(--sp-2) 0; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; font-weight: 400; }
.woocommerce-checkout-review-order-table td:last-child, .woocommerce-checkout-review-order-table th:last-child { text-align: right; }
.woocommerce-checkout-review-order-table thead th { font-size: var(--fz-meta); color: var(--ink-soft); }
.woocommerce-checkout-review-order-table .product-quantity { color: var(--ink-soft); font-weight: 400; }
.woocommerce-checkout-review-order-table tfoot th { font-weight: 500; }
.woocommerce-checkout-review-order-table .order-total th, .woocommerce-checkout-review-order-table .order-total td { font-size: var(--fz-price); font-weight: 600; border-bottom: 0; }
.woocommerce-checkout-review-order-table .includes_tax, .woocommerce-checkout-review-order-table small { display: block; font-size: var(--fz-meta); color: var(--ink-soft); font-weight: 400; }
.woocommerce-checkout-review-order-table ul#shipping_method { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-1); }
.woocommerce-checkout-review-order-table ul#shipping_method li { display: flex; justify-content: flex-end; gap: var(--sp-2); }
#payment { margin-top: var(--sp-4); }
#payment ul.payment_methods { list-style: none; margin: 0; padding: 0; display: grid; gap: var(--sp-2); }
#payment ul.payment_methods > li { padding: var(--sp-3); border: 1px solid var(--line-strong); border-radius: var(--rad-m); background: var(--surface); }
#payment ul.payment_methods > li > label { font-weight: 500; cursor: pointer; }
#payment .payment_box { margin-top: var(--sp-2); font-size: var(--fz-meta); color: var(--ink-soft); }
#payment .payment_box p { margin: 0; }
.woocommerce-terms-and-conditions-wrapper { margin-top: var(--sp-4); font-size: var(--fz-meta); color: var(--ink-soft); }
.woocommerce-terms-and-conditions-wrapper a { color: var(--link); }
.woocommerce-form-login-toggle .woocommerce-info { margin-top: 0; }
.checkoutpg .shop_table, .checkoutpg .woocommerce-shipping-totals { background: transparent; }
@media (max-width: 899px) { .checkoutpg .cartpg__grid { grid-template-columns: 1fr; } }

/* ---------- 1e · my-account ---------- */
.page__content--account .woocommerce:has(> .woocommerce-MyAccount-navigation) { display: grid; grid-template-columns: minmax(0, 3fr) minmax(0, 9fr); gap: var(--sp-7); align-items: start; }
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.woocommerce-MyAccount-navigation a { display: block; padding: 10px var(--sp-3); border-radius: var(--rad-s); color: var(--ink); text-decoration: none; font-size: var(--fz-ui); font-weight: 500; transition: background-color var(--t-colour) var(--ease-out); }
.woocommerce-MyAccount-navigation a:hover { background: var(--chrome); }
.woocommerce-MyAccount-navigation .is-active a { background: var(--chip-active); color: var(--on-chip-active); }
.woocommerce-MyAccount-content { min-width: 0; display: grid; gap: var(--sp-4); }
.woocommerce-MyAccount-content a:not(.button) { color: var(--link); }
.page__content .shop_table, .woocommerce-orders-table, .woocommerce-table { width: 100%; border-collapse: collapse; font-size: var(--fz-ui); font-variant-numeric: tabular-nums lining-nums; }
.page__content .shop_table th, .page__content .shop_table td { padding: var(--sp-2) var(--sp-2) var(--sp-2) 0; border-bottom: 1px solid var(--line); text-align: left; font-weight: 400; }
.page__content .shop_table thead th { font-size: var(--fz-meta); color: var(--ink-soft); }
.woocommerce-form-login, .woocommerce-form-register, .woocommerce-ResetPassword { max-width: 440px; }
.u-columns.col2-set { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: var(--sp-7); }
.u-columns h2 { font-family: var(--ff-body); font-size: var(--fz-h3); font-weight: 600; margin-bottom: var(--sp-4); }
.woocommerce-Address address, .woocommerce-customer-details address { font-style: normal; line-height: var(--lh-body); }
@media (max-width: 899px) { .page__content--account .woocommerce:has(> .woocommerce-MyAccount-navigation) { grid-template-columns: 1fr; gap: var(--sp-5); } }

/* order received (thank-you) */
.woocommerce-order { display: grid; gap: var(--sp-5); }
.woocommerce-thankyou-order-received { font-family: var(--ff-display); font-weight: 600; font-size: var(--fz-moment); line-height: var(--lh-moment); }
.woocommerce-order-overview, .page__content .woocommerce-order-overview { list-style: none; margin: 0; padding: var(--sp-4); display: flex; flex-wrap: wrap; gap: var(--sp-3) var(--sp-6); border-radius: var(--rad-m); background: var(--chrome); font-size: var(--fz-meta); color: var(--ink-soft); }
.woocommerce-order-overview strong { display: block; color: var(--ink); font-size: var(--fz-ui); font-variant-numeric: tabular-nums lining-nums; }

/* ---------- 5 · plain pages ---------- */
.pg { padding-block: var(--sec-y-half) var(--sec-y); }
.page__wrap .crumbs { margin-bottom: var(--sp-4); }
.page__title { margin-bottom: var(--sp-5); }
.page__content { max-width: var(--measure); display: grid; gap: var(--sp-4); }
.page__content--account { max-width: none; }
.page__content h2 { margin-top: var(--sp-5); }
.page__content h3 { margin-top: var(--sp-3); }
.page__content ul, .page__content ol { padding-left: var(--sp-5); list-style: revert; display: grid; gap: var(--sp-1); }
.page__content a:not(.btn):not(.button) { color: var(--link); text-underline-offset: 3px; }
.page__content img { border-radius: var(--rad-m); }
.page__list { display: grid; gap: var(--sp-5); max-width: var(--measure); }
.page__item { font-family: var(--ff-body); font-size: var(--fz-h3); font-weight: 600; }
.page--404 { display: grid; gap: var(--sp-5); justify-items: start; }
.page__search { width: min(560px, 100%); }

/* ---------- ONE photo ground behind every product photograph (tokens.css --photo-ground, 01 §2) ----------
   The catalogue's own photos are mostly white-sweep cut-outs: `cover` on a white file paints a white box on the
   linen. `multiply` lets the ground show through the white (white × linen = linen) and leaves the produce
   untouched; a full-bleed photo only takes the faintest warm cast. Every frame that holds a product photo
   already sets `background: var(--photo-ground)` and `overflow: hidden`, so the blend has its ground. */
.card__media img, .pdp__pic img, .pdp__thumb img, .cart-row__img img, .farmbox__pic img { mix-blend-mode: multiply; }

/* the photo placeholder (any card, the PDP, plp.css's .plp-grid copy is the prototype's): the brand mark, quiet,
   over one line — it reads as a deliberate "photo coming" tile on the same ground, not a missing image */
.card__media:has(.card__pending) { text-decoration: none; }
.card__pending { display: grid; place-content: center; justify-items: center; gap: var(--sp-2); width: 100%; height: 100%; padding: var(--sp-3); font-size: var(--fz-meta); color: var(--ink-muted); text-decoration: none; text-align: center; }
.card__pending-mark { display: block; width: var(--sp-7); color: var(--line-strong); --bs-logo-leaf: var(--line-strong); }
.card__pending-mark svg { display: block; width: 100%; height: auto; }
.pdp__pic .card__pending-mark { width: calc(var(--sp-8) + var(--sp-4)); }

/* WordPress / Woo screen-reader text (`Privalomas` after the required asterisk, etc.) — same as base.css .vh */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
/* Woo's show-password toggle sits inside the field */
.woocommerce form .password-input { position: relative; display: block; }
.woocommerce form .show-password-input { position: absolute; top: 50%; right: var(--sp-2); width: 32px; height: 32px; transform: translateY(-50%); border: 0; border-radius: var(--rad-pill); background: transparent; cursor: pointer; }
/* an eye drawn by mask so it takes the text colour (Woo ships it as an icon-font glyph we do not load) */
.woocommerce form .show-password-input::after { content: ""; position: absolute; inset: 6px; background: var(--ink-soft); -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center / contain no-repeat; }
.woocommerce form .show-password-input.display-password::after { background: var(--ink); -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 4l16 16'/%3E%3C/svg%3E"); mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M4 4l16 16'/%3E%3C/svg%3E"); }
