:root{--fp-pylon-50:#fff2e9;--fp-pylon-100:#ffdcc8;--fp-pylon-200:#ffba92;--fp-pylon-300:#ff965a;--fp-pylon-400:#fb7b2f;--fp-pylon-500:#f65f0a;--fp-pylon-600:#d24e05;--fp-pylon-700:#a63d05;--fp-pylon-800:#7a2d05;--fp-pylon-900:#4d1c03;--fp-navy-50:#eef3f9;--fp-navy-100:#d8e2ef;--fp-navy-200:#b2c5dd;--fp-navy-300:#849fc2;--fp-navy-400:#557aa3;--fp-navy-500:#2f5a88;--fp-navy-600:#1b4675;--fp-navy-700:#0c3462;--fp-navy-800:#08264a;--fp-navy-900:#051a33;--fp-gold-100:#fff0cc;--fp-gold-500:#faa50d;--fp-gold-700:#b5750a;--fp-ink-0:#fff;--fp-ink-25:#f9fafc;--fp-ink-50:#f3f5f9;--fp-ink-100:#e7ebf1;--fp-ink-200:#d3dae4;--fp-ink-300:#b1bbc9;--fp-ink-400:#8795a6;--fp-ink-500:#606f83;--fp-ink-600:#475567;--fp-ink-700:#333f50;--fp-ink-800:#212b3a;--fp-ink-900:#141d2b;--fp-ink-950:#0b111c;--fp-turf-100:#dbede3;--fp-turf-500:#2c6b4c;--fp-turf-700:#1d4a33;--fp-whistle-100:#fbf0d9;--fp-whistle-500:#b8801f;--fp-whistle-700:#855a12;--fp-danger-100:#f9dde1;--fp-danger-500:#a81e32;--fp-danger-700:#7a1424;--fp-live-100:#e0ebf3;--fp-live-500:#3d6b8c;--fp-live-700:#2a4c65;--fp-bg:var(--fp-ink-50);--fp-bg-raised:var(--fp-ink-0);--fp-bg-sunken:var(--fp-ink-100);--fp-bg-inverse:var(--fp-navy-700);--fp-text:var(--fp-ink-900);--fp-text-muted:var(--fp-ink-500);--fp-text-subtle:var(--fp-ink-400);--fp-text-inverse:var(--fp-ink-25);--fp-text-accent:var(--fp-pylon-700);--fp-text-display:var(--fp-navy-700);--fp-border:var(--fp-ink-200);--fp-border-strong:var(--fp-ink-300);--fp-border-accent:var(--fp-pylon-500);--fp-accent:var(--fp-pylon-600);--fp-accent-hover:var(--fp-pylon-700);--fp-accent-text:var(--fp-ink-0);--fp-focus-ring:var(--fp-pylon-500);--fp-font-display:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--fp-font-body:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--fp-font-mono:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--fp-font-code:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--fp-text-2xs:.6875rem;--fp-text-xs:.75rem;--fp-text-sm:.875rem;--fp-text-md:1rem;--fp-text-lg:1.125rem;--fp-text-xl:1.375rem;--fp-text-2xl:1.75rem;--fp-text-3xl:2.25rem;--fp-text-4xl:3rem;--fp-text-5xl:4rem;--fp-weight-regular:400;--fp-weight-medium:500;--fp-weight-semi:600;--fp-weight-bold:700;--fp-leading-tight:1.1;--fp-leading-snug:1.35;--fp-leading-normal:1.55;--fp-tracking-label:.11em;--fp-tracking-tight:-.01em;--fp-space-1:.25rem;--fp-space-2:.5rem;--fp-space-3:.75rem;--fp-space-4:1rem;--fp-space-5:1.5rem;--fp-space-6:2rem;--fp-space-7:3rem;--fp-space-8:4rem;--fp-radius-sm:8px;--fp-radius-md:12px;--fp-radius-lg:16px;--fp-radius-xl:18px;--fp-radius-2xl:22px;--fp-radius-pill:999px;--fp-shadow-sm:0 1px 2px #141d180f;--fp-shadow-md:0 2px 8px #141d1817;--fp-shadow-lg:0 8px 28px #141d1821;--fp-touch-min:44px;--fp-touch-score:56px;--fp-duration-fast:.12s;--fp-duration-base:.2s;--fp-ease:cubic-bezier(.2, 0, .15, 1)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--fp-bg:var(--fp-ink-950);--fp-bg-raised:var(--fp-ink-800);--fp-bg-sunken:#070b12;--fp-bg-inverse:var(--fp-ink-50);--fp-text:var(--fp-ink-50);--fp-text-muted:var(--fp-ink-400);--fp-text-subtle:var(--fp-ink-500);--fp-text-inverse:var(--fp-ink-900);--fp-text-accent:var(--fp-pylon-300);--fp-text-display:var(--fp-ink-25);--fp-border:#263242;--fp-border-strong:#384659;--fp-border-accent:var(--fp-pylon-400);--fp-accent:var(--fp-pylon-500);--fp-accent-hover:var(--fp-pylon-400);--fp-accent-text:var(--fp-ink-950);--fp-turf-100:#17301f;--fp-turf-500:#52ae7f;--fp-turf-700:#7fcba3;--fp-whistle-100:#33280e;--fp-whistle-500:#d8a445;--fp-whistle-700:#e8c078;--fp-danger-100:#35141c;--fp-danger-500:#e2596e;--fp-danger-700:#ef8395;--fp-live-100:#16252f;--fp-live-500:#6ba3c7;--fp-live-700:#97c2dc;--fp-shadow-sm:0 1px 2px #0006;--fp-shadow-md:0 2px 8px #00000080;--fp-shadow-lg:0 8px 28px #0009}}:root[data-theme=dark]{--fp-bg:var(--fp-ink-950);--fp-bg-raised:var(--fp-ink-800);--fp-bg-sunken:#070b12;--fp-bg-inverse:var(--fp-ink-50);--fp-text:var(--fp-ink-50);--fp-text-muted:var(--fp-ink-400);--fp-text-subtle:var(--fp-ink-500);--fp-text-inverse:var(--fp-ink-900);--fp-text-accent:var(--fp-pylon-300);--fp-text-display:var(--fp-ink-25);--fp-border:#263242;--fp-border-strong:#384659;--fp-border-accent:var(--fp-pylon-400);--fp-accent:var(--fp-pylon-500);--fp-accent-hover:var(--fp-pylon-400);--fp-accent-text:var(--fp-ink-950);--fp-turf-100:#17301f;--fp-turf-500:#52ae7f;--fp-turf-700:#7fcba3;--fp-whistle-100:#33280e;--fp-whistle-500:#d8a445;--fp-whistle-700:#e8c078;--fp-danger-100:#35141c;--fp-danger-500:#e2596e;--fp-danger-700:#ef8395;--fp-live-100:#16252f;--fp-live-500:#6ba3c7;--fp-live-700:#97c2dc;--fp-shadow-sm:0 1px 2px #0006;--fp-shadow-md:0 2px 8px #00000080;--fp-shadow-lg:0 8px 28px #0009}*,:before,:after{box-sizing:border-box}body{background:var(--fp-bg);color:var(--fp-text);font-family:var(--fp-font-body);font-size:var(--fp-text-md);line-height:var(--fp-leading-normal);-webkit-font-smoothing:antialiased;margin:0}.fp-num,table td,table th,.fp-score,.fp-stat{font-variant-numeric:tabular-nums}:focus-visible{outline:2px solid var(--fp-focus-ring);outline-offset:2px}.fp-display{font-family:var(--fp-font-display);font-weight:var(--fp-weight-bold);text-transform:uppercase;line-height:var(--fp-leading-tight);letter-spacing:var(--fp-tracking-tight);text-wrap:balance}.fp-label{font-family:var(--fp-font-mono);font-size:var(--fp-text-2xs);font-weight:var(--fp-weight-semi);letter-spacing:var(--fp-tracking-label);text-transform:uppercase;color:var(--fp-text-muted)}.fp-btn{justify-content:center;align-items:center;gap:var(--fp-space-2);min-height:var(--fp-touch-min);padding:0 var(--fp-space-4);border-radius:var(--fp-radius-md);font-family:var(--fp-font-body);font-size:var(--fp-text-sm);font-weight:var(--fp-weight-semi);cursor:pointer;transition:background var(--fp-duration-fast) var(--fp-ease), border-color var(--fp-duration-fast) var(--fp-ease);border:1px solid #0000;display:inline-flex}.fp-btn--primary{background:var(--fp-accent);color:var(--fp-accent-text)}.fp-btn--primary:hover{background:var(--fp-accent-hover)}.fp-btn--secondary{background:var(--fp-bg-raised);color:var(--fp-text);border-color:var(--fp-border-strong)}.fp-btn--secondary:hover{border-color:var(--fp-text-muted)}.fp-btn--ghost{color:var(--fp-text-muted);background:0 0}.fp-btn--ghost:hover{color:var(--fp-text);background:var(--fp-bg-sunken)}.fp-btn--danger{background:var(--fp-danger-500);color:#fff}.fp-btn:disabled{opacity:.45;cursor:not-allowed}.fp-btn--score{min-height:var(--fp-touch-score);font-family:var(--fp-font-display);font-size:var(--fp-text-xl);text-transform:uppercase;padding:0 var(--fp-space-5)}.fp-pill{align-items:center;gap:var(--fp-space-1);border-radius:var(--fp-radius-pill);font-size:var(--fp-text-xs);font-weight:var(--fp-weight-semi);white-space:nowrap;padding:.2em .6em;display:inline-flex}.fp-pill--ok{background:var(--fp-turf-100);color:var(--fp-turf-700)}.fp-pill--warn{background:var(--fp-whistle-100);color:var(--fp-whistle-700)}.fp-pill--danger{background:var(--fp-danger-100);color:var(--fp-danger-700)}.fp-pill--live{background:var(--fp-live-100);color:var(--fp-live-700)}.fp-pill--neutral{background:var(--fp-bg-sunken);color:var(--fp-text-muted)}.fp-surface{background:var(--fp-bg-raised);border:1px solid var(--fp-border);border-radius:var(--fp-radius-lg)}.fp-surface--flat{border-left:0;border-right:0;border-radius:0}.fp-input{width:100%;min-height:var(--fp-touch-min);padding:var(--fp-space-2) var(--fp-space-3);background:var(--fp-bg-raised);color:var(--fp-text);border:1px solid var(--fp-border-strong);border-radius:var(--fp-radius-md);font-family:var(--fp-font-body);font-size:var(--fp-text-md)}.fp-input::placeholder{color:var(--fp-text-subtle)}.fp-input:focus{border-color:var(--fp-accent)}.fp-input[aria-invalid=true]{border-color:var(--fp-danger-500)}.fp-table{border-collapse:collapse;width:100%;font-size:var(--fp-text-sm)}.fp-table thead th{font-family:var(--fp-font-mono);font-size:var(--fp-text-2xs);font-weight:var(--fp-weight-semi);letter-spacing:var(--fp-tracking-label);text-transform:uppercase;color:var(--fp-text-muted);text-align:left;padding:var(--fp-space-2) var(--fp-space-3);border-bottom:1.5px solid var(--fp-border-strong);white-space:nowrap}.fp-table tbody td{padding:var(--fp-space-3);border-bottom:1px solid var(--fp-border)}.fp-table tbody tr:last-child td{border-bottom:none}.fp-table .fp-col-num{text-align:right}.fp-table-scroll{overflow-x:auto}@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms!important;animation-duration:.01ms!important}}
