/* ============================================================
   VIDRO — кошик: доповнення до vidro-components.css (§10, §19)
   Шторка, апсел, промокод, Нова пошта з підказками, сторінка /cart.
   Без тіней і градієнтів: глибина — лініями 1px і білим простором.
   ============================================================ */

.v-panel--cart .v-panel__body > * { flex-shrink: 0; }

.v-cart-item__title a { text-decoration: none; }
.v-cart-item__price del { color: var(--color-muted); margin-right: var(--sp-1); font-size: var(--fs-meta); }
.v-cart-item__row .v-btn--ghost { height: 40px; padding-inline: var(--sp-2); font-size: var(--fs-meta); }
.v-stepper button[disabled] { color: var(--color-btn-disabled); cursor: not-allowed; }

/* Апсел: стрічка дрібниць */
.v-fillers__rail { margin-inline: calc(var(--gutter) * -1); padding-inline: var(--gutter); scroll-padding-inline: var(--gutter); }
.v-filler { display: flex; flex-direction: column; }
.v-filler__add { margin-top: auto; }
.v-filler__title a { text-decoration: none; }
.v-filler__price del { color: var(--color-muted); margin-right: var(--sp-1); }
a.v-filler__add { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }

/* Промокод і Нова пошта — в тілі шторки, під апселом */
.v-cart-extras { padding: var(--sp-4) var(--gutter); border-top: var(--border); }
.v-cart-extras .v-np { margin-bottom: 0; }

.v-promo__amount { display: inline-flex; align-items: baseline; gap: var(--sp-3); }
.v-promo__remove {
  font-size: var(--fs-small);
  color: var(--color-muted);
  text-decoration: underline;
  text-underline-offset: 3px;
  min-height: var(--tap-min);
}
.v-promo__remove:hover { color: var(--color-ink); }
.v-promo__applied { align-items: center; }

/* Підвал шторки: сума, примітка про доставку, кнопка */
.v-cart-shipnote { margin: var(--sp-1) 0 var(--sp-4); }
.v-panel--cart .v-panel__foot .v-btn--primary,
.v-cart-page__summary .v-btn--primary { text-decoration: none; }

.v-panel--cart .v-empty { padding-block: var(--sp-8); padding-inline: var(--gutter); }

/* Вибір країни — нативний select з власною стрілкою */
.v-select {
  appearance: none;
  -webkit-appearance: none;
  padding-right: calc(var(--sp-4) + 20px);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%23202020' stroke-width='1.5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right var(--sp-4) center;
  line-height: normal;
}
.v-np [hidden] { display: none !important; }

/* ---------- Підказки (combobox) ---------- */

.v-combo { position: relative; }
.v-combo__list {
  position: absolute;
  z-index: 5;
  left: 0; right: 0;
  top: calc(100% + 4px);
  max-height: 264px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0;
  padding: var(--sp-1) 0;
  list-style: none;
  background: var(--color-bg);
  border: 1px solid var(--color-ink);
  border-radius: var(--radius-input);
}
.v-combo__list[hidden] { display: none; }
.v-combo__option {
  padding: var(--sp-3) var(--sp-4);
  min-height: var(--tap-min);
  font-size: var(--fs-meta);
  line-height: var(--lh-meta);
  color: var(--color-body);
  cursor: pointer;
}
.v-combo__option + .v-combo__option { border-top: var(--border); }
.v-combo__option[aria-selected='true'],
.v-combo__option:hover { background: var(--color-surface); }
.v-combo__state { padding: var(--sp-3) var(--sp-4); font-size: var(--fs-meta); color: var(--color-muted); }

/* Шторка ріже все, що виходить за її межі, — у ній список не абсолютний, а в потоці */
.v-panel .v-combo__list { position: static; margin-top: 4px; max-height: 220px; }

/* ---------- Сторінка /cart ---------- */

.v-cart-page-wrap h1 { margin-bottom: var(--sp-6); }
.v-cart-page__items .v-fillers { padding-inline: 0; }
.v-cart-page__items .v-fillers__rail { margin-inline: 0; padding-inline: 0; }
.v-cart-page__items .v-cart-item { padding-inline: 0; }

@media (prefers-reduced-motion: reduce) {
  .v-combo__list { scroll-behavior: auto; }
}
