/*! Sendev Vision 1.2.0 | Accessibility assistance for 1C-Bitrix | MIT */
:root {
    --sv-ui-font: Arial, Helvetica, sans-serif;
    --sv-ui-text: #111111;
    --sv-ui-bg: #ffffff;
    --sv-ui-border: #111111;
    --sv-ui-accent: #005fcc;
    --sv-ui-focus: #ffbf47;
    --sv-content-text: #000000;
    --sv-content-bg: #ffffff;
    --sv-content-link: #003c8f;
    --sv-content-border: #000000;
    --sv-letter-spacing: normal;
    --sv-line-height: 1.5;
    --sv-content-font: Arial, Helvetica, sans-serif;
}

.sendev-vision-ui,
.sendev-vision-ui * {
    box-sizing: border-box;
    font-family: var(--sv-ui-font) !important;
    letter-spacing: normal !important;
    line-height: 1.35 !important;
    text-transform: none !important;
}

.sendev-vision-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;
}

.sendev-vision-trigger {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    min-width: 44px;
    min-height: 44px;
    padding: 0.65rem 0.9rem;
    border: 2px solid #111111;
    border-radius: 0.35rem;
    background: #ffffff;
    color: #111111;
    font: 700 16px/1.2 Arial, Helvetica, sans-serif;
    cursor: pointer;
    text-decoration: none;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.28);
    z-index: 2147482000;
}

.sendev-vision-trigger:hover,
.sendev-vision-trigger:focus-visible,
.sendev-vision-trigger.is-active {
    background: #111111;
    color: #ffffff;
}

.sendev-vision-trigger:focus-visible,
.sendev-vision-ui button:focus-visible,
.sendev-vision-ui a:focus-visible,
.sendev-vision-panel:focus-visible,
.sendev-vision-skip-link:focus {
    outline: 4px solid var(--sv-ui-focus) !important;
    outline-offset: 3px !important;
}

.sendev-vision-trigger--fixed {
    position: fixed;
}

html[data-sv-button-position="top-right"] .sendev-vision-trigger--fixed { top: 1rem; right: 1rem; }
html[data-sv-button-position="top-left"] .sendev-vision-trigger--fixed { top: 1rem; left: 1rem; }
html[data-sv-button-position="bottom-right"] .sendev-vision-trigger--fixed { right: 1rem; bottom: 1rem; }
html[data-sv-button-position="bottom-left"] .sendev-vision-trigger--fixed { left: 1rem; bottom: 1rem; }

html.sendev-vision-toolbar-open .sendev-vision-trigger--fixed {
    display: none !important;
}

.sendev-vision-trigger__icon {
    display: inline-flex;
    flex: 0 0 auto;
}

.sendev-vision-skip-link {
    position: fixed;
    top: 0.5rem;
    left: 0.5rem;
    z-index: 2147483647;
    padding: 0.75rem 1rem;
    color: #ffffff !important;
    background: #111111 !important;
    border: 2px solid #ffffff;
    text-decoration: underline;
    transform: translateY(-150%);
    transition: transform 0.1s linear;
}

.sendev-vision-skip-link:focus {
    transform: translateY(0);
}

/* Non-modal toolbar. It remains in normal document flow and does not block the page. */
.sendev-vision-panel[hidden],
.sendev-vision-toolbar__more[hidden] {
    display: none !important;
}

.sendev-vision-panel {
    position: relative;
    z-index: 2147481000;
    width: min(1140px, calc(100% - 2rem));
    margin: 0 auto 1.75rem;
    border: 1px solid #4b4b4b;
    border-top: 0;
    border-radius: 0 0 0.25rem 0.25rem;
    background: var(--sv-ui-bg) !important;
    color: var(--sv-ui-text) !important;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.12);
}

.sendev-vision-toolbar__main {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.8rem 1rem;
    min-height: 94px;
    padding: 1rem 1.5rem;
}

.sendev-vision-toolbar__control,
.sendev-vision-toolbar__icons,
.sendev-vision-toolbar__buttons {
    display: inline-flex;
    align-items: stretch;
}

.sendev-vision-toolbar__control {
    gap: 0.55rem;
    align-items: center;
}

.sendev-vision-toolbar__icons {
    gap: 0.75rem;
    margin-left: 0.2rem;
}

.sendev-vision-toolbar__label {
    color: var(--sv-ui-text) !important;
    background: transparent !important;
    font-size: 1.25rem !important;
    font-weight: 400 !important;
    white-space: nowrap;
}

.sendev-vision-ui button,
.sendev-vision-ui a[data-sv-alternative] {
    min-height: 44px;
    padding: 0.55rem 0.75rem;
    border: 1px solid var(--sv-ui-border);
    border-radius: 0.25rem;
    background: var(--sv-ui-bg);
    color: var(--sv-ui-text);
    font-size: 1rem !important;
    font-weight: 600 !important;
    cursor: pointer;
    text-decoration: none;
}

.sendev-vision-ui button:hover,
.sendev-vision-ui button.is-active,
.sendev-vision-ui button[aria-pressed="true"],
.sendev-vision-ui button[aria-checked="true"],
.sendev-vision-ui a[data-sv-alternative]:hover {
    box-shadow: inset 0 -4px 0 currentColor;
}

.sendev-vision-ui button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.sendev-vision-toolbar__skip {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    white-space: nowrap;
    font-size: 1.15rem !important;
    font-weight: 400 !important;
}

.sendev-vision-toolbar__skip-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    border-radius: 50%;
    background: currentColor;
    color: #ffffff;
    font-size: 0.85rem !important;
    line-height: 1 !important;
}

.sendev-vision-toolbar__buttons button {
    min-width: 40px;
    min-height: 44px;
    padding: 0.35rem 0.55rem;
    border-radius: 0;
}

.sendev-vision-toolbar__buttons button + button {
    margin-left: -1px;
}

.sendev-vision-font-quick button:nth-child(1) > span[aria-hidden="true"] { font-size: 1rem !important; }
.sendev-vision-font-quick button:nth-child(2) > span[aria-hidden="true"] { font-size: 1.45rem !important; }
.sendev-vision-font-quick button:nth-child(3) > span[aria-hidden="true"] { font-size: 1.9rem !important; }

.sendev-vision-theme button[data-sv-value="white"] { background: #ffffff; color: #000000; }
.sendev-vision-theme button[data-sv-value="black"] { background: #000000; color: #ffffff; }
.sendev-vision-theme button[data-sv-value="blue"] { background: #dff6ff; color: #0b4f8a; }
.sendev-vision-theme button[data-sv-value="beige"] { background: #f5e6c8; color: #5b421f; }
.sendev-vision-theme button[data-sv-value="green"] { background: #30241a; color: #b8f34a; }

.sendev-vision-theme--quick button {
    font-size: 1.15rem !important;
    font-weight: 500 !important;
}

.sendev-vision-toolbar__icon,
.sendev-vision-toolbar__hide {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    min-width: 46px;
    padding: 0.45rem !important;
}

.sendev-vision-toolbar__icon svg {
    display: block;
}

.sendev-vision-toolbar__dots {
    font-size: 2rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
}

.sendev-vision-toolbar__more-button {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    margin-left: auto;
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    white-space: nowrap;
}

.sendev-vision-toolbar__more-button > span[aria-hidden="true"] {
    font-size: 1.25rem !important;
}

.sendev-vision-toolbar__hide {
    font-size: 1.7rem !important;
    font-weight: 400 !important;
}

.sendev-vision-toolbar__more {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 1rem;
    padding: 1rem 1.5rem 1.5rem;
    border-top: 1px solid #777777;
    background: #ffffff !important;
    color: #111111 !important;
}

.sendev-vision-setting {
    min-width: 0;
    padding: 0.85rem;
    border: 1px solid #777777;
    border-radius: 0.25rem;
}

.sendev-vision-setting h3 {
    margin: 0 0 0.7rem;
    color: #111111 !important;
    background: transparent !important;
    font-size: 1.05rem !important;
    font-weight: 700 !important;
}

.sendev-vision-stepper,
.sendev-vision-choice-group,
.sendev-vision-switches,
.sendev-vision-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 0.55rem;
}

.sendev-vision-stepper output {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 6rem;
    min-height: 44px;
    padding: 0.5rem;
    border: 1px solid var(--sv-ui-border);
    color: #111111 !important;
    background: #f2f2f2 !important;
    font-size: 1.125rem !important;
    font-weight: 700 !important;
}

.sendev-vision-switch--wide {
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    text-align: left;
}

.sendev-vision-switch__track {
    position: relative;
    width: 3rem;
    height: 1.6rem;
    flex: 0 0 auto;
    border: 2px solid currentColor;
    border-radius: 1rem;
}

.sendev-vision-switch__track span {
    position: absolute;
    top: 0.18rem;
    left: 0.18rem;
    width: 1rem;
    height: 1rem;
    border-radius: 50%;
    background: currentColor;
    transition: left 0.1s linear;
}

.sendev-vision-switch--wide[aria-checked="true"] .sendev-vision-switch__track span {
    left: 1.55rem;
}

.sendev-vision-actions {
    grid-column: 1 / -1;
    padding-top: 0.25rem;
}

.sendev-vision-actions__primary {
    background: #111111 !important;
    color: #ffffff !important;
}

.sendev-vision-keyboard-help {
    grid-column: 1 / -1;
    margin: 0;
    padding: 0.8rem;
    border-left: 5px solid var(--sv-ui-accent);
    background: #eef6ff !important;
    color: #111111 !important;
    font-size: 0.95rem !important;
}

.sendev-vision-embed-placeholder {
    display: block;
    margin: 0.75rem 0;
    padding: 1rem;
    border: 3px dashed currentColor;
    background: #ffffff !important;
    color: #000000 !important;
}

@media (max-width: 980px) {
    .sendev-vision-toolbar__more-button { margin-left: 0; }
}

@media (max-width: 720px) {
    .sendev-vision-panel {
        width: 100%;
        margin-bottom: 1rem;
        border-right: 0;
        border-left: 0;
        border-radius: 0;
    }
    .sendev-vision-toolbar__main { padding: 0.75rem; }
    .sendev-vision-toolbar__control { flex-wrap: wrap; }
    .sendev-vision-toolbar__more { grid-template-columns: 1fr; padding: 0.75rem; }
    .sendev-vision-toolbar__more-button { margin-left: 0; }
    .sendev-vision-trigger__text { display: none; }
    .sendev-vision-trigger { padding: 0.65rem; }
}

@media (max-width: 460px) {
    .sendev-vision-toolbar__control,
    .sendev-vision-toolbar__icons,
    .sendev-vision-toolbar__more-button {
        width: 100%;
    }
    .sendev-vision-toolbar__buttons { flex-wrap: wrap; }
    .sendev-vision-toolbar__more-button { justify-content: center; }
    .sendev-vision-toolbar__hide { margin-left: auto; }
}

@media (prefers-reduced-motion: reduce) {
    .sendev-vision-ui *,
    .sendev-vision-skip-link {
        animation-duration: 0.001ms !important;
        transition-duration: 0.001ms !important;
    }
}

@media (forced-colors: active) {
    .sendev-vision-trigger,
    .sendev-vision-panel,
    .sendev-vision-ui button,
    .sendev-vision-setting {
        forced-color-adjust: auto;
    }
}

/* Accessible content view */
html.sendev-vision-active[data-sv-theme="white"] {
    --sv-content-text: #000000;
    --sv-content-bg: #ffffff;
    --sv-content-link: #003c8f;
    --sv-content-border: #000000;
}
html.sendev-vision-active[data-sv-theme="black"] {
    --sv-content-text: #ffffff;
    --sv-content-bg: #000000;
    --sv-content-link: #7fd7ff;
    --sv-content-border: #ffffff;
}
html.sendev-vision-active[data-sv-theme="blue"] {
    --sv-content-text: #001f3f;
    --sv-content-bg: #dff6ff;
    --sv-content-link: #002e7a;
    --sv-content-border: #001f3f;
}
html.sendev-vision-active[data-sv-theme="beige"] {
    --sv-content-text: #3b2416;
    --sv-content-bg: #f5e6c8;
    --sv-content-link: #5a1f00;
    --sv-content-border: #3b2416;
}
html.sendev-vision-active[data-sv-theme="green"] {
    --sv-content-text: #003b2f;
    --sv-content-bg: #e8f5e9;
    --sv-content-link: #003c7a;
    --sv-content-border: #003b2f;
}

html.sendev-vision-active[data-sv-font-family="sans"] { --sv-content-font: Arial, Helvetica, sans-serif; }
html.sendev-vision-active[data-sv-font-family="serif"] { --sv-content-font: Georgia, "Times New Roman", serif; }
html.sendev-vision-active[data-sv-letter-spacing="normal"] { --sv-letter-spacing: normal; }
html.sendev-vision-active[data-sv-letter-spacing="medium"] { --sv-letter-spacing: 0.08em; }
html.sendev-vision-active[data-sv-letter-spacing="large"] { --sv-letter-spacing: 0.16em; }
html.sendev-vision-active[data-sv-line-height="normal"] { --sv-line-height: 1.5; }
html.sendev-vision-active[data-sv-line-height="medium"] { --sv-line-height: 1.75; }
html.sendev-vision-active[data-sv-line-height="large"] { --sv-line-height: 2; }

html.sendev-vision-active body {
    min-width: 0 !important;
    background: var(--sv-content-bg) !important;
    color: var(--sv-content-text) !important;
    font-family: var(--sv-content-font) !important;
    overflow-x: auto;
}

html.sendev-vision-active body :where(p,li,dt,dd,blockquote,figcaption,caption,h1,h2,h3,h4,h5,h6,a,button,label,legend,input,select,textarea,summary,th,td,code,pre,[role="button"],[role="link"],[role="tab"],[role="menuitem"]):not(.sendev-vision-ui):not(.sendev-vision-ui *) {
    color: var(--sv-content-text) !important;
    border-color: var(--sv-content-border) !important;
    font-family: var(--sv-content-font) !important;
    letter-spacing: var(--sv-letter-spacing) !important;
    line-height: var(--sv-line-height) !important;
    overflow-wrap: anywhere;
    text-shadow: none !important;
}

html.sendev-vision-active body :where(a,[role="link"]):not(.sendev-vision-ui):not(.sendev-vision-ui *) {
    color: var(--sv-content-link) !important;
    text-decoration: underline !important;
    text-decoration-thickness: 0.12em !important;
    text-underline-offset: 0.15em !important;
}

html.sendev-vision-active body :where(button,input,select,textarea,[role="button"]):not(.sendev-vision-ui):not(.sendev-vision-ui *) {
    min-height: 44px;
    min-width: 44px;
    background: var(--sv-content-bg) !important;
    color: var(--sv-content-text) !important;
    border: 2px solid var(--sv-content-border) !important;
}

html.sendev-vision-active body :where(a,button,input,select,textarea,[tabindex]):not(.sendev-vision-ui):not(.sendev-vision-ui *):focus-visible {
    outline: 4px solid #ffbf47 !important;
    outline-offset: 3px !important;
}

html.sendev-vision-active img,
html.sendev-vision-active svg,
html.sendev-vision-active video,
html.sendev-vision-active iframe {
    max-width: 100% !important;
}

html.sendev-vision-active[data-sv-images="grayscale"] img:not(.sendev-vision-ui img),
html.sendev-vision-active[data-sv-images="grayscale"] picture:not(.sendev-vision-ui picture) {
    filter: grayscale(100%) contrast(115%) !important;
}

html.sendev-vision-active[data-sv-images="hidden"] img:not(.sendev-vision-ui img),
html.sendev-vision-active[data-sv-images="hidden"] picture:not(.sendev-vision-ui picture),
html.sendev-vision-active[data-sv-images="hidden"] svg:not(.sendev-vision-ui svg) {
    visibility: hidden !important;
}

html.sendev-vision-no-motion,
html.sendev-vision-no-motion *:not(.sendev-vision-ui):not(.sendev-vision-ui *) {
    scroll-behavior: auto !important;
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
    caret-color: auto !important;
}

@media print {
    .sendev-vision-ui,
    .sendev-vision-trigger,
    .sendev-vision-skip-link {
        display: none !important;
    }
}

/* Sendev Vision 1.2 additions */
.sendev-vision-range {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
}

.sendev-vision-range input[type="range"] {
    min-width: 10rem;
    min-height: 44px;
    flex: 1 1 auto;
    accent-color: #111111;
}

.sendev-vision-range output {
    min-width: 4.5rem;
    padding: 0.45rem;
    border: 1px solid #111111;
    text-align: center;
    background: #ffffff !important;
    color: #111111 !important;
    font-weight: 700 !important;
}

.sendev-vision-speech-actions,
.sendev-vision-speech-setting {
    grid-column: span 2;
}

.sendev-vision-speech-status {
    display: block;
    min-height: 1.5rem;
    margin-top: 0.65rem;
    color: #111111 !important;
    background: transparent !important;
    font-weight: 700 !important;
}

.sendev-vision-actions--footer {
    grid-column: 1 / -1;
    border-top: 1px solid #777777;
    padding-top: 1rem;
}

.sendev-vision-braille {
    grid-column: 1 / -1;
    padding: 1rem;
    border: 2px solid #111111;
    background: #ffffff !important;
    color: #111111 !important;
}

.sendev-vision-braille[hidden] {
    display: none !important;
}

.sendev-vision-braille h3,
.sendev-vision-braille p {
    color: #111111 !important;
    background: transparent !important;
}

.sendev-vision-braille pre {
    max-height: 24rem;
    margin: 0;
    padding: 1rem;
    overflow: auto;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    border: 1px solid #555555;
    background: #f7f7f7 !important;
    color: #000000 !important;
    font-family: "Segoe UI Symbol", "Noto Sans Symbols 2", sans-serif !important;
    font-size: 1.4rem !important;
    line-height: 1.7 !important;
}

.sendev-vision-media-alternative,
.sendev-vision-text-alternative,
.sendev-vision-captcha-button {
    max-width: 100%;
    margin: 0.6rem 0;
    color: #000000 !important;
    background: #ffffff !important;
    border: 2px solid #000000;
}

.sendev-vision-media-alternative {
    padding: 0.85rem;
    border-style: dashed;
    font-size: 1rem !important;
}

.sendev-vision-text-alternative {
    padding: 0.65rem 0.85rem;
}

.sendev-vision-text-alternative summary {
    min-height: 44px;
    cursor: pointer;
    font-weight: 700 !important;
    text-decoration: underline;
}

.sendev-vision-text-alternative > div {
    padding-top: 0.65rem;
    white-space: pre-wrap;
}

.sendev-vision-captcha-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    margin-left: 0.5rem;
    padding: 0.55rem 0.8rem;
    border-radius: 0.25rem;
    cursor: pointer;
    font-size: 1rem !important;
    font-weight: 700 !important;
}

.sendev-vision-captcha-button:focus-visible {
    outline: 4px solid #ffbf47 !important;
    outline-offset: 3px !important;
}

html.sendev-vision-text-only body :not(.sendev-vision-ui):not(.sendev-vision-ui *) {
    background-image: none !important;
    text-shadow: none !important;
}

html.sendev-vision-text-only canvas:not(.sendev-vision-ui canvas) {
    display: none !important;
}

html.sendev-vision-active [hidden] {
    display: none !important;
}

@media (max-width: 720px) {
    .sendev-vision-speech-actions,
    .sendev-vision-speech-setting {
        grid-column: 1;
    }
    .sendev-vision-captcha-button {
        margin-left: 0;
    }
}


/* Reflow safeguards for native form controls at 200% text zoom. */
.sendev-vision-active input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
.sendev-vision-active select,
.sendev-vision-active textarea,
.sendev-vision-active button {
    box-sizing: border-box;
    max-width: 100%;
}
.sendev-vision-active img,
.sendev-vision-active video,
.sendev-vision-active audio,
.sendev-vision-active iframe,
.sendev-vision-active object,
.sendev-vision-active embed,
.sendev-vision-active svg {
    max-width: 100%;
}
