/* ============================================================
   ЛИЧНЫЙ КАБИНЕТ — оформление в стиле лендинга (NUR Energy)
   Светлая коралловая тема. Применяется ТОЛЬКО к body.cab-theme,
   поэтому админка и публичные страницы не затрагиваются.
   ============================================================ */

body.cab-theme {
    /* Переопределяем «тёмные» переменные базовой темы на палитру лендинга.
       За счёт этого все инлайновые var(--dark-card) / var(--dark-border) /
       var(--gradient) / var(--primary) автоматически становятся светлыми. */
    --primary:       #1597d8;
    --primary-dark:  #0c6fae;
    --secondary:     #27a55c;
    --accent:        #f0b429;
    --success:       #27a55c;
    --danger:        #ef4444;
    --dark:          #eef6fb;
    --dark-card:     #ffffff;
    --dark-border:   #dcebf4;
    --text-muted:    #5a6b7e;
    --gradient:      linear-gradient(135deg, #1597d8, #0c6fae);

    /* Локальные «лендинговые» токены */
    --l-bg:          #eef6fb;
    --l-card:        #ffffff;
    --l-line:        #dcebf4;
    --l-ink:         #10243a;
    --l-ink-soft:    #5a6b7e;
    --l-coral:       #1597d8;
    --l-coral-dark:  #0c6fae;
    --l-coral-soft:  #e7f4fc;
    --l-green:       #27a55c;
    --l-gold:        #f0b429;

    /* Bootstrap-переменные под светлую тему */
    --bs-body-color:      #10243a;
    --bs-body-bg:         #eef6fb;
    --bs-border-color:    #dcebf4;
    --bs-secondary-color: #5a6b7e;
    --bs-emphasis-color:  #10243a;

    background: var(--l-bg) !important;
    color: var(--l-ink);
    font-family: 'Montserrat', system-ui, sans-serif;
}

/* ── НАВБАР ───────────────────────────────────────────────── */
body.cab-theme #mainNav {
    background: rgba(255,255,255,.9);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid var(--l-line);
}
body.cab-theme #mainNav .navbar-brand   { color: var(--l-ink) !important; font-weight: 900; }
body.cab-theme #mainNav .navbar-brand i { color: var(--l-coral); }
body.cab-theme #mainNav .nav-link        { color: var(--l-ink-soft); }
body.cab-theme #mainNav .nav-link:hover  { color: var(--l-coral); }
body.cab-theme #mainNav .navbar-toggler  { border: 1px solid var(--l-line) !important; }
body.cab-theme #mainNav .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath stroke='%2310243a' stroke-width='2.2' stroke-linecap='round' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

/* ── САЙДБАР ──────────────────────────────────────────────── */
body.cab-theme .cabinet-sidebar {
    background: var(--l-card);
    border-right: 1px solid var(--l-line);
}
body.cab-theme .sidebar-link {
    color: var(--l-ink-soft);
    border-left: 3px solid transparent;
    font-weight: 600;
}
body.cab-theme .sidebar-link:hover,
body.cab-theme .sidebar-link.active {
    color: var(--l-coral-dark);
    background: var(--l-coral-soft);
    border-left-color: var(--l-coral);
}
body.cab-theme .sidebar-link.text-danger { color: var(--l-coral-dark) !important; }

/* Мобильный offcanvas-сайдбар */
body.cab-theme .offcanvas {
    background: var(--l-card) !important;
    border-right: 1px solid var(--l-line) !important;
    color: var(--l-ink);
}
body.cab-theme .offcanvas .btn-close,
body.cab-theme .btn-close { filter: none; }

/* ── КАРТОЧКИ ─────────────────────────────────────────────── */
body.cab-theme .card-dark,
body.cab-theme .stat-card,
body.cab-theme .wallet-card,
body.cab-theme .form-box,
body.cab-theme .binary-tree-wrap,
body.cab-theme .status-row,
body.cab-theme .package-card {
    background: var(--l-card) !important;
    border: 1px solid var(--l-line) !important;
    border-radius: 22px;
    box-shadow: 0 6px 22px rgba(24,27,34,.05);
}
body.cab-theme .card-dark:hover,
body.cab-theme .wallet-card:hover,
body.cab-theme .package-card:hover,
body.cab-theme .status-row:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(24,27,34,.10);
    border-color: var(--l-coral) !important;
}
body.cab-theme .package-card.featured {
    border-color: var(--l-coral) !important;
    background: #fff !important;
    box-shadow: 0 18px 44px rgba(21,151,216,.18);
}
body.cab-theme .package-card.featured::after { background: var(--l-coral); }
body.cab-theme .package-cv   { color: var(--l-coral); }
body.cab-theme .package-name { color: var(--l-ink); }

/* ── ТЕКСТОВЫЕ УТИЛИТЫ ────────────────────────────────────── */
body.cab-theme .text-white   { color: var(--l-ink) !important; }
body.cab-theme .text-muted   { color: var(--l-ink-soft) !important; }
body.cab-theme .text-primary { color: var(--l-coral) !important; }
body.cab-theme .text-info    { color: #2f6df0 !important; }
body.cab-theme .text-warning { color: #d98a00 !important; }
body.cab-theme .text-success { color: var(--l-green) !important; }
body.cab-theme .text-cv      { color: var(--l-coral) !important; }
body.cab-theme .text-kgs     { color: #d98a00 !important; }
body.cab-theme .text-bonus   { color: var(--l-green) !important; }
body.cab-theme .stat-value,
body.cab-theme .wallet-balance,
body.cab-theme .section-title,
body.cab-theme .status-name { color: var(--l-ink); }
body.cab-theme .gradient-text {
    background: var(--gradient);
    -webkit-background-clip: text; background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* ── КНОПКИ ───────────────────────────────────────────────── */
body.cab-theme .btn-primary {
    background: var(--gradient);
    border: none; border-radius: 50px; color: #fff;
    font-weight: 700;
    box-shadow: 0 8px 20px rgba(21,151,216,.30);
}
body.cab-theme .btn-primary:hover {
    background: var(--l-coral-dark); transform: translateY(-2px);
    box-shadow: 0 12px 26px rgba(21,151,216,.40);
}
body.cab-theme .btn-outline-primary {
    border: 2px solid var(--l-line); color: var(--l-ink);
    background: #fff; border-radius: 50px; font-weight: 700;
}
body.cab-theme .btn-outline-primary:hover {
    border-color: var(--l-coral); color: var(--l-coral); background: #fff;
}
body.cab-theme .btn-outline-secondary {
    border: 2px solid var(--l-line); color: var(--l-ink-soft);
    border-radius: 50px; font-weight: 700;
}
body.cab-theme .btn-outline-secondary:hover {
    border-color: var(--l-coral); color: var(--l-coral); background: #fff;
}
body.cab-theme .btn-success { background: var(--l-green); border: none; border-radius: 50px; }
body.cab-theme .btn-danger  { background: var(--danger); border: none; border-radius: 50px; }
body.cab-theme .btn-warning { background: var(--l-gold); border: none; border-radius: 50px; color: #10243a; }

/* ── БЕЙДЖИ ───────────────────────────────────────────────── */
body.cab-theme .badge { color: #fff; }
body.cab-theme .badge.bg-primary   { background: var(--l-coral) !important; }
body.cab-theme .badge.bg-success   { background: var(--l-green) !important; }
body.cab-theme .badge.bg-secondary { background: #9aa1ac !important; }
body.cab-theme .badge.bg-warning   { background: var(--l-gold) !important; color: #10243a; }
body.cab-theme .badge.bg-info      { background: #2f6df0 !important; }

/* ── ТАБЛИЦЫ ──────────────────────────────────────────────── */
body.cab-theme .table-dark {
    --bs-table-bg:            #ffffff;
    --bs-table-color:         #10243a;
    --bs-table-border-color:  #eeeef1;
    --bs-table-striped-bg:    #f1f8fc;
    --bs-table-striped-color: #10243a;
    --bs-table-hover-bg:      #e7f4fc;
    --bs-table-hover-color:   #10243a;
    color: #10243a;
    border-radius: 16px;
    overflow: hidden;
}
body.cab-theme .table th { color: var(--l-ink-soft); }

/* ── ФОРМЫ ────────────────────────────────────────────────── */
body.cab-theme .form-control,
body.cab-theme .form-select,
body.cab-theme .form-control-sm,
body.cab-theme .form-select-sm {
    background: #fff; border: 1px solid var(--l-line);
    color: var(--l-ink); border-radius: 12px;
}
body.cab-theme .form-control:focus,
body.cab-theme .form-select:focus,
body.cab-theme .form-control-sm:focus,
body.cab-theme .form-select-sm:focus {
    background: #fff; border-color: var(--l-coral); color: var(--l-ink);
    box-shadow: 0 0 0 3px rgba(21,151,216,.18);
}
body.cab-theme .form-control::placeholder { color: #9aa1ac; }
body.cab-theme .form-control:disabled,
body.cab-theme .form-control[readonly],
body.cab-theme .form-select:disabled { background: #f5f5f7; color: #7a818c; }
body.cab-theme .form-select,
body.cab-theme .form-select-sm {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%235a6b7e' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3E%3C/svg%3E");
}
body.cab-theme .form-select option { background: #fff; color: #10243a; }
body.cab-theme .form-control:-webkit-autofill,
body.cab-theme .form-control:-webkit-autofill:focus {
    -webkit-box-shadow: 0 0 0 1000px #fff inset;
    -webkit-text-fill-color: #10243a; caret-color: #10243a;
}
body.cab-theme .form-label { color: var(--l-ink-soft); }

/* ── ПРОЧЕЕ ───────────────────────────────────────────────── */
body.cab-theme hr,
body.cab-theme .border-secondary { border-color: var(--l-line) !important; opacity: 1; }
body.cab-theme code {
    background: var(--l-coral-soft); color: var(--l-coral-dark);
    padding: 2px 7px; border-radius: 6px;
}
body.cab-theme .progress { background: #ececf1 !important; }
body.cab-theme .modal-content {
    background: #fff !important; border: 1px solid var(--l-line) !important;
    color: var(--l-ink); border-radius: 20px;
}
body.cab-theme .modal-header,
body.cab-theme .modal-footer { border-color: var(--l-line) !important; }

/* Скроллбар */
body.cab-theme ::-webkit-scrollbar-track { background: #ececf1; }
body.cab-theme ::-webkit-scrollbar-thumb { background: #cfcfd6; border-radius: 3px; }
body.cab-theme ::-webkit-scrollbar-thumb:hover { background: var(--l-coral); }

/* Футер (виден на страницах входа/регистрации) */
body.cab-theme .site-footer {
    background: #fff;
    border-top: 1px solid var(--l-line);
}
body.cab-theme .site-footer h5,
body.cab-theme .site-footer h6 { color: var(--l-ink); }
body.cab-theme .footer-link { color: var(--l-ink-soft); }
body.cab-theme .footer-link:hover { color: var(--l-coral); }

/* Алёрты на светлой теме */
body.cab-theme .alert-danger {
    background: #fdecec; border: 1px solid #f5c2c7; color: #b02a37;
}
body.cab-theme .alert-success {
    background: #e7f6ee; border: 1px solid #b7e0c6; color: #1d8047;
}

/* Пагинация (bonuses.php и т.п.) */
body.cab-theme .page-link {
    color: var(--l-ink-soft);
    background: #fff;
    border-color: var(--l-line);
}
body.cab-theme .page-link:hover { color: var(--l-coral); background: var(--l-coral-soft); }
body.cab-theme .page-item.active .page-link {
    background: var(--l-coral); border-color: var(--l-coral); color: #fff;
}

/* ── БИНАРНОЕ ДЕРЕВО: узлы (генерируются main.js) ─────────── */
body.cab-theme .tree-node-box {
    background: #fff !important;
    border-color: var(--l-line) !important;
    color: var(--l-ink);
}
body.cab-theme .tree-node-box:hover { border-color: var(--l-coral) !important; }
body.cab-theme .tree-node-box.me {
    border-color: var(--l-coral) !important;
    background: var(--l-coral-soft) !important;
}
body.cab-theme .tree-node-box .node-name { color: var(--l-ink) !important; }
body.cab-theme .tree-line-v,
body.cab-theme .tree-line-h { background: var(--l-line) !important; }

/* ── Кастомный автокомплит (admin/reports.php) ───────────── */
body.cab-theme #userSearchDrop,
body.cab-theme .user-search-drop {
    background: #fff !important;
    border: 1px solid var(--l-line) !important;
    color: var(--l-ink);
}
body.cab-theme .user-opt:hover { background: var(--l-coral-soft) !important; }
