@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;600;700;900&family=Oswald:wght@300;400;500;600&display=swap');

/* ══════════════════════════════════════
   EMERALD — тема панели под дизайн сайта
   accent #5ce08a · bg #0a120d
══════════════════════════════════════ */

/* ── Переменные ── */
.dark {
    --color-second:       #0a120d !important;
    --color-second-light: rgba(0,0,0,0.5) !important;
    --color-second-hover: #111c15 !important;
    --color-border:       rgba(92,224,138,0.10) !important;
    --dark-100: rgba(255,255,255,0.06);
    --dark-200: #101a14;
    --dark-300: #0c150f;
    --dark-400: #0a120d;
    --dark-500: #08100b;
    --dark-600: #060d09;
    --dark-700: #040a06;
    --dark-800: #030704;

    /* акцент сайта */
    --accent:       #5ce08a;
    --accent-hover: #34c96d;
    --accent-deep:  #1f7a47;
    --accent-rgb:   92,224,138;
    --accent-soft:  #aef9c4;
    --glow:         92,255,150;
}

/* ── Шрифт ── */
.dark * { font-family: 'Oswald', 'Arial Narrow', sans-serif !important; }

/* ── Скроллбар ── */
* { scrollbar-width: thin; scrollbar-color: #34c96d #0a120d; }
*::-webkit-scrollbar { width: 4px; height: 4px; }
*::-webkit-scrollbar-track { background: #0a120d; }
*::-webkit-scrollbar-thumb { background: #1f7a47; border-radius: 2px; }
*::-webkit-scrollbar-thumb:hover { background: #5ce08a; }

/* ── Фон ── */
.dark .layout-wrapper, .dark body,
.dark\:bg-gray-800:is(.dark *), .offcanvas:is(.dark *) {
    background:
            linear-gradient(180deg, rgba(10,18,13,0.22), rgba(6,13,9,0.96)),
            url("../../../site/templates/default/images/bg/bg.png") no-repeat center !important;
    background-size: cover !important;
    background-attachment: fixed !important;
    border-color: var(--color-border) !important;
}
.layout-menu .menu-heading-logo {
    text-align: center;
}
/* ── Layout page ── */
.dark .layout-page {
    background: rgba(8,16,11,0.9) !important;
    border-radius: var(--border-radius);
    border: 1px solid rgba(92,224,138,0.07);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

/* ══════════════════════════════════════
   БОКОВОЕ МЕНЮ
══════════════════════════════════════ */
.dark .layout-menu { padding-top: 0; }
.dark .layout-menu .menu-inner-link,
.dark .layout-menu .menu-inner-button {
    height: 44px !important;
    padding: 0 16px 0 18px !important;
    border-radius: 3px !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    color: rgba(186,224,201,.55) !important;
    background: linear-gradient(180deg,#0e1812,#080f0a) !important;
    border: 1px solid rgba(255,255,255,.04) !important;
    box-shadow:
            inset 0 0 8px rgba(0,0,0,.7),
            0 0 0 1px rgba(0,0,0,.35) !important;
    position: relative !important;
    overflow: hidden !important;
    transition: all .25s ease !important;
}

.dark .layout-menu .menu-inner-link::before,
.dark .layout-menu .menu-inner-button::before {
    content: '' !important;
    position: absolute !important;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg,#1f7a47,#5ce08a) !important;
    opacity: .35;
    transition: all .25s ease;
}

.dark .layout-menu .menu-inner-link::after,
.dark .layout-menu .menu-inner-button::after {
    content: '' !important;
    position: absolute !important;
    inset: 0;
    background: linear-gradient(90deg,transparent,rgba(92,224,138,.15),transparent);
    opacity: 0;
    transition: opacity .25s;
}

.dark .layout-menu .menu-inner-link .w-6,
.dark .layout-menu .menu-inner-button .w-6 {
    color: rgba(92,224,138,.4) !important;
    transition: all .25s ease !important;
}

.dark .layout-menu .menu-inner-link:hover,
.dark .layout-menu .menu-inner-button:hover {
    color: rgba(234,255,241,.95) !important;
    border-color: rgba(92,224,138,.28) !important;
    background: linear-gradient(180deg,#13211a,#0a130d) !important;
    box-shadow:
            inset 0 0 12px rgba(92,224,138,.08),
            0 0 8px rgba(92,224,138,.18) !important;
}

.dark .layout-menu .menu-inner-link:hover::before,
.dark .layout-menu .menu-inner-button:hover::before {
    opacity: .9;
}

.dark .layout-menu .menu-inner-link:hover::after,
.dark .layout-menu .menu-inner-button:hover::after {
    opacity: 1;
}

.dark .layout-menu .menu-inner-link:hover .w-6,
.dark .layout-menu .menu-inner-button:hover .w-6 {
    color: #5ce08a !important;
    transform: scale(1.1);
}

.dark .layout-menu .menu-inner-item._is-active > .menu-inner-link,
.dark .layout-menu .menu-inner-item._is-active > .menu-inner-button {
    color: #fff !important;
    background: linear-gradient(180deg,#0e2417,#08130d) !important;
    border-color: rgba(92,224,138,.22) !important;
    box-shadow:
            inset 0 0 16px rgba(92,224,138,.12),
            0 0 12px rgba(92,224,138,.25) !important;
    position: relative !important;
}

.dark .layout-menu .menu-inner-item._is-active > .menu-inner-link::before,
.dark .layout-menu .menu-inner-item._is-active > .menu-inner-button::before {
    content: '' !important;
    position: absolute !important;
    left: -1px;
    top: -1px;
    bottom: -1px;
    width: 4px;
    background: linear-gradient(
            180deg,
            rgba(31,122,71,0) 0%,
            rgba(92,224,138,.9) 40%,
            rgba(92,224,138,1) 50%,
            rgba(92,224,138,.9) 60%,
            rgba(31,122,71,0) 100%
    ) !important;
    box-shadow:
            0 0 6px rgba(92,224,138,.6),
            0 0 14px rgba(92,224,138,.35) !important;
    border-radius: 2px;
}

.dark .layout-menu .menu-inner-item._is-active > .menu-inner-link::after,
.dark .layout-menu .menu-inner-item._is-active > .menu-inner-button::after {
    content: '' !important;
    position: absolute !important;
    left: 0;
    top: 6px;
    bottom: 6px;
    width: 1px;
    background: linear-gradient(
            180deg,
            transparent,
            rgba(255,255,255,.35),
            transparent
    );
    opacity: .5;
}

.dark .layout-menu .menu-inner-item._is-active > .menu-inner-link .w-6,
.dark .layout-menu .menu-inner-item._is-active > .menu-inner-button .w-6 {
    color: #5ce08a !important;
}

/* ── Текст ── */
.dark .menu-inner-text {
    font-weight: 600 !important;
    font-size: 12px !important;
    letter-spacing: 2.5px !important;
}

/* ── Разделитель ── */
.dark .border-t.border-dark-200,
.dark li.border-t {
    border-color: rgba(92,224,138,0.1) !important;
    margin: 6px 0 !important;
}
.dark .divider {
    font-size: 9px !important;
    font-weight: 600 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    color: rgba(92,224,138,0.45) !important;
    padding: 6px 14px 2px !important;
}

/* ── Кнопка свернуть ── */
.dark .menu-bottom .menu-inner-button {
    border-color: rgba(92,224,138,0.14) !important;
    color: rgba(92,224,138,0.45) !important;
    background: transparent !important;
}
.dark .menu-bottom .menu-inner-button:hover {
    color: #5ce08a !important;
    border-color: rgba(92,224,138,0.4) !important;
}
.btn-close div {
    display: flex!important;
}
/* ── Heading ── */
.dark .layout-menu .menu-heading,
.dark .layout-page .layout-navigation {
    border-color: rgba(92,224,138,0.1) !important;
}
.dark .menu-heading-logo a img { box-shadow: none !important; width: 100%; height: 100%; }
@media (min-width: 1024px) {
    .dark .menu-heading {
        padding: 0;
    }
}
.dark .menu-inner-text {
    color: #bcd8c6;
}
.dark .js-form-submit-button-loader {
    display: none!important;
}
/* ── Progress bar ── */
.dark .progress { background: rgba(255,255,255,0.06) !important; border-radius: 2px !important; }
.dark .progress-bar,
.dark .progress-bar--primary {
    background: linear-gradient(90deg, #1f7a47, #5ce08a) !important;
    border-radius: 2px !important;
    position: relative;
    overflow: hidden;
}
/* shimmer на прогрессбаре */
.dark .progress-bar::after {
    content: '';
    position: absolute;
    top: 0; left: -60%; width: 60%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
    animation: pb-shimmer 2s ease infinite;
}
@keyframes pb-shimmer { from { left: -60%; } to { left: 120%; } }

/* ── Server info блок ── */
#server-info .status-s,
#server-info [class*="status-s"] {
    background: rgba(8,16,11,0.95) !important;
    border: 1px solid rgba(92,224,138,0.2) !important;
    border-radius: 4px !important;
    box-shadow: inset 0 0 20px rgba(92,224,138,0.06), 0 0 0 0 transparent !important;
    position: relative;
    overflow: hidden;
}
#server-info .status-s::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(92,224,138,0.5), transparent);
}

/* radial progress — изумруд */
.dark .radial-progress { --p: var(--value, 0); color: #5ce08a !important; }

/* ══════════════════════════════════════
   КАРТОЧКИ / BOX
══════════════════════════════════════ */
.box:is(.dark *) {
    box-sizing: border-box;
    border-radius: var(--border-radius);
    border: 1px solid rgba(92,224,138,0.07);
    text-decoration: none;
    position: relative;
    overflow: hidden;
    background: rgba(10,18,13,0.9) !important;
}
/* акцентная линия сверху */
.box:is(.dark *)::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0; height: 1px;
    background: linear-gradient(90deg, transparent, rgba(92,224,138,0.45), transparent);
    pointer-events: none;
}
/* угловые акценты на карточках */
.box:is(.dark *)::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
            linear-gradient(to right,  rgba(92,224,138,0.28) 6px, transparent 6px) top left    / 6px 1px  no-repeat,
            linear-gradient(to bottom, rgba(92,224,138,0.28) 6px, transparent 6px) top left    / 1px 6px  no-repeat,
            linear-gradient(to left,   rgba(92,224,138,0.28) 6px, transparent 6px) top right   / 6px 1px  no-repeat,
            linear-gradient(to bottom, rgba(92,224,138,0.28) 6px, transparent 6px) top right   / 1px 6px  no-repeat;
    pointer-events: none;
    border-radius: var(--border-radius);
}

.dark .box, .dark .box-donate { background: rgba(8,16,11,0.92) !important; }
:is(.dark .box-donate)         { background: transparent !important; }
.dark .layout-page,
.dark .box-donate,
:is(.dark .bg-ava),
.dark .modal-content {
    background-color: var(--color-second) !important;
}
.dark .box-title { border-color: rgba(92,224,138,0.12) !important; }

/* ══════════════════════════════════════
   КНОПКИ ДЕЙСТВИЙ — под кнопки сайта
══════════════════════════════════════ */

.dark .btn-style701,
.dark .btn-start,
.dark .btn {
    background: rgba(10,22,15,.9) !important;
    border: 1px solid rgba(92,224,138,.12) !important;
    box-shadow:
            inset 0 0 6px rgba(0,0,0,.6),
            0 0 0 1px rgba(0,0,0,.3) !important;

    color: var(--accent-soft) !important;
    font-weight: 500 !important;
    letter-spacing: .12em !important;
    text-transform: uppercase !important;

    border-radius: 3px !important;
    padding: 0 18px !important;
    height: 40px;

    position: relative;
    overflow: hidden;

    transition: color .25s, background .25s, border-color .25s,
                box-shadow .25s, letter-spacing .3s, transform .3s cubic-bezier(.7,0,.3,1) !important;
}

/* боковая изумрудная линия */
.dark .btn-style701::before,
.dark .btn-start::before,
.dark .btn::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 2px;

    background: linear-gradient(
            180deg,
            rgba(31,122,71,0) 0%,
            rgba(92,224,138,.85) 50%,
            rgba(31,122,71,0) 100%
    );

    opacity: .6;
    transition: all .25s ease;
}

/* мягкое свечение */
.dark .btn-style701::after,
.dark .btn-start::after,
.dark .btn::after {
    content: '';
    position: absolute;
    inset: 0;

    background: linear-gradient(
            90deg,
            transparent,
            rgba(92,224,138,.18),
            transparent
    );

    opacity: 0;
    transition: opacity .25s;
}

/* hover — подъём и свечение как на сайте */
.dark .btn-style701:hover,
.dark .btn-start:hover,
.dark .btn:hover {

    color: #fff !important;
    letter-spacing: .16em !important;
    transform: translateY(-2px);

    background: linear-gradient(180deg,#163322,#0c1810) !important;

    border-color: rgba(92,224,138,.4) !important;

    box-shadow:
            inset 0 0 10px rgba(92,224,138,.12),
            0 0 10px rgba(92,224,138,.25),
            0 6px 18px rgba(0,0,0,.4) !important;
}

.dark .btn-style701:hover::before,
.dark .btn-start:hover::before,
.dark .btn:hover::before {
    width: 3px;
    opacity: 1;
}

.dark .btn-style701:hover::after,
.dark .btn-start:hover::after,
.dark .btn:hover::after {
    opacity: 1;
}

/* active */
.dark .btn-style701:active,
.dark .btn-start:active,
.dark .btn:active {

    transform: translateY(0);

    box-shadow:
            inset 0 0 14px rgba(92,224,138,.15),
            0 0 4px rgba(0,0,0,.5) !important;
}

/* primary / основная — изумрудная заливка как .btn--primary сайта */
.dark .btn-style701,
.dark .btn-primary,
.dark .btn-pay {
    color: #03120a !important;
    font-weight: 600 !important;
    background: linear-gradient(155deg,#8efdb8 0%, #5ce08a 45%, #34c96d 100%) !important;
    border-color: transparent !important;
    text-shadow: none !important;
}
.dark .btn-style701:hover,
.dark .btn-primary:hover,
.dark .btn-pay:hover {
    color: #03120a !important;
    background: linear-gradient(155deg,#aef9c4 0%, #6cf09a 45%, #3fd877 100%) !important;
    box-shadow:
            0 0 12px rgba(92,224,138,.5),
            0 8px 22px rgba(0,0,0,.4) !important;
}

/* вторичные кнопки */
.dark .btn-close,
.dark .accordion-btn,
.dark .btn-donate,
.dark .floating-button {

    background: linear-gradient(180deg,#0e1812,#080f0a) !important;

    border: 1px solid rgba(92,224,138,.08) !important;

    transition: all .25s ease !important;
}

.dark .btn-close:hover,
.dark .btn-donate:hover,
.dark .floating-button:hover {

    background: linear-gradient(180deg,#13251a,#0a140d) !important;

    border-color: rgba(92,224,138,.35) !important;

    box-shadow:
            inset 0 0 8px rgba(92,224,138,.1),
            0 0 8px rgba(92,224,138,.2);
}

.dark .btn-dashboard {
    padding: 0 22px !important;
}

.dark .accordion-header button {
    background-size: cover !important;
}

/* reset конфликты */
.dark .btn,
.dark tr,
.dark .table-list thead > tr > td,
.dark .table-list tbody > tr > td,
.btn:is(.dark *),
.form-input:is(.dark *),
.form-textarea:is(.dark *),
.form-select:is(.dark *),
.form-multiselect:is(.dark *),
.form-file-upload:is(.dark *),
.choices[data-type*=select-one] .choices__input,
.alert:is(.dark *),
fieldset:is(.dark *),
.dark .choices {
    box-shadow: none !important;
}

/* ══════════════════════════════════════
   ТАБЛИЦЫ
══════════════════════════════════════ */
.dark .table-list, :is(.dark .bgs-ava:hover), .dark .modal {
    background: rgba(0,0,0,0.45) !important;
}
.dark tr, .dark .table-list thead > tr > td,
.dark .table-list tbody > tr > td,
.btn:is(.dark *), .form-input:is(.dark *), .form-textarea:is(.dark *),
.form-select:is(.dark *), .form-multiselect:is(.dark *), .form-file-upload:is(.dark *),
.choices[data-type*=select-one] .choices__input, .alert:is(.dark *),
fieldset:is(.dark *), .dark .choices {
    border: 1px solid rgba(92,224,138,0.07) !important;
}
/* строки таблицы hover */
.dark .table-list tbody > tr:hover > td {
    background: rgba(92,224,138,0.05) !important;
}

/* ══════════════════════════════════════
   ФОРМЫ
══════════════════════════════════════ */
input::placeholder { color: rgba(234,255,241,0.25) !important; }
.dark .form-input:focus,
.dark .form-textarea:focus,
.dark .form-select:focus,
.dark .form-multiselect:focus {
    border-color: rgba(92,224,138,0.45) !important;
    box-shadow: 0 0 0 1px rgba(92,224,138,0.25), 0 0 8px rgba(92,224,138,0.12) !important;
}
.form-group.form-group-expansion .expansion-wrapper:is(.dark *),
.dark .form-switcher-toggler, .dark .accordion-content,
.choices .choices__list--dropdown:is(.dark *),
.choices .choices__list[aria-expanded]:is(.dark *) {
    border-color: rgba(92,224,138,0.08) !important;
    background-color: var(--color-second) !important;
}
.form-switcher .peer:checked + .form-switcher-toggler:is(.dark *) {
    background: #0c2e1a !important;
    border-color: rgba(92,224,138,0.4) !important;
}

/* ── Модалки ── */
.modal-header:is(.dark *) { border-bottom: 1px solid rgba(92,224,138,0.1) !important; }

/* ── Dropdown ── */
.dark .dropdown-content {
    background: #0a120d !important;
    border: 1px solid rgba(92,224,138,0.12) !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.85) !important;
}

/* ── Range slider ── */
.dark .irs--round .irs-bar    { background: rgba(92,224,138,0.55) !important; }
.dark .irs--round .irs-handle { border: 4px solid rgba(92,224,138,0.5) !important; }

/* ── HR ── */
.dark hr, hr.divider { border: 1px solid rgba(92,224,138,0.08) !important; }
.dark .report-card-body hr { background: rgba(92,224,138,0.08) !important; }
.dark body, .dark\:bg-gray-800:is(.dark *), .offcanvas:is(.dark *) {
    border-color: rgba(92,224,138,0.06) !important;
}

/* ── Breadcrumbs ── */
.dark .p-breadcrumbs > li:last-child a::after,
.dark .p-breadcrumbs > li:last-child a::before { background: var(--dark-400) !important; }
.dark .p-breadcrumbs > li a::after,
.dark .p-breadcrumbs > li a::before            { background: var(--dark-600) !important; }

/* ── Misc ── */
.dark .d34 { background: #0c150f !important; }
.dark .block-container:not(.block-container--noStripRadius) { background: var(--dark-600); }

/* ── TinyMCE ── */
.dark .tinymce .tox-tinymce:is(.dark *),
.tinymce .tox:not(.tox-tinymce-inline) .tox-editor-header:is(.dark *),
.tinymce .tox .tox-statusbar:is(.dark *) {
    background: var(--dark-600);
    border: 1px solid rgba(92,224,138,0.08);
}

/* ── Tippy ── */
.tippy-box {
    background: linear-gradient(145deg, #0e1812, #080f0a) !important;
    font-family: 'Oswald', sans-serif !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 1px !important;
    border: 1px solid rgba(92,224,138,0.2) !important;
    border-radius: 2px !important;
    box-shadow: 0 0 14px rgba(92,224,138,0.12) !important;
    text-shadow: none;
    padding: 5px 12px !important;
    backdrop-filter: none !important;
}
.tippy-arrow { width: 14px; height: 14px; }
.tippy-arrow::before {
    background: #0e1812 !important;
    border: 1px solid rgba(92,224,138,0.15);
    transform: scale(1.05);
    filter: none !important;
}

/* ── Layout gap ── */
.dark .layout-wrapper .layout-menu > *:is(.dark *),
.layout-wrapper .layout-menu-horizontal > *:is(.dark *),
.layout-wrapper .layout-menu-mobile > *:is(.dark *) {
    gap: 10px !important;
    margin-top: 10px;
}
@media (max-width: 1024px) {
    .dark .menu-heading { background: var(--dark-400) !important; }
    .dark ._is-opened   { background: var(--dark-500) !important; }
}

@media (max-width: 1023px) {
    .dark .layout-wrapper .layout-menu > *:is(.dark *),
    .layout-wrapper .layout-menu-horizontal > *:is(.dark *),
    .layout-wrapper .layout-menu-mobile > *:is(.dark *) {
        margin-top: 0;
        box-sizing: border-box;
        border-radius: var(--border-radius);
        border: 1px solid rgba(92,224,138,0.06);
    }
    ._is-opened {
        margin-top: 30px!important;
    }
}
.dark .menu-inner-link::before, .dark .menu-inner-button::before {
    height: 43px;
}
