/* ========== ОБЩИЕ ПЕРЕХОДЫ ДЛЯ ВСЕХ КЛИКАБЕЛЬНЫХ ЭЛЕМЕНТОВ ========== */
a, button, .btn, .nav-link, .dropdown-item, .page-link, .list-group-item, 
.card-link, input[type="submit"], input[type="button"], .clickable {
    transition: all 0.2s ease-in-out !important;
    cursor: pointer;
}

/* ========== КНОПКИ (Bootstrap и обычные) ========== */
.btn, button, input[type="submit"], input[type="button"] {
    transform: scale(1);
}

.btn:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
}

.btn:active, button:active, input[type="submit"]:active, input[type="button"]:active {
    transform: scale(0.96) !important;
    transition: all 0.05s ease-in-out !important;
}

/* Тёмные цвета для кнопок */
.btn-primary { background-color: #0a58ca; border-color: #084298; }
.btn-primary:hover { background-color: #084298; border-color: #06307a; }

.btn-success { background-color: #0e5a3a; border-color: #0c4a2f; }
.btn-success:hover { background-color: #0c4a2f; border-color: #093d26; }

.btn-danger { background-color: #8b1e2a; border-color: #7a1924; }
.btn-danger:hover { background-color: #7a1924; border-color: #66141e; }

.btn-warning { background-color: #e0a800; border-color: #c99700; color: #2c2c2c; }
.btn-warning:hover { background-color: #c99700; border-color: #b08600; color: #1a1a1a; }

.btn-secondary { background-color: #40464e; border-color: #353a41; }
.btn-secondary:hover { background-color: #353a41; border-color: #2c3137; }

.btn-info { background-color: #1ba0b5; border-color: #178a9c; }
.btn-info:hover { background-color: #178a9c; border-color: #127584; }

.btn-dark { background-color: #1a1e24; border-color: #14171c; }
.btn-dark:hover { background-color: #14171c; border-color: #0e1115; }

.btn-light { background-color: #e9ecef; border-color: #dce1e6; color: #1e2125; }
.btn-light:hover { background-color: #dce1e6; border-color: #cfd6dc; }

/* ========== ССЫЛКИ ========== */
a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link) {
    color: #0a58ca;
    text-decoration: none;
}
a:not(.btn):not(.nav-link):not(.dropdown-item):not(.page-link):hover {
    color: #06307a;
    text-decoration: underline;
    transform: translateY(-1px);
}
a:active {
    transform: scale(0.98);
}

/* ========== НАВИГАЦИЯ ========== */
.nav-link:hover {
    transform: translateY(-1px);
    text-shadow: 0 0 2px rgba(0,0,0,0.2);
    background-color: rgba(10,88,202,0.15);
}
.nav-link:active {
    transform: scale(0.98);
}

/* ========== КАРТОЧКИ ========== */
.card {
    transition: all 0.3s ease-in-out;
    border: 1px solid rgba(0,0,0,0.125);
}
.card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    border-color: #0a58ca;
    background-color: #eef2f9;
}
.card-link:hover {
    transform: translateY(-1px);
}

/* ========== СТРОКИ ТАБЛИЦ ========== */
.table tbody tr {
    transition: background-color 0.2s ease, transform 0.1s ease;
}
.table tbody tr:hover {
    background-color: #dee6f2 !important;
}
.table tbody tr[onclick]:hover, .table tbody tr.clickable-row:hover {
    transform: scale(1.001);
}

/* ========== ЭЛЕМЕНТЫ СПИСКА ========== */
.list-group-item {
    transition: all 0.2s ease;
}
.list-group-item:hover {
    background-color: #dee6f2;
    transform: translateX(3px);
    border-left: 3px solid #0a58ca;
}
.list-group-item:active {
    transform: scale(0.99);
}
.list-group-item-action.active {
    background-color: #0a58ca !important;
    border-color: #084298 !important;
    color: white !important;
}
.list-group-item-action.active:hover {
    background-color: #084298 !important;
    transform: translateX(3px);
}

/* ========== ПАГИНАЦИЯ ========== */
.page-link {
    transition: all 0.2s ease;
}
.page-link:hover {
    background-color: #dee6f2;
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0,0,0,0.15);
}
.page-link:active {
    transform: scale(0.97);
}

/* ========== ВЫПАДАЮЩИЕ ПУНКТЫ ========== */
.dropdown-item:hover {
    background-color: #dee6f2;
    transform: translateX(3px);
}
.dropdown-item:active {
    transform: scale(0.98);
}

/* ========== МОДАЛЬНЫЕ КНОПКИ ========== */
.modal-footer .btn:hover {
    transform: translateY(-1px);
}

/* ========== КЛАСС .clickable ========== */
.clickable:hover {
    background-color: #dee6f2;
    cursor: pointer;
    transform: scale(1.01);
}
.clickable:active {
    transform: scale(0.99);
}
