/* ============================================================================
   ЛЕГКИЕ UI УЛУЧШЕНИЯ ДЛЯ САЙТА
   Не затрагивает модальные окна (.modal)
   ============================================================================ */

/* ============================================================================
   БОКОВОЕ МЕНЮ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */

/* Кнопки в заголовке бокового меню */
#sidebar .content-header .btn.btn-sm.btn-alt-secondary {
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
    transition: all 0.3s ease !important;
}

#sidebar .content-header .btn.btn-sm.btn-alt-secondary i {
    font-size: 0.875rem !important;
    line-height: 1 !important;
    margin: 0 !important;
}

#sidebar .content-header .btn.btn-sm.btn-alt-secondary span {
    font-size: 0.875rem !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* Темный режим для бокового меню */
body.dark-mode #sidebar {
    background: #1a1a1a !important;
}

body.dark-mode #sidebar .content-header {
    background: transparent !important;
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode #sidebar .content-header .fw-semibold.text-dual {
    color: #e2e8f0 !important;
}

body.dark-mode #sidebar .content-header .btn.btn-sm.btn-alt-secondary {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    color: #e2e8f0 !important;
}

body.dark-mode #sidebar .content-header .btn.btn-sm.btn-alt-secondary:hover {
    background: rgba(255, 255, 255, 0.15) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: #f1f5f9 !important;
}

body.dark-mode #sidebar .content-header .btn.btn-sm.btn-alt-secondary i {
    color: inherit !important;
}
#sidebar {
    box-shadow: 2px 0 12px rgba(0, 0, 0, 0.1) !important;
}

/* Пункты меню - улучшенный hover */
.nav-main-link {
    border-radius: 8px !important;
    margin: 4px 8px !important;
    transition: all 0.3s ease !important;
    position: relative !important;
}

.nav-main-link::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 3px !important;
    height: 0 !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border-radius: 0 4px 4px 0 !important;
    transition: height 0.3s ease !important;
    z-index: 1 !important;
}

.nav-main-link:hover {
    background: rgba(102, 126, 234, 0.1) !important;
    transform: translateX(4px) !important;
    padding-left: 1.25rem !important;
}

.nav-main-link:hover::before {
    height: 60% !important;
}

.nav-main-link.active {
    background: rgba(102, 126, 234, 0.15) !important;
    font-weight: 600 !important;
}

.nav-main-link.active::before {
    height: 80% !important;
}

.nav-main-link-icon {
    transition: transform 0.3s ease !important;
}

.nav-main-link:hover .nav-main-link-icon {
    transform: scale(1.1) !important;
    color: #667eea !important;
}

/* ============================================================================
   КАРТОЧКИ И БЛОКИ - ЛЕГКИЕ УЛУЧШЕНИЯ
   Исключаем модальные окна и их содержимое
   ============================================================================ */
.block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block),
.card:not(.modal .card):not(.modal-dialog .card):not(.modal-content .card) {
    border-radius: 12px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
}

.block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block):hover,
.card:not(.modal .card):not(.modal-dialog .card):not(.modal-content .card):hover {
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-2px) !important;
}

.block-header:not(.modal .block-header):not(.modal-dialog .block-header):not(.modal-content .block-header),
.card-header:not(.modal .card-header):not(.modal-dialog .card-header):not(.modal-content .card-header) {
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    padding: 1.25rem 1.5rem !important;
}

.block-title:not(.modal .block-title):not(.modal-dialog .block-title):not(.modal-content .block-title),
.card-title:not(.modal .card-title):not(.modal-dialog .card-title):not(.modal-content .card-title) {
    font-weight: 600 !important;
    font-size: 1.125rem !important;
}

.card-body:not(.modal .card-body):not(.modal-dialog .card-body):not(.modal-content .card-body) {
    padding: 1.5rem !important;
}

/* ============================================================================
   ТАБЛИЦЫ - ЛЕГКИЕ УЛУЧШЕНИЯ
   Исключаем модальные окна и их содержимое
   ============================================================================ */
.table:not(.modal .table):not(.modal-dialog .table):not(.modal-content .table):not(.modal-body .table) {
    border-radius: 8px !important;
    overflow: hidden !important;
}

.table:not(.modal .table):not(.modal-dialog .table):not(.modal-content .table):not(.modal-body .table) thead th {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.08) 0%, rgba(118, 75, 162, 0.08) 100%) !important;
    border-bottom: 2px solid rgba(102, 126, 234, 0.15) !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    font-size: 0.75rem !important;
    letter-spacing: 0.05em !important;
    padding: 1rem !important;
}

.table:not(.modal .table):not(.modal-dialog .table):not(.modal-content .table):not(.modal-body .table) tbody tr {
    transition: background 0.2s ease !important;
}

.table:not(.modal .table):not(.modal-dialog .table):not(.modal-content .table):not(.modal-body .table) tbody tr:hover {
    background: rgba(102, 126, 234, 0.04) !important;
}

.table-striped:not(.modal .table-striped):not(.modal-dialog .table-striped):not(.modal-content .table-striped):not(.modal-body .table-striped) tbody tr:nth-of-type(odd) {
    background: rgba(0, 0, 0, 0.02) !important;
}

.table-striped:not(.modal .table-striped):not(.modal-dialog .table-striped):not(.modal-content .table-striped):not(.modal-body .table-striped) tbody tr:nth-of-type(odd):hover {
    background: rgba(102, 126, 234, 0.04) !important;
}

/* ============================================================================
   КНОПКИ - ЛЕГКИЕ УЛУЧШЕНИЯ
   Исключаем модальные окна и их содержимое
   ============================================================================ */
.btn:not(.modal .btn):not(.modal-header .btn):not(.modal-body .btn):not(.modal-footer .btn) {
    border-radius: 8px !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

.btn-primary:not(.modal .btn-primary):not(.modal-header .btn-primary):not(.modal-body .btn-primary):not(.modal-footer .btn-primary) {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3) !important;
}

.btn-primary:not(.modal .btn-primary):not(.modal-header .btn-primary):not(.modal-body .btn-primary):not(.modal-footer .btn-primary):hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4) !important;
}

.btn-success:not(.modal .btn-success):not(.modal-header .btn-success):not(.modal-body .btn-success):not(.modal-footer .btn-success) {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3) !important;
}

.btn-success:not(.modal .btn-success):not(.modal-header .btn-success):not(.modal-body .btn-success):not(.modal-footer .btn-success):hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4) !important;
}

.btn-danger:not(.modal .btn-danger):not(.modal-header .btn-danger):not(.modal-body .btn-danger):not(.modal-footer .btn-danger) {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    border: none !important;
    box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3) !important;
}

.btn-danger:not(.modal .btn-danger):not(.modal-header .btn-danger):not(.modal-body .btn-danger):not(.modal-footer .btn-danger):hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4) !important;
}

/* ============================================================================
   БЕЙДЖИ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.badge {
    border-radius: 6px !important;
    padding: 0.375rem 0.75rem !important;
    font-weight: 500 !important;
    font-size: 0.75rem !important;
}

.badge.bg-success {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    box-shadow: 0 2px 4px rgba(16, 185, 129, 0.2) !important;
}

.badge.bg-danger {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    box-shadow: 0 2px 4px rgba(239, 68, 68, 0.2) !important;
}

.badge.bg-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    box-shadow: 0 2px 4px rgba(245, 158, 11, 0.2) !important;
}

/* ============================================================================
   ФОРМЫ - ЛЕГКИЕ УЛУЧШЕНИЯ
   Исключаем модальные окна и их содержимое
   ============================================================================ */
.form-control:not(.modal .form-control):not(.modal-dialog .form-control):not(.modal-content .form-control):not(.modal-body .form-control),
.form-control-alt:not(.modal .form-control-alt):not(.modal-dialog .form-control-alt):not(.modal-content .form-control-alt):not(.modal-body .form-control-alt) {
    border-radius: 8px !important;
    border: 1px solid rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s ease !important;
}

.form-control:not(.modal .form-control):not(.modal-dialog .form-control):not(.modal-content .form-control):not(.modal-body .form-control):focus,
.form-control-alt:not(.modal .form-control-alt):not(.modal-dialog .form-control-alt):not(.modal-content .form-control-alt):not(.modal-body .form-control-alt):focus {
    border-color: #667eea !important;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1) !important;
    outline: none !important;
}

/* ============================================================================
   HEADER - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
#page-header {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08) !important;
    background: #ffffff !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06) !important;
}

.content-header {
    padding: 0.75rem 1.5rem !important;
}

#page-header .content-header.header-user-panel {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    gap: 0.5rem !important;
}

@media (max-width: 767px) {
    #page-header .content-header.header-user-panel {
        padding: 0.5rem 0.75rem !important;
        flex-wrap: nowrap !important;
        gap: 0.25rem !important;
    }
    #page-header .header-left {
        min-width: 0 !important;
    }
    #page-header .header-balance-btn {
        padding: 0.35rem 0.5rem !important;
        font-size: 0.8125rem !important;
        max-width: 100% !important;
    }
    #page-header .header-balance-btn .fa-coins {
        margin-right: 0.25rem !important;
    }
    #page-header .header-right {
        flex-shrink: 0 !important;
        gap: 0.25rem !important;
    }
    #page-header .header-right .me-2 {
        margin-right: 0.25rem !important;
    }
    #page-header .notifications-btn {
        width: 34px !important;
        height: 34px !important;
        min-width: 34px !important;
    }
    #page-header-user-dropdown {
        padding: 0.35rem 0.5rem !important;
        min-width: 34px !important;
        height: 34px !important;
    }
}

@media (max-width: 390px) {
    #page-header .header-balance-text {
        font-size: 0.75rem !important;
        max-width: 85px;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        display: inline-block;
        vertical-align: middle;
    }
    #page-header .header-balance-value {
        font-weight: 700 !important;
    }
}

/* Кнопки меню (bars, три точки) */
#page-header .btn[data-action="sidebar_toggle"],
#page-header .btn[data-action="sidebar_mini_toggle"] {
    border-radius: 8px !important;
    background: rgba(102, 126, 234, 0.08) !important;
    border: 1px solid rgba(102, 126, 234, 0.15) !important;
    transition: all 0.3s ease !important;
    padding: 0.5rem 0.75rem !important;
}

#page-header .btn[data-action="sidebar_toggle"]:hover,
#page-header .btn[data-action="sidebar_mini_toggle"]:hover {
    background: rgba(102, 126, 234, 0.15) !important;
    border-color: rgba(102, 126, 234, 0.25) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 6px rgba(102, 126, 234, 0.2) !important;
}

#page-header .btn[data-action="sidebar_toggle"] i,
#page-header .btn[data-action="sidebar_mini_toggle"] i {
    color: #667eea !important;
}

/* Кнопка баланса */
#page-header .btn[onclick*="redirect('/account/pay/')"] {
    border-radius: 10px !important;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1) 0%, rgba(255, 152, 0, 0.1) 100%) !important;
    border: 1px solid rgba(255, 193, 7, 0.3) !important;
    padding: 0.5rem 1rem !important;
    font-weight: 600 !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

#page-header .btn[onclick*="redirect('/account/pay/')"]::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent) !important;
    transition: left 0.5s ease !important;
}

#page-header .btn[onclick*="redirect('/account/pay/')"]:hover {
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.15) 0%, rgba(255, 152, 0, 0.15) 100%) !important;
    border-color: rgba(255, 193, 7, 0.4) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.25) !important;
}

#page-header .btn[onclick*="redirect('/account/pay/')"]:hover::before {
    left: 100% !important;
}

#page-header .btn[onclick*="redirect('/account/pay/')"] .fa-coins {
    color: #ff9800 !important;
    margin-right: 0.5rem !important;
}

#page-header .btn[onclick*="redirect('/account/pay/')"] span {
    color: #333 !important;
}

/* Кнопка уведомлений */
#page-header .notifications-btn {
    width: 36px !important;
    height: 36px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: rgba(102, 126, 234, 0.08) !important;
    border: 1px solid rgba(102, 126, 234, 0.15) !important;
    transition: all 0.3s ease !important;
    position: relative !important;
}

#page-header .notifications-btn:hover {
    background: rgba(102, 126, 234, 0.15) !important;
    border-color: rgba(102, 126, 234, 0.25) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.2) !important;
}

#page-header .notifications-btn .fa-bell {
    color: #667eea !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    margin: 0 !important;
}

#page-header .notifications-badge {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 2px 6px rgba(239, 68, 68, 0.4) !important;
    animation: pulse 2s infinite !important;
}

@keyframes pulse {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.1);
    }
}

/* Кнопка email пользователя */
#page-header-user-dropdown {
    border-radius: 10px !important;
    background: rgba(102, 126, 234, 0.08) !important;
    border: 1px solid rgba(102, 126, 234, 0.15) !important;
    padding: 0.5rem 1rem !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
}

#page-header-user-dropdown:hover {
    background: rgba(102, 126, 234, 0.15) !important;
    border-color: rgba(102, 126, 234, 0.25) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.2) !important;
}

#page-header-user-dropdown .fa-user,
#page-header-user-dropdown .fa-angle-down {
    color: #667eea !important;
}

/* Общие стили для всех иконок-кнопок header */
#page-header .btn.btn-sm.btn-alt-secondary:not(.modal .btn):not(.modal-header .btn):not(.modal-body .btn):not(.modal-footer .btn) {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 36px !important;
    height: 36px !important;
    padding: 0.375rem !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
}

/* Иконки в кнопках header - единый размер */
#page-header .btn.btn-sm.btn-alt-secondary i.fa:not(.fa-fw) {
    font-size: 1rem !important;
    line-height: 1 !important;
    margin: 0 !important;
}

/* Исключение для кнопки с балансом */
#page-header .btn[onclick*="redirect('/account/pay/')"] {
    min-width: auto !important;
    height: 36px !important;
    padding: 0.375rem 0.75rem !important;
}

/* Исключение для кнопки с email пользователя */
#page-header-user-dropdown {
    min-width: auto !important;
    height: 36px !important;
    padding: 0.375rem 0.75rem !important;
}

/* Dark mode для header */
body.dark-mode #page-header {
    background: #1a1a1a !important;
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode #page-header .btn:has(.fa-coins) span {
    color: #f0f0f0 !important;
}

body.dark-mode #page-header-user-dropdown span {
    color: #f0f0f0 !important;
}

/* Темный режим для kassa-info-card */
body.dark-mode .kassa-info-card {
    background: #1f2937 !important;
    border-color: #374151 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3), 0 4px 12px rgba(0, 0, 0, 0.4) !important;
}

body.dark-mode .kassa-info-card:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4), 0 8px 24px rgba(0, 0, 0, 0.5) !important;
    border-color: #4b5563 !important;
}

body.dark-mode .kassa-info-title {
    color: #f9fafb !important;
}

body.dark-mode .kassa-info-title::after {
    background: linear-gradient(90deg, #818cf8 0%, #a5b4fc 100%) !important;
}

body.dark-mode .kassa-info-item {
    background: linear-gradient(135deg, #374151 0%, #1f2937 100%) !important;
    border-color: #4b5563 !important;
}

body.dark-mode .kassa-info-item::before {
    background: linear-gradient(180deg, #818cf8 0%, #a5b4fc 100%) !important;
}

body.dark-mode .kassa-info-item:hover {
    background: linear-gradient(135deg, #1f2937 0%, #374151 100%) !important;
    border-color: #818cf8 !important;
    box-shadow: 0 4px 12px rgba(129, 140, 248, 0.2) !important;
}

body.dark-mode .kassa-info-label {
    color: #9ca3af !important;
}

body.dark-mode .kassa-info-value {
    color: #f9fafb !important;
}

body.dark-mode .kassa-info-link {
    color: #818cf8 !important;
}

body.dark-mode .kassa-info-link:hover {
    color: #a5b4fc !important;
}

body.dark-mode .kassa-status-active {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: #ffffff !important;
    border-color: #10b981 !important;
}

body.dark-mode .kassa-status-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
    border-color: #f59e0b !important;
}

body.dark-mode .kassa-status-danger {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: #ffffff !important;
    border-color: #ef4444 !important;
}

/* ============================================================================
   УВЕДОМЛЕНИЯ (aifo-notify — власні, повністю непрозорі)
   ============================================================================ */
.aifo-notify {
    opacity: 1 !important;
    background-image: none !important;
}
.aifo-notify,
.aifo-notify * {
    opacity: 1 !important;
}

/* ============================================================================
   УВЕДОМЛЕНИЯ BOOTSTRAP-NOTIFY - УЛУЧШЕНИЕ ВИДИМОСТИ (якщо використовуються)
   ============================================================================ */
/* Bootstrap-notify уведомления - полная непрозрачность */
/* Обгортки та контейнери */
.notifyjs-wrapper,
.notifyjs-container,
.notifyjs-bootstrap-base,
.notifyjs-bootstrap-success,
.notifyjs-bootstrap-danger,
.notifyjs-bootstrap-warning,
.notifyjs-bootstrap-info,
[class*="notifyjs-"],
[class^="notifyjs-"],
div[class*="notifyjs-"],
div[class^="notifyjs-"],
body [class*="notifyjs-"],
body [class^="notifyjs-"] {
    opacity: 1 !important;
    background-color: rgba(255, 255, 255, 1) !important;
    background: rgba(255, 255, 255, 1) !important;
    background-image: none !important;
    color: #1f2937 !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
    border: none !important;
}

/* Перекриваємо inline стилі - максимальна специфічність */
html body .notifyjs-wrapper[style],
html body .notifyjs-container[style],
html body .notifyjs-bootstrap-base[style],
html body .notifyjs-bootstrap-success[style],
html body .notifyjs-bootstrap-danger[style],
html body .notifyjs-bootstrap-warning[style],
html body .notifyjs-bootstrap-info[style],
html body [class*="notifyjs-"][style],
html body [class^="notifyjs-"][style] {
    opacity: 1 !important;
    background-color: inherit !important;
    background: inherit !important;
    background-image: none !important;
}

/* Success уведомления */
html body .notifyjs-wrapper .notifyjs-bootstrap-success,
html body .notifyjs-container .notifyjs-bootstrap-success,
html body .notifyjs-bootstrap-success,
html body [class*="notifyjs-"][class*="success"],
html body div[class*="notifyjs-"][class*="success"],
body .notifyjs-bootstrap-success,
body [class*="notifyjs-bootstrap-success"] {
    background-color: #10b981 !important;
    background: #10b981 !important;
    background-image: none !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid #059669 !important;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.4) !important;
}

/* Перекриваємо inline стилі для success */
html body .notifyjs-bootstrap-success[style],
html body [class*="notifyjs-bootstrap-success"][style] {
    opacity: 1 !important;
    background-color: #10b981 !important;
    background: #10b981 !important;
    background-image: none !important;
}

/* Danger/Error уведомления */
html body .notifyjs-bootstrap-danger,
html body [class*="notifyjs-"][class*="danger"],
html body [class*="notifyjs-"][class*="error"],
body .notifyjs-bootstrap-danger,
body [class*="notifyjs-bootstrap-danger"] {
    background-color: #ef4444 !important;
    background: #ef4444 !important;
    background-image: none !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid #dc2626 !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4) !important;
}

html body .notifyjs-bootstrap-danger[style],
html body [class*="notifyjs-bootstrap-danger"][style] {
    opacity: 1 !important;
    background-color: #ef4444 !important;
    background: #ef4444 !important;
    background-image: none !important;
}

/* Warning уведомления */
html body .notifyjs-bootstrap-warning,
html body [class*="notifyjs-"][class*="warning"],
body .notifyjs-bootstrap-warning,
body [class*="notifyjs-bootstrap-warning"] {
    background-color: #f59e0b !important;
    background: #f59e0b !important;
    background-image: none !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid #d97706 !important;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4) !important;
}

html body .notifyjs-bootstrap-warning[style],
html body [class*="notifyjs-bootstrap-warning"][style] {
    opacity: 1 !important;
    background-color: #f59e0b !important;
    background: #f59e0b !important;
    background-image: none !important;
}

/* Info уведомления */
html body .notifyjs-bootstrap-info,
html body [class*="notifyjs-"][class*="info"],
body .notifyjs-bootstrap-info,
body [class*="notifyjs-bootstrap-info"] {
    background-color: #3b82f6 !important;
    background: #3b82f6 !important;
    background-image: none !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid #2563eb !important;
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.4) !important;
}

html body .notifyjs-bootstrap-info[style],
html body [class*="notifyjs-bootstrap-info"][style] {
    opacity: 1 !important;
    background-color: #3b82f6 !important;
    background: #3b82f6 !important;
    background-image: none !important;
}

/* Убираем прозрачность у текста и иконок */
.notifyjs-bootstrap-base *,
.notifyjs-bootstrap-success *,
.notifyjs-bootstrap-danger *,
.notifyjs-bootstrap-warning *,
.notifyjs-bootstrap-info *,
[class*="notifyjs-"] * {
    opacity: 1 !important;
    color: inherit !important;
}

/* Кнопка закриття - полностью скрыта */
.notifyjs-wrapper [data-notify="dismiss"],
.notifyjs-container [data-notify="dismiss"],
.notifyjs-bootstrap-base [data-notify="dismiss"],
.notifyjs-bootstrap-success [data-notify="dismiss"],
.notifyjs-bootstrap-danger [data-notify="dismiss"],
.notifyjs-bootstrap-warning [data-notify="dismiss"],
.notifyjs-bootstrap-info [data-notify="dismiss"],
[class*="notifyjs-"] [data-notify="dismiss"],
[class*="notifyjs-"] .close,
[class*="notifyjs-"] button[aria-label="close"],
[class*="notifyjs-"] [aria-label="close"],
[class*="notifyjs-"] [data-dismiss="notify"],
button[data-notify="dismiss"],
a[data-notify="dismiss"],
[class*="notifyjs-"] a[data-notify="dismiss"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    overflow: hidden !important;
}

/* Иконки и текст в уведомлениях */
.notifyjs-bootstrap-base .fa,
.notifyjs-bootstrap-success .fa,
.notifyjs-bootstrap-danger .fa,
.notifyjs-bootstrap-warning .fa,
.notifyjs-bootstrap-info .fa,
[class*="notifyjs-"] .fa,
[class*="notifyjs-"] i,
[class*="notifyjs-"] span,
[class*="notifyjs-"] p,
[class*="notifyjs-"] div {
    opacity: 1 !important;
    color: inherit !important;
}

/* OneUI jq-notify (для совместимости) */
.jq-notify,
.jq-notify *,
[class*="jq-notify"],
[class^="jq-notify"] {
    opacity: 1 !important;
    background-color: rgba(255, 255, 255, 1) !important;
    color: #1f2937 !important;
}

.jq-notify.danger,
.jq-notify.error,
[class*="jq-notify"][class*="danger"],
[class*="jq-notify"][class*="error"] {
    background-color: rgba(239, 68, 68, 1) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid rgba(220, 38, 38, 1) !important;
}

.jq-notify.success,
[class*="jq-notify"][class*="success"] {
    background-color: rgba(16, 185, 129, 1) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid rgba(5, 150, 105, 1) !important;
}

.jq-notify.warning,
[class*="jq-notify"][class*="warning"] {
    background-color: rgba(245, 158, 11, 1) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid rgba(217, 119, 6, 1) !important;
}

.jq-notify.info,
[class*="jq-notify"][class*="info"] {
    background-color: rgba(59, 130, 246, 1) !important;
    color: #ffffff !important;
    opacity: 1 !important;
    border: 1px solid rgba(37, 99, 235, 1) !important;
}

.jq-notify .fa,
.jq-notify i,
.jq-notify span,
.jq-notify p,
.jq-notify div,
.jq-notify strong,
.jq-notify b {
    opacity: 1 !important;
    color: inherit !important;
}

/* ============================================================================
   ОТСТУПЫ У ИКОНОК
   ============================================================================ */
/* FontAwesome иконки везде, кроме модальных окон и fa-fw (fixed width) */
.fa:not(.modal .fa):not(.modal-dialog .fa):not(.modal-content .fa):not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]) {
    margin-right: 0.3rem !important;
}

i[class^="fa"]:not(.modal i):not(.modal-dialog i):not(.modal-content i):not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]),
i[class*=" fa-"]:not(.modal i):not(.modal-dialog i):not(.modal-content i):not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]) {
    margin-right: 0.5rem !important;
}

/* Иконки в навигации - если нет fa-fw */
.nav-main-link-icon:not(.fa-fw) {
    margin-right: 0.75rem !important;
}

/* Иконки в кнопках - если нет fa-fw и margin классов */
.btn .fa:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

.btn i[class^="fa"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
.btn i[class*=" fa-"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

/* Иконки в ссылках */
a .fa:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

a i[class^="fa"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
a i[class*=" fa-"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

/* Иконки в заголовках форм */
.form-label .fa:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
.auth-form-label .fa:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

.form-label i[class^="fa"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
.form-label i[class*=" fa-"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
.auth-form-label i[class^="fa"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child),
.auth-form-label i[class*=" fa-"]:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]):not(:last-child) {
    margin-right: 0.5rem !important;
}

/* Иконки в header панели - если нет fa-fw */
#page-header .btn .fa:not(.fa-fw):not([class*="mr-"]):not([class*="ms-"]) {
    margin-right: 0.5rem !important;
}

/* ============================================================================
   КАССА - НАВИГАЦИОННОЕ МЕНЮ
   ============================================================================ */
.kassa-nav-wrapper {
    margin-bottom: 1.5rem !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    padding: 0.75rem !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

body.dark-mode .kassa-nav-wrapper {
    background: #1a1a1a !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3) !important;
}

.kassa-nav-container {
    display: flex !important;
    gap: 0.5rem !important;
    flex-wrap: wrap !important;
}

.kassa-nav-item {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    padding: 0.625rem 1.25rem !important;
    border-radius: 8px !important;
    background: rgba(102, 126, 234, 0.08) !important;
    border: 1px solid rgba(102, 126, 234, 0.15) !important;
    color: #667eea !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.875rem !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

.kassa-nav-item i {
    font-size: 1rem !important;
}

.kassa-nav-item::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(102, 126, 234, 0.1), transparent) !important;
    transition: left 0.5s ease !important;
}

.kassa-nav-item:hover {
    background: rgba(102, 126, 234, 0.15) !important;
    border-color: rgba(102, 126, 234, 0.25) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.2) !important;
}

.kassa-nav-item:hover::before {
    left: 100% !important;
}

.kassa-nav-item.active {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border-color: #667eea !important;
    color: #ffffff !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3) !important;
}

body.dark-mode .kassa-nav-item {
    background: rgba(102, 126, 234, 0.1) !important;
    border-color: rgba(102, 126, 234, 0.2) !important;
    color: #a5b4fc !important;
}

body.dark-mode .kassa-nav-item:hover {
    background: rgba(102, 126, 234, 0.2) !important;
    border-color: rgba(102, 126, 234, 0.3) !important;
}

body.dark-mode .kassa-nav-item.active {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    color: #ffffff !important;
}

/* ============================================================================
   КАССА - ИНФОРМАЦИОННЫЙ БЛОК
   ============================================================================ */
.kassa-info-card {
    position: relative !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    margin-bottom: 1.5rem !important;
    background: #ffffff !important;
    border: 1px solid #e5e7eb !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05), 0 4px 12px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.kassa-info-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, #667eea 0%, #764ba2 100%) !important;
    z-index: 1 !important;
}

.kassa-info-card:hover {
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.07), 0 8px 24px rgba(0, 0, 0, 0.12) !important;
    transform: translateY(-2px) !important;
    border-color: #d1d5db !important;
}

.kassa-info-background {
    display: none !important;
}

.kassa-info-content {
    position: relative !important;
    z-index: 2 !important;
    padding: 1.5rem !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 1.5rem !important;
    flex-wrap: wrap !important;
}

.kassa-info-left {
    flex: 1 !important;
    min-width: 300px !important;
}

.kassa-info-title {
    color: #111827 !important;
    font-size: 1.5rem !important;
    font-weight: 800 !important;
    margin-bottom: 1.25rem !important;
    letter-spacing: -0.02em !important;
    position: relative !important;
    padding-bottom: 0.75rem !important;
}

.kassa-info-title::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 50px !important;
    height: 3px !important;
    background: linear-gradient(90deg, #667eea 0%, #764ba2 100%) !important;
    border-radius: 2px !important;
}

.kassa-info-details {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important;
    gap: 1rem !important;
}

.kassa-info-item {
    display: flex !important;
    flex-direction: column !important;
    gap: 0.5rem !important;
    padding: 1rem 1.25rem !important;
    padding-top: 2rem !important;
    background: linear-gradient(135deg, #f9fafb 0%, #ffffff 100%) !important;
    border-radius: 12px !important;
    border: 1.5px solid #e5e7eb !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.kassa-info-item::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 3px !important;
    height: 100% !important;
    background: linear-gradient(180deg, #667eea 0%, #764ba2 100%) !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.kassa-info-item:hover {
    background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%) !important;
    border-color: #667eea !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.15) !important;
}

.kassa-info-item:hover::before {
    opacity: 1 !important;
}

.kassa-info-label {
    color: #6b7280 !important;
    font-weight: 600 !important;
    font-size: 0.6875rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    margin-bottom: 0.125rem !important;
}

.kassa-info-value {
    color: #111827 !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    line-height: 1.4 !important;
}

.kassa-copy-btn {
    position: absolute !important;
    top: 0.625rem !important;
    right: 0.625rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    padding: 0 !important;
    background: #f3f4f6 !important;
    border: 1px solid #e5e7eb !important;
    border-radius: 5px !important;
    color: #6b7280 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    font-size: 0.6875rem !important;
    line-height: 1 !important;
    z-index: 1 !important;
}

.kassa-copy-btn:hover {
    background: #667eea !important;
    border-color: #667eea !important;
    color: #ffffff !important;
    transform: scale(1.1) !important;
}

.kassa-copy-btn:active {
    transform: scale(0.95) !important;
}

.kassa-copy-btn i {
    margin: 0 !important;
    font-size: 0.6875rem !important;
}

/* Стили для кнопок с иконками в input-group */
.input-group .btn-outline-secondary {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.5rem !important;
    min-width: 40px !important;
    height: auto !important;
}

.input-group .btn-outline-secondary i {
    margin: 0 !important;
    font-size: 0.875rem !important;
    line-height: 1 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.kassa-info-link {
    color: #667eea !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    text-decoration: none !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    position: relative !important;
}

.kassa-info-link::after {
    content: '↗' !important;
    font-size: 0.875rem !important;
    opacity: 0.7 !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.kassa-info-link:hover {
    color: #764ba2 !important;
    transform: translateX(3px) !important;
}

.kassa-info-link:hover::after {
    opacity: 1 !important;
    transform: translate(3px, -3px) !important;
}

.kassa-status-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.5rem 1rem !important;
    border-radius: 8px !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    border: 2px solid transparent !important;
}

.kassa-status-active {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
    color: #ffffff !important;
    border-color: #10b981 !important;
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3) !important;
}

.kassa-status-active:hover {
    transform: scale(1.05) translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(16, 185, 129, 0.4) !important;
}

.kassa-status-warning {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%) !important;
    color: #ffffff !important;
    border-color: #f59e0b !important;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3) !important;
}

.kassa-status-warning:hover {
    transform: scale(1.05) translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(245, 158, 11, 0.4) !important;
}

.kassa-status-danger {
    background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
    color: #ffffff !important;
    border-color: #ef4444 !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.3) !important;
}

.kassa-status-danger:hover {
    transform: scale(1.05) translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(239, 68, 68, 0.4) !important;
}

.kassa-info-right {
    display: flex !important;
    align-items: center !important;
}

.kassa-info-btn {
    display: flex !important;
    align-items: center !important;
    gap: 0.5rem !important;
    padding: 0.75rem 1.5rem !important;
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.2) !important;
    backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.kassa-info-btn:hover {
    background: rgba(255, 255, 255, 0.3) !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

.kassa-info-btn i {
    font-size: 1rem !important;
}

@media (max-width: 768px) {
    .kassa-info-content {
        flex-direction: column !important;
    }
    
    .kassa-info-right {
        width: 100% !important;
    }
    
    .kassa-info-btn {
        width: 100% !important;
        justify-content: center !important;
    }
    
    .kassa-nav-container {
        flex-direction: column !important;
    }
    
    .kassa-nav-item {
        width: 100% !important;
        justify-content: center !important;
    }
}

/* ============================================================================
   ПОЛНОЕ ИСКЛЮЧЕНИЕ МОДАЛЬНЫХ ОКОН ИЗ ВСЕХ СТИЛЕЙ
   Максимальная специфичность для блокировки всех эффектов
   ============================================================================ */
html body .modal,
html body .modal *,
html body .modal *::before,
html body .modal *::after,
html body .modal-dialog,
html body .modal-dialog *,
html body .modal-dialog *::before,
html body .modal-dialog *::after,
html body .modal-content,
html body .modal-content *,
html body .modal-content *::before,
html body .modal-content *::after,
html body .modal-header,
html body .modal-header *,
html body .modal-header *::before,
html body .modal-header *::after,
html body .modal-body,
html body .modal-body *,
html body .modal-body *::before,
html body .modal-body *::after,
html body .modal-footer,
html body .modal-footer *,
html body .modal-footer *::before,
html body .modal-footer *::after,
html body .modal-backdrop,
html body .modal-backdrop *,
html body .modal-backdrop *::before,
html body .modal-backdrop *::after,
html body [class*="modal"],
html body [class*="modal"] *,
html body [class*="modal"] *::before,
html body [class*="modal"] *::after {
    transition: none !important;
    -webkit-transition: none !important;
    -moz-transition: none !important;
    -ms-transition: none !important;
    -o-transition: none !important;
    animation: none !important;
    -webkit-animation: none !important;
    -moz-animation: none !important;
    -ms-animation: none !important;
    -o-animation: none !important;
    animation-duration: 0s !important;
    transition-duration: 0s !important;
    animation-delay: 0s !important;
    transition-delay: 0s !important;
    transform: none !important;
    -webkit-transform: none !important;
    -moz-transform: none !important;
    -ms-transform: none !important;
    -o-transform: none !important;
    box-shadow: none !important;
}

/* Блокируем все hover эффекты в модальных окнах */
html body .modal *:hover,
html body .modal-dialog *:hover,
html body .modal-content *:hover,
html body .modal-header *:hover,
html body .modal-body *:hover,
html body .modal-footer *:hover {
    transform: none !important;
    box-shadow: none !important;
    transition: none !important;
    animation: none !important;
}

/* Блокируем все стили блоков, карточек, кнопок, таблиц внутри модальных окон */
html body .modal .block,
html body .modal .card,
html body .modal .btn,
html body .modal .table,
html body .modal .badge,
html body .modal .form-control,
html body .modal .alert {
    transition: none !important;
    animation: none !important;
    transform: none !important;
    box-shadow: none !important;
}

html body .modal .block:hover,
html body .modal .card:hover,
html body .modal .btn:hover,
html body .modal .table:hover {
    transform: none !important;
    box-shadow: none !important;
}

/* ============================================================================
   ТЕМНЫЙ РЕЖИМ
   ============================================================================ */
body.dark-mode .block {
    background: #1e293b !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode .table thead th {
    background: rgba(102, 126, 234, 0.15) !important;
    color: #f1f5f9 !important;
}

body.dark-mode .table tbody tr:hover {
    background: rgba(102, 126, 234, 0.08) !important;
}

body.dark-mode .form-control,
body.dark-mode .form-control-alt {
    background: #334155 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #f1f5f9 !important;
}

/* Темный режим для контентной области */
body.dark-mode .content {
    background: #0f172a !important;
    color: #f1f5f9 !important;
}

body.dark-mode .content-boxed {
    background: #0f172a !important;
}

/* Темный режим для заголовков блоков */
body.dark-mode .block-header {
    background: #1e293b !important;
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode .block-title {
    color: #f1f5f9 !important;
}

/* Темный режим для текстовых элементов */
body.dark-mode .text-muted {
    color: #94a3b8 !important;
}

body.dark-mode .text-dual {
    color: #e2e8f0 !important;
}

body.dark-mode .text-primary {
    color: #818cf8 !important;
}

body.dark-mode .text-success {
    color: #34d399 !important;
}

body.dark-mode .text-danger {
    color: #f87171 !important;
}

body.dark-mode .text-warning {
    color: #fbbf24 !important;
}

/* Темный режим для select элементов */
body.dark-mode select.form-control,
body.dark-mode select.form-control-alt {
    background: #334155 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #f1f5f9 !important;
}

body.dark-mode select.form-control option,
body.dark-mode select.form-control-alt option {
    background: #334155 !important;
    color: #f1f5f9 !important;
}

/* Темный режим для input-group */
body.dark-mode .input-group-text {
    background: #475569 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #f1f5f9 !important;
}

/* Темный режим для алертов */
body.dark-mode .alert-success {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.2) 0%, rgba(5, 150, 105, 0.2) 100%) !important;
    color: #6ee7b7 !important;
    border-left-color: #10b981 !important;
}

body.dark-mode .alert-danger {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.2) 0%, rgba(220, 38, 38, 0.2) 100%) !important;
    color: #fca5a5 !important;
    border-left-color: #ef4444 !important;
}

body.dark-mode .alert-warning {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.2) 0%, rgba(217, 119, 6, 0.2) 100%) !important;
    color: #fcd34d !important;
    border-left-color: #f59e0b !important;
}

body.dark-mode .alert-info {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.2) 0%, rgba(37, 99, 235, 0.2) 100%) !important;
    color: #93c5fd !important;
    border-left-color: #3b82f6 !important;
}

body.dark-mode .alert-text {
    color: inherit !important;
}

/* Темный режим для навигационных вкладок */
body.dark-mode .nav-tabs {
    border-bottom-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode .nav-tabs .nav-link {
    color: #94a3b8 !important;
    border-color: transparent !important;
}

body.dark-mode .nav-tabs .nav-link:hover {
    color: #e2e8f0 !important;
    background: rgba(255, 255, 255, 0.05) !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
}

body.dark-mode .nav-tabs .nav-link.active {
    color: #818cf8 !important;
    background: rgba(102, 126, 234, 0.1) !important;
    border-color: rgba(102, 126, 234, 0.3) rgba(102, 126, 234, 0.3) transparent !important;
}

/* Темный режим для кнопок */
body.dark-mode .btn-alt-secondary {
    background: #334155 !important;
    border-color: rgba(255, 255, 255, 0.1) !important;
    color: #e2e8f0 !important;
}

body.dark-mode .btn-alt-secondary:hover {
    background: #475569 !important;
    border-color: rgba(255, 255, 255, 0.15) !important;
    color: #f1f5f9 !important;
}

body.dark-mode .btn-alt-primary {
    background: rgba(102, 126, 234, 0.2) !important;
    border-color: rgba(102, 126, 234, 0.3) !important;
    color: #a5b4fc !important;
}

body.dark-mode .btn-alt-primary:hover {
    background: rgba(102, 126, 234, 0.3) !important;
    border-color: rgba(102, 126, 234, 0.4) !important;
    color: #c4b5fd !important;
}

/* Темный режим для form-check */
body.dark-mode .form-check-label {
    color: #e2e8f0 !important;
}

body.dark-mode .form-check-input {
    background-color: #334155 !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
}

body.dark-mode .form-check-input:checked {
    background-color: #667eea !important;
    border-color: #667eea !important;
}

/* Темный режим для маленького текста */
body.dark-mode small,
body.dark-mode .small {
    color: #94a3b8 !important;
}

/* Темный режим для фоновых классов */
body.dark-mode .bg-body-light,
body.dark-mode .bg-body-extra-light {
    background: #0f172a !important;
}

body.dark-mode .bg-white {
    background: #1e293b !important;
}

body.dark-mode .bg-primary-op {
    background: rgba(102, 126, 234, 0.1) !important;
}

/* Темный режим для hr */
body.dark-mode hr {
    border-color: rgba(255, 255, 255, 0.1) !important;
    opacity: 1 !important;
}

/* Темный режим для block-content */
body.dark-mode .block-content {
    background: transparent !important;
    color: #e2e8f0 !important;
}

body.dark-mode .block-content-full {
    background: transparent !important;
}

/* Темный режим для bg-image и bg-black-75 */
body.dark-mode .bg-image {
    background: #0f172a !important;
}

body.dark-mode .bg-black-75 {
    background: rgba(0, 0, 0, 0.75) !important;
}

/* Темный режим для row gutters */
body.dark-mode .row.gutters-tiny,
body.dark-mode .row.gutters-small,
body.dark-mode .row.gutters {
    background: transparent !important;
}

/* Темный режим для lead и других текстовых классов */
body.dark-mode .lead {
    color: #cbd5e1 !important;
}

body.dark-mode h1, body.dark-mode h2, body.dark-mode h3, 
body.dark-mode h4, body.dark-mode h5, body.dark-mode h6 {
    color: #f1f5f9 !important;
}

body.dark-mode p {
    color: #e2e8f0 !important;
}

/* ============================================================================
   СТАТИСТИЧЕСКИЕ БЛОКИ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.items-push .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block) {
    transition: all 0.3s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

.items-push .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block)::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent 0%, rgba(102, 126, 234, 0.05) 50%, transparent 100%) !important;
    transition: left 0.5s ease !important;
    z-index: 0 !important;
}

.items-push .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block):hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 8px 20px rgba(102, 126, 234, 0.15) !important;
}

.items-push .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block):hover::before {
    left: 100% !important;
}

.items-push .block-content:not(.modal .block-content):not(.modal-dialog .block-content):not(.modal-content .block-content) {
    position: relative !important;
    z-index: 1 !important;
}

.items-push .fs-3:not(.modal .fs-3):not(.modal-dialog .fs-3):not(.modal-content .fs-3),
.items-push .fs-4:not(.modal .fs-4):not(.modal-dialog .fs-4):not(.modal-content .fs-4) {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    font-weight: 700 !important;
}

/* ============================================================================
   БЛОКИ-ССЫЛКИ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.block-link-shadow:not(.modal .block-link-shadow):not(.modal-dialog .block-link-shadow):not(.modal-content .block-link-shadow) {
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    color: inherit !important;
}

.block-link-shadow:not(.modal .block-link-shadow):not(.modal-dialog .block-link-shadow):not(.modal-content .block-link-shadow):hover {
    text-decoration: none !important;
    color: inherit !important;
}

/* ============================================================================
   ЗАГОЛОВКИ БЛОКОВ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.block-header:not(.modal .block-header):not(.modal-dialog .block-header):not(.modal-content .block-header) {
    position: relative !important;
}

.block-header:not(.modal .block-header):not(.modal-dialog .block-header):not(.modal-content .block-header)::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 1.5rem !important;
    right: 1.5rem !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent 0%, rgba(102, 126, 234, 0.3) 50%, transparent 100%) !important;
}

.block-title:not(.modal .block-title):not(.modal-dialog .block-title):not(.modal-content .block-title) {
    position: relative !important;
    display: inline-block !important;
}

.block-title:not(.modal .block-title):not(.modal-dialog .block-title):not(.modal-content .block-title)::before {
    content: '' !important;
    position: absolute !important;
    left: -0.75rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 3px !important;
    height: 60% !important;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%) !important;
    border-radius: 2px !important;
}

/* ============================================================================
   ТЕКСТОВЫЕ ЭЛЕМЕНТЫ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.text-primary:not(.modal .text-primary):not(.modal-dialog .text-primary):not(.modal-content .text-primary) {
    color: #667eea !important;
}

.text-success:not(.modal .text-success):not(.modal-dialog .text-success):not(.modal-content .text-success) {
    color: #10b981 !important;
}

.text-muted:not(.modal .text-muted):not(.modal-dialog .text-muted):not(.modal-content .text-muted) {
    color: #6b7280 !important;
}

/* ============================================================================
   АЛЕРТЫ И УВЕДОМЛЕНИЯ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.alert:not(.modal .alert):not(.modal-dialog .alert):not(.modal-content .alert) {
    border-radius: 8px !important;
    border: none !important;
    padding: 1rem 1.25rem !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

.alert-success:not(.modal .alert-success):not(.modal-dialog .alert-success):not(.modal-content .alert-success) {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, rgba(5, 150, 105, 0.1) 100%) !important;
    color: #059669 !important;
    border-left: 3px solid #10b981 !important;
}

.alert-danger:not(.modal .alert-danger):not(.modal-dialog .alert-danger):not(.modal-content .alert-danger) {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, rgba(220, 38, 38, 0.1) 100%) !important;
    color: #dc2626 !important;
    border-left: 3px solid #ef4444 !important;
}

.alert-warning:not(.modal .alert-warning):not(.modal-dialog .alert-warning):not(.modal-content .alert-warning) {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, rgba(217, 119, 6, 0.1) 100%) !important;
    color: #d97706 !important;
    border-left: 3px solid #f59e0b !important;
}

.alert-info:not(.modal .alert-info):not(.modal-dialog .alert-info):not(.modal-content .alert-info) {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.1) 0%, rgba(37, 99, 235, 0.1) 100%) !important;
    color: #2563eb !important;
    border-left: 3px solid #3b82f6 !important;
}

/* ============================================================================
   КАРТОЧКИ В РЯДАХ - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.row.items-push:not(.modal .row):not(.modal-dialog .row):not(.modal-content .row) .block {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 1) 100%) !important;
}

body.dark-mode .row.items-push:not(.modal .row):not(.modal-dialog .row):not(.modal-content .row) .block {
    background: linear-gradient(135deg, rgba(30, 41, 59, 0.95) 0%, rgba(30, 41, 59, 1) 100%) !important;
}

/* ============================================================================
   ФОРМЫ - ДОПОЛНИТЕЛЬНЫЕ УЛУЧШЕНИЯ
   ============================================================================ */
.form-label:not(.modal .form-label):not(.modal-dialog .form-label):not(.modal-content .form-label) {
    font-weight: 500 !important;
    color: #374151 !important;
    margin-bottom: 0.5rem !important;
}

body.dark-mode .form-label:not(.modal .form-label):not(.modal-dialog .form-label):not(.modal-content .form-label) {
    color: #e5e7eb !important;
}

/* ============================================================================
   INPUT GROUP - ЛЕГКИЕ УЛУЧШЕНИЯ
   ============================================================================ */
.input-group:not(.modal .input-group):not(.modal-dialog .input-group):not(.modal-content .input-group) {
    border-radius: 8px !important;
    overflow: hidden !important;
}

.input-group-text:not(.modal .input-group-text):not(.modal-dialog .input-group-text):not(.modal-content .input-group-text) {
    border-radius: 8px 0 0 8px !important;
    background: rgba(102, 126, 234, 0.05) !important;
    border-color: rgba(0, 0, 0, 0.1) !important;
    color: #667eea !important;
}

/* ============================================================================
   АДАПТИВНОСТЬ
   ============================================================================ */
@media (max-width: 768px) {
    .nav-main-link {
        margin: 2px 4px !important;
        padding: 0.625rem 0.875rem !important;
    }
    
    .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block) {
        border-radius: 8px !important;
    }
    
    .items-push .block:not(.modal .block):not(.modal-dialog .block):not(.modal-content .block):hover {
        transform: translateY(-2px) !important;
    }
}
