/** Shopify CDN: Minification failed

Line 658:105 Unexpected "/"

**/
/* ═══════════════════════════════════════════════════════════════════
   yd-plp.css — THE ONE CARD + THE ONE SHEET (The Agentic Lab®, Part3 lane B · A, 2026-09-04)
   Load AFTER yd-custom.css and yd-wishlist.css (it overrides their §15 card rules and the heart seat).
   Tokens from assets/yd-config.css ONLY. Logical properties throughout; RTL first-class.
   Laws (02_architecture/SAWY_DESIGN_LAW.md): 17 card order · 18 card foot · 19 corner law · 20 card column ·
   21 stars on the card · 22 photo never faded · 24 odd last card centred · 25 one chip family · 26 one image ·
   33 one sheet / one checkmark / honest URL · A9 THE FIELD + 16px floor · 9 THE X.
   YourDoctor identity: indigo-700 ink, sky-500 light, the cross mark's radii (card 16 / badge pill), Poppins+Cairo.
   ═══════════════════════════════════════════════════════════════════ */

/* ═══ 1. THE ONE CARD — image tile + rows on the image's own edges (no outer box) ═══ */
.yd-card .card,
.yd-card .card--card,
.yd-card .card--standard .card__inner {
  border: 0;
  box-shadow: none;
  background: transparent;
  border-radius: 0;
  transform: none;
}
.yd-card .card--card:after,
.yd-card .card--standard .card__inner:after { content: none; }
.yd-card .card__inner {
  border-radius: var(--yd-radius-card);
  overflow: hidden;
  background: var(--yd-white);
  border: var(--yd-border-hairline);
  box-shadow: var(--yd-shadow-xs);
  transition: box-shadow var(--yd-duration-base), border-color var(--yd-duration-base);
}
.yd-card:hover .card__inner { box-shadow: var(--yd-shadow-md); border-color: transparent; }
.yd-card.card-wrapper:hover .card--card, .yd-card.card-wrapper:hover .card--standard .card__inner { transform: none; box-shadow: none; }
.yd-card.card-wrapper:hover .card--standard .card__inner { box-shadow: var(--yd-shadow-md); }
.yd-card .card__media {
  margin: 0;
  width: 100%;
  border-radius: 0;
  background: var(--yd-white);
  position: absolute;
}
/* law 26 · ONE IMAGE PER CARD: the second-image hover swap is retired; the single hover zoom is the whole motion */
.yd-card .card__media .media img + img { display: none !important; }
/* (the Part3 hover zoom rules stood here; retired by the owner 2026-09-04 below with !important, removed by the Part8 audit) */
/* law 22 · THE PHOTOGRAPH IS NEVER FADED — no opacity on sold out, ever */
.yd-card--sold-out .card__media, .yd-card--sold-out .card__media img { opacity: 1 !important; filter: none !important; }

/* law 20 · THE CARD COLUMN: every row sits on the image's edges — zero inset */
.yd-card .card--media .card__inner .card__content { padding: 0; }
.yd-card .card > .card__content { padding: var(--yd-sp-3) 0 0; }
.yd-card .card__information { padding: 0; text-align: start; }
.yd-card .card__heading { margin: 0; font-size: var(--yd-fs-small); font-weight: 600; line-height: 1.35; color: var(--yd-slate-900); }
.yd-card .card__heading a::after { border-radius: var(--yd-radius-card); }
/* law 17 · order: image → title → brand → price/rating */
.yd-card__brand {
  margin: var(--yd-sp-1) 0 0;
  font-size: var(--yd-fs-label);
  font-weight: 700;
  letter-spacing: var(--yd-track-label);
  text-transform: uppercase;
  color: var(--yd-slate-500);
  line-height: var(--yd-lh-label);
}
html[dir="rtl"] .yd-card__brand { letter-spacing: 0; text-transform: none; font-size: var(--yd-fs-small); }
.yd-card .card-information { text-align: start; }
/* law 21 · price and the rating seat share ONE line; the seat is short on the end side and always holds its height */
.yd-card__row { display: flex; align-items: center; justify-content: space-between; gap: var(--yd-sp-2); min-height: 24px; margin-top: var(--yd-sp-2); }
.yd-card__row .price { margin: 0; font-size: var(--yd-fs-small); font-weight: 700; color: var(--yd-indigo-700); }
.yd-card__row .price > * { line-height: 1.2; }
.yd-card__row .price__container { display: flex; flex-wrap: wrap; align-items: baseline; gap: 0 var(--yd-sp-2); }
.yd-card__row .price .price-item--regular.variant-item__old-price, .yd-card__row .price__sale .price-item--regular { font-size: var(--yd-fs-label); color: var(--yd-slate-400); text-decoration: line-through; font-weight: 500; }
.yd-card__row .price__sale .price-item--sale { color: var(--yd-sale-600); }
.yd-card__rating { flex: none; min-width: 18px; min-height: 18px; display: inline-flex; align-items: center; justify-content: flex-end; font-size: var(--yd-fs-label); color: var(--yd-slate-500); line-height: 1; }
.yd-card__rating .jdgm-prev-badge { display: inline-flex; align-items: center; gap: 4px; }
.yd-card__rating .jdgm-prev-badge__stars { font-size: 12px; line-height: 1; }
.yd-card__rating .jdgm-star { color: var(--yd-warning) !important; }
.yd-card__rating .jdgm-prev-badge__text { font-size: var(--yd-fs-label); color: var(--yd-slate-500); }
.yd-card__rating .jdgm-prev-badge[data-number-of-reviews="0"] { display: none; }
/* law 18 · THE CARD FOOT: one height, one line, both button kinds */
.yd-card .quick-add { margin-top: var(--yd-sp-3); }
.yd-card .quick-add__submit {
  min-height: 44px;
  height: 44px;
  padding-block: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  border-radius: var(--yd-radius-button);
  font-size: var(--yd-fs-small);
  font-weight: 700;
  letter-spacing: 0.01em;
}
/* law 22 · sold out = Zara grey chip and a grey foot; no strike, no fade */
.yd-card--sold-out .quick-add__submit,
.yd-card--sold-out .quick-add__submit[disabled] {
  --color-button: 242 243 245;
  --color-button-text: 94 114 161;
  background: var(--yd-slate-100);
  color: var(--yd-slate-500);
  opacity: 1;
  cursor: default;
}
.yd-card--sold-out .quick-add__submit::after { box-shadow: none !important; }
.yd-card--sold-out .price, .yd-card--sold-out .price .price-item { text-decoration: none; color: var(--yd-slate-500); }

/* ═══ 2. THE CORNER LAW — one 12px axis: [flag · play] top-start, heart top-end, 24px boxes on one centre line ═══ */
.yd-card__corner {
  position: absolute;
  z-index: 3;
  top: var(--yd-sp-3);
  display: flex;
  align-items: center;
  gap: var(--yd-sp-2);
  pointer-events: none;
}
.yd-card__corner--start { inset-inline-start: var(--yd-sp-3); }
.yd-card__corner:empty { display: none; }
/* law 25 · ONE chip family: the pill, 24px tall, 11px/700 caps, seated on the corner axis */
.yd-card__flag {
  display: inline-flex;
  align-items: center;
  height: 24px;
  padding-inline: 10px;
  border-radius: var(--yd-radius-badge);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  line-height: 1;
  white-space: nowrap;
}
html[dir="rtl"] .yd-card__flag { letter-spacing: 0; text-transform: none; font-size: var(--yd-fs-label); }
.yd-card__flag--sale { background: var(--yd-sale-500); color: var(--yd-white); }
.yd-card__flag--soldout { background: var(--yd-slate-100); color: var(--yd-slate-600); border: var(--yd-border-hairline); }
.yd-card .yd-play-badge {
  position: static;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.94);
  color: var(--yd-indigo-700);
  box-shadow: var(--yd-shadow-sm);
  display: grid;
  place-items: center;
  pointer-events: none;
}
.yd-card .yd-play-badge svg { margin-inline-start: 1px; }
/* the heart: 24px box on the same axis, hidden 44px hit area behind it (A10) */
.yd-card .card__media .yd-wishlist-btn--card {
  inset-inline-start: auto !important;
  inset-inline-end: calc(var(--yd-sp-2) - 5px) !important;
  top: calc(var(--yd-sp-2) - 5px) !important;
  width: 24px;
  height: 24px;
  background: rgba(255, 255, 255, 0.94);
  color: var(--yd-indigo-700);
  box-shadow: var(--yd-shadow-sm);
}
.yd-card .card__media .yd-wishlist-btn--card::before { content: ''; position: absolute; inset: -10px; border-radius: 50%; }
.yd-card .card__media .yd-wishlist-btn--card .yd-icon { width: 15px; height: 15px; }

/* ═══ 3. THE GRID — 2 up on the phone, the odd last card sits alone CENTRED at one column's width (law 24) ═══ */
.product-grid { --yd-grid-gap: var(--yd-sp-4); }
@media (max-width: 749px) {
  .product-grid.grid--2-col-tablet-down { column-gap: var(--yd-sp-3); row-gap: var(--yd-sp-6); }
  .product-grid.grid--2-col-tablet-down .grid__item { width: calc(50% - var(--yd-sp-3) / 2); max-width: calc(50% - var(--yd-sp-3) / 2); flex-grow: 0; }
  .product-grid.grid--2-col-tablet-down .grid__item:last-child:nth-child(odd) { margin-inline: auto; }
}
@media (min-width: 750px) { .product-grid { row-gap: var(--yd-sp-7); } }
/* desktop is the bigger twin (A10): type steps up with the card */
@media (min-width: 990px) {
  .yd-card .card__heading { font-size: var(--yd-fs-body); }
  .yd-card__row .price { font-size: var(--yd-fs-body); }
  .yd-card__row { min-height: 28px; }
}

/* ═══ 4. THE TOOLBAR — one pill, the honest count, active chips under ═══ */
.facets-container.facets-container-drawer,
.facets-container {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: space-between;
  gap: var(--yd-sp-3) var(--yd-sp-4);
  padding-block: var(--yd-sp-2) var(--yd-sp-5);
}
.facets-container .mobile-facets__wrapper { margin: 0; flex-grow: 0; }
.facets-container > facet-filters-form.facets { display: none !important; }   /* the desktop sort <select> and the desktop pills form retire: sort lives in the sheet, chips are one row */
.facets-container .active-facets-mobile { display: flex !important; }
.facets-container .product-count { margin: 0; text-align: end; }
.facets-container .product-count__text { font-size: var(--yd-fs-small); color: var(--yd-slate-500); }
.facets-container .active-facets { order: 3; margin: 0; gap: var(--yd-sp-2); }
.facets-container .active-facets__button { margin: 0; padding: 0; }
.facets-container span.active-facets__button-inner {
  box-shadow: none;
  border: var(--yd-border-hairline);
  border-radius: var(--yd-radius-badge);
  background: var(--yd-indigo-50);
  color: var(--yd-indigo-700);
  font-size: var(--yd-fs-label);
  font-weight: 600;
  padding: 6px 12px;
  min-height: 32px;
}
.facets-container .active-facets__button-remove { font-size: var(--yd-fs-label); color: var(--yd-slate-500); }
.facets-container .active-facets facet-remove:only-child { display: none; }

/* the pill: hairline, 44px, indigo ink; carries the active count */
.yd-sheet .mobile-facets__open-wrapper { list-style: none; }
.yd-sheet .mobile-facets__open-wrapper::-webkit-details-marker { display: none; }
.yd-sheet .mobile-facets__open-wrapper::before { content: none !important; }
.yd-sheet__pill {
  display: inline-flex;
  align-items: center;
  gap: var(--yd-sp-2);
  height: var(--yd-tap);
  padding-inline: var(--yd-sp-4) var(--yd-sp-5);
  border-radius: var(--yd-radius-button);
  border: 1px solid var(--yd-indigo-200);
  background: var(--yd-white);
  color: var(--yd-indigo-700);
  font-size: var(--yd-fs-small);
  font-weight: 700;
  cursor: pointer;
  transition: border-color var(--yd-duration-fast), background var(--yd-duration-fast);
}
.yd-sheet__pill:hover { border-color: var(--yd-indigo-400); background: var(--yd-indigo-50); }
.yd-sheet__pill.is-active { border-color: var(--yd-indigo-600); }
.yd-sheet__pill .svg-wrapper { display: inline-flex; width: 18px; height: 18px; }
.yd-sheet__pill .mobile-facets__open-label { font-size: inherit; font-weight: inherit; }
.yd-sheet__pill-count {
  display: inline-grid;
  place-items: center;
  min-width: 20px;
  height: 20px;
  padding-inline: 6px;
  border-radius: var(--yd-radius-badge);
  background: var(--yd-indigo-700);
  color: var(--yd-white);
  font-size: 11px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.yd-sheet .mobile-facets__close { display: none !important; }   /* the stock floating × retires: THE X lives in the sheet head */

/* ═══ 5. THE ONE SHEET — bottom sheet on the phone, side sheet from 750px; one close, one checkmark ═══ */
.yd-sheet .mobile-facets { background: rgba(20,27,60, 0.45); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.yd-sheet .mobile-facets__disclosure[open] > summary::before { background: transparent; }
.yd-sheet__panel.mobile-facets__inner {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  top: auto;
  width: 100%;
  max-width: none;
  max-height: min(86svh, 720px);
  height: auto;
  margin: 0;
  border: 0;
  border-radius: var(--yd-radius-media) var(--yd-radius-media) 0 0;
  background: var(--yd-white);
  box-shadow: var(--yd-shadow-lg);
  filter: none;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  transition: transform var(--yd-duration-base) var(--yd-ease-out);
}
.js .yd-sheet .disclosure-has-popup:not(.menu-opening) .yd-sheet__panel.mobile-facets__inner { transform: translateY(105%); }
.yd-sheet .menu-opening .yd-sheet__panel.mobile-facets__inner { transform: translateY(0); }
/* the grab line: the phone's own bottom-sheet idiom */
.yd-sheet__panel::before { content: none; }   /* no grip (Sawy 2026-09-07): THE X or the veil closes */
@media (min-width: 750px) {
  .yd-sheet__panel.mobile-facets__inner {
    inset-inline: auto 0;
    top: 0;
    bottom: 0;
    width: 420px;
    max-height: none;
    height: 100%;
    border-radius: 0;
    padding-bottom: 0;
  }
  .js .yd-sheet .disclosure-has-popup:not(.menu-opening) .yd-sheet__panel.mobile-facets__inner { transform: translateX(105%); }
  html[dir="rtl"].js .yd-sheet .disclosure-has-popup:not(.menu-opening) .yd-sheet__panel.mobile-facets__inner { transform: translateX(-105%); }
  .yd-sheet .menu-opening .yd-sheet__panel.mobile-facets__inner { transform: translateX(0); }
  .yd-sheet__panel::before { content: none; }
}

.yd-sheet__head.mobile-facets__header {
  flex: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--yd-sp-4);
  padding: var(--yd-sp-4) var(--yd-sp-5) var(--yd-sp-4);
  border-bottom: var(--yd-border-hairline);
}
.yd-sheet__head .mobile-facets__header-inner { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.yd-sheet__title.mobile-facets__heading { margin: 0; font-size: var(--yd-fs-h3); font-weight: 700; line-height: var(--yd-lh-h3); color: var(--yd-slate-900); }
.yd-sheet__count.mobile-facets__count { margin: 0; font-size: var(--yd-fs-label); color: var(--yd-slate-500); }

/* THE X (law 9) — the one close family: 30px hairline square, 12px glyph, hidden 44px hit; focus turns its own hairline ink, no second ring */
.yd-x { position: relative; display: inline-grid; place-items: center; width: var(--yd-tap); height: var(--yd-tap); padding: 0; margin: 0; border: 0; background: transparent; color: var(--yd-slate-900); cursor: pointer; flex: none; -webkit-tap-highlight-color: transparent; }
/* THE X LAW (Sawy 2026-09-07): THE PLUS turned 45 degrees, bare, is the X of every sheet on the site (the reels, the filter sheet, search, the bag toast) */
.yd-x .yd-plus, .yd-x .yd-x__plus { width: 20px; height: 20px; display: block; transform: rotate(45deg); transform-origin: 50% 50%; }
.yd-x:hover { background: transparent; }
.yd-x:active .yd-plus { opacity: 0.75; }   /* Part8: the press reads on opacity; transform belongs to THE X TURNS */
.yd-x:focus-visible { outline: none; box-shadow: none !important; border-color: var(--yd-indigo-700); }

.yd-sheet__body.mobile-facets__main {
  flex: 1 1 auto;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  padding: var(--yd-sp-2) var(--yd-sp-5) var(--yd-sp-5);
  display: block;
}
.yd-sheet__group { padding-block: var(--yd-sp-4); border-bottom: var(--yd-border-hairline); }
.yd-sheet__group:last-child { border-bottom: 0; }
.yd-sheet__label {
  margin: 0 0 var(--yd-sp-2);
  font-size: var(--yd-fs-label);
  font-weight: 700;
  letter-spacing: var(--yd-track-label);
  text-transform: uppercase;
  color: var(--yd-slate-500);
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: var(--yd-sp-3);
}
html[dir="rtl"] .yd-sheet__label { letter-spacing: 0; text-transform: none; font-size: var(--yd-fs-small); }
.yd-sheet__hint { font-weight: 500; letter-spacing: 0; text-transform: none; color: var(--yd-slate-400); font-size: var(--yd-fs-label); }
.yd-sheet__list { margin: 0; padding: 0; list-style: none; display: grid; }
.yd-sheet__item { margin: 0; }
/* THE ONE CHECKMARK — radio and checkbox wear the same 22px mark; checked = indigo fill, white tick */
.yd-sheet__option {
  position: relative;
  display: flex;
  align-items: center;
  gap: var(--yd-sp-3);
  min-height: var(--yd-tap);
  padding: 0;
  cursor: pointer;
  font-size: var(--yd-fs-body);
  color: var(--yd-slate-900);
}
.yd-sheet__option.is-disabled { color: var(--yd-slate-400); cursor: default; }
.yd-sheet__radio, .yd-sheet__check {
  position: absolute;
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
  pointer-events: none;
}
.yd-sheet__mark {
  flex: none;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  border: 1.5px solid var(--yd-slate-300);
  background: var(--yd-white);
  display: grid;
  place-items: center;
  transition: border-color var(--yd-duration-fast), background var(--yd-duration-fast);
}
.yd-sheet__mark::after {
  content: '';
  width: 12px;
  height: 12px;
  background: currentColor;
  color: var(--yd-white);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/></svg>") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'><path d='M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z'/></svg>") center / contain no-repeat;
  transform: scale(0);
  transition: transform var(--yd-duration-fast) var(--yd-ease-out);
}
.yd-sheet__option:hover .yd-sheet__mark { border-color: var(--yd-indigo-400); }
.yd-sheet__radio:checked ~ .yd-sheet__mark, .yd-sheet__check:checked ~ .yd-sheet__mark { background: var(--yd-indigo-700); border-color: var(--yd-indigo-700); }
.yd-sheet__radio:checked ~ .yd-sheet__mark::after, .yd-sheet__check:checked ~ .yd-sheet__mark::after { transform: scale(1); }
.yd-sheet__radio:focus-visible ~ .yd-sheet__mark, .yd-sheet__check:focus-visible ~ .yd-sheet__mark { box-shadow: var(--yd-focus-ring); }
.yd-sheet__text { flex: 1 1 auto; display: flex; align-items: baseline; justify-content: space-between; gap: var(--yd-sp-3); min-width: 0; }
.yd-sheet__n { font-size: var(--yd-fs-label); color: var(--yd-slate-400); font-variant-numeric: tabular-nums; }
.yd-sheet__swatch { flex: none; width: 18px; height: 18px; border-radius: 50%; border: var(--yd-border-hairline); background-size: cover; }
/* price range: THE FIELD (A9) — 48px, 16px type, hairline to ink on focus, no second ring, currency seated */
.yd-sheet__price { display: grid; grid-template-columns: 1fr 1fr; gap: var(--yd-sp-3); align-items: start; }
.yd-sheet__price .field { margin: 0; }
.yd-sheet__price .field__input { min-height: 48px; height: 48px; font-size: 1.6rem; border-radius: var(--yd-radius-input); }   /* 10px rem: 1.6rem = 16px (iOS zoom floor) */
.yd-sheet input.field__input, .facets__price .field__input, .facets-container .field__input { font-size: 16px; }   /* Part11 (THE AUDIT): the price fields measured 15px; THE 16PX FLOOR */
.yd-sheet__price .field__input:focus { box-shadow: 0 0 0 1.5px var(--yd-indigo-700) !important; outline: none; }
.yd-sheet__price .field:after { content: none; }
.yd-sheet__price .field-currency { display: none; }   /* the currency is already in the label hint (max price) */
.yd-sheet__price .field__input::placeholder { color: var(--yd-slate-400); }

.yd-sheet__foot.mobile-facets__footer {
  flex: none;
  position: static;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--yd-sp-4);
  padding: var(--yd-sp-4) var(--yd-sp-5);
  border-top: var(--yd-border-hairline);
  background: var(--yd-white);
  box-shadow: none;
}
.yd-sheet__foot > * + * { margin: 0; }
.yd-sheet__clear { font-size: var(--yd-fs-small); font-weight: 600; color: var(--yd-slate-600); text-decoration: underline; text-underline-offset: 3px; }
.yd-sheet__apply.button { margin: 0; min-height: 48px; padding-inline: var(--yd-sp-7); border-radius: var(--yd-radius-button); }

/* motion law: reduced motion renders the final state directly */
@media (prefers-reduced-motion: reduce) {
  .yd-sheet__panel.mobile-facets__inner, .yd-sheet__mark, .yd-sheet__mark::after, .yd-card .card__media .media img { transition: none; }
}

/* ═══ PART3 AUDIT ROUND 1 (A) ═══ */
/* #7 law 18 THE CARD FOOT: the title takes exactly two lines, the foot pins to the card's bottom, every row in a grid row shares one line */
.yd-card, .yd-card .card-wrapper, .yd-card .card { height: 100%; }
.yd-card .card { display: flex; flex-direction: column; }
.yd-card .card > .card__content { display: flex; flex-direction: column; flex: 1 1 auto; }
.yd-card .card__information { display: flex; flex-direction: column; flex: 1 1 auto; }
.yd-card .card__heading { min-height: calc(2 * 1.35 * var(--yd-fs-small)); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.yd-card .quick-add, .yd-card .card .quick-add, .yd-card .card__content .quick-add { margin-top: auto; padding-top: 0; margin-bottom: 0 !important; }   /* Part10 (Sawy 2026-09-06 02:33, "extra space above the quantity pill, kill this"): the foot's own 12 is the whole gap under the price (was 12 + 12 + Dawn's 10 under), the card ends 12 under the button */
/* #8 law 25 ONE add-to-cart idiom sitewide = the filled indigo pill (the reels chip's), full card width */
.yd-card .quick-add__submit { background: var(--yd-indigo-600); color: var(--yd-white); border: 0; min-height: 44px; width: 100%; margin: 0; }
.yd-card .quick-add__submit:hover { background: var(--yd-indigo-700); color: var(--yd-white); }
.yd-card .quick-add__submit::after { box-shadow: none !important; }
/* Part3 close (A): the heart was under Dawn's whole-card link (`.card__heading a::after`, painted above the `.card__inner` stacking
   context), so a tap opened the product. The inner lifts above the link but lets taps pass through to it; only the corner controls catch. */
.yd-card .card__inner { z-index: 2; pointer-events: none; }
.yd-card .card__inner .yd-card__corner, .yd-card .card__inner [data-yd-wishlist], .yd-card .card__inner button, .yd-card .card__inner .yd-wishlist-heart { pointer-events: auto; }

/* ═══ CROP SWEEP (Lane U, A 2026-09-04) — THE PRODUCT IS NEVER CUT ═══
   The 4:5 card frame (Dawn `--ratio-percent: 125%`) covered 13 square packshots and cut every one of them (00_admin/PART3_CROP_SWEEP.md).
   One square frame sitewide, the photograph CONTAINED on white with 4% air; a 4:5 packshot gets quiet side bands instead of a cut. */
.yd-card .card__inner.ratio::before { padding-bottom: 133.3333% !important; }   /* Part10 (Sawy 2026-09-06 02:26, "fully shown… zoom out so it is fully visible and centered"): every featured image is now a 3:4 YourDoctor plate (1792 x 2389), so the frame is 3:4 and the plate fills it edge to edge with nothing cut; the square frame of the crop sweep served the old square packshots, which are second images now */
.yd-card .card__media { inset: 0; height: auto; }                          /* Dawn's card--card rule pinned `bottom` to the inner height → 0px media in the related/empty rails */
.yd-card .card__media .media { position: absolute; inset: 0; padding: 0 !important; overflow: hidden; }
.yd-card .card__media .media img { object-fit: contain; padding: 4%; background: var(--yd-white); box-sizing: border-box; }
/* THE STARS on the card: indigo, 14px, seated on the price line (owner 2026-09-04) */
.yd-card__rating .yd-stars__row { color: var(--yd-indigo-500); gap: 1px; }
.yd-card__rating .jdgm-star { color: var(--yd-indigo-500) !important; font-size: 13px; }
.yd-card__rating .jdgm-prev-badge__text { display: none; }
/* THE STATES on the card (owner 2026-09-04): the flag is the same chip family as the PDP, 22px, 6px corner; sale price sale-600 with the
   old price struck slate-400 beside it; sold-out photo never faded, "Add to cart" becomes a quiet "Notify me" door. */
.yd-card__flag { height: 22px; padding: 0 8px; border-radius: 6px; font: 700 11px/22px var(--yd-font); letter-spacing: 0.06em; text-transform: uppercase; }
.yd-card__flag--sale { background: var(--yd-sale-500); color: var(--yd-white); }
.yd-card__flag--soldout { background: var(--yd-slate-100); color: var(--yd-slate-600); box-shadow: inset 0 0 0 1px var(--yd-slate-200); border: 0; }
.yd-card__row .price__sale { display: inline-flex; align-items: baseline; gap: 6px; }
.yd-card__row .price__sale .price-item--sale { color: var(--yd-sale-600); }
.yd-card__row .price__sale .price-item--regular { text-decoration: line-through; color: var(--yd-slate-400); font-size: var(--yd-fs-label); font-weight: 500; }
.yd-card--sold-out .card__media img, .yd-card--sold-out .card__inner img { opacity: 1 !important; filter: none !important; }
.yd-card--sold-out .quick-add__submit, .yd-card--sold-out .quick-add__submit[disabled] { background: var(--yd-white); color: var(--yd-indigo-700); box-shadow: inset 0 0 0 1.5px var(--yd-indigo-200); opacity: 1; cursor: pointer; }
.yd-card--sold-out .price .price-item { text-decoration: none; }
/* one flag family only: Dawn's own badges retire from the card; a sold-out card shows one price, un-struck */
.yd-card .card__badge, .yd-card .badge:not(.yd-card__flag) { display: none !important; }
.yd-card .price--sold-out .price__sale { display: none !important; }
.yd-card .price--sold-out .price__regular { display: inline-flex !important; }
.yd-card .price--sold-out .price-item { color: var(--yd-slate-500); text-decoration: none; }
/* THE CARD COLUMN, the foot too: the button sits on the image's own edges (Dawn inset it 13px) */
.yd-card .quick-add, .yd-card .card__content .quick-add { margin-left: 0 !important; margin-right: 0 !important; }
.yd-card__rating .yd-stars__row { color: var(--yd-indigo-500); }

/* ═══ THE CARD, confined (owner 2026-09-04): one invisible box holds everything; the heart, the chips and the counter are indigo ═══ */
.yd-card .card-wrapper, .yd-card > .card-wrapper { display: block; }
.yd-card .card { border: 1px solid var(--yd-slate-200); border-radius: 16px; padding: 10px 10px 12px; background: var(--yd-white); box-shadow: none; }
.yd-card .card__inner { border-radius: 12px; overflow: hidden; background: var(--yd-slate-50); }
.yd-card .card > .card__content { padding: 12px 2px 0; }
.yd-card .card__heading { font-size: 14px; line-height: 1.35; min-height: calc(2 * 1.35 * 14px); }
.yd-card__row { margin-top: 6px; }
.yd-card__rating { order: 0; }
/* THE HEART: indigo, on a white disc */
.yd-card .yd-wishlist-btn--card { background: var(--yd-white); color: var(--yd-indigo-600); box-shadow: 0 1px 3px rgba(20,27,60,0.12); }
.yd-card .yd-wishlist-btn--card svg { color: var(--yd-indigo-600); }
.yd-card .yd-wishlist-btn--card[aria-pressed="true"] { color: var(--yd-indigo-600); }
.yd-card .yd-wishlist-btn--card[aria-pressed="true"] .yd-wishlist-btn__on svg { color: var(--yd-indigo-600); fill: currentColor; }
/* THE CHIPS: the buttons' own pill, indigo. Sale = indigo-600 fill; sold out = indigo-50 pale with indigo-700 text. Never red. */
.yd-card__flag { height: 24px; padding: 0 10px; border-radius: 999px; font: 700 11px/24px var(--yd-font); letter-spacing: 0.04em; text-transform: uppercase; box-shadow: none; border: 0; }
.yd-card__flag--sale { background: var(--yd-indigo-600); color: var(--yd-white); }
.yd-card__flag--soldout { background: var(--yd-indigo-50); color: var(--yd-indigo-700); box-shadow: inset 0 0 0 1px var(--yd-indigo-100); }
.yd-card__row .price__sale .price-item--sale { color: var(--yd-indigo-700); }
/* THE FOOT: counter + Add to cart on one 44px line, on the card's inner edges */
.yd-card__foot { display: flex; gap: 8px; align-items: stretch; margin-top: 12px; }
.yd-card .quick-add, .yd-card .quick-add .form { width: 100%; }
.yd-card__qty { flex: 0 0 auto; display: inline-flex; align-items: center; height: 44px; min-height: 44px; width: auto; border: 1px solid var(--yd-slate-200); border-radius: 999px; background: var(--yd-white); box-shadow: none; overflow: hidden; }
.yd-card__qty::before, .yd-card__qty::after { content: none !important; }
.yd-card__qty-btn, .yd-card__qty .quantity__button { width: 32px; height: 42px; min-width: 32px; padding: 0; border: 0; background: transparent; color: var(--yd-indigo-700); display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.yd-card__qty-btn svg { width: 14px; height: 14px; }
.yd-card__qty-input, .yd-card__qty .quantity__input { width: 28px; min-width: 28px; height: 42px; padding: 0; border: 0; background: transparent; text-align: center; font: 700 16px/1 var(--yd-font); color: var(--yd-slate-900); -webkit-text-fill-color: var(--yd-slate-900); opacity: 1; -moz-appearance: textfield; appearance: textfield; }   /* Part11 (THE AUDIT): 16px, never 14: iOS Safari zooms the page on a smaller field (law A9 THE 16PX FLOOR) */
.yd-card__qty-input::-webkit-inner-spin-button, .yd-card__qty-input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.yd-card__foot .quick-add__submit { flex: 1 1 auto; width: auto !important; min-height: 44px; margin: 0 !important; border-radius: 999px; font-size: 14px; }
.yd-card--sold-out .yd-card__foot .quick-add__submit { width: 100% !important; }
html[dir="rtl"] .yd-card__flag { letter-spacing: 0; text-transform: none; }
/* THE FOOT, stacked (owner 2026-09-04): counter pill first, then the product page's Add to cart, same width, same 44px height */
.yd-card__foot { flex-direction: column; gap: 8px; align-items: stretch; }
.yd-card__qty { width: 100%; justify-content: space-between; height: 44px; }
.yd-card__qty-btn, .yd-card__qty .quantity__button { width: 44px; }
.yd-card__qty-input, .yd-card__qty .quantity__input { flex: 1 1 auto; width: auto; }
.yd-card__foot .quick-add__submit { width: 100% !important; min-width: 0 !important; min-height: 44px; height: 44px; padding: 0 16px; background: var(--yd-indigo-600); color: var(--yd-white); }
.yd-card__foot .quick-add__submit .add-to-cart-icon, .yd-card__foot .quick-add__submit .add-to-cart-icon svg { width: 16px; height: 16px; }
.yd-card__foot .quick-add__submit[disabled] { background: var(--yd-white); color: var(--yd-indigo-700); box-shadow: inset 0 0 0 1.5px var(--yd-indigo-200); }
.yd-card__foot .quick-add__submit[aria-disabled="true"] { background: var(--yd-indigo-600) !important; color: var(--yd-white) !important; opacity: 1; }
/* the invisible box, forced past Dawn's card recipe; the heart in indigo, forced past the wishlist sheet */
.yd-card .card, .yd-card .card.card--card, .yd-card .card.card--standard { border: 1px solid var(--yd-slate-200) !important; border-radius: 16px !important; }
.yd-card .yd-wishlist-btn--card, .yd-card .yd-wishlist-btn--card[aria-pressed="true"], .yd-card .yd-wishlist-btn--card svg, .yd-card .yd-wishlist-btn--card[aria-pressed="true"] svg { color: var(--yd-indigo-600) !important; }
/* THE HEART, bare (owner 2026-09-04): no disc, a 26px indigo heart alone in the corner; saved = filled */
.yd-card .yd-wishlist-btn--card { width: 36px; height: 36px; background: transparent !important; box-shadow: none !important; border: 0; padding: 0; display: inline-flex; align-items: center; justify-content: center; }
.yd-card .yd-wishlist-btn--card svg { width: 26px; height: 26px; }
.yd-card .yd-wishlist-btn--card:hover { background: transparent !important; transform: none; }
.yd-card .yd-wishlist-btn--card .yd-mark { stroke-width: 1.6; filter: drop-shadow(0 1px 1px rgba(255,255,255,0.9)); }
/* same foot geometry on every card: a sold-out card keeps its counter, paled and inert */
.yd-card__qty--off { background: var(--yd-slate-50); border-color: var(--yd-slate-200); pointer-events: none; }
.yd-card__qty--off .yd-card__qty-btn, .yd-card__qty--off .yd-card__qty-input { color: var(--yd-slate-300); -webkit-text-fill-color: var(--yd-slate-300); }
/* the heart, bare and 26px, past the wishlist sheet's 24px box */
.yd-card .card__media .yd-wishlist-btn--card, .yd-card .yd-card__corner .yd-wishlist-btn--card, .yd-card .yd-wishlist-btn.yd-wishlist-btn--card { width: 36px !important; height: 36px !important; min-width: 36px; }
.yd-card .yd-wishlist-btn.yd-wishlist-btn--card svg { width: 26px !important; height: 26px !important; }
/* THE INVISIBLE LINES (owner 2026-09-04): the tile, the title, the price line and both pills share the same two vertical edges */
.yd-card .card > .card__content { padding: 12px 0 0 !important; }
.yd-card .card__information, .yd-card .yd-card__row, .yd-card .yd-card__foot, .yd-card .quick-add { padding-inline: 0 !important; margin-inline: 0 !important; }

/* ═══ THE CARD to THE RECIPE (02_architecture/THE_CARD_RECIPE.md, transcribed) ═══ */
.yd-card .card { isolation: isolate; overflow: hidden; }
/* (the recipe's hover zoom stood here; the owner's no-motion rule below wins with !important; removed by the Part8 audit) */
.yd-card .yd-wishlist-btn--card .yd-mark { filter: none; }
/* order: title → stars (4px under) → price (8px under) */
.yd-card__rating--line { display: flex; margin-top: 4px; min-height: 16px; }
.yd-card__rating--line .yd-stars__row { color: var(--yd-indigo-500); gap: 1px; }
.yd-card__rating--line .yd-stars__star { width: 13px; height: 13px; }
.yd-card__row { margin-top: 8px; min-height: 20px; }
.yd-card__row .price { font-size: 16px; font-weight: 700; color: var(--yd-indigo-700); }
.yd-card__row .price__sale .price-item--sale { font-size: 16px; color: var(--yd-indigo-700); }
.yd-card__row .price__sale .price-item--regular { font-size: 13px; font-weight: 500; }
.yd-card__foot { margin-top: 10px; }
/* THE RETURN SLOT: sold out = the same two 44px bands; the counter and the dead button leave, the field and NOTIFY ME take them */
.yd-card--sold-out .yd-card__qty, .yd-card--sold-out .yd-card__foot .quick-add__submit { display: none !important; }
.yd-card__return { display: flex; flex-direction: column; gap: 8px; width: 100%; }
.yd-card__return-field { height: 44px; width: 100%; padding: 0 16px; border: 1px solid var(--yd-slate-200); border-radius: 999px; background: var(--yd-white); font-size: 16px; color: var(--yd-slate-900); -webkit-text-fill-color: var(--yd-slate-900); outline: none; box-shadow: none; }
.yd-card__return-field::placeholder { color: var(--yd-slate-400); opacity: 1; }
.yd-card__return-field:focus { border-color: var(--yd-indigo-600); }
.yd-card__return-btn { height: 44px; min-height: 44px; width: 100%; border-radius: 999px; background: var(--yd-white); color: var(--yd-indigo-700); box-shadow: inset 0 0 0 1.5px var(--yd-indigo-600); font-size: 14px; font-weight: 700; margin: 0; }
.yd-card__return-btn::after { content: none !important; }
.yd-card__return-btn:hover { background: var(--yd-indigo-50); color: var(--yd-indigo-700); }
.yd-card__return.is-saved .yd-card__return-field { display: none; }
.yd-card__return.is-saved .yd-card__return-btn { background: var(--yd-indigo-600); color: var(--yd-white); box-shadow: none; pointer-events: none; }
.yd-card__return.is-error .yd-card__return-field { border-color: var(--yd-error); }
/* the stars line sits on the start edge under the title (recipe: 4px under, left) */
.yd-card__rating--line { justify-content: flex-start; }
/* owner 2026-09-04 (three orders): no hover motion on the tile; every photo fills the tile the same way (cover); one price on a
   regular product (Dawn prints both blocks, the sale one is only for sale) */
.yd-card .card__inner img { transition: none !important; transform: none !important; }
.yd-card .card:hover .card__inner img { transform: none !important; }
.yd-card .card__inner .card__media img, .yd-card .card__inner img { object-fit: cover !important; padding: 0 !important; }
.yd-card__row .price:not(.price--on-sale) .price__sale { display: none !important; }
.yd-card__row .price:not(.price--on-sale) .price__regular { display: inline-flex !important; }
.yd-card__row .price.price--on-sale .price__regular { display: none !important; }
/* the saved return slot keeps both bands (the field shows the email, paled and inert); the geometry never shifts */
.yd-card__return.is-saved .yd-card__return-field { display: block; background: var(--yd-slate-50); color: var(--yd-slate-500); -webkit-text-fill-color: var(--yd-slate-500); border-color: var(--yd-slate-200); pointer-events: none; }
/* the restock field speaks the card's own voice: Poppins 14/600, placeholder slate-400, centred like the counter's value */
.yd-card__return-field, .yd-card__return-field::placeholder { font-family: var(--yd-font); font-size: 14px; font-weight: 600; letter-spacing: 0; text-align: center; }
.yd-card__return-field { color: var(--yd-slate-900); -webkit-text-fill-color: var(--yd-slate-900); }
.yd-card__return-field::placeholder { color: var(--yd-slate-400); -webkit-text-fill-color: var(--yd-slate-400); opacity: 1; }
html[dir="rtl"] .yd-card__return-field, html[dir="rtl"] .yd-card__return-field::placeholder { font-family: var(--yd-font-arabic); }
/* compact rows (owner 2026-09-04): no reserved blank line under a short title; stars 4px under, price 6px under; the foot
   still pins to the card's bottom line so every card in a row keeps one foot line */
.yd-card .card__heading { min-height: 0 !important; }
.yd-card__rating--line { margin-top: 4px; }
.yd-card__row { margin-top: 6px; }
.yd-card__foot { margin-top: auto; padding-top: 12px; }
/* the counter's focus: no box on the number (Dawn's outline + the quantity-input ::after ring retire); the pill itself turns indigo */
.yd-card__qty .quantity__input:focus, .yd-card__qty .quantity__input:focus-visible, .yd-card__qty-input:focus, .yd-card__qty-input:focus-visible { outline: none !important; box-shadow: none !important; border: 0 !important; background: transparent !important; }
.yd-card__qty:focus-within { border-color: var(--yd-indigo-600); }
.yd-card__qty .quantity__button:focus, .yd-card__qty .quantity__button:focus-visible { outline: none !important; box-shadow: none !important; }
.yd-card__qty::after, .yd-card__qty::before, .yd-card__qty .quantity__button::after, .yd-card__qty .quantity__button::before { content: none !important; display: none !important; }
.yd-card__qty .quantity__button:active { background: var(--yd-indigo-50); }
/* Dawn's quantity-input reads event.target.name: a tap on the glyph inside the button reached the SVG, not the button, so
   nothing counted. The glyphs no longer take the pointer. */
.yd-card__qty .quantity__button svg, .yd-card__qty .quantity__button .yd-icon, .yd-card__qty .quantity__button * { pointer-events: none; }

/* THE LONG NAMES (Sawy 2026-09-07, the official titles): every name visible on three lines at 13px/1.2 inside the SAME card height.
   The title box grows 37.8 → 46.8 (+9); the content's top pad gives 4 (12 → 8) and the foot's top gives 5 (10 → 5). Measured: 463 → 463. */
.yd-card .card__heading { font-size: 13px; line-height: 15.6px; height: 46.8px; min-height: 0; -webkit-line-clamp: 3; }   /* a fixed box: a fallback glyph can never lift a line, every card the same height */
.yd-card .card > .card__content { padding-top: 8px; }
.yd-card__foot { margin-top: 5px; }

/* ═══ THE FILTER SHEET v2 (Sawy 2026-09-07, "the full filtering features like BLNCO"): groups fold on THE PLUS, values are pills,
   the foot reads Clear all + View N products with facets.js's own live count; no grip; THE X is THE PLUS turned. ═══ */
.yd-sheet__label { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; margin: 0 0 4px; padding: 0; text-align: start; }   /* plain labels, groups always open (Sawy 2026-09-07: no plus on every tab) */
.yd-sheet__label .yd-sheet__hint { margin-inline-start: auto; }
.yd-sheet__fold { display: grid; grid-template-rows: 1fr; transition: grid-template-rows 320ms cubic-bezier(0.32, 0.72, 0, 1); }
.yd-sheet__fold-in { min-height: 0; overflow: hidden; }
.yd-sheet__group.is-closed .yd-sheet__fold { grid-template-rows: 0fr; }
.yd-sheet__list { display: flex; flex-wrap: wrap; gap: 8px; padding-top: 6px; }
.yd-sheet__item { margin: 0; }
.yd-sheet__option { position: relative; display: inline-flex; align-items: center; gap: 6px; height: 40px; padding-inline: 14px; border-radius: 999px; border: 1px solid var(--yd-slate-200); background: var(--yd-white); color: var(--yd-slate-800); font-size: 12px; font-weight: 600; letter-spacing: 0.01em; cursor: pointer; transition: background var(--yd-duration-fast), color var(--yd-duration-fast), border-color var(--yd-duration-fast); -webkit-tap-highlight-color: transparent; }
.yd-sheet__option .yd-sheet__mark { display: none; }
.yd-sheet__option .yd-sheet__n { display: none; }
.yd-sheet__option .yd-sheet__text { display: inline; font-size: inherit; }
.yd-sheet__check, .yd-sheet__radio { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.yd-sheet__option:hover { border-color: var(--yd-indigo-400); background: var(--yd-indigo-50); color: var(--yd-indigo-700); }
.yd-sheet__option:has(input:checked) { background: var(--yd-indigo-600); border-color: var(--yd-indigo-600); color: var(--yd-white); }
.yd-sheet__option:has(input:focus-visible) { outline: 2px solid var(--yd-sky-500); outline-offset: 2px; }
.yd-sheet__option.is-disabled { display: none; }
.yd-sheet__apply { display: inline-flex; align-items: center; justify-content: center; gap: 6px; white-space: nowrap; }
.yd-sheet__apply-count { font-weight: 700; }
html[dir="rtl"] .yd-sheet__option { letter-spacing: 0; }
@media (prefers-reduced-motion: reduce) { .yd-sheet__fold, .yd-sheet__option { transition: none; } }
/* the head (Sawy 2026-09-07): the mark in a 44 well, the name 18/700 and the count under it, everything on the start edge; THE X on the end edge */
.yd-sheet__head.mobile-facets__header { display: flex; align-items: center; justify-content: flex-start; gap: 12px; text-align: start; padding: 14px 16px 12px; }
.yd-sheet__head .yd-sheet__icon { width: 44px; height: 44px; border-radius: 14px; background: var(--yd-indigo-50); color: var(--yd-indigo-600); display: grid; place-items: center; flex: none; }
.yd-sheet__head .mobile-facets__header-inner { flex: 1 1 auto; align-items: flex-start; text-align: start; }
.yd-sheet__title.mobile-facets__heading { font-size: 18px; line-height: 1.2; text-align: start; }
.yd-sheet__count.mobile-facets__count { text-align: start; }
.yd-sheet__head .yd-x { margin-inline-start: auto; }
/* the View button: every word white, the count included (facets.js swaps the count element with the head's grey copy on each render) */
.yd-sheet__apply .mobile-facets__count, .yd-sheet__apply .yd-sheet__count, .yd-sheet__apply p { display: inline; margin: 0; color: var(--yd-white) !important; font-size: inherit; font-weight: 700; }
/* FULL SCREEN (Sawy 2026-09-07): the sheet takes the whole phone, so nothing behind it can take a tap; the veil rides above the headstack */
@media (max-width: 749px) {
  .yd-sheet .mobile-facets { position: fixed; inset: 0; z-index: 1002; }
  .yd-sheet__panel.mobile-facets__inner { top: 0; bottom: 0; height: 100dvh; max-height: none; border-radius: 0; padding-top: env(safe-area-inset-top, 0px); }
}
@media (min-width: 750px) { .yd-sheet .mobile-facets { z-index: 1002; } }
/* THE PRICE (Sawy 2026-09-07): two seat fields, the currency inside, From and To as captions above */
.yd-sheet__price.facets__price { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 6px 0 2px; }
.yd-sheet__price .field-currency { display: none; }
.yd-sheet__price .field { position: relative; display: flex; flex-direction: column-reverse; align-items: stretch; gap: 6px; margin: 0; text-align: start; }
.yd-sheet__price .field__label, .yd-sheet__price .field__input:focus ~ .field__label, .yd-sheet__price .field__input:not(:placeholder-shown) ~ .field__label { position: static; transform: none; align-self: flex-start; text-align: start; left: auto; top: auto; font-size: 11px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--yd-slate-500); padding: 0; margin: 0; }
html[dir="rtl"] .yd-sheet__price .field__label { letter-spacing: 0; text-transform: none; font-size: 12px; }
.yd-sheet__price .field__input, .yd-sheet__price .field__input:focus { height: 48px; min-height: 48px; padding: 0 14px 0 44px; border: 1px solid var(--yd-slate-200); border-radius: 14px; background: var(--yd-white); font: 600 15px var(--yd-font); color: var(--yd-slate-900); box-shadow: none; outline: none; }
.yd-sheet__price .field__input:focus { border-color: var(--yd-indigo-600); }
.yd-sheet__price .field__input::placeholder { color: var(--yd-slate-400); opacity: 1; }
.yd-sheet__price .field::before { content: attr(data-currency); position: absolute; left: 14px; top: auto; bottom: 0; height: 48px; line-height: 48px; margin: 0; padding: 0; width: auto; border: 0; background: transparent; font: 700 12px/48px var(--yd-font); color: var(--yd-indigo-700); pointer-events: none; z-index: 1; }   /* Part8: verify the prefix sits inside the input (it rendered on the label row in the Part7 close) */
html[dir="rtl"] .yd-sheet__price .field__input { padding: 0 44px 0 14px; }
html[dir="rtl"] .yd-sheet__price .field::before { left: auto; right: 14px; }
.yd-sheet__price .field::after { content: none; }
/* THE PRICE, the owner's call (Sawy 2026-09-07, Part7 close): From and To live INSIDE the box as its placeholder, the currency inside on the start edge, nothing above the box */
.yd-sheet__price .field { flex-direction: column; gap: 0; }
.yd-sheet__price .field__label, .yd-sheet__price .field__input:focus ~ .field__label, .yd-sheet__price .field__input:not(:placeholder-shown) ~ .field__label { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); margin: 0; padding: 0; }
.yd-sheet__price .field__input::placeholder { color: var(--yd-slate-500); font-weight: 600; }
.yd-sheet__price .field::before { top: 0; bottom: auto; }
/* Part8 (verified on the CDN, 2026-09-05): the input drops Dawn's 1px shadow margins so LE and the value share one 48px centre line;
   RTL: LE on the right edge and the value starts beside it (yd-rtl.css's generic .field__input padding-right loses on specificity) */
.yd-sheet__price .field__input, .yd-sheet__price .field__input:focus { margin: 0; }
html[dir="rtl"] .yd-sheet__price .field .field__input:not(.yd-search__input), html[dir="rtl"] .yd-sheet__price .field .field__input:focus { padding: 0 44px 0 14px; text-align: start; }

/* ═══ THE X TURNS (Sawy 2026-09-05, a site law): every X made of THE PLUS arrives turning 0 → 45 with its sheet and turns back 45 → 0
   as the sheet leaves, on the accordion tabs' own beat (250ms --yd-ease-in-out). ONE pair of keyframes, wired to each sheet's own open
   and closing states: the search sheet ([open] / .is-closing), the filter sheet (.menu-opening / [open]:not(.menu-opening), Dawn's
   close holds [open] ~400ms), the in-reel sheets (.is-open / :not(.is-open):not([hidden]), hidden lands at 420ms). The search sheet's rows live in
   yd-search.css since THE PORTAL (Part8 audit A3: the old rows here never matched the portalled layer and are gone). The bag toast carries no X
   (a tap closes it). A new X anywhere joins by matching its open and closing states here. */ ═══ */
@keyframes yd-x-in { from { transform: rotate(0deg); } to { transform: rotate(45deg); } }
@keyframes yd-x-out { from { transform: rotate(45deg); } to { transform: rotate(0deg); } }
.yd-sheet details.menu-opening .yd-x .yd-plus,
.yd-reel__sheet.is-open .yd-reel__sheet-x .yd-plus { animation: yd-x-in 250ms var(--yd-ease-in-out) both; }
.yd-sheet details[open]:not(.menu-opening) .yd-x .yd-plus,
.yd-reel__sheet:not(.is-open):not([hidden]) .yd-reel__sheet-x .yd-plus { animation: yd-x-out 250ms var(--yd-ease-in-out) both; }
@media (prefers-reduced-motion: reduce) { .yd-x .yd-plus, .yd-reel__sheet-x .yd-plus { animation: none !important; transform: rotate(45deg); } }

/* Part11 (THE AUDIT, C1): the grid ended 27 (phone) / 36 (desktop) above the footer while the home's last section ends 64 / 128 above it; the section's own padding_bottom is 0 and the measure lives here */
.collection.page-width { padding-bottom: 64px; }
@media (min-width: 990px) { .collection.page-width { padding-bottom: 128px; } }
