:root{--font-stack:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-stack-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:1rem;--font-size-md:1.0625rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.25rem;--line-height-tight:1.25;--line-height-base:1.55;--line-height-loose:1.7;--letter-spacing-tight:-.01em;--letter-spacing-base:0;--letter-spacing-wide:.01em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--content-width:80rem;--content-width-narrow:48rem;--content-width-wide:84rem;--header-height:4.5rem;--gutter-mobile:var(--space-4);--gutter-desktop:var(--space-5);--border-thin:1px;--border-thick:2px;--radius-sm:4px;--radius:6px;--radius-lg:12px;--focus-ring-width:2px;--focus-ring-offset:2px;--color-bg:#f6f8fb;--color-fg:#0f1f33;--color-muted:#475569;--color-border:#d4dbe5;--color-card:#fff;--color-accent:#0a6275;--color-accent-fg:#fff;--color-accent-soft:#e4f2f1;--color-warning-bg:#fef3c7;--color-warning-fg:#78350f;--color-info-bg:#ecfeff;--color-info-fg:#155e75;--color-success-bg:#ecfdf5;--color-success-fg:#166534;--color-danger-bg:#fef2f2;--color-danger-fg:#991b1b;--color-focus-ring:#0a6275;--spectrum-red:#c0392b;--spectrum-green:#2e7d32;--spectrum-blue:#1f5fb0;--hit-area-min:44px;--motion-duration-fast:.12s;--motion-duration-base:.2s;--motion-duration-slow:.32s;--motion-easing:ease-out}@media (prefers-color-scheme:dark){:root{--color-bg:#0f172a;--color-fg:#e2e8f0;--color-muted:#94a3b8;--color-border:#1e293b;--color-card:#1e293b;--color-accent:#67c5b9;--color-accent-fg:#102127;--color-accent-soft:#244448;--color-warning-bg:#422006;--color-warning-fg:#fbbf24;--color-info-bg:#083344;--color-info-fg:#67e8f9;--color-success-bg:#052e16;--color-success-fg:#86efac;--color-danger-bg:#450a0a;--color-danger-fg:#fca5a5;--color-focus-ring:#5eead4;--spectrum-red:#df7887;--spectrum-green:#6fc18b;--spectrum-blue:#73a7df}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-stack);font-size:16px;line-height:var(--line-height-base);background:var(--color-bg);color:var(--color-fg);-webkit-text-size-adjust:100%}body{flex-direction:column;min-height:100vh;margin:0;display:flex}.container{width:100%;max-width:var(--content-width);padding-inline:var(--gutter-mobile);margin:0 auto}@media (width>=40rem){.container{padding-inline:var(--gutter-desktop)}}.container-narrow{width:100%;max-width:var(--content-width-narrow);padding-inline:var(--gutter-mobile);margin:0 auto}@media (width>=40rem){.container-narrow{padding-inline:var(--gutter-desktop)}}.container-wide{width:100%;max-width:var(--content-width-wide);padding-inline:var(--gutter-mobile);margin:0 auto}@media (width>=40rem){.container-wide{padding-inline:var(--gutter-desktop)}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:10;width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.skip-link:focus{width:auto;height:auto;padding:var(--space-2) var(--space-3);background:var(--color-accent);color:var(--color-accent-fg);border-radius:var(--radius);text-decoration:underline;position:static}:where(a){color:var(--color-accent);text-underline-offset:.18em;text-decoration:underline 1px}:where(a):hover{text-decoration-thickness:2px}:where(a):focus-visible,:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-sm)}:where(a,button,[role=button]):where(:not(.no-hit-min)){min-height:var(--hit-area-min);align-items:center;display:inline-flex}.site-header{border-bottom:var(--border-thin) solid var(--color-border);background:var(--color-card)}.site-header .container{gap:var(--space-3);min-height:var(--header-height);padding-block:var(--space-2);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.brand{font-weight:600;font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-wide);color:var(--color-fg);align-items:center;gap:var(--space-2);text-decoration:none;display:inline-flex}.brand:hover{color:var(--color-accent);text-decoration:none}.site-navigation{gap:var(--space-3) var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.site-navigation--header{justify-content:flex-end;align-items:center}.site-navigation-links{gap:var(--space-3) var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.navigation-menu-toggle{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--hit-area-min);padding:var(--space-2) var(--space-3);border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);background:var(--color-card);color:var(--color-fg);font:inherit;font-size:var(--font-size-sm);cursor:pointer;font-weight:600;display:none}.navigation-menu-toggle:hover,.navigation-menu-toggle:focus-visible{border-color:var(--color-accent);color:var(--color-accent)}.navigation-menu-toggle-icon{gap:3px;width:1rem;display:inline-grid}.navigation-menu-toggle-icon span{height:2px;transition:transform var(--motion-duration-fast) var(--motion-easing), opacity var(--motion-duration-fast) var(--motion-easing);background:currentColor;border-radius:999px;display:block}.site-navigation--header[data-open=true] .navigation-menu-toggle-icon span:first-child{transform:translateY(5px)rotate(45deg)}.site-navigation--header[data-open=true] .navigation-menu-toggle-icon span:nth-child(2){opacity:0}.site-navigation--header[data-open=true] .navigation-menu-toggle-icon span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.navigation-group{min-width:0;max-width:100%}.navigation-group-label{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-navigation--header .site-navigation-links{gap:var(--space-2)}.nav-list{gap:var(--space-1);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.nav-list a{color:var(--color-fg);padding:var(--space-2) var(--space-3);border-radius:var(--radius);min-height:var(--hit-area-min);font-size:var(--font-size-md);align-items:center;text-decoration:none;display:inline-flex}.nav-list a:hover{color:var(--color-accent);background:color-mix(in srgb, var(--color-accent) 8%, transparent)}.nav-list a[aria-current=page],.nav-list a[aria-current=location]{color:var(--color-accent);box-shadow:inset 0 -2px 0 var(--color-accent);background:0 0;font-weight:600;text-decoration:none}.site-mode-marker{font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-wide);text-transform:uppercase;color:var(--color-warning-fg);background:var(--color-warning-bg);border:var(--border-thin) solid var(--color-warning-fg);border-radius:var(--radius-sm);padding:2px var(--space-2);align-items:center;min-height:0;display:inline-flex}.test-banner{margin:var(--space-3) auto 0;padding:var(--space-2) var(--space-4);background:var(--color-warning-bg);color:var(--color-warning-fg);font-size:var(--font-size-sm);border:var(--border-thin) solid var(--color-warning-fg);border-radius:var(--radius);max-width:var(--content-width)}.button{--button-bg:var(--color-card);--button-fg:var(--color-fg);--button-border:var(--color-border);justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--hit-area-min);padding:var(--space-2) var(--space-4);border:var(--border-thin) solid var(--button-border);border-radius:var(--radius);background:var(--button-bg);color:var(--button-fg);font:inherit;font-size:var(--font-size-base);cursor:pointer;transition:background var(--motion-duration-fast) var(--motion-easing), border-color var(--motion-duration-fast) var(--motion-easing), color var(--motion-duration-fast) var(--motion-easing);font-weight:500;text-decoration:none;display:inline-flex}.button:hover{border-color:var(--color-accent);color:var(--color-accent);text-decoration:none}.button.primary{--button-bg:var(--color-accent-soft);--button-fg:var(--color-fg);--button-border:var(--color-accent)}.button.primary:hover{--button-bg:color-mix(in srgb, var(--color-accent) 18%, var(--color-accent-soft));--button-fg:var(--color-fg);border-color:var(--color-accent)}.button.secondary{--button-bg:transparent;--button-border:var(--color-border)}.surface,.card{border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);padding:var(--space-5);background:var(--color-card)}.badge{align-items:center;gap:var(--space-1);padding:2px var(--space-2);border-radius:var(--radius-sm);border:var(--border-thin) solid var(--color-border);background:var(--color-card);color:var(--color-muted);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-wide);min-height:0;font-weight:500;display:inline-flex}.badge.accent{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-info-bg)}.muted{color:var(--color-muted)}main{flex:1 0 auto}h1{font-size:clamp(var(--font-size-xl), 4vw, var(--font-size-3xl));margin-block:var(--space-5) var(--space-3);letter-spacing:var(--letter-spacing-tight);line-height:var(--line-height-tight);color:var(--color-fg)}h2{font-size:clamp(var(--font-size-lg), 3vw, var(--font-size-xl));margin-block:var(--space-5) var(--space-2);color:var(--color-fg)}h3{font-size:var(--font-size-lg);margin-block:var(--space-4) var(--space-2);color:var(--color-fg)}p{margin-block:var(--space-3);color:var(--color-fg)}code{font-family:var(--font-stack-mono);background:var(--color-border);color:var(--color-fg);border-radius:var(--radius-sm);padding:1px 4px;font-size:.92em}table{border-collapse:collapse;width:100%;margin-block:var(--space-4);font-variant-numeric:tabular-nums}th,td{text-align:left;padding:var(--space-2) var(--space-3);border-bottom:var(--border-thin) solid var(--color-border);vertical-align:top}th{font-weight:600}.tabular{font-variant-numeric:tabular-nums}.no-tabular{font-variant-numeric:normal}.table-wrapper{border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);background:var(--color-card);width:100%;margin-block:var(--space-4);overflow-x:auto}.table-wrapper>table{margin-block:0}.table-wrapper:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus-ring);outline-offset:var(--focus-ring-offset)}.provenance{font-family:var(--font-stack-mono);font-size:var(--font-size-sm);color:var(--color-muted);word-break:break-word}.status{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius);font-size:var(--font-size-sm);border:var(--border-thin) solid transparent;min-height:var(--hit-area-min);font-weight:600;display:inline-flex}.status:before{font-family:var(--font-stack-mono);font-size:1em;font-weight:700}.status-warning{background:var(--color-warning-bg);color:var(--color-warning-fg);border-color:var(--color-warning-fg)}.status-warning:before{content:"!"}.status-info{background:var(--color-info-bg);color:var(--color-info-fg);border-color:var(--color-info-fg)}.status-info:before{content:"i"}.status-success{background:var(--color-success-bg);color:var(--color-success-fg);border-color:var(--color-success-fg)}.status-success:before{content:"✓"}.status-danger{background:var(--color-danger-bg);color:var(--color-danger-fg);border-color:var(--color-danger-fg)}.status-danger:before{content:"x"}.swatch-row{gap:var(--space-3);flex-wrap:wrap;align-items:stretch;display:flex}.swatch{border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);background:var(--color-card);flex-direction:column;flex:12rem;min-width:12rem;display:flex;overflow:hidden}.swatch-color{border-bottom:var(--border-thin) solid var(--color-border);height:3rem;display:block}.swatch-meta{padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);color:var(--color-muted)}.swatch-meta strong{color:var(--color-fg);font-weight:600;font-size:var(--font-size-base);display:block}.plot-svg{background:var(--color-card);border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);width:100%;max-width:100%;height:auto;display:block}.plot-legend{gap:var(--space-3);margin:var(--space-2) 0 var(--space-4);font-size:var(--font-size-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.plot-legend li{align-items:center;gap:var(--space-2);display:inline-flex}.plot-legend .swatch{border:0;border-radius:2px;flex:none;width:.875rem;min-width:0;height:.875rem;display:inline-block}.site-footer{border-top:var(--border-thin) solid var(--color-border);background:var(--color-card);font-size:var(--font-size-sm);color:var(--color-muted)}.site-footer .container{padding-block:var(--space-4);gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.site-footer .footer-mark{align-items:center;gap:var(--space-2);min-height:var(--hit-area-min);display:inline-flex}.footer-nav{gap:var(--space-3) var(--space-4)}.footer-nav a{color:var(--color-muted);font-size:var(--font-size-sm);text-underline-offset:.2em;text-decoration:underline}.footer-nav a:hover,.footer-nav a:focus-visible{color:var(--color-accent)}.breadcrumb{gap:var(--space-1) var(--space-2);margin-block:var(--space-4);font-size:var(--font-size-sm);flex-wrap:wrap;display:flex}.breadcrumb a{color:var(--color-muted);text-underline-offset:.2em;text-decoration:underline}.breadcrumb a:hover,.breadcrumb a:focus-visible{color:var(--color-accent)}.not-found-actions{gap:var(--space-3);margin-block:var(--space-4);flex-wrap:wrap;display:flex}.island-frame{border:var(--border-thin) dashed var(--color-border);border-radius:var(--radius);padding:var(--space-3);margin-block:var(--space-4);background:var(--color-card)}.island-frame:before{content:"React island (client:load)";font-size:var(--font-size-xs);color:var(--color-muted);margin-bottom:var(--space-2);display:block}.container,.container-narrow,.container-wide,.nav-list,.plot-legend,.swatch-row,.island-frame{min-width:0}code,.provenance,.muted,dl dd{overflow-wrap:anywhere}.landing-long-list-controls{align-items:center;gap:var(--space-2) var(--space-3);margin-block:var(--space-3);grid-template-columns:minmax(0,1fr) auto;display:grid}.landing-long-list-controls>label,.landing-long-list-controls>input,.landing-long-list-controls>p{grid-column:1/-1}.landing-long-list-controls>label{font-weight:600}.landing-long-list-controls>input{width:100%;min-height:var(--hit-area-min);padding:var(--space-2) var(--space-3);border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);background:var(--color-card);color:var(--color-fg);font:inherit}.landing-long-list-controls>p{margin:0}.landing-long-list-pagination{gap:var(--space-2);display:flex}.landing-long-list-pagination button{min-height:var(--hit-area-min);padding-inline:var(--space-3)}@media (width<=40rem){.site-header .container{align-items:center;gap:var(--space-2);flex-flow:row}.site-navigation--header{flex-wrap:wrap;flex:none;max-width:100%;margin-left:auto;position:relative}html.js .navigation-menu-toggle{display:inline-flex}html.js .site-navigation-links--header{top:calc(100% + var(--space-2));z-index:5;width:min(calc(100vw - (2 * var(--gutter-mobile))), 24rem);padding-top:var(--space-2);padding-inline:var(--space-2);padding-bottom:var(--space-2);border:var(--border-thin) solid var(--color-border);border-radius:var(--radius);background:var(--color-card);box-shadow:0 .75rem 1.5rem color-mix(in srgb, var(--color-fg) 16%, transparent);border-top:var(--border-thin) solid var(--color-border);margin-top:0;display:none;position:absolute;right:0}html.js .site-navigation--header[data-open=true] .site-navigation-links--header{align-items:stretch;gap:var(--space-3);flex-direction:column;display:flex}.site-navigation-links--header .navigation-group{width:100%}.site-navigation-links--header .nav-list{gap:var(--space-1)}.nav-list{gap:var(--space-1);flex-wrap:wrap}.nav-list a{padding-inline:var(--space-2);font-size:var(--font-size-sm)}h1{font-size:var(--font-size-xl)}}@media (width<=22rem){.nav-list{flex-wrap:wrap}}.cross-camera-comparison-current-picker{min-width:0}.cross-camera-comparison-current-picker select{width:100%;min-width:0}.cross-camera-comparison-table-wrapper{max-width:100%;overflow-x:auto}
