/* TrueDEM Portal — generated from tokens.json by tools/Build-DesignTokens.ps1. Do not edit by hand. */

:root, [data-theme="light"] {
    --td-primary: #0a82c4;
    --td-primary-hover: #086ba3;
    --td-primary-soft: #e3f2fb;
    --td-on-primary: #ffffff;
    --td-navy: #0a2540;
    --td-accent-cyan: #00b3d6;
    --td-ink: #2c3a4b;
    --td-ink-soft: #6b7a8d;
    --td-ink-faint: #93a1b1;
    --td-surface: #ffffff;
    --td-surface-alt: #f5f8fb;
    --td-border: #e3e9f0;
    --td-status-healthy: #2e9e5b;
    --td-status-advisory: #e6a817;
    --td-status-degraded: #e8722a;
    --td-status-outage: #d64545;
    --td-map-sea: #eaf1f8;
    --td-map-land: #c9d6e3;
    --td-map-coast: #ffffff;
    --td-hero-from: #0a2540;
    --td-hero-mid: #0d3a63;
    --td-hero-to: #0a82c4;
    --td-hero-ink: #ffffff;
    --td-hero-ink-muted: rgba(255, 255, 255, .88);
    --td-hero-glass: rgba(255, 255, 255, .12);
    --td-hero-glass-line: rgba(255, 255, 255, .28);
    --td-hero-signal: #6ef5c8;
    --td-shadow: 0 6px 24px rgba(10, 37, 64, .08);
    --td-shadow-lift: 0 12px 32px rgba(10, 37, 64, .16);
    --td-shadow-button: 0 4px 14px rgba(10, 37, 64, .18);
    --td-shadow-button-primary: 0 4px 16px rgba(10, 130, 196, .35);
    --td-shadow-glass: 0 12px 32px rgba(10, 5, 60, .25);
    color-scheme: light;
}

[data-theme="dark"] {
    --td-primary: #3fc7e6;
    --td-primary-hover: #6ad4ec;
    --td-primary-soft: rgba(63, 199, 230, .14);
    --td-on-primary: #08203a;
    --td-navy: #e8eef6;
    --td-ink: #c7d4e2;
    --td-ink-soft: #8b9bad;
    --td-ink-faint: #64748b;
    --td-surface: #141f2c;
    --td-surface-alt: #0d1620;
    --td-border: #26303d;
    --td-map-sea: #0f1a26;
    --td-map-land: #22303f;
    --td-map-coast: #2f3f51;
    --td-shadow: 0 6px 24px rgba(0, 0, 0, .45);
    --td-shadow-lift: 0 12px 32px rgba(0, 0, 0, .55);
    --td-shadow-button: 0 4px 14px rgba(0, 0, 0, .5);
    --td-shadow-button-primary: 0 4px 16px rgba(63, 199, 230, .35);
    color-scheme: dark;
}

:root {
    --td-space-1: 0.25rem;
    --td-space-2: 0.5rem;
    --td-space-3: 0.75rem;
    --td-space-4: 1rem;
    --td-space-5: 1.25rem;
    --td-space-6: 1.5rem;
    --td-space-8: 2rem;
    --td-space-10: 2.5rem;
    --td-radius-sm: 6px;
    --td-radius: 10px;
    --td-radius-glass: 14px;
    --td-radius-pill: 999px;
    --td-radius-round: 50%;
    --td-page-max: 1400px;
    --td-hero-max: 780px;
    --td-lede-max: 640px;
    --td-drawer-width: 240px;
    --td-drawer-mini: 48px;
    --font-sans: "Segoe UI", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
}

.td-type-hero-title {
    font-family: var(--font-sans);
    font-size: 2.4rem;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.td-type-hero-lede {
    font-family: var(--font-sans);
    font-size: 1.1rem;
    line-height: 1.6;
    font-weight: 400;
}

.td-type-page-title {
    font-family: var(--font-sans);
    font-size: 1.5rem;
    font-weight: 700;
}

.td-type-section-title {
    font-family: var(--font-sans);
    font-size: 1.35rem;
    font-weight: 700;
}

.td-type-subsection-title {
    font-family: var(--font-sans);
    font-size: 1.1rem;
    font-weight: 700;
}

.td-type-card-title {
    font-family: var(--font-sans);
    font-size: .95rem;
    font-weight: 700;
}

.td-type-body {
    font-family: var(--font-sans);
    font-size: 1rem;
    font-weight: 400;
}

.td-type-description {
    font-family: var(--font-sans);
    font-size: .875rem;
    line-height: 1.4;
    font-weight: 400;
}

.td-type-ui {
    font-family: var(--font-sans);
    font-size: .875rem;
    line-height: 1.4285714286;
    font-weight: 400;
}

.td-type-caption {
    font-family: var(--font-sans);
    font-size: .8rem;
    font-weight: 400;
}

.td-type-stat-value {
    font-family: var(--font-sans);
    font-size: 1.6rem;
    line-height: 1.1;
    font-weight: 700;
}

.td-type-status-label {
    font-family: var(--font-sans);
    font-size: .9rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.td-type-overline {
    font-family: var(--font-sans);
    font-size: .8rem;
    font-weight: 700;
    letter-spacing: .06em;
}

.td-type-overline-sm {
    font-family: var(--font-sans);
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .06em;
}

.td-type-stat-label {
    font-family: var(--font-sans);
    font-size: .75rem;
    font-weight: 400;
    letter-spacing: .05em;
}

.td-type-tag {
    font-family: var(--font-sans);
    font-size: .7rem;
    font-weight: 400;
}
