/* ===================================================================
   EasyDonate — Cave Theme (final v5 + lime titles)
   Рабочие селекторы EasyDonate + синяя палитра + факел + лайм
   =================================================================== */

:root {
    --white: #e8f4ff;
    --black: #061228;
    --shade: #00A2FF;
    --cyan-1: #00A2FF;
    --cyan-2: #00B7FF;
    --cyan-3: #00D6FF;
    --lime-1: #A3E635;
    --lime-2: #84CC16;
    --lime-3: #65A30D;
    --bg-deep: #030818;
    --bg-card: rgba(10, 25, 50, 0.75);
    --bg-soft: #0a1733;
}

/* ===== Minecraft Torch — курсор ===== */
html, body, a, button, input, select, textarea, .btn, [role="button"] {
    cursor: url("data:image/svg+xml;utf8,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='32'%20viewBox='0%200%2016%2016'%20shape-rendering='crispEdges'%3E%3Crect%20x='7'%20y='2'%20width='2'%20height='1'%20fill='%23FF9A00'/%3E%3Crect%20x='6'%20y='3'%20width='1'%20height='4'%20fill='%23FF9A00'/%3E%3Crect%20x='9'%20y='3'%20width='1'%20height='4'%20fill='%23FF9A00'/%3E%3Crect%20x='6'%20y='3'%20width='4'%20height='1'%20fill='%23FF9A00'/%3E%3Crect%20x='6'%20y='6'%20width='4'%20height='1'%20fill='%23FF9A00'/%3E%3Crect%20x='7'%20y='3'%20width='2'%20height='1'%20fill='%23FFE34D'/%3E%3Crect%20x='7'%20y='4'%20width='2'%20height='2'%20fill='%23FFF8CC'/%3E%3Crect%20x='7'%20y='5'%20width='2'%20height='1'%20fill='%23FFE34D'/%3E%3Crect%20x='6'%20y='7'%20width='4'%20height='1'%20fill='%234A2D13'/%3E%3Crect%20x='7'%20y='8'%20width='2'%20height='8'%20fill='%238C6B3F'/%3E%3Crect%20x='8'%20y='8'%20width='1'%20height='8'%20fill='%236E5529'/%3E%3Crect%20x='7'%20y='8'%20width='1'%20height='8'%20fill='%23A0784C'/%3E%3C/svg%3E") 8 4, auto !important;
}

/* ===== Фон — тёмная пещера (градиент, без SVG-текстуры) ===== */
body, html {
    background-color: var(--bg-deep) !important;
    background-image:
        radial-gradient(ellipse 55% 35% at 50% 0%, rgba(0, 214, 255, 0.15), transparent 70%),
        radial-gradient(ellipse 70% 50% at 15% 100%, rgba(0, 100, 180, 0.1), transparent 60%),
        radial-gradient(ellipse 70% 50% at 85% 85%, rgba(0, 162, 255, 0.08), transparent 60%),
        linear-gradient(180deg, #030818 0%, #08122a 45%, #030818 100%) !important;
    background-attachment: fixed !important;
    background-size: 100% 100% !important;
    color: var(--white) !important;
    min-height: 100vh;
}

/* Свет за курсором (работает если подключён JS) */
body::after {
    content: '';
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: 9999;
    background: radial-gradient(circle 220px at var(--mx, 50%) var(--my, 5%),
        rgba(255, 165, 0, 0.14) 0%,
        rgba(0, 214, 255, 0.08) 35%,
        transparent 75%);
    mix-blend-mode: screen;
}

/* ===== Шапка ===== */
.navbar, .bg-white, .bg-light, .bg-dark {
    background-color: rgba(3, 8, 24, 0.6) !important;
    background-image: linear-gradient(180deg, rgba(0, 20, 40, 0.8), rgba(3, 8, 24, 0.3)) !important;
    border-bottom: 1px solid rgba(0, 162, 255, 0.3) !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.5) !important;
    backdrop-filter: blur(14px) saturate(140%);
    -webkit-backdrop-filter: blur(14px) saturate(140%);
}

.navbar a, .navbar .nav-link {
    color: var(--white) !important;
    font-weight: 600;
    transition: color 0.15s;
}
.navbar a:hover, .navbar .nav-link:hover {
    color: var(--cyan-3) !important;
}

/* ===== Заголовки страницы ===== */
.navbar-brand, .logo,
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.title, .item-title,
.display-1, .display-2, .display-3, .display-4 {
    color: #ffffff !important;
    text-shadow: 0 0 10px rgba(0, 214, 255, 0.25) !important;
}

h1, h2, .display-3, .display-4 {
    background: linear-gradient(180deg, #ffffff 0%, #d4eeff 60%, #00D6FF 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    filter: drop-shadow(0 0 10px rgba(0, 214, 255, 0.3));
}

/* ===== Карточки товаров / серверов ===== */
.product-card, .server-card, .select-server-card, .card, .list-group-item {
    background: var(--bg-card) !important;
    border: 2px solid var(--shade) !important;
    border-radius: 14px !important;
    color: var(--white) !important;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.45) !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s;
}

.product-card:hover, .server-card:hover, .select-server-card:hover, .card:hover {
    background: rgba(15, 35, 65, 0.85) !important;
    border-color: var(--cyan-3) !important;
    box-shadow: 0 6px 22px rgba(0, 162, 255, 0.35) !important;
    transform: translateY(-3px);
}

/* ===== ЛАЙМОВЫЙ ГРАДИЕНТ — названия серверов ===== */
.server-card h1, .server-card h2, .server-card h3,
.server-card h4, .server-card h5, .server-card h6,
.select-server-card h1, .select-server-card h2, .select-server-card h3,
.select-server-card h4, .select-server-card h5, .select-server-card h6,
.server-card .card-title, .server-card .title, .server-card .item-title,
.select-server-card .card-title, .select-server-card .title, .select-server-card .item-title,
.server-card [class*="text-black"]:not(.btn):not(button):not(.badge),
.select-server-card [class*="text-black"]:not(.btn):not(button):not(.badge) {
    background: linear-gradient(135deg, #A3E635 0%, #84CC16 40%, #65A30D 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
    text-shadow: none !important;
    filter: drop-shadow(0 0 10px rgba(163, 230, 53, 0.6)) drop-shadow(0 1px 2px rgba(0, 0, 0, 0.9)) !important;
    font-weight: 800 !important;
}

.server-card:hover h3, .server-card:hover h4,
.select-server-card:hover h3, .select-server-card:hover h4 {
    filter: drop-shadow(0 0 16px rgba(163, 230, 53, 1)) drop-shadow(0 1px 2px rgba(0, 0, 0, 0.9)) !important;
}

/* Приглушённый текст внутри карточек серверов — лайм */
.server-card .text-muted,
.select-server-card .text-muted {
    color: #A3E635 !important;
    opacity: 0.85 !important;
}

/* ===== Модалка и поля ===== */
.form-control, .modal-content, .bg-soft {
    background-color: var(--black) !important;
    border-color: var(--shade) !important;
    color: var(--white) !important;
}

.modal-content {
    background: rgba(6, 18, 42, 0.96) !important;
    border: 2px solid var(--shade) !important;
    border-radius: 14px !important;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.8), 0 0 40px rgba(0, 162, 255, 0.2) !important;
    backdrop-filter: blur(16px);
}

.modal-header, .modal-footer {
    background-color: transparent !important;
    border-color: rgba(0, 162, 255, 0.3) !important;
}

.modal-body { background: transparent !important; }

/* Поля ввода */
input, .text-black .text-muted {
    border: 2px solid var(--shade) !important;
    background-color: rgba(2, 8, 22, 0.9) !important;
    color: var(--white) !important;
}

.form-control {
    background-color: rgba(2, 8, 22, 0.9) !important;
    color: var(--white) !important;
}

.form-control::placeholder { color: #6f9cc4 !important; }

/* ===== Все тексты EasyDonate ===== */
.text-black a:not(.btn),
.text-black h1, .text-black h2, .text-black h3,
.text-black h4, .text-black h6,
.text-black .h1, .text-black .h2, .text-black .h3, .text-black .h4,
.text-black .h5, .text-black .h6,
.text-black .display-1, .text-black .display-2,
.text-black .display-3, .text-black .display-4,
.title, .category, .item-price, .item-title, .modal-title,
.label, label, .input-group .form-control,
.text-soft, .text-soft:hover,
.text-black, .text-black:hover,
h4, p, .text-black h5 {
    color: var(--white) !important;
}

/* Заголовки — белые жирные */
.text-black h1, .text-black h2, .text-black h3,
.text-black h4, .text-black h5, .text-black h6,
.modal-title, .title, .item-title {
    color: #ffffff !important;
    font-weight: 800 !important;
    text-shadow: 0 0 10px rgba(0, 214, 255, 0.35) !important;
}

/* Цена */
.item-price, .cart-cost {
    color: var(--cyan-3) !important;
    font-weight: 900 !important;
    text-shadow: 0 0 10px rgba(0, 214, 255, 0.5) !important;
}

/* Заголовки внутри карточек товара */
h5.font-weight-bolder.mb-1.text-black,
p.font-weight-bolder.mb-0,
.font-weight-bolder {
    color: #ffffff !important;
    font-weight: 800 !important;
    text-shadow: 0 0 8px rgba(0, 214, 255, 0.4) !important;
}

p.small.mb-0.text-uppercase.text-black,
.small.text-uppercase {
    color: #8fbfe0 !important;
}

/* Инструкция и описания */
p.mt-0, .modal-body p, .text-black p {
    color: #d8ecff !important;
}

/* Приглушённые подписи */
.text-muted, .small.text-muted {
    color: #8fbfe0 !important;
}

/* Ссылки */
a { color: var(--cyan-3) !important; }
a:hover { color: #ffffff !important; }

/* ===== Иконки ===== */
.mr-1, .mx-1 {
    margin-right: 0.25rem !important;
    color: var(--white) !important;
    fill: var(--white) !important;
}

svg {
    fill: var(--white) !important;
    color: var(--white) !important;
}

/* ===== Кнопки ===== */
.btn {
    border-radius: 10px !important;
    font-weight: 700 !important;
    transition: all 0.15s ease !important;
}

.btn-primary, .btn-info, .btn-blue,
button[type="submit"].btn {
    background: linear-gradient(180deg, var(--cyan-3), var(--cyan-1)) !important;
    border: 2px solid var(--cyan-1) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 0 #0086d6, 0 4px 14px rgba(0, 162, 255, 0.3) !important;
}

.btn-primary:hover, .btn-info:hover {
    background: linear-gradient(180deg, #4de3ff, var(--cyan-3)) !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 0 #0086d6, 0 6px 18px rgba(0, 214, 255, 0.45) !important;
}

.btn-primary:active {
    transform: translateY(2px);
    box-shadow: 0 1px 0 #0086d6 !important;
}

.btn-outline-primary, .btn-outline-secondary {
    background: rgba(0, 162, 255, 0.08) !important;
    border: 2px solid var(--cyan-1) !important;
    color: var(--cyan-3) !important;
}
.btn-outline-primary:hover, .btn-outline-secondary:hover {
    background: var(--cyan-1) !important;
    color: #ffffff !important;
}

.btn-light, .btn-secondary {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 2px solid rgba(0, 214, 255, 0.3) !important;
    color: var(--white) !important;
}
.btn-light:hover, .btn-secondary:hover {
    background: rgba(0, 214, 255, 0.15) !important;
    border-color: var(--cyan-3) !important;
    color: #ffffff !important;
}

.btn-success {
    background: linear-gradient(180deg, #34d399, #10b981) !important;
    color: #fff !important;
}
.btn-danger {
    background: linear-gradient(180deg, #f87171, #dc2626) !important;
    color: #fff !important;
}

/* ===== Корзина ===== */
.cart-item-actions {
    border: 2px solid var(--shade) !important;
    background: rgba(2, 8, 22, 0.6) !important;
    border-radius: 10px !important;
}

/* ===== Табы / категории ===== */
.nav-tabs .nav-link {
    background: rgba(0, 162, 255, 0.08) !important;
    border: 2px solid transparent !important;
    color: #8fbfe0 !important;
    font-weight: 600;
    border-radius: 999px !important;
}
.nav-tabs .nav-link.active {
    background: linear-gradient(180deg, var(--cyan-3), var(--cyan-1)) !important;
    border-color: var(--cyan-1) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 10px rgba(0, 162, 255, 0.4) !important;
}
.nav-tabs .nav-link:hover:not(.active) {
    background: rgba(0, 214, 255, 0.15) !important;
    color: #ffffff !important;
}

/* ===== Чекбоксы ===== */
input[type="checkbox"] { accent-color: #00A2FF !important; }
.form-check-label { color: #b8d9f5 !important; }

/* ===== Бейджи ===== */
.badge-primary, .badge-info, .bg-primary { background: var(--cyan-1) !important; color: #fff !important; }
.badge-light, .bg-light { background: rgba(0, 214, 255, 0.15) !important; color: var(--cyan-3) !important; }

/* ===== Разделители ===== */
hr, .border, .border-top, .border-bottom {
    border-color: rgba(0, 162, 255, 0.3) !important;
}

/* ===== Скроллбар ===== */
::-webkit-scrollbar { width: 10px; background: #030818; }
::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, var(--cyan-3), var(--cyan-1));
    border-radius: 5px;
}

/* ===== Подвал ===== */
footer, .footer {
    background: rgba(3, 8, 24, 0.7) !important;
    border-top: 1px solid rgba(0, 162, 255, 0.3) !important;
    color: #8fbfe0 !important;
}