/*
 * TicketQ canonical design tokens.
 * This file is the single source of truth for the global TicketQ theme.
 * Generated runtime copies in public/css/ticketq-tokens.css and
 * ticketq-web/public/css/ticketq-tokens.css are exact mirrors.
 */
:root {
  --tq-font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --tq-font-brand-q: "Century Gothic", "AppleGothic", "Avant Garde", sans-serif;

  --tq-surface-page: #F5F7FA;
  --tq-surface-default: #FFFFFF;
  --tq-surface-subtle: #EEF3F7;
  --tq-surface-raised: #FFFFFF;
  --tq-surface-elevated: #F8FAFC;
  --tq-surface-inverse: #07121E;
  --tq-surface-hover: #EFF5F9;
  --tq-surface-active: #E7EEF4;
  --tq-surface-selected: rgba(250, 101, 42, 0.08);

  --tq-border-subtle: #E2E8F0;
  --tq-border-muted: #E7EEF4;
  --tq-border-strong: #B8C7D7;
  --tq-border-on-brand: #355064;
  --tq-border-focus: rgba(250, 101, 42, 0.34);

  --tq-text-primary: #142737;
  --tq-text-secondary: #475569;
  --tq-text-muted: #64748B;
  --tq-text-inverse: #F8FAFC;
  --tq-text-link: #194D73;
  --tq-text-on-brand: #F8FAFC;
  --tq-text-on-brand-muted: #B8C8D4;

  --tq-brand-navy: #142737;
  --tq-brand-navy-strong: #0B1220;
  --tq-brand-navy-soft: #183247;
  --tq-brand-orange: #FA652A;
  --tq-brand-orange-strong: #FF7C4D;
  --tq-brand-orange-active: #E55B22;
  --tq-brand-orange-soft: rgba(250, 101, 42, 0.12);
  --tq-brand-cyan: #31C9D7;
  --tq-success: #157347;
  --tq-danger: #B42318;

  --tq-action-primary: var(--tq-brand-orange);
  --tq-action-primary-hover: var(--tq-brand-orange-strong);
  --tq-action-primary-contrast: #142737;
  --tq-action-primary-shadow: rgba(250, 101, 42, 0.22);

  --tq-focus-ring: 0 0 0 4px rgba(250, 101, 42, 0.16);
  --tq-focus-color: var(--tq-brand-navy-strong);
  --tq-shadow-sm: 0 10px 28px rgba(7, 20, 42, 0.09);
  --tq-shadow: 0 24px 70px rgba(7, 20, 42, 0.15);
  --tq-shadow-deep: 0 42px 100px rgba(4, 12, 26, 0.28);
  --tq-radius-sm: 12px;
  --tq-radius-md: 22px;
  --tq-radius-lg: 30px;
}

html[data-theme-resolved="dark"] {
  --tq-surface-page: #07121E;
  --tq-surface-default: #0B1220;
  --tq-surface-subtle: #0B1220;
  --tq-surface-raised: #142737;
  --tq-surface-elevated: #183247;
  --tq-surface-inverse: #F8FAFC;
  --tq-surface-hover: #183247;
  --tq-surface-active: #183247;
  --tq-surface-selected: rgba(250, 101, 42, 0.12);

  --tq-border-subtle: #2E455C;
  --tq-border-muted: #37516A;
  --tq-border-strong: #5B788E;
  --tq-border-focus: rgba(250, 101, 42, 0.38);

  --tq-text-primary: #F4F8FB;
  --tq-text-secondary: #D5E3F1;
  --tq-text-muted: #A8BDD2;
  --tq-text-inverse: #0B1220;
  --tq-text-link: #FFB48B;
  --tq-text-on-brand: #F4F8FB;

  --tq-brand-navy: #0B1220;
  --tq-brand-navy-strong: #142737;
  --tq-brand-navy-soft: #183247;
  --tq-brand-orange: #FA652A;
  --tq-brand-orange-strong: #FF845E;
  --tq-brand-orange-active: #E65B27;
  --tq-brand-orange-soft: rgba(250, 101, 42, 0.14);
  --tq-border-on-brand: var(--tq-border-subtle);
  --tq-focus-color: var(--tq-brand-orange-strong);
  --tq-brand-cyan: #31C9D7;
  --tq-success: #3BD89A;
  --tq-danger: #F08D8D;

  --tq-action-primary-contrast: #0B1220;
  --tq-action-primary-shadow: rgba(250, 101, 42, 0.30);
}
