:root {
    --volna-bg: #04121c;
    --volna-bg-elevated: #152033;
    --volna-bg-panel: rgba(16, 28, 42, 0.88);
    --volna-bg-input: #121c2c;
    --volna-bg-hover: rgba(0, 188, 212, 0.12);
    --volna-bg-selected: rgba(0, 188, 212, 0.2);
    --volna-text: #f4f8fb;
    --volna-text-muted: #9aa9b8;
    --volna-accent: #3eb8c4;
    --volna-accent-strong: #288a96;
    --volna-border: rgba(255, 255, 255, 0.1);
    --volna-glow: rgba(94, 200, 214, 0.55);
    --volna-radius: 10px;
}

html.theme-dark {
    color-scheme: dark;
    background: #020810;
}

body.theme-dark {
    background-color: #04121c !important;
    background-image: linear-gradient(
        180deg,
        #020810 0%,
        #04121c 8%,
        #0a3048 26%,
        #14708a 46%,
        #4eb8c8 66%,
        #b7e4ec 84%,
        #e8f4f6 100%
    ) !important;
    color: var(--volna-text);
    min-height: 100vh;
}

body.theme-dark::before {
    content: "";
    position: fixed;
    inset: 0;
    background: radial-gradient(ellipse 95% 55% at 50% 52%, rgba(94, 200, 214, 0.28) 0%, transparent 72%);
    pointer-events: none;
    z-index: 0;
}

body.theme-dark::after {
    content: "";
    position: fixed;
    left: -8%;
    right: -8%;
    bottom: -8%;
    height: 46vh;
    background:
        radial-gradient(ellipse 70% 75% at 10% 100%, rgba(255, 255, 255, 0.92) 0%, rgba(232, 246, 250, 0.45) 38%, transparent 68%),
        radial-gradient(ellipse 80% 80% at 92% 108%, rgba(255, 255, 255, 0.95) 0%, rgba(220, 242, 246, 0.4) 40%, transparent 70%);
    filter: blur(6px);
    pointer-events: none;
    z-index: 0;
}

body.theme-dark main,
body.theme-dark #mainFlex {
    position: relative;
    z-index: 1;
}

body.theme-dark .block5,
body.theme-dark .block1,
body.theme-dark .block2,
body.theme-dark .block3,
body.theme-dark .block4,
body.theme-dark .block6,
body.theme-dark .block7,
body.theme-dark .block8 {
    display: none !important;
    background: none !important;
}

body.theme-dark footer::before,
body.theme-dark footer::after,
body.theme-dark #load::before,
body.theme-dark #load::after {
    background: none !important;
    animation: none !important;
    opacity: 0 !important;
}

body.theme-dark #load {
    background-image: linear-gradient(180deg, #020810 0%, #14708a 48%, #e8f4f6 100%) !important;
    background-color: #04121c !important;
}

body.theme-dark a {
    color: var(--volna-accent);
}

body.theme-dark a:hover {
    color: #7fd0dc;
}

body.theme-dark h2,
body.theme-dark article li::marker {
    color: var(--volna-accent);
}

body.theme-dark header {
    background: transparent !important;
    border: none !important;
}

body.theme-dark header a,
body.theme-dark header a:hover,
body.theme-dark li.head-tg a,
body.theme-dark li.head-mail a,
body.theme-dark .navbar-light .navbar-nav .nav-link,
body.theme-dark #lngBlock a,
body.theme-dark .login-tab,
body.theme-dark .head_login,
body.theme-dark .head_allday {
    color: var(--volna-text) !important;
}

body.theme-dark header .head-tg a svg path {
    fill: var(--volna-accent) !important;
}

body.theme-dark header .head-mail svg path,
body.theme-dark header .head-mail svg rect {
    stroke: var(--volna-text) !important;
}

body.theme-dark header .head-mail svg[viewBox="0 0 18 18"] path {
    fill: var(--volna-text-muted) !important;
    stroke: none !important;
}

body.theme-dark .login-tab svg path,
body.theme-dark .login-tab svg .fil0 {
    fill: var(--volna-text) !important;
}

body.theme-dark .login-tabs {
    gap: 16px;
}

body.theme-dark #lngBlockZone {
    margin-right: 4px;
}

body.theme-dark .head_login {
    border: 1px solid rgba(255, 255, 255, 0.7) !important;
    background: transparent !important;
    padding: 8px 18px !important;
    margin: 0 4px 0 0 !important;
}

body.theme-dark .head_reg {
    background: var(--volna-accent) !important;
    color: var(--volna-text) !important;
    border: none !important;
    padding: 8px 18px !important;
    margin: 0 0 0 8px !important;
}

body.theme-dark .head_reg:hover,
body.theme-dark .btn-cc:hover {
    opacity: 0.88;
}

body.theme-dark .btn-cc,
body.theme-dark form button,
body.theme-dark #main-form__btn,
body.theme-dark #startExchange,
body.theme-dark .form-button,
body.theme-dark #zakaz_login,
body.theme-dark .scrollToTop {
    background-color: var(--volna-accent) !important;
    background-image: none !important;
    color: var(--volna-text) !important;
    border-color: var(--volna-accent) !important;
}

body.theme-dark .main-menu {
    background-image: url(../pics/ico_gumb_menu_white.svg) !important;
}

body.theme-dark.mainMenu .main-menu-pop {
    background: var(--volna-bg-elevated) !important;
}

body.theme-dark.mainMenu .main-menu-pop ul li a:hover {
    color: var(--volna-accent) !important;
}

body.theme-dark #block-from,
body.theme-dark #block-to,
body.theme-dark #main-form-block__form,
body.theme-dark #pay-form-block,
body.theme-dark #qrcode,
body.theme-dark .app-block__head,
body.theme-dark .app-block__mension,
body.theme-dark .cabinet-bodies .card,
body.theme-dark .reserve-popuper__pop,
body.theme-dark .modal-content,
body.theme-dark #offerModalLight .modal-content {
    background: var(--volna-bg-panel) !important;
    box-shadow: 0 16px 48px rgba(0, 8, 16, 0.28) !important;
    border: 1px solid var(--volna-border) !important;
    color: var(--volna-text) !important;
    backdrop-filter: blur(12px);
}

body.theme-dark aside.app-block,
body.theme-dark .app-block {
    background: transparent !important;
    box-shadow: none !important;
    border: none !important;
    backdrop-filter: none;
}

body.theme-dark #block-from h2,
body.theme-dark #block-to h2,
body.theme-dark .choose-zone .currs-send__item-name,
body.theme-dark .choose-zone .currs-to__item-name,
body.theme-dark .app-block__heading,
body.theme-dark .app-block__head,
body.theme-dark .app-block__head *,
body.theme-dark .cabinet-bodies .card *,
body.theme-dark h1,
body.theme-dark .form-head,
body.theme-dark .modal-title,
body.theme-dark .modal-body,
body.theme-dark .modal-body * {
    color: var(--volna-text) !important;
}

body.theme-dark .filter-element {
    color: var(--volna-text-muted);
}

body.theme-dark .filter-element:hover,
body.theme-dark .filter-element.active {
    color: var(--volna-accent) !important;
}

body.theme-dark #currs-send__pop,
body.theme-dark #currs-to__pop,
body.theme-dark .choose-zone label,
body.theme-dark #bankNameSearch {
    background: transparent !important;
}

body.theme-dark .currs-send__item,
body.theme-dark .currs-to__item {
    color: var(--volna-text);
    outline: none !important;
}

body.theme-dark .currs-send__item:hover,
body.theme-dark .currs-to__item:hover {
    background: var(--volna-bg-hover) !important;
    color: var(--volna-text) !important;
}

body.theme-dark .currs-send__item.active,
body.theme-dark .currs-to__item.active {
    background: var(--volna-bg-selected) !important;
    box-shadow: none;
    outline: none !important;
    border-color: transparent !important;
}

body.theme-dark #searchSendInput,
body.theme-dark #searchToInput,
body.theme-dark #main-form-block__form input,
body.theme-dark .modal-body input,
body.theme-dark .form-control,
body.theme-dark #bankName,
body.theme-dark input[type=text],
body.theme-dark input[type=number],
body.theme-dark input[type=email],
body.theme-dark input[type=tel],
body.theme-dark input[type=password],
body.theme-dark #main-form-block__form select,
body.theme-dark .login-blocks input {
    background: var(--volna-bg-input) !important;
    color: var(--volna-text) !important;
    border-color: transparent !important;
}

body.theme-dark #searchSendInput,
body.theme-dark #searchToInput {
    background-image: url(../pics/ico_search.svg) !important;
    background-repeat: no-repeat !important;
    background-position: calc(100% - 10px) center !important;
    filter: none;
}

body.theme-dark .form-control::placeholder,
body.theme-dark #searchSendInput::placeholder,
body.theme-dark #searchToInput::placeholder,
body.theme-dark input::placeholder {
    color: var(--volna-text-muted) !important;
}

body.theme-dark #main-form-block__form input:focus,
body.theme-dark .form-control:focus,
body.theme-dark .client-sum-input:focus {
    border-color: var(--volna-accent) !important;
    background-color: var(--volna-bg-input) !important;
    color: var(--volna-text) !important;
}

body.theme-dark .rules-check a,
body.theme-dark .reserve-popuper {
    color: var(--volna-accent) !important;
}

body.theme-dark .accent-block,
body.theme-dark .accent-block *,
body.theme-dark #exch-rate,
body.theme-dark #exch-rate *,
body.theme-dark .nowrap,
body.theme-dark .nowrap *,
body.theme-dark .calc-data__header,
body.theme-dark .calc-data__header *,
body.theme-dark #calcSendHeader,
body.theme-dark #calcSendHeader *,
body.theme-dark #calcToHeader,
body.theme-dark #calcToHeader *,
body.theme-dark .sending-remark,
body.theme-dark .sending-remark *,
body.theme-dark .rules-check,
body.theme-dark .rules-check *:not(a) {
    color: var(--volna-text) !important;
}

body.theme-dark #counter-block,
body.theme-dark #counter-block *,
body.theme-dark #curs-time {
    color: #fff !important;
}

body.theme-dark .pay-sum__block,
body.theme-dark .cabinet-tabs .tab_,
body.theme-dark .cabinet-tabs .tab_.active {
    background: var(--volna-bg-input) !important;
    color: var(--volna-text) !important;
}

body.theme-dark .cabinet-bodies .card-header {
    background: var(--volna-accent-strong) !important;
    color: var(--volna-text) !important;
}

body.theme-dark .cabinet-bodies .card-header * {
    color: var(--volna-text) !important;
}

body.theme-dark footer {
    background: transparent !important;
}

body.theme-dark .footer-logo img {
    opacity: 1;
    filter: none;
}

body.theme-dark .footer-copy,
body.theme-dark .footer-copy a,
body.theme-dark .footer-menu li a {
    color: #0a3040 !important;
}

body.theme-dark ::-webkit-scrollbar {
    width: 4px;
    background: transparent;
}

body.theme-dark ::-webkit-scrollbar-thumb {
    background: var(--volna-accent);
}

body.theme-dark [type=checkbox]:checked {
    background: url(../pics/icon_check_white.svg) no-repeat center, var(--volna-accent) !important;
    background-size: 15px !important;
}

body.theme-dark .top-login__popup {
    background: var(--volna-bg-elevated) !important;
    border-color: var(--volna-border);
}

body.theme-dark .item-name__reserve {
    color: var(--volna-text-muted) !important;
}

body.theme-dark .pay-details p:nth-child(odd) {
    background: var(--volna-bg-input) !important;
}

body.theme-dark .jq-toast-loader {
    background-color: var(--volna-accent) !important;
}

body.theme-dark button,
body.theme-dark input,
body.theme-dark select,
body.theme-dark textarea,
body.theme-dark .btn,
body.theme-dark .btn-cc,
body.theme-dark .form-button,
body.theme-dark .form-control,
body.theme-dark .head_login,
body.theme-dark .head_reg,
body.theme-dark .login-tab,
body.theme-dark #block-from,
body.theme-dark #block-to,
body.theme-dark #main-form-block__form,
body.theme-dark #pay-form-block,
body.theme-dark #qrcode,
body.theme-dark #searchSendInput,
body.theme-dark #searchToInput,
body.theme-dark #bankName,
body.theme-dark #cook,
body.theme-dark #cooKBtn,
body.theme-dark .currs-send__item,
body.theme-dark .currs-to__item,
body.theme-dark .modal-content,
body.theme-dark .card,
body.theme-dark .app-block,
body.theme-dark .app-block__head,
body.theme-dark .app-block__mension,
body.theme-dark .cabinet-bodies .card,
body.theme-dark .cabinet-bodies .card-header,
body.theme-dark .pay-sum__block,
body.theme-dark .top-login__popup,
body.theme-dark .reserve-popuper__pop,
body.theme-dark .main-menu-pop,
body.theme-dark .scrollToTop,
body.theme-dark .client-sum-input,
body.theme-dark .filter-element {
    border-radius: var(--volna-radius) !important;
}

body.theme-dark .opened-form-closer,
body.theme-dark .rezerves-closer {
    background-color: #fff !important;
    background-image: none !important;
    -webkit-mask: url(../pics/icon_cross_white.svg) no-repeat center / 18px 18px;
    mask: url(../pics/icon_cross_white.svg) no-repeat center / 18px 18px;
}

body.theme-dark .minmax,
body.theme-dark .minmax div,
body.theme-dark .minmax span {
    color: var(--volna-accent) !important;
}

body.theme-dark main > .container > article:has(#accordionExample),
body.theme-dark main > .container > article:has(.article-content),
body.theme-dark main > .container > article:has(.aml-form),
body.theme-dark main > .container > article#noCountMarks,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)),
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)),
body.theme-dark #news-zone {
    background: #fff;
    color: #1b2430;
    padding: 28px 32px;
    margin-bottom: 40px;
    border-radius: var(--volna-radius);
    box-shadow: 0 16px 40px rgba(0, 8, 16, 0.12);
}

body.theme-dark main > .container > article:has(#accordionExample) h1,
body.theme-dark main > .container > article:has(#accordionExample) h2,
body.theme-dark main > .container > article:has(#accordionExample) h3,
body.theme-dark main > .container > article:has(#accordionExample) p,
body.theme-dark main > .container > article:has(#accordionExample) li,
body.theme-dark main > .container > article:has(#accordionExample) span,
body.theme-dark main > .container > article:has(.article-content) h1,
body.theme-dark main > .container > article:has(.article-content) h2,
body.theme-dark main > .container > article:has(.article-content) h3,
body.theme-dark main > .container > article:has(.article-content) p,
body.theme-dark main > .container > article:has(.article-content) li,
body.theme-dark main > .container > article:has(.article-content) span,
body.theme-dark main > .container > article#noCountMarks h1,
body.theme-dark main > .container > article#noCountMarks h2,
body.theme-dark main > .container > article#noCountMarks p,
body.theme-dark main > .container > article#noCountMarks li,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)):not(:has(.aml-form)) h1,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)):not(:has(.aml-form)) h2,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)):not(:has(.aml-form)) p,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)):not(:has(.aml-form)) li,
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)) h1,
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)) h2,
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)) p,
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)) li,
body.theme-dark #news-zone,
body.theme-dark #news-zone .news-item__heading,
body.theme-dark #news-zone .news-item__lead,
body.theme-dark #news-zone .news-item__data {
    color: #1b2430 !important;
}

body.theme-dark main > .container > article:has(#accordionExample) a,
body.theme-dark main > .container > article:has(.article-content) a,
body.theme-dark main > .container > article#noCountMarks a,
body.theme-dark main > .container > article:first-child:not(:has(.cabinet-bodies)):not(:has(.aml-form)) a,
body.theme-dark main > .container > nav + article#work-zone:not(:has(.auth-content)) a,
body.theme-dark .accordion .btn-link {
    color: var(--volna-accent) !important;
}

body.theme-dark .accordion .card {
    background: #f4fafb !important;
    border: none !important;
    box-shadow: none !important;
}

body.theme-dark .accordion .btn-link[aria-expanded=true],
body.theme-dark .accordion .btn-link:hover {
    background: #e8f4f6 !important;
}

body.theme-dark .accordion .card-body,
body.theme-dark .accordion .card-body p,
body.theme-dark .accordion .card-body li {
    color: #1b2430 !important;
}

body.theme-dark #news-zone .news-item__lead {
    color: #5a6a78 !important;
}

body.theme-dark #news-zone .news-item__data {
    background: #e8f4f6 !important;
}

body.theme-dark main > .container > article:has(.aml-form) > :not(.aml-form),
body.theme-dark main > .container > article:has(.aml-form) > :not(.aml-form) p,
body.theme-dark main > .container > article:has(.aml-form) > :not(.aml-form) li {
    color: #1b2430 !important;
}

body.theme-dark main > .container > article:has(.aml-form) > :not(.aml-form) h2,
body.theme-dark main > .container > article:has(.aml-form) > :not(.aml-form) a {
    color: var(--volna-accent) !important;
}

body.theme-dark .aml-form,
body.theme-dark #amlForm {
    color: var(--volna-text);
}

body.theme-dark #amlForm,
body.theme-dark .aml-form .third-step {
    background: transparent !important;
    box-shadow: none !important;
    padding: 0 0 20px !important;
}

body.theme-dark #main-form-block__form .calc-data__header,
body.theme-dark #main-form-block__form .calc-data__header *,
body.theme-dark #calcSendHeader,
body.theme-dark #calcSendHeader *,
body.theme-dark #calcToHeader,
body.theme-dark #calcToHeader *,
body.theme-dark #main-form-block__form .client-sum-input,
body.theme-dark #main-form-block__form label p,
body.theme-dark #main-form-block__form label p *,
body.theme-dark .partners-tab,
body.theme-dark .partners-tab.active,
body.theme-dark .cabinet-tabs .tab_,
body.theme-dark .cabinet-tabs .tab_.active {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

body.theme-dark #pay-form-block,
body.theme-dark #pay-form-block p,
body.theme-dark #pay-form-block b,
body.theme-dark #pay-form-block span,
body.theme-dark #pay-form-block li,
body.theme-dark .alert-pay-time,
body.theme-dark .alert-pay-time *,
body.theme-dark .alert-time,
body.theme-dark .alert-time *,
body.theme-dark .pay-sum__block,
body.theme-dark .pay-sum__block *,
body.theme-dark .custom-fields p,
body.theme-dark .custom-fields b,
body.theme-dark .app-block__mension,
body.theme-dark .app-block__mension *,
body.theme-dark .btn-cc,
body.theme-dark .btn-cc span,
body.theme-dark .req-spinner {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}

body.theme-dark #pay-form-block input::placeholder,
body.theme-dark #pay-form-block textarea::placeholder,
body.theme-dark #main-form-block__form input::placeholder,
body.theme-dark #main-form-block__form textarea::placeholder,
body.theme-dark .form-control::placeholder,
body.theme-dark input::placeholder,
body.theme-dark textarea::placeholder {
    color: rgba(255, 255, 255, 0.72) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, 0.72) !important;
}

body.theme-dark .pay-details {
    background: var(--volna-bg-panel) !important;
    box-shadow: 0 16px 48px rgba(0, 8, 16, 0.28) !important;
    border: 1px solid var(--volna-border) !important;
}

body.theme-dark .pay-details,
body.theme-dark .pay-details *:not(a):not(h2) {
    color: #fff !important;
}

body.theme-dark .pay-details h2 {
    color: var(--volna-accent) !important;
}

body.theme-dark .pay-details a {
    color: var(--volna-accent) !important;
}
