/* ============================================================
   AION Nexus — тема кабинета, унифицированная с главным сайтом
   Подключается ПОСЛЕ style.css и переопределяет палитру,
   шрифты и ключевые компоненты под дизайн главной страницы.
   ============================================================ */

:root,
[data-theme="light"] {
  /* тёплая «чернильная» палитра главного сайта */
  --bg: #0a0809;
  --bg-2: #0e0b0d;
  --panel: rgba(236, 228, 236, 0.035);
  --panel-hover: rgba(236, 228, 236, 0.07);
  --border: rgba(236, 228, 236, 0.10);
  --border-strong: rgba(236, 228, 236, 0.18);
  --text: #ece8ec;
  --muted: #9a939c;

  /* единый акцент «Nexus»: багровый + фиолетовый */
  --accent-1: #d24b4b;
  --accent-2: #b06ac9;
  --accent-3: #e08a6a;
  --danger: #f87171;
  --ok: #34d399;
  --grad: linear-gradient(135deg, var(--accent-1), var(--accent-2));

  --font: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --display: "Forum", "Times New Roman", serif;
  --shadow-soft: 0 14px 40px rgba(0, 0, 0, 0.5);
}

/* убираем отдельную светлую тему — кабинет следует тёмному дизайну сайта */
[data-theme="light"] body { background: var(--bg); }
[data-theme="light"] .topbar,
[data-theme="light"] .auth-card,
[data-theme="light"] .captcha-img,
[data-theme="light"] .data-table th,
[data-theme="light"] .toast,
[data-theme="light"] .null { background: initial; color: initial; }

/* ---------- Шрифты и фон ---------- */
* { font-family: inherit; }

body {
  font-family: var(--font);
  background:
    radial-gradient(1200px 600px at 82% -10%, rgba(210, 75, 75, 0.10), transparent 60%),
    radial-gradient(900px 500px at 8% 110%, rgba(176, 106, 201, 0.10), transparent 60%),
    linear-gradient(180deg, #0a0809 0%, #0e0b0d 100%);
  color: var(--text);
}

h1, h2, h3, h4, .auth-logo h1, .welcome h1, .section-head h2,
.shop-cat-title, .admin-card-title, .stub-title, .modal-title, .lb-table th {
  font-family: var(--display);
  font-weight: 400;
  letter-spacing: 0.01em;
}

/* неоновый фон → тёплый «nexus» */
.aurora {
  background:
    radial-gradient(40% 50% at 20% 20%, rgba(210, 75, 75, 0.14), transparent 60%),
    radial-gradient(45% 55% at 80% 30%, rgba(176, 106, 201, 0.16), transparent 60%),
    radial-gradient(40% 50% at 50% 90%, rgba(224, 138, 106, 0.10), transparent 60%);
}

/* ---------- Верхняя панель (как на сайте) ---------- */
.topbar {
  background: rgba(10, 8, 9, 0.86);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--border);
  height: 64px;
}
.brand-text {
  font-family: var(--display);
  letter-spacing: 0.12em;
  font-size: 17px;
}
.brand-text em { color: var(--accent-1); font-style: normal; }

.nav-links { gap: 2px; }
.nav-link {
  font-family: var(--font);
  font-size: 14px;
  letter-spacing: 0.01em;
  padding: 8px 14px;
}
.nav-link:hover { background: var(--panel-hover); color: var(--text); }
.nav-link.active {
  background: var(--accent-1);
  color: #fff;
  box-shadow: none;
}

.icon-btn:hover { background: var(--panel-hover); }

/* ---------- Кнопки в стиле сайта ---------- */
.btn {
  font-family: var(--font);
  font-weight: 600;
  border-radius: 3px;
  border: 1px solid var(--border-strong);
  padding: 10px 18px;
}
.btn-primary {
  background: var(--accent-1);
  color: #fff;
  box-shadow: none;
}
.btn-primary:hover { filter: brightness(1.08); }
.btn-ghost { background: transparent; }
.btn-danger {
  background: linear-gradient(135deg, #f87171, #ef4444);
  border: none;
}

/* ---------- Auth (вход/регистрация) ---------- */
.auth-aside {
  background: linear-gradient(150deg, rgba(210, 75, 75, 0.20), rgba(176, 106, 201, 0.24) 45%, rgba(224, 138, 106, 0.16));
}
.auth-glow {
  background: radial-gradient(600px 400px at 50% 0%, rgba(210, 75, 75, 0.16), transparent 70%);
}
.auth-card {
  background: rgba(14, 11, 13, 0.82);
  border: 1px solid var(--border);
}
.aside-brand .brand-text { font-family: var(--display); letter-spacing: 0.12em; }
.aside-feats .fi {
  background: rgba(236, 228, 236, 0.10);
  border: 1px solid rgba(236, 228, 236, 0.18);
}

/* ссылка «на сайт» на страницах входа */
.back-site {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font);
  font-size: 13px;
  color: var(--text);
  text-decoration: none;
  padding: 8px 14px;
  border: 1px solid var(--border-strong);
  border-radius: 3px;
  background: rgba(236, 228, 236, 0.04);
  transition: border-color .2s ease, background .2s ease;
}
.back-site:hover { border-color: var(--accent-1); background: rgba(210, 75, 75, 0.10); }

/* ---------- Поля ввода ---------- */
.field { color: var(--muted); }
.field input {
  background: rgba(236, 228, 236, 0.04);
  border: 1px solid var(--border);
  border-radius: 3px;
  color: var(--text);
}
.field input:focus {
  border-color: var(--accent-1);
  box-shadow: 0 0 0 3px rgba(210, 75, 75, 0.18);
}
.field input::placeholder { color: rgba(154, 147, 156, 0.55); }

/* ---------- Dashboard hero / welcome ---------- */
.hero,
.welcome {
  background: linear-gradient(135deg, rgba(210, 75, 75, 0.12), rgba(176, 106, 201, 0.14), rgba(224, 138, 106, 0.08));
  border: 1px solid var(--border);
}
.hero h1, .welcome h1 { font-family: var(--display); }

/* ---------- Таблицы данных ---------- */
.data-table th,
.table thead th {
  background: var(--bg);
  color: var(--accent-1);
  border-bottom: 2px solid var(--border-strong);
}
.data-table td,
.table td {
  border-bottom: 1px solid var(--border);
}
.data-table tbody tr:hover td,
.table-hover tbody tr:hover td {
  background: rgba(201, 170, 113, 0.04);
}
.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.015);
}

/* ---------- Карточки и панели ---------- */
.panel, .meta-card, .stat, .acc-row, .ref-row, .admin-card, .admin-cat, .admin-item,
.shop-cat, .shop-item, .modal-box, .empty-state, .stub-box, .table-panel, .auth-card {
  border-color: var(--border);
}
.panel, .meta-card, .stat, .admin-card, .shop-cat, .shop-item, .modal-box, .auth-card {
  background: var(--panel);
}
.stat-ico, .welcome-avatar, .char-badge, .brand-mark { box-shadow: 0 6px 18px rgba(210, 75, 75, 0.35); }

.empty-icon {
  background: linear-gradient(135deg, rgba(210, 75, 75, 0.15), rgba(176, 106, 201, 0.15));
}

/* ---------- Рейтинги / вкладки ---------- */
.lb-tab.active {
  color: #fff;
  background: var(--accent-1);
  border-color: transparent;
  box-shadow: none;
}
.lb-rating { color: var(--accent-1); }
.lb-online { color: var(--accent-2); }

/* ---------- Метки баланса / аура ---------- */
.shop-balance { border-color: var(--border); background: var(--panel); }
.shop-balance-ico { color: var(--accent-1); }
.shop-item-price { color: var(--accent-2); }
.hero-chip.aura, .chip-mini.aura { color: #fbbf24; background: rgba(251, 191, 36, 0.1); border-color: rgba(251, 191, 36, 0.25); }
