/* آویکس: the default Awix shop theme. Layered over awix-kit.css. Colours only through the theme variables
   (settings in config/settings_schema.json); tints are made with color-mix. Logical properties only. */

:root {
  --av-gap: clamp(14px, 2vw, 28px);
  --av-edge: clamp(36px, 5vw, 72px);
  --av-display: clamp(2.5rem, 1.1rem + 4.8vw, 4.75rem);
  --av-sticky-top: 150px;
  --av-ink-soft: color-mix(in srgb, var(--color-brand-contrast) 84%, transparent);
  --color-brand-deep: color-mix(in srgb, var(--color-brand) 72%, var(--color-text));
}
.av-body { background: var(--color-surface); }
.av-body main { min-block-size: 40vh; }

/* The engine puts its own sales-pause bar right after <body>; the kit snippet (required by theme-check) would draw a second one. */
body:has(> div[data-awix-sales-paused]:not(.awix-sales-pause)) .awix-sales-pause { display: none; }

/* ---------- buttons, chips, small shared pieces ---------- */
.av-btn {
  display: inline-flex; align-items: center; justify-content: center; min-block-size: 48px; padding: .5em 1.6em;
  border: 2px solid transparent; border-radius: var(--radius-button); font-weight: 700; line-height: 1.5; text-decoration: none; cursor: pointer;
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, translate .18s ease;
}
.av-btn:hover, .av-btn:focus-visible { text-decoration: none; translate: 0 -2px; }
.av-btn--light { background: var(--color-brand-contrast); color: var(--color-brand); }
.av-btn--line { border-color: color-mix(in srgb, var(--color-brand-contrast) 62%, transparent); color: var(--color-brand-contrast); background: transparent; }
.av-btn--line:hover, .av-btn--line:focus-visible { background: color-mix(in srgb, var(--color-brand-contrast) 14%, transparent); }
.av-btn--solid { background: var(--color-brand); color: var(--color-brand-contrast); }
.av-btn--ghost { border-color: var(--color-border); color: var(--color-text); background: transparent; }
.av-btn--ghost:hover, .av-btn--ghost:focus-visible { border-color: var(--color-brand); color: var(--color-brand); }
.av-chip {
  display: inline-flex; align-items: center; min-block-size: 44px; padding-inline: 18px; border: 1px solid var(--color-border); border-radius: 999px;
  color: var(--color-text); background: var(--color-surface); font-weight: 600; text-decoration: none;
}
.av-chip:hover, .av-chip:focus-visible { border-color: var(--color-brand); color: var(--color-brand); text-decoration: none; }
.av-chip--light { border-color: color-mix(in srgb, var(--color-brand-contrast) 50%, transparent); background: color-mix(in srgb, var(--color-brand-contrast) 10%, transparent); color: var(--color-brand-contrast); }
.av-chip--light:hover, .av-chip--light:focus-visible { background: var(--color-brand-contrast); color: var(--color-brand); border-color: var(--color-brand-contrast); }
.av-more { display: inline-flex; align-items: center; gap: 8px; min-block-size: 44px; font-weight: 700; color: var(--color-brand); text-decoration: none; white-space: nowrap; }
.av-more span { font-size: 1.4em; line-height: 1; transition: translate .2s ease; }
.av-more:hover span, .av-more:focus-visible span { translate: -5px 0; }
.av-more:hover, .av-more:focus-visible { text-decoration: none; }
.av-eyebrow { margin: 0 0 8px; color: var(--color-brand); font-weight: 700; font-size: var(--text-small); }
.muted { color: var(--color-text-muted); }

/* ---------- header: solid brand bar, wide always-open search, menu rail ---------- */
.av-header { overflow-x: clip; background: var(--color-header-bg); color: var(--color-header-text); }
.av-header a { color: inherit; }
.av-header .awix-header__name { font-size: 22px; font-weight: 800; }
.av-header .awix-header__name::before { background: currentColor; border-radius: 3px; }
.av-header .awix-header__icon { border-radius: 999px; }
.av-header .awix-header__icon:hover, .av-header .awix-header__icon:focus-visible { background: color-mix(in srgb, currentColor 16%, transparent); color: inherit; }
.av-header .awix-header__count { background: var(--color-accent); color: var(--color-brand-contrast); inset-block-start: 2px; inset-inline-end: 0; }
.av-header .awix-header__search input {
  min-block-size: 46px; border-color: transparent; border-radius: var(--radius-button); background: var(--color-surface); color: var(--color-text);
}
.av-header .awix-header__search input::placeholder { color: var(--color-text-muted); opacity: 1; }
.av-header .awix-header__search button { color: var(--color-text-muted); }
.av-header .awix-header__search input:focus-visible { outline: 3px solid color-mix(in srgb, var(--color-brand-contrast) 55%, transparent); outline-offset: 2px; }
.av-header .awix-nav__item { border-color: color-mix(in srgb, currentColor 16%, transparent); }
.av-header .awix-nav__link:hover, .av-header .awix-nav__link:focus-visible, .av-header .awix-nav__item.is-current > .awix-nav__link { color: inherit; }
.av-header .awix-nav__sub { color: var(--color-text); background: var(--color-surface); border-color: var(--color-border); }
.av-header .awix-nav__sublink:hover, .av-header .awix-nav__sublink:focus-visible { background: var(--color-surface-muted); color: var(--color-brand); }
@media (max-width: 989.98px) {
  .av-header .awix-header__panel { background: var(--color-brand-deep); color: var(--color-brand-contrast); }
  .av-header .awix-nav__sub { background: color-mix(in srgb, currentColor 8%, transparent); color: inherit; }
  .av-header .awix-nav__sublink:hover, .av-header .awix-nav__sublink:focus-visible { background: color-mix(in srgb, currentColor 12%, transparent); color: inherit; }
  .av-header .awix-header__search { padding-block-end: 12px; }
}
@media (min-width: 990px) {
  .av-header .awix-header__bar { grid-template-rows: minmax(68px, auto) auto; }
  .av-header .awix-header__search { max-inline-size: none; justify-self: stretch; }
  .av-header .awix-header__panel { position: relative; isolation: isolate; border-block-start: 0; }
  .av-header .awix-header__panel::before {
    content: ""; position: absolute; z-index: -1; inset-block: 0; inset-inline: -100vmax; background: var(--color-brand-deep);
  }
  .av-header .awix-nav { margin-inline-start: -12px; }
  .av-header .awix-nav__link { min-block-size: 48px; font-weight: 600; position: relative; }
  .av-header .awix-nav__link::after {
    content: ""; position: absolute; inset-inline: 12px; inset-block-end: 6px; block-size: 3px; border-radius: 3px; background: currentColor;
    scale: 0 1; transition: scale .2s ease; transform-origin: center;
  }
  .av-header .awix-nav__item:hover > .awix-nav__link::after, .av-header .awix-nav__link:focus-visible::after,
  .av-header .awix-nav__item.is-current > .awix-nav__link::after { scale: 1 1; }
  .av-header .awix-nav__toggle { block-size: 48px; }
}
.awix-ann { background: var(--color-brand-deep); }

/* ---------- home hero ---------- */
.av-hero {
  position: relative; isolation: isolate; color: var(--color-brand-contrast); margin-block-end: calc(var(--av-edge) + 28px);
  background-color: var(--color-brand);
  background-image:
    radial-gradient(60% 90% at 88% 8%, color-mix(in srgb, var(--color-brand-contrast) 20%, transparent), transparent 70%),
    linear-gradient(155deg, color-mix(in srgb, var(--color-brand) 88%, var(--color-brand-contrast)) 0%, var(--color-brand) 42%, var(--color-brand-deep) 100%);
}
.av-hero::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: radial-gradient(color-mix(in srgb, var(--color-brand-contrast) 26%, transparent) 1.4px, transparent 1.7px);
  background-size: 24px 24px;
  -webkit-mask-image: linear-gradient(to right, black, transparent 70%); mask-image: linear-gradient(to right, black, transparent 70%);
}
/* the diagonal bottom edge: a wedge in the page colour over the hero's lower strip, so the floating tiles can cross it */
.av-hero__edge { position: absolute; inset-inline: 0; inset-block-end: -1px; z-index: 0; block-size: var(--av-edge); background: var(--color-surface); clip-path: polygon(0 100%, 100% 0, 100% 100%); pointer-events: none; }
.av-hero__inner { position: relative; z-index: 1; }
.av-hero__inner { display: grid; gap: 36px; padding-block: 44px calc(var(--av-edge) + 12px); align-items: center; }
.av-hero__eyebrow {
  display: inline-flex; align-items: center; gap: 10px; margin: 0 0 14px; font-weight: 700; font-size: var(--text-small); color: var(--av-ink-soft);
}
.av-hero__eyebrow::before { content: ""; inline-size: 28px; block-size: 3px; border-radius: 3px; background: var(--color-brand-contrast); }
.av-hero__title {
  margin: 0 0 20px; color: inherit; font-size: var(--av-display); font-weight: 800; line-height: 1.3; text-wrap: balance; overflow-wrap: anywhere;
}
.av-hero__sub { margin: 0 0 28px; max-inline-size: 36ch; font-size: var(--text-lead); line-height: 2; color: var(--av-ink-soft); }
.av-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin: 0; }
.av-hero__stage { position: relative; inline-size: 100%; min-inline-size: 0; }
.av-hero__stage--collage { aspect-ratio: 8 / 7; max-inline-size: 600px; margin-inline: auto; }
.av-hero__tile {
  position: absolute; display: block; overflow: hidden; border: 4px solid var(--color-surface); border-radius: var(--radius-card);
  background: var(--color-surface-muted); color: var(--color-text); text-decoration: none;
  box-shadow: 0 28px 48px -22px color-mix(in srgb, var(--color-text) 70%, transparent);
  transition: translate .3s ease;
}
.av-hero__tile:hover, .av-hero__tile:focus-visible { translate: 0 -6px; text-decoration: none; }
.av-hero__tile img { display: block; inline-size: 100%; block-size: 100%; object-fit: cover; }
.av-hero__ph.awix-ph { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; aspect-ratio: auto; border-radius: 0; }
.av-hero__tile--0 { inset-inline-start: 0; inset-block-start: 0; inline-size: 54%; aspect-ratio: 4 / 5; }
.av-hero__tile--1 { inset-inline-end: 0; inset-block-start: 4%; inline-size: 42%; aspect-ratio: 1 / 1; }
.av-hero__tile--2 { inset-inline-end: 6%; inset-block-end: -20%; inline-size: 36%; aspect-ratio: 3 / 4; z-index: 2; }
.av-hero__cap {
  position: absolute; inset-inline: 8px; inset-block-end: 8px; padding: 2px 10px; overflow: hidden; border-radius: calc(var(--radius-button) - 2px);
  background: color-mix(in srgb, var(--color-surface) 92%, transparent); color: var(--color-text); font-size: 13px; font-weight: 700; line-height: 1.8;
  white-space: nowrap; text-overflow: ellipsis; backdrop-filter: blur(8px);
}
.av-hero__figure {
  margin: 0; overflow: hidden; border: 4px solid var(--color-surface); border-radius: var(--radius-card); aspect-ratio: 5 / 4; translate: 0 calc(var(--av-edge) * .5);
  box-shadow: 0 28px 48px -22px color-mix(in srgb, var(--color-text) 70%, transparent);
}
.av-hero__figure img { inline-size: 100%; block-size: 100%; object-fit: cover; }
.av-hero__stage--mark { display: grid; place-items: center; min-block-size: 240px; }
.av-hero__mark {
  position: relative; display: grid; place-items: center; inline-size: min(100%, 460px); aspect-ratio: 1 / 1; border-radius: 50%;
  background: repeating-radial-gradient(circle at 50% 50%, transparent 0 34px, color-mix(in srgb, var(--color-brand-contrast) 14%, transparent) 34px 36px);
  overflow: clip;
}
.av-hero__mark span {
  max-inline-size: 100%; padding-inline: 8px; overflow: clip; font-size: clamp(3.5rem, 12vw, 8.5rem); font-weight: 800; line-height: 1.3; white-space: nowrap;
  color: color-mix(in srgb, var(--color-brand-contrast) 22%, transparent);
}
@media (min-width: 900px) {
  .av-hero__inner { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); gap: 56px; min-block-size: 560px; padding-block: 56px calc(var(--av-edge) + 28px); }
  .av-hero--standard .av-hero__inner { min-block-size: 420px; }
  .av-hero__stage--collage { margin-inline: 0; }
}
@media (max-width: 899.98px) {
  .av-hero__stage--collage { max-inline-size: 440px; }
  .av-hero__tile { border-width: 3px; }
  .av-hero__cap { display: none; }
}
@media (prefers-reduced-motion: no-preference) {
  .av-hero__tile { animation: av-rise .7s cubic-bezier(.2, .7, .2, 1) both; }
  .av-hero__tile--1 { animation-delay: .12s; }
  .av-hero__tile--2 { animation-delay: .24s; }
}
@keyframes av-rise { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }

/* ---------- product card ---------- */
.av-card { position: relative; display: flex; flex-direction: column; block-size: 100%; min-inline-size: 0; }
.av-card__link { display: flex; flex: 1; flex-direction: column; gap: 12px; color: inherit; text-decoration: none; }
.av-card__link:hover, .av-card__link:focus-visible { text-decoration: none; }
.av-card__media { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 5; border-radius: var(--radius-card); background: var(--color-surface-muted); }
.av-card__img, .av-card__alt { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; object-fit: cover; transition: scale .5s ease, opacity .3s ease; }
.av-card__alt { opacity: 0; }
@media (hover: hover) {
  .av-card:hover .av-card__alt { opacity: 1; }
  .av-card:hover .av-card__img { scale: 1.05; }
}
.av-card__ph.awix-ph { position: absolute; inset: 0; inline-size: 100%; block-size: 100%; aspect-ratio: auto; border-radius: 0; }
.av-card__flag {
  position: absolute; inset-inline-start: 10px; inset-block-start: 10px; z-index: 1; padding: 2px 12px; border-radius: 999px;
  background: var(--color-text); color: var(--color-surface); font-size: 12px; font-weight: 700; line-height: 1.8;
}
.av-card.is-unavailable .av-card__img, .av-card.is-unavailable .av-card__alt { filter: grayscale(.75); opacity: .75; }
.av-card__body { display: flex; flex-direction: column; gap: 4px; padding-inline: 2px; }
.av-card__title {
  margin: 0; font-size: 15px; font-weight: 700; line-height: 1.8; color: var(--color-text);
  display: -webkit-box; -webkit-line-clamp: 2; line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.av-card .pb-product-price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0; font-size: 15px; }
.av-card .pb-product-price-final { font-weight: 800; color: var(--color-text); }
.av-card .pb-product-price-list { color: var(--color-text-muted); font-size: 13px; }
.pb-product-discount, .av-pdp .pb-product-discount {
  display: inline-block; padding: 0 9px; border-radius: 999px; background: var(--color-accent); color: var(--color-brand-contrast); font-size: 12px; font-weight: 700; line-height: 1.9;
}
.av-card .awix-call-for-price--card { margin: 0; color: var(--color-text-muted); font-weight: 700; font-size: 14px; }
.av-card__acts { position: absolute; inset-block-start: 8px; inset-inline-end: 8px; z-index: 2; display: flex; flex-direction: column; gap: 8px; }
.av-card__acts .awix-act--icon { inline-size: 44px; block-size: 44px; border-color: transparent; box-shadow: 0 6px 16px -6px color-mix(in srgb, var(--color-text) 45%, transparent); }
.av-card__acts .awix-compare__message:empty { display: none; }
.av-card--feature { block-size: 100%; }
.av-card--feature .av-card__link { position: relative; display: block; block-size: 100%; }
.av-card--feature .av-card__media { aspect-ratio: auto; block-size: 100%; min-block-size: 340px; }
.av-card--feature .av-card__body {
  position: absolute; inset-inline: 0; inset-block-end: 0; padding: 72px 22px 20px; border-radius: 0 0 var(--radius-card) var(--radius-card);
  background: linear-gradient(to top, color-mix(in srgb, var(--color-text) 84%, transparent), transparent); color: var(--color-surface);
}
.av-card--feature .av-card__title { color: var(--color-surface); font-size: clamp(1.25rem, 1rem + 1vw, 1.8rem); font-weight: 800; line-height: 1.6; -webkit-line-clamp: 3; line-clamp: 3; }
.av-card--feature .pb-product-price-final, .av-card--feature .pb-product-price-list { color: var(--color-surface); }

/* ---------- shelves ---------- */
.av-shelf { padding-block: var(--spacing-section) 0; }
.av-shelf__head { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-block-end: 24px; }
.av-shelf__title { position: relative; margin: 0; padding-block-end: 12px; font-size: clamp(1.6rem, 1.1rem + 1.7vw, 2.5rem); font-weight: 800; line-height: 1.4; }
.av-shelf__title::after { content: ""; position: absolute; inset-inline-start: 0; inset-block-end: 0; inline-size: 56px; block-size: 4px; border-radius: 4px; background: var(--color-accent); }
.av-shelf__sub { margin: 8px 0 0; color: var(--color-text-muted); }
.av-shelf__grid { display: grid; gap: var(--av-gap); grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; padding: 0; list-style: none; grid-auto-flow: dense; }
.av-shelf__item { display: flex; min-inline-size: 0; }
.av-shelf__item > .av-card { flex: 1; }
.av-shelf--mosaic .av-shelf__item:first-child { grid-column: span 2; }
@media (min-width: 900px) {
  .av-shelf--mosaic .av-shelf__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .av-shelf--mosaic .av-shelf__item:first-child { grid-row: span 2; }
}
.av-shelf--strip .av-shelf__grid, .av-strip__track {
  display: flex; gap: var(--av-gap); overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x mandatory; scrollbar-width: thin; padding-block: 4px 18px;
}
.av-shelf--strip .av-shelf__item, .av-strip__item { flex: 0 0 clamp(190px, 24vw, 290px); scroll-snap-align: start; }
.av-strip { padding-block: var(--spacing-section) 0; }
.av-strip__track {
  margin: 0; list-style: none;
  padding-inline: max(var(--spacing-pad), calc((100vw - var(--container-shop)) / 2 + var(--spacing-pad)));
  scroll-padding-inline: max(var(--spacing-pad), calc((100vw - var(--container-shop)) / 2 + var(--spacing-pad)));
}
.av-soon { padding-block: var(--spacing-section) 0; }
.av-soon__inner { display: grid; gap: 20px; align-items: center; }
.av-soon__word { margin: 0; font-size: clamp(4.5rem, 14vw, 10rem); font-weight: 800; line-height: 1.2; color: color-mix(in srgb, var(--color-brand) 16%, transparent); }
.av-soon__text h2 { font-size: clamp(1.6rem, 1.1rem + 1.7vw, 2.5rem); font-weight: 800; }
.av-soon__text p { color: var(--color-text-muted); font-size: var(--text-lead); max-inline-size: 44ch; }
.av-soon__links { margin-block-start: 20px; }
@media (min-width: 900px) { .av-soon__inner { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: 56px; } }

/* ---------- values band (big numerals, rules, no boxes) ---------- */
.av-values { position: relative; isolation: isolate; margin-block-start: calc(var(--spacing-section) + 16px); padding-block: calc(var(--spacing-section) + 48px); }
.av-values::before {
  content: ""; position: absolute; inset: 0; z-index: -1; background: var(--color-surface-muted);
  clip-path: polygon(0 var(--av-edge), 100% 0, 100% calc(100% - var(--av-edge)), 0 100%);
}
.av-values__inner { display: grid; gap: 28px; }
.av-values__title { margin: 0; font-size: clamp(2rem, 1.2rem + 3vw, 3.6rem); font-weight: 800; line-height: 1.35; text-wrap: balance; }
.av-values__list { margin: 0; padding: 0; list-style: none; }
.av-values__row { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 20px; align-items: start; padding-block: 22px; border-block-end: 1px solid color-mix(in srgb, var(--color-text) 16%, transparent); }
.av-values__row:first-child { border-block-start: 1px solid color-mix(in srgb, var(--color-text) 16%, transparent); }
.av-values__num { min-inline-size: 1.6em; font-size: clamp(2.5rem, 2rem + 2vw, 3.75rem); font-weight: 800; line-height: 1.1; color: var(--color-brand); }
.av-values__row h3 { margin: 0 0 4px; font-size: 1.25rem; }
.av-values__row p { margin: 0; color: var(--color-text-muted); }
@media (min-width: 900px) { .av-values__inner { grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: 72px; align-items: start; } }

/* ---------- browse (categories as big rows) ---------- */
.av-browse { padding-block: var(--spacing-section) 0; }
.av-browse__inner { display: grid; gap: 24px; }
.av-browse__title { margin: 0 0 12px; font-size: clamp(2rem, 1.2rem + 3vw, 3.6rem); font-weight: 800; line-height: 1.35; }
.av-browse__text { margin: 0 0 16px; color: var(--color-text-muted); max-inline-size: 36ch; }
.av-browse__list { margin: 0; padding: 0; list-style: none; border-block-start: 1px solid var(--color-border); }
.av-browse__row {
  display: grid; grid-template-columns: 3ch minmax(0, 1fr) auto; align-items: center; gap: 20px; padding-block: 18px; border-block-end: 1px solid var(--color-border);
  color: var(--color-text); text-decoration: none; transition: padding-inline-start .2s ease, color .2s ease;
}
.av-browse__row:hover, .av-browse__row:focus-visible { padding-inline-start: 14px; color: var(--color-brand); text-decoration: none; }
.av-browse__num { color: var(--color-text-muted); font-weight: 700; }
.av-browse__name { font-size: clamp(1.25rem, 1rem + 1vw, 1.8rem); font-weight: 800; line-height: 1.5; }
.av-browse__arrow { color: var(--color-brand); font-size: 1.8rem; line-height: 1; }
@media (min-width: 900px) { .av-browse__inner { grid-template-columns: minmax(0, 4fr) minmax(0, 7fr); gap: 72px; align-items: start; } }

/* ---------- title band (collection, categories, pages) ---------- */
.av-titleband {
  position: relative; isolation: isolate; margin-block-end: 28px; background-color: var(--color-brand); padding-block: 34px calc(var(--av-edge) * .55 + 24px); color: var(--color-brand-contrast);
  background:
    radial-gradient(50% 120% at 90% 0, color-mix(in srgb, var(--color-brand-contrast) 18%, transparent), transparent 70%),
    linear-gradient(160deg, var(--color-brand) 0%, var(--color-brand-deep) 100%);
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--av-edge) * .5), 0 100%);
}
.av-titleband--slim { padding-block: 22px calc(var(--av-edge) * .45 + 12px); margin-block-end: 20px; }
.av-titleband__title { margin: 6px 0 0; color: inherit; font-size: clamp(2rem, 1.3rem + 2.8vw, 3.5rem); font-weight: 800; line-height: 1.35; text-wrap: balance; overflow-wrap: anywhere; }
.av-titleband__terms { color: var(--av-ink-soft); }
.av-titleband__desc { margin-block-start: 8px; max-inline-size: 60ch; color: var(--av-ink-soft); line-height: 1.9; }
.av-titleband__desc p { margin-block-end: 0; }
.av-crumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; font-size: var(--text-small); color: var(--av-ink-soft); }
.av-crumbs a { position: relative; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.av-crumbs a::after { content: ""; position: absolute; inset: -14px -6px; }

/* ---------- collection page ---------- */
.av-coll .av-cols { padding-block: 8px var(--spacing-section); }
.av-rail { border: 0; border-radius: var(--radius-card); background: var(--color-surface-muted); }
.av-rail .awix-field input, .av-rail .awix-price input { background: var(--color-surface); }
.av-sortbar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; margin-block: 4px 22px; }
.av-sortbar .awix-seg { max-inline-size: 100%; overflow-x: auto; scrollbar-width: none; flex-wrap: nowrap; border-radius: 999px; }
.av-sortbar .awix-seg::-webkit-scrollbar { display: none; }
.av-sortbar .awix-seg label { white-space: nowrap; }
.av-sortbar .awix-count { color: var(--color-text-muted); font-weight: 600; }
.av-grid { display: grid; gap: var(--av-gap); grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: dense; margin: 0; padding: 0; list-style: none; }
.av-grid > li { display: flex; min-inline-size: 0; }
.av-grid > li > .av-card { flex: 1; }
.av-grid__item:nth-child(7n + 1) { grid-column: span 2; }
.av-grid__item:nth-child(7n + 1) .av-card__media { aspect-ratio: 16 / 11; }
@media (min-width: 900px) {
  .av-grid { grid-template-columns: repeat(var(--av-cols, 3), minmax(0, 1fr)); }
  .av-grid--suggest { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .av-grid__item:nth-child(7n + 1) .av-card__link { flex-direction: row; align-items: stretch; gap: 20px; }
  .av-grid__item:nth-child(7n + 1) .av-card__media { flex: 0 0 52%; aspect-ratio: 1 / 1; }
  .av-grid__item:nth-child(7n + 1) .av-card__body { justify-content: center; gap: 10px; }
  .av-grid__item:nth-child(7n + 1) .av-card__title { font-size: 1.3rem; font-weight: 800; -webkit-line-clamp: 3; line-clamp: 3; }
  .av-grid__item:nth-child(7n + 1) .pb-product-price { font-size: 1.1rem; }
  .av-grid__item:nth-child(7n + 1) .av-card__acts { inset-inline-end: auto; inset-inline-start: calc(52% - 52px); }
}
@media (max-width: 899.98px) { .av-grid--suggest { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.av-grid--suggest > li:nth-child(7n + 1) { grid-column: auto; }
.av-empty { display: grid; gap: 20px; align-items: center; padding-block: 36px; }
.av-empty__big { margin: 0; font-size: clamp(6rem, 18vw, 11rem); font-weight: 800; line-height: 1.1; color: color-mix(in srgb, var(--color-brand) 14%, transparent); }
.av-empty__text h2 { margin: 0 0 8px; font-size: clamp(1.5rem, 1.1rem + 1.5vw, 2.2rem); font-weight: 800; }
.av-empty__text p { margin: 0 0 18px; color: var(--color-text-muted); max-inline-size: 46ch; }
.av-empty__links { display: flex; flex-wrap: wrap; gap: 10px; margin-block-start: 22px; }
@media (min-width: 700px) { .av-empty { grid-template-columns: auto minmax(0, 1fr); gap: 48px; } }
.av-suggest__title { margin-block: 28px 18px; font-size: 1.5rem; font-weight: 800; }

/* ---------- categories mosaic ---------- */
.av-catlist__body { padding-block: 8px var(--spacing-section); }
.av-mosaic { display: grid; gap: var(--av-gap); grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-flow: dense; margin: 0; padding: 0; list-style: none; }
.av-mosaic__item { display: flex; min-inline-size: 0; }
.av-tile { position: relative; display: block; flex: 1; overflow: hidden; border-radius: var(--radius-card); min-block-size: 200px; background: var(--color-surface-muted); color: var(--color-surface); text-decoration: none; isolation: isolate; }
.av-tile:hover, .av-tile:focus-visible { text-decoration: none; }
.av-tile__img { position: absolute; inset: 0; z-index: -2; inline-size: 100%; block-size: 100%; object-fit: cover; transition: scale .6s ease; }
.av-tile:hover .av-tile__img { scale: 1.06; }
.av-tile__ph.awix-ph { position: absolute; inset: 0; z-index: -2; inline-size: 100%; block-size: 100%; aspect-ratio: auto; border-radius: 0; }
.av-tile::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(to top, color-mix(in srgb, var(--color-text) 82%, transparent), transparent 62%); }
.av-tile__body { position: absolute; inset-inline: 0; inset-block-end: 0; display: flex; flex-direction: column; gap: 2px; padding: 18px 20px; }
.av-tile__title { font-size: clamp(1.1rem, .95rem + .6vw, 1.5rem); font-weight: 800; line-height: 1.6; }
.av-tile__count { font-size: var(--text-small); opacity: .92; }
.av-mosaic__item:first-child, .av-mosaic__item:last-child:nth-child(even) { grid-column: span 2; }
@media (min-width: 900px) {
  .av-mosaic { grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-rows: 210px; }
  .av-mosaic__item:first-child { grid-column: span 2; grid-row: span 2; }
  .av-mosaic__item:nth-child(2), .av-mosaic__item:nth-child(3) { grid-column: span 2; }
  .av-mosaic__item:nth-child(4):last-child { grid-column: 1 / -1; }
  .av-mosaic__item:nth-child(5):last-child { grid-column: span 3; }
  .av-mosaic__item:nth-child(6):last-child { grid-column: span 2; }
  .av-tile { min-block-size: 0; }
}

/* ---------- product page ---------- */
.av-pdp { padding-block: 0 var(--spacing-section); }
.av-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 2px 10px; margin: 0; padding: 12px 0 10px; list-style: none; font-size: var(--text-small); color: var(--color-text-muted); }
.av-breadcrumb li + li::before { content: "‹"; margin-inline-end: 10px; }
.av-breadcrumb a { position: relative; color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.av-breadcrumb a::after { content: ""; position: absolute; inset: -14px -6px; }
.av-breadcrumb li[aria-current] { color: var(--color-text); font-weight: 600; }
.av-pdp__top { display: grid; gap: 22px; align-items: start; grid-template-columns: minmax(0, 1fr); }
.av-pdp__buy { display: flex; flex-direction: column; gap: 10px; min-inline-size: 0; }
.av-pdp__vendor { margin: 0; color: var(--color-brand); font-weight: 700; font-size: var(--text-small); }
.av-pdp__title { margin: 0; font-size: clamp(1.5rem, 1.1rem + 1.2vw, 2.1rem); font-weight: 800; line-height: 1.5; text-wrap: balance; }
.av-pdp__price { margin: 0; }
.av-pdp__price .awix-price-lg { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 12px; margin: 0; }
.av-pdp .awix-price-lg .pb-product-price-final { font-size: clamp(1.9rem, 1.4rem + 1.4vw, 2.7rem); font-weight: 800; line-height: 1.3; color: var(--color-text); }
.av-pdp .awix-price-lg .pb-product-price-list { color: var(--color-text-muted); }
.av-pdp .awix-stock { margin: 0; }
.av-pdp .awix-pdp__rating { min-block-size: 36px; }
.av-buy { display: contents; }
.av-option { margin: 0; }
.av-option legend { margin-block-end: 8px; font-weight: 700; font-size: var(--text-small); color: var(--color-text-muted); }
.av-sw { display: none; inline-size: 14px; block-size: 14px; margin-inline-end: 8px; vertical-align: -2px; border: 1px solid color-mix(in srgb, var(--color-text) 25%, transparent); border-radius: 50%; background: var(--sw, transparent); }
.av-sw[data-sw="سفید"], .av-sw[data-sw="مشکی"], .av-sw[data-sw="قرمز"], .av-sw[data-sw="آبی"], .av-sw[data-sw="سبز"], .av-sw[data-sw="زرد"],
.av-sw[data-sw="نارنجی"], .av-sw[data-sw="بنفش"], .av-sw[data-sw="صورتی"], .av-sw[data-sw="قهوه‌ای"], .av-sw[data-sw="خاکستری"], .av-sw[data-sw="نقره‌ای"],
.av-sw[data-sw="طلایی"], .av-sw[data-sw="کرم"], .av-sw[data-sw="سرمه‌ای"], .av-sw[data-sw="طبیعی"], .av-sw[data-sw="بژ"], .av-sw[data-sw="فیروزه‌ای"] { display: inline-block; }
.av-sw[data-sw="سفید"] { --sw: white; }
.av-sw[data-sw="مشکی"] { --sw: black; }
.av-sw[data-sw="قرمز"] { --sw: crimson; }
.av-sw[data-sw="آبی"] { --sw: royalblue; }
.av-sw[data-sw="سبز"] { --sw: seagreen; }
.av-sw[data-sw="زرد"] { --sw: gold; }
.av-sw[data-sw="نارنجی"] { --sw: darkorange; }
.av-sw[data-sw="بنفش"] { --sw: rebeccapurple; }
.av-sw[data-sw="صورتی"] { --sw: hotpink; }
.av-sw[data-sw="قهوه‌ای"] { --sw: saddlebrown; }
.av-sw[data-sw="خاکستری"] { --sw: gray; }
.av-sw[data-sw="نقره‌ای"] { --sw: silver; }
.av-sw[data-sw="طلایی"] { --sw: goldenrod; }
.av-sw[data-sw="کرم"], .av-sw[data-sw="بژ"] { --sw: bisque; }
.av-sw[data-sw="سرمه‌ای"] { --sw: midnightblue; }
.av-sw[data-sw="طبیعی"] { --sw: burlywood; }
.av-sw[data-sw="فیروزه‌ای"] { --sw: turquoise; }
.av-buy__row { align-items: stretch; }
.av-buy__row .awix-buy__submit { flex: 1 1 180px; }
.av-pdp__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.av-pdp .awix-share { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.av-key { display: grid; gap: 0; margin: 6px 0 0; padding: 0; list-style: none; border-block-start: 1px solid var(--color-border); }
.av-key li { display: flex; justify-content: space-between; gap: 16px; padding-block: 10px; border-block-end: 1px solid var(--color-border); font-size: var(--text-small); }
.av-key span { color: var(--color-text-muted); }
.av-vimg { position: absolute; inset: 0; display: none; }
.av-vimg img { inline-size: 100%; block-size: 100%; object-fit: contain; }
.av-pdp .awix-gallery__stage { border: 0; border-radius: var(--radius-card); aspect-ratio: 1 / 1; }
.av-pdp .awix-thumb { inline-size: 72px; block-size: 72px; }
.av-pdp__body { display: grid; gap: 20px; margin-block-start: calc(var(--spacing-section) - 8px); }
.av-anchors { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; padding-block: 2px; }
.av-anchors::-webkit-scrollbar { display: none; }
.av-anchors a {
  display: inline-flex; align-items: center; min-block-size: 44px; padding-inline: 18px; border: 1px solid var(--color-border); border-radius: 999px;
  color: var(--color-text); font-weight: 700; white-space: nowrap; text-decoration: none;
}
.av-anchors a:hover, .av-anchors a:focus-visible { border-color: var(--color-brand); color: var(--color-brand); text-decoration: none; }
.av-block { padding-block-end: var(--spacing-section); scroll-margin-block-start: 140px; }
.av-block:last-child { padding-block-end: 0; }
.av-block__title { position: relative; margin: 0 0 22px; padding-block-end: 12px; font-size: clamp(1.5rem, 1.1rem + 1.4vw, 2.1rem); font-weight: 800; }
.av-block__title::after { content: ""; position: absolute; inset-inline-start: 0; inset-block-end: 0; inline-size: 48px; block-size: 4px; border-radius: 4px; background: var(--color-accent); }
.av-pdp__sections .awix-prose { max-inline-size: 72ch; }
.av-specs { display: grid; gap: 30px; }
.av-spec-group { display: grid; gap: 6px; }
.av-spec-group__title { margin: 0; font-size: 1rem; font-weight: 800; color: var(--color-brand); }
.av-spec-group table { inline-size: 100%; border-collapse: collapse; }
.av-spec-group th, .av-spec-group td { padding: 11px 0; border-block-end: 1px solid var(--color-border); text-align: start; vertical-align: top; font-size: 15px; line-height: 1.8; }
.av-spec-group th { inline-size: 40%; padding-inline-end: 16px; font-weight: 600; color: var(--color-text-muted); }
.av-reviews { display: grid; gap: 26px; }
.av-reviews__sum .awix-review-sum { display: grid; gap: 6px; justify-items: start; }
.av-reviews__sum .awix-review-sum strong { font-size: 3.6rem; font-weight: 800; line-height: 1.1; color: var(--color-brand); }
.av-reviews__main { display: grid; gap: 4px; min-inline-size: 0; }
.av-reviews .awix-review-form { margin-block-start: 20px; padding: 22px; border-radius: var(--radius-card); background: var(--color-surface-muted); }
.av-pdp-gap { block-size: 0; }
@media (min-width: 900px) {
  .av-pdp__top { grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 48px; }
  .av-pdp__buy { position: sticky; inset-block-start: var(--av-sticky-top); }
  .av-pdp__body { grid-template-columns: 190px minmax(0, 1fr); gap: 56px; }
  .av-anchors { position: sticky; inset-block-start: var(--av-sticky-top); flex-direction: column; align-self: start; overflow: visible; gap: 2px; }
  .av-anchors a { border: 0; border-radius: 0; border-inline-start: 3px solid var(--color-border); padding-inline: 16px; }
  .av-anchors a:hover, .av-anchors a:focus-visible { border-inline-start-color: var(--color-brand); }
  .av-spec-group { grid-template-columns: 190px minmax(0, 1fr); gap: 28px; }
  .av-reviews { grid-template-columns: 220px minmax(0, 1fr); gap: 40px; }
}
@media (max-width: 899.98px) {
  .av-pdp .awix-gallery__stage { aspect-ratio: 6 / 5; }
  .av-buy__row {
    position: sticky; inset-block-end: calc(var(--awix-bottom-nav-h, 58px) + 8px + env(safe-area-inset-bottom)); z-index: 30; padding: 8px;
    border: 1px solid var(--color-border); border-radius: var(--radius-card); background: color-mix(in srgb, var(--color-surface) 90%, transparent);
    -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: 0 10px 28px -10px color-mix(in srgb, var(--color-text) 40%, transparent);
  }
}

/* ---------- the engine's own product block (trust lines, call button, wishlist/compare/share), styled to sit under the page ---------- */
.awix-pdp-buy { max-inline-size: var(--container-shop); margin-inline: auto; padding: 28px var(--spacing-pad) 0; }
.awix-pdp-buy .awix-trust, .awix-pdp-buy .awix-note { color: var(--color-text-muted); }
.awix-pdp-buy .awix-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-block-start: 12px; }
.awix-pdp-buy .awix-call { display: grid; gap: 10px; justify-items: start; padding: 20px; border-radius: var(--radius-card); background: var(--color-surface-muted); }

/* ---------- footer ---------- */
.av-footer { position: relative; display: flow-root; margin-block-start: calc(var(--spacing-section) + 56px); background: var(--color-brand-deep); color: var(--color-brand-contrast); overflow: clip visible; }
.av-footer a { color: inherit; }
.av-footer__top { position: relative; z-index: 2; margin-block-start: -64px; }
.av-news {
  display: grid; gap: 18px; align-items: center; padding: 26px 28px; border-radius: calc(var(--radius-card) + 8px); background: var(--color-surface); color: var(--color-text);
  box-shadow: 0 24px 48px -24px color-mix(in srgb, var(--color-text) 55%, transparent);
}
.av-news__title { margin: 0 0 4px; font-size: clamp(1.25rem, 1rem + 1vw, 1.75rem); font-weight: 800; }
.av-news__text { margin: 0; color: var(--color-text-muted); }
.av-news__form { display: flex; gap: 8px; }
.av-news__input { flex: 1; min-inline-size: 0; min-block-size: 50px; background: var(--color-surface-muted); border-color: transparent; text-align: start; }
.av-news__button { min-block-size: 50px; padding-inline: 26px; border: 0; border-radius: var(--radius-button); background: var(--color-brand); color: var(--color-brand-contrast); font-weight: 700; cursor: pointer; }
.av-news__button:hover, .av-news__button:focus-visible { filter: brightness(1.12); }
@media (min-width: 800px) { .av-news { grid-template-columns: minmax(0, 1fr) minmax(0, 28rem); gap: 40px; padding: 30px 40px; } }
.av-footer__cols { display: grid; gap: 28px 32px; padding-block: 40px 8px; }
.av-footer__cols--flat { padding-block-start: 56px; }
.av-footer .awix-footer__brand, .av-footer .awix-footer__name { color: inherit; }
.av-footer .awix-footer__name::before { background: currentColor; }
.av-footer__about { margin: 8px 0 0; max-inline-size: 38ch; color: var(--av-ink-soft); line-height: 2; }
.av-footer .awix-footer__heading { margin-block-end: 10px; color: inherit; font-size: 1rem; font-weight: 800; }
.av-footer .awix-footer__links a { min-block-size: 40px; color: var(--av-ink-soft); }
.av-footer .awix-footer__links a:hover, .av-footer .awix-footer__links a:focus-visible { color: var(--color-brand-contrast); text-decoration: underline; }
.av-footer .awix-footer__text { color: var(--av-ink-soft); }
.av-footer .awix-footer__contact svg { color: var(--av-ink-soft); }
.av-footer .awix-footer__contact li, .av-footer .awix-footer__contact a { color: var(--av-ink-soft); }
.av-footer .awix-footer__social a { border-color: color-mix(in srgb, currentColor 35%, transparent); background: transparent; color: var(--color-brand-contrast); }
.av-footer .awix-footer__social a:hover, .av-footer .awix-footer__social a:focus-visible { border-color: var(--color-brand-contrast); }
.av-footer__mark {
  margin: 12px 0 0; padding-inline: var(--spacing-pad); overflow: clip; font-size: clamp(4rem, 16vw, 14rem); font-weight: 800; line-height: 1.15; text-align: center;
  white-space: nowrap; color: color-mix(in srgb, var(--color-brand-contrast) 10%, transparent); user-select: none; pointer-events: none;
}
.av-footer__base { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; padding-block: 14px; border-block-start: 1px solid color-mix(in srgb, currentColor 22%, transparent); color: var(--av-ink-soft); font-size: var(--text-small); }
.av-footer .awix-footer__copy { margin: 0; }
.av-footer .awix-footer__top { color: inherit; }
@media (min-width: 750px) {
  .av-footer__cols { grid-template-columns: minmax(0, 1.4fr) repeat(auto-fit, minmax(180px, 1fr)); gap: 32px 48px; }
}

/* ---------- 404 ---------- */
.av-404__hero { position: relative; isolation: isolate; background-color: var(--color-brand); color: var(--color-brand-contrast); padding-block: 40px calc(var(--av-edge) + 24px); background: linear-gradient(160deg, var(--color-brand) 0%, var(--color-brand-deep) 100%); clip-path: polygon(0 0, 100% 0, 100% calc(100% - var(--av-edge)), 0 100%); }
.av-404__inner { display: grid; gap: 12px; align-items: center; }
.av-404__code { margin: 0; font-size: clamp(6rem, 22vw, 14rem); font-weight: 800; line-height: 1.05; color: color-mix(in srgb, var(--color-brand-contrast) 24%, transparent); }
.av-404__words h1 { margin: 0 0 10px; color: inherit; font-size: clamp(1.7rem, 1.2rem + 2vw, 2.8rem); font-weight: 800; }
.av-404__words p { max-inline-size: 46ch; color: var(--av-ink-soft); }
.av-404__search { display: flex; gap: 8px; max-inline-size: 520px; margin-block: 18px; }
.av-404__search input { flex: 1; min-inline-size: 0; min-block-size: 50px; border-color: transparent; background: var(--color-surface); color: var(--color-text); }
.av-404__search input::placeholder { color: var(--color-text-muted); opacity: 1; }
.av-404__search .btn { min-block-size: 50px; background: var(--color-brand-contrast); color: var(--color-brand); }
.av-404__links { display: flex; flex-wrap: wrap; gap: 8px; }
.av-404__more { padding-block: 8px var(--spacing-section); }
@media (min-width: 800px) { .av-404__inner { grid-template-columns: auto minmax(0, 1fr); gap: 56px; } }

/* ---------- text pages, cart and blog (the engine hands these over as page.content) ---------- */
.av-page__body { padding-block: 12px var(--spacing-section); }
.av-prose { max-inline-size: 78ch; }
.av-page--wide .av-prose, .av-page--normal .av-prose { max-inline-size: none; }
.av-page--normal .av-prose { max-inline-size: 960px; }
.av-prose h1 { margin-block: 0 18px; font-size: clamp(1.8rem, 1.3rem + 1.8vw, 2.6rem); font-weight: 800; }
.av-prose .flex { display: flex; }
.av-prose .grid { display: grid; }
.av-prose .flex-col { flex-direction: column; }
.av-prose .flex-wrap { flex-wrap: wrap; }
.av-prose .items-center { align-items: center; }
.av-prose .items-baseline { align-items: baseline; }
.av-prose .justify-between { justify-content: space-between; }
.av-prose .list-none { list-style: none; margin: 0; padding: 0; }
.av-prose .m-0 { margin: 0; }
.av-prose .min-w-0 { min-inline-size: 0; }
.av-prose .shrink-0 { flex-shrink: 0; }
.av-prose .block { display: block; }
.av-prose .hidden { display: none; }
.av-prose .font-bold { font-weight: 700; }
.av-prose .text-text-muted { color: var(--color-text-muted); }
.av-prose .text-small { font-size: var(--text-small); }
.av-prose .text-center { text-align: center; }
.av-prose .gap-1\.5 { gap: 6px; }
.av-prose .gap-2 { gap: 8px; }
.av-prose .gap-3 { gap: 12px; }
.av-prose .gap-4 { gap: 16px; }
.av-prose .w-full { inline-size: 100%; }
.av-prose a[class~="text-text"] { color: var(--color-text); text-decoration: none; }
.av-prose a[class~="text-text"]:hover { color: var(--color-brand); }
.av-prose .rounded-card { border-radius: var(--radius-card); }
.av-prose p[class~="text-center"][class~="rounded-card"] { padding: 36px 20px; background: var(--color-surface-muted); border: 1px dashed var(--color-border); font-weight: 600; }
.av-prose ul.list-none { display: flex; flex-direction: column; gap: 14px; margin-block-end: 24px; }
/* cart line */
.av-prose ul.list-none > li[class~="grid"] {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 16px; padding: 14px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-surface);
  grid-template-areas: "head remove" "price price" "qty qty" "total total";
}
.av-prose [class*="grid-area:head"] { grid-area: head; display: flex; align-items: center; gap: 12px; min-inline-size: 0; }
.av-prose [class*="grid-area:price"] { grid-area: price; display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin: 0; }
.av-prose [class*="grid-area:qty"] { grid-area: qty; min-inline-size: 0; }
.av-prose [class*="grid-area:total"] { grid-area: total; margin: 0; font-weight: 700; }
.av-prose [class*="grid-area:remove"] { grid-area: remove; margin: 0; }
.av-prose li img[class~="object-cover"] { inline-size: 72px; block-size: 72px; object-fit: cover; border-radius: var(--radius-card); border: 1px solid var(--color-border); }
.av-prose li del { color: var(--color-text-muted); font-size: var(--text-small); }
.av-prose li form[action$="/cart/update"][class~="flex"] { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.av-prose li form label { margin: 0; color: var(--color-text-muted); font-size: var(--text-small); }
.av-prose li form div[class~="inline-flex"] { display: inline-flex; align-items: stretch; block-size: 46px; overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-button); background: var(--color-surface); }
.av-prose li form div[class~="inline-flex"] button { min-inline-size: 46px; min-block-size: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--color-text); font-size: 1.2rem; cursor: pointer; }
.av-prose li form div[class~="inline-flex"] button:hover { background: var(--color-surface-muted); }
.av-prose li form div[class~="inline-flex"] input { inline-size: 52px; min-block-size: 0; padding: 0; border: 0; border-inline: 1px solid var(--color-border); border-radius: 0; background: transparent; text-align: center; font-weight: 700; appearance: textfield; }
.av-prose li form div[class~="inline-flex"] input::-webkit-inner-spin-button { appearance: none; }
.av-prose li button[type="submit"][class*="py-1.5"] { min-block-size: 44px; padding-inline: 18px; border: 1px solid var(--color-border); border-radius: var(--radius-button); background: transparent; color: var(--color-text); font-size: var(--text-small); cursor: pointer; }
.av-prose li button[type="submit"][class*="text-danger"] { border-color: var(--color-danger, currentColor); color: var(--color-danger, currentColor); }
.av-prose section[aria-label="جمع سبد"] { max-inline-size: 440px; margin-inline-start: auto; padding: 22px; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-surface-muted); }
.av-prose section[aria-label="جمع سبد"] p { margin-block: 0 10px; }
.av-prose section[aria-label="جمع سبد"] .justify-between { display: flex; justify-content: space-between; gap: 16px; }
.av-prose section[aria-label="جمع سبد"] progress { inline-size: 100%; block-size: 6px; border: 0; border-radius: 99px; overflow: hidden; accent-color: var(--color-brand); appearance: none; background: var(--color-border); }
.av-prose section[aria-label="جمع سبد"] progress::-webkit-progress-bar { background: var(--color-border); }
.av-prose section[aria-label="جمع سبد"] progress::-webkit-progress-value { background: var(--color-brand); }
.av-prose section[aria-label="جمع سبد"] progress::-moz-progress-bar { background: var(--color-brand); }
.av-prose a[data-awix-checkout] { display: flex; align-items: center; justify-content: center; inline-size: 100%; min-block-size: 52px; margin-block: 14px 8px; border-radius: var(--radius-button); background: var(--color-brand); color: var(--color-brand-contrast); font-weight: 800; text-decoration: none; }
.av-prose a[data-awix-checkout]:hover, .av-prose a[data-awix-checkout]:focus-visible { filter: brightness(1.1); text-decoration: none; color: var(--color-brand-contrast); }
@media (min-width: 640px) {
  .av-prose ul.list-none > li[class~="grid"] { grid-template-columns: minmax(0, 1fr) 14rem auto; grid-template-areas: "head price remove" "qty total remove"; }
}
/* blog list and article */
.av-prose [data-awix-scale="blog"] > ul { display: grid; gap: 18px; grid-template-columns: repeat(auto-fill, minmax(min(280px, 100%), 1fr)); margin: 0; padding: 0; list-style: none; }
.av-prose [data-awix-blog-card] { overflow: hidden; border: 1px solid var(--color-border); border-radius: var(--radius-card); background: var(--color-surface); }
.av-prose [data-awix-blog-card] > a { display: flex; flex-direction: column; gap: 8px; block-size: 100%; padding: 12px; color: var(--color-text); text-decoration: none; }
.av-prose [data-awix-blog-card] img { inline-size: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: calc(var(--radius-card) - 4px); margin: 0; background: var(--color-surface-muted); }
.av-prose [data-awix-blog-card] h2 { margin: 0; font-size: 1rem; line-height: 1.8; }
.av-prose [data-awix-blog-card] p { margin: 0; font-size: var(--text-small); color: var(--color-text-muted); }
.av-prose [data-awix-blog-card] p.flex { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.av-prose [data-awix-blog-post] { display: flex; flex-direction: column; gap: 16px; max-inline-size: 72ch; }
.av-prose [data-awix-blog-post] header { display: flex; flex-direction: column; gap: 6px; }
.av-prose [data-awix-blog-post] p.flex { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 0; font-size: var(--text-small); color: var(--color-text-muted); }
.av-prose [data-awix-blog-post] img { inline-size: 100%; aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--radius-card); margin: 0; }
.av-prose [data-awix-blog-post] ul[aria-label] { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.av-prose [data-awix-blog-post] ul[aria-label] li { padding: 2px 14px; border: 1px solid var(--color-border); border-radius: 999px; background: var(--color-surface-muted); font-size: var(--text-small); }
