/* ═══════════════════════════════════════════
   Ai-vita.ru — Accessible Vision v1.3.0
   Режимы — ГОСТ Р 52872-2019 / WCAG 2.1
   ═══════════════════════════════════════════ */

/* ══════ РАЗМЕР ШРИФТА ══════ */

html.avav-fs-normal  { font-size: 100% !important; }
html.avav-fs-large   { font-size: 150% !important; }
html.avav-fs-xlarge  { font-size: 200% !important; }

html.avav-fs-large body *,
html.avav-fs-xlarge body * {
    max-width: 100% !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
}

/* ══════ ЦВЕТОВЫЕ СХЕМЫ ══════ */

/* --- Чёрным по белому --- */
html.avav-cs-white-black,
html.avav-cs-white-black body,
html.avav-cs-white-black body * {
    background-color: #ffffff !important;
    color: #000000 !important;
    border-color: #000000 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-white-black a,
html.avav-cs-white-black a * {
    color: #000099 !important;
    text-decoration: underline !important;
}
html.avav-cs-white-black .avav-opt.avav-active {
    background-color: #000 !important;
    color: #fff !important;
}

/* --- Белым по чёрному --- */
html.avav-cs-black-white,
html.avav-cs-black-white body,
html.avav-cs-black-white body * {
    background-color: #000000 !important;
    color: #ffffff !important;
    border-color: #ffffff !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-black-white a,
html.avav-cs-black-white a * {
    color: #99ccff !important;
    text-decoration: underline !important;
}
html.avav-cs-black-white .avav-opt.avav-active {
    background-color: #fff !important;
    color: #000 !important;
}

/* --- Тёмно-синяя --- */
html.avav-cs-dark-blue,
html.avav-cs-dark-blue body,
html.avav-cs-dark-blue body * {
    background-color: #001040 !important;
    color: #a0d0ff !important;
    border-color: #3366aa !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-dark-blue a,
html.avav-cs-dark-blue a * {
    color: #66bbff !important;
    text-decoration: underline !important;
}
html.avav-cs-dark-blue .avav-opt.avav-active {
    background-color: #4488cc !important;
    color: #001040 !important;
}

/* --- Синим по жёлтому --- */
html.avav-cs-blue-yellow,
html.avav-cs-blue-yellow body,
html.avav-cs-blue-yellow body * {
    background-color: #ffee00 !important;
    color: #002288 !important;
    border-color: #002288 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-blue-yellow a,
html.avav-cs-blue-yellow a * {
    color: #001166 !important;
    text-decoration: underline !important;
}
html.avav-cs-blue-yellow .avav-opt.avav-active {
    background-color: #002288 !important;
    color: #ffee00 !important;
}

/* --- Зелёная --- */
html.avav-cs-green,
html.avav-cs-green body,
html.avav-cs-green body * {
    background-color: #0a1e0a !important;
    color: #55ee55 !important;
    border-color: #22aa22 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-green a,
html.avav-cs-green a * {
    color: #88ff88 !important;
    text-decoration: underline !important;
}
html.avav-cs-green .avav-opt.avav-active {
    background-color: #33aa33 !important;
    color: #0a1e0a !important;
}

/* --- Коричневым по бежевому --- */
html.avav-cs-beige,
html.avav-cs-beige body,
html.avav-cs-beige body * {
    background-color: #f5f0e0 !important;
    color: #4a2d00 !important;
    border-color: #8b6914 !important;
    text-shadow: none !important;
    box-shadow: none !important;
}
html.avav-cs-beige a,
html.avav-cs-beige a * {
    color: #5b3500 !important;
    text-decoration: underline !important;
}
html.avav-cs-beige .avav-opt.avav-active {
    background-color: #8b6914 !important;
    color: #f5f0e0 !important;
}

/* --- Панель не ломается в схемах --- */
html[class*="avav-cs-"] .avav-panel,
html[class*="avav-cs-"] .avav-panel *,
html[class*="avav-cs-"] .avav-btn {
    background-color: inherit;
    color: inherit;
    border-color: inherit;
}

/* ══════ ТИП ШРИФТА ══════ */

html.avav-ff-serif body,
html.avav-ff-serif body * {
    font-family: Georgia, "Times New Roman", Times, serif !important;
}

html.avav-ff-sans-serif body,
html.avav-ff-sans-serif body * {
    font-family: Arial, Verdana, Helvetica, sans-serif !important;
}

/* ══════ МЕЖБУКВЕННЫЙ ══════ */

html.avav-ls-medium body * { letter-spacing: 2px !important; }
html.avav-ls-large body *  { letter-spacing: 4px !important; }

/* ══════ МЕЖСТРОЧНЫЙ ══════ */

html.avav-lh-normal body * { line-height: 1.5 !important; }
html.avav-lh-medium body * { line-height: 2 !important; }
html.avav-lh-large body *  { line-height: 2.5 !important; }

/* ══════ ИЗОБРАЖЕНИЯ ══════ */

html.avav-img-hide img,
html.avav-img-hide svg:not(.avav-btn-icon),
html.avav-img-hide picture,
html.avav-img-hide video,
html.avav-img-hide [style*="background-image"] {
    opacity: 0 !important;
    visibility: hidden !important;
}

html.avav-img-grayscale img,
html.avav-img-grayscale svg:not(.avav-btn-icon),
html.avav-img-grayscale picture,
html.avav-img-grayscale video,
html.avav-img-grayscale [style*="background-image"] {
    filter: grayscale(100%) !important;
}

html.avav-img-hide .avav-panel img,
html.avav-img-hide .avav-panel svg {
    opacity: 1 !important;
    visibility: visible !important;
}

/* ══════ КУРСОР ══════ */

html.avav-cursor-large,
html.avav-cursor-large * {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M4 4l16 40 6-16 16-6z' fill='%23000' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") 4 4, auto !important;
}

html.avav-cursor-large a,
html.avav-cursor-large button,
html.avav-cursor-large [role="button"],
html.avav-cursor-large input[type="submit"],
html.avav-cursor-large select {
    cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48'%3E%3Cpath d='M16 4v40l8-10h14z' fill='%23000' stroke='%23fff' stroke-width='2'/%3E%3C/svg%3E") 16 4, pointer !important;
}

/* ══════ ФОКУС ══════ */

html[class*="avav-"] *:focus-visible {
    outline: 3px solid #ffcc00 !important;
    outline-offset: 2px !important;
}