/* NEO STANDARD — Terminal Shell CSS */
/* Theme Engine: CSS custom properties + data-theme attribute */

:root,
[data-theme="light"] {
  --bg-primary: #FFFFFF;
  --bg-secondary: #F8FAFC;
  --bg-tertiary: #F1F5F9;
  --bg-sidebar: #0F172A;
  --bg-sidebar-hover: #1E293B;
  --bg-sidebar-active: rgba(255,255,255,0.08);
  --bg-topbar: #FFFFFF;
  --bg-widget: #FFFFFF;
  --bg-modal: #FFFFFF;
  --bg-overlay: rgba(15,23,42,0.6);
  --bg-input: #FFFFFF;
  --bg-badge: #EF4444;

  --border: #E2E8F0;
  --border-focus: var(--accent);
  --border-widget: #E2E8F0;

  --text-primary: #0F172A;
  --text-secondary: #475569;
  --text-tertiary: #94A3B8;
  --text-inverse: #FFFFFF;
  --text-sidebar: #E8EDF4;
  --text-sidebar-active: #FFFFFF;

  --shadow-sm: 0 1px 2px rgba(0,0,0,0.05);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.08);
  --shadow-lg: 0 8px 24px rgba(0,0,0,0.12);
  --shadow-widget: 0 1px 3px rgba(0,0,0,0.06);

  --accent: #1D4ED8;
  --accent-light: #DBEAFE;
  --accent-hover: #1E40AF;
  --accent-text: #1D4ED8;

  --success: #10B981;
  --success-light: #D1FAE5;
  --warning: #F59E0B;
  --warning-light: #FEF3C7;
  --danger: #EF4444;
  --danger-light: #FEE2E2;
  --info: #3B82F6;
  --info-light: #DBEAFE;

  --sidebar-width: 256px;
  --sidebar-collapsed: 72px;
  --topbar-height: 64px;
  --radius: 8px;
  --radius-lg: 12px;
  --radius-full: 9999px;
  --transition: 200ms cubic-bezier(0.4, 0, 0.2, 1);
}

[data-theme="dark"] {
  --bg-primary: #0F172A;
  --bg-secondary: #1E293B;
  --bg-tertiary: #334155;
  --bg-sidebar: #020617;
  --bg-sidebar-hover: #0F172A;
  --bg-topbar: #1E293B;
  --bg-widget: #1E293B;
  --bg-modal: #1E293B;
  --bg-overlay: rgba(0,0,0,0.7);
  --bg-input: #0F172A;
  --bg-badge: #EF4444;

  --border: #334155;
  --border-widget: #334155;

  --text-primary: #F1F5F9;
  --text-secondary: #94A3B8;
  --text-tertiary: #64748B;
  --text-inverse: #0F172A;
  --text-sidebar: #CBD5E1;
  --text-sidebar-active: #FFFFFF;

  --shadow-sm: 0 1px 2px rgba(0,0,0,0.3);
  --shadow-md: 0 4px 12px rgba(0,0,0,0.4);
  --shadow-lg: 0 8px 24px rgba(0,0,0,0.5);
  --shadow-widget: 0 1px 3px rgba(0,0,0,0.3);
}

/* Accent color overrides */
[data-accent="blue"]   { --accent: #1D4ED8; --accent-light: #DBEAFE; --accent-hover: #1E40AF; --accent-text: #1D4ED8; }
[data-accent="violet"] { --accent: #7C3AED; --accent-light: #EDE9FE; --accent-hover: #6D28D9; --accent-text: #7C3AED; }
[data-accent="emerald"]{ --accent: #059669; --accent-light: #D1FAE5; --accent-hover: #047857; --accent-text: #059669; }
[data-accent="rose"]   { --accent: #E11D48; --accent-light: #FFE4E6; --accent-hover: #BE123C; --accent-text: #E11D48; }
[data-accent="amber"]  { --accent: #D97706; --accent-light: #FEF3C7; --accent-hover: #B45309; --accent-text: #D97706; }
[data-accent="cyan"]   { --accent: #0891B2; --accent-light: #CFFAFE; --accent-hover: #0E7490; --accent-text: #0891B2; }

/* Font size overrides */
[data-font="sm"]  { font-size: 14px; }
[data-font="md"]  { font-size: 16px; }
[data-font="lg"]  { font-size: 17px; }
[data-font="xl"]  { font-size: 20px; }

/* Density overrides */
[data-density="spacious"] { --cell-py: 12px; --cell-px: 16px; --gap: 24px; }
[data-density="compact"]  { --cell-py: 6px;  --cell-px: 10px; --gap: 12px; }

/* ===== BASE ===== */
* { box-sizing: border-box; margin: 0; padding: 0; }

html { scroll-behavior: smooth; }

body {
  font-family: 'Inter', -apple-system, 'Segoe UI', Roboto, sans-serif;
  color: var(--text-primary);
  background: var(--bg-secondary);
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  overflow: hidden;
  height: 100vh;
}
body.neo-home-mode {
  overflow-y: auto;
  height: auto;
  background: #040810;
}

/* ===== LAYOUT ===== */
.neo-shell {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: var(--topbar-height) 1fr;
  grid-template-areas:
    "sidebar topbar"
    "sidebar workspace";
  height: 100vh;
  overflow: hidden;
}

/* ===== TOPBAR ===== */
.neo-topbar {
  grid-area: topbar;
  height: var(--topbar-height);
  background: var(--bg-topbar);
  border-bottom: 1px solid var(--border);
  display: flex;
  align-items: center;
  padding: 0 24px;
  gap: 16px;
  z-index: 30;
}

.neo-topbar__search {
  flex: 1;
  max-width: 480px;
  margin: 0 auto;
}

.neo-topbar__search-trigger {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: var(--bg-tertiary);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  color: var(--text-tertiary);
  cursor: pointer;
  width: 100%;
  font-size: 0.875rem;
  transition: border-color var(--transition);
}
.neo-topbar__search-trigger:hover { border-color: var(--accent); }
.neo-topbar__search-trigger kbd {
  margin-left: auto;
  padding: 2px 6px;
  font-size: 0.75rem;
  background: var(--bg-primary);
  border: 1px solid var(--border);
  border-radius: 4px;
  font-family: inherit;
}

.neo-topbar__actions {
  display: flex;
  align-items: center;
  gap: 4px;
}

.neo-topbar__btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: var(--radius);
  border: none;
  background: transparent;
  color: var(--text-secondary);
  cursor: pointer;
  transition: all var(--transition);
}
.neo-topbar__btn:hover { background: var(--bg-tertiary); color: var(--text-primary); }
.neo-topbar__btn svg { width: 20px; height: 20px; }

.neo-badge {
  position: absolute;
  top: 4px; right: 4px;
  min-width: 18px; height: 18px;
  background: var(--bg-badge);
  color: white;
  font-size: 0.625rem;
  font-weight: 700;
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
}

.neo-avatar {
  width: 36px; height: 36px;
  border-radius: var(--radius-full);
  background: var(--accent);
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 600;
  font-size: 0.875rem;
  cursor: pointer;
  transition: box-shadow var(--transition);
}
.neo-avatar:hover { box-shadow: 0 0 0 3px var(--accent-light); }

/* ===== SIDEBAR ===== */
.neo-sidebar {
  grid-area: sidebar;
  width: var(--sidebar-width);
  background: var(--bg-sidebar);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: width var(--transition);
  z-index: 40;
}
.neo-sidebar.collapsed { width: var(--sidebar-collapsed); }

.neo-sidebar__logo {
  height: var(--topbar-height);
  display: flex;
  align-items: center;
  padding: 0 20px;
  gap: 12px;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  flex-shrink: 0;
}
.neo-sidebar__logo-icon {
  width: 32px; height: 32px;
  background: var(--accent);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  color: white;
  font-size: 0.875rem;
  flex-shrink: 0;
}
.neo-sidebar__logo-text {
  color: white;
  font-weight: 700;
  font-size: 1rem;
  white-space: nowrap;
  overflow: hidden;
}
.collapsed .neo-sidebar__logo-text { display: none; }

.neo-sidebar__terminals {
  padding: 8px 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  flex-shrink: 0;
}
.collapsed .neo-sidebar__terminals { flex-direction: column; padding: 8px; flex-wrap: nowrap; }

.neo-sidebar__terminal-btn {
  padding: 5px 8px;
  border-radius: 6px;
  border: none;
  font-size: 0.625rem;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition);
  background: transparent;
  color: var(--text-sidebar);
  white-space: nowrap;
}
.neo-sidebar__terminal-btn:hover { background: var(--bg-sidebar-hover); }
.neo-sidebar__terminal-btn.active { background: var(--accent); color: white; }
.collapsed .neo-sidebar__terminal-btn span { display: none; }

.neo-sidebar__nav {
  flex: 1;
  overflow-y: auto;
  padding: 8px 12px;
}
.collapsed .neo-sidebar__nav { padding: 8px; }

.neo-sidebar__nav::-webkit-scrollbar { width: 4px; }
.neo-sidebar__nav::-webkit-scrollbar-track { background: transparent; }
.neo-sidebar__nav::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 2px; }

.neo-sidebar__section-label {
  font-size: 0.6875rem;
  font-weight: 600;
  color: rgba(255,255,255,0.3);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 16px 8px 6px;
}
.collapsed .neo-sidebar__section-label { display: none; }

/* .neo-sidebar__link / :hover / .active / .active::before — удалены (дубль).
   Единственный источник правил — блок ENTERPRISE SIDEBAR NAV внизу файла. */
.collapsed .neo-sidebar__link.active::before { left: -8px; }
.neo-sidebar__link svg { width: 20px; height: 20px; flex-shrink: 0; }
.neo-sidebar__link span { white-space: nowrap; overflow: hidden; }
.neo-sidebar__link-ic { width: 22px; flex-shrink: 0; text-align: center; font-size: 1.05rem; line-height: 1; }
.collapsed .neo-sidebar__link-label,
.collapsed .neo-sidebar__link .neo-link-badge { display: none; }
.collapsed .neo-sidebar__link-ic { width: auto; font-size: 1.2rem; }
.collapsed .neo-sidebar__link { justify-content: center; padding: 10px; }

/* старый .neo-sidebar__link .neo-link-badge удалён — был специфичнее (0,2,0)
   и перебивал пилюлю из ENTERPRISE. Теперь источник один — .neo-link-badge внизу. */
.collapsed .neo-link-badge { display: none; }

.neo-sidebar__footer {
  padding: 12px;
  border-top: 1px solid rgba(255,255,255,0.06);
  flex-shrink: 0;
}

.neo-sidebar__collapse-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px;
  border-radius: 6px;
  border: none;
  background: transparent;
  color: var(--text-sidebar);
  cursor: pointer;
  font-size: 0.8125rem;
  transition: all var(--transition);
}
.neo-sidebar__collapse-btn:hover { background: var(--bg-sidebar-hover); }
.neo-sidebar__collapse-btn svg { width: 18px; height: 18px; }
.collapsed .neo-sidebar__collapse-btn span { display: none; }

/* ===== WORKSPACE ===== */
.neo-workspace {
  grid-area: workspace;
  overflow-y: auto;
  padding: var(--gap, 24px);
  background: var(--bg-secondary);
}

.neo-workspace::-webkit-scrollbar { width: 8px; }
.neo-workspace::-webkit-scrollbar-track { background: transparent; }
.neo-workspace::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }

.neo-workspace__header {
  margin-bottom: 24px;
}
.neo-workspace__title {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-primary);
}
.neo-workspace__subtitle {
  font-size: 0.875rem;
  color: var(--text-secondary);
  margin-top: 4px;
}

/* ===== WIDGETS ===== */
.neo-widget-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: var(--gap, 24px);
}

.neo-widget {
  background: var(--bg-widget);
  border: 1px solid var(--border-widget);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-widget);
  overflow: hidden;
  transition: box-shadow var(--transition), border-color var(--transition);
}
.neo-widget:hover { box-shadow: var(--shadow-md); border-color: var(--accent); }

.neo-widget--4 { grid-column: span 4; }
.neo-widget--3 { grid-column: span 3; }
.neo-widget--6 { grid-column: span 6; }
.neo-widget--8 { grid-column: span 8; }
.neo-widget--12 { grid-column: span 12; }

.neo-widget__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px 0;
}
.neo-widget__title {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-secondary);
}
.neo-widget__body { padding: 16px 20px 20px; }

/* KPI card */
.neo-kpi { text-align: left; }
.neo-kpi__value {
  font-size: 2rem;
  font-weight: 800;
  color: var(--text-primary);
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.neo-kpi__change {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-top: 8px;
  font-size: 0.8125rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: var(--radius-full);
}
.neo-kpi__change--up { background: var(--success-light); color: var(--success); }
.neo-kpi__change--down { background: var(--danger-light); color: var(--danger); }

/* Table */
.neo-table { width: 100%; border-collapse: collapse; font-size: 0.875rem; }
.neo-table th {
  text-align: left;
  padding: var(--cell-py, 10px) var(--cell-px, 12px);
  font-weight: 600;
  color: var(--text-secondary);
  border-bottom: 1px solid var(--border);
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.neo-table td {
  padding: var(--cell-py, 10px) var(--cell-px, 12px);
  border-bottom: 1px solid var(--border);
  color: var(--text-primary);
}
.neo-table tr:last-child td { border-bottom: none; }
.neo-table tr:hover td { background: var(--bg-tertiary); }

.neo-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  font-weight: 600;
  padding: 3px 10px;
  border-radius: var(--radius-full);
}
.neo-status--green { background: var(--success-light); color: var(--success); }
.neo-status--amber { background: var(--warning-light); color: var(--warning); }
.neo-status--red { background: var(--danger-light); color: var(--danger); }
.neo-status--blue { background: var(--info-light); color: var(--info); }
.neo-status__dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: currentColor;
}

/* ===== COMMAND PALETTE ===== */
.neo-cmd-overlay {
  position: fixed;
  inset: 0;
  background: var(--bg-overlay);
  z-index: 100;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 15vh;
  backdrop-filter: blur(4px);
}
.neo-cmd {
  width: 100%;
  max-width: 640px;
  background: var(--bg-modal);
  border: 1px solid var(--border);
  border-radius: var(--radius-lg);
  box-shadow: var(--shadow-lg);
  overflow: hidden;
}
.neo-cmd__input-wrap {
  display: flex;
  align-items: center;
  padding: 16px 20px;
  gap: 12px;
  border-bottom: 1px solid var(--border);
}
.neo-cmd__input-wrap svg { width: 20px; height: 20px; color: var(--text-tertiary); flex-shrink: 0; }
.neo-cmd__input {
  flex: 1;
  border: none;
  outline: none;
  font-size: 1rem;
  background: transparent;
  color: var(--text-primary);
  font-family: inherit;
}
.neo-cmd__input::placeholder { color: var(--text-tertiary); }

.neo-cmd__results {
  max-height: 360px;
  overflow-y: auto;
  padding: 8px;
}
.neo-cmd__section-label {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 8px 12px 4px;
}
.neo-cmd__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: 6px;
  cursor: pointer;
  transition: background var(--transition);
  font-size: 0.875rem;
  color: var(--text-primary);
}
.neo-cmd__item:hover, .neo-cmd__item.selected { background: var(--accent-light); color: var(--accent-text); }
.neo-cmd__item svg { width: 18px; height: 18px; color: var(--text-tertiary); flex-shrink: 0; }
.neo-cmd__item:hover svg { color: var(--accent); }
.neo-cmd__item-hint {
  margin-left: auto;
  font-size: 0.75rem;
  color: var(--text-tertiary);
}

.neo-cmd__footer {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 10px 20px;
  border-top: 1px solid var(--border);
  font-size: 0.75rem;
  color: var(--text-tertiary);
}
.neo-cmd__footer kbd {
  padding: 2px 5px;
  background: var(--bg-tertiary);
  border: 1px solid var(--border);
  border-radius: 3px;
  font-family: inherit;
  font-size: 0.6875rem;
}

/* ===== SETTINGS PANEL ===== */
.neo-settings-panel {
  position: fixed;
  top: 0; right: 0;
  width: 360px;
  height: 100vh;
  background: var(--bg-modal);
  border-left: 1px solid var(--border);
  box-shadow: var(--shadow-lg);
  z-index: 90;
  transform: translateX(100%);
  transition: transform var(--transition);
  overflow-y: auto;
  padding: 24px;
}
.neo-settings-panel.open { transform: translateX(0); }

.neo-settings__title {
  font-size: 1.125rem;
  font-weight: 700;
  margin-bottom: 24px;
  color: var(--text-primary);
}
.neo-settings__section {
  margin-bottom: 24px;
}
.neo-settings__label {
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin-bottom: 8px;
}
.neo-settings__colors {
  display: flex;
  gap: 8px;
}
.neo-settings__color-btn {
  width: 32px; height: 32px;
  border-radius: var(--radius-full);
  border: 2px solid transparent;
  cursor: pointer;
  transition: all var(--transition);
}
.neo-settings__color-btn:hover { transform: scale(1.15); }
.neo-settings__color-btn.active { border-color: var(--text-primary); box-shadow: 0 0 0 2px var(--bg-primary); }

.neo-settings__options {
  display: flex;
  gap: 6px;
}
.neo-settings__opt-btn {
  flex: 1;
  padding: 8px 12px;
  border-radius: var(--radius);
  border: 1px solid var(--border);
  background: var(--bg-input);
  color: var(--text-secondary);
  cursor: pointer;
  font-size: 0.8125rem;
  font-weight: 500;
  transition: all var(--transition);
}
.neo-settings__opt-btn:hover { border-color: var(--accent); }
.neo-settings__opt-btn.active { background: var(--accent); color: white; border-color: var(--accent); }

/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .neo-widget--4 { grid-column: span 6; }
  .neo-widget--3 { grid-column: span 6; }
}
@media (max-width: 768px) {
  .neo-shell { grid-template-columns: 1fr; grid-template-areas: "topbar" "workspace"; }
  .neo-sidebar { position: fixed; left: 0; top: 0; height: 100vh; transform: translateX(-100%); z-index: 50; }
  .neo-sidebar.mobile-open { transform: translateX(0); }
  .neo-widget--4, .neo-widget--3, .neo-widget--6, .neo-widget--8 { grid-column: span 12; }
}

/* ===== QUICK ACTIONS BAR ===== */
.neo-quick-bar {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 8px;
  padding: 8px 12px;
  background: var(--bg-sidebar);
  border-radius: var(--radius-full);
  box-shadow: var(--shadow-lg);
  z-index: 50;
}
.neo-quick-bar__btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: var(--radius-full);
  border: none;
  background: transparent;
  color: var(--text-sidebar);
  cursor: pointer;
  font-size: 0.8125rem;
  font-weight: 500;
  white-space: nowrap;
  transition: all var(--transition);
}
.neo-quick-bar__btn:hover { background: var(--bg-sidebar-hover); color: white; }
.neo-quick-bar__btn svg { width: 16px; height: 16px; }

/* ===== ANIMATIONS ===== */
@keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }
@keyframes slideUp { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
.animate-fade { animation: fadeIn 0.2s ease; }
.animate-slide { animation: slideUp 0.25s ease; }

/* ===== PROFILE DROPDOWN ===== */
.neo-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 220px;
  background: var(--bg-modal);
  border: 1px solid var(--border);
  border-radius: var(--radius);
  box-shadow: var(--shadow-lg);
  padding: 6px;
  z-index: 60;
}
.neo-dropdown__item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 6px;
  font-size: 0.875rem;
  color: var(--text-primary);
  cursor: pointer;
  transition: background var(--transition);
}
.neo-dropdown__item:hover { background: var(--bg-tertiary); }
.neo-dropdown__item svg { width: 16px; height: 16px; color: var(--text-tertiary); }
.neo-dropdown__divider { height: 1px; background: var(--border); margin: 4px 0; }

/* ═══════════════════════════════════════════════════════
   NEW COMPONENTS — добавлены для полного терминала
   ═══════════════════════════════════════════════════════ */

/* ===== KANBAN ===== */
.neo-kanban {
  display: flex;
  gap: 16px;
  overflow-x: auto;
  padding-bottom: 8px;
}
.neo-kanban::-webkit-scrollbar { height: 6px; }
.neo-kanban::-webkit-scrollbar-thumb { background: var(--border); border-radius: 3px; }

.neo-kanban__col {
  min-width: 220px;
  flex: 1;
}
.neo-kanban__col-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 12px;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin-bottom: 8px;
}
.neo-kanban__col-count {
  min-width: 22px; height: 22px;
  background: var(--bg-tertiary);
  border-radius: var(--radius-full);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.6875rem;
  font-weight: 700;
  color: var(--text-tertiary);
}
.neo-kanban__card {
  background: var(--bg-widget);
  border: 1px solid var(--border-widget);
  border-radius: var(--radius);
  padding: 12px;
  margin-bottom: 8px;
  cursor: pointer;
  transition: all var(--transition);
}
.neo-kanban__card:hover { border-color: var(--accent); box-shadow: var(--shadow-sm); }
.neo-kanban__card-name {
  font-size: 0.875rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 4px;
}
.neo-kanban__card-sub {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-bottom: 8px;
}
.neo-kanban__card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* ===== DETAIL PANEL (slide-over) ===== */
.neo-detail-panel {
  position: fixed;
  top: 0; right: 0;
  width: 480px;
  max-width: 90vw;
  height: 100vh;
  background: var(--bg-modal);
  border-left: 1px solid var(--border);
  box-shadow: var(--shadow-lg);
  z-index: 80;
  transform: translateX(100%);
  transition: transform var(--transition);
  overflow-y: auto;
  display: flex;
  flex-direction: column;
}
.neo-detail-panel.open { transform: translateX(0); }

.neo-detail-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  border-bottom: 1px solid var(--border);
  flex-shrink: 0;
}
.neo-detail-panel__title {
  font-size: 1.125rem;
  font-weight: 700;
}
.neo-detail-panel__body {
  flex: 1;
  padding: 24px;
  overflow-y: auto;
}

/* ===== TABS ===== */
.neo-tabs {
  display: flex;
  border-bottom: 1px solid var(--border);
  margin-bottom: 20px;
  gap: 0;
}
.neo-tabs__tab {
  padding: 10px 16px;
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-tertiary);
  cursor: pointer;
  border: none;
  background: none;
  border-bottom: 2px solid transparent;
  transition: all var(--transition);
}
.neo-tabs__tab:hover { color: var(--text-primary); }
.neo-tabs__tab.active { color: var(--accent-text); border-bottom-color: var(--accent); }

/* ===== FILTERS BAR ===== */
.neo-filters {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
  flex-wrap: wrap;
}
.neo-filters__search {
  flex: 1;
  min-width: 200px;
  padding: 8px 12px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-input);
  color: var(--text-primary);
  font-size: 0.875rem;
  font-family: inherit;
  outline: none;
  transition: border-color var(--transition);
}
.neo-filters__search:focus { border-color: var(--accent); }
.neo-filters__search::placeholder { color: var(--text-tertiary); }

.neo-filters__select {
  padding: 8px 12px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-input);
  color: var(--text-primary);
  font-size: 0.8125rem;
  font-family: inherit;
  outline: none;
  cursor: pointer;
}

.neo-filters__btn {
  padding: 8px 16px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-input);
  color: var(--text-secondary);
  font-size: 0.8125rem;
  font-weight: 500;
  cursor: pointer;
  transition: all var(--transition);
  font-family: inherit;
}
.neo-filters__btn:hover { border-color: var(--accent); color: var(--accent-text); }

.neo-btn {
  padding: 8px 16px;
  border-radius: var(--radius);
  border: none;
  font-size: 0.8125rem;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition);
  font-family: inherit;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.neo-btn--primary { background: var(--accent); color: white; }
.neo-btn--primary:hover { background: var(--accent-hover); }
.neo-btn--ghost { background: transparent; color: var(--text-secondary); border: 1px solid var(--border); }
.neo-btn--ghost:hover { border-color: var(--accent); color: var(--accent-text); }
.neo-btn--sm { padding: 5px 10px; font-size: 0.75rem; }

/* ===== TAGS ===== */
.neo-tag {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: var(--radius-full);
  font-size: 0.6875rem;
  font-weight: 600;
}
.neo-tag--red { background: var(--danger-light); color: var(--danger); }
.neo-tag--amber { background: var(--warning-light); color: var(--warning); }
.neo-tag--blue { background: var(--info-light); color: var(--info); }
.neo-tag--green { background: var(--success-light); color: var(--success); }

/* ===== AI COMPONENTS ===== */
.neo-ai-card {
  background: var(--bg-widget);
  border: 1px solid var(--border-widget);
  border-radius: var(--radius);
  padding: 16px;
  margin-bottom: 12px;
  transition: all var(--transition);
}
.neo-ai-card:hover { border-color: var(--accent); }
.neo-ai-card__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}
.neo-ai-card__source {
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
}
.neo-ai-card__text {
  font-size: 0.875rem;
  color: var(--text-primary);
  line-height: 1.5;
  margin-bottom: 12px;
}
.neo-ai-card__actions {
  display: flex;
  gap: 8px;
}

.neo-ai-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px; height: 20px;
  font-size: 0.625rem;
  cursor: help;
}

/* ===== GAUGE (KazScore) ===== */
.neo-gauge {
  position: relative;
  width: 200px;
  height: 200px;
  margin: 0 auto;
}
.neo-gauge__circle {
  fill: none;
  stroke-width: 12;
  stroke-linecap: round;
}
.neo-gauge__bg { stroke: var(--bg-tertiary); }
.neo-gauge__fill { transition: stroke-dashoffset 1s ease; }
.neo-gauge__value {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
.neo-gauge__number {
  font-size: 2.5rem;
  font-weight: 800;
  line-height: 1;
}
.neo-gauge__label {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-top: 4px;
}

/* ===== TIMELINE ===== */
.neo-timeline { position: relative; padding-left: 24px; }
.neo-timeline::before {
  content: '';
  position: absolute;
  left: 7px; top: 0; bottom: 0;
  width: 2px;
  background: var(--border);
}
.neo-timeline__item {
  position: relative;
  padding-bottom: 24px;
}
.neo-timeline__item:last-child { padding-bottom: 0; }
.neo-timeline__dot {
  position: absolute;
  left: -20px; top: 2px;
  width: 14px; height: 14px;
  border-radius: 50%;
  border: 2px solid var(--border);
  background: var(--bg-primary);
}
.neo-timeline__dot--done { background: var(--success); border-color: var(--success); }
.neo-timeline__dot--active { background: var(--accent); border-color: var(--accent); box-shadow: 0 0 0 4px var(--accent-light); }
.neo-timeline__title {
  font-size: 0.875rem;
  font-weight: 500;
  color: var(--text-primary);
}
.neo-timeline__date {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-top: 2px;
}

/* ===== CALENDAR ===== */
.neo-calendar {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 2px;
}
.neo-calendar__header {
  padding: 8px 4px;
  text-align: center;
  font-size: 0.6875rem;
  font-weight: 600;
  color: var(--text-tertiary);
  text-transform: uppercase;
}
.neo-calendar__day {
  padding: 8px 4px;
  min-height: 64px;
  border: 1px solid var(--border);
  border-radius: 4px;
  font-size: 0.75rem;
  cursor: pointer;
  transition: border-color var(--transition);
}
.neo-calendar__day:hover { border-color: var(--accent); }
.neo-calendar__day-num {
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 4px;
}
.neo-calendar__day--today .neo-calendar__day-num {
  background: var(--accent);
  color: white;
  width: 22px; height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.neo-calendar__event {
  font-size: 0.625rem;
  padding: 1px 4px;
  border-radius: 2px;
  margin-bottom: 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.neo-calendar__event--deadline { background: var(--danger-light); color: var(--danger); }
.neo-calendar__event--court { background: var(--warning-light); color: var(--warning); }
.neo-calendar__event--auto { background: var(--info-light); color: var(--info); }
.neo-calendar__event--auction { background: var(--accent-light); color: var(--accent-text); }

/* ===== FORM ===== */
.neo-form { max-width: 600px; }
.neo-form__group { margin-bottom: 20px; }
.neo-form__label {
  display: block;
  font-size: 0.8125rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin-bottom: 6px;
}
.neo-form__input {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-input);
  color: var(--text-primary);
  font-size: 0.875rem;
  font-family: inherit;
  outline: none;
  transition: border-color var(--transition);
}
.neo-form__input:focus { border-color: var(--accent); }
.neo-form__select {
  width: 100%;
  padding: 10px 14px;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  background: var(--bg-input);
  color: var(--text-primary);
  font-size: 0.875rem;
  font-family: inherit;
  outline: none;
  cursor: pointer;
}

/* ===== PROGRESS BAR ===== */
.neo-progress {
  height: 6px;
  background: var(--bg-tertiary);
  border-radius: 3px;
  overflow: hidden;
}
.neo-progress__fill {
  height: 100%;
  border-radius: 3px;
  transition: width 0.5s ease;
}

/* ===== TOAST ===== */
.neo-toast-container {
  position: fixed;
  bottom: 80px;
  right: 24px;
  z-index: 200;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.neo-toast {
  padding: 12px 20px;
  border-radius: var(--radius);
  font-size: 0.875rem;
  font-weight: 500;
  box-shadow: var(--shadow-lg);
  animation: slideUp 0.25s ease;
  display: flex;
  align-items: center;
  gap: 8px;
}
.neo-toast--success { background: var(--success); color: white; }
.neo-toast--info { background: var(--info); color: white; }
.neo-toast--warning { background: var(--warning); color: white; }
.neo-toast--error { background: var(--danger); color: white; }

/* ===== EMPTY STATE ===== */
.neo-empty {
  padding: 60px 24px;
  text-align: center;
  color: var(--text-tertiary);
}
.neo-empty__icon {
  width: 48px; height: 48px;
  margin: 0 auto 16px;
  opacity: 0.3;
}
.neo-empty__title {
  font-size: 1rem;
  font-weight: 600;
  margin-bottom: 4px;
  color: var(--text-secondary);
}
.neo-empty__sub {
  font-size: 0.85rem;
}

/* ===== LAKE STATS ===== */
.neo-lake-stat {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
  font-size: 0.8125rem;
}
.neo-lake-stat:last-child { border-bottom: none; }
.neo-lake-stat__name { color: var(--text-secondary); font-weight: 500; }
.neo-lake-stat__value { font-weight: 700; color: var(--text-primary); }

/* ===== SCENARIO CARD ===== */
.neo-scenario {
  padding: 12px 0;
  border-bottom: 1px solid var(--border);
}
.neo-scenario:last-child { border-bottom: none; }
.neo-scenario__action {
  font-size: 0.8125rem;
  font-weight: 500;
  color: var(--text-primary);
  margin-bottom: 8px;
}
.neo-scenario__result {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* ═══════════════════════════════════════════════════════
   TERMINAL THEMES — уникальный акцент на каждый терминал
   ═══════════════════════════════════════════════════════ */
[data-terminal="NSPT"]    { --t-accent: #1D4ED8; --t-bg: #DBEAFE; }
[data-terminal="LAW"]     { --t-accent: #7C3AED; --t-bg: #EDE9FE; }
[data-terminal="BOOKS"]   { --t-accent: #059669; --t-bg: #D1FAE5; }
[data-terminal="BANKROT"] { --t-accent: #DC2626; --t-bg: #FEE2E2; }
[data-terminal="APK"]     { --t-accent: #CA8A04; --t-bg: #FEF9C3; }
[data-terminal="MARKET"]  { --t-accent: #0891B2; --t-bg: #CFFAFE; }
[data-terminal="BANK"]    { --t-accent: #0F766E; --t-bg: #CCFBF1; }
[data-terminal="DEV"]     { --t-accent: #EA580C; --t-bg: #FFEDD5; }
[data-terminal="BROKER"]  { --t-accent: #4F46E5; --t-bg: #E0E7FF; }
[data-terminal="CREATIVE"] { --t-accent: #DB2777; --t-bg: #FCE7F3; }

/* Terminal indicator stripe on sidebar active button */
.neo-sidebar__terminal-btn.active {
  position: relative;
  overflow: hidden;
}
.neo-sidebar__terminal-btn.active::after {
  content: '';
  position: absolute;
  bottom: 0; left: 20%; right: 20%;
  height: 2px;
  background: white;
  border-radius: 2px;
  opacity: 0.6;
}

/* ===== GRADE CARDS ===== */
.neo-grade {
  display: flex;
  align-items: stretch;
  gap: 16px;
  padding: 16px 0;
  border-bottom: 1px solid var(--border);
}
.neo-grade:last-child { border-bottom: none; }

.neo-grade__level {
  width: 48px; height: 48px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.25rem;
  flex-shrink: 0;
}
.neo-grade__level--1 { background: var(--bg-tertiary); color: var(--text-tertiary); }
.neo-grade__level--2 { background: #DBEAFE; color: #1D4ED8; }
.neo-grade__level--3 { background: #FEF3C7; color: #D97706; }
.neo-grade__level--4 { background: #D1FAE5; color: #059669; }

.neo-grade__info { flex: 1; }
.neo-grade__name { font-weight: 700; font-size: 0.9rem; }
.neo-grade__tasks { font-size: 0.75rem; color: var(--text-secondary); margin-top: 2px; }

.neo-grade__split {
  text-align: right;
  min-width: 140px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.neo-grade__bar {
  height: 8px;
  border-radius: 4px;
  background: var(--bg-tertiary);
  overflow: hidden;
  margin-top: 6px;
}
.neo-grade__bar-fill {
  height: 100%;
  border-radius: 4px;
  background: var(--accent);
  transition: width 0.5s ease;
}

/* ===== BOUNTY CARD ===== */
.neo-bounty {
  background: var(--bg-widget);
  border: 1px solid var(--border-widget);
  border-radius: var(--radius);
  padding: 16px;
  margin-bottom: 12px;
  display: flex;
  gap: 16px;
  transition: all var(--transition);
  cursor: pointer;
}
.neo-bounty:hover { border-color: var(--accent); box-shadow: var(--shadow-sm); }

.neo-bounty__type {
  width: 44px; height: 44px;
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  flex-shrink: 0;
}
.neo-bounty__type--photo { background: #DBEAFE; }
.neo-bounty__type--3d { background: #EDE9FE; }
.neo-bounty__type--smm { background: #FCE7F3; }
.neo-bounty__type--influence { background: #FEF3C7; }

.neo-bounty__body { flex: 1; }
.neo-bounty__title { font-weight: 600; font-size: 0.875rem; margin-bottom: 4px; }
.neo-bounty__client { font-size: 0.75rem; color: var(--text-tertiary); }

.neo-bounty__meta {
  text-align: right;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 4px;
}
.neo-bounty__price { font-weight: 700; font-size: 0.9rem; color: var(--success); }
.neo-bounty__escrow { font-size: 0.65rem; color: var(--text-tertiary); }

/* ===== TOKEN BALANCE ===== */
.neo-token-balance {
  text-align: center;
  padding: 32px 16px;
}
.neo-token-balance__amount {
  font-size: 2.5rem;
  font-weight: 800;
  background: linear-gradient(135deg, #6366F1, #EC4899);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.neo-token-balance__label {
  font-size: 0.75rem;
  color: var(--text-tertiary);
  margin-top: 4px;
}
.neo-token-balance__staked {
  margin-top: 12px;
  padding: 8px 16px;
  background: var(--bg-tertiary);
  border-radius: var(--radius-full);
  display: inline-block;
  font-size: 0.8rem;
  font-weight: 600;
}

/* ===== SMART-SPLIT ===== */
.neo-split {
  margin-bottom: 12px;
}
.neo-split__row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid var(--border);
}
.neo-split__row:last-child { border-bottom: none; }

.neo-split__role {
  width: 32px; height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.75rem;
  font-weight: 700;
  flex-shrink: 0;
}
.neo-split__role--lawyer { background: #EDE9FE; color: #7C3AED; }
.neo-split__role--accountant { background: #D1FAE5; color: #059669; }
.neo-split__role--broker { background: #E0E7FF; color: #4F46E5; }
.neo-split__role--creator { background: #FCE7F3; color: #DB2777; }
.neo-split__role--platform { background: var(--bg-tertiary); color: var(--text-tertiary); }

.neo-split__info { flex: 1; }
.neo-split__name { font-size: 0.8rem; font-weight: 600; }
.neo-split__grade { font-size: 0.65rem; color: var(--text-tertiary); }

.neo-split__amount {
  text-align: right;
}
.neo-split__value { font-weight: 700; font-size: 0.875rem; }
.neo-split__pct { font-size: 0.65rem; color: var(--text-tertiary); }

/* ===== GIG-TO-MORTGAGE PROGRESS ===== */
.neo-g2m-step {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 0;
}
.neo-g2m-dot {
  width: 28px; height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  font-weight: 700;
  flex-shrink: 0;
  transition: all 0.3s ease;
}
.neo-g2m-dot--done { background: var(--success); color: white; }
.neo-g2m-dot--active { background: var(--accent); color: white; box-shadow: 0 0 0 4px var(--accent-light); }
.neo-g2m-dot--pending { background: var(--bg-tertiary); color: var(--text-tertiary); }

.neo-g2m-label { flex: 1; font-size: 0.85rem; }
.neo-g2m-label--done { color: var(--text-secondary); }
.neo-g2m-label--active { font-weight: 700; }
.neo-g2m-date { font-size: 0.7rem; color: var(--text-tertiary); }

/* ===== PULSE ANIMATION ===== */
@keyframes pulse {
  0%, 100% { box-shadow: 0 0 0 0 var(--accent-light); }
  50% { box-shadow: 0 0 0 8px transparent; }
}

/* ===== WIDGET SPAN 5 AND 7 ===== */
.neo-widget--5 { grid-column: span 5; }
.neo-widget--7 { grid-column: span 7; }

@media (max-width: 1024px) {
  .neo-widget--5, .neo-widget--7 { grid-column: span 6; }
}
@media (max-width: 768px) {
  .neo-widget--5, .neo-widget--7 { grid-column: span 12; }
}

/* ===== RESPONSIVE ADDITIONS ===== */
@media (max-width: 768px) {
  .neo-detail-panel { width: 100%; max-width: 100%; }
  .neo-kanban { flex-direction: column; }
  .neo-kanban__col { min-width: auto; }
  .neo-filters { flex-direction: column; }
  .neo-filters__search { min-width: auto; width: 100%; }
}

/* ═══════════════════════════════════════════
   SIDEBAR — Глобальная навигация + Терминалы
   ═══════════════════════════════════════════ */
.neo-sidebar__global-nav {
  padding: 12px 12px 4px;
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex-shrink: 0;
}
.neo-sidebar__global-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  border-radius: 8px;
  border: none;
  background: transparent;
  color: var(--text-sidebar);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all var(--transition);
  font-family: inherit;
}
.neo-sidebar__global-btn:hover { background: var(--bg-sidebar-hover); color: white; }
.neo-sidebar__global-btn.active { background: rgba(255,255,255,0.1); color: white; }
.collapsed .neo-sidebar__global-btn span:last-child { display: none; }

.neo-sidebar__terminals-label {
  padding: 16px 20px 6px;
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.25);
}

/* Переопределяем терминальные кнопки — крупнее, с цветной точкой */
.neo-sidebar__terminal-btn {
  padding: 10px 12px !important;
  border-radius: 8px !important;
  font-size: 0.8125rem !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  text-align: left !important;
  border-left: 3px solid transparent !important;
  transition: all 0.2s ease !important;
}
.neo-sidebar__terminals {
  padding: 4px 12px !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  gap: 2px !important;
  overflow-y: auto;
  max-height: 45vh;
}
.neo-sidebar__terminal-btn.active {
  background: rgba(255,255,255,0.1) !important;
  color: white !important;
}
.neo-sidebar__terminal-btn:hover {
  background: rgba(255,255,255,0.06) !important;
  color: white !important;
}
.neo-t-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
  box-shadow: 0 0 6px currentColor;
}
.neo-t-icon {
  font-size: 1.1rem;
  flex-shrink: 0;
  width: 24px;
  text-align: center;
}
.neo-t-label {
  font-weight: 500;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.collapsed .neo-t-label { display: none; }
.collapsed .neo-t-dot { display: none; }

/* ═══════════════════════════════════════════
   HOME — Главная страница
   ═══════════════════════════════════════════ */
/* ═══════════════════════════════════════════
   OMNI-MATRIX: SPATIAL ENTERPRISE UI
   ═══════════════════════════════════════════ */
.omni {
  min-height: 100vh;
  background: #040810;
  color: #E2E8F0;
  position: relative;
}
.omni__canvas {
  position: fixed; inset: 0;
  width: 100%; height: 100%;
  z-index: 0; pointer-events: none;
  opacity: 0.4;
}

/* Nav */
.omni__nav {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 48px; height: 68px;
  background: rgba(4,8,16,0.6);
  backdrop-filter: blur(24px) saturate(180%);
  border-bottom: 1px solid rgba(255,255,255,0.04);
}
.omni__nav-logo {
  display: flex; align-items: center; gap: 12px;
  font-weight: 800; font-size: 1rem; color: rgba(255,255,255,0.9);
  letter-spacing: 0.02em;
}
.omni__nav-mark {
  width: 36px; height: 36px;
  background: linear-gradient(135deg, #0066FF, #00D4AA);
  border-radius: 10px;
  display: grid; place-items: center;
  font-weight: 900; color: white; font-size: 0.9rem;
  box-shadow: 0 0 24px rgba(0,102,255,0.25);
}
.omni__nav-right { display: flex; align-items: center; gap: 12px; }
.omni__nav-user { font-size: 0.8rem; color: rgba(255,255,255,0.4); }

/* Content */
.omni__content {
  max-width: 1280px; margin: 0 auto;
  padding: 0 48px 100px;
  position: relative; z-index: 1;
}

/* Hero */
.omni__hero {
  padding: 80px 0 60px;
  display: flex; justify-content: center;
}
.omni__hero-glass {
  background: rgba(255,255,255,0.03);
  backdrop-filter: blur(40px) saturate(150%);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 32px;
  padding: 64px 72px;
  max-width: 900px; width: 100%;
  position: relative; overflow: hidden;
  box-shadow:
    0 0 80px rgba(0,102,255,0.06),
    inset 0 1px 0 rgba(255,255,255,0.05);
}
.omni__hero-glass::before {
  content: '';
  position: absolute; top: -50%; left: -30%; width: 80%; height: 200%;
  background: radial-gradient(ellipse, rgba(0,102,255,0.08), transparent 70%);
  animation: omni-shift 15s ease-in-out infinite alternate;
}
.omni__hero-glass::after {
  content: '';
  position: absolute; bottom: -50%; right: -20%; width: 60%; height: 150%;
  background: radial-gradient(ellipse, rgba(0,212,170,0.06), transparent 70%);
  animation: omni-shift 18s ease-in-out infinite alternate-reverse;
}
@keyframes omni-shift {
  0% { transform: translate(0,0) scale(1); }
  100% { transform: translate(5%,3%) scale(1.1); }
}
.omni__hero-badge {
  display: inline-flex; padding: 6px 16px;
  border-radius: 100px; font-size: 0.6rem; font-weight: 700;
  letter-spacing: 0.18em; color: rgba(0,212,170,0.8);
  background: rgba(0,212,170,0.06);
  border: 1px solid rgba(0,212,170,0.1);
  margin-bottom: 28px; position: relative; z-index: 1;
}
.omni__hero-title {
  font-size: 5rem; font-weight: 900; line-height: 0.95;
  letter-spacing: -0.04em; margin-bottom: 20px;
  color: rgba(255,255,255,0.95);
  position: relative; z-index: 1;
}
.omni__hero-title em {
  font-style: normal;
  background: linear-gradient(135deg, #0066FF, #00D4AA, #8B5CF6);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-size: 200% 200%;
  animation: omni-gradient 6s ease-in-out infinite;
}
@keyframes omni-gradient {
  0%,100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
.omni__hero-sub {
  font-size: 1.1rem; color: rgba(255,255,255,0.4);
  max-width: 480px; line-height: 1.7;
  position: relative; z-index: 1;
}
.omni__hero-stats {
  display: flex; gap: 40px; margin-top: 48px;
  position: relative; z-index: 1;
}
.omni__stat { display: flex; flex-direction: column; }
.omni__stat-val {
  font-size: 2rem; font-weight: 800; color: white;
  font-variant-numeric: tabular-nums;
}
.omni__stat-lbl {
  font-size: 0.65rem; color: rgba(255,255,255,0.3);
  text-transform: uppercase; letter-spacing: 0.08em; margin-top: 2px;
}

/* Sections */
.omni__section { margin-top: 72px; }
.omni__label {
  font-size: 0.65rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: 0.16em; color: rgba(255,255,255,0.2);
  margin-bottom: 24px;
  display: flex; align-items: center; gap: 12px;
}
.omni__label::before {
  content: ''; width: 28px; height: 1px;
  background: linear-gradient(90deg, #0066FF, transparent);
}

/* Killer Features — Spatial Glass */
.omni__features { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.omni__feat {
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 20px; padding: 36px 28px;
  transition: all 0.4s cubic-bezier(0.2,0.8,0.2,1);
  position: relative; overflow: hidden;
}
.omni__feat::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(circle at 30% 30%, color-mix(in srgb, var(--fc) 5%, transparent), transparent 60%);
  opacity: 0; transition: opacity 0.4s;
}
.omni__feat:hover::before { opacity: 1; }
.omni__feat:hover {
  transform: translateY(-6px);
  border-color: color-mix(in srgb, var(--fc) 30%, transparent);
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), 0 0 40px color-mix(in srgb, var(--fc) 8%, transparent);
}
.omni__feat-icon {
  width: 52px; height: 52px; border-radius: 16px;
  display: grid; place-items: center; font-size: 1.5rem;
  background: color-mix(in srgb, var(--fc) 8%, transparent);
  margin-bottom: 20px;
  box-shadow: 0 0 20px color-mix(in srgb, var(--fc) 8%, transparent);
}
.omni__feat-title { font-size: 1rem; font-weight: 700; color: rgba(255,255,255,0.9); margin-bottom: 10px; }
.omni__feat-text { font-size: 0.82rem; color: rgba(255,255,255,0.4); line-height: 1.65; }

/* 4 Streams */
.omni__streams { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.omni__stream {
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 20px; padding: 32px 20px; text-align: center;
  border-top: 2px solid var(--sc);
  transition: all 0.3s;
}
.omni__stream:hover { transform: translateY(-4px); box-shadow: 0 12px 40px rgba(0,0,0,0.3); }
.omni__stream-icon { font-size: 2.2rem; margin-bottom: 12px; }
.omni__stream h4 { font-size: 0.9rem; font-weight: 700; color: rgba(255,255,255,0.85); margin-bottom: 4px; }
.omni__stream p { font-size: 0.75rem; color: rgba(255,255,255,0.35); }

/* Terminals — Spatial Hover Glow */
.omni__terminals { display: grid; grid-template-columns: repeat(5,1fr); gap: 14px; }
.omni__term {
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 20px; padding: 28px 16px;
  text-align: center; cursor: pointer;
  transition: all 0.4s cubic-bezier(0.2,0.8,0.2,1);
  position: relative; overflow: hidden;
}
.omni__term-glow {
  position: absolute; inset: 0; opacity: 0;
  background: radial-gradient(circle at var(--mx,50%) var(--my,50%), color-mix(in srgb, var(--tc) 12%, transparent), transparent 60%);
  transition: opacity 0.3s; pointer-events: none;
}
.omni__term:hover .omni__term-glow { opacity: 1; }
.omni__term:hover {
  transform: translateY(-8px) scale(1.02);
  border-color: color-mix(in srgb, var(--tc) 40%, transparent);
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), 0 0 40px color-mix(in srgb, var(--tc) 10%, transparent);
}
.omni__term-icon { font-size: 2.2rem; margin-bottom: 10px; position: relative; }
.omni__term-name { font-size: 0.9rem; font-weight: 700; color: rgba(255,255,255,0.85); position: relative; }
.omni__term-code { font-size: 0.6rem; color: rgba(255,255,255,0.2); margin-top: 4px; font-weight: 700; letter-spacing: 0.06em; position: relative; }

/* Media */
.omni__media { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 16px; }
.omni__media-card {
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.04);
  border-radius: 20px; padding: 28px; cursor: pointer;
  transition: all 0.3s;
}
.omni__media-card:hover { border-color: rgba(255,255,255,0.1); box-shadow: 0 8px 32px rgba(0,0,0,0.3); transform: translateY(-2px); }
.omni__media-card--hero { grid-row: span 1; }
.omni__media-tag {
  display: inline-flex; padding: 3px 10px; border-radius: 100px;
  font-size: 0.6rem; font-weight: 700;
  background: color-mix(in srgb, var(--tg) 10%, transparent);
  color: var(--tg); margin-bottom: 12px;
}
.omni__media-card h3 { font-size: 0.9rem; font-weight: 600; color: rgba(255,255,255,0.8); line-height: 1.4; margin-bottom: 6px; }
.omni__media-card p { font-size: 0.78rem; color: rgba(255,255,255,0.35); line-height: 1.6; }
.omni__media-card time { font-size: 0.68rem; color: rgba(255,255,255,0.2); display: block; margin-top: 10px; }

/* Generative UI Preview */
.omni__gen-preview { display: flex; justify-content: center; }
.omni__gen-glass {
  background: rgba(255,255,255,0.02);
  backdrop-filter: blur(40px);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 24px; padding: 48px 56px;
  max-width: 600px; width: 100%; text-align: center;
  position: relative;
}
.omni__gen-text { font-size: 0.9rem; color: rgba(255,255,255,0.4); line-height: 1.7; margin-bottom: 32px; }
.omni__gen-btn {
  display: inline-flex; padding: 14px 36px;
  background: linear-gradient(135deg, #0066FF, #00D4AA);
  color: white; font-weight: 700; font-size: 0.9rem;
  border-radius: 14px; border: none;
  box-shadow: 0 0 32px rgba(0,102,255,0.3);
}
@keyframes gen-appear {
  0%,30% { opacity: 0; transform: translateY(12px) scale(0.95); filter: blur(8px); }
  50%,80% { opacity: 1; transform: translateY(0) scale(1); filter: blur(0); }
  100% { opacity: 0; transform: translateY(-8px) scale(0.97); filter: blur(4px); }
}

/* Footer */
.omni__footer {
  text-align: center; padding: 56px 0 0;
  font-size: 0.72rem; color: rgba(255,255,255,0.15);
  letter-spacing: 0.04em;
}

/* Responsive */
@media (max-width:1024px) {
  .omni__features { grid-template-columns: repeat(2,1fr); }
  .omni__terminals { grid-template-columns: repeat(3,1fr); }
  .omni__streams { grid-template-columns: repeat(2,1fr); }
  .omni__media { grid-template-columns: repeat(2,1fr); }
  .omni__hero-title { font-size: 3.5rem; }
}
@media (max-width:768px) {
  .omni__nav { padding: 0 20px; }
  .omni__content { padding: 0 20px 60px; }
  .omni__features, .omni__terminals, .omni__streams, .omni__media { grid-template-columns: 1fr; }
  .omni__hero { padding: 48px 0 32px; }
  .omni__hero-glass { padding: 36px 28px; border-radius: 20px; }
  .omni__hero-title { font-size: 2.5rem; }
  .omni__hero-stats { flex-wrap: wrap; gap: 20px; }
}

/* Remove old home styles that conflict */
.neo-home-fullscreen { display: none; }

/* ═══════════════════════════════════════════
   OMNI-MATRIX: TERMINAL WORKSPACES
   Каждый терминал = свой мир
   ═══════════════════════════════════════════ */

/* T1 NSPT — Нейро-Экономический Океан */
[data-terminal="NSPT"] .neo-workspace {
  background: linear-gradient(160deg, #F9FAFB 0%, #EEF2FF 50%, #E0E7FF 100%);
}
[data-terminal="NSPT"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 600px 300px at 80% 20%, rgba(0,102,255,0.06), transparent),
    radial-gradient(ellipse 400px 400px at 20% 80%, rgba(0,212,170,0.04), transparent);
  /* animation убрана: анимированный фон под backdrop-filter не перерисовывался → серая пелена */
}
[data-terminal="NSPT"] { --accent: #0066FF; --accent-light: #DBEAFE; --accent-hover: #0052CC; --accent-text: #0066FF; }
[data-terminal="NSPT"] .neo-widget { background: rgba(255,255,255,0.82); backdrop-filter: blur(20px); border-color: rgba(0,102,255,0.08); transform: translateZ(0); }
[data-terminal="NSPT"] .neo-widget:hover { box-shadow: 0 8px 32px rgba(0,102,255,0.08); }

/* T2 LAW — Кинцуги: Слоновая кость + Золото */
[data-terminal="LAW"] .neo-workspace {
  background: linear-gradient(160deg, #FFFFF0 0%, #FFF8E7 50%, #FFFBEB 100%);
}
[data-terminal="LAW"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 500px 500px at 70% 30%, rgba(212,175,55,0.06), transparent),
    radial-gradient(ellipse 300px 300px at 30% 70%, rgba(30,41,59,0.03), transparent);
}
[data-terminal="LAW"] { --accent: #D4AF37; --accent-light: #FEF3C7; --accent-hover: #B8960F; --accent-text: #92700C; }
[data-terminal="LAW"] .neo-widget { background: rgba(255,255,240,0.8); backdrop-filter: blur(16px); border-color: rgba(212,175,55,0.12); }
[data-terminal="LAW"] .neo-widget:hover { box-shadow: 0 8px 32px rgba(212,175,55,0.1); }
[data-terminal="LAW"] .neo-sidebar { background: #1E293B; }

/* T3 BOOKS — Параметрическая Архитектура: Мята + Серебро */
[data-terminal="BOOKS"] .neo-workspace {
  background: linear-gradient(160deg, #F0FDF4 0%, #ECFDF5 50%, #F0FDFA 100%);
}
[data-terminal="BOOKS"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    repeating-linear-gradient(90deg, rgba(5,150,105,0.02) 0px, rgba(5,150,105,0.02) 1px, transparent 1px, transparent 80px),
    repeating-linear-gradient(0deg, rgba(5,150,105,0.015) 0px, rgba(5,150,105,0.015) 1px, transparent 1px, transparent 80px);
}
[data-terminal="BOOKS"] { --accent: #059669; --accent-light: #D1FAE5; --accent-hover: #047857; --accent-text: #059669; }
[data-terminal="BOOKS"] .neo-widget { background: rgba(255,255,255,0.75); backdrop-filter: blur(16px); border-color: rgba(5,150,105,0.08); }

/* T4 BROKER — Перламутровые iOS-градиенты */
[data-terminal="BROKER"] .neo-workspace {
  background: linear-gradient(135deg, #FFF7ED 0%, #EFF6FF 33%, #F5F3FF 66%, #FDF2F8 100%);
  background-size: 400% 400%;
  animation: broker-mesh 15s ease-in-out infinite;
}
@keyframes broker-mesh {
  0%,100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
[data-terminal="BROKER"] { --accent: #4F46E5; --accent-light: #EEF2FF; --accent-hover: #4338CA; --accent-text: #4F46E5; }
[data-terminal="BROKER"] .neo-widget {
  background: rgba(255,255,255,0.6);
  backdrop-filter: blur(24px) saturate(180%);
  border-color: rgba(79,70,229,0.06);
  box-shadow: 0 4px 16px rgba(0,0,0,0.03);
}

/* T5 BANK — Цифровой Двойник: Корпоративный монохром */
[data-terminal="BANK"] .neo-workspace {
  background: #F8FAFC;
}
[data-terminal="BANK"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(180deg, transparent 60%, rgba(15,118,110,0.02) 100%);
}
[data-terminal="BANK"] { --accent: #0F766E; --accent-light: #CCFBF1; --accent-hover: #0D6460; --accent-text: #0F766E; }
[data-terminal="BANK"] .neo-widget {
  background: white;
  border-color: #E2E8F0;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
  border-radius: 8px;
}

/* T6 DEV — Застройщик: Оранжевый + Макет города */
[data-terminal="DEV"] .neo-workspace {
  background: linear-gradient(160deg, #FFFBEB 0%, #FFF7ED 50%, #FFEDD5 100%);
}
[data-terminal="DEV"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 500px 300px at 85% 85%, rgba(234,88,12,0.05), transparent);
}
[data-terminal="DEV"] { --accent: #EA580C; --accent-light: #FFEDD5; --accent-hover: #C2410C; --accent-text: #EA580C; }
[data-terminal="DEV"] .neo-widget { background: rgba(255,255,255,0.8); border-color: rgba(234,88,12,0.08); }

/* T7 BANKROT — Банкротство: Тёмно-красный серьёзный */
[data-terminal="BANKROT"] .neo-workspace {
  background: linear-gradient(160deg, #FEF2F2 0%, #FFF1F2 50%, #FECDD3 100%);
}
[data-terminal="BANKROT"] { --accent: #DC2626; --accent-light: #FEE2E2; --accent-hover: #B91C1C; --accent-text: #DC2626; }
[data-terminal="BANKROT"] .neo-widget { background: rgba(255,255,255,0.8); border-color: rgba(220,38,38,0.08); }
[data-terminal="BANKROT"] .neo-sidebar { background: #1C1917; }

/* T8 APK — Агро: Земляные тона */
[data-terminal="APK"] .neo-workspace {
  background: linear-gradient(160deg, #FFF8E7 0%, #F4ECD6 50%, #FEFCE8 100%);
}
[data-terminal="APK"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 600px 400px at 50% 100%, rgba(74,124,89,0.04), transparent);
}
[data-terminal="APK"] { --accent: #CA8A04; --accent-light: #FEF3C7; --accent-hover: #A16207; --accent-text: #A16207; }
[data-terminal="APK"] .neo-widget { background: rgba(255,248,231,0.8); border-color: rgba(202,138,4,0.1); }

/* T9 MARKET — Гравитационная Сеть: Тёмный космос */
[data-terminal="MARKET"] .neo-workspace {
  background: #0F172A;
  color: #E2E8F0;
}
[data-terminal="MARKET"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(1px 1px at 20% 30%, rgba(8,145,178,0.6), transparent),
    radial-gradient(1px 1px at 40% 70%, rgba(8,145,178,0.4), transparent),
    radial-gradient(1px 1px at 60% 50%, rgba(139,92,246,0.5), transparent),
    radial-gradient(1px 1px at 80% 20%, rgba(8,145,178,0.3), transparent),
    radial-gradient(1px 1px at 10% 80%, rgba(255,215,0,0.4), transparent),
    radial-gradient(1px 1px at 90% 90%, rgba(8,145,178,0.5), transparent);
}
[data-terminal="MARKET"] { --accent: #0891B2; --accent-light: rgba(8,145,178,0.15); --accent-hover: #0E7490; --accent-text: #22D3EE;
  --bg-widget: rgba(15,23,42,0.6); --border-widget: rgba(255,255,255,0.06);
  --text-primary: #F1F5F9; --text-secondary: #94A3B8; --text-tertiary: #64748B;
  --bg-tertiary: rgba(255,255,255,0.04); --border: rgba(255,255,255,0.06);
}
[data-terminal="MARKET"] .neo-widget {
  background: rgba(15,23,42,0.5); backdrop-filter: blur(16px);
  border-color: rgba(255,255,255,0.06); color: #E2E8F0;
}
[data-terminal="MARKET"] .neo-topbar { background: rgba(15,23,42,0.8); border-color: rgba(255,255,255,0.04); }
[data-terminal="MARKET"] .neo-topbar__search-trigger { background: rgba(255,255,255,0.05); border-color: rgba(255,255,255,0.06); color: rgba(255,255,255,0.4); }

/* T12 CREATIVE — Neo-Brutalism + Apple Vision Glass */
[data-terminal="CREATIVE"] .neo-workspace {
  background: #FAFAFA;
}
[data-terminal="CREATIVE"] .neo-workspace::before {
  content: ''; position: absolute; inset: 0; pointer-events: none;
  background:
    radial-gradient(ellipse 600px 400px at 30% 20%, rgba(219,39,119,0.04), transparent),
    radial-gradient(ellipse 400px 400px at 70% 80%, rgba(139,92,246,0.03), transparent);
}
[data-terminal="CREATIVE"] { --accent: #DB2777; --accent-light: #FCE7F3; --accent-hover: #BE185D; --accent-text: #DB2777; }
[data-terminal="CREATIVE"] .neo-widget {
  background: white;
  border: 2px solid #000;
  border-radius: 16px;
  box-shadow: 4px 4px 0 #000;
}
[data-terminal="CREATIVE"] .neo-widget:hover {
  box-shadow: 6px 6px 0 #DB2777;
  border-color: #DB2777;
}
[data-terminal="CREATIVE"] .neo-btn--primary {
  background: #DB2777;
  border-radius: 12px;
  box-shadow: 3px 3px 0 #000;
}

/* ═══════════════════════════════════════════
   Z-AXIS SPATIAL LAYOUT
   Z-0: WebGL | Z-10: Glass | Z-50: Action | Z-100: Oracle
   ═══════════════════════════════════════════ */

.neo-workspace { position: relative; overflow-y: auto; }

/* Z-0: WebGL background fills workspace */
.spatial-bg {
  position: absolute; inset: 0;
  z-index: 0; pointer-events: none;
  overflow: hidden;
}
.spatial-bg canvas { display: block; width: 100% !important; height: 100% !important; }

/* Z-10: All workspace content floats over WebGL */
.neo-workspace__header,
.neo-widget-grid,
.neo-widget,
.neo-filters,
.neo-kanban { position: relative; z-index: 10; }

/* Spatial Glass — widgets become glass panels */
.neo-widget {
  background: rgba(255,255,255,0.55) !important;
  backdrop-filter: blur(40px) saturate(160%) !important;
  -webkit-backdrop-filter: blur(40px) saturate(160%) !important;
  border: 1px solid rgba(255,255,255,0.35) !important;
  box-shadow:
    0 4px 24px rgba(0,0,0,0.06),
    0 1px 0 rgba(255,255,255,0.5) inset !important;
}
.neo-widget:hover {
  box-shadow:
    0 8px 40px rgba(0,0,0,0.1),
    0 0 20px rgba(var(--accent-rgb, 0,102,255), 0.06),
    0 1px 0 rgba(255,255,255,0.5) inset !important;
}

/* Dark terminals override glass to dark glass */
[data-terminal="MARKET"] .neo-widget {
  background: rgba(15,23,42,0.5) !important;
  border-color: rgba(255,255,255,0.06) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.3), 0 1px 0 rgba(255,255,255,0.03) inset !important;
}

/* Z-50: Cards float higher */
.neo-kanban__card,
.neo-ai-card {
  position: relative; z-index: 50;
  box-shadow: 0 8px 32px rgba(0,0,0,0.08), 0 0 12px rgba(var(--accent-rgb, 0,102,255), 0.04);
}

/* Z-100: Oracle tooltips */
.neo-toast-container { z-index: 100; }

/* ═══════ MAGNETIC BUTTONS ═══════ */
.omni-magnetic {
  transition: transform 0.2s cubic-bezier(0.2,0.8,0.2,1), opacity 0.3s, filter 0.3s;
  will-change: transform;
}

/* ═══════ GHOST-TO-SOLID BUTTONS ═══════ */
.neo-btn--primary {
  position: relative;
  overflow: hidden;
  transition: all 0.3s cubic-bezier(0.2,0.8,0.2,1);
}
.neo-btn--primary::before {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(135deg, transparent 30%, rgba(255,255,255,0.2) 50%, transparent 70%);
  transform: translateX(-100%);
  transition: transform 0.6s;
}
.neo-btn--primary:hover::before {
  transform: translateX(100%);
}
.neo-btn--primary:active {
  transform: scale(0.97);
}

/* ═══════ PARTICLE BURST ═══════ */
.omni-particle {
  position: fixed;
  width: 6px; height: 6px;
  border-radius: 50%;
  background: hsl(var(--hue, 210), 80%, 60%);
  box-shadow: 0 0 8px hsl(var(--hue, 210), 80%, 60%);
  pointer-events: none;
  z-index: 9999;
  animation: particle-fly 0.6s ease-out forwards;
}
@keyframes particle-fly {
  0% { transform: translate(0,0) scale(1); opacity: 1; }
  100% { transform: translate(var(--tx,30px), var(--ty,-30px)) scale(0); opacity: 0; }
}

/* ═══════ QUANTUM LOADING (replace spinner) ═══════ */
.neo-loading {
  display: inline-flex; gap: 3px; align-items: center;
}
.neo-loading__dot {
  width: 4px; height: 4px; border-radius: 50%;
  background: var(--accent, #0066FF);
  animation: quantum-pulse 1.2s ease-in-out infinite;
}
.neo-loading__dot:nth-child(2) { animation-delay: 0.15s; }
.neo-loading__dot:nth-child(3) { animation-delay: 0.3s; }
@keyframes quantum-pulse {
  0%,100% { opacity: 0.2; transform: scale(0.8); }
  50% { opacity: 1; transform: scale(1.3); box-shadow: 0 0 8px var(--accent, #0066FF); }
}
.neo-home-nav {
  position: sticky; top: 0; z-index: 50;
  display: flex; align-items: center; justify-content: space-between;
  padding: 0 48px; height: 68px;
  background: rgba(6,11,24,0.7);
  backdrop-filter: blur(20px) saturate(180%);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.neo-home-nav__logo {
  display: flex; align-items: center; gap: 12px;
  font-weight: 800; font-size: 1.05rem; color: white;
}
.neo-home-nav__logo-icon {
  width: 38px; height: 38px;
  background: linear-gradient(135deg, #635BFF, #00D4AA);
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-weight: 900; color: white; font-size: 0.95rem;
  box-shadow: 0 0 20px rgba(99,91,255,0.3);
}
.neo-home-nav__actions { display: flex; align-items: center; gap: 12px; }
.neo-home-nav__actions .neo-avatar {
  background: linear-gradient(135deg, #635BFF, #a855f7);
  box-shadow: 0 0 12px rgba(99,91,255,0.3);
}
.neo-home-content {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 48px 80px;
  position: relative;
}
.neo-home-footer {
  text-align: center; padding: 48px 0 0;
  font-size: 0.8rem; color: rgba(255,255,255,0.25);
}

/* Hero с Aurora-фоном */
.neo-home-hero {
  position: relative;
  border-radius: 24px;
  padding: 72px 56px;
  margin-bottom: 48px;
  margin-top: 40px;
  overflow: hidden;
  background: #0A0F1E;
  color: white;
  position: relative;
  overflow: hidden;
}
.neo-home-hero::after {
  content: '';
  position: absolute; top: 0; right: 0; bottom: 0; width: 40%;
  background: radial-gradient(ellipse at 80% 50%, rgba(13,148,136,0.15), transparent 70%);
}
.neo-home-hero::before,
.neo-home-hero::after {
  content: '';
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.6;
  animation: aurora-drift 12s ease-in-out infinite alternate;
}
.neo-home-hero::before {
  width: 50vw; height: 50vw;
  background: radial-gradient(circle, #635BFF, transparent 70%);
  top: -40%; left: -15%;
}
.neo-home-hero::after {
  width: 40vw; height: 40vw;
  background: radial-gradient(circle, #00D4AA, transparent 70%);
  bottom: -40%; right: -10%;
  animation-delay: -6s;
  animation-direction: alternate-reverse;
}
.neo-aurora-blob--3 {
  position: absolute;
  width: 30vw; height: 30vw;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.35;
  background: radial-gradient(circle, #DB2777, transparent 70%);
  top: 50%; left: 40%;
  animation: aurora-drift 18s ease-in-out infinite alternate;
  pointer-events: none;
}
.neo-home-hero__stats {
  display: flex; gap: 32px;
  margin-top: 40px;
  position: relative; z-index: 1;
}
.neo-home-hero__stat {
  display: flex; flex-direction: column;
}
.neo-home-hero__stat span {
  font-size: 1.8rem; font-weight: 800; color: white;
  font-variant-numeric: tabular-nums;
}
.neo-home-hero__stat small {
  font-size: 0.7rem; color: rgba(255,255,255,0.35);
  text-transform: uppercase; letter-spacing: 0.06em;
  margin-top: 2px;
}
@keyframes aurora-drift {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(5vw, 4vh) scale(1.15); }
}
.neo-home-hero__title {
  font-size: 3rem;
  font-weight: 900;
  letter-spacing: -0.03em;
  margin-bottom: 12px;
  position: relative; z-index: 1;
  background: linear-gradient(135deg, #fff 0%, #e0e7ff 50%, #00D4AA 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.neo-home-hero__sub {
  font-size: 1.1rem;
  color: rgba(255,255,255,0.55);
  max-width: 540px;
  line-height: 1.7;
  position: relative; z-index: 1;
}

.neo-home-section-label {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: rgba(255,255,255,0.35);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.neo-home-section-label::before {
  content: '';
  width: 24px; height: 2px;
  background: linear-gradient(90deg, #635BFF, #00D4AA);
  border-radius: 1px;
}

.neo-home-features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.neo-home-feature {
  background: rgba(17, 25, 40, 0.75);
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  padding: 32px 28px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default;
  position: relative;
  overflow: hidden;
}
.neo-home-feature::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--fc, #635BFF), transparent);
  opacity: 0;
  transition: opacity 0.3s;
}
.neo-home-feature:hover::before { opacity: 1; }
.neo-home-feature:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,0.12);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3),
              0 0 24px color-mix(in srgb, var(--fc, #635BFF) 15%, transparent);
}
.neo-home-feature__icon {
  width: 48px; height: 48px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  margin-bottom: 20px;
  background: color-mix(in srgb, var(--fc, #635BFF) 12%, transparent);
  box-shadow: 0 0 16px color-mix(in srgb, var(--fc, #635BFF) 10%, transparent);
}
.neo-home-feature__title {
  font-size: 1rem;
  font-weight: 700;
  margin-bottom: 10px;
  color: #F1F5F9;
}
.neo-home-feature__text {
  font-size: 0.82rem;
  color: rgba(255,255,255,0.5);
  line-height: 1.65;
}

/* 4 потока входа */
.neo-home-streams {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.neo-home-stream {
  background: rgba(17, 25, 40, 0.6);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 16px;
  padding: 28px 20px;
  text-align: center;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  border-top: 3px solid var(--sc, #635BFF);
  position: relative;
}
.neo-home-stream:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.3),
              0 0 20px color-mix(in srgb, var(--sc, #635BFF) 12%, transparent);
  border-color: rgba(255,255,255,0.1);
  border-top-color: var(--sc, #635BFF);
}
.neo-home-stream__icon {
  font-size: 2.2rem;
  margin-bottom: 14px;
  filter: drop-shadow(0 0 8px rgba(255,255,255,0.1));
}
.neo-home-stream__title {
  font-size: 0.9rem;
  font-weight: 700;
  margin-bottom: 6px;
  color: #F1F5F9;
}
.neo-home-stream__text {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.4);
  line-height: 1.5;
}

/* Терминалы на главной */
.neo-home-terminals {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 14px;
}
.neo-home-terminal {
  background: rgba(17, 25, 40, 0.6);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 16px;
  padding: 24px 16px;
  text-align: center;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.neo-home-terminal::after {
  content: '';
  position: absolute; bottom: 0; left: 20%; right: 20%; height: 3px;
  background: var(--tc, #635BFF);
  border-radius: 3px 3px 0 0;
  box-shadow: 0 0 12px var(--tc, #635BFF);
  opacity: 0.6;
  transition: all 0.3s;
}
.neo-home-terminal:hover {
  transform: translateY(-6px);
  border-color: rgba(255,255,255,0.1);
  box-shadow: 0 16px 48px rgba(0,0,0,0.35),
              0 0 32px color-mix(in srgb, var(--tc, #635BFF) 15%, transparent);
}
.neo-home-terminal:hover::after {
  left: 0; right: 0;
  opacity: 1;
}
.neo-home-terminal__icon {
  font-size: 2rem;
  margin-bottom: 10px;
  filter: drop-shadow(0 0 6px rgba(255,255,255,0.1));
}
.neo-home-terminal__name {
  font-size: 0.88rem;
  font-weight: 700;
  color: #F1F5F9;
}
.neo-home-terminal__code {
  font-size: 0.62rem;
  color: rgba(255,255,255,0.3);
  margin-top: 4px;
  font-weight: 600;
  letter-spacing: 0.05em;
}

/* ═══════════════════════════════════════════
   MEDIA — Медиаплощадка / Академия
   ═══════════════════════════════════════════ */
.neo-media-card {
  padding: 16px 0;
  border-bottom: 1px solid var(--border);
}
.neo-media-card:last-child { border-bottom: none; }
.neo-media-card--featured {
  padding: 20px;
  margin: 0 -8px 8px;
  background: var(--bg-tertiary);
  border-radius: var(--radius);
  border-bottom: none;
}
.neo-media-card__tag {
  display: inline-flex;
  padding: 3px 10px;
  border-radius: 100px;
  font-size: 0.65rem;
  font-weight: 600;
  margin-bottom: 8px;
}
.neo-media-card__title {
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.4;
  margin-bottom: 6px;
}
.neo-media-card__text {
  font-size: 0.8rem;
  color: var(--text-secondary);
  line-height: 1.6;
}
.neo-media-card__date {
  font-size: 0.7rem;
  color: var(--text-tertiary);
  margin-top: 8px;
}

.neo-academy-item {
  padding: 14px 0;
  border-bottom: 1px solid var(--border);
}
.neo-academy-item:last-child { border-bottom: none; }
.neo-academy-item__badge {
  display: inline-flex;
  padding: 3px 10px;
  border-radius: 100px;
  font-size: 0.65rem;
  font-weight: 600;
  background: rgba(16,185,129,0.1);
  color: #10B981;
  margin-bottom: 6px;
}
.neo-academy-item__title {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 4px;
}
.neo-academy-item__meta {
  font-size: 0.72rem;
  color: var(--text-tertiary);
}

/* Медиа-сетка на главной */
.neo-home-media-grid {
  display: grid;
  grid-template-columns: 1.3fr 1fr 1fr 1fr;
  gap: 16px;
}
.neo-home-media-card {
  background: rgba(17, 25, 40, 0.6);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 16px;
  padding: 24px;
  transition: all 0.3s;
  cursor: pointer;
}
.neo-home-media-card:hover {
  border-color: rgba(255,255,255,0.12);
  box-shadow: 0 8px 24px rgba(0,0,0,0.3);
  transform: translateY(-2px);
}
.neo-home-media-card--big { grid-row: span 1; }
.neo-home-media-tag {
  display: inline-flex;
  padding: 3px 10px; border-radius: 100px;
  font-size: 0.65rem; font-weight: 600;
  margin-bottom: 10px;
}
.neo-home-media-card__title {
  font-size: 0.9rem; font-weight: 600;
  color: #F1F5F9; line-height: 1.4;
  margin-bottom: 6px;
}
.neo-home-media-card__text {
  font-size: 0.8rem; color: rgba(255,255,255,0.5); line-height: 1.6;
}
.neo-home-media-card__date {
  font-size: 0.7rem; color: rgba(255,255,255,0.25); margin-top: 10px;
}

/* Геометрическая сетка-фон */
.neo-home-fullscreen::before {
  content: '';
  position: fixed; inset: 0;
  background-image:
    linear-gradient(rgba(99, 91, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(99, 91, 255, 0.04) 1px, transparent 1px);
  background-size: 60px 60px;
  pointer-events: none;
  z-index: 0;
}
.neo-home-nav,
.neo-home-content { position: relative; z-index: 1; }

/* Responsive для новых секций */
@media (max-width: 1024px) {
  .neo-home-features { grid-template-columns: repeat(2, 1fr); }
  .neo-home-terminals { grid-template-columns: repeat(3, 1fr); }
  .neo-home-streams { grid-template-columns: repeat(2, 1fr); }
  .neo-home-media-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .neo-home-features,
  .neo-home-terminals,
  .neo-home-streams,
  .neo-home-media-grid { grid-template-columns: 1fr; }
  .neo-home-hero { padding: 32px 24px; }
  .neo-home-hero__title { font-size: 1.6rem; }
  .neo-home-content { padding: 24px 20px 60px; }
  .neo-home-nav { padding: 0 20px; }
}

/* ══════════════════════════════════════════════════════════════
   OMNI LANDING — FINAL PRISTINE BUILD (Morning Sky · Dopamine UI)
   Один монолит вместо 3 наслоений. База геометрии — выше (ориг.).
   ══════════════════════════════════════════════════════════════ */
:root { --font-mono: ui-monospace, "JetBrains Mono", "SF Mono", Menlo, monospace; }

/* — База: Morning Sky mesh — */
.omni {
  color: #0F172A;
  background:
    radial-gradient(circle at 15% 30%, rgba(255,184,140,0.45), transparent 50%),
    radial-gradient(circle at 85% 20%, rgba(161,196,253,0.40), transparent 50%),
    radial-gradient(circle at 50% 80%, rgba(254,207,239,0.35), transparent 50%),
    radial-gradient(circle at 80% 80%, rgba(194,233,251,0.30), transparent 50%),
    linear-gradient(135deg, #fdfbfb 0%, #ebedee 100%);
  background-attachment: fixed; min-height: 100vh; position: relative; overflow-x: hidden;
}
.omni::before {
  content: ""; position: fixed; inset: -20%; z-index: 0; pointer-events: none;
  background: radial-gradient(circle at 50% 50%, rgba(255,255,255,0.1), transparent 60%);
  filter: blur(40px); animation: morning-breath 12s ease-in-out infinite alternate;
}
@keyframes morning-breath { 0% { transform: scale(1) translate(0,0); opacity:.5; } 100% { transform: scale(1.1) translate(2%,-2%); opacity:1; } }
.omni__canvas { display: none; }

/* — Светлая типографика — */
.omni__nav { background: linear-gradient(90deg, #0c3242 0%, #0e7490 26%, #0bb3d4 50%, #0e7490 74%, #0c3242 100%); border-bottom: 1px solid rgba(255,255,255,.14); box-shadow: 0 6px 26px rgba(6,60,80,.30); }
.omni__nav-logo { color: #ffffff; }
.omni__nav-mark { background: #ffffff; color: #0e7490; box-shadow: none; }
.omni__nav-user { color: rgba(255,255,255,.92); }
.omni__label { color: #94A3B8; }
.omni__feat-title, .omni__stream h4, .omni__media-card h3 { color: #0F172A; }
.omni__feat-text, .omni__stream p, .omni__gen-text { color: #475569; }
.omni__media-card time, .omni__stat-lbl, .omni__footer { color: #94A3B8; }
.omni__stat-val { color: #0F172A; }
.text-emerald { color: #059669; }

/* — Единый стандарт стекла — */
.glass-panel, .omni__feat, .omni__stream, .omni__media-card, .omni__gen-glass, .omni__dept {
  background: linear-gradient(135deg, rgba(255,255,255,0.7), rgba(255,255,255,0.4));
  backdrop-filter: blur(24px) saturate(160%); -webkit-backdrop-filter: blur(24px) saturate(160%);
  border: 1px solid rgba(255,255,255,0.9); border-radius: 28px;
  box-shadow: 0 20px 40px rgba(15,23,42,0.04), inset 0 1px 0 rgba(255,255,255,1), inset 0 -1px 0 rgba(255,255,255,0.3);
  transition: all 0.4s cubic-bezier(0.16,1,0.3,1); position: relative; z-index: 1;
}
.omni__feat:hover, .omni__stream:hover, .omni__media-card:hover, .omni__dept:hover {
  transform: translateY(-6px) scale(1.02);
  background: linear-gradient(135deg, rgba(255,255,255,0.85), rgba(255,255,255,0.5));
  box-shadow: 0 30px 60px rgba(15,23,42,0.08), inset 0 1px 0 rgba(255,255,255,1);
}
.omni__dept { border-left: 4px solid var(--dc); }
.omni__dept:hover { box-shadow: 0 30px 60px rgba(15,23,42,0.08), 0 0 40px color-mix(in srgb, var(--dc) 40%, transparent), inset 0 1px 0 rgba(255,255,255,1); }

/* — Bento Hero layout — */
.omni__hero-bento { display: grid; grid-template-columns: 1.2fr 1fr; grid-template-rows: auto auto; gap: 20px; max-width: 1200px; margin: 40px auto; }
.omni__hero-main { grid-column: 1/2; grid-row: 1/2; padding: 48px; display: flex; flex-direction: column; justify-content: center; }
.omni__hero-visual { grid-column: 2/3; grid-row: 1/3; position: relative; display: flex; align-items: center; justify-content: center; min-height: 400px; border-radius: 40px; background: radial-gradient(circle at center, rgba(255,255,255,0.2) 0%, transparent 70%); }
.omni__hero-stats { grid-column: 1/2; grid-row: 2/3; display: flex; align-items: center; justify-content: space-between; padding: 24px 40px; margin-top: 0; }
.omni__stat-divider { width: 1px; height: 40px; background: linear-gradient(to bottom, transparent, rgba(15,23,42,0.1), transparent); }
.omni__hero-badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; border-radius: 999px; background: rgba(15,23,42,0.04); border: 1px solid rgba(15,23,42,0.08); font-family: var(--font-mono); font-size: 11px; font-weight: 700; letter-spacing: .1em; color: #475569; width: max-content; margin-bottom: 24px; }
.badge-dot { width: 6px; height: 6px; border-radius: 50%; background: #0066FF; box-shadow: 0 0 8px #0066FF; }
.omni__hero-title { font-size: clamp(3rem, 5vw, 4.5rem); line-height: 1; font-weight: 900; letter-spacing: -.04em; color: #0F172A; margin-bottom: 24px; }
.omni__hero-sub { font-size: 1.15rem; line-height: 1.6; color: #475569; max-width: 480px; margin-bottom: 40px; font-weight: 500; }
.text-gradient { background: linear-gradient(135deg, #FF9A9E 0%, #FECFEF 30%, #A1C4FD 70%, #0066FF 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; background-size: 200% 200%; animation: gradient-shift 6s ease infinite; }
@keyframes gradient-shift { 0% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } 100% { background-position: 0% 50%; } }
.btn-primary-juicy { background: linear-gradient(135deg, #0066FF, #2563EB); color: #fff; border: none; padding: 16px 32px; border-radius: 14px; font-size: 16px; font-weight: 700; cursor: pointer; display: inline-flex; align-items: center; gap: 12px; box-shadow: 0 12px 24px rgba(0,102,255,0.3); transition: all 0.3s ease; width: max-content; }
.btn-primary-juicy:hover { transform: translateY(-2px); box-shadow: 0 16px 32px rgba(0,102,255,0.4); }
.btn-primary-juicy .arrow { transition: transform 0.3s ease; }
.btn-primary-juicy:hover .arrow { transform: translateX(4px); }

/* — Отделы (страты) — */
.omni__depts { display: flex; flex-direction: column; gap: 16px; }
.omni__dept { position: relative; overflow: hidden; display: flex; align-items: center; gap: 28px; padding: 22px 28px; background: rgba(255,255,255,0.55); backdrop-filter: blur(12px); border: 1px solid rgba(255,255,255,0.75); border-radius: 22px; box-shadow: 0 6px 22px rgba(15,23,42,0.05); }
.omni__dept::before { content: ""; position: absolute; inset: 0; background: var(--dc); opacity: .06; pointer-events: none; border-radius: inherit; }
.omni__dept-head { position: relative; z-index: 1; min-width: 200px; display: flex; align-items: center; justify-content: space-between; gap: 14px; }
.omni__dept-name { font-size: 1.18rem; font-weight: 800; color: var(--dc); letter-spacing: -.01em; }
.omni__dept-tag { font-size: .8rem; color: #5b6573; margin-top: 4px; }
.omni__dept-count { min-width: 30px; height: 30px; border-radius: 9px; display: grid; place-items: center; font-weight: 800; font-size: .85rem; color: var(--dc); background: color-mix(in srgb, var(--dc) 14%, white); }
.omni__dept-chips { position: relative; z-index: 1; flex: 1; display: flex; flex-wrap: wrap; gap: 12px; }

/* — Чипы (терминалы) — */
.omni__chip { display: flex; align-items: center; gap: 11px; min-width: 184px; padding: 12px 16px; border-radius: 14px; cursor: pointer; background: rgba(255,255,255,0.65); backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,0.9); box-shadow: 0 4px 12px rgba(15,23,42,0.04); transition: all 0.2s ease; }
.omni__chip:hover { transform: translateY(-2px); border-color: var(--cc); box-shadow: 0 8px 24px color-mix(in srgb, var(--cc) 25%, transparent); }
.omni__chip-icon { font-size: 1.45rem; line-height: 1; }
.omni__chip-text { display: flex; flex-direction: column; line-height: 1.2; }
.omni__chip-name { font-size: .93rem; font-weight: 700; color: #0F172A; }
.omni__chip-code { font-size: .68rem; color: #7c8696; letter-spacing: .05em; text-transform: uppercase; font-family: var(--font-mono); }
.omni__chip-arrow { margin-left: auto; color: var(--cc); font-weight: 700; opacity: .55; }
.omni__chip:hover .omni__chip-arrow { opacity: 1; }

/* — Хрустальная ласточка (призма, заглушка под 3D) — */
.prism-swallow { width: 220px; height: 220px; border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; background: linear-gradient(135deg, rgba(255,255,255,0.9), rgba(255,255,255,0.1)); backdrop-filter: blur(10px); box-shadow: 0 0 60px rgba(161,196,253,0.6), inset 20px 0 40px rgba(255,184,140,0.4), inset -20px 0 40px rgba(194,233,251,0.4); animation: float-prism 8s ease-in-out infinite, morph-prism 12s linear infinite; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,0.8); }
.prism-swallow::after { content: "✨"; font-size: 4rem; filter: drop-shadow(0 0 20px rgba(255,255,255,0.8)); }
@keyframes float-prism { 0%,100% { transform: translateY(0) rotate(0deg); } 50% { transform: translateY(-20px) rotate(5deg); } }
@keyframes morph-prism { 0% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; } 34% { border-radius: 70% 30% 50% 50% / 30% 30% 70% 70%; } 67% { border-radius: 100% 60% 60% 100% / 100% 100% 60% 60%; } 100% { border-radius: 40% 60% 70% 30% / 40% 50% 60% 50%; } }

/* — Адаптив — */
@media (max-width: 900px) {
  .omni__hero-bento { grid-template-columns: 1fr; }
  .omni__hero-main { grid-column: 1; grid-row: auto; padding: 32px; }
  .omni__hero-visual { grid-column: 1; grid-row: auto; min-height: 260px; }
  .omni__hero-stats { grid-column: 1; grid-row: auto; flex-wrap: wrap; gap: 16px; }
}

/* — Хрустальная ласточка (маскот hero) — */
.crystal-bird { width: 280px; height: 210px; display: flex; align-items: center; justify-content: center; animation: cbird-float 6s ease-in-out infinite; }
.cbird__svg { width: 100%; height: 100%; overflow: visible; filter: drop-shadow(0 18px 40px rgba(0,102,255,.25)); animation: cbird-shimmer 9s ease-in-out infinite; }
@keyframes cbird-float { 0%,100% { transform: translateY(0) rotate(-1.5deg); } 50% { transform: translateY(-22px) rotate(1.5deg); } }
@keyframes cbird-shimmer { 0%,100% { filter: drop-shadow(0 18px 40px rgba(0,102,255,.25)) hue-rotate(0deg); } 50% { filter: drop-shadow(0 22px 48px rgba(219,39,119,.25)) hue-rotate(-16deg); } }
.cbird__wing { transform-box: fill-box; transform-origin: 50% 80%; animation: cbird-flap 2.6s ease-in-out infinite; }
@keyframes cbird-flap { 0%,100% { transform: rotate(0deg); } 50% { transform: rotate(7deg); } }

/* ═══════ ПИТОМЕЦ-АССИСТЕНТ (Ирбис) во всех терминалах ═══════ */
.neo-pet { position: fixed; bottom: 24px; right: 24px; z-index: 9000; display: flex; flex-direction: column; align-items: flex-end; gap: 12px; }
.neo-pet__avatar {
  width: 66px; height: 66px; border-radius: 50%; cursor: pointer; position: relative; padding: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.55));
  backdrop-filter: blur(14px) saturate(160%); border: 1px solid rgba(255,255,255,.85);
  box-shadow: 0 12px 34px color-mix(in srgb, var(--pet) 28%, rgba(15,23,42,.18));
  transition: transform .25s cubic-bezier(.16,1,.3,1), box-shadow .25s ease;
  animation: pet-float 5s ease-in-out infinite;
}
.neo-pet__avatar:hover { transform: translateY(-5px) scale(1.07); box-shadow: 0 18px 44px color-mix(in srgb, var(--pet) 40%, rgba(15,23,42,.22)); }
@keyframes pet-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.pet-irbis { width: 48px; height: 48px; display: block; margin: 9px auto; filter: drop-shadow(0 3px 8px color-mix(in srgb, var(--pet) 45%, transparent)); }
.neo-pet__avatar--active .pet-irbis { animation: pet-shimmer 4s ease-in-out infinite; }
.neo-pet__avatar--alert { animation: pet-float 5s ease-in-out infinite, pet-alert 1.3s ease-in-out infinite; }
@keyframes pet-alert { 0%,100% { box-shadow: 0 12px 34px rgba(239,68,68,.32); } 50% { box-shadow: 0 12px 46px rgba(239,68,68,.6); } }
@keyframes pet-shimmer { 0%,100% { filter: drop-shadow(0 3px 8px rgba(0,102,255,.4)) hue-rotate(0deg); } 50% { filter: drop-shadow(0 3px 10px rgba(219,39,119,.4)) hue-rotate(-14deg); } }
.neo-pet__badge { position: absolute; top: -2px; right: -2px; min-width: 21px; height: 21px; border-radius: 11px; background: #EF4444; color: #fff; font-size: 11px; font-weight: 800; display: grid; place-items: center; box-shadow: 0 2px 8px rgba(239,68,68,.5); border: 2px solid #fff; }
.neo-pet__bubble { width: 310px; background: rgba(255,255,255,.94); backdrop-filter: blur(22px) saturate(160%); border: 1px solid rgba(15,23,42,.07); border-radius: 18px; box-shadow: 0 22px 56px rgba(15,23,42,.16); padding: 14px; }
.neo-pet__bubble-head { font-size: .72rem; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; color: var(--pet); margin-bottom: 10px; }
.neo-pet__msg { display: flex; gap: 10px; align-items: flex-start; padding: 9px 10px; border-radius: 12px; font-size: .82rem; color: #334155; line-height: 1.45; }
.neo-pet__msg-ic { flex-shrink: 0; }
.neo-pet__msg--link { cursor: pointer; transition: background .15s ease; }
.neo-pet__msg--link:hover { background: color-mix(in srgb, var(--pet) 10%, white); }

/* ═══════ AI-ТРИАЖ ПРИЁМА (NSPT) — строгий enterprise ═══════ */
.neo-triage-summary { display: flex; flex-wrap: wrap; align-items: center; gap: 26px; padding: 18px 24px !important; }
.neo-triage-stat { text-align: center; }
.neo-triage-stat__v { font-size: 1.55rem; font-weight: 800; line-height: 1; font-variant-numeric: tabular-nums; }
.neo-triage-stat__l { font-size: .68rem; color: var(--text-tertiary); text-transform: uppercase; letter-spacing: .05em; margin-top: 4px; }
.neo-triage-sep { width: 1px; height: 38px; background: var(--border); }
.neo-triage-copilot { margin-left: auto; font-size: .82rem; color: var(--text-secondary); max-width: 290px; }
.neo-triage-copilot b { color: var(--accent); }
.neo-triage-list { display: flex; flex-direction: column; gap: 12px; }
.neo-triage-card { display: flex; align-items: stretch; gap: 20px; background: var(--bg-secondary, #fff); border: 1px solid var(--border); border-radius: var(--radius, 12px); padding: 16px 20px; cursor: pointer; transition: border-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.neo-triage-card:hover { border-color: var(--accent); box-shadow: 0 6px 20px rgba(15,23,42,.07); transform: translateY(-1px); }
.neo-triage-card--human { border-left: 3px solid var(--accent); }
.neo-triage__score { flex-shrink: 0; width: 80px; display: flex; flex-direction: column; align-items: center; justify-content: center; border-radius: 10px; }
.neo-triage__score--green { background: rgba(5,150,105,.10); color: var(--success); }
.neo-triage__score--amber { background: rgba(217,119,6,.10); color: var(--warning); }
.neo-triage__score--red { background: rgba(220,38,38,.10); color: var(--danger); }
.neo-triage__score-val { font-size: 1.75rem; font-weight: 800; line-height: 1; }
.neo-triage__score-lbl { font-size: .6rem; text-transform: uppercase; letter-spacing: .05em; opacity: .8; margin-top: 3px; }
.neo-triage__info { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.neo-triage__top { display: flex; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.neo-triage__name { font-size: 1rem; font-weight: 700; }
.neo-triage__src { font-size: .75rem; color: var(--text-tertiary); }
.neo-triage__route { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.neo-triage__nba { font-size: .85rem; color: var(--text-secondary); display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.neo-triage__nba-lbl { font-size: .6rem; text-transform: uppercase; letter-spacing: .06em; color: var(--accent); font-weight: 700; background: var(--accent-light, rgba(0,102,255,.08)); padding: 2px 7px; border-radius: 5px; }
.neo-triage__decide { flex-shrink: 0; display: flex; flex-direction: column; gap: 8px; align-items: flex-end; justify-content: center; min-width: 165px; }
@media (max-width: 820px) { .neo-triage-card { flex-direction: column; } .neo-triage__decide { align-items: stretch; min-width: 0; } }

/* ═══════ AI-СКРИПТ ЗВОНКА (slide-over) ═══════ */
.neo-script-panel { position: fixed; top: 0; right: 0; bottom: 0; width: 460px; max-width: 92vw; background: var(--bg-primary, #fff); border-left: 1px solid var(--border); box-shadow: -20px 0 60px rgba(15,23,42,.14); z-index: 81; transform: translateX(100%); transition: transform .3s cubic-bezier(.16,1,.3,1); display: flex; flex-direction: column; }
.neo-script-panel.open { transform: translateX(0); }
.neo-script__header { display: flex; justify-content: space-between; align-items: flex-start; padding: 22px 24px 16px; border-bottom: 1px solid var(--border); }
.neo-script__title { font-size: 1.05rem; font-weight: 800; }
.neo-script__sub { font-size: .8rem; color: var(--text-tertiary); margin-top: 3px; font-family: var(--font-mono, monospace); }
.neo-script__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 14px 24px; border-bottom: 1px solid var(--border); font-size: .82rem; }
.neo-script__approval b { color: var(--success); }
.neo-script__hint { font-size: .72rem; color: var(--text-tertiary); width: 100%; }
.neo-script__body { flex: 1; overflow-y: auto; padding: 18px 24px; display: flex; flex-direction: column; gap: 16px; }
.neo-script__line { border-left: 3px solid var(--accent); padding-left: 14px; }
.neo-script__part { font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); font-weight: 700; margin-bottom: 5px; }
.neo-script__text { font-size: .95rem; line-height: 1.55; color: var(--text-primary); }
.neo-script__foot { display: flex; gap: 10px; padding: 16px 24px; border-top: 1px solid var(--border); }
.neo-script__foot .neo-btn--primary { flex: 1; }

/* ═══════ WORKSPACE-SWITCHER (шапка) + БЕЙДЖ РОЛИ ═══════ */
.neo-switcher { position: relative; }
.neo-switcher__current { display: flex; align-items: center; gap: 8px; padding: 7px 12px; border-radius: 10px; border: 1px solid var(--border); background: transparent; cursor: pointer; font-size: .85rem; font-weight: 600; color: var(--text-primary); transition: border-color .15s, background .15s; }
.neo-switcher__current:hover { border-color: var(--accent); }
.neo-switcher__ic { font-size: 1.05rem; }
.neo-switcher__chev { opacity: .5; }
.neo-switcher__menu { position: absolute; top: calc(100% + 8px); left: 0; width: 264px; background: var(--bg-primary, #fff); border: 1px solid var(--border); border-radius: 14px; box-shadow: 0 20px 50px rgba(15,23,42,.16); padding: 6px; z-index: 90; max-height: 72vh; overflow-y: auto; }
.neo-switcher__grp { font-size: .62rem; text-transform: uppercase; letter-spacing: .08em; color: var(--text-tertiary); font-weight: 700; padding: 10px 12px 6px; }
.neo-switcher__item { display: flex; align-items: center; gap: 10px; width: 100%; padding: 9px 12px; border: none; background: none; border-radius: 9px; cursor: pointer; font-size: .85rem; color: var(--text-primary); text-align: left; transition: background .12s; }
.neo-switcher__item:hover { background: var(--accent-light, rgba(0,102,255,.07)); }
.neo-switcher__item.active { background: var(--accent-light, rgba(0,102,255,.10)); font-weight: 700; }
.neo-switcher__dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.neo-switcher__lbl { flex: 1; }
.neo-switcher__ext { color: var(--text-tertiary); font-weight: 700; }
.neo-sidebar__role { margin: 4px 12px 14px; padding: 12px 14px; border-radius: 12px; background: rgba(255,255,255,0.05); border-left: 3px solid var(--t-color, #0066FF); }
.neo-sidebar__role-term { display: flex; align-items: center; gap: 9px; font-size: .95rem; font-weight: 700; color: #fff; }
.neo-sidebar__role-ic { font-size: 1.15rem; }
.neo-sidebar__role-name { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.neo-sidebar__role-badge { margin-top: 6px; font-size: .62rem; font-weight: 700; letter-spacing: .08em; color: var(--t-color, #5B8DEF); text-transform: uppercase; font-family: var(--font-mono, monospace); }

/* Триаж: 3 действия (Отказ — danger) */
.neo-triage__decide-row { display: flex; gap: 8px; }
.neo-triage__decide-row .neo-btn { flex: 1; }
.neo-triage-reject { flex: 1; padding: 6px 12px; border-radius: 8px; border: 1px solid var(--danger, #DC2626); background: transparent; color: var(--danger, #DC2626); font-size: .8rem; font-weight: 600; cursor: pointer; transition: background .15s ease, color .15s ease; }
.neo-triage-reject:hover { background: var(--danger, #DC2626); color: #fff; }

/* Триаж: AI Enrichment теги */
.neo-triage__enrich { display: flex; flex-wrap: wrap; gap: 6px; }
.neo-triage__etag { font-size: .72rem; color: var(--text-secondary); background: var(--bg-tertiary, rgba(15,23,42,.04)); padding: 3px 9px; border-radius: 6px; border: 1px solid var(--border); }
.neo-triage__etag b { color: var(--text-primary); font-weight: 700; }
.neo-triage__etag--warn { color: var(--danger); border-color: rgba(220,38,38,.3); }
.neo-triage__etag--warn b { color: var(--danger); }
.neo-triage__etag--hash { font-family: var(--font-mono, monospace); color: var(--text-tertiary); }

/* Fix: KPI-шапка триажа — баг репейнта backdrop-filter над анимированным фоном.
   Непрозрачный фон + свой композитный слой → текст дорисован сразу, без hover. */
.neo-triage-head {
  background: #ffffff !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transform: translateZ(0);
  border: 1px solid var(--border, rgba(15,23,42,.08));
}


