/* NOLA.Show tokens, generated from tokens.json. Edit tokens.json, then regenerate. */
@font-face { font-family: "Archivo"; src: url("fonts/archivo-latin-wdth-normal.woff2") format("woff2"); font-weight: 100 900; font-stretch: 62% 125%; font-style: normal; font-display: swap; }

:root, [data-theme="white"] {
  --brand-navy: #000066;
  --brand-amber: #FFB81C;
  --brand-cream: #F4F1EA;
  --brand-white: #FFFFFF;
  --ground: var(--brand-white);
  --ground-inverse: var(--brand-navy);
  --surface-raised: #FFFFFF;
  --surface-block: #EBEBF3;
  --surface-row: #FFFFFF;
  --surface-row-alt: #F7F7FA;
  --surface-head: #F5F5F9;
  --surface-hover: #DBDBEA;
  --early-morning: #FFE3A3;
  --pill: #EBEBF3;
  --pill-line: #EBEBF3;
  --field: #FFFFFF;
  --field-line: rgba(0, 0, 102, 0.20);
  --ink: var(--brand-navy);
  --ink-muted: #3D3D7A;
  --accent: var(--brand-amber);
  --hairline: rgba(0, 0, 102, 0.16);
  --grid-line: rgba(0, 0, 102, 0.12);
  --focus-ring: var(--brand-navy);
  --status-success: #1E7A4A;
  --status-warning: #A34F00;
  --status-error: #9E1C17;
  --status-info: #1F4FBF;
  --status-live: var(--brand-amber);
}

[data-theme="navy"] {
  --ground: var(--brand-navy);
  --ground-inverse: var(--brand-white);
  --surface-raised: #0B0B7A;
  --surface-block: #1A1A75;
  --surface-row: #0B0B7A;
  --surface-row-alt: var(--brand-navy);
  --surface-head: #0B0B7A;
  --surface-hover: #29297F;
  --early-morning: #3D2C54;
  --pill: #1A1A75;
  --pill-line: rgba(255, 255, 255, 0.20);
  --field: #0B0B7A;
  --field-line: rgba(255, 255, 255, 0.28);
  --ink: var(--brand-white);
  --ink-muted: #B8B8D4;
  --hairline: rgba(255, 255, 255, 0.16);
  --grid-line: rgba(255, 255, 255, 0.14);
  --focus-ring: var(--brand-amber);
  --status-success: #4ADE9A;
  --status-warning: #FFA552;
  --status-error: #FF6B78;
  --status-info: #8FB8FF;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="white"]) {
    --ground: var(--brand-navy);
    --ground-inverse: var(--brand-white);
    --surface-raised: #0B0B7A;
    --surface-block: #1A1A75;
    --surface-row: #0B0B7A;
    --surface-row-alt: var(--brand-navy);
    --surface-head: #0B0B7A;
    --surface-hover: #29297F;
    --early-morning: #3D2C54;
    --pill: #1A1A75;
    --pill-line: rgba(255, 255, 255, 0.20);
    --field: #0B0B7A;
    --field-line: rgba(255, 255, 255, 0.28);
    --ink: var(--brand-white);
    --ink-muted: #B8B8D4;
    --hairline: rgba(255, 255, 255, 0.16);
    --grid-line: rgba(255, 255, 255, 0.14);
    --focus-ring: var(--brand-amber);
    --status-success: #4ADE9A;
    --status-warning: #FFA552;
    --status-error: #FF6B78;
    --status-info: #8FB8FF;
  }
}

:root {
  --font-display: Archivo, "Archivo Black", system-ui, sans-serif;
  --font-sans: Archivo, system-ui, sans-serif;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --radius-none: 0;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-full: 9999px;
}

.ns-display-xl { font-family: var(--font-display); font-size: 72px; line-height: 0.95; font-weight: 900; letter-spacing: -0.05em; }
.ns-display-lg { font-family: var(--font-display); font-size: 48px; line-height: 1; font-weight: 900; letter-spacing: -0.05em; }
.ns-display-md { font-family: var(--font-display); font-size: 32px; line-height: 1.05; font-weight: 900; letter-spacing: -0.04em; }
.ns-day-head { font-family: var(--font-display); font-size: 20px; line-height: 24px; font-weight: 900; letter-spacing: -0.03em; }
.ns-title { font-family: var(--font-sans); font-size: 20px; line-height: 26px; font-weight: 700; }
.ns-listing-title { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 700; }
.ns-listing-title-compact { font-family: var(--font-sans); font-size: 15px; line-height: 22px; font-weight: 700; }
.ns-prose { font-family: var(--font-sans); font-size: 17px; line-height: 28px; font-weight: 400; }
.ns-body { font-family: var(--font-sans); font-size: 16px; line-height: 24px; font-weight: 400; }
.ns-small { font-family: var(--font-sans); font-size: 14px; line-height: 20px; font-weight: 400; }
.ns-control { font-family: var(--font-sans); font-size: 13px; line-height: 16px; font-weight: 700; }
.ns-label { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 700; letter-spacing: 0.02em; text-transform: uppercase; }
