/* =====================================================================
   x-live · themes-premium.css  (2.1.0)
   Две привилегированные темы, которые выдаёт Владелец платформы:
     «VIP»     — для VIP-клиентов: чёрный бархат и шампанское золото.
     «Партнёр» — для партнёров и звёзд: сцена, софиты, переливающийся градиент.
   Темы только задают палитру и акценты (--bg --ink --muted --line --panel
   --glass --accent --accent-ink + --grad/--glow); доступ к ним сервер
   проверяет сам (PATCH /api/settings), клиент лишь рисует.
   ===================================================================== */

/* ---------- Палитры ---------- */
html[data-theme="vip"], html[data-theme="partner"] { color-scheme: dark; }

html[data-theme="vip"] {
  --bg: #0c0a07; --bg2: #17130b; --ink: #f8f0dd; --muted: #a99a79;
  --line: rgba(226, 184, 86, .24); --panel: rgba(22, 17, 9, .82); --glass: rgba(48, 37, 16, .5);
  --accent: #e2b856; --accent-ink: #1a1305;
  --grad: linear-gradient(135deg, #fbe7a1 0%, #e2b856 46%, #a8771a 100%);
  --glow: 0 0 26px rgba(226, 184, 86, .38);
  --ring: #e2b856;
}
html[data-theme="partner"] {
  --bg: #090612; --bg2: #140b25; --ink: #f7f2ff; --muted: #a99fcb;
  --line: rgba(178, 119, 255, .28); --panel: rgba(17, 10, 34, .82); --glass: rgba(52, 28, 98, .46);
  --accent: #b277ff; --accent-ink: #0e0622;
  --grad: linear-gradient(120deg, #ff4fd8 0%, #9b6bff 46%, #25f4ee 100%);
  --glow: 0 0 30px rgba(155, 107, 255, .5);
  --ring: #b277ff;
}

/* ---------- Фон: мягкий свет сверху ---------- */
html[data-theme="vip"] body {
  background:
    radial-gradient(1000px 560px at 8% -8%, rgba(226, 184, 86, .26), transparent 64%),
    radial-gradient(800px 460px at 100% 6%, rgba(226, 184, 86, .13), transparent 62%),
    var(--bg);
  background-attachment: fixed;
}
html[data-theme="partner"] body {
  background:
    radial-gradient(900px 560px at 6% -10%, rgba(255, 79, 216, .33), transparent 64%),
    radial-gradient(900px 520px at 100% 0%, rgba(37, 244, 238, .22), transparent 62%),
    radial-gradient(800px 560px at 50% 115%, rgba(124, 92, 255, .34), transparent 68%),
    var(--bg);
  background-attachment: fixed;
}
html[data-theme="vip"] .noise, html[data-theme="partner"] .noise { opacity: .05; mix-blend-mode: overlay; }

/* ---------- Каркас ---------- */
html[data-theme="vip"] .sidebar, html[data-theme="partner"] .sidebar,
html[data-theme="vip"] .topbar, html[data-theme="partner"] .topbar {
  background: var(--panel); border-color: var(--line);
  -webkit-backdrop-filter: blur(18px) saturate(1.3); backdrop-filter: blur(18px) saturate(1.3);
}
html[data-theme="vip"] .brand span, html[data-theme="partner"] .brand span {
  background: var(--grad); color: var(--accent-ink); box-shadow: var(--glow);
}
html[data-theme="vip"] .brand b, html[data-theme="partner"] .brand b { color: var(--ink); }

html[data-theme="vip"] .nav-item.active, html[data-theme="partner"] .nav-item.active {
  background: var(--glass); color: var(--ink); box-shadow: inset 3px 0 var(--accent);
}
html[data-theme="vip"] .nav-item:hover, html[data-theme="partner"] .nav-item:hover { background: var(--glass); }
html[data-theme="vip"] .nav-item em, html[data-theme="partner"] .nav-item em { background: var(--accent); color: var(--accent-ink); }

/* ---------- Главные кнопки: градиент и мягкое свечение ---------- */
html[data-theme="vip"] .create-button, html[data-theme="partner"] .create-button,
html[data-theme="vip"] .publish, html[data-theme="partner"] .publish,
html[data-theme="vip"] .tab-create .plus, html[data-theme="partner"] .tab-create .plus,
html[data-theme="vip"] .inv-go, html[data-theme="partner"] .inv-go {
  background: var(--grad); color: var(--accent-ink); border: 0; box-shadow: var(--glow);
}
html[data-theme="vip"] .tab-create .plus, html[data-theme="partner"] .tab-create .plus { box-shadow: var(--glow), 0 0 0 5px var(--bg); }

html[data-theme="vip"] .create-button, html[data-theme="partner"] .create-button {
  position: relative; overflow: hidden; font-weight: 800; letter-spacing: .2px;
}
html[data-theme="vip"] .create-button::after, html[data-theme="partner"] .create-button::after {
  content: ''; position: absolute; inset: 0; transform: translateX(-120%);
  background: linear-gradient(100deg, transparent 30%, rgba(255, 255, 255, .45) 50%, transparent 70%);
  animation: xl-shine 5.5s ease-in-out infinite;
  pointer-events: none;
}
@keyframes xl-shine { 0%, 62% { transform: translateX(-120%); } 82%, 100% { transform: translateX(120%); } }

/* ---------- Лента, вкладки, поля ---------- */
html[data-theme="vip"] .switch.active, html[data-theme="partner"] .switch.active { color: var(--ink); border-bottom-color: var(--accent); }
html[data-theme="vip"] .search, html[data-theme="partner"] .search { border-color: var(--line); }
html[data-theme="vip"] .profile-dot, html[data-theme="partner"] .profile-dot { box-shadow: 0 0 0 2px var(--bg), 0 0 0 4px var(--ring), var(--glow); }
html[data-theme="vip"] .avatar, html[data-theme="partner"] .avatar { box-shadow: 0 0 0 2px var(--bg), 0 0 0 3.5px var(--line); }
html[data-theme="vip"] .badge.vip { background: var(--grad); color: #1a1305; box-shadow: var(--glow); }
html[data-theme="partner"] .badge.vip { background: var(--grad); color: #fff; box-shadow: var(--glow); }

/* ---------- Мобильная нижняя панель ---------- */
html[data-theme="vip"] .tabbar, html[data-theme="partner"] .tabbar {
  background: var(--panel); border-color: var(--line);
  box-shadow: 0 14px 40px rgba(0, 0, 0, .5), 0 0 0 1px rgba(255, 255, 255, .03) inset, var(--glow);
}
html[data-theme="vip"] .tab.active:not(.tab-create)::after, html[data-theme="partner"] .tab.active:not(.tab-create)::after { background: var(--grad); }
html[data-theme="vip"] .more-item.active, html[data-theme="partner"] .more-item.active { background: var(--grad); color: var(--accent-ink); }
html[data-theme="vip"] .sheet-avatar, html[data-theme="partner"] .sheet-avatar { background: var(--grad); color: var(--accent-ink); }

/* ---------- Люди ---------- */
html[data-theme="vip"] .pf.active, html[data-theme="partner"] .pf.active { background: var(--grad); color: var(--accent-ink); }
html[data-theme="vip"] .pavatar, html[data-theme="partner"] .pavatar { background: var(--grad); color: var(--accent-ink); }
html[data-theme="vip"] .pacts button:hover, html[data-theme="partner"] .pacts button:hover { background: var(--grad); color: var(--accent-ink); }

/* ---------- Образцы в настройках ---------- */
.theme-swatch.vip .sw { background: linear-gradient(135deg, #0c0a07 0%, #3a2c10 45%, #e2b856 100%); box-shadow: inset 0 0 0 1px rgba(226, 184, 86, .5); }
.theme-swatch.partner .sw { background: linear-gradient(120deg, #1a0a33 0%, #ff4fd8 40%, #9b6bff 70%, #25f4ee 100%); box-shadow: inset 0 0 0 1px rgba(178, 119, 255, .55); }
.theme-swatch.vip.locked .sw, .theme-swatch.partner.locked .sw { filter: saturate(.9); }
.theme-swatch.vip.active, .theme-swatch.partner.active { box-shadow: 0 0 0 1.5px var(--accent), var(--glow); }

/* ---------- Движение — только тем, кто его не отключал ---------- */
@media (prefers-reduced-motion: reduce) {
  html[data-theme="vip"] .create-button::after, html[data-theme="partner"] .create-button::after { animation: none; display: none; }
}

/* У VIP и «Партнёра» свой цветной свет на body — серый «бумажный» отблеск из style.css не нужен. */
html[data-theme="vip"] body:before, html[data-theme="partner"] body:before { background: none; }

@media (max-width: 760px) {
  html[data-theme="vip"] .tabbar, html[data-theme="partner"] .tabbar { background: var(--bg); }
  @supports (color: color-mix(in srgb, red, blue)) { html[data-theme="vip"] .tabbar, html[data-theme="partner"] .tabbar { background: color-mix(in srgb, var(--bg) 92%, transparent); } }
}
