

:root[data-theme="afterimage"] {
  --ux-bg: #0A0611;
  --ux-surface: #171024;
  --ux-raised: #1e1533;
  --ux-overlay: rgba(6,4,10,.92);
  --ux-code-bg: #0d0817;
  --ux-ink: #F4EFFB;
  --ux-ink-soft: #d7cae8;
  --ux-ink-muted: #B39BD8;
  --ux-code-ink: #d7cae8;
  --ux-on-brand: #ffffff;
  --ux-brand: #FF2FB9;
  --ux-brand-hover: #e0219f;
  --ux-brand-ink: #ff6fce;
  --ux-brand-tint: rgba(255,47,185,.13);
  --ux-accent: #7A2BFF;
  --ux-accent-ink: #c4b5fd;
  --ux-accent-tint: rgba(122,43,255,.12);
  --ux-grad: linear-gradient(120deg,#FF2FB9,#7A2BFF);
  --ux-glass: rgba(10,6,17,.82);
  --ux-hairline: linear-gradient(90deg,transparent,rgba(255,47,185,.4),rgba(122,43,255,.4),transparent);
  --ux-line: rgba(179,155,216,.14);
  --ux-line-strong: rgba(179,155,216,.30);
  --ux-focus: #FF2FB9;
  --ux-focus-ring: 0 0 0 3px rgba(255,47,185,.45);
  --ux-ok: #35D69B;
  --ux-ok-tint: rgba(53,214,155,.13);
  --ux-warn: #FFC24B;
  --ux-warn-tint: rgba(255,194,75,.13);
  --ux-danger: #FF5C72;
  --ux-danger-tint: rgba(255,92,114,.13);
  --ux-info: #8AA2FF;
  --ux-info-tint: rgba(138,162,255,.13);
  --ux-band-a: #1a9e5f;
  --ux-band-b: #5fae3a;
  --ux-band-c: #c99a1e;
  --ux-band-d: #d9772b;
  --ux-band-e: #d4552e;
  --ux-band-f: #c23b3b;
  --ux-radius-xs: 6px;
  --ux-radius-sm: 10px;
  --ux-radius-md: 14px;
  --ux-radius-lg: 18px;
  --ux-radius-pill: 99px;
  --ux-space-1: 4px;
  --ux-space-2: 8px;
  --ux-space-3: 12px;
  --ux-space-4: 16px;
  --ux-space-5: 24px;
  --ux-space-6: 34px;
  --ux-space-7: 48px;
  --ux-space-8: 64px;
  --ux-text-display: clamp(30px,6vw,48px);
  --ux-text-h1: clamp(26px,4.5vw,44px);
  --ux-text-h2: clamp(20px,3vw,27px);
  --ux-text-h3: 18px;
  --ux-text-body: 16px;
  --ux-text-small: 14px;
  --ux-text-caption: 12px;
  --ux-text-micro: 11px;
  --ux-weight-normal: 400;
  --ux-weight-medium: 500;
  --ux-weight-semibold: 600;
  --ux-weight-bold: 700;
  --ux-weight-heavy: 800;
  --ux-leading-solid: 1;
  --ux-leading-tight: 1.15;
  --ux-leading-snug: 1.4;
  --ux-leading-normal: 1.55;
  --ux-leading-loose: 1.7;
  --ux-track-tight: -.02em;
  --ux-track-snug: -.01em;
  --ux-track-normal: 0;
  --ux-track-wide: .04em;
  --ux-track-caps: .12em;
  --ux-track-kicker: .2em;
  --ux-font-sans: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-font-mono: ui-monospace,'SF Mono',Menlo,monospace;
  --ux-font-display: -apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-shadow-sm: 0 6px 24px rgba(0,0,0,.28);
  --ux-shadow-md: 0 12px 40px rgba(0,0,0,.36);
  --ux-shadow-lg: 0 24px 80px rgba(0,0,0,.5);
  --ux-glow: 0 0 44px rgba(255,47,185,.35);
  --ux-dur-fast: 120ms;
  --ux-dur-base: 200ms;
  --ux-dur-slow: 320ms;
  --ux-ease-out: cubic-bezier(.2,.7,.2,1);
  --ux-ease-in-out: cubic-bezier(.65,.05,.35,.95);
  --ux-z-raised: 10;
  --ux-z-sticky: 100;
  --ux-z-overlay: 1000;
  --ux-z-modal: 1100;
  --ux-z-toast: 1200;
  --ux-maxw: 1120px;
  --ux-maxw-narrow: 720px;
  --ux-maxw-wide: 1360px;
}
:root[data-theme="paper"] {
  --ux-bg: #FBFAF8;
  --ux-surface: #FFFFFF;
  --ux-raised: #FFFFFF;
  --ux-overlay: rgba(22,22,26,.86);
  --ux-code-bg: #F3F1EC;
  --ux-ink: #16161A;
  --ux-ink-soft: #3E3E46;
  --ux-ink-muted: #6B6B76;
  --ux-code-ink: #3E3E46;
  --ux-on-brand: #ffffff;
  --ux-brand: #C2087F;
  --ux-brand-hover: #9c0665;
  --ux-brand-ink: #B40776;
  --ux-brand-tint: rgba(194,8,127,.10);
  --ux-accent: #5b21b6;
  --ux-accent-ink: #5b21b6;
  --ux-accent-tint: rgba(91,33,182,.10);
  --ux-grad: linear-gradient(120deg,#C2087F,#9c0665);
  --ux-glass: rgba(251,250,248,.86);
  --ux-hairline: linear-gradient(90deg,transparent,#C2087F,transparent);
  --ux-line: #E7E4DE;
  --ux-line-strong: #D8D4CC;
  --ux-focus: #C2087F;
  --ux-focus-ring: 0 0 0 3px rgba(194,8,127,.35);
  --ux-ok: #0F7A53;
  --ux-ok-tint: rgba(15,122,83,.10);
  --ux-warn: #8A5A06;
  --ux-warn-tint: rgba(138,90,6,.10);
  --ux-danger: #B3243C;
  --ux-danger-tint: rgba(179,36,60,.09);
  --ux-info: #2563EB;
  --ux-info-tint: rgba(37,99,235,.10);
  --ux-band-a: #0F7A53;
  --ux-band-b: #3F7A1F;
  --ux-band-c: #8A5A06;
  --ux-band-d: #9A4A12;
  --ux-band-e: #A6371C;
  --ux-band-f: #B3243C;
  --ux-radius-xs: 4px;
  --ux-radius-sm: 6px;
  --ux-radius-md: 10px;
  --ux-radius-lg: 14px;
  --ux-radius-pill: 99px;
  --ux-space-1: 4px;
  --ux-space-2: 8px;
  --ux-space-3: 12px;
  --ux-space-4: 16px;
  --ux-space-5: 24px;
  --ux-space-6: 34px;
  --ux-space-7: 48px;
  --ux-space-8: 64px;
  --ux-text-display: clamp(38px,6vw,68px);
  --ux-text-h1: clamp(30px,4.6vw,46px);
  --ux-text-h2: clamp(22px,3vw,31px);
  --ux-text-h3: 19px;
  --ux-text-body: 17px;
  --ux-text-small: 14.5px;
  --ux-text-caption: 12.5px;
  --ux-text-micro: 11px;
  --ux-weight-normal: 400;
  --ux-weight-medium: 500;
  --ux-weight-semibold: 600;
  --ux-weight-bold: 700;
  --ux-weight-heavy: 800;
  --ux-leading-solid: 1;
  --ux-leading-tight: 1.06;
  --ux-leading-snug: 1.4;
  --ux-leading-normal: 1.6;
  --ux-leading-loose: 1.75;
  --ux-track-tight: -.03em;
  --ux-track-snug: -.01em;
  --ux-track-normal: 0;
  --ux-track-wide: .04em;
  --ux-track-caps: .12em;
  --ux-track-kicker: .2em;
  --ux-font-sans: 'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-font-mono: 'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --ux-font-display: 'Fraunces',Georgia,'Times New Roman',serif;
  --ux-shadow-sm: 0 1px 2px rgba(22,22,26,.06);
  --ux-shadow-md: 0 10px 26px -14px rgba(22,22,26,.28);
  --ux-shadow-lg: 0 26px 60px -28px rgba(22,22,26,.40);
  --ux-glow: 0 0 0 1px rgba(194,8,127,.18);
  --ux-dur-fast: 120ms;
  --ux-dur-base: 200ms;
  --ux-dur-slow: 320ms;
  --ux-ease-out: cubic-bezier(.2,.7,.2,1);
  --ux-ease-in-out: cubic-bezier(.65,.05,.35,.95);
  --ux-z-raised: 10;
  --ux-z-sticky: 100;
  --ux-z-overlay: 1000;
  --ux-z-modal: 1100;
  --ux-z-toast: 1200;
  --ux-maxw: 1080px;
  --ux-maxw-narrow: 720px;
  --ux-maxw-wide: 1360px;
}
:root {
  --ux-bg: #0a0a0a;
  --ux-surface: #0a0a0a;
  --ux-raised: #131313;
  --ux-overlay: rgba(6,6,6,.92);
  --ux-code-bg: #131313;
  --ux-ink: #ffffff;
  --ux-ink-soft: #ffffff;
  --ux-ink-muted: rgba(255,255,255,.58);
  --ux-code-ink: #ffffff;
  --ux-on-brand: #0a0a0a;
  --ux-brand: #FF2FB9;
  --ux-brand-hover: #e0219f;
  --ux-brand-ink: #ff54c4;
  --ux-brand-tint: rgba(255,47,185,.16);
  --ux-accent: #FF2FB9;
  --ux-accent-ink: #FF2FB9;
  --ux-accent-tint: rgba(255,47,185,.12);
  --ux-grad: linear-gradient(120deg,#FF2FB9,#ff54c4);
  --ux-glass: rgba(10,10,10,.82);
  --ux-hairline: linear-gradient(90deg,transparent,#FF2FB9,transparent);
  --ux-line: rgba(255,255,255,.14);
  --ux-line-strong: rgba(255,255,255,.32);
  --ux-focus: #FF2FB9;
  --ux-focus-ring: 0 0 0 3px rgba(255,47,185,.5);
  --ux-ok: #35D69B;
  --ux-ok-tint: rgba(53,214,155,.13);
  --ux-warn: #FFC24B;
  --ux-warn-tint: rgba(255,194,75,.13);
  --ux-danger: #FF5C72;
  --ux-danger-tint: rgba(255,92,114,.13);
  --ux-info: #8AA2FF;
  --ux-info-tint: rgba(138,162,255,.13);
  --ux-band-a: #1a9e5f;
  --ux-band-b: #5fae3a;
  --ux-band-c: #c99a1e;
  --ux-band-d: #d9772b;
  --ux-band-e: #d4552e;
  --ux-band-f: #c23b3b;
  --ux-radius-xs: 6px;
  --ux-radius-sm: 10px;
  --ux-radius-md: 14px;
  --ux-radius-lg: 18px;
  --ux-radius-pill: 99px;
  --ux-space-1: 4px;
  --ux-space-2: 8px;
  --ux-space-3: 12px;
  --ux-space-4: 16px;
  --ux-space-5: 24px;
  --ux-space-6: 34px;
  --ux-space-7: 48px;
  --ux-space-8: 64px;
  --ux-text-display: clamp(34px,6.5vw,58px);
  --ux-text-h1: clamp(28px,5vw,46px);
  --ux-text-h2: clamp(20px,3vw,27px);
  --ux-text-h3: 18px;
  --ux-text-body: 16px;
  --ux-text-small: 14px;
  --ux-text-caption: 12px;
  --ux-text-micro: 11px;
  --ux-weight-normal: 400;
  --ux-weight-medium: 500;
  --ux-weight-semibold: 600;
  --ux-weight-bold: 700;
  --ux-weight-heavy: 800;
  --ux-leading-solid: 1;
  --ux-leading-tight: 1.1;
  --ux-leading-snug: 1.4;
  --ux-leading-normal: 1.55;
  --ux-leading-loose: 1.7;
  --ux-track-tight: -.03em;
  --ux-track-snug: -.01em;
  --ux-track-normal: 0;
  --ux-track-wide: .04em;
  --ux-track-caps: .12em;
  --ux-track-kicker: .2em;
  --ux-font-sans: 'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-font-mono: 'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --ux-font-display: 'Unbounded',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-shadow-sm: 0 2px 10px rgba(0,0,0,.4);
  --ux-shadow-md: 0 10px 30px rgba(0,0,0,.5);
  --ux-shadow-lg: 0 26px 70px rgba(0,0,0,.6);
  --ux-glow: 0 0 44px rgba(255,47,185,.35);
  --ux-dur-fast: 120ms;
  --ux-dur-base: 200ms;
  --ux-dur-slow: 320ms;
  --ux-ease-out: cubic-bezier(.2,.7,.2,1);
  --ux-ease-in-out: cubic-bezier(.65,.05,.35,.95);
  --ux-z-raised: 10;
  --ux-z-sticky: 100;
  --ux-z-overlay: 1000;
  --ux-z-modal: 1100;
  --ux-z-toast: 1200;
  --ux-maxw: 1120px;
  --ux-maxw-narrow: 720px;
  --ux-maxw-wide: 1360px;
}
:root[data-theme="signal"], [data-theme="signal"] {
  --ux-bg: #0a0a0a;
  --ux-surface: #0a0a0a;
  --ux-raised: #131313;
  --ux-overlay: rgba(6,6,6,.92);
  --ux-code-bg: #131313;
  --ux-ink: #ffffff;
  --ux-ink-soft: #ffffff;
  --ux-ink-muted: rgba(255,255,255,.58);
  --ux-code-ink: #ffffff;
  --ux-on-brand: #0a0a0a;
  --ux-brand: #FF2FB9;
  --ux-brand-hover: #e0219f;
  --ux-brand-ink: #ff54c4;
  --ux-brand-tint: rgba(255,47,185,.16);
  --ux-accent: #FF2FB9;
  --ux-accent-ink: #FF2FB9;
  --ux-accent-tint: rgba(255,47,185,.12);
  --ux-grad: linear-gradient(120deg,#FF2FB9,#ff54c4);
  --ux-glass: rgba(10,10,10,.82);
  --ux-hairline: linear-gradient(90deg,transparent,#FF2FB9,transparent);
  --ux-line: rgba(255,255,255,.14);
  --ux-line-strong: rgba(255,255,255,.32);
  --ux-focus: #FF2FB9;
  --ux-focus-ring: 0 0 0 3px rgba(255,47,185,.5);
  --ux-ok: #35D69B;
  --ux-ok-tint: rgba(53,214,155,.13);
  --ux-warn: #FFC24B;
  --ux-warn-tint: rgba(255,194,75,.13);
  --ux-danger: #FF5C72;
  --ux-danger-tint: rgba(255,92,114,.13);
  --ux-info: #8AA2FF;
  --ux-info-tint: rgba(138,162,255,.13);
  --ux-band-a: #1a9e5f;
  --ux-band-b: #5fae3a;
  --ux-band-c: #c99a1e;
  --ux-band-d: #d9772b;
  --ux-band-e: #d4552e;
  --ux-band-f: #c23b3b;
  --ux-radius-xs: 6px;
  --ux-radius-sm: 10px;
  --ux-radius-md: 14px;
  --ux-radius-lg: 18px;
  --ux-radius-pill: 99px;
  --ux-space-1: 4px;
  --ux-space-2: 8px;
  --ux-space-3: 12px;
  --ux-space-4: 16px;
  --ux-space-5: 24px;
  --ux-space-6: 34px;
  --ux-space-7: 48px;
  --ux-space-8: 64px;
  --ux-text-display: clamp(34px,6.5vw,58px);
  --ux-text-h1: clamp(28px,5vw,46px);
  --ux-text-h2: clamp(20px,3vw,27px);
  --ux-text-h3: 18px;
  --ux-text-body: 16px;
  --ux-text-small: 14px;
  --ux-text-caption: 12px;
  --ux-text-micro: 11px;
  --ux-weight-normal: 400;
  --ux-weight-medium: 500;
  --ux-weight-semibold: 600;
  --ux-weight-bold: 700;
  --ux-weight-heavy: 800;
  --ux-leading-solid: 1;
  --ux-leading-tight: 1.1;
  --ux-leading-snug: 1.4;
  --ux-leading-normal: 1.55;
  --ux-leading-loose: 1.7;
  --ux-track-tight: -.03em;
  --ux-track-snug: -.01em;
  --ux-track-normal: 0;
  --ux-track-wide: .04em;
  --ux-track-caps: .12em;
  --ux-track-kicker: .2em;
  --ux-font-sans: 'Hanken Grotesk',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-font-mono: 'JetBrains Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --ux-font-display: 'Unbounded',-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-shadow-sm: 0 2px 10px rgba(0,0,0,.4);
  --ux-shadow-md: 0 10px 30px rgba(0,0,0,.5);
  --ux-shadow-lg: 0 26px 70px rgba(0,0,0,.6);
  --ux-glow: 0 0 44px rgba(255,47,185,.35);
  --ux-dur-fast: 120ms;
  --ux-dur-base: 200ms;
  --ux-dur-slow: 320ms;
  --ux-ease-out: cubic-bezier(.2,.7,.2,1);
  --ux-ease-in-out: cubic-bezier(.65,.05,.35,.95);
  --ux-z-raised: 10;
  --ux-z-sticky: 100;
  --ux-z-overlay: 1000;
  --ux-z-modal: 1100;
  --ux-z-toast: 1200;
  --ux-maxw: 1120px;
  --ux-maxw-narrow: 720px;
  --ux-maxw-wide: 1360px;
}
:root[data-theme="v2"] {
  --ux-bg: #f7f7f8;
  --ux-surface: #ffffff;
  --ux-raised: #ffffff;
  --ux-overlay: rgba(19,19,22,.48);
  --ux-code-bg: #f1f0f4;
  --ux-ink: #131316;
  --ux-ink-soft: #2e2e33;
  --ux-ink-muted: #4b5563;
  --ux-code-ink: #2e2e33;
  --ux-on-brand: #ffffff;
  --ux-brand: #c2087f;
  --ux-brand-hover: #a1066a;
  --ux-brand-ink: #FF2FB9;
  --ux-brand-tint: rgba(194,8,127,.10);
  --ux-accent: #5b21b6;
  --ux-accent-ink: #5b21b6;
  --ux-accent-tint: rgba(91,33,182,.10);
  --ux-grad: linear-gradient(120deg,#FF2FB9,#c2087f);
  --ux-glass: rgba(255,255,255,.86);
  --ux-hairline: linear-gradient(90deg,transparent,rgba(194,8,127,.35),transparent);
  --ux-line: #e4e4e9;
  --ux-line-strong: #cfcfd6;
  --ux-focus: #c2087f;
  --ux-focus-ring: 0 0 0 3px rgba(194,8,127,.35);
  --ux-ok: #157f5a;
  --ux-ok-tint: rgba(21,127,90,.10);
  --ux-warn: #9a6a00;
  --ux-warn-tint: rgba(154,106,0,.10);
  --ux-danger: #c22b45;
  --ux-danger-tint: rgba(194,43,69,.10);
  --ux-info: #3554c9;
  --ux-info-tint: rgba(53,84,201,.10);
  --ux-band-a: #157f5a;
  --ux-band-b: #4a8f2a;
  --ux-band-c: #9a6a00;
  --ux-band-d: #b25f16;
  --ux-band-e: #c2452e;
  --ux-band-f: #b32222;
  --ux-radius-xs: 4px;
  --ux-radius-sm: 6px;
  --ux-radius-md: 10px;
  --ux-radius-lg: 14px;
  --ux-radius-pill: 99px;
  --ux-space-1: 4px;
  --ux-space-2: 8px;
  --ux-space-3: 12px;
  --ux-space-4: 16px;
  --ux-space-5: 24px;
  --ux-space-6: 34px;
  --ux-space-7: 48px;
  --ux-space-8: 64px;
  --ux-text-display: clamp(32px,5.5vw,48px);
  --ux-text-h1: clamp(26px,4.5vw,40px);
  --ux-text-h2: clamp(20px,3vw,24px);
  --ux-text-h3: 18px;
  --ux-text-body: 16px;
  --ux-text-small: 14px;
  --ux-text-caption: 12px;
  --ux-text-micro: 11px;
  --ux-weight-normal: 400;
  --ux-weight-medium: 500;
  --ux-weight-semibold: 600;
  --ux-weight-bold: 600;
  --ux-weight-heavy: 700;
  --ux-leading-solid: 1;
  --ux-leading-tight: 1.15;
  --ux-leading-snug: 1.4;
  --ux-leading-normal: 1.6;
  --ux-leading-loose: 1.7;
  --ux-track-tight: -.02em;
  --ux-track-snug: -.01em;
  --ux-track-normal: 0;
  --ux-track-wide: .04em;
  --ux-track-caps: .1em;
  --ux-track-kicker: .16em;
  --ux-font-sans: Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-font-mono: 'Geist Mono',ui-monospace,'SF Mono',Menlo,monospace;
  --ux-font-display: Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;
  --ux-shadow-sm: 0 1px 2px rgba(19,19,22,.06), 0 4px 12px rgba(19,19,22,.05);
  --ux-shadow-md: 0 2px 4px rgba(19,19,22,.06), 0 10px 28px rgba(19,19,22,.08);
  --ux-shadow-lg: 0 4px 8px rgba(19,19,22,.07), 0 24px 56px rgba(19,19,22,.12);
  --ux-glow: 0 0 0 rgba(0,0,0,0);
  --ux-dur-fast: 120ms;
  --ux-dur-base: 200ms;
  --ux-dur-slow: 320ms;
  --ux-ease-out: cubic-bezier(.2,.7,.2,1);
  --ux-ease-in-out: cubic-bezier(.65,.05,.35,.95);
  --ux-z-raised: 10;
  --ux-z-sticky: 100;
  --ux-z-overlay: 1000;
  --ux-z-modal: 1100;
  --ux-z-toast: 1200;
  --ux-maxw: 1120px;
  --ux-maxw-narrow: 720px;
  --ux-maxw-wide: 1360px;
}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}




.badge{display:inline-flex;align-items:center;gap:5px;font:var(--ux-weight-semibold) var(--ux-text-caption)/1 var(--ux-font-mono);
  letter-spacing:var(--ux-track-wide);padding:5px 10px;border-radius:var(--ux-radius-pill);border:1px solid transparent;white-space:nowrap}

.badge--neutral.badge--tint{background:var(--ux-surface);color:var(--ux-ink-muted);border-color:var(--ux-line)}
.badge--neutral.badge--outline{background:transparent;color:var(--ux-ink-muted);border-color:var(--ux-line)}
.badge--neutral.badge--solid{background:var(--ux-ink-muted);color:var(--ux-bg)}

.badge--brand.badge--tint{background:var(--ux-brand-tint);color:var(--ux-brand-ink);border-color:var(--ux-brand-tint)}
.badge--brand.badge--outline{background:transparent;color:var(--ux-brand-ink);border-color:var(--ux-brand)}
.badge--brand.badge--solid{background:var(--ux-brand);color:var(--ux-on-brand)}

.badge--accent.badge--tint{background:var(--ux-accent-tint);color:var(--ux-accent-ink);border-color:var(--ux-accent-tint)}
.badge--accent.badge--outline{background:transparent;color:var(--ux-accent-ink);border-color:var(--ux-accent)}

.badge--ok.badge--tint{background:var(--ux-ok-tint);color:var(--ux-ok);border-color:var(--ux-ok-tint)}
.badge--warn.badge--tint{background:var(--ux-warn-tint);color:var(--ux-warn);border-color:var(--ux-warn-tint)}
.badge--danger.badge--tint{background:var(--ux-danger-tint);color:var(--ux-danger);border-color:var(--ux-danger-tint)}
.badge--ok.badge--solid{background:var(--ux-ok);color:var(--ux-bg)}
.badge--warn.badge--solid{background:var(--ux-warn);color:var(--ux-bg)}
.badge--danger.badge--solid{background:var(--ux-danger);color:var(--ux-bg)}






.brand{flex:0 0 auto;font-family:var(--ux-font-display,var(--ux-font-sans,inherit));font-size:clamp(17px,3vw,28px);font-weight:700;letter-spacing:-.01em;color:var(--ux-ink);text-decoration:none;white-space:nowrap}


.brand-ux{background:var(--ux-grad);-webkit-background-clip:text;background-clip:text;color:transparent;letter-spacing:.02em}


.brand-bar{position:relative;z-index:1;display:flex}
.brand-bar--center{justify-content:center;padding:30px 24px 0}
.brand-bar--back{max-width:760px;margin:0 auto;padding:22px clamp(20px,5vw,32px) 0}


.brand--back{display:inline-flex;gap:10px;align-items:baseline;border-radius:6px}
.brand-back{font-weight:500;font-size:13px;letter-spacing:0;color:var(--ux-ink-muted,var(--ux-ink))}
.brand-back::before{content:'\2190\00a0'}
.brand--back:hover .brand-back,.brand--back:focus-visible .brand-back{color:var(--ux-ink)}


.brand:focus-visible{outline:none;box-shadow:var(--ux-focus-ring,0 0 0 3px currentColor);border-radius:var(--ux-radius-xs,6px)}




.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--ux-font-sans);font-weight:var(--ux-weight-bold);
  border:1px solid transparent;border-radius:var(--ux-radius-pill);cursor:pointer;text-decoration:none;white-space:nowrap;line-height:1;
  transition:transform var(--ux-dur-fast) var(--ux-ease-out),box-shadow var(--ux-dur-fast) var(--ux-ease-out),background var(--ux-dur-fast),border-color var(--ux-dur-fast)}
.btn:active{transform:translateY(1px)}
.btn:focus-visible{outline:none;box-shadow:var(--ux-focus-ring)}
.btn__icon{font-size:.9em}

.btn--sm{font-size:var(--ux-text-caption);padding:7px 14px}
.btn--md{font-size:var(--ux-text-small);padding:11px 20px}
.btn--lg{font-size:var(--ux-text-body);padding:14px 26px}

.btn--primary{background:var(--ux-grad);color:var(--ux-on-brand);box-shadow:0 4px 22px var(--ux-brand-tint)}
.btn--primary:hover{transform:translateY(-1px);box-shadow:0 8px 30px var(--ux-brand-tint)}

.btn--secondary{background:var(--ux-surface);color:var(--ux-ink);border-color:var(--ux-line-strong)}
.btn--secondary:hover{border-color:var(--ux-brand)}

.btn--ghost{background:transparent;color:var(--ux-ink-muted);border-color:var(--ux-line)}
.btn--ghost:hover{color:var(--ux-ink);border-color:var(--ux-line-strong)}

.btn--ghost-grad{color:var(--ux-ink);border-color:transparent;
  background:linear-gradient(var(--ux-surface),var(--ux-surface)) padding-box,var(--ux-grad) border-box}
.btn--ghost-grad:hover{transform:translateY(-1px);box-shadow:0 6px 22px var(--ux-brand-tint)}

.btn--link{background:transparent;color:var(--ux-brand);padding-left:0;padding-right:0;border-radius:0}
.btn--link:hover{text-decoration:underline}

.btn__narrow{display:none}
@media(max-width:560px){
  .btn__wide{display:none}
  .btn__narrow{display:inline}
}




.callout{display:block;border:1px solid;border-radius:var(--ux-radius-md);padding:var(--ux-space-4) var(--ux-space-4) var(--ux-space-4) var(--ux-space-5);border-left:3px solid;background-clip:padding-box}
.callout__title{font-family:var(--ux-font-sans);font-size:var(--ux-text-small);font-weight:var(--ux-weight-semibold);margin:0 0 var(--ux-space-2);letter-spacing:var(--ux-track-snug);text-transform:uppercase}
.callout__body{font-size:var(--ux-text-small);line-height:var(--ux-leading-normal)}
.callout__body p{margin:0}


.callout--info{border-color:var(--ux-info);border-left-color:var(--ux-info);background:var(--ux-info-tint)}
.callout--info .callout__title{color:var(--ux-info)}
.callout--info .callout__body{color:var(--ux-ink-soft)}


.callout--ok{border-color:var(--ux-ok);border-left-color:var(--ux-ok);background:var(--ux-ok-tint)}
.callout--ok .callout__title{color:var(--ux-ok)}
.callout--ok .callout__body{color:var(--ux-ink-soft)}


.callout--warn{border-color:var(--ux-warn);border-left-color:var(--ux-warn);background:var(--ux-warn-tint)}
.callout--warn .callout__title{color:var(--ux-warn)}
.callout--warn .callout__body{color:var(--ux-ink-soft)}


.callout--danger{border-color:var(--ux-danger);border-left-color:var(--ux-danger);background:var(--ux-danger-tint)}
.callout--danger .callout__title{color:var(--ux-danger)}
.callout--danger .callout__body{color:var(--ux-ink-soft)}


.callout--brand{border-color:var(--ux-brand);border-left-color:var(--ux-brand);background:var(--ux-brand-tint)}
.callout--brand .callout__title{color:var(--ux-brand)}
.callout--brand .callout__body{color:var(--ux-ink-soft)}




.card{display:block;background:var(--ux-surface);border:1px solid var(--ux-line);border-radius:var(--ux-radius-md);color:inherit;text-decoration:none;overflow:hidden}
.card--radius-lg{border-radius:var(--ux-radius-lg)}
.card--pad-none{padding:0}
.card--pad-sm{padding:var(--ux-space-3)}
.card--pad-md{padding:var(--ux-space-4) 18px}
.card--pad-lg{padding:var(--ux-space-5)}
.card--link{transition:border-color var(--ux-dur-fast) var(--ux-ease-out)}
.card--link:hover{border-color:var(--ux-brand)}

.card--interactive{transition:border-color var(--ux-dur-fast) var(--ux-ease-out)}
.card--interactive:hover,.card--interactive:focus-within{border-color:var(--ux-brand)}
.card--lift{transition:transform var(--ux-dur-fast) var(--ux-ease-out),box-shadow var(--ux-dur-fast) var(--ux-ease-out),border-color var(--ux-dur-fast) var(--ux-ease-out)}
.card--lift:hover,.card--lift:focus-within{transform:translateY(-2px)}
.card--lift-shadow:hover,.card--lift-shadow:focus-within{box-shadow:var(--ux-shadow-md)}
.card--raised{background:var(--ux-raised)}
.card--brand{border-left:3px solid var(--ux-brand)}






.cite-ref{font-size:max(11px,.62em);line-height:0;vertical-align:super;margin-left:2px}
.cite-ref a{text-decoration:none;color:var(--ux-brand-ink);padding:2px 4px;border-radius:3px;
  background:var(--ux-brand-tint);font-weight:600}
.cite-ref a:hover,.cite-ref a:focus-visible{background:var(--ux-brand-tint);color:var(--ux-brand)}
.cite-notes{margin:44px 0 0;padding:20px 22px;border-top:1px solid var(--ux-line-strong);background:var(--ux-raised);border-radius:var(--ux-radius-md)}
.cite-notes-h{font:700 11.5px/1 var(--ux-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ux-ink-muted);margin:0 0 12px}
.cite-list{margin:0;padding-left:20px}
.cite-list li{font-size:13.5px;line-height:1.65;color:var(--ux-ink-soft);margin:0 0 8px}
.cite-list li:target{background:var(--ux-brand-tint);border-radius:var(--ux-radius-xs);padding:2px 6px;margin-left:-6px}
.cite-src{color:var(--ux-ink);font-family:var(--ux-font-mono);font-size:12.5px;word-break:break-word}
.cite-back{text-decoration:none;color:var(--ux-ink-muted);margin-left:4px}
.cite-back:hover{color:var(--ux-brand-ink)}
.cite-foot{margin:14px 0 0;font-size:12.5px;color:var(--ux-ink-muted)}




.stats{display:inline-flex;align-items:center;gap:14px}
.stats .stat{display:inline-flex;align-items:center;gap:5px;background:none;border:0;padding:0;
  color:var(--ux-ink-muted);font:var(--ux-weight-semibold) var(--ux-text-caption)/1 var(--ux-font-mono);
  font-variant-numeric:tabular-nums}
.stats .stat-n{min-width:1.6ch;text-align:left}
.stats .eye{cursor:default}
.stats .heart{cursor:pointer;transition:color var(--ux-dur-fast) var(--ux-ease-out)}
.stats .heart:hover{color:var(--ux-brand)}
.stats .heart[aria-pressed="true"]{color:var(--ux-brand)}
.stats .heart:focus-visible{outline:2px solid var(--ux-brand);outline-offset:3px;border-radius:6px}




.faq{background:var(--ux-bg);padding:var(--ux-space-7) var(--ux-space-4);position:relative}
.faq::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(1180px,90%);height:1px;background:var(--ux-hairline)}
.faq__wrap{max-width:760px;margin:0 auto}
.faq-item{background:var(--ux-surface);border:1px solid var(--ux-line);border-radius:var(--ux-radius-lg);margin-bottom:var(--ux-space-3);transition:border-color var(--ux-dur-base) var(--ux-ease-out),box-shadow var(--ux-dur-base) var(--ux-ease-out)}
.faq-item:hover{border-color:color-mix(in srgb,var(--ux-accent) 35%,transparent)}
.faq-item[open]{border-color:color-mix(in srgb,var(--ux-brand) 35%,transparent);box-shadow:0 8px 32px color-mix(in srgb,var(--ux-accent) 12%,transparent)}
.faq-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:var(--ux-space-4);padding:var(--ux-space-5) var(--ux-space-6);font-family:var(--ux-font-sans);font-size:var(--ux-text-h3);font-weight:var(--ux-weight-semibold);color:var(--ux-ink)}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";font-family:var(--ux-font-mono);font-size:20px;color:var(--ux-brand);flex:none;transition:transform var(--ux-dur-base) var(--ux-ease-out)}
.faq-item[open] summary::after{transform:rotate(45deg)}
.faq-item p{margin:0;padding:0 var(--ux-space-6) var(--ux-space-5);color:var(--ux-ink-muted);font-size:var(--ux-text-small);line-height:var(--ux-leading-normal)}
@media(max-width:760px){
  .faq{padding:var(--ux-space-7) var(--ux-space-4)}
  .faq-item summary{padding:var(--ux-space-5) var(--ux-space-4);font-size:var(--ux-text-body)}
  .faq-item p{padding:0 var(--ux-space-4) var(--ux-space-4)}
}




.finalcta{background:var(--ux-brand);width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:clamp(72px,10vw,120px) 0 clamp(80px,10vw,128px);text-align:center;position:relative;overflow:hidden}
.finalcta::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.10) 0 1px,transparent 1px 46px)}
.finalcta-chip{display:inline-flex;align-items:center;gap:8px;font:800 12px/1 var(--ux-font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ux-on-brand);background:rgba(10,10,10,.14);border:1px solid rgba(10,10,10,.3);padding:10px 18px;border-radius:99px;margin:0 0 26px;position:relative}
.finalcta h2{font-family:var(--ux-font-display);color:#fff;font-size:clamp(34px,6.4vw,66px);line-height:1.02;margin:0 0 36px;font-weight:800;position:relative;text-wrap:balance;overflow-wrap:break-word}
.cta-card{max-width:660px;margin:0 auto;position:relative;background:#fff;border-radius:22px;padding:clamp(20px,3vw,30px);box-shadow:0 30px 70px rgba(0,0,0,.28)}
.cta-card .scan-url{background:rgba(10,10,10,.045);color:#0a0a0a;border-color:rgba(10,10,10,.18)}
.cta-card .scan-url::placeholder{color:transparent}
.cta-card .scan-ghost{color:rgba(10,10,10,.62)}
.cta-card .scan-go{background:#0a0a0a;color:#fff;box-shadow:0 14px 30px rgba(0,0,0,.35)}
.cta-card .scan-hint{color:rgba(10,10,10,.6)}
.cta-card .scan-hint b{color:#0a0a0a}




.fr{background:var(--ux-surface);border:1px solid var(--ux-line);border-radius:var(--ux-radius-md);padding:var(--ux-space-4) var(--ux-space-4) var(--ux-space-4);display:grid;gap:var(--ux-space-3)}

.fr-tone-ok,.fr-tone-warn,.fr-tone-danger,.fr-tone-neutral,.fr-tone-brand{border-left:0}
.fr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--ux-space-3);flex-wrap:wrap}
.fr-headline{margin:0;font-size:var(--ux-text-body);font-weight:var(--ux-weight-semibold);color:var(--ux-ink);line-height:var(--ux-leading-snug);flex:1;min-width:220px}
.fr-status{display:inline-flex;align-items:center;gap:8px;flex:none;padding:4px 10px 4px 4px;border-radius:var(--ux-radius-pill);background:var(--ux-raised);border:1px solid var(--ux-line)}
.fr-status-flat{padding:5px 12px}
.fr-status-meter{width:44px;height:6px;border-radius:var(--ux-radius-pill);background:var(--ux-line);overflow:hidden;flex:none}
.fr-status-meter i{display:block;height:100%;border-radius:var(--ux-radius-pill)}
.fr-status-ok .fr-status-meter i{background:var(--ux-ok)}
.fr-status-warn .fr-status-meter i{background:var(--ux-warn)}
.fr-status-danger .fr-status-meter i{background:var(--ux-danger)}
.fr-status-neutral .fr-status-meter i{background:var(--ux-ink-muted)}
.fr-status-brand .fr-status-meter i{background:var(--ux-brand)}
.fr-status-val{font:var(--ux-weight-bold) var(--ux-text-small)/1 var(--ux-font-mono);color:var(--ux-ink);font-variant-numeric:tabular-nums}
.fr-status-val small{font-weight:var(--ux-weight-medium);color:var(--ux-ink-muted)}
.fr-status-l{font-size:var(--ux-text-caption);font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-wide);text-transform:uppercase;color:var(--ux-ink-muted)}
.fr-status-ok .fr-status-l{color:var(--ux-ok)}
.fr-status-warn .fr-status-l{color:var(--ux-warn)}
.fr-status-danger .fr-status-l{color:var(--ux-danger)}
.fr-status-brand .fr-status-l{color:var(--ux-brand)}
.fr-evidence-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.fr-ev{display:grid;gap:5px}
.fr-ev-label{font-size:var(--ux-text-small);font-weight:var(--ux-weight-semibold);color:var(--ux-ink)}
.fr-ev-quotes{display:flex;flex-wrap:wrap;gap:7px}
.fr-ev-quotes q{quotes:none;font-family:var(--ux-font-mono);font-size:var(--ux-text-caption);color:var(--ux-ink);background:var(--ux-brand-tint);border:1px solid var(--ux-line);border-radius:7px;padding:3px 10px}
.fr-ev-quotes q::before,.fr-ev-quotes q::after{content:'"';color:var(--ux-ink-muted)}
.fr-ev-note{font-size:var(--ux-text-caption);color:var(--ux-ink-muted)}
.fr-evidence{margin:0}
.fr-evidence-empty{margin:0;font-size:var(--ux-text-small);color:var(--ux-ink-muted);font-style:italic}
.fr-gaps{border-top:1px dashed var(--ux-line);padding-top:var(--ux-space-3);display:grid;gap:8px}
.fr-gaps-h{margin:0;font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted)}
.fr-gaps-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.fr-gap{display:inline-flex;align-items:baseline;gap:7px;padding:5px 12px;border-radius:999px;border:1px dashed var(--ux-line);font-size:var(--ux-text-caption);color:var(--ux-ink-muted)}
.fr-gap-label{color:var(--ux-ink);font-weight:var(--ux-weight-medium)}
.fr-gap-note{font-size:var(--ux-text-caption);color:var(--ux-ink-muted)}

.fr-gap > .fr-gap-action{margin-left:2px}
.fr-gaps-empty{margin:0;font-size:var(--ux-text-small);color:var(--ux-ink-muted)}
.fr-measurement{margin:0;font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);color:var(--ux-ink-muted);line-height:var(--ux-leading-normal);border-top:1px solid var(--ux-line);padding-top:var(--ux-space-2)}
.fr-detail{margin:0}
.fr-detail-sum{cursor:pointer;font-size:var(--ux-text-caption);font-weight:var(--ux-weight-semibold);color:var(--ux-accent);list-style:none}
.fr-detail-sum::-webkit-details-marker{display:none}
.fr-detail-body{margin-top:var(--ux-space-3)}





.footer{background:var(--ux-bg);padding:var(--ux-space-7) var(--ux-space-4) var(--ux-space-5);position:relative;overflow:clip}
.footer::before{content:"";position:absolute;top:0;left:50%;transform:translateX(-50%);width:min(1180px,90%);height:1px;background:var(--ux-hairline)}
.footer__wrap{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:var(--ux-space-6)}

.footer__wordmark{position:absolute;right:clamp(-40px,-2vw,0px);bottom:-6vw;font-family:var(--ux-font-display,var(--ux-font-sans));font-weight:var(--ux-weight-bold);font-size:clamp(120px,20vw,320px);line-height:1;color:color-mix(in srgb,var(--ux-ink) 5%,transparent);letter-spacing:-.03em;pointer-events:none;white-space:nowrap;z-index:0;user-select:none}

.footer__mark{margin:0 0 10px}

.footer__tag{font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-wide);text-transform:uppercase;color:var(--ux-ink-muted);margin:0}
.footer__col h2{font-family:var(--ux-font-mono);font-size:12px;letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted);margin:0 0 18px;font-weight:var(--ux-weight-semibold)}
.footer__col ul{list-style:none;margin:0;padding:0}
.footer__col li{margin-bottom:var(--ux-space-3)}
.footer__col a{color:var(--ux-ink);opacity:.75;text-decoration:none;font-size:var(--ux-text-small);font-family:var(--ux-font-sans);transition:opacity var(--ux-dur-fast) var(--ux-ease-out),color var(--ux-dur-fast) var(--ux-ease-out)}
.footer__col a:hover{opacity:1;color:var(--ux-brand)}
.footer__legal{max-width:1180px;margin:var(--ux-space-6) auto 0;padding-top:var(--ux-space-4);border-top:1px solid var(--ux-line);display:flex;justify-content:space-between;gap:var(--ux-space-4);flex-wrap:wrap}
.footer__legal p{font-family:var(--ux-font-mono);font-size:12px;color:var(--ux-ink-muted);opacity:.6;margin:0}
@media(max-width:760px){
  .footer{padding:var(--ux-space-7) var(--ux-space-4) var(--ux-space-5)}
  .footer__wrap{grid-template-columns:1fr;gap:var(--ux-space-7)}
  .footer__legal{flex-direction:column}
}




.meter{margin:0 0 var(--ux-space-3)}
.meter__head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--ux-space-3);margin:0 0 6px}
.meter__label{font-size:var(--ux-text-small);color:var(--ux-ink);font-weight:var(--ux-weight-semibold)}
.meter__val{font:var(--ux-weight-bold) var(--ux-text-small)/1 var(--ux-font-mono);color:var(--ux-ink);font-variant-numeric:tabular-nums}
.meter__track{height:6px;border-radius:var(--ux-radius-pill);background:var(--ux-raised);overflow:hidden}
.meter__fill{display:block;height:100%;border-radius:var(--ux-radius-pill);transition:width var(--ux-dur-slow) var(--ux-ease-out)}
.meter__fill--brand{background:var(--ux-grad)}
.meter__fill--ok{background:var(--ux-ok)}
.meter__fill--warn{background:var(--ux-warn)}
.meter__fill--danger{background:var(--ux-danger)}
.meter__hint{font-size:var(--ux-text-caption);color:var(--ux-ink-muted);margin-top:4px}






.nav{position:sticky;top:0;z-index:var(--ux-z-sticky);border-bottom:1px solid var(--ux-line);background:var(--ux-glass);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}


.nav--top .nav-in{max-width:var(--ux-maxw);margin:0 auto;padding:var(--ux-space-3) var(--ux-space-4);display:flex;align-items:center;gap:clamp(var(--ux-space-3),3vw,var(--ux-space-6));min-width:0}




.nav-links{flex:1 1 auto;min-width:0;display:flex}
.nav-list{display:flex;align-items:center;gap:clamp(var(--ux-space-3),2.5vw,var(--ux-space-6));list-style:none;margin:0;padding:0;min-width:0}
.nav-item{position:relative;display:flex;align-items:center}
.nav-links a{color:var(--ux-ink-muted);text-decoration:none;font-size:var(--ux-text-small);letter-spacing:.01em;transition:color var(--ux-dur-fast) var(--ux-ease-out)}
.nav-links a:hover{color:var(--ux-ink)}
.nav-links a.active{color:var(--ux-ink);box-shadow:inset 0 -2px 0 var(--ux-brand)}


.nav-actions{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:var(--ux-space-3)}


.nav--top .nav-link:focus-visible{outline:none;box-shadow:var(--ux-focus-ring);border-radius:var(--ux-radius-xs)}




.nav-t-short{display:none}


.nav-item--collapsed{display:none}


@media(max-width:640px){
  .nav-item--tier{display:none}
  .nav-item--collapsed{display:flex}
}

@media(max-width:760px){
  .nav--top .nav-in{padding:var(--ux-space-2) var(--ux-space-4)}
  .nav-t-full{display:none}
  .nav-t-short{display:inline}
  .nav-actions{gap:var(--ux-space-2)}
}


@media(max-width:400px){
  .nav--top .nav-in{padding:var(--ux-space-2) var(--ux-space-3);gap:var(--ux-space-2)}
  .nav-actions .btn--sm{padding-left:var(--ux-space-2);padding-right:var(--ux-space-2)}
}


.nav--sub{background:color-mix(in srgb,var(--ux-overlay) 65%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}

.nav--sub .nav-sub-in{max-width:var(--ux-maxw);margin:0 auto;padding:var(--ux-space-2) clamp(var(--ux-space-4),4vw,var(--ux-space-6));display:flex;align-items:center;gap:var(--ux-space-3) var(--ux-space-5);flex-wrap:wrap}

.nav-sub-count{display:inline-flex;align-items:center;gap:var(--ux-space-2);color:var(--ux-ink-muted);text-decoration:none;font-family:var(--ux-font-mono);font-size:var(--ux-text-caption);letter-spacing:.03em;white-space:nowrap}
.nav-sub-count b{color:var(--ux-brand);font-size:var(--ux-text-micro)}
.nav-sub-count:hover{color:var(--ux-ink)}

.nav-sub-seg{display:inline-flex;gap:1px;padding:1px;background:color-mix(in srgb,var(--ux-ink) 4%,transparent);border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm)}

.nav-sub-pill{display:inline-flex;align-items:center;gap:var(--ux-space-2);padding:var(--ux-space-2) var(--ux-space-4);border-radius:var(--ux-radius-sm);font-size:var(--ux-text-small);color:var(--ux-ink-muted);text-decoration:none;white-space:nowrap;transition:background var(--ux-dur-fast) var(--ux-ease-out),color var(--ux-dur-fast)}
.nav-sub-pill:hover{color:var(--ux-ink);background:color-mix(in srgb,var(--ux-ink) 6%,transparent)}
.nav-sub-pill.active{color:var(--ux-on-brand);background:var(--ux-grad);box-shadow:0 2px var(--ux-space-4) var(--ux-brand-tint)}

.nav-sub-all{margin-left:auto;color:var(--ux-brand);text-decoration:none;font-size:var(--ux-text-small);font-weight:var(--ux-weight-semibold);white-space:nowrap}
.nav-sub-all:hover{text-decoration:underline}

@media(max-width:640px){
  .nav--sub .nav-sub-in{padding:var(--ux-space-2) var(--ux-space-4);gap:var(--ux-space-2) var(--ux-space-3)}
  .nav-sub-count{order:1}
  .nav-sub-all{order:2;margin-left:auto}
  .nav-sub-seg{order:3;width:100%}
  .nav-sub-pill{flex:1;justify-content:center;padding:var(--ux-space-2) var(--ux-space-2)}
}





.og-card{position:relative;width:1200px;height:630px;background:var(--ux-bg);display:grid;
  grid-template-columns:1fr 440px;gap:56px;padding:72px 72px 64px;box-sizing:border-box;overflow:hidden}
.og-left{display:flex;flex-direction:column;justify-content:center;min-width:0}
.og-eyebrow{margin:0 0 26px;font:700 15px/1 var(--ux-font-mono);letter-spacing:.18em;color:var(--ux-brand)}
.og-title{margin:0;font:800 60px/1.08 var(--ux-font-display);letter-spacing:-.022em;color:var(--ux-ink);
  text-wrap:balance}
.og-statline{display:flex;align-items:baseline;gap:16px;margin:38px 0 0}
.og-stat{font:800 76px/1 var(--ux-font-display);letter-spacing:-.03em;color:var(--ux-brand)}
.og-stat-label{font:600 19px/1.3 var(--ux-font-sans);color:var(--ux-ink-soft);max-width:270px}
.og-source{margin:26px 0 0;font:500 15px/1.4 var(--ux-font-mono);color:var(--ux-ink-muted)}

.og-rule{position:absolute;left:0;right:0;bottom:0;height:10px;background:var(--ux-brand)}


.og-card--thumb{height:420px;padding:0;grid-template-columns:1fr;gap:0;place-items:center}
.og-card--thumb .og-right{width:100%;height:100%}
.og-card--thumb .og-mock{width:auto;height:300px}
.og-card--thumb .og-pg{border-width:3px;border-radius:14px;padding:22px}
.og-card--thumb .og-chrome i{width:11px;height:11px}
.og-card--thumb .og-bar{height:11px}
.og-card--thumb .og-r{height:18px;margin-bottom:16px;border-radius:4px}


.og-card--thumb .og-mock-depth{width:400px}
.og-card--thumb .og-mock-depth .og-pg{width:260px;height:260px}
.og-card--thumb .og-mock-depth .og-pg-3{top:0;right:0}
.og-card--thumb .og-mock-depth .og-pg-2{top:20px;right:30px}
.og-card--thumb .og-mock-depth .og-pg-1{top:40px;right:60px}


.og-card--thumb .og-mock-absence{width:340px}
.og-card--thumb .og-mock-absence .og-pg-1{top:0;left:0;width:340px;height:300px}
.og-card--thumb .og-slot{height:74px;margin:16px 0;border-width:3px}

.og-card--thumb .og-slot span{display:none}
.og-card--thumb .og-cta{height:40px}


.og-card--thumb .og-mock-census{width:620px}
.og-card--thumb .og-grid{inset:0;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(3,1fr);gap:14px}
.og-card--thumb .og-tile{border-width:3px;border-radius:8px}


.og-right{position:relative;display:flex;align-items:center;justify-content:center}
.og-mock{position:relative;width:100%;height:420px}
.og-pg{position:absolute;background:var(--ux-surface);border:2px solid var(--ux-ink);
  border-radius:10px;padding:16px;box-sizing:border-box}
.og-chrome{display:flex;align-items:center;gap:6px;margin:0 0 16px}
.og-chrome i{width:8px;height:8px;border-radius:50%;background:var(--ux-line-strong)}
.og-bar{flex:1;height:8px;margin-left:8px;border-radius:4px;background:var(--ux-line)}
.og-r{height:13px;border-radius:3px;background:var(--ux-line-strong);margin:0 0 12px}
.og-r-lg{width:100%}
.og-r-md{width:74%}
.og-r-sm{width:46%}
.og-r.is-accent{background:var(--ux-brand)}


.og-mock-depth .og-pg{width:300px;height:300px}
.og-mock-depth .og-pg-3{top:0;right:0;opacity:.22}
.og-mock-depth .og-pg-2{top:38px;right:38px;opacity:.5}
.og-mock-depth .og-pg-1{top:76px;right:76px}


.og-mock-absence .og-pg-1{top:20px;left:32px;width:340px;height:380px}
.og-slot{height:78px;margin:18px 0;border:2px dashed var(--ux-brand);border-radius:8px;
  display:flex;align-items:center;justify-content:center;background:var(--ux-brand-tint)}
.og-slot span{font:700 13px/1 var(--ux-font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ux-brand)}
.og-cta{height:34px;width:56%;border-radius:6px;background:var(--ux-ink)}


.og-grid{position:absolute;inset:24px 0;display:grid;grid-template-columns:repeat(4,1fr);
  grid-auto-rows:1fr;gap:14px}
.og-tile{border:2px solid var(--ux-ink);border-radius:6px;opacity:.28}
.og-tile.is-hit{background:var(--ux-brand);border-color:var(--ux-brand);opacity:1}





.scan-block-kicker{margin:0 0 12px;font:800 12px/1 var(--ux-font-mono);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-brand)}
.scan-block-h{margin:0 0 20px;font-family:var(--ux-font-display);font-size:var(--ux-text-h2);font-weight:var(--ux-weight-bold);color:var(--ux-ink);line-height:1.15}

.scanzone{max-width:720px}

.scan-field{position:relative;flex:1;min-width:0}
.scanbar-row{display:flex;gap:12px;flex-direction:column}
@media(min-width:600px){.scanbar-row{flex-direction:row}}
.scan-url{width:100%;flex:1;min-width:0;background:var(--ux-code-bg);border:2px solid var(--ux-line-strong);border-radius:18px;color:var(--ux-ink);font-family:var(--ux-font-mono);font-size:clamp(16px,2vw,18px);padding:20px 22px;min-height:60px;outline:0;transition:border-color .2s,box-shadow .2s;position:relative;z-index:1;background-color:transparent}
.scan-url::placeholder{color:transparent}
.scan-url:focus{border-color:var(--ux-brand);box-shadow:var(--ux-focus-ring)}
.scan-ghost{position:absolute;left:23px;top:0;bottom:0;display:flex;align-items:center;font-family:var(--ux-font-mono);font-size:clamp(16px,2vw,18px);color:var(--ux-ink-muted);pointer-events:none;white-space:nowrap;overflow:hidden;z-index:0}
.scan-caret{margin-left:2px;color:var(--ux-brand);animation:caret-blink 1s steps(1) infinite}
@keyframes caret-blink{50%{opacity:0}}
.scan-url:focus + .scan-ghost,.scan-url:not(:placeholder-shown) + .scan-ghost{display:none}
.scan-go{flex:none;min-height:60px;border:0;cursor:pointer;font:800 17px/1 var(--ux-font-sans);color:var(--ux-on-brand);background:var(--ux-brand);padding:18px 30px;border-radius:18px;box-shadow:var(--ux-shadow-md);display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .18s cubic-bezier(.2,.7,.2,1),box-shadow .18s;white-space:nowrap}
.scan-go .arw{display:inline-block;transition:transform .2s cubic-bezier(.2,.7,.2,1)}
.scan-go:hover{transform:translateY(-2px);box-shadow:var(--ux-shadow-lg)}
.scan-go:hover .arw{transform:translateX(5px)}
.scan-hint{font:600 13.5px/1.5 var(--ux-font-mono);color:var(--ux-ink-muted);margin:14px 0 0}
.scan-hint b{color:var(--ux-ink)}




.score__n{font-family:var(--ux-font-sans);font-weight:var(--ux-weight-bold);letter-spacing:var(--ux-track-tight);color:var(--ux-brand-ink);font-variant-numeric:tabular-nums;line-height:var(--ux-leading-solid)}
.score__d{font-family:var(--ux-font-mono);color:var(--ux-ink-muted)}
.score__band{font:var(--ux-weight-semibold) var(--ux-text-caption)/1 var(--ux-font-mono);letter-spacing:var(--ux-track-wide);text-transform:uppercase;color:var(--ux-ink-muted)}

.score--dial{position:relative;width:120px;height:120px;display:grid;place-items:center}
.score__ring{position:absolute;inset:0;transform:rotate(-90deg)}
.score__ring circle{fill:none;stroke-width:7}
.score__track{stroke:var(--ux-line)}
.score__fill{stroke:var(--ux-brand);stroke-linecap:round;filter:drop-shadow(0 0 6px var(--ux-brand));transition:stroke-dashoffset var(--ux-dur-slow) var(--ux-ease-out)}
.score--dial .score__center{display:flex;flex-direction:column;align-items:center}
.score--dial .score__n{font-size:var(--ux-text-h1)}
.score--dial .score__d{font-size:var(--ux-text-caption)}

.score--badge{display:inline-flex;align-items:baseline;gap:3px;padding:6px 12px;border:1px solid var(--ux-line-strong);border-radius:var(--ux-radius-pill);background:var(--ux-surface)}
.score--badge .score__n{font-size:var(--ux-text-body)}
.score--badge .score__d{font-size:var(--ux-text-caption)}

.score--inline{display:inline-flex;align-items:baseline;gap:4px}
.score--inline .score__n{font-size:var(--ux-text-body)}
.score--inline .score__d{font-size:var(--ux-text-small)}




.section{margin:var(--ux-space-6) 0}
.kicker{font:var(--ux-weight-semibold) var(--ux-text-caption)/1 var(--ux-font-mono);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-brand);margin:0 0 12px}
.section__title{font-size:var(--ux-text-h2);line-height:var(--ux-leading-tight);letter-spacing:var(--ux-track-snug);font-weight:var(--ux-weight-heavy);color:var(--ux-ink);margin:0 0 4px}
.section__blurb{color:var(--ux-ink-muted);font-size:var(--ux-text-small);margin:0 0 18px;line-height:var(--ux-leading-snug)}




.steps{display:grid;gap:var(--ux-space-3)}
.steps--marketing{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.step{display:flex;gap:var(--ux-space-3);align-items:flex-start;padding:var(--ux-space-4);border:1px solid var(--ux-line);border-radius:var(--ux-radius-md);background:var(--ux-surface)}
.step__n{font:var(--ux-weight-heavy) var(--ux-text-h3)/1 var(--ux-font-mono);color:var(--ux-brand-ink);flex:none}
.step__title{font-weight:var(--ux-weight-bold);color:var(--ux-ink);font-size:var(--ux-text-body)}
.step__text{color:var(--ux-ink-muted);font-size:var(--ux-text-small);margin-top:4px;line-height:var(--ux-leading-snug)}
.step__bar{align-self:center;margin-left:auto;width:64px;height:5px;border-radius:var(--ux-radius-pill);background:var(--ux-raised);overflow:hidden;flex:none}
.step__bar i{display:block;height:100%;background:var(--ux-grad)}
.steps--funnel{grid-template-columns:1fr}
.steps--funnel .step{border-left:3px solid var(--ux-brand-tint)}




.table{width:100%;border-collapse:collapse;font-size:var(--ux-text-small)}
.table th,.table td{text-align:left;padding:var(--ux-space-2) var(--ux-space-2);border-bottom:1px solid var(--ux-line)}
.table th{font:var(--ux-weight-semibold) var(--ux-text-micro)/1 var(--ux-font-mono);letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted)}
.table td{color:var(--ux-ink-muted)}
.table .td--lead{font-weight:var(--ux-weight-bold);color:var(--ux-ink);font-variant-numeric:tabular-nums}
.table--comparison td{text-align:center}
.table--comparison td:first-child{text-align:left;color:var(--ux-ink)}
.table--comparison .col--us{color:var(--ux-brand-ink);font-weight:var(--ux-weight-semibold)}




* { box-sizing: border-box; }
body { margin: 0; font: 15px/1.55 var(--ux-font-sans); color: var(--ux-ink); background: var(--ux-bg); }
a { color: inherit; text-decoration: none; }
.mono { font-family: var(--ux-font-mono); }
.wrap { max-width: var(--ux-maxw); margin: 0 auto; padding: 0 var(--ux-space-5); }
.muted { color: var(--ux-ink-muted); }


header.top { border-bottom: 1px solid var(--ux-line); background: var(--ux-surface); position: sticky; top: 0; z-index: 20; }
.top-row { display: flex; align-items: center; gap: 16px; padding: 12px var(--ux-space-5) 0; }
.top-browse { margin-left: auto; font-size: 13px; color: var(--ux-ink-muted); text-decoration: none; white-space: nowrap; transition: color .15s ease; }
.top-browse:hover { color: var(--ux-brand-ink); }

.top-row .brand { font-size: 18px; }
.brand-tag { font-weight: 500; color: var(--ux-ink-muted); letter-spacing: 0; font-size: 13px; }

.newrun { display: flex; gap: 8px; align-items: stretch; padding: 10px var(--ux-space-5) 12px; }
.newrun-field { position: relative; flex: 1; display: flex; align-items: center; min-width: 0; }
.newrun-ico { position: absolute; left: 14px; color: var(--ux-ink-muted); font-size: 16px; pointer-events: none; }
.newrun-field input { width: 100%; border: 1px solid var(--ux-line); border-radius: 11px; padding: 12px 14px 12px 40px; font-size: 14.5px; outline: none; background: var(--ux-bg); color: var(--ux-ink); min-width: 0; transition: border-color .15s ease, box-shadow .15s ease; }
.newrun-field input::placeholder { color: var(--ux-ink-muted); }
.newrun-field input:focus { border-color: var(--ux-brand); box-shadow: 0 0 0 3px var(--ux-brand-tint); }
.newrun button { flex: none; border: 0; background: var(--ux-brand); color: var(--ux-on-brand); font-weight: 600; font-size: 14px; border-radius: 11px; padding: 0 20px; cursor: pointer; white-space: nowrap; transition: background .15s ease, transform .1s ease; }
.newrun button:hover { background: var(--ux-brand-hover); }
.newrun button:active { transform: scale(.98); }


h1 { font-size: 30px; letter-spacing: -.03em; margin: var(--ux-space-6) 0 var(--ux-space-1); font-family: var(--ux-font-display); }
h2 { font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--ux-ink-muted); margin: 38px 0 var(--ux-space-3); font-weight: 600; }
.sub { color: var(--ux-ink-muted); margin: 0 0 var(--ux-space-2); }
.pill { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; color: var(--ux-ink-muted); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-pill); padding: 3px 10px; }

.no { color: var(--ux-line-strong); }



.app-card { background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); padding: 18px; }
.grid { display: grid; gap: var(--ux-space-4); }
.app-section-head { display: flex; align-items: baseline; gap: 10px; margin: 36px 0 10px; }
.app-section-head h2 { margin: 0; } .app-section-head .bl { color: var(--ux-ink-muted); font-size: 13px; font-weight: 400; text-transform: none; letter-spacing: 0; }


.lead { display: flex; flex-direction: column; gap: var(--ux-space-3); }

.dom { font-weight: 650; font-size: 17px; letter-spacing: -.02em; } .cat { color: var(--ux-ink-muted); font-size: 13px; }


.rcardgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.rcard { display: flex; flex-direction: column; gap: 13px; background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: 14px; padding: 16px 18px; transition: transform .14s, box-shadow .14s, border-color .14s; }
.rcard:hover { border-color: var(--ux-line-strong); transform: translateY(-2px); box-shadow: var(--ux-shadow-sm); }
.rcard[hidden] { display: none; }
.rcard-head { display: grid; grid-template-columns: 40px 1fr auto; gap: 12px; align-items: center; }
.rcard-fav { width: 40px; height: 40px; border-radius: 10px; background: #fff; display: flex; align-items: center; justify-content: center; overflow: hidden; border: 1px solid var(--ux-line); }
.rcard-fav img { width: 100%; height: 100%; object-fit: contain; padding: 6px; box-sizing: border-box; }
.rcard-mono { font-weight: 800; font-size: 18px; color: var(--bc); }
.rcard-id { min-width: 0; }
.rcard-dom { font-weight: 650; font-size: 15.5px; letter-spacing: -.01em; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rcard-ft { display: inline-block; margin-top: 3px; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--ux-brand-ink); background: var(--ux-brand-tint); border-radius: var(--ux-radius-pill); padding: 2px 8px; }
.rcard-pb { display: inline-block; margin: 3px 0 0 6px; font-size: 11px; text-transform: uppercase; letter-spacing: .05em; color: var(--ux-violet-ink, #7A2BFF); border: 1px solid currentColor; border-radius: var(--ux-radius-pill); padding: 1px 8px; opacity: .9; }
.stars { display: inline-flex; gap: 1px; }
.star { color: var(--ux-line-strong); font-size: 12px; } .star.on { color: var(--ux-warn); }


.hubfilter { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 18px; }
.hf { display: inline-flex; align-items: center; gap: 7px; font: inherit; font-size: 13px; cursor: pointer; background: var(--ux-surface); color: var(--ux-ink-muted); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-pill); padding: 7px 14px; transition: .12s; }
.hf:hover { border-color: var(--ux-line-strong); color: var(--ux-ink); }
.hf.on { background: var(--ux-brand); border-color: var(--ux-brand); color: var(--ux-on-brand); }
.hf span { font-size: 11px; opacity: .7; font-variant-numeric: tabular-nums; }
.hf.on span { opacity: .85; }




.rubric { background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); padding: 22px 24px; }
.rub-blk { color: var(--ux-ink-muted); } .rub-blk b { color: var(--ux-ink); }
.rub-head { display: flex; align-items: center; gap: 16px; padding-bottom: 16px; border-bottom: 1px solid var(--ux-line); margin-bottom: 16px; }
.rub-score { font-size: 52px; font-weight: 800; letter-spacing: -.03em; line-height: 1; } .rub-score small { font-size: 20px; color: var(--ux-ink-muted); font-weight: 600; }
.rub-band { font-size: 13px; text-transform: uppercase; letter-spacing: .05em; color: var(--ux-ink-muted); margin-top: 4px; }
.rub-cats { display: grid; gap: 14px; }
.rub-top { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 5px; } .rub-lbl { font-weight: 600; font-size: 14px; } .rub-pts { color: var(--ux-ink-muted); font-size: 13px; }
.rub-track { height: 7px; background: var(--ux-raised); border-radius: var(--ux-radius-pill); overflow: hidden; } .rub-fill { display: block; height: 100%; border-radius: var(--ux-radius-pill); }
.rub-sig { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.rub-chip { font-size: 11px; background: var(--ux-brand-tint); color: var(--ux-brand-ink); border-radius: var(--ux-radius-pill); padding: 2px 9px; }
.rub-none { font-size: 11px; color: var(--ux-line-strong); }
.rub-method { font-size: 12px; color: var(--ux-ink-muted); line-height: 1.5; margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--ux-line); }


.pal-bar { display: flex; height: 42px; border-radius: var(--ux-radius-sm); overflow: hidden; border: 1px solid var(--ux-line); }
.pal-seg { height: 100%; } .pal-seg:not(:last-child) { border-right: 1px solid rgba(255,255,255,.06); }
.pal-tiles { display: grid; gap: 8px; }
.pal-tile { display: flex; align-items: center; gap: 11px; background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-sm); padding: 9px 12px; }
.pal-chip { width: 30px; height: 30px; border-radius: 7px; border: 1px solid var(--ux-line); flex: none; } .pal-tile b { font-size: 13px; text-transform: capitalize; display: block; } .pal-tile .mono { font-size: 12px; color: var(--ux-ink-muted); }
.pal-demo { margin-top: 12px; padding: 22px; border-radius: var(--ux-radius-md); border: 1px solid var(--ux-line); max-width: 420px; }
.pal-card { padding: 18px; } .pal-badge { display: inline-block; font-size: 11px; padding: 3px 10px; border-radius: var(--ux-radius-pill); font-weight: 600; } .pal-card p { font-size: 14px; margin: 10px 0; } .pal-btn { border: 0; color: #fff; font-weight: 600; padding: 9px 16px; cursor: default; }
.pal-demo-cap { font-size: 11px; color: var(--ux-ink-muted); margin-top: 10px; text-align: center; }


.bk-more { margin-top: 14px; }
.bk-more > summary { cursor: pointer; font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase;
  color: var(--ux-accent-ink, var(--ux-accent)); list-style: none; }
.bk-more > summary::-webkit-details-marker { display: none; }
.bk-more[open] > summary { margin-bottom: 12px; }


.radrow { display: flex; gap: 18px; flex-wrap: wrap; align-items: flex-end; }
.rad-item { text-align: center; } .rad-sq { width: 64px; height: 64px; background: var(--ux-brand-tint); border: 1.5px solid var(--ux-brand); margin-bottom: 6px; } .rad-item .mono { font-size: 12px; color: var(--ux-ink-muted); }


.tgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; }
.tcell { display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: var(--ux-radius-sm); border: 1px solid var(--ux-line); font-size: 13.5px; }
.tcell.on { background: var(--ux-brand-tint); border-color: rgba(255,47,185,.35); color: var(--ux-brand-ink); font-weight: 600; }
.tcell.off { background: var(--ux-raised); color: var(--ux-line-strong); }
.tcell summary { display: flex; align-items: center; gap: 8px; cursor: pointer; list-style: none; } .tcell summary::-webkit-details-marker { display: none; }
.tcell .tc-ic { font-weight: 700; } .tcell .tc-lbl { flex: 1; } .tc-n { font-size: 11px; background: var(--ux-brand); color: var(--ux-on-brand); border-radius: var(--ux-radius-pill); padding: 1px 7px; }
details.tcell { display: block; } details.tcell[open] { background: var(--ux-surface); }
.tc-ev { font-family: var(--ux-font-mono); font-size: 11.5px; color: var(--ux-ink-soft); background: var(--ux-raised); border-radius: 8px; padding: 10px; margin: 10px 0 0; white-space: pre-wrap; max-height: 160px; overflow: auto; }


.spec-hero { width: 100vw; margin: 0 calc(50% - 50vw) var(--ux-space-6); background: var(--spec-wash); }
.spec-hero-veil { background: linear-gradient(color-mix(in srgb, var(--ux-bg) 88%, transparent), color-mix(in srgb, var(--ux-bg) 78%, transparent)); padding: var(--ux-space-7) max(var(--ux-space-5), calc(50vw - var(--ux-maxw)/2)) var(--ux-space-5); }
.spec-hero-top { display: flex; align-items: flex-start; justify-content: space-between; gap: var(--ux-space-6); flex-wrap: wrap; }
.spec-id { display: flex; gap: var(--ux-space-4); align-items: center; min-width: 0; }
.spec-fav { width: 56px; height: 56px; flex: none; border-radius: var(--ux-radius-lg); display: grid; place-items: center; box-shadow: var(--ux-shadow-sm); font: 700 24px/1 var(--ux-font-display); }
.spec-fav img { width: 36px; height: 36px; object-fit: contain; }
.spec-title { font: 700 clamp(24px, 4vw, 40px)/1.1 var(--ux-font-display); color: var(--ux-ink); margin: 0; letter-spacing: -.02em; overflow-wrap: anywhere; }
.spec-title-x { color: var(--ux-ink-soft); font-weight: 500; }
.spec-sub { color: var(--ux-ink-muted); font-size: 12px; margin-top: var(--ux-space-1); }
.spec-print { display: flex; align-items: center; gap: var(--ux-space-1); margin-top: var(--ux-space-2); }
.spec-chip { width: 18px; height: 18px; border-radius: var(--ux-radius-sm); border: 1px solid var(--ux-line-strong); display: inline-block; }
.spec-print-hex { font-size: 11px; color: var(--ux-ink-muted); margin-left: var(--ux-space-2); letter-spacing: .02em; }
.spec-rail { display: flex; gap: var(--ux-space-5); flex-wrap: wrap; }
.spec-stat { text-align: right; min-width: 76px; }
.spec-num { display: block; font: 700 34px/1 var(--ux-font-mono); color: var(--ux-ink); font-variant-numeric: tabular-nums; }
.spec-num .spec-den { font-size: 15px; color: var(--ux-ink-muted); font-weight: 500; }
.spec-stat small { display: block; margin-top: var(--ux-space-1); font-family: var(--ux-font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .08em; color: var(--ux-ink-soft); }
.spec-stat .stars { display: block; margin-top: 2px; }
.spec-film { display: flex; margin-top: var(--ux-space-6); padding-left: 10px; overflow-x: auto; scrollbar-width: none; }
.spec-film::-webkit-scrollbar { display: none; }
.spec-frame { position: relative; flex: none; height: 80px; margin-left: -10px; border: 2px solid var(--ux-surface); border-radius: var(--ux-radius-sm); overflow: hidden; box-shadow: var(--ux-shadow-sm); transition: transform .15s ease; background: var(--ux-surface); }
.spec-frame:hover { transform: translateY(-6px) rotate(-1deg); z-index: 2; }
.spec-frame img { height: 100%; width: auto; max-width: 140px; object-fit: cover; object-position: top; display: block; }
.spec-frame-n { position: absolute; left: 4px; bottom: 4px; font: 700 11px/1 var(--ux-font-mono); background: var(--ux-ink); color: var(--ux-bg); padding: 3px 6px; border-radius: var(--ux-radius-pill); }
@media (max-width: 720px) { .spec-rail { width: 100%; justify-content: space-between; gap: var(--ux-space-3); } .spec-stat { text-align: left; } }


.tspec { display: grid; grid-template-columns: 1fr 220px; gap: var(--ux-space-5); align-items: start; }
.tspec-stage { border: 1px solid var(--ux-line); border-radius: var(--ux-radius-lg); padding: var(--ux-space-7) var(--ux-space-6); box-shadow: var(--ux-shadow-sm); overflow: hidden; }
.tspec-h { position: relative; margin: 0 0 var(--ux-space-4); padding-right: 56px; overflow-wrap: anywhere; }
.tspec-px { position: absolute; right: 0; top: .2em; font-size: 11px; color: var(--ux-ink-muted); background: var(--ux-raised); padding: 2px 7px; border-radius: var(--ux-radius-pill); font-weight: 400; }
.tspec-stage p { margin: var(--ux-space-4) 0; }
.tspec-list { margin: 0 0 var(--ux-space-5); padding-left: 1.2em; line-height: 1.7; opacity: .92; }
.tspec-btnrow { display: flex; gap: var(--ux-space-3); flex-wrap: wrap; }
.tspec-btn { border: 0; padding: 12px 22px; border-radius: var(--ux-radius-pill); font-size: 15px; font-weight: 600; cursor: default; }
.tspec-btn[disabled] { opacity: .38; }
.tspec-note { font-size: 11px; opacity: .75; font-weight: 400; }
.tspec-rail { border: 1px solid var(--ux-line); border-radius: var(--ux-radius-lg); background: var(--ux-surface); padding: var(--ux-space-5); }
.tspec-rail-h { font-size: 11px; letter-spacing: .1em; color: var(--ux-ink-muted); margin: var(--ux-space-4) 0 var(--ux-space-2); }
.tspec-rail-h:first-of-type { margin-top: 0; }

.tspec-ladder { display: flex; flex-direction: column; gap: var(--ux-space-2); }
.tspec-rung { display: flex; align-items: baseline; gap: var(--ux-space-3); color: var(--ux-ink); border-bottom: 1px dashed var(--ux-line); padding-bottom: var(--ux-space-1); }
.tspec-rung-label { font-size: 11px; color: var(--ux-ink-muted); min-width: 38px; }
.tspec-wts { display: flex; flex-wrap: wrap; gap: var(--ux-space-3); }
.tspec-wt { text-align: center; color: var(--ux-ink); }
.tspec-wt .mono { display: block; font-size: 11px; color: var(--ux-ink-muted); margin-top: 2px; }
.tspec-fams { font-size: 12px; color: var(--ux-ink-soft); background: var(--ux-raised); padding: var(--ux-space-2) var(--ux-space-3); border-radius: var(--ux-radius-sm); overflow-wrap: anywhere; }
.tspec-cap { margin-top: var(--ux-space-4); font-size: 12px; color: var(--ux-ink-muted); border-top: 1px solid var(--ux-line); padding-top: var(--ux-space-3); }
.tspec-cap .mono { font-size: 11px; display: block; margin-top: var(--ux-space-1); }
.tspec-empty { border: 1px dashed var(--ux-line-strong); border-radius: var(--ux-radius-lg); padding: var(--ux-space-6); color: var(--ux-ink-muted); text-align: center; display: block; }
@media (max-width: 820px) { .tspec { grid-template-columns: 1fr; } }


.offer-exhibit { position: relative; border: 2px dashed var(--ux-brand); border-radius: var(--ux-radius-lg); padding: var(--ux-space-7) var(--ux-space-6) var(--ux-space-5); margin-top: var(--ux-space-4); background: color-mix(in srgb, var(--ux-brand-tint) 40%, var(--ux-bg)); }
.offer-tag { position: absolute; top: -11px; left: var(--ux-space-5); background: var(--ux-brand); color: var(--ux-on-brand); font-size: 11px; letter-spacing: .1em; padding: 4px 12px; border-radius: var(--ux-radius-pill); }
.offer-card { max-width: 420px; margin: 0 auto; padding: var(--ux-space-6); border: 1px solid var(--ux-line); box-shadow: var(--ux-shadow-md); }
.offer-pricerow { display: flex; align-items: baseline; gap: var(--ux-space-3); flex-wrap: wrap; }
.offer-anchor { text-decoration: line-through; opacity: .55; font-size: 20px; }
.offer-price { font-size: 44px; font-weight: 800; letter-spacing: -.02em; line-height: 1; font-variant-numeric: tabular-nums; }
.offer-price-none { font-size: 14px; font-weight: 400; opacity: .6; }
.offer-off { font-size: 12px; font-weight: 700; padding: 4px 10px; border-radius: var(--ux-radius-pill); white-space: nowrap; }
.offer-tiers { display: flex; gap: var(--ux-space-3); margin-top: var(--ux-space-2); font-size: 13px; opacity: .6; }
.offer-toggle { display: flex; gap: var(--ux-space-2); margin-top: var(--ux-space-5); padding: var(--ux-space-1); border: 1px solid color-mix(in srgb, var(--offer-accent, var(--ux-line)) 40%, transparent); border-radius: var(--ux-radius-pill); width: fit-content; }
.offer-opt { font-size: 13px; font-weight: 600; padding: 7px 16px; opacity: .55; }
.offer-opt.on { opacity: 1; }
.offer-gift { display: flex; align-items: center; gap: var(--ux-space-3); margin-top: var(--ux-space-4); font-size: 14px; }
.offer-gift-tag { background: var(--ux-ok); color: var(--ux-on-brand); font: 700 11px/1 var(--ux-font-mono); letter-spacing: .08em; padding: 5px 9px; }
.offer-cta { display: block; width: 100%; border: 0; margin-top: var(--ux-space-5); padding: 15px 24px; font-size: 16px; font-weight: 700; cursor: default; }
.offer-src { text-align: center; margin-top: var(--ux-space-4); font-size: 11px; letter-spacing: .05em; color: var(--ux-ink-muted); }
.offer-empty { text-align: center; color: var(--ux-ink-soft); }
.offer-empty p { font-size: 17px; margin: var(--ux-space-3) 0 var(--ux-space-2); }
.offer-empty .offer-tag { position: static; display: inline-block; }


.fmap { display: flex; align-items: flex-start; gap: 0; overflow-x: auto; padding-bottom: var(--ux-space-3); scrollbar-width: thin; }
.fm-step { flex: none; width: 200px; scroll-snap-align: start; text-align: center; }
.fm-frame { border: 2px solid var(--ux-line-strong); border-radius: 10px; overflow: hidden; background: var(--ux-surface); box-shadow: var(--ux-shadow-sm); }
.fm-frame.fm-desktop { aspect-ratio: 16/10; } .fm-frame.fm-mobile { width: 120px; margin: 0 auto; aspect-ratio: 9/16; }
.fm-frame img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block; }
.fm-frame.stalled { opacity: .5; filter: grayscale(.6); }
.fm-conn { flex: none; align-self: center; width: 28px; height: 2px; background: repeating-linear-gradient(90deg, var(--ux-brand) 0 5px, transparent 5px 10px); margin-top: -20px; }
.fm-cap { font-size: 13px; margin-top: 8px; display: flex; align-items: center; gap: 6px; justify-content: center; }
.fm-pill { font: 700 11px/1 var(--ux-font-mono); background: var(--ux-brand); color: var(--ux-on-brand); border-radius: var(--ux-radius-pill); padding: 3px 8px; }
.sdstep { display: grid; grid-template-columns: 300px 1fr; gap: var(--ux-space-5); padding: var(--ux-space-5) 0; border-top: 1px solid var(--ux-line); align-items: start; }
.sdstep:first-child { border-top: 0; }
.sd-shot { display: block; border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); overflow: hidden; box-shadow: var(--ux-shadow-sm); }
.sd-shot img { width: 100%; display: block; }
.sd-head { display: flex; align-items: center; gap: 10px; font-size: 17px; } .sd-title { font-size: 12px; color: var(--ux-ink-muted); margin: 8px 0; }
.sd-badges { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.sd-badge { font-size: 12px; background: var(--ux-brand-tint); color: var(--ux-brand-ink); border-radius: var(--ux-radius-pill); padding: 4px 11px; font-weight: 600; }
.sd-ctas { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; } .sd-cta { font-size: 12px; font-family: var(--ux-font-mono); color: var(--ux-ink-soft); background: var(--ux-raised); border-radius: 6px; padding: 3px 8px; }
@media (max-width: 640px) { .sdstep { grid-template-columns: 1fr; } }


.chips { display: flex; flex-wrap: wrap; gap: var(--ux-space-2); }
.chip { border: 1px solid var(--ux-line); background: var(--ux-surface); border-radius: var(--ux-radius-pill); padding: 5px 11px; font-size: 12.5px; }
.chip.on { border-color: #cfe0b8; background: var(--ux-ok-tint); }
.chip.warn { border-color: var(--ux-warn); background: var(--ux-warn-tint); color: var(--ux-warn); }
.chip b { font-family: var(--ux-font-mono); }


.scalerow { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 6px; }
.scalerow .s { font-family: var(--ux-font-mono); font-size: 11px; border: 1px solid var(--ux-line); border-radius: 6px; padding: 2px 7px; color: var(--ux-ink-muted); }


.app-badge-stall { font-size: 11px; color: var(--ux-warn); background: var(--ux-warn-tint); border: 1px solid var(--ux-warn); border-radius: 6px; padding: 1px 7px; }





.pat { padding: 13px 16px; border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); background: var(--ux-surface); margin-bottom: 10px; }

.pat b { letter-spacing: -.01em; } .pat .d { color: var(--ux-ink-muted); font-size: 13px; margin-top: 3px; }



.app-tabs { display: flex; gap: 6px; margin-bottom: 8px; flex-wrap: wrap; }

.tab { font-size: 12px; border: 1px solid var(--ux-line); background: var(--ux-surface); color: var(--ux-ink); border-radius: 8px; padding: 5px 11px; cursor: pointer; }
.tab.on { background: var(--ux-ink); color: var(--ux-bg); border-color: var(--ux-ink); }
pre { background: var(--ux-code-bg); color: var(--ux-code-ink); padding: 14px; border-radius: var(--ux-radius-md); overflow: auto; font-size: 12px; line-height: 1.5; margin: 0; max-height: 340px; max-width: 100%; }
.copy { float: right; font-size: 11px; border: 1px solid #4a463f; color: var(--ux-line-strong); background: #26231f; border-radius: 7px; padding: 3px 9px; cursor: pointer; }



.kv { display: flex; gap: 8px; font-size: 13px; margin-top: 6px; } .kv .k { color: var(--ux-ink-muted); min-width: 120px; }


.disabled-banner { background: var(--ux-raised); border: 1px dashed var(--ux-line-strong); border-radius: var(--ux-radius-md); padding: 12px 16px; color: var(--ux-ink-muted); font-size: 13px; margin-bottom: 12px; }
.disabled-wrap { opacity: .55; filter: grayscale(.3); }


footer { color: var(--ux-ink-muted); font-size: 12px; text-align: center; padding: 50px 0 30px; }


@media (max-width: 640px) { .brand-tag { display: none; } .newrun { padding-top: 8px; padding-bottom: 10px; } }


.agentbar { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 14px 0 0; padding: 10px 15px; background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-sm); font-size: 13px; }
.agentbar-lbl { color: var(--ux-ink-muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.agentbar a { color: var(--ux-brand-ink); text-decoration: none; border-bottom: 1px solid transparent; }
.agentbar a:hover { border-bottom-color: var(--ux-brand); }





.cov { align-self: center; padding: 2.5px 9px 3px; border-radius: 99px; font-size: 11px; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; font-style: normal; cursor: help; }
.cov-high    { color: #52e2ac; background: rgba(53,214,155,.12); border: 1px solid rgba(53,214,155,.4); }
.cov-partial { color: #ffcf70; background: rgba(255,194,75,.12); border: 1px solid rgba(255,194,75,.38); }
.cov-low     { color: #ff8296; background: rgba(255,92,114,.12); border: 1px solid rgba(255,92,114,.38); }
.cov-none    { color: var(--ux-ink-muted); background: transparent; border: 1px dashed rgba(179,155,216,.4); }


.sb { background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: 18px;
  padding: 24px 28px 18px; margin: 30px 0; scroll-margin-top: 24px;
  font-family: 'Helvetica Neue', system-ui, sans-serif; color: var(--ux-ink); }
.sb-head { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 6px 26px; align-items: center; padding-bottom: 20px; }
.sb-num { font-size: 58px; font-weight: 700; letter-spacing: -.04em; line-height: .95;
  background: var(--ux-grad); -webkit-background-clip: text; background-clip: text; color: transparent; }
.sb-num small { font-size: 19px; font-weight: 500; letter-spacing: 0; }
.sb-band { font-family: Georgia, serif; font-style: italic; font-size: 20px; color: var(--ux-ink); }
.sb-band .stars { font-style: normal; margin-left: 8px; }
.sb-read { margin: 6px 0 0; max-width: 62ch; font-size: 13px; line-height: 1.55; color: var(--ux-ink-muted); }
.sb-read b { color: var(--ux-ink); font-weight: 600; }
.sb-key { display: grid; gap: 6px; align-self: start; font-size: 11px; letter-spacing: .06em; color: var(--ux-ink-muted); }
.sb-key span { display: flex; align-items: center; gap: 7px; }
.sb-key i { width: 9px; height: 9px; border-radius: 3px; border: 1px dashed rgba(179,155,216,.45); }
.sb-key i.on { border: 0; background: var(--ux-grad); }

.sb-rows { display: grid; }

.sb-row { display: grid; grid-template-columns: 230px minmax(0,1fr);
  grid-template-areas: "cat meter" "interp interp" "receipt receipt" "detail detail";
  gap: 6px 26px; padding: 15px 0 17px; border-top: 1px solid var(--ux-line); align-items: start; }
.sb-cat { grid-area: cat; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding-top: 1px; }
.sb-cat-l { font-size: 14.5px; font-weight: 600; letter-spacing: -.01em; }
.sb-mark { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; }
.sb-mark-lead { color: var(--ux-brand); }
.sb-mark-lag { color: var(--ux-ink-muted); }
.sb-meter { grid-area: meter; display: flex; align-items: center; gap: 14px; }

.sb-lane { flex: 1; display: block; min-width: 0; }
.sb-track { position: relative; height: 8px; border-radius: 99px; background: rgba(10,6,17,.65); overflow: hidden; }
.sb-fill { position: absolute; inset: 0 auto 0 0; border-radius: 99px; background: var(--ux-grad);
  box-shadow: 0 0 10px rgba(255,47,185,.4); animation: sb-fill-in .9s .1s cubic-bezier(.25,.75,.25,1) backwards; }
@keyframes sb-fill-in { from { width: 0 } }
.sb-track i { position: absolute; top: 0; bottom: 0; width: 1px; background: rgba(179,155,216,.18); }
.sb-track i:nth-of-type(1) { left: 25% } .sb-track i:nth-of-type(2) { left: 50% } .sb-track i:nth-of-type(3) { left: 75% }
.sb-scale { margin: 8px 0 0; font-size: 11px; line-height: 1.5; color: var(--ux-ink-muted); max-width: 62ch; }
.sb-pts { flex: none; width: 52px; font-size: 14px; font-weight: 600; color: var(--ux-ink); }
.sb-pts small { font-size: 11px; font-weight: 400; color: var(--ux-ink-muted); }
.sb-capped { flex: none; font-size: 11px; font-style: normal; letter-spacing: .12em; text-transform: uppercase;
  color: var(--ux-ink-muted); border: 1px solid var(--ux-line); border-radius: 99px; padding: 2px 7px; cursor: help; }

.sb-interp { grid-area: interp; margin: 0; font-size: 12.5px; line-height: 1.5; color: var(--ux-ink-muted); }
.sb-receipt { grid-area: receipt; margin: 0; font-size: 12px; line-height: 1.5; color: var(--ux-ink); font-style: italic; }
.sb-receipt-l { font-style: normal; color: var(--ux-ink-muted); }
.sb-detail { grid-area: detail; margin-top: 2px; }
.sb-detail-sum { cursor: pointer; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase;
  color: var(--ux-accent-ink, var(--ux-accent)); list-style: none; }
.sb-detail-sum::-webkit-details-marker { display: none; }
.sb-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.sb-chip { display: inline-flex; align-items: baseline; gap: 6px; padding: 3.5px 10px 4.5px; border-radius: 99px;
  font-size: 11.5px; line-height: 1.35; color: rgba(179,155,216,.8); border: 1px dashed rgba(179,155,216,.32); cursor: help; }
.sb-chip b { font-weight: 600; font-size: 11px; opacity: .75; font-family: ui-monospace, "SF Mono", Menlo, monospace; }
.sb-chip.on { color: #ffa7e0; background: rgba(255,47,185,.09); border: 1px solid rgba(255,47,185,.38); }
.sb-na { align-self: center; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: rgba(179,155,216,.55); cursor: help; padding: 3px 2px; }
.sb-method { margin-top: 4px; padding-top: 13px; border-top: 1px solid var(--ux-line);
  font-size: 11px; line-height: 1.6; letter-spacing: .03em; color: var(--ux-ink-muted); }
.sb-blocked { display: grid; gap: 6px; }
.sb-blocked b { font-family: Georgia, serif; font-style: italic; font-size: 22px; font-weight: 400; }
.sb-blocked p { margin: 0; max-width: 56ch; font-size: 13.5px; line-height: 1.55; color: var(--ux-ink-muted); }
.sb-eyebrow { font-size: 11px; letter-spacing: .18em; color: var(--ux-ink-muted); }

@media (max-width: 780px) {
  .sb { padding: 20px 18px 14px; }
  .sb-head { grid-template-columns: auto 1fr; }
  .sb-key { grid-column: 1 / -1; grid-template-columns: auto auto; justify-content: start; gap: 14px; }
  .sb-row { grid-template-columns: 1fr; grid-template-areas: "cat" "meter" "interp" "receipt" "detail"; gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
  .sb-fill { animation: none; }
}




.op { margin: 8px 0 30px; }
.op-empty { background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: 14px; padding: 20px 22px; margin: 8px 0 30px; }
.op-emptytx { margin: 0; font-size: 13.5px; line-height: 1.6; color: var(--ux-ink-muted); }





.prov { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
  padding: 3px 9px; border-radius: 99px; cursor: help; align-self: center; white-space: nowrap; }
.prov-measured { color: #52e2ac; background: rgba(53,214,155,.1); border: 1px solid rgba(53,214,155,.35); }
.prov-derived { color: #ffcf70; background: rgba(255,194,75,.1); border: 1px solid rgba(255,194,75,.35); }

.prov-wrap { position: relative; display: inline-flex; align-items: center; }
.prov-tip { position: absolute; left: 0; top: calc(100% + 6px); z-index: var(--ux-z-raised);
  max-width: 34ch; padding: var(--ux-space-2) var(--ux-space-3); border-radius: var(--ux-radius-sm);
  background: var(--ux-ink); color: var(--ux-bg); font-size: var(--ux-text-caption);
  line-height: var(--ux-leading-snug); box-shadow: var(--ux-shadow-md);
  opacity: 0; visibility: hidden; transition: opacity var(--ux-dur-fast) var(--ux-ease-out); pointer-events: none; }
.prov-wrap:hover .prov-tip, .prov:focus-visible + .prov-tip { opacity: 1; visibility: visible; }
.report-section { scroll-margin-top: 20px; }




.fb { display: grid; gap: 26px; margin: 6px 0 30px; }


.fb-steps { display: grid; gap: 14px; }
.fb-step { display: grid; grid-template-columns: 300px minmax(0,1fr); gap: 20px; align-items: start;
  background: var(--ux-surface); border: 1px solid var(--ux-line); border-radius: 16px; padding: 14px; }
.fb-shot { position: relative; border-radius: 10px; overflow: hidden; border: 1px solid var(--ux-line); background: #0d0916; align-self: stretch; }
.fb-shot img { width: 100%; height: 100%; min-height: 150px; max-height: 230px; object-fit: cover; object-position: top; display: block; transition: transform .3s ease, opacity .2s; }
.fb-shot:hover img { transform: scale(1.03); opacity: .92; }
.fb-shot-z { position: absolute; right: 8px; bottom: 8px; width: 26px; height: 26px; display: grid; place-items: center;
  background: rgba(10,6,17,.82); border: 1px solid var(--ux-line); border-radius: 7px; color: var(--ux-on-brand); font-size: 13px; opacity: .8; }

.fb-shot:hover .fb-shot-z { opacity: 1; border-color: rgba(255,47,185,.6); }
.fb-shot--none { display: grid; place-items: center; min-height: 150px; color: var(--ux-ink-muted); font-size: 11px; }

.fb-body { display: grid; align-content: start; gap: 12px; padding: 4px 4px 6px 0; min-width: 0; }
.fb-step-h { display: flex; align-items: baseline; gap: 12px; }
.fb-n { font-size: 12px; color: var(--ux-ink-muted); letter-spacing: .1em; }
.fb-step-t { margin: 0; font-size: 18px; font-weight: 650; letter-spacing: -.01em; color: var(--ux-ink); }

.fb-mark { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; padding: 2px 9px; border-radius: 99px; }
.fb-mark--hi { color: #52e2ac; border: 1px solid rgba(53,214,155,.42); }
.fb-mark--lo { color: var(--ux-ink-muted); border: 1px dashed rgba(179,155,216,.4); }
.fb-score { display: flex; align-items: center; gap: 12px; }
.fb-meter { flex: 1; max-width: 240px; height: 6px; border-radius: 99px; background: rgba(179,155,216,.14); overflow: hidden; }
.fb-meter-fill { display: block; height: 100%; border-radius: 99px; background: var(--ux-grad); }
.fb-strength { font-size: 11.5px; color: var(--ux-ink-muted); white-space: nowrap; }
.fb-line { margin: 0; font-size: 12px; line-height: 1.5; color: var(--ux-ink-muted); }
.fb-line--none { opacity: .7; }
.fb-tags { display: flex; flex-wrap: wrap; gap: 7px; }
.fb-tag { font-size: 11.5px; color: var(--ux-ink-muted); background: rgba(10,6,17,.4); border: 1px solid var(--ux-line); border-radius: 7px; padding: 3px 9px; }

.fb-step--hi, .fb-step--lo { border-left: 0; }

@media (max-width: 720px) {
  .fb-step { grid-template-columns: 1fr; gap: 12px; padding: 12px; }
  .fb-shot img { max-height: 300px; }
}



.wp{text-transform:none;letter-spacing:0;font-size:12px;line-height:1.55;max-width:56ch;margin-top:10px;padding-left:9px;border-left:2px solid var(--ux-line-strong);color:var(--ux-ink-muted);font-weight:400;}
.wp-k{display:inline-block;margin-right:6px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ux-ink-soft);}
.wp-n{color:var(--ux-ink);font-variant-numeric:tabular-nums;font-weight:600;}
.wp code{background:var(--ux-code-bg);color:var(--ux-code-ink);border-radius:4px;padding:1px 5px;font-size:11px;}


html,body{overflow-x:clip;}
.report-section{margin-bottom:30px;}



.docs { background: var(--ux-bg); border-top: 1px solid var(--ux-line); }
.docs-main { min-width: 0; display: block; }


.docs{
  
  --ux-bg:#f5f3fb; --ux-surface:#ffffff; --ux-ink:#1c1533; --ux-ink-muted:#6b5f8a; --ux-line:rgba(28,21,51,.12);
  
  --ux-bg:#f5f3fb; --ux-surface:#ffffff; --ux-raised:#efeaf8;
  --ux-line:rgba(28,21,51,.12); --ux-line-strong:rgba(28,21,51,.22);
  --ux-ink:#1c1533; --ux-ink-soft:#4a3f66; --ux-ink-muted:#6b5f8a;
  --ux-brand:#c4198f; --ux-brand-hover:#a01474; --ux-brand-ink:#b3167f; --ux-brand-tint:rgba(196,25,143,.1);
  
  --ux-ok:#0e6b45; --ux-ok-tint:rgba(31,157,107,.12); --ux-warn:#7a4f00; --ux-warn-tint:rgba(184,134,11,.12);
  --ux-danger:#b01e35; --ux-danger-tint:rgba(209,58,79,.1); --ux-info:#3f5bd6;
  --ux-code-bg:#f3f0fa; --ux-code-ink:#3a2f55; --ux-on-brand:#ffffff;
  background:var(--ux-bg); color:var(--ux-ink);
}





.fb-select{display:flex;flex-wrap:wrap;gap:6px 8px;margin-bottom:18px;border-bottom:1px solid var(--ux-line);}
.fb-tab{appearance:none;cursor:pointer;min-height:44px;background:none;border:0;border-bottom:2px solid transparent;padding:8px 4px 12px;margin-bottom:-1px;font-size:14px;font-weight:600;color:var(--ux-ink-muted);font-family:inherit;transition:color .15s ease,border-color .15s ease;}
.fb-tab em{font-style:normal;font-weight:400;font-size:12px;color:var(--ux-ink-muted);margin-left:7px;}
.fb-tab:hover{color:var(--ux-ink);}
.fb-tab.on{color:var(--ux-ink);border-bottom-color:var(--ux-brand);}
.fb-tab:focus-visible{outline:2px solid var(--ux-brand);outline-offset:2px;border-radius:4px;}
.fb-tab.on em{color:var(--ux-brand);}







.disp-trigger{appearance:none;cursor:pointer;flex:none;background:var(--ux-surface);border:1px solid var(--ux-line);border-radius:999px;padding:3px 10px;font-size:11px;letter-spacing:.03em;color:var(--ux-brand-ink,var(--ux-brand));white-space:nowrap;font-family:inherit;transition:background .15s ease,border-color .15s ease;}
.disp-trigger:hover{background:var(--ux-brand-tint);border-color:var(--ux-brand);}



.xnav{position:relative;z-index:19;width:100vw;margin-left:calc(50% - 50vw);
  border-bottom:1px solid var(--ux-line);background:var(--ux-code-bg);}

.xnav-in{max-width:var(--ux-maxw);margin:0 auto;padding:10px clamp(18px,4vw,44px);display:flex;align-items:center;gap:12px 18px;flex-wrap:wrap;}
.xnav-count{display:inline-flex;align-items:center;gap:7px;color:var(--ux-ink-muted);text-decoration:none;font-family:var(--ux-font-mono);font-size:12px;letter-spacing:.03em;white-space:nowrap;}
.xnav-count b{color:var(--ux-brand);font-size:11px;}
.xnav-count:hover{color:var(--ux-ink);}

.xnav-seg{display:inline-flex;gap:3px;padding:3px;background:var(--ux-surface);border:1px solid var(--ux-line);border-radius:12px;}
.xnav-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:9px;font-size:13px;color:var(--ux-ink-muted);text-decoration:none;white-space:nowrap;transition:background var(--ux-dur-fast) ease,color var(--ux-dur-fast) ease;}
.xnav-pill:hover{color:var(--ux-ink);background:var(--ux-brand-tint);}
.xnav-pill.on{color:var(--ux-on-brand);background:var(--ux-grad);box-shadow:var(--ux-shadow-sm);}
.xnav-pill:focus-visible,.xnav-count:focus-visible,.xnav-all:focus-visible{outline:2px solid var(--ux-focus);outline-offset:2px;border-radius:var(--ux-radius-xs);}
.xnav-i{font-size:11px;}

.xnav-seg .xnav-pill:nth-child(1) .xnav-i{color:var(--ux-ok);}
.xnav-seg .xnav-pill:nth-child(3) .xnav-i{color:var(--ux-brand);}
.xnav-pill.on .xnav-i{color:var(--ux-on-brand);}
.xnav-all{margin-left:auto;color:var(--ux-brand);text-decoration:none;font-size:13px;font-weight:600;white-space:nowrap;}
.xnav-all:hover{text-decoration:underline;}
@media(max-width:640px){
  .xnav-in{padding:9px 18px;gap:9px 12px;}
  .xnav-count{order:1;}
  .xnav-all{order:2;margin-left:auto;}
  .xnav-seg{order:3;width:100%;}
  .xnav-pill{flex:1;justify-content:center;padding:8px 10px;}
}



.ux-bench { font-size: 13.5px; color: var(--ux-ink-muted); margin: 0; } .ux-bench b { color: var(--ux-ink); }

.pbm { display: grid; gap: 14px; }

.pbm-row { padding: 14px 16px; border: 1px solid var(--ux-line); border-radius: var(--ux-radius-sm); background: var(--ux-surface); }
.pbm-top { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 4px; }
.pbm-kind { font: 700 10.5px/1 var(--ux-font-mono); letter-spacing: .1em; padding: 3px 8px; border-radius: var(--ux-radius-pill); background: var(--ux-brand-tint); color: var(--ux-brand-ink); }

.pbm-lever .pbm-kind { background: var(--ux-accent-tint); color: var(--ux-accent-ink); }
.pbm-name { font-weight: 800; letter-spacing: -.01em; color: var(--ux-ink); }
.pbm-claim { margin: 2px 0 8px; color: var(--ux-ink-muted); font-size: 14px; }
.pbm-evs { display: flex; flex-direction: column; gap: 5px; }
.pbm-ev { font-size: 12.5px; color: var(--ux-ink-muted); }
.pbm-ev b { color: var(--ux-ink); font-family: var(--ux-font-mono); font-size: 11px; text-transform: uppercase; letter-spacing: .05em; margin-right: 6px; }
.pbm-ev q { font-style: italic; }
.pbm-note { margin: 4px 0 0; font-size: 12.5px; color: var(--ux-ink-muted); line-height: 1.55; }
.pbm-note b { color: var(--ux-ink); }

.pbm-prov { margin: 10px 0 0; padding-top: 10px; border-top: 1px dashed var(--ux-line-strong); font-size: 11.5px; line-height: 1.55; color: var(--ux-ink-muted); }
.pbm-prov b { color: var(--ux-ink-soft); font-weight: 600; }
.pbm-out { margin-left: 8px; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--ux-ink-muted); border: 1px solid var(--ux-line); border-radius: 99px; padding: 2px 7px; white-space: nowrap; }


.vs-wrap{max-width:960px;margin:0 auto;padding:24px 18px 80px;}
.vs-kicker{margin:0 0 10px;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ux-brand);}
.vs-hero{padding:8px 0 28px;border-bottom:1px solid var(--ux-line);}
.vs-h1{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px;margin:0;font-size:clamp(1.4rem,4.5vw,2.2rem);font-weight:700;letter-spacing:-.02em;color:var(--ux-ink);line-height:1.1;overflow-wrap:anywhere;}
.vs-vs{font-size:.55em;color:var(--ux-ink-muted);text-transform:uppercase;letter-spacing:.15em;font-weight:600;}
.vs-verdict{margin:18px 0 4px;font-size:clamp(1.05rem,2.6vw,1.4rem);line-height:1.35;color:var(--ux-ink);font-weight:500;}
.vs-verdict strong{color:var(--ux-ink);font-weight:750;}
.vs-verdict-sub{margin:0;font-size:11px;letter-spacing:.04em;color:var(--ux-ink-muted);}
.vs-tally{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:22px 0 0;padding:16px;border:1px solid var(--ux-line);border-radius:14px;background:color-mix(in srgb,var(--ux-surface) 60%,transparent);text-align:center;}
.vs-tally-cell{display:flex;flex-direction:column;gap:4px;min-width:0;}
.vs-tally-mid{padding:0 8px;border-left:1px solid var(--ux-line);border-right:1px solid var(--ux-line);}
.vs-tally-n{font-size:clamp(1.8rem,6vw,2.6rem);font-weight:700;line-height:1;color:var(--ux-brand);}
.vs-tally-mid .vs-tally-n{color:var(--ux-ink-muted);}
.vs-tally-l{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ux-ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vs-mismatch{margin:16px 0 0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--ux-warn) 40%,transparent);border-radius:10px;font-size:11px;line-height:1.5;color:var(--ux-ink-muted);}

.vs-cards{display:grid;grid-template-columns:1fr;gap:16px;margin:28px 0;}
.vs-card{position:relative;border:1px solid var(--ux-line);border-radius:16px;padding:18px;background:color-mix(in srgb,var(--ux-surface) 45%,transparent);}
.vs-card-lead-on{border-top:2px solid var(--ux-ok);}
.vs-card-id{display:flex;align-items:center;gap:10px;}
.vs-fav{border-radius:7px;flex:0 0 auto;background:var(--ux-surface);}
.vs-fav-letter{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;font-weight:700;color:var(--ux-ink);border:1px solid var(--ux-line);}
.vs-card-domain{margin:0;font-size:14px;font-weight:600;color:var(--ux-ink);overflow-wrap:anywhere;}
.vs-type{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--ux-ink-muted);}
.vs-card-lead{margin-left:auto;padding:3px 8px;border-radius:999px;font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ux-ok);border:1px solid color-mix(in srgb,var(--ux-ok) 40%,transparent);}
.vs-shot{margin:14px 0;border:1px solid var(--ux-line);border-radius:10px;overflow:hidden;aspect-ratio:16/10;background:var(--ux-bg);}
.vs-shot-img{display:block;width:100%;height:100%;object-fit:cover;object-position:top;}
.vs-shot-none{width:100%;height:100%;background:repeating-linear-gradient(45deg,transparent,transparent 8px,var(--ux-line) 8px,var(--ux-line) 9px);}
.vs-gauge{display:flex;align-items:flex-end;gap:14px;}
.vs-gauge-none{align-items:center;}
.vs-score{margin:0;display:flex;align-items:baseline;gap:2px;}
.vs-score-n{font-size:2.4rem;font-weight:700;line-height:.9;color:var(--ux-ink);}
.vs-score-cap{font-size:12px;color:var(--ux-ink-muted);}
.vs-gauge-side{display:flex;flex-direction:column;gap:3px;padding-bottom:4px;}
.vs-band{font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ux-ink-muted);}
.vs-stars{font-size:12px;color:var(--ux-brand);letter-spacing:1px;}
.vs-card-link{display:inline-block;margin-top:14px;font-size:11px;color:var(--ux-ink-muted);text-decoration:none;border-bottom:1px solid var(--ux-line);}
.vs-card-link:hover{color:var(--ux-ink);}

.vs-h2{margin:0 0 14px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ux-ink-muted);}
.vs-catlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;}
.vs-catrow{padding:14px;border:1px solid var(--ux-line);border-radius:12px;}
.vs-catrow-na{opacity:.82;}   
.vs-catlabel{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px;margin-bottom:10px;}
.vs-catlabel-t{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ux-ink);}
.vs-catlabel-h{font-size:11px;color:var(--ux-ink-muted);flex:1 1 200px;}
.vs-row-chip{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--ux-ink-muted);border:1px solid var(--ux-line);border-radius:999px;padding:2px 7px;}
.vs-bars{display:grid;grid-template-columns:1fr;gap:10px;}
.vs-bar-meta{display:block;margin-bottom:5px;font-size:11px;color:var(--ux-ink-muted);}
.vs-bar-meta em{font-style:normal;opacity:.78;}   
.vs-bar-win .vs-bar-meta{color:var(--ux-ink);}
.vs-win{margin-left:6px;color:var(--ux-ok);}
.vs-bar-track{display:block;height:8px;border-radius:999px;background:var(--ux-line);overflow:hidden;}
.vs-bar-fill{display:block;height:100%;border-radius:999px;background:color-mix(in srgb,var(--ux-ink-muted) 55%,transparent);}
.vs-bar-win .vs-bar-fill{background:var(--ux-ok);}
.vs-bar-na .vs-bar-track{opacity:.5;}
.vs-bar-na-txt{display:block;margin-top:5px;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--ux-ink-muted);}
.vs-foot{margin:16px 0 0;font-size:11px;color:var(--ux-ink-muted);}

.vs-method{margin:30px 0;padding:18px;border-left:2px solid var(--ux-line);}
.vs-method-body{margin:6px 0 0;font-size:13px;line-height:1.6;color:var(--ux-ink-muted);}

.vs-cta{margin-top:34px;padding:26px 20px;border:1px solid var(--ux-line);border-radius:18px;background:color-mix(in srgb,var(--ux-brand) 6%,transparent);text-align:center;}
.vs-cta-h{margin:0 0 16px;font-size:clamp(1.15rem,3vw,1.5rem);font-weight:700;color:var(--ux-ink);}
.vs-cta-form{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;max-width:520px;margin:0 auto;}
.vs-cta-input{flex:1 1 220px;min-width:0;padding:12px 14px;border-radius:10px;border:1px solid var(--ux-line);background:var(--ux-bg);color:var(--ux-ink);font-size:14px;}
.vs-cta-input:focus{outline:2px solid var(--ux-brand);outline-offset:1px;}
.vs-cta-btn{flex:0 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:12px 20px;border-radius:10px;border:0;background:var(--ux-brand);color:var(--ux-on-brand);font-weight:700;font-size:14px;cursor:pointer;}

.vs-cta-btn:disabled{opacity:.7;cursor:default;}
.vs-cta-note{margin:14px 0 0;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--ux-ink-soft);}
.vs-note-warn{color:var(--ux-warn);text-transform:none;letter-spacing:0;font-size:12px;}
.vs-cta-links{margin:14px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px;justify-content:center;font-size:11px;}
.vs-cta-links a{color:var(--ux-ink-muted);text-decoration:none;}
.vs-cta-links a:hover{color:var(--ux-ink);}

@media(min-width:720px){
  .vs-cards{grid-template-columns:1fr 1fr;}
  .vs-bars{grid-template-columns:1fr 1fr;gap:18px;}
  .vs-catlabel{margin-bottom:12px;}
}




.vsbar{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;align-items:center;gap:12px;padding:9px 16px;background:#0a0a0a;border-top:1px solid rgba(255,255,255,.14);color:#ffffff;box-shadow:0 -8px 24px rgba(0,0,0,.35);}
.vsbar[hidden]{display:none;}
.vsbar-me{font-size:11px;letter-spacing:.06em;color:rgba(255,255,255,.58);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:0 1 auto;text-transform:uppercase;}
.vsbar-form{display:flex;align-items:center;gap:8px;margin-left:auto;flex:1 1 auto;justify-content:flex-end;min-width:0;}
.vsbar-q{font-size:11px;color:rgba(255,255,255,.58);white-space:nowrap;}
.vsbar-input{width:170px;max-width:38vw;min-height:44px;padding:7px 10px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0a0a0a;color:#ffffff;font-size:13px;}
.vsbar-input:focus{outline:2px solid #FF2FB9;outline-offset:1px;}
.vsbar-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:7px 15px;border-radius:999px;border:0;background:#FF2FB9;color:#0a0a0a;font-weight:700;font-size:13px;cursor:pointer;white-space:nowrap;}
.vsbar-btn:disabled{opacity:.7;cursor:default;}
.vsbar-x{background:0;border:0;color:rgba(255,255,255,.58);font-size:20px;line-height:1;cursor:pointer;flex:0 0 auto;min-width:44px;min-height:44px;display:grid;place-items:center;}
.vsbar-x:hover{color:#ffffff;}
.vsbar-note{position:absolute;left:16px;right:16px;bottom:100%;margin:0 0 6px;font-size:12px;color:#FFB020;background:#0a0a0a;border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:6px 10px;}
@media(max-width:600px){.vsbar-q{display:none;}.vsbar-me{max-width:42vw;}.vsbar-input{width:110px;}}


.vs-card-scanning .vs-card-id, .vs-card-failed .vs-card-id{align-items:center;}
.vs-card-elapsed{margin-left:auto;font-size:12px;color:var(--ux-brand);font-variant-numeric:tabular-nums;}
.vs-shot-scanning{position:relative;display:flex;align-items:flex-end;justify-content:center;}
.vs-shot-scanning .vs-shot-cap{position:relative;z-index:2;padding:8px;color:var(--ux-ink-muted);}
.vs-scan-shimmer{position:absolute;inset:0;background:linear-gradient(100deg,transparent 20%,color-mix(in srgb,var(--ux-brand) 10%,transparent) 40%,color-mix(in srgb,var(--ux-accent) 12%,transparent) 55%,transparent 75%);background-size:220% 100%;animation:vs-shimmer 1.5s linear infinite;}
@keyframes vs-shimmer{from{background-position:180% 0;}to{background-position:-80% 0;}}
#vs-phase{color:var(--ux-brand);}
.vs-card-failed{border-top:2px solid var(--ux-warn);}
.vs-fail-msg{margin:14px 0;font-size:13px;line-height:1.55;color:var(--ux-ink-muted);}
.vs-card-failed .vs-cta-form{margin-top:6px;}
@media(prefers-reduced-motion:reduce){.vs-scan-shimmer{animation:none;opacity:.5;}}


html{scroll-padding-bottom:76px;}
.vs-cta-btn:focus-visible,.vsbar-btn:focus-visible,.vsbar-x:focus-visible,.vs-card-link:focus-visible,
.agentbar a:focus-visible,
.disp-trigger:focus-visible,.disp-submit:focus-visible,.disp-close:focus-visible,
.disp-field input:focus-visible,.disp-field select:focus-visible,.disp-field textarea:focus-visible{
  outline:2px solid var(--ux-brand);outline-offset:2px;border-radius:6px;
}



.vs-bar-who{display:block;font-size:9px;letter-spacing:.06em;text-transform:uppercase;color:var(--ux-ink-muted);margin-bottom:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.vs-kicker-h{font-weight:400;}


.disp-panel{position:fixed;inset:0;z-index:1000;display:none;align-items:center;justify-content:center;background:rgba(6,6,6,.72);backdrop-filter:blur(4px);padding:5vh 4vw;}
.disp-panel.on{display:flex;animation:disp-in .16s ease;}
@keyframes disp-in{from{opacity:0}to{opacity:1}}
.disp-panel-in{position:relative;width:100%;max-width:420px;max-height:88vh;overflow-y:auto;background:#141018;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:26px 24px 22px;color:#f4effb;}
.disp-close{position:absolute;top:14px;right:14px;width:36px;height:36px;min-width:36px;min-height:36px;display:grid;place-items:center;background:rgba(255,255,255,.06);border:0;border-radius:50%;color:#f4effb;font-size:14px;cursor:pointer;}
.disp-close:hover{background:rgba(255,255,255,.12);}
.disp-h{margin:0 26px 6px 0;font-size:17px;font-weight:700;color:#fff;}
.disp-sub{margin:0 0 18px;font-size:12.5px;line-height:1.5;color:rgba(244,239,251,.62);}
.disp-field{display:block;margin:0 0 12px;font-size:11px;letter-spacing:.04em;color:rgba(244,239,251,.62);}
.disp-field span{display:block;margin-bottom:5px;}
.disp-field em{font-style:normal;opacity:.85;}
.disp-field input,.disp-field select,.disp-field textarea{width:100%;box-sizing:border-box;padding:9px 11px;border-radius:9px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05);color:#f4effb;font-size:13.5px;font-family:inherit;}
.disp-field textarea{resize:vertical;}
.disp-field input[readonly]{opacity:.85;cursor:default;}
.disp-actions{display:flex;align-items:center;gap:14px;margin-top:8px;flex-wrap:wrap;}
.disp-submit{min-height:40px;padding:9px 18px;border-radius:999px;border:0;background:var(--ux-brand,#FF2FB9);color:#0a0611;font-weight:700;font-size:13px;cursor:pointer;font-family:inherit;}
.disp-submit:disabled{opacity:.65;cursor:default;}
.disp-status{font-size:11.5px;line-height:1.4;}
.disp-status-ok{color:#52e2ac;}
.disp-status-err{color:#ff8296;}
@media(max-width:520px){
  .disp-panel{padding:0;align-items:flex-end;}
  .disp-panel-in{max-width:none;border-radius:16px 16px 0 0;max-height:82vh;}
}
@media(prefers-reduced-motion:reduce){.disp-panel.on{animation:none;}}


.dw { display: grid; gap: var(--ux-space-6); margin: 6px 0 30px; }
.dw-head { display: grid; gap: var(--ux-space-3); }
.dw-head-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--ux-space-2) var(--ux-space-4); }
.dw-badge { font-size: var(--ux-text-micro); letter-spacing: var(--ux-track-caps); text-transform: uppercase;
  color: var(--ux-brand-ink); border: 1px solid var(--ux-line-strong); border-radius: var(--ux-radius-pill); padding: 3px 11px; }
.dw-stamp { font-size: var(--ux-text-caption); color: var(--ux-ink-muted); }
.dw-title { margin: 0; font-size: var(--ux-text-h2); font-weight: var(--ux-weight-bold); letter-spacing: var(--ux-track-tight); color: var(--ux-ink); }
.dw-shape { margin: 0; font-size: var(--ux-text-h3); color: var(--ux-ink-soft); font-weight: var(--ux-weight-medium); }
.dw-sub { margin: 0; font-size: var(--ux-text-small); line-height: var(--ux-leading-snug); color: var(--ux-ink-muted); max-width: 62ch; }


.dw-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: var(--ux-space-3);
  padding: var(--ux-space-4); border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); background: var(--ux-raised); }
.dw-fact { display: grid; gap: 2px; }
.dw-fact-v { font-size: var(--ux-text-h2); font-weight: var(--ux-weight-bold); color: var(--ux-ink); letter-spacing: var(--ux-track-snug); }
.dw-fact-l { font-size: var(--ux-text-caption); color: var(--ux-ink-muted); }


.dw-phase { display: grid; gap: var(--ux-space-4); }
.dw-phase-h { margin: 0; font-size: var(--ux-text-small); font-weight: var(--ux-weight-semibold); letter-spacing: var(--ux-track-wide);
  text-transform: uppercase; color: var(--ux-ink-muted); display: flex; align-items: baseline; gap: var(--ux-space-3); }
.dw-phase-n { color: var(--ux-brand-ink); letter-spacing: var(--ux-track-normal); text-transform: none; }
.dw-strip { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: var(--ux-space-4); }
.dw-tile { margin: 0; display: grid; gap: var(--ux-space-2); }
.dw-shot { position: relative; display: block; border-radius: var(--ux-radius-sm); overflow: hidden;
  border: 1px solid var(--ux-line); background: var(--ux-code-bg); aspect-ratio: 3 / 5; cursor: zoom-in; }
.dw-img { width: 100%; height: 100%; object-fit: cover; object-position: top; display: block;
  transition: transform var(--ux-dur-slow) var(--ux-ease-out), opacity var(--ux-dur-base); }
.dw-shot:hover .dw-img { transform: scale(1.04); opacity: .9; }
.dw-tile-cap { display: grid; gap: 1px; align-content: start; }
.dw-tile-n { font-size: var(--ux-text-micro); color: var(--ux-ink-muted); letter-spacing: var(--ux-track-wide); }
.dw-tile-t { font-size: var(--ux-text-caption); color: var(--ux-ink-soft); line-height: var(--ux-leading-tight); font-weight: var(--ux-weight-medium);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.dw-tile-k { font-size: var(--ux-text-micro); color: var(--ux-ink-muted); }
.dw-tile-loop { font-size: var(--ux-text-micro); color: var(--ux-warn); }



.dw-note { border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md);
  background: var(--ux-warn-tint); padding: var(--ux-space-4) var(--ux-space-5); }
.dw-note-h { margin: 0 0 var(--ux-space-2); font-size: var(--ux-text-small); font-weight: var(--ux-weight-semibold);
  letter-spacing: var(--ux-track-wide); text-transform: uppercase; color: var(--ux-ink-soft); }
.dw-note p { margin: 0; font-size: var(--ux-text-small); line-height: var(--ux-leading-normal); color: var(--ux-ink-soft); }
.dw-note strong { color: var(--ux-ink); }


.dw-ledger { border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); background: var(--ux-raised); overflow: hidden; }
.dw-ledger-sum { display: flex; align-items: center; justify-content: space-between; gap: var(--ux-space-3);
  padding: var(--ux-space-4) var(--ux-space-5); cursor: pointer; font-size: var(--ux-text-small); font-weight: var(--ux-weight-semibold);
  color: var(--ux-ink-soft); list-style: none; }
.dw-ledger-sum::-webkit-details-marker { display: none; }
.dw-ledger-sum::after { content: '▸'; color: var(--ux-ink-muted); transition: transform var(--ux-dur-base) var(--ux-ease-out); }
.dw-ledger[open] .dw-ledger-sum::after { transform: rotate(90deg); }
.dw-ledger-hint { color: var(--ux-ink-muted); font-weight: var(--ux-weight-normal); }
.dw-ledger-body { padding: 0 var(--ux-space-5) var(--ux-space-5); display: grid; gap: var(--ux-space-4); }
.dw-ledger-intro { margin: 0; font-size: var(--ux-text-caption); line-height: var(--ux-leading-normal); color: var(--ux-ink-muted); max-width: 68ch; }
.dw-tablewrap { overflow-x: auto; border: 1px solid var(--ux-line); border-radius: var(--ux-radius-sm); }
.dw-table { width: 100%; border-collapse: collapse; font-size: var(--ux-text-caption); }
.dw-table th { text-align: left; padding: var(--ux-space-2) var(--ux-space-3); color: var(--ux-ink-muted);
  font-weight: var(--ux-weight-semibold); letter-spacing: var(--ux-track-wide); text-transform: uppercase; font-size: var(--ux-text-micro);
  border-bottom: 1px solid var(--ux-line); }
.dw-table td { padding: var(--ux-space-2) var(--ux-space-3); border-bottom: 1px solid var(--ux-line); vertical-align: top; }
.dw-table tr:last-child td { border-bottom: 0; }
.dw-q { color: var(--ux-ink-soft); }
.dw-a { color: var(--ux-brand-ink); white-space: nowrap; }
.dw-foot { margin: 0; font-size: var(--ux-text-micro); line-height: var(--ux-leading-snug); color: var(--ux-ink-muted); }

@media (max-width: 640px) {
  .dw-strip { grid-template-columns: repeat(auto-fill, minmax(120px, 1fr)); }
  .dw-a { white-space: normal; }
}


.dw-tile-h { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.dw-req { font-size: 9px; letter-spacing: .06em; text-transform: uppercase; padding: 1px 6px; border-radius: var(--ux-radius-pill); border: 1px solid var(--ux-line); }
.dw-req--forced { color: var(--ux-brand-ink); border-color: var(--ux-line-strong); }
.dw-req--opt { color: var(--ux-ink-muted); }


.dw-machine { display: flex; align-items: center; flex-wrap: wrap; gap: var(--ux-space-2) var(--ux-space-3);
  padding: var(--ux-space-3) var(--ux-space-4); border: 1px dashed var(--ux-line-strong); border-radius: var(--ux-radius-md); background: var(--ux-accent-tint); }
.dw-machine-lbl { font-size: var(--ux-text-caption); color: var(--ux-ink-soft); }
.dw-machine a { font-size: var(--ux-text-caption); color: var(--ux-brand-ink); border-bottom: 1px solid var(--ux-line-strong); }
.dw-machine-note { font-size: var(--ux-text-caption); color: var(--ux-ink-muted); flex: 1 1 240px; }

.dw-sec-h { margin: 0; font-size: var(--ux-text-h3); font-weight: var(--ux-weight-bold); color: var(--ux-ink); letter-spacing: var(--ux-track-snug); }


.dw-sell { display: grid; gap: var(--ux-space-4); }
.dw-sell-h { display: flex; align-items: baseline; justify-content: space-between; gap: var(--ux-space-3); flex-wrap: wrap; }
.dw-sell-full { font-size: var(--ux-text-caption); color: var(--ux-brand-ink); border-bottom: 1px solid var(--ux-line-strong); cursor: zoom-in; }
.dw-plans { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--ux-space-3); }
.dw-plan { border: 1px solid var(--ux-line); border-radius: var(--ux-radius-md); padding: var(--ux-space-4); background: var(--ux-raised); display: grid; gap: var(--ux-space-2); align-content: start; }
.dw-plan--on { border-color: var(--ux-brand); box-shadow: 0 0 0 1px var(--ux-brand); background: var(--ux-brand-tint); }
.dw-plan-h { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.dw-plan-label { font-size: var(--ux-text-small); font-weight: var(--ux-weight-semibold); color: var(--ux-ink); }
.dw-plan-disc { font-size: var(--ux-text-micro); color: var(--ux-danger); border: 1px solid var(--ux-danger-tint); border-radius: var(--ux-radius-pill); padding: 1px 6px; }
.dw-plan-pick { font-size: var(--ux-text-micro); color: var(--ux-on-brand); background: var(--ux-brand); border-radius: var(--ux-radius-pill); padding: 1px 7px; }
.dw-plan-price { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.dw-plan-now { font-size: var(--ux-text-h3); font-weight: var(--ux-weight-bold); color: var(--ux-ink); }
.dw-plan-unit { font-size: var(--ux-text-micro); color: var(--ux-ink-muted); }
.dw-plan-renew { font-size: var(--ux-text-caption); color: var(--ux-ink-muted); text-decoration: line-through; }
.dw-sell-levers { margin: 0; font-size: var(--ux-text-small); line-height: var(--ux-leading-normal); color: var(--ux-ink-soft); }
.dw-sell-levers b { color: var(--ux-ink); font-weight: var(--ux-weight-semibold); }


.dw-soc { display: grid; gap: var(--ux-space-3); }

.dw-soc-hi { display: grid; gap: 2px; padding: var(--ux-space-3) var(--ux-space-4); background: var(--ux-ok-tint); border-radius: var(--ux-radius-sm); }
.dw-soc-v { font-size: var(--ux-text-h3); font-weight: var(--ux-weight-bold); color: var(--ux-ink); }
.dw-soc-l { font-size: var(--ux-text-caption); color: var(--ux-ink-muted); }
.dw-soc-list { margin: 0; padding-left: 1.1em; display: grid; gap: 4px; font-size: var(--ux-text-small); color: var(--ux-ink-soft); }
.dw-soc-list b { font-weight: var(--ux-weight-semibold); }
.dw-model-link { color: var(--ux-brand-ink); border-bottom: 1px solid var(--ux-line-strong); }



.ed-doc{width:100vw;margin-left:calc(50% - 50vw);padding-bottom:clamp(48px,7vw,88px);
  background:var(--ux-bg);color:var(--ux-ink);font-family:var(--ux-font-sans);font-size:var(--ux-text-body);line-height:var(--ux-leading-normal)}
.ed-doc .mono{font-family:var(--ux-font-mono)}
.ed-doc .report-section{max-width:var(--ux-maxw);margin:0 auto;padding:0 clamp(18px,4vw,44px);border:0;background:none}
.ed-doc img{display:block;max-width:100%}


.ed-head{max-width:820px;margin:0 auto;padding:clamp(40px,6vw,64px) 0 0;text-align:center}
.ed-eyebrow{font-size:var(--ux-text-micro);font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-ink-muted);margin:0 0 22px}
.ed-domain{font-family:var(--ux-font-display);font-size:var(--ux-text-display);font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-tight);line-height:var(--ux-leading-tight);margin:0;color:var(--ux-ink)}
.ed-stand{font-size:clamp(19px,2.2vw,23px);line-height:var(--ux-leading-snug);color:var(--ux-ink-soft);margin:22px auto 0;max-width:34em}
.ed-stand b{color:var(--ux-ink);font-weight:var(--ux-weight-bold)}
.ed-meta{font-size:var(--ux-text-caption);color:var(--ux-ink-muted);margin:14px 0 0}
.ed-band{display:inline-block;font-size:var(--ux-text-micro);font-weight:var(--ux-weight-bold);letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-danger);background:var(--ux-danger-tint);border:1px solid var(--ux-danger);border-radius:var(--ux-radius-pill);padding:4px 12px;margin:22px 0 0}
.ed-partial{font-size:var(--ux-text-caption);color:var(--ux-warn);background:var(--ux-warn-tint);border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm);padding:10px 14px;margin:16px auto 0;max-width:60ch}


.ed-score{margin:18px 0 0;font-size:var(--ux-text-body);color:var(--ux-ink-muted);letter-spacing:.02em}
.ed-score b{font-size:1.55em;font-weight:var(--ux-weight-bold);color:var(--ux-ink);font-variant-numeric:tabular-nums}
.ed-score-band{margin-left:8px;text-transform:uppercase;font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-caps);color:var(--ux-ink-soft)}


.ed-rank{margin:6px 0 0;max-width:62ch;font-size:var(--ux-text-micro);line-height:1.5;color:var(--ux-ink-soft);letter-spacing:.01em}
.ed-rank b{font-weight:var(--ux-weight-bold);color:var(--ux-ink-muted);font-variant-numeric:tabular-nums}


.ed-engage{display:inline-flex;vertical-align:middle;margin-left:14px}
.ed-stats{display:inline-flex;align-items:center;gap:4px}
.ed-stats .stat{display:inline-flex;align-items:center;gap:5px;min-height:32px;padding:0 8px;border:0;background:none;
  font:var(--ux-weight-semibold) var(--ux-text-caption)/1 var(--ux-font-mono);color:var(--ux-ink-muted);font-variant-numeric:tabular-nums}
.ed-stats .stat svg{width:14px;height:14px;fill:currentColor;flex:none}
.ed-stats .stat.eye svg circle{fill:currentColor}

.ed-stats button.heart{cursor:pointer;border-radius:var(--ux-radius-pill);transition:color var(--ux-dur-fast) ease,background var(--ux-dur-fast) ease}
.ed-stats button.heart:hover{color:var(--ux-brand);background:var(--ux-brand-tint)}
.ed-stats button.heart:focus-visible{outline:2px solid var(--ux-focus);outline-offset:2px}
.ed-stats button.heart[aria-pressed=true]{color:var(--ux-brand)}
@media (max-width:560px){.ed-stats .stat{min-height:44px;padding:0 10px}}

.ed-figs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 10px;list-style:none;margin:14px 0 0;padding:0}
.ed-figs li{display:inline-flex}
.ed-figs li>a,.ed-figs li>span{display:inline-flex;align-items:baseline;gap:5px;border:1px solid var(--ux-line);border-radius:var(--ux-radius-pill);padding:5px 12px;font-size:var(--ux-text-caption);color:var(--ux-ink-muted);font-family:var(--ux-font-mono)}

.ed-figs li>a{border-color:var(--ux-line-strong);text-decoration:none;cursor:pointer;transition:border-color var(--ux-dur-fast) ease,background var(--ux-dur-fast) ease,color var(--ux-dur-fast) ease}
.ed-figs li>a:hover{border-color:var(--ux-brand);background:var(--ux-brand-tint);color:var(--ux-ink)}
.ed-figs li>a:focus-visible{outline:2px solid var(--ux-focus);outline-offset:2px}
.ed-figs b{color:var(--ux-ink);font-weight:var(--ux-weight-bold);font-variant-numeric:tabular-nums}

.ed-figs .ed-fig--warn>a,.ed-figs .ed-fig--warn>span{border-color:var(--ux-warn);color:var(--ux-warn)}
.ed-figs .ed-fig--warn b{color:var(--ux-warn)}
.ed-figs .ed-fig--warn>a:hover{border-color:var(--ux-warn);background:var(--ux-warn-tint);color:var(--ux-warn)}



.ed-how{margin:16px auto 0;max-width:60ch;font-size:var(--ux-text-caption);text-align:left;border-top:1px solid var(--ux-line)}
.ed-how>summary{list-style:none;cursor:pointer;padding:11px 0;font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-ink-muted);text-align:center}
.ed-how>summary::-webkit-details-marker{display:none}
.ed-how>summary::after{content:'+';float:right;font-weight:var(--ux-weight-bold)}
.ed-how[open]>summary::after{content:'\2212'}
.ed-how>summary:hover,.ed-how>summary:focus-visible{color:var(--ux-brand)}
.ed-how-body{padding:0 0 14px}
.ed-how-p{font-size:var(--ux-text-caption);line-height:1.6;color:var(--ux-ink-muted);margin:0 0 10px;max-width:60ch}
.ed-how-p b{color:var(--ux-ink)}
.ed-how .wp{margin-top:0}



@media (max-width:560px){
  .ed-head{padding-top:24px}
  .ed-eyebrow{margin-bottom:12px}
  .ed-score{margin-top:12px}
  .ed-score b{font-size:1.4em}
  .ed-rank{margin-top:8px}
  .ed-figs{gap:6px;margin-top:12px}
  
  .ed-figs li>a,.ed-figs li>span{padding:4px 9px;font-size:var(--ux-text-micro);gap:4px}
  .ed-how{margin-top:12px}
  .ed-how>summary{padding:9px 0}
}
.ed-controls{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:34px 0 0}
.ed-seg{display:inline-flex;border:1px solid var(--ux-line-strong);border-radius:var(--ux-radius-sm);overflow:hidden;background:var(--ux-surface)}
.ed-seg button{display:flex;align-items:center;gap:7px;border:0;background:none;color:var(--ux-ink-muted);font:var(--ux-weight-semibold) 13px/1 var(--ux-font-sans);padding:9px 14px;cursor:pointer;border-right:1px solid var(--ux-line)}
.ed-seg button:last-child{border-right:0}
.ed-seg button[aria-pressed=true]{background:var(--ux-ink);color:var(--ux-surface)}
.ed-seg svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.6}
.ed-scan{display:flex;align-items:center;gap:8px;font-size:var(--ux-text-caption);color:var(--ux-ink-muted)}
.ed-scan select{font-family:var(--ux-font-mono);font-size:13px;color:var(--ux-ink);background:var(--ux-surface);border:1px solid var(--ux-line-strong);border-radius:var(--ux-radius-sm);padding:9px 11px;cursor:pointer}
.ed-scan-note{flex-basis:100%;margin:0;font-size:var(--ux-text-caption);line-height:var(--ux-leading-snug);color:var(--ux-warn);background:var(--ux-warn-tint);border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm);padding:10px 13px;text-align:center}
.ed-scan-note[hidden]{display:none}


.ed-plate-wrap{display:flex;align-items:center;justify-content:center;gap:12px;margin:26px 0 0}
.ed-nav{flex:none;width:38px;height:38px;border-radius:var(--ux-radius-pill);border:1px solid var(--ux-line-strong);background:var(--ux-surface);color:var(--ux-ink-soft);font:400 22px/1 var(--ux-font-sans);cursor:pointer;display:grid;place-items:center;padding:0 0 3px}
.ed-nav:hover:not(:disabled){border-color:var(--ux-ink);color:var(--ux-ink)}
.ed-nav:disabled{opacity:.3;cursor:default}
.ed-plate{margin:0;max-width:720px;flex:1 1 720px;transition:max-width var(--ux-dur-base) var(--ux-ease-out),flex-basis var(--ux-dur-base) var(--ux-ease-out)}
.ed-plate.is-mobile{max-width:390px;flex-basis:390px}

.ed-frame{position:relative;border:1px solid var(--ux-line-strong);border-radius:var(--ux-radius-sm);background:var(--ux-surface);box-shadow:var(--ux-shadow-lg);height:74vh;min-height:120px;overflow-y:auto;overflow-x:hidden}
.ed-frame img{width:100%;height:auto;background:var(--ux-code-bg);cursor:zoom-in}


.ed-expand{position:sticky;top:10px;float:right;right:10px;z-index:2;margin-right:10px;display:inline-flex;align-items:center;gap:6px;
  border:1px solid var(--ux-line-strong);border-radius:var(--ux-radius-pill);background:var(--ux-glass);backdrop-filter:blur(6px);
  color:var(--ux-ink);font:var(--ux-weight-semibold) 12px/1 var(--ux-font-sans);padding:8px 12px;cursor:zoom-in}
.ed-expand svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}
.ed-expand:hover{border-color:var(--ux-brand);color:var(--ux-brand)}
.ed-expand:focus-visible{outline:2px solid var(--ux-focus);outline-offset:2px}

@media (max-width:560px){.ed-expand span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .ed-expand{padding:12px;min-width:44px;min-height:44px;justify-content:center}}
.ed-plate figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:baseline;font-size:var(--ux-text-caption);color:var(--ux-ink-muted);margin-top:12px;font-family:var(--ux-font-mono)}

.ed-rail{display:flex;justify-content:center;justify-content:safe center;gap:10px;overflow-x:auto;padding:18px 0 4px;margin:0 auto;max-width:100%}
.ed-rail button{flex:none;width:132px;border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm);overflow:hidden;background:var(--ux-surface);padding:0;cursor:pointer;text-align:left}
.ed-rail button[aria-pressed=true]{border-color:var(--ux-ink);box-shadow:0 0 0 1px var(--ux-ink)}

.ed-rail img{width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top center;background:var(--ux-code-bg);border-bottom:1px solid var(--ux-line)}
.ed-rail-l{display:block;padding:7px 9px;font-size:var(--ux-text-micro);line-height:1.35;color:var(--ux-ink-muted)}
.ed-rail-l b{display:block;color:var(--ux-ink);font-size:11.5px;font-weight:var(--ux-weight-bold);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}


.ed-index{max-width:var(--ux-maxw);margin:clamp(48px,7vw,72px) auto 0;padding:0 clamp(18px,4vw,44px)}
.ed-index-h{font-size:var(--ux-text-micro);font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-ink-muted);margin:0 0 4px;border-top:2px solid var(--ux-ink);padding-top:16px}
.ed-doc .ed-ix{border-bottom:1px solid var(--ux-line);max-width:none;padding:0;margin:0}
.ed-ix>summary{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:14px;padding:16px 0;cursor:pointer;list-style:none}
.ed-ix>summary::-webkit-details-marker{display:none}
.ed-caret{font-family:var(--ux-font-mono);font-size:15px;color:var(--ux-ink-muted);transition:transform var(--ux-dur-fast) var(--ux-ease-out)}
.ed-ix[open] .ed-caret{transform:rotate(90deg)}
.ed-ix summary:hover .ed-ix-l{color:var(--ux-brand)}

.ed-ix-h{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:14px;padding:16px 0}
.ed-ix-open{display:block}
.ed-ix-l{margin:0;font-family:var(--ux-font-display);font-size:23px;font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-snug);color:var(--ux-ink)}
.ed-ix-c{font-size:var(--ux-text-caption);color:var(--ux-ink-muted);text-align:right}
.ed-ix-b{padding:4px 0 34px}


.ev-set{display:grid;gap:var(--ux-space-5)}
.ev-g{display:grid;gap:var(--ux-space-2)}

.ev-gh{margin:0;display:flex;align-items:baseline;gap:var(--ux-space-3);
  font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);font-weight:var(--ux-weight-normal);
  letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted)}
.ev-gn{font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);color:var(--ux-ink-muted)}

.ev-row{display:grid;grid-template-columns:minmax(0,13rem) minmax(0,1fr);
  gap:var(--ux-space-2) var(--ux-space-5);align-items:baseline}
.ev-k{margin:0;font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);
  letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted)}
.ev-lbl{font-size:var(--ux-text-small);color:var(--ux-ink)}
.ev-v{margin:0;display:flex;flex-wrap:wrap;gap:var(--ux-space-2);align-items:baseline}
.ev-q{quotes:none;font-size:var(--ux-text-small);line-height:var(--ux-leading-snug);color:var(--ux-ink);
  background:var(--ux-code-bg);border-radius:var(--ux-radius-xs);padding:.18em .5em}
.ev-note{margin:0;font-size:var(--ux-text-caption);line-height:var(--ux-leading-normal);
  color:var(--ux-ink-muted);max-width:78ch}
.ev-more{font-size:var(--ux-text-micro);color:var(--ux-ink-muted);align-self:center}
.ev-flag{font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-wide);
  text-transform:uppercase;color:var(--ux-danger);font-weight:var(--ux-weight-semibold);white-space:nowrap}
.ev-ok{font-family:var(--ux-font-mono);font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-wide);
  text-transform:uppercase;color:var(--ux-ink-muted);white-space:nowrap}


.ev-id{display:inline-block;margin-left:10px;font-size:var(--ux-text-micro);letter-spacing:.01em;
  color:var(--ux-ink-soft);text-decoration:none;border-bottom:1px dotted var(--ux-rule);word-break:break-all}
.ev-id:hover,.ev-id:focus-visible{color:var(--ux-ink-muted);border-bottom-color:var(--ux-ink-muted)}
.ev-row:target{background:var(--ux-code-bg);border-radius:var(--ux-radius-xs);
  box-shadow:0 0 0 var(--ux-space-1) var(--ux-code-bg)}
@media(max-width:640px){.ev-id{display:block;margin-left:0;margin-top:2px}}
@media(max-width:640px){.ev-row{grid-template-columns:1fr;gap:var(--ux-space-1)}}
.ed-ix-lede{color:var(--ux-ink-muted);font-size:var(--ux-text-small);margin:0 0 18px;max-width:62ch}
.ed-absent{margin:22px 0 0;font-size:var(--ux-text-caption);line-height:var(--ux-leading-normal);color:var(--ux-ink-muted)}


.ed-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.ed-grid--wide{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}
.ed-card{margin:0;border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm);overflow:hidden;background:var(--ux-surface)}

.ed-win{position:relative;width:100%;padding-top:56%;overflow:hidden;background:var(--ux-code-bg);border-bottom:1px solid var(--ux-line)}
.ed-win img{position:absolute;top:0;left:0;max-width:none;cursor:zoom-in;visibility:hidden}
.ed-win.is-placed img{visibility:visible}
.ed-card figcaption{padding:11px 14px;display:grid;gap:5px}
.ed-card figcaption b{font-size:var(--ux-text-micro);letter-spacing:var(--ux-track-caps);text-transform:uppercase;color:var(--ux-ink-muted);font-weight:var(--ux-weight-semibold)}
.ed-card figcaption span{font-size:var(--ux-text-small);color:var(--ux-ink)}


.ed-similar{max-width:var(--ux-maxw);margin:clamp(40px,6vw,56px) auto 0;padding:26px clamp(18px,4vw,44px) 0;border-top:1px solid var(--ux-line)}
.ed-similar h2{font-size:var(--ux-text-micro);font-weight:var(--ux-weight-semibold);letter-spacing:var(--ux-track-kicker);text-transform:uppercase;color:var(--ux-ink-muted);margin:0 0 12px}
.ed-sim-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px}
.ed-sim{flex:none;width:150px;border:1px solid var(--ux-line);border-radius:var(--ux-radius-sm);overflow:hidden;background:var(--ux-surface);text-decoration:none;color:inherit}
.ed-sim:hover{border-color:var(--ux-ink-muted)}
.ed-sim img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top center;background:var(--ux-code-bg);border-bottom:1px solid var(--ux-line)}
.ed-sim-b{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px}
.ed-sim-d{font-size:12px;font-weight:var(--ux-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ed-sim-s{font-size:11.5px;font-weight:var(--ux-weight-bold);color:var(--ux-ok);flex:none}


.ed-lb{position:fixed;inset:0;background:var(--ux-overlay);display:none;place-items:center;padding:28px;z-index:var(--ux-z-modal);cursor:zoom-out}
.ed-lb.on{display:grid}
.ed-lb-in{max-height:92vh;overflow:auto;border-radius:var(--ux-radius-sm)}
.ed-lb img{max-width:94vw;border-radius:var(--ux-radius-sm);box-shadow:var(--ux-shadow-lg);background:var(--ux-surface)}
.ed-lb-x{position:absolute;top:18px;right:22px;border:0;background:none;color:var(--ux-surface);font:400 30px/1 var(--ux-font-sans);cursor:pointer;opacity:.85}



.ed-doc .report-section.ed-tail{margin-top:clamp(34px,5vw,48px)}
.ed-doc .prov{margin-bottom:14px;display:inline-block}
@media(max-width:640px){
  
  .ed-frame{height:38vh}
  .ed-plate-wrap{gap:6px}
  .ed-nav{width:32px;height:32px}
}



.ed-doc .prov-measured{color:var(--ux-ok-ink,#0b5f40);background:var(--ux-ok-tint);border-color:var(--ux-ok)}

.ed-doc .prov-derived{color:var(--ux-warn);background:var(--ux-warn-tint);border-color:var(--ux-warn)}
.ed-doc .cov-high,.ed-doc .fb-mark--hi{color:var(--ux-ok)}
.ed-doc .cov-partial{color:var(--ux-warn)}
.ed-doc .cov-low{color:var(--ux-danger)}
.ed-doc .fb-tag{background:var(--ux-code-bg);color:var(--ux-ink-soft);border:1px solid var(--ux-line)}
.ed-doc .fb-meter{background:var(--ux-line)}
.ed-doc .fb-shot{background:var(--ux-code-bg)}

.ed-doc .sb-chip{color:var(--ux-ink-muted)}
.ed-doc .sb-chip.on{color:var(--ux-brand)}




.lb { cursor: zoom-in; display: block; }
.lb:focus-visible { outline: 2px solid var(--ux-brand); outline-offset: 2px; border-radius: 6px; }
.lb-overlay { position: fixed; inset: 0; z-index: 1000; display: none; align-items: center; justify-content: center;
  background: rgba(6,6,6,.92); backdrop-filter: blur(6px); padding: 4vh 4vw; }
.lb-overlay.on { display: flex; animation: lb-in .16s ease; }
@keyframes lb-in { from { opacity: 0 } to { opacity: 1 } }
.lb-stage { margin: 0; display: flex; flex-direction: column; align-items: center; gap: 12px; max-width: 100%; max-height: 100%; }
.lb-img { max-width: 100%; max-height: 82vh; border-radius: 10px; border: 1px solid var(--ux-line);
  box-shadow: 0 24px 80px rgba(0,0,0,.6); background: #0a0a0a; object-fit: contain; cursor: zoom-in; }

.lb-overlay.zoomed { align-items: flex-start; overflow: auto; }
.lb-overlay.zoomed .lb-stage { max-height: none; }
.lb-overlay.zoomed .lb-img { max-height: none; max-width: none; width: min(1180px, 96vw); cursor: zoom-out; }
.lb-overlay.zoomed .lb-bar { position: sticky; bottom: 0; }
.lb-bar { display: flex; align-items: center; gap: 16px; justify-content: center; flex-wrap: wrap;
  font-size: 12.5px; color: var(--ux-ink-muted); max-width: 900px; }
.lb-cap { color: var(--ux-ink); }
.lb-ctr { color: var(--ux-ink-muted); font-size: 11px; letter-spacing: .1em; }
.lb-btn { position: fixed; z-index: 1001; display: grid; place-items: center; cursor: pointer;
  background: rgba(19,19,19,.8); color: var(--ux-ink); border: 1px solid var(--ux-line); border-radius: 50%;
  width: 48px; height: 48px; font-size: 22px; line-height: 1; transition: background .15s, border-color .15s, transform .1s; }
.lb-btn:focus-visible { outline: 2px solid var(--ux-brand); outline-offset: 2px; border-radius: 6px; }
.lb-btn:hover { background: var(--ux-surface); border-color: rgba(255,47,185,.5); }
.lb-btn:active { transform: scale(.94); }
.lb-close { top: 3vh; right: 3vw; font-size: 16px; }
.lb-nav { top: 50%; transform: translateY(-50%); }
.lb-nav:active { transform: translateY(-50%) scale(.94); }
.lb-prev { left: 2vw; } .lb-next { right: 2vw; }


.lb-overlay.zoomed .lb-nav { display: none; }
@media (max-width: 640px) {
  .lb-nav { top: auto; bottom: 3vh; transform: none; width: 44px; height: 44px; }
  .lb-prev { left: 24vw; } .lb-next { right: 24vw; }
  .lb-img { max-height: 74vh; }
}
@media (prefers-reduced-motion: reduce) { .lb-overlay.on { animation: none; } }
