:root{--teal-50:#e9f5ef;--teal-100:#cdeadf;--teal-200:#9ed3bc;--teal-300:#63b596;--teal-500:#1f7a5c;--teal-600:#17654b;--teal-700:#12513c;--teal-800:#103f30;--slate-0:#fff;--slate-25:#f7faf8;--slate-50:#eef3f0;--slate-100:#dfe7e3;--slate-300:#a9bbb3;--slate-500:#5c7269;--slate-700:#33463f;--slate-800:#22322c;--slate-900:#16302b;--slate-950:#0f1614;--green-fg:#17654b;--green-bg:#e3f2ec;--amber-fg:#b06a12;--amber-bg:#f6ebd9;--red-fg:#b3261e;--red-bg:#fbe7e5;--gold-fg:#8a6d16;--gold-bg:#fbf3d7;--green-fg-d:#63c79e;--green-bg-d:#16332a;--amber-fg-d:#e0a24a;--amber-bg-d:#3a2c15;--red-fg-d:#f28b82;--red-bg-d:#3a1e1c;--gold-fg-d:#d9bd5c;--gold-bg-d:#322913;--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:var(--slate-25);--surface:var(--slate-0);--surface-sunk:var(--slate-50);--overlay:var(--slate-0);--surface-container-low:#fbfdfc;--surface-container:var(--slate-50);--surface-container-high:var(--slate-100);--fg:var(--slate-900);--fg-muted:var(--slate-500);--fg-subtle:var(--slate-300);--fg-on-brand:#fff;--border:var(--slate-100);--border-strong:var(--slate-300);--brand:var(--teal-500);--brand-hover:var(--teal-600);--brand-active:var(--teal-700);--brand-subtle:var(--teal-50);--ring:var(--teal-500);--state-hover:color-mix(in srgb, var(--brand) 8%, transparent);--state-focus:color-mix(in srgb, var(--brand) 12%, transparent);--state-pressed:color-mix(in srgb, var(--brand) 12%, transparent);--pass:var(--green-fg);--pass-bg:var(--green-bg);--warn:var(--amber-fg);--warn-bg:var(--amber-bg);--danger:var(--red-fg);--danger-bg:var(--red-bg);--honour:var(--gold-fg);--honour-bg:var(--gold-bg);--shadow-level-1:0 1px 2px #10302b1a, 0 1px 3px 1px #10302b0f;--shadow-level-2:0 2px 6px 2px #10302b1a, 0 1px 2px #10302b14;--shadow-level-3:0 4px 12px 3px #10302b1f, 0 2px 4px #10302b14;--shadow-card:var(--shadow-level-1)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--slate-950);--surface:#16211e;--surface-sunk:#0d1311;--overlay:#1b2825;--surface-container-low:#182420;--surface-container:#1d2a26;--surface-container-high:#25352f;--fg:#e8f0ec;--fg-muted:#9db0a8;--fg-subtle:#5f736b;--fg-on-brand:#06110d;--border:#2a3a35;--border-strong:#3c514a;--brand:var(--teal-300);--brand-hover:#7cc4a6;--brand-active:#98d3bd;--brand-subtle:#13332a;--ring:var(--teal-300);--state-hover:color-mix(in srgb, var(--brand) 8%, transparent);--state-focus:color-mix(in srgb, var(--brand) 12%, transparent);--state-pressed:color-mix(in srgb, var(--brand) 12%, transparent);--pass:var(--green-fg-d);--pass-bg:var(--green-bg-d);--warn:var(--amber-fg-d);--warn-bg:var(--amber-bg-d);--danger:var(--red-fg-d);--danger-bg:var(--red-bg-d);--honour:var(--gold-fg-d);--honour-bg:var(--gold-bg-d);--shadow-level-1:0 1px 3px #00000073;--shadow-level-2:0 3px 8px #00000080;--shadow-level-3:0 6px 16px #0000008c;--shadow-card:var(--shadow-level-1)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:var(--slate-950);--surface:#16211e;--surface-sunk:#0d1311;--overlay:#1b2825;--surface-container-low:#182420;--surface-container:#1d2a26;--surface-container-high:#25352f;--fg:#e8f0ec;--fg-muted:#9db0a8;--fg-subtle:#5f736b;--fg-on-brand:#06110d;--border:#2a3a35;--border-strong:#3c514a;--brand:var(--teal-300);--brand-hover:#7cc4a6;--brand-active:#98d3bd;--brand-subtle:#13332a;--ring:var(--teal-300);--pass:var(--green-fg-d);--pass-bg:var(--green-bg-d);--warn:var(--amber-fg-d);--warn-bg:var(--amber-bg-d);--danger:var(--red-fg-d);--danger-bg:var(--red-bg-d);--honour:var(--gold-fg-d);--honour-bg:var(--gold-bg-d);--state-hover:color-mix(in srgb, var(--brand) 8%, transparent);--state-focus:color-mix(in srgb, var(--brand) 12%, transparent);--state-pressed:color-mix(in srgb, var(--brand) 12%, transparent);--shadow-level-1:0 1px 3px #00000073;--shadow-level-2:0 3px 8px #00000080;--shadow-level-3:0 6px 16px #0000008c;--shadow-card:var(--shadow-level-1)}}@media (prefers-contrast:more){:root{--fg-muted:var(--slate-700);--fg-subtle:var(--slate-500);--border:var(--slate-500);--border-strong:var(--slate-700);--state-hover:color-mix(in srgb, var(--brand) 16%, transparent);--state-focus:color-mix(in srgb, var(--brand) 20%, transparent);--state-pressed:color-mix(in srgb, var(--brand) 24%, transparent)}:root[data-theme=dark]{--fg-muted:#c7d4cf;--fg-subtle:#9db0a8;--border:#789087;--border-strong:#c7d4cf}@media (prefers-color-scheme:dark){:root:not([data-theme]){--fg-muted:#c7d4cf;--fg-subtle:#9db0a8;--border:#789087;--border-strong:#c7d4cf}}}:root{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;--font-num:var(--font-sans);--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--text-caption:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--leading-tight:1.2;--leading-normal:1.55;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--tracking-heading:-.01em;--tracking-tight:-.02em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--motion:.15s}@media (prefers-reduced-motion:reduce){:root{--motion:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);min-height:100dvh;color:var(--fg);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);font-weight:var(--weight-regular);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--motion) ease, color var(--motion) ease;margin:0}h1,h2,h3,h4{margin:0 0 var(--space-3);line-height:var(--leading-tight);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-heading);color:var(--fg);text-wrap:balance}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-base);font-weight:var(--weight-medium)}p{margin:0 0 var(--space-4);max-width:68ch}a{color:var(--brand);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--brand-hover)}.skip-link{z-index:2000;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--surface);color:var(--fg);box-shadow:var(--shadow-card);transform:translateY(calc(-100% - var(--space-4)));transition:transform var(--motion-fast) var(--ease-standard);position:fixed;inset-block-start:var(--space-2);inset-inline-start:var(--space-2)}.skip-link:focus-visible{transform:translateY(0)}small{font-size:var(--text-sm)}code,kbd,samp{font-family:var(--font-mono);font-size:.9em}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:var(--radius-sm)}@media (prefers-contrast:more){:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline-offset:3px;outline-width:3px}}input,select,textarea,button{font-family:inherit;font-size:var(--text-base);line-height:var(--leading-normal);color:inherit}input[inputmode=numeric],input[inputmode=decimal],.numeric{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:var(--space-5)}.badge{align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font-size:var(--text-caption);font-weight:var(--weight-semibold);white-space:nowrap;padding:.15rem .6rem;line-height:1.4;display:inline-flex}.badge--pass{background:var(--pass-bg);color:var(--pass)}.badge--warn{background:var(--warn-bg);color:var(--warn)}.badge--danger{background:var(--danger-bg);color:var(--danger)}.badge--honour{background:var(--honour-bg);color:var(--honour)}.figure{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;font-weight:var(--weight-semibold);white-space:nowrap}.figure--display{font-size:var(--text-3xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}
