/* Nexorvi brand design tokens — layered on existing app.css */
:root {
  --brand-bg-primary: #050914;
  --brand-bg-secondary: #0c1020;
  --brand-surface: #09101c;
  --brand-surface-elevated: #111827;
  --brand-purple: #7c3aed;
  --brand-violet: #8b5cf6;
  --brand-blue: #2563eb;
  --brand-cyan: #22d3ee;
  --brand-gradient-primary: linear-gradient(135deg, #8b5cf6 0%, #3b82f6 55%, #22d3ee 100%);
  --brand-gradient-secondary: linear-gradient(90deg, #6d28d9 0%, #1d4ed8 100%);
  --brand-border: rgba(139, 92, 246, 0.22);
  --brand-text-primary: #f7f8ff;
  --brand-text-secondary: #aeb6ca;
  --brand-success: #22c55e;
  --brand-warning: #f59e0b;
  --brand-danger: #ef4444;
}

html[data-theme-resolved="light"] {
  --brand-bg-primary: #eef1f8;
  --brand-bg-secondary: #ffffff;
  --brand-surface: #ffffff;
  --brand-surface-elevated: #f8fafc;
  --brand-text-primary: #0f172a;
  --brand-text-secondary: #64748b;
}

.brand-logo,
.brand-logo--mark,
.sellora-logo {
  width: 54px;
  height: 54px;
  object-fit: contain;
  flex-shrink: 0;
}

.brand-logo--auth {
  width: 65px;
  height: 65px;
}

.brand .brand-name,
.brand-copy > b,
.auth-card-brand > div > b {
  font-size: 22px;
  letter-spacing: 0.04em;
  background: var(--brand-gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.brand-tagline,
.brand-copy > small,
.auth-card-brand small {
  font-size: 10px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--brand-text-secondary);
  line-height: 1.3;
}

@media (max-width: 900px) {
  .brand-tagline {
    display: none;
  }
  .sidebar.is-compact .brand-copy,
  .brand .brand-copy .brand-name {
    display: none;
  }
}

.hero-product-title,
.ai-orb img {
  filter: drop-shadow(0 0 12px rgba(124, 58, 237, 0.35));
}

html[data-accent="violet"] .primary,
html[data-accent="violet"] .action-button--primary {
  background-image: var(--brand-gradient-secondary);
}
