/**
 * EK Accessibility + touch targets + contrast
 * Подключать ПОСЛЕ ek-theme.css
 * Цель: Accessibility 95–100
 */

/* ----- Focus visible (клавиатура) ----- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline: 2px solid #ff6b00 !important;
  outline-offset: 2px !important;
}

/* ----- Touch targets ≥ 44px ----- */
#header .ek-header-icons .ek-icon-btn,
#header .nav-top-right .nav-item a,
#header .nav-main .ek-burger,
.btn-open-mobile-nav,
.a-search-icon,
.a-mobile-cart,
#header .top-search-bar .btn-search {
  min-width: 44px !important;
  min-height: 44px !important;
}

#header .nav-main .navbar-nav > li > a {
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
}

/* Мобильные табы меню */
.nav-tabs-mobile-menu .nav-link {
  min-height: 44px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* ----- Контраст текста ----- */
#header .ek-header-icons .ek-icon-label,
#header .nav-top-right .label-nav-icon {
  color: #ffffff !important;
  opacity: 1 !important;
}

#header .nav-main .navbar-nav > li > a {
  color: #1a1a1a !important;
}

.product-item .product-title a,
.product-item .price {
  color: #1a1a1a !important;
}

/* Ссылки в футере — выше контраст */
#footer a {
  color: #c5cdd8 !important;
}
#footer a:hover {
  color: #ff6b00 !important;
}

/* ----- Изображения: резерв места (CLS) ----- */
.product-item .img-product,
.product-item .product-image,
.ek-mosaic-item {
  aspect-ratio: 1 / 1;
  background: #f0f2f5;
}

.product-item .img-product img,
.product-item .product-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Баннер/слайдер — стабильная высота */
.section-slider,
.slider-container,
.home-slider {
  min-height: 180px;
}

/* ----- Скрытый текст для screen readers ----- */
.ek-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ----- aria-hidden не должен перехватывать фокус ----- */
[aria-hidden="true"] {
  pointer-events: none !important;
}
[aria-hidden="true"] a,
[aria-hidden="true"] button {
  visibility: hidden !important;
}

/* ----- Cookie banner contrast ----- */
.cookie-consent,
#cookie-consent,
[class*="cookie"] {
  color: #1a1a1a;
}
