/* ФИТЭКО — доступность.
   Первая половина файла действует всегда и для всех: видимый фокус,
   контраст подписей, размер зон нажатия. Вторая включается кнопкой
   «Для слабовидящих» и перекрывает цвета темы. */

/* ── 1. Для всех ────────────────────────────────────────────────── */

/* Фокус с клавиатуры был не виден на 9 из 40 элементов: человек,
   который не пользуется мышью, терял место на странице. */
a:focus-visible, button:focus-visible, input:focus-visible,
select:focus-visible, textarea:focus-visible, summary:focus-visible,
[tabindex]:focus-visible, [role="button"]:focus-visible{
  outline:3px solid #006826 !important;
  outline-offset:2px !important;
  box-shadow:0 0 0 5px rgba(0,104,38,.22) !important;
  border-radius:4px}
html[data-a11y-scheme] a:focus-visible,
html[data-a11y-scheme] button:focus-visible,
html[data-a11y-scheme] input:focus-visible,
html[data-a11y-scheme] select:focus-visible,
html[data-a11y-scheme] textarea:focus-visible,
html[data-a11y-scheme] [tabindex]:focus-visible{
  outline:4px solid currentColor !important;box-shadow:none !important}

/* Серые подписи не добирали контраст (2,46 при норме 4,5). */
.wd-product-cats, .wd-product-cats a,
.woocommerce-breadcrumb, .woocommerce-breadcrumb a,
.wd-cat-count, .post-date, .meta-post-categories{color:#5A6B5C !important}

/* Пункты выпадающего меню (#838383 = 3,79) и плейсхолдер поиска (#857F7F = 3,93). */
.woodmart-nav-link, .wd-dropdown-menu a, .wd-sub-menu a{color:#4A4A4A !important}
input.s::placeholder, .searchform input::placeholder{color:#5E5E5E !important;opacity:1}

/* Ссылка «к содержимому» для клавиатуры и экранных дикторов. */
.fith-skip{position:absolute;left:-9999px;top:0;z-index:100000;
  padding:12px 18px;background:#006826;color:#fff;font-weight:600;border-radius:0 0 10px 0}
.fith-skip:focus{left:0}

/* Анимации — по желанию системы. */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important}
}

/* ── 2. Кнопка и панель ─────────────────────────────────────────── */

.fith-a11y-bar{position:relative;z-index:9998;background:#F1F7F1;border-bottom:1px solid #e1ebe2}
.fith-a11y-open{display:flex;align-items:center;gap:8px;width:fit-content;margin:0 auto;padding:7px 16px;
  min-height:38px;border:0;background:none;color:#1D3B2A;font:600 13.5px/1.2 inherit;cursor:pointer}
.fith-a11y-open:hover{color:#006826}
.fith-a11y-open svg{flex:0 0 auto}

.fith-a11y{position:relative;z-index:9999;padding:18px 16px 20px;
  background:#F7FAF7;border-bottom:2px solid #d9e6da;color:#1D3B2A}
.fith-a11y[hidden]{display:none}
.fith-a11y__in{display:flex;flex-wrap:wrap;gap:18px 26px;max-width:1200px;margin:0 auto;align-items:flex-start}

.fith-a11y__g{min-width:0;margin:0;padding:0;border:0}
.fith-a11y__g legend{padding:0 0 7px;font-size:12px;font-weight:700;letter-spacing:.04em;
  text-transform:uppercase;color:#5A6B5C}
.fith-a11y__opts{display:flex;flex-wrap:wrap;gap:6px}

.fith-a11y__o{display:inline-flex;align-items:center;gap:7px;min-height:40px;padding:8px 13px;
  border:1px solid #cfdfd1;border-radius:10px;background:#fff;color:#1D3B2A;
  font:500 13.5px/1.2 inherit;cursor:pointer;transition:border-color .15s,background .15s}
.fith-a11y__o:hover{border-color:#006826;background:#F1F7F1}
.fith-a11y__o[aria-pressed="true"]{border-color:#006826;background:#006826;color:#fff;font-weight:700}
.fith-a11y__o i{font-style:normal;font-weight:700}
.fith-a11y__g[data-k="size"] .fith-a11y__o:nth-child(1) i{font-size:13px}
.fith-a11y__g[data-k="size"] .fith-a11y__o:nth-child(2) i{font-size:16px}
.fith-a11y__g[data-k="size"] .fith-a11y__o:nth-child(3) i{font-size:19px}
.fith-a11y__g[data-k="size"] .fith-a11y__o:nth-child(4) i{font-size:23px}

/* Образец схемы прямо в кнопке — видно, что получишь, до нажатия. */
.fith-a11y__g[data-k="scheme"] .fith-a11y__o i{
  display:inline-flex;align-items:center;justify-content:center;
  width:26px;height:22px;border:1px solid currentColor;border-radius:5px;font-size:12px}
.fith-a11y__o[data-v="wb"] i{background:#fff;color:#000;border-color:#999}
.fith-a11y__o[data-v="bw"] i{background:#000;color:#fff;border-color:#000}
.fith-a11y__o[data-v="bu"] i{background:#9DD1FF;color:#063462;border-color:#063462}
.fith-a11y__o[data-v="yb"] i{background:#000;color:#FFDC00;border-color:#000}

.fith-a11y__act{display:flex;flex-wrap:wrap;gap:8px;align-self:flex-end}
.fith-a11y__reset,.fith-a11y__close{min-height:40px;padding:9px 16px;border-radius:10px;
  font:600 13.5px/1.2 inherit;cursor:pointer;border:1px solid #cfdfd1;background:#fff;color:#1D3B2A}
.fith-a11y__close{border-color:#006826;background:#006826;color:#fff}
.fith-a11y__reset:hover{border-color:#006826;color:#006826}
.fith-a11y__close:hover{background:#00551f;border-color:#00551f}

.fith-a11y__hint{flex:1 1 100%;margin:2px 0 0;font-size:12.5px;line-height:1.5;color:#5A6B5C}
.fith-a11y__hint kbd{padding:1px 5px;border:1px solid #cfdfd1;border-radius:4px;
  background:#fff;font:600 11.5px/1.4 inherit}

@media (max-width:700px){
  /* На телефоне панель занимала 913 px — весь экран и ещё немного.
     Ограничиваем и прокручиваем внутри, чтобы сайт оставался виден. */
  .fith-a11y{max-height:72vh;overflow:auto;overscroll-behavior:contain;padding:14px 14px 16px}
  .fith-a11y__in{gap:14px}
  .fith-a11y__g{flex:1 1 100%}
  .fith-a11y__opts{gap:5px}
  .fith-a11y__o{padding:8px 11px;font-size:13px}
  .fith-a11y__act{width:100%}
  .fith-a11y__reset,.fith-a11y__close{flex:1 1 auto}
}

/* Критерий 2.5.5: по кнопке должно быть удобно попасть пальцем. */
@media (pointer:coarse){
  .fith-a11y__o,.fith-a11y__reset,.fith-a11y__close,.fith-a11y-open{min-height:44px}
}

/* ── 3. Цветовые схемы ──────────────────────────────────────────── */

/* Перекрываем всё: тема красит цвета инлайном из настроек Elementor,
   точечными правилами её не догнать. Внутри схемы декоративные фоны
   и тени убираются намеренно — они мешают читать. */
html[data-a11y-scheme] body,
html[data-a11y-scheme] body *:not(svg):not(svg *){
  background-image:none !important;
  box-shadow:none !important;
  text-shadow:none !important}

html[data-a11y-scheme] body,
html[data-a11y-scheme] body *:not(svg):not(svg *):not(.fith-a11y__o i){
  background-color:var(--a-bg) !important;
  color:var(--a-fg) !important;
  border-color:var(--a-fg) !important}

html[data-a11y-scheme] a,
html[data-a11y-scheme] a *{color:var(--a-link) !important;text-decoration:underline !important;
  text-underline-offset:3px !important}
html[data-a11y-scheme] a:hover,
html[data-a11y-scheme] a:hover *{background-color:var(--a-fg) !important;color:var(--a-bg) !important}

html[data-a11y-scheme] button,
html[data-a11y-scheme] input,
html[data-a11y-scheme] select,
html[data-a11y-scheme] textarea,
html[data-a11y-scheme] .button,
html[data-a11y-scheme] [class*="add-to-cart"],
html[data-a11y-scheme] [class*="checkout-button"]{
  border:2px solid var(--a-fg) !important;border-radius:8px !important}

html[data-a11y-scheme] svg{fill:currentColor !important;stroke:currentColor !important}
html[data-a11y-scheme] hr{border-color:var(--a-fg) !important}

html[data-a11y-scheme="wb"]{--a-bg:#ffffff;--a-fg:#000000;--a-link:#00309c}
html[data-a11y-scheme="bw"]{--a-bg:#000000;--a-fg:#ffffff;--a-link:#9fd4ff}
html[data-a11y-scheme="bu"]{--a-bg:#9DD1FF;--a-fg:#063462;--a-link:#063462}
html[data-a11y-scheme="yb"]{--a-bg:#000000;--a-fg:#FFDC00;--a-link:#FFDC00}

/* Активная кнопка в панели должна оставаться различимой. */
html[data-a11y-scheme] .fith-a11y__o[aria-pressed="true"]{
  background-color:var(--a-fg) !important;color:var(--a-bg) !important}
html[data-a11y-scheme] .fith-a11y__o[aria-pressed="true"] *{
  background-color:transparent !important;color:var(--a-bg) !important}

/* ── 4. Интервалы, начертание, изображения ──────────────────────── */

html[data-a11y-ls] body *:not(svg):not(svg *){letter-spacing:var(--fith-a11y-ls) !important;
  word-spacing:.08em !important}

html[data-a11y-font="serif"] body *:not(svg):not(svg *){
  font-family:Georgia,"Times New Roman",serif !important}

/* Межстрочный интервал: критерий 1.4.12 просит не меньше 1,5. */
html[data-a11y-lh] body *:not(svg):not(svg *){line-height:var(--fith-a11y-lh) !important}
html[data-a11y-lh] .fith-a11y__o{line-height:1.2 !important}

/* Движущееся отвлекает и мешает читать: критерий 2.2.2 требует паузу. */
html[data-a11y-motion="off"] *,
html[data-a11y-motion="off"] *::before,
html[data-a11y-motion="off"] *::after{
  animation:none !important;transition:none !important;scroll-behavior:auto !important}

/* Крупный текст: межстрочный расширяем вместе с размером, иначе строки слипаются. */
html[data-a11y-size] body *:not(svg):not(svg *){line-height:1.6 !important}
html[data-a11y-size="1.5"] body *:not(svg):not(svg *),
html[data-a11y-size="2"] body *:not(svg):not(svg *){line-height:1.7 !important}
html[data-a11y-size] .fith-a11y__o{line-height:1.2 !important}
