:root {
  color-scheme: light;
  --tp-font-sans: Inter, Aptos, "Segoe UI", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --tp-ink: #101d36;
  --tp-ink-strong: #091326;
  --tp-ink-soft: #263754;
  --tp-canvas: #f3f5f8;
  --tp-surface: #ffffff;
  --tp-surface-muted: #f8f9fb;
  --tp-surface-blue: #f2f5ff;
  --tp-border: #dfe4ec;
  --tp-border-strong: #c8d0dc;
  --tp-text: #172239;
  --tp-muted: #667085;
  --tp-faint: #8b95a7;
  --tp-primary: #335cff;
  --tp-primary-hover: #2448d8;
  --tp-primary-soft: #e9edff;
  --tp-ticket: #f2b84b;
  --tp-ticket-soft: #fff5da;
  --tp-success: #13795b;
  --tp-success-bg: #e8f6f0;
  --tp-warning: #925f0a;
  --tp-warning-bg: #fff3d2;
  --tp-danger: #b4233b;
  --tp-danger-bg: #fcebee;
  --tp-info: #2563a8;
  --tp-info-bg: #eaf3ff;
  --tp-radius-sm: 6px;
  --tp-radius: 9px;
  --tp-radius-lg: 14px;
  --tp-shadow-sm: 0 1px 2px rgba(16, 29, 54, 0.05);
  --tp-shadow-md: 0 12px 30px rgba(16, 29, 54, 0.08);
  --tp-rail-width: 88px;
  --tp-topbar-height: 72px;
  --tp-space-1: 0.25rem;
  --tp-space-2: 0.5rem;
  --tp-space-3: 0.75rem;
  --tp-space-4: 1rem;
  --tp-space-5: 1.25rem;
  --tp-space-6: 1.5rem;
  --tp-space-8: 2rem;
}

html,
body {
  min-height: 100%;
}

html {
  background: var(--tp-canvas);
}

body {
  color: var(--tp-text);
  font-family: var(--tp-font-sans);
  font-size: 0.925rem;
  letter-spacing: -0.008em;
}

::selection {
  background: #d8e0ff;
  color: var(--tp-ink-strong);
}

a {
  color: var(--tp-primary);
}

a:hover {
  color: var(--tp-primary-hover);
}

:focus-visible {
  outline: 3px solid rgba(51, 92, 255, 0.24);
  outline-offset: 2px;
}
