/* ============================================================================
   ATHERYX — внутренние страницы в стиле главной (2026-10-17)
   Общие куски: фоновое свечение-шейдер сверху страницы (.cx-ambient),
   шапка страницы слева (.cx-phead). Раскладки: вход/регистрация/привязка —
   карточка по центру на шейдере; кабинет — профиль и вкладки сверху вместо
   сайдбара; магазин — шапка слева + панель фильтров; лот — заголовок над
   медиа, правая колонка липкая; доки — текст без карточек, оглавление-список.
   Подключается после ax-codex.css.
   ========================================================================== */

/* Секции не изолируют фон, иначе шлейф (z -2) уходил бы под свечение (z -3). */
.has-bg { isolation: auto; }

/* ── Фоновое свечение вверху страницы ──────────────────────────────────── */
.cx-ambient {
  position: absolute;
  z-index: -3;
  top: 0;
  left: 0;
  right: 0;
  height: clamp(420px, 62vh, 640px);
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 45%, transparent 100%);
  mask-image: linear-gradient(to bottom, #000 0%, #000 45%, transparent 100%);
}
.cx-ambient .cx-paint { position: absolute; inset: 0; }
.cx-ambient--short { height: clamp(300px, 44vh, 440px); }


/* ── Шапка страницы ───────────────────────────────────────────────────── */
.cx-phead {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: end;
  gap: 24px 40px;
  padding: clamp(24px, 5vw, 64px) 0 clamp(36px, 5vw, 56px);
}
.cx-phead-copy { display: grid; gap: 14px; justify-items: start; max-width: 720px; }
.cx-phead .ax-eyebrow { color: rgba(255, 255, 255, 0.78); }
.cx-phead .ax-eyebrow i { color: inherit; }
.cx-phead h1 {
  color: #fff;
  font-size: clamp(38px, 5.4vw, 68px);
  font-weight: 500;
  line-height: 1.02;
  letter-spacing: -0.05em;
}
.cx-phead h1 .acc-line,
:root[data-theme="light"] .cx-phead h1 .acc-line { display: inline; color: rgba(255, 255, 255, 0.62); }
.cx-phead p { color: rgba(255, 255, 255, 0.82); font-size: clamp(15px, 1.3vw, 18px); line-height: 1.6; max-width: 640px; }
.cx-phead p b { color: #fff; }
.cx-phead-actions { display: flex; flex-wrap: wrap; gap: 10px; }
:root[data-theme="light"] .cx-phead h1, :root[data-theme="light"] .cx-phead p b { color: #0b0b0d; }
:root[data-theme="light"] .cx-phead h1 .acc-line { color: rgba(11, 11, 13, 0.5); }
:root[data-theme="light"] .cx-phead p, :root[data-theme="light"] .cx-phead .ax-eyebrow { color: rgba(11, 11, 13, 0.7); }

.ax-page { padding-top: var(--header-h); }

/* ════════════════════════════════════════════════════════════════════════
   Вход / регистрация / привязка лаунчера (2026-10-17, v2)
   Слева — чистая чёрная колонка с формой без карточки; справа — большая
   скруглённая панель со спокойным шейдером, слоганом и тремя фактами.
   На узком экране панель уходит, остаётся форма.
   ════════════════════════════════════════════════════════════════════════ */
.ax-auth .auth-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr);
  min-height: 100vh;
  min-height: 100dvh;
  padding: 12px;
  gap: 12px;
}
/* Колонка формы */
.ax-auth .auth-panel {
  order: 1;
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 10px clamp(12px, 3vw, 36px) 20px;
  border: 0;
  background: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}
.ax-auth .auth-top { position: static; display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; }
.ax-auth .auth-top-actions { display: flex; align-items: center; gap: 8px; }
.ax-auth .auth-brand { font-size: 16px; }
.ax-auth .auth-top .ax-btn { background: none; border-color: var(--line-2); color: var(--fg); }
.ax-auth .auth-top .ax-icon-btn { color: var(--fg-2); border-color: var(--line); }
.ax-auth .auth-card {
  width: min(100%, 400px);
  margin: auto;
  padding: 40px 0;
  border: 0;
  border-radius: 0;
  background: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: none;
}
.ax-auth .auth-mobile-brand { display: none !important; }
.ax-auth .auth-title { font-size: clamp(34px, 3.6vw, 46px); font-weight: 500; letter-spacing: -0.055em; line-height: 1.02; color: var(--fg); }
.ax-auth .auth-title .ax-accent { color: var(--fg-3); }
.ax-auth .auth-subtitle { margin-top: 14px; color: var(--fg-2); font-size: 15.5px; }
.ax-auth .auth-form { gap: 10px; margin-top: 30px; }
.ax-auth .auth-form .ax-input,
.ax-auth .auth-card .ax-input { height: 52px; border-radius: 999px; background: var(--surface-2); border-color: transparent; font-size: 15px; }
.ax-auth .auth-card .ax-input:hover { border-color: var(--line); }
.ax-auth .auth-card .ax-input:focus { border-color: var(--line-2); background: var(--surface-3); box-shadow: none; }
.ax-auth .ax-input-wrap > i { left: 20px; color: var(--fg-3); }
.ax-auth .ax-input-wrap .ax-input { padding-left: 50px; }
.ax-auth .auth-card .ax-btn--primary { height: 52px; margin-top: 8px; font-size: 15px; }
.ax-auth .auth-footer-link { margin-top: 14px; font-size: 14.5px; }
.ax-auth .auth-footer-link a { color: var(--fg); font-weight: 500; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--line-2); }
.ax-auth .auth-footer-link a:hover { text-decoration-color: var(--fg); }
.ax-auth .auth-terms-note { margin-top: 18px; }

/* Панель с шейдером */
.ax-auth .auth-visual {
  order: 2;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 32px;
  min-height: calc(100dvh - 24px);
  padding: clamp(28px, 4vw, 52px);
  overflow: hidden;
  isolation: isolate;
  border-radius: 28px;
  background: #10183a;
  color: #fff;
}
.ax-auth .auth-visual::before { display: none !important; }
.ax-auth .auth-visual > .cx-paint { position: absolute; inset: 0; z-index: -1; }
.ax-auth .auth-visual-copy { margin-top: auto; display: grid; gap: 14px; max-width: 520px; }
.ax-auth .auth-visual-copy h2 { color: #fff; font-size: clamp(36px, 4.4vw, 60px); font-weight: 500; letter-spacing: -0.055em; line-height: 1.02; }
.ax-auth .auth-visual-copy p { color: rgba(255, 255, 255, 0.82); font-size: 16px; line-height: 1.55; max-width: 440px; }
.ax-auth .auth-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.ax-auth .auth-facts > div {
  display: grid;
  gap: 6px;
  padding: 16px 18px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.14);
  -webkit-backdrop-filter: blur(18px) saturate(140%);
  backdrop-filter: blur(18px) saturate(140%);
}
.ax-auth .auth-facts b { font-size: 26px; font-weight: 500; letter-spacing: -0.05em; line-height: 1; }
.ax-auth .auth-facts span { color: rgba(255, 255, 255, 0.75); font-size: 12.5px; line-height: 1.4; }
:root[data-theme="light"] .ax-auth .auth-visual { background: #c9c6ff; color: #0b0b0d; }
:root[data-theme="light"] .ax-auth .auth-visual-copy h2 { color: #0b0b0d; }
:root[data-theme="light"] .ax-auth .auth-visual-copy p,
:root[data-theme="light"] .ax-auth .auth-facts span { color: rgba(11, 11, 13, 0.7); }
:root[data-theme="light"] .ax-auth .auth-facts > div { background: rgba(255, 255, 255, 0.5); border-color: rgba(0, 0, 0, 0.06); }

@media (max-width: 960px) {
  .ax-auth .auth-layout { grid-template-columns: 1fr; padding: 0; }
  .ax-auth .auth-visual { display: none; }
  .ax-auth .auth-panel { padding: 12px 16px 20px; min-height: 100dvh; }
}

/* ════════════════════════════════════════════════════════════════════════
   Магазин
   ════════════════════════════════════════════════════════════════════════ */
.cx-shop .shop-toolbar {
  position: sticky;
  top: calc(var(--header-h) + 10px);
  z-index: 20;
  gap: 8px;
  margin-bottom: 32px;
  padding: 8px;
  border-radius: 999px;
  background: var(--glass-strong);
  border: 1px solid var(--line);
  -webkit-backdrop-filter: var(--glass-blur);
  backdrop-filter: var(--glass-blur);
}
.cx-shop .shop-search input { height: 42px; border-radius: 999px; border-color: transparent; background: transparent; }
.cx-shop .shop-search input:focus { background: var(--field); box-shadow: none; }
.cx-shop .shop-tabs { padding: 3px; }
.cx-shop .shop-tabs button { height: 36px; }
.cx-shop .shop-toolbar > .ax-btn { height: 42px; }
.cx-shop .shop-grid { gap: 28px 20px; }
/* Карточка без рамки: обложка-скругление + подпись под ней, как превью в референсе. */
.cx-shop .shop-card {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  overflow: visible;
}
.cx-shop .shop-card:hover { transform: none; box-shadow: none; }
.cx-shop .card-banner { border-radius: 20px; background: var(--surface-2); transition: transform 0.5s var(--ease); }
.cx-shop .shop-card:hover .card-banner { transform: translateY(-4px); }
.cx-shop .card-body { padding: 14px 4px 0; }
.cx-shop .shop-card h3 { font-weight: 500; font-size: 17px; letter-spacing: -0.02em; }
.cx-shop .card-foot { border-top: 0 !important; padding-top: 10px !important; margin-top: auto; }
.cx-shop .shop-publish { margin-bottom: 32px; border-radius: 24px; }
@media (max-width: 720px) {
  .cx-shop .shop-toolbar { position: static; border-radius: 22px; }
  .cx-phead { grid-template-columns: 1fr; }
}

/* ════════════════════════════════════════════════════════════════════════
   Лот
   ════════════════════════════════════════════════════════════════════════ */
.cx-lot .lot-crumb { padding-top: clamp(20px, 3vw, 36px); margin-bottom: 18px; }
.cx-lot .lot-crumb, .cx-lot .lot-crumb a { color: rgba(255, 255, 255, 0.72); }
.cx-lot .lot-crumb .cur { color: #fff; }
.cx-lot .lot-grid { grid-template-columns: minmax(0, 1fr) 360px; gap: clamp(28px, 4vw, 56px); }
/* Заголовок и метаданные — над медиа, описание — под ним. */
.cx-lot .lot-left { display: flex; flex-direction: column; }
.cx-lot .lot-title { order: -2; margin: 0 0 14px; color: #fff; font-size: clamp(34px, 4.6vw, 56px); font-weight: 500; letter-spacing: -0.05em; line-height: 1.04; }
.cx-lot .lot-tagbar { order: -1; margin: 0 0 24px; padding: 0; border: 0; }
.cx-lot .lot-viewer { border-radius: 24px; border: 0; background: var(--surface-2); }
.cx-lot .lot-desc { margin-top: 28px; color: var(--fg-2); font-size: 16.5px; line-height: 1.7; }
.cx-lot .lot-side { position: sticky; top: calc(var(--header-h) + 20px); gap: 12px; }
.cx-lot .lot-side .ax-card { border-radius: 22px; }
:root[data-theme="light"] .cx-lot .lot-title { color: #0b0b0d; }
:root[data-theme="light"] .cx-lot .lot-crumb, :root[data-theme="light"] .cx-lot .lot-crumb a { color: rgba(11, 11, 13, 0.6); }
:root[data-theme="light"] .cx-lot .lot-crumb .cur { color: #0b0b0d; }
@media (max-width: 960px) {
  .cx-lot .lot-grid { grid-template-columns: 1fr; }
  .cx-lot .lot-side { position: static; }
}

/* ════════════════════════════════════════════════════════════════════════
   Кабинет: профиль сверху, вкладки-пилюли, разделы во всю ширину
   ════════════════════════════════════════════════════════════════════════ */
.cx-cab .cab-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  padding: clamp(24px, 5vw, 56px) 0 clamp(24px, 3vw, 36px);
}
.cx-cab .cab-top .side-user { padding: 0; margin: 0; border: 0; gap: 18px; }
.cx-cab .cab-top .side-ava { width: 68px; height: 78px; border-radius: 18px; border-color: rgba(255, 255, 255, 0.25); }
.cx-cab .cab-top .side-ava.photo { height: 68px; }
.cx-cab .cab-top .side-user-meta strong { color: #fff; font-size: clamp(26px, 3.4vw, 40px); font-weight: 500; letter-spacing: -0.045em; }
.cx-cab .cab-top .side-user-meta > span { color: rgba(255, 255, 255, 0.75); font-size: 14.5px; }
.cx-cab .cab-top .side-foot { flex-direction: row; gap: 8px; margin: 0; padding: 0; border: 0; }
.cx-cab .cab-top .side-foot .side-link {
  width: auto;
  height: 38px;
  padding: 0 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: #fff;
  font-weight: 500;
}
.cx-cab .cab-top .side-foot .side-link i { color: inherit; }
:root[data-theme="light"] .cx-cab .cab-top .side-user-meta strong,
:root[data-theme="light"] .cx-cab .cab-top .side-foot .side-link { color: #0b0b0d; }
:root[data-theme="light"] .cx-cab .cab-top .side-user-meta > span { color: rgba(11, 11, 13, 0.65); }
:root[data-theme="light"] .cx-cab .cab-top .side-foot .side-link { background: rgba(255, 255, 255, 0.6); border-color: rgba(0, 0, 0, 0.08); }

.cx-cab .side-nav {
  position: sticky;
  top: calc(var(--header-h) + 10px);
  z-index: 20;
  flex-direction: row;
  gap: 2px;
  width: max-content;
  max-width: 100%;
  margin-bottom: clamp(28px, 4vw, 44px);
  padding: 5px;
  overflow-x: auto;
  scrollbar-width: none;
  border-radius: 999px;
  background: var(--glass-strong);
  border: 1px solid var(--line);
  -webkit-backdrop-filter: var(--glass-blur);
  backdrop-filter: var(--glass-blur);
}
.cx-cab .side-nav::-webkit-scrollbar { display: none; }
.cx-cab .side-nav .side-pill { top: 5px; left: 0; right: auto; height: 38px; width: 0; border: 0; border-radius: 999px; background: var(--fg); transition: transform 0.5s var(--ease), width 0.5s var(--ease), opacity 0.25s ease; }
.cx-cab .side-nav .side-link { width: auto; height: 38px; padding: 0 16px; gap: 8px; border-radius: 999px; font-weight: 500; transition: color 0.3s ease; }
.cx-cab .side-nav .side-link i { font-size: 16px; }
.cx-cab .side-nav .side-link.active, .cx-cab .side-nav .side-link.active i { color: var(--bg); }
.cx-cab .side-nav .side-link:hover i { transform: none; }

.cx-cab .view-head { margin-bottom: 24px; }
.cx-cab .view-head h2 { font-size: clamp(28px, 3.2vw, 40px); font-weight: 500; letter-spacing: -0.045em; }
.cx-cab .stack { gap: 14px; }
.cx-cab .cols-2, .cx-cab .cols-3 { gap: 14px; }
.cx-cab .ax-card { border-radius: 22px; border-color: transparent; background: var(--surface-2); padding: 24px; }
.cx-cab .card-head h3 { font-weight: 500; }
.cx-cab .card-head h3 i, .cx-cab .metric-lbl i { color: var(--fg-3); }
.cx-cab .metric-lbl { text-transform: none; letter-spacing: 0; font-weight: 400; font-size: 13.5px; }
.cx-cab .metric-val { font-weight: 500; font-size: 30px; letter-spacing: -0.04em; }
/* Карточка лаунчера — на шейдере, как панели главной. */
.cx-cab .hero-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  min-height: 200px;
  padding: clamp(26px, 4vw, 40px);
  background: #10183a;
  color: #fff;
}
.cx-cab .hero-card > .cx-paint { z-index: -1; }
.cx-cab .hero-card h3 { color: #fff; font-size: clamp(24px, 2.6vw, 32px); font-weight: 500; letter-spacing: -0.04em; }
.cx-cab .hero-card p { color: rgba(255, 255, 255, 0.8); font-size: 15px; }
.cx-cab .hero-card .acc-pill { background: rgba(255, 255, 255, 0.12); border-color: rgba(255, 255, 255, 0.18); color: #fff; }
.cx-cab .hero-card .ax-btn--primary { background: #fff; color: #000; }
:root[data-theme="light"] .cx-cab .hero-card { color: #0b0b0d; background: #c9c6ff; }
:root[data-theme="light"] .cx-cab .hero-card h3 { color: #0b0b0d; }
:root[data-theme="light"] .cx-cab .hero-card p { color: rgba(11, 11, 13, 0.72); }
:root[data-theme="light"] .cx-cab .hero-card .acc-pill { color: #0b0b0d; background: rgba(255, 255, 255, 0.55); border-color: rgba(0, 0, 0, 0.06); }
:root[data-theme="light"] .cx-cab .hero-card .ax-btn--primary { background: #0b0b0d; color: #fff; }
@media (max-width: 720px) {
  .cx-cab .cab-top .side-foot { width: 100%; }
  .cx-cab .side-nav { width: 100%; }
}

/* ════════════════════════════════════════════════════════════════════════
   Документация: текст без карточек, оглавление — простой список
   ════════════════════════════════════════════════════════════════════════ */
.cx-docs .docs-layout { grid-template-columns: 220px minmax(0, 1fr); gap: clamp(28px, 5vw, 72px); }
.cx-docs .docs-toc {
  background: none;
  border: 0;
  padding: 0;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  box-shadow: none;
}
.cx-docs .docs-toc a { border-radius: 10px; font-weight: 400; color: var(--fg-3); }
.cx-docs .docs-toc a.active { background: var(--surface-2); color: var(--fg); }
.cx-docs .docs-toc a.active i { color: var(--fg); }
.cx-docs .docs-search input { border-radius: 999px; }
.cx-docs .docs-body { gap: 0; }
.cx-docs .docs-section.ax-card {
  padding: clamp(32px, 4vw, 48px) 0;
  background: none;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
}
.cx-docs .docs-section.ax-card:first-child { border-top: 0; padding-top: 0; }
.cx-docs .docs-section h2 { font-weight: 500; letter-spacing: -0.04em; }
.cx-docs .docs-code, .cx-docs .docs-section pre { border-radius: 16px; }
@media (max-width: 960px) {
  .cx-docs .docs-layout { grid-template-columns: minmax(0, 1fr); }
}

/* ════════════════════════════════════════════════════════════════════════
   Админка: прежняя раскладка (много разделов), но в общем стиле
   ════════════════════════════════════════════════════════════════════════ */
.cx-admin .side { border-radius: 24px; background: var(--surface); border-color: var(--line); }
.cx-admin .ax-card { border-radius: 20px; border-color: transparent; background: var(--surface-2); }
.cx-admin .side-pill { border: 0; background: var(--surface-3); }
.cx-admin .side-link { font-weight: 500; }
.cx-admin .side-link.active i { color: var(--fg); }
.cx-admin .view-head h2 { font-weight: 500; letter-spacing: -0.04em; }
