@font-face{font-family:Bricolage Grotesque;font-weight:700;font-style:normal;font-display:swap;src:url(/assets/BricolageGrotesque_700Bold-C2jlrK5H.ttf) format("truetype")}@font-face{font-family:Bricolage Grotesque;font-weight:800;font-style:normal;font-display:swap;src:url(/assets/BricolageGrotesque_800ExtraBold-BzUh_L3P.ttf) format("truetype")}@font-face{font-family:Instrument Sans;font-weight:400;font-style:normal;font-display:swap;src:url(/assets/InstrumentSans_400Regular-Crsnzn7o.ttf) format("truetype")}@font-face{font-family:Instrument Sans;font-weight:500;font-style:normal;font-display:swap;src:url(/assets/InstrumentSans_500Medium-BBBDQKVc.ttf) format("truetype")}@font-face{font-family:Instrument Sans;font-weight:600;font-style:normal;font-display:swap;src:url(/assets/InstrumentSans_600SemiBold-DrPqsaX5.ttf) format("truetype")}@font-face{font-family:Instrument Sans;font-weight:700;font-style:normal;font-display:swap;src:url(/assets/InstrumentSans_700Bold-CEAwMKe7.ttf) format("truetype")}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--ff-color-background-primary);color:var(--ff-color-text-primary);font-family:var(--ff-font-regular-family);font-weight:var(--ff-font-regular-weight);font-size:var(--ff-text-lg);line-height:var(--ff-leading-normal);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3{font-family:var(--ff-font-display-family);font-weight:var(--ff-font-display-weight);letter-spacing:var(--ff-tracking-display);line-height:var(--ff-leading-tight);margin:0}h1{font-size:var(--ff-text-xxxl)}h2{font-size:var(--ff-text-xxl)}h3{font-size:var(--ff-text-xl);font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight)}p{margin:0;color:var(--ff-color-text-body)}a{color:var(--ff-color-text-accent);text-decoration-color:color-mix(in srgb,var(--ff-color-text-accent) 35%,transparent);text-underline-offset:2px}button,[role=button],input,select,textarea{font:inherit;min-height:44px}:focus-visible{outline:2px solid var(--ff-color-border-focus);outline-offset:2px;border-radius:var(--ff-radius-xs)}.ff-scroll-x{overflow-x:auto;overscroll-behavior-x:contain}.ff-panel{background:var(--ff-color-surface-primary);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-card-shadow);border:var(--ff-card-border)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.ff-help-panel{position:fixed;bottom:var(--ff-space-lg);left:var(--ff-space-lg);z-index:60;width:min(400px,calc(100vw - var(--ff-space-xxxl)));max-height:min(300px,45vh);display:flex;overflow:hidden;background:var(--ff-color-background-elevated);border:1px solid var(--ff-color-border-secondary);border-radius:var(--ff-radius-lg);box-shadow:var(--ff-shadow-large)}.ff-help-rail{flex:0 0 3px;background:var(--ff-color-border-secondary)}.ff-help-rail[data-source=pointer]{background:var(--ff-color-text-tertiary)}.ff-help-rail[data-source=focus]{background:var(--ff-color-text-accent)}.ff-help-body{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:var(--ff-space-xs);padding:var(--ff-space-md) var(--ff-space-lg);overflow-y:auto;overscroll-behavior:contain}.ff-help-kicker{display:flex;align-items:baseline;justify-content:space-between;gap:var(--ff-space-sm);font-size:var(--ff-text-xs);letter-spacing:var(--ff-tracking-caps);text-transform:uppercase;color:var(--ff-color-text-tertiary);font-family:var(--ff-font-medium-family);font-weight:var(--ff-font-medium-weight)}.ff-help-term{font-family:var(--ff-font-display-family);font-weight:var(--ff-font-display-weight);font-size:var(--ff-text-lg);letter-spacing:var(--ff-tracking-tight);line-height:var(--ff-leading-tight);color:var(--ff-color-text-primary)}.ff-help-summary{font-size:var(--ff-text-lg);line-height:var(--ff-leading-normal);color:var(--ff-color-text-body);margin:2px 0 0}.ff-help-because{font-size:var(--ff-text-md);line-height:var(--ff-leading-relaxed);color:var(--ff-color-text-tertiary);margin:var(--ff-space-sm) 0 0}.ff-help-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;color:var(--ff-color-text-primary)}.ff-help-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--ff-space-sm);margin-top:auto;padding-top:var(--ff-space-xs);font-size:var(--ff-text-xs);color:var(--ff-color-text-tertiary)}.ff-help-close{background:transparent;border:1px solid transparent;border-radius:var(--ff-radius-sm);padding:0 var(--ff-space-sm);margin-right:calc(var(--ff-space-sm) * -1);color:var(--ff-color-text-accent);font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight);font-size:var(--ff-text-sm);cursor:pointer}.ff-help-close:hover{background:var(--ff-color-surface-tertiary)}.ff-help-empty{font-size:var(--ff-text-md);line-height:var(--ff-leading-normal);color:var(--ff-color-text-tertiary);margin:0}.ff-help-key{display:inline-block;min-width:1.4em;padding:1px var(--ff-space-xs);border:1px solid var(--ff-color-border-secondary);border-radius:var(--ff-radius-xs);background:var(--ff-color-surface-tertiary);color:var(--ff-color-text-body);font-family:var(--ff-font-medium-family);font-weight:var(--ff-font-medium-weight);font-size:var(--ff-text-xs);line-height:1.5;text-align:center}.ff-help-tip{position:fixed;z-index:70;pointer-events:none;max-height:calc(100vh - var(--ff-space-lg));overflow:hidden;display:flex;flex-direction:column;gap:2px;padding:var(--ff-space-sm) var(--ff-space-md);background:var(--ff-color-background-elevated);border:1px solid var(--ff-color-border-secondary);border-radius:var(--ff-radius-md);box-shadow:var(--ff-shadow-large);animation:ff-help-tip-in 90ms ease-out}.ff-help-tip .ff-help-term,.ff-help-tip .ff-help-summary{font-size:var(--ff-text-md)}@keyframes ff-help-tip-in{0%{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){.ff-help-tip{animation:none}}@media(max-width:640px){.ff-help-panel{left:var(--ff-space-sm);right:var(--ff-space-sm);bottom:var(--ff-space-sm);width:auto;max-height:min(240px,40vh)}}:root{--ff-inspector-width: 420px;--ff-inspector-effective: 0px}:root[data-ff-inspector=docked]{--ff-inspector-effective: max(320px, min(var(--ff-inspector-width), calc(100vw - 640px) ))}:root[data-ff-inspector=docked] main{padding-inline-end:var(--ff-inspector-effective)}.ff-inspector{position:fixed;inset-block:0;inset-inline-end:0;z-index:40;width:var(--ff-inspector-effective);display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--ff-color-surface-primary);border-inline-start:1px solid var(--ff-color-border-secondary);color:var(--ff-color-text-primary)}.ff-inspector__head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--ff-space-md);padding:var(--ff-space-lg) var(--ff-space-lg) var(--ff-space-md);border-block-end:1px solid var(--ff-color-border-primary)}.ff-inspector__noun{display:block;font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight);font-size:var(--ff-text-xs);letter-spacing:.09em;text-transform:uppercase;color:var(--ff-color-text-tertiary)}.ff-inspector__title{margin-block-start:var(--ff-space-xs);font-size:var(--ff-text-xl);overflow-wrap:anywhere}.ff-inspector__sub{margin-block-start:var(--ff-space-xs);font-size:var(--ff-text-sm);color:var(--ff-color-text-tertiary);overflow-wrap:anywhere}.ff-inspector__handle{margin-block-start:var(--ff-space-xs);display:inline-block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--ff-text-xs);color:var(--ff-color-text-tertiary);-webkit-user-select:all;user-select:all}.ff-inspector__actions{display:flex;flex-direction:column;align-items:stretch;gap:var(--ff-space-xs)}.ff-inspector__page{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding-inline:var(--ff-space-md);border-radius:var(--ff-radius-md);font-size:var(--ff-text-md);text-decoration:none;white-space:nowrap}.ff-inspector__body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:var(--ff-space-lg);container-type:inline-size;container-name:ff-inspector}.ff-inspector__splitter{position:absolute;inset-block:0;inset-inline-start:-6px;width:12px;padding:0;border:0;background:transparent;cursor:col-resize;touch-action:none;min-height:0}.ff-inspector__splitter:after{content:"";position:absolute;inset-block:0;inset-inline-start:5px;width:2px;background:transparent;transition:background-color .12s ease}.ff-inspector__splitter:hover:after,.ff-inspector__splitter:focus-visible:after,.ff-inspector__splitter[data-dragging=true]:after{background:var(--ff-color-text-accent)}.ff-inspector__guide{position:fixed;inset-block:0;width:2px;background:var(--ff-color-text-accent);z-index:41;pointer-events:none}.ff-inspector__note{font-size:var(--ff-text-sm);color:var(--ff-color-text-body)}.ff-inspector__hairline{border:0;border-block-start:1px solid var(--ff-color-border-primary);margin-block:var(--ff-space-lg)}@media(max-width:767px){:root[data-ff-inspector=docked] main{padding-inline-end:0}.ff-inspector{inset:auto 0 0 0;width:auto;max-height:62%;border-inline-start:0;border-block-start:1px solid var(--ff-color-border-secondary);border-start-start-radius:var(--ff-radius-xl);border-start-end-radius:var(--ff-radius-xl);box-shadow:var(--ff-card-shadow)}.ff-inspector__splitter,.ff-inspector__guide{display:none}.ff-inspector__actions{flex-direction:row}}@container ff-inspector (max-width: 640px){.ff-inspector__body .mw-cols{grid-template-columns:minmax(0,1fr)}.ff-inspector__body .lae--panel:has(.lae-half+.lae-half){grid-template-columns:minmax(0,1fr)}}.ff-viz{--viz-surface: var(--ff-color-surface-primary);--viz-plane: var(--ff-color-surface-secondary);--viz-grid: var(--ff-color-border-primary);--viz-axis: var(--ff-color-border-secondary);--viz-ink: var(--ff-color-text-primary);--viz-ink-2: var(--ff-color-text-secondary);--viz-muted: var(--ff-color-text-tertiary);--viz-accent: var(--ff-color-primary-main);--viz-accent-soft: color-mix(in oklab, var(--ff-color-primary-main) 14%, var(--viz-surface));--viz-ok: var(--ff-color-success);--viz-no-engagement: var(--ff-color-category-event);--viz-zero-result: var(--ff-color-error);--viz-ord-base: var(--ff-color-primary-main);--viz-ord-1: color-mix(in oklab, var(--viz-ord-base) 77%, var(--ff-color-text-primary));--viz-ord-2: var(--viz-ord-base);--viz-ord-3: color-mix(in oklab, var(--viz-ord-base) 86%, var(--viz-surface));--viz-ord-4: color-mix(in oklab, var(--viz-ord-base) 71%, var(--viz-surface));--viz-ord-5: color-mix(in oklab, var(--viz-ord-base) 57%, var(--viz-surface));--viz-pos: var(--ff-color-success);--viz-neu: var(--ff-color-text-tertiary);--viz-neg: var(--ff-color-error);--viz-quiet: color-mix(in oklab, var(--ff-color-text-tertiary) 42%, var(--viz-surface))}:root[data-theme=dark] .ff-viz{--viz-accent: var(--ff-color-text-accent);--viz-accent-soft: color-mix(in oklab, var(--ff-color-text-accent) 18%, var(--viz-surface));--viz-ord-base: var(--ff-color-text-accent);--viz-ord-1: var(--viz-ord-base);--viz-ord-2: color-mix(in oklab, var(--viz-ord-base) 87%, var(--viz-surface));--viz-ord-3: color-mix(in oklab, var(--viz-ord-base) 73%, var(--viz-surface));--viz-ord-4: color-mix(in oklab, var(--viz-ord-base) 60%, var(--viz-surface));--viz-ord-5: color-mix(in oklab, var(--viz-ord-base) 46%, var(--viz-surface))}@media(prefers-color-scheme:dark){:root:where(:not([data-theme=light])) .ff-viz{--viz-accent: var(--ff-color-text-accent);--viz-accent-soft: color-mix(in oklab, var(--ff-color-text-accent) 18%, var(--viz-surface));--viz-ord-base: var(--ff-color-text-accent);--viz-ord-1: var(--viz-ord-base);--viz-ord-2: color-mix(in oklab, var(--viz-ord-base) 87%, var(--viz-surface));--viz-ord-3: color-mix(in oklab, var(--viz-ord-base) 73%, var(--viz-surface));--viz-ord-4: color-mix(in oklab, var(--viz-ord-base) 60%, var(--viz-surface));--viz-ord-5: color-mix(in oklab, var(--viz-ord-base) 46%, var(--viz-surface))}}.ff-ov{padding:var(--ff-space-xxl) var(--ff-space-xxxl) var(--ff-space-xxxl);max-width:1240px;margin:0 auto;display:flex;flex-direction:column;gap:var(--ff-space-xxxl)}@media(max-width:720px){.ff-ov{padding:var(--ff-space-lg) var(--ff-space-lg) var(--ff-space-xxl);gap:var(--ff-space-xxl)}}.ff-ov__section{display:flex;flex-direction:column;gap:var(--ff-space-lg)}.ff-ov__head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--ff-space-md)}.ff-ov__lede{max-width:76ch;font-size:var(--ff-text-md);color:var(--ff-color-text-secondary)}.ff-ov__grid{display:grid;gap:var(--ff-space-lg)}.ff-card{padding:var(--ff-space-xl);display:flex;flex-direction:column;gap:var(--ff-space-md);min-width:0}.ff-note{border-left:2px solid var(--viz-accent);padding:2px 0 2px var(--ff-space-md);font-size:var(--ff-text-md);color:var(--ff-color-text-secondary);max-width:74ch}.ff-note strong{color:var(--ff-color-text-primary);font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight)}.ff-fig{font-family:var(--ff-font-bold-family);font-weight:var(--ff-font-bold-weight);line-height:1;color:var(--ff-color-text-primary);font-variant-numeric:proportional-nums}.ff-fig--hero{font-size:52px;letter-spacing:-.02em}.ff-fig--tile{font-size:var(--ff-text-xxl)}.ff-num{font-variant-numeric:tabular-nums}.ff-table{width:100%;border-collapse:collapse;font-size:var(--ff-text-md)}.ff-table th{text-align:left;font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight);font-size:var(--ff-text-sm);color:var(--ff-color-text-tertiary);padding:var(--ff-space-xs) var(--ff-space-md) var(--ff-space-sm);border-bottom:1px solid var(--viz-grid);white-space:nowrap}.ff-table td{padding:var(--ff-space-sm) var(--ff-space-md);border-bottom:1px solid var(--viz-grid);color:var(--ff-color-text-body);vertical-align:middle}.ff-table tr:last-child td{border-bottom:0}.ff-table__num{text-align:right;font-variant-numeric:tabular-nums;color:var(--ff-color-text-primary)}.ff-sort{display:inline-flex;align-items:center;gap:var(--ff-space-xs);background:none;border:0;padding:var(--ff-space-xs) 0;margin:0;min-height:44px;font:inherit;color:inherit;cursor:pointer;white-space:nowrap}.ff-sort[aria-sort=ascending],.ff-sort[aria-sort=descending]{color:var(--ff-color-text-accent)}.ff-chip{display:inline-flex;align-items:center;gap:var(--ff-space-xs);padding:3px var(--ff-space-sm);border-radius:var(--ff-radius-sm);background:var(--ff-color-surface-tertiary);color:var(--ff-color-text-secondary);font-size:var(--ff-text-sm);white-space:nowrap}.ff-chip--mark{background:var(--viz-accent-soft);color:var(--ff-color-text-accent);font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight)}.ff-verbatim{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:var(--ff-text-sm);line-height:var(--ff-leading-normal);white-space:pre;-moz-tab-size:2;tab-size:2;color:var(--ff-color-text-primary);background:var(--ff-color-surface-secondary);border:1px solid var(--viz-grid);border-radius:var(--ff-radius-md);padding:var(--ff-space-md);max-height:420px;overflow:auto;overscroll-behavior:contain}.ff-pulse{width:8px;height:8px;border-radius:var(--ff-radius-full);flex:none}.ff-pulse--live{background:var(--viz-ok);animation:ff-ov-pulse 2.4s ease-in-out infinite}.ff-pulse--idle{background:var(--viz-muted)}@keyframes ff-ov-pulse{0%,to{opacity:1}50%{opacity:.35}}.ff-plot{position:relative;min-width:0}.ff-plot svg{display:block;overflow:visible}.ff-plot__hit{fill:transparent;cursor:crosshair}.ff-plot__hit:focus-visible{fill:var(--viz-accent-soft);outline:none}.ff-tip{position:absolute;z-index:3;pointer-events:none;padding:var(--ff-space-sm) var(--ff-space-md);border-radius:var(--ff-radius-md);background:var(--ff-color-background-elevated);border:1px solid var(--ff-color-border-secondary);box-shadow:var(--ff-shadow-medium);font-size:var(--ff-text-sm);color:var(--ff-color-text-primary);min-width:160px;transform:translate(-50%,calc(-100% - 10px))}.ff-tip__row{display:flex;align-items:center;gap:var(--ff-space-sm);justify-content:space-between;white-space:nowrap}.ff-tip__key{display:inline-flex;align-items:center;gap:6px;color:var(--ff-color-text-secondary)}.ff-swatch{width:10px;height:10px;border-radius:3px;flex:none}.ff-legend{display:flex;flex-wrap:wrap;gap:var(--ff-space-md);font-size:var(--ff-text-sm);color:var(--ff-color-text-secondary)}.ff-legend__item{display:inline-flex;align-items:center;gap:6px}.ff-seg{display:inline-flex;padding:3px;gap:2px;border-radius:var(--ff-radius-md);background:var(--ff-color-surface-tertiary)}.ff-seg button{min-height:38px;padding:0 var(--ff-space-md);border:0;border-radius:var(--ff-radius-sm);background:transparent;color:var(--ff-color-text-secondary);font-size:var(--ff-text-md);cursor:pointer}.ff-seg button[aria-pressed=true]{background:var(--ff-color-surface-primary);color:var(--ff-color-text-primary);font-family:var(--ff-font-semibold-family);font-weight:var(--ff-font-semibold-weight);box-shadow:var(--ff-shadow-small)}.ff-disclose>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-size:var(--ff-text-md);color:var(--ff-color-text-accent);list-style:none}.ff-disclose>summary::-webkit-details-marker{display:none}.ff-disclose>summary:before{content:"▸";margin-right:var(--ff-space-sm);font-size:var(--ff-text-sm)}.ff-disclose[open]>summary:before{content:"▾"}.ff-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:var(--ff-space-xxl);border:0;background:transparent;overflow:hidden;color:var(--ff-color-text-primary)}.ff-overlay[open]{display:flex;align-items:center;justify-content:center}.ff-overlay::backdrop{background:var(--ff-color-overlay, rgba(12, 13, 18, .4));animation:ff-overlay-fade .14s ease-out}.ff-overlay__panel{position:relative;width:720px;max-width:100%;max-height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);border-radius:var(--ff-radius-xl);background:var(--ff-color-surface-primary);box-shadow:var(--ff-shadow-large);border:var(--ff-card-border);overflow:hidden;animation:ff-overlay-rise .16s cubic-bezier(.2,.8,.2,1);transform:translateY(var(--ff-overlay-drag, 0px))}.ff-overlay__panel:focus,.ff-overlay__panel:focus-visible{outline:none}.ff-overlay__panel--settling{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.ff-overlay__header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:var(--ff-space-md);padding:var(--ff-space-lg) var(--ff-space-xl);border-bottom:1px solid var(--ff-color-border-primary);background:var(--ff-color-surface-primary)}.ff-overlay__title{font-family:var(--ff-font-display-family);font-weight:var(--ff-font-display-weight);letter-spacing:var(--ff-tracking-display);line-height:var(--ff-leading-tight);font-size:var(--ff-text-xxl);color:var(--ff-color-text-primary);margin:0;overflow-wrap:anywhere}.ff-overlay__actions{display:flex;align-items:center;gap:var(--ff-space-xs)}.ff-overlay__body{overflow:auto;overscroll-behavior:contain;min-height:0}.ff-overlay__grip{display:none;justify-content:center;padding-top:8px;padding-bottom:6px;touch-action:none}.ff-overlay__grip span{display:block;width:42px;height:5px;border-radius:3px;background:var(--ff-color-border-secondary)}@media(max-width:767px){.ff-overlay{padding:0}.ff-overlay[open]{align-items:flex-end}.ff-overlay__panel{width:100%;max-height:92%;border-radius:var(--ff-radius-xxl) var(--ff-radius-xxl) 0 0;grid-template-rows:auto auto minmax(0,1fr);animation:ff-overlay-slide .2s cubic-bezier(.2,.8,.2,1)}.ff-overlay__grip{display:flex}.ff-overlay__header{padding-top:var(--ff-space-sm)}}@keyframes ff-overlay-fade{0%{opacity:0}}@keyframes ff-overlay-rise{0%{opacity:0;transform:translateY(8px) scale(.985)}}@keyframes ff-overlay-slide{0%{transform:translateY(24px)}}
