:root,.gmt-theme-dark{color-scheme:light dark;--gmt-void:#03080c;--gmt-ink-fixed:#03080c;--gmt-cyan:#22d3ee;--gmt-spring:#4ade80;--gmt-teal:#0e7490;--gmt-ice:#cfeaf2;--gmt-signal:#f5a524;--gmt-dst-gold:#fbbf24;--gmt-dst-purple:#c084fc;--gmt-surface:#061018;--gmt-surface-2:#0a1a24;--gmt-cyan-bright:#67e8f9;--gmt-ice-dim:#98b2be;--gmt-ice-dim-fill:#7a9baa;--gmt-hairline:#22d3ee2e;--gmt-accent-wash:#22d3ee0f;--gmt-selection:#22d3ee4d;--gmt-blur:24px;--gmt-blur-heavy:32px;--gmt-saturate:1.4;--gmt-brightness:.72;--gmt-caret:var(--gmt-cyan);--gmt-motion-sonar-duration:1.2s;--gmt-motion-sonar-loop-duration:2s;--gmt-glass-tint:color(from var(--gmt-teal) srgb r g b / .1);--gmt-glass-tint-subtle:color(from var(--gmt-teal) srgb r g b / .035);--gmt-glass-scrim:color(from var(--gmt-teal) srgb r g b / .08);--gmt-fill-subtle:color(from var(--gmt-teal) srgb r g b / .06);--gmt-fill:color(from var(--gmt-teal) srgb r g b / .08);--gmt-fill-2:color(from var(--gmt-teal) srgb r g b / .1);--gmt-fill-strong:color(from var(--gmt-teal) srgb r g b / .12);--gmt-fill-deep:color(from var(--gmt-teal) srgb r g b / .15);--gmt-border:color(from var(--gmt-cyan) srgb r g b / .18);--gmt-border-strong:color(from var(--gmt-cyan) srgb r g b / .35);--gmt-hairline-faint:color(from var(--gmt-cyan) srgb r g b / .08);--gmt-glow:color(from var(--gmt-cyan) srgb r g b / .15);--gmt-highlight:color(from var(--gmt-ice) srgb r g b / .08);--gmt-highlight-faint:color(from var(--gmt-ice) srgb r g b / .06);--gmt-signal-fill:color(from var(--gmt-signal) srgb r g b / .08);--gmt-signal-border:color(from var(--gmt-signal) srgb r g b / .35);--gmt-day-prev-wash:color(from var(--gmt-dst-purple) srgb r g b / .12);--gmt-day-next-wash:color(from var(--gmt-dst-purple) srgb r g b / .06);--gmt-severity-critical:var(--gmt-cyan);--gmt-severity-high:var(--gmt-teal);--gmt-severity-medium:var(--gmt-ice);--gmt-severity-critical-ink:var(--gmt-cyan-ink);--gmt-severity-high-ink:#15add6;--gmt-dst-gold-ink:var(--gmt-dst-gold);--gmt-dst-purple-ink:#cfa1fd;--gmt-scrollbar-track:#0e749014;--gmt-scrollbar-thumb:#0e749014;--gmt-scrollbar-thumb-hover:#0e749026;--gmt-font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--gmt-font-display:"Michroma", var(--gmt-font-mono);--gmt-space-1:4px;--gmt-space-2:8px;--gmt-space-3:12px;--gmt-space-4:16px;--gmt-space-6:24px;--gmt-space-8:32px;--gmt-space-12:48px;--gmt-tracking-tight:-.02em;--gmt-tracking-wide:.08em;--gmt-tracking-wider:.18em;--gmt-duration-fast:.12s;--gmt-duration-med:.24s;--gmt-easing:cubic-bezier(.4, 0, .2, 1);--gmt-enter-duration:.5s;--gmt-enter-easing:cubic-bezier(.16, 1, .3, 1);--gmt-enter-scale:.92;--gmt-radius-sm:4px;--gmt-radius-md:8px;--gmt-radius-lg:16px;--gmt-range-hit-h:28px;--gmt-range-track-h:10px;--gmt-range-thumb-w:16px;--gmt-range-thumb-h:26px;--gmt-handle-w:14px;--gmt-handle-h:24px;--gmt-handle-hit:44px;--gmt-text-xs:.75rem;--gmt-text-sm:.8rem;--gmt-text-base:.85rem;--gmt-text-md:.9rem;--gmt-text-lg:.95rem;--gmt-text-xl:1.3rem;--gmt-shadow-sm:0 4px 16px #00000073;--gmt-shadow-md:0 8px 24px #00000080;--gmt-syntax-fn:#82aaff;--gmt-syntax-str:#ecc48d;--gmt-syntax-num:#f78c6c;--gmt-globe-night:#03080c;--gmt-globe-night-alpha:.5;--gmt-globe-ocean-alpha:.05;--gmt-globe-land-alpha:.12;--gmt-globe-gold:#fde047;--gmt-globe-day-alpha:.26;--gmt-globe-atmosphere-alpha:.42;--gmt-globe-haze-alpha:.2;--gmt-globe-grid-alpha:.18;--gmt-globe-imagery-alpha:1;--gmt-globe-vector-overlay:1;--gmt-globe-imagery-duotone:1;--gmt-globe-ink:#cfeaf2;--gmt-globe-marker:#22d3ee;--gmt-globe-selected:#4ade80;--gmt-globe-casing:#03080c;--gmt-globe-casing-alpha:.9;--gmt-code-surface:var(--gmt-fill);--gmt-code-bg:var(--gmt-surface-2);--gmt-code-border:var(--gmt-hairline);--gmt-sidebar-link:var(--gmt-ice-dim);--gmt-pagination-title:var(--gmt-cyan-bright);--gmt-widget-card-bg:var(--gmt-glass-tint-subtle);--gmt-danger:#f87171;--gmt-cyan-ink:var(--gmt-cyan);--gmt-spring-ink:var(--gmt-spring);--gmt-purple-ink:var(--gmt-dst-purple);--gmt-signal-ink:var(--gmt-signal);--gmt-series-1:var(--gmt-cyan);--gmt-series-1-ink:var(--gmt-cyan-ink);--gmt-series-2:var(--gmt-spring);--gmt-series-2-ink:var(--gmt-spring-ink);--gmt-series-3:var(--gmt-dst-purple);--gmt-series-3-ink:var(--gmt-purple-ink);--gmt-series-4:var(--gmt-severity-high);--gmt-series-4-ink:var(--gmt-severity-high-ink)}.gmt-theme-dark{color-scheme:dark;color:var(--gmt-ice)}@font-face{font-family:Michroma;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/michroma-latin-400-normal.4gS0VCia.woff2)format("woff2")}.gmt-glass{background:var(--gmt-glass-tint);border:1px solid var(--gmt-border);border-radius:var(--gmt-radius-lg);corner-shape:bevel;padding:var(--gmt-space-4);-webkit-backdrop-filter:blur(var(--gmt-blur)) saturate(var(--gmt-saturate)) brightness(var(--gmt-brightness));position:relative}.gmt-glass-subtle{background:var(--gmt-glass-tint-subtle);border:1px solid var(--gmt-hairline);border-radius:var(--gmt-radius-md);-webkit-backdrop-filter:blur(var(--gmt-blur)) saturate(var(--gmt-saturate));position:relative}.gmt-glass-clear{background:var(--gmt-glass-scrim);-webkit-backdrop-filter:blur(var(--gmt-blur))}.gmt-glass:before{content:"";border-radius:inherit;corner-shape:inherit;background:linear-gradient(135deg, color(from var(--gmt-cyan) srgb r g b / .42) 0%, transparent 40%, transparent 60%, color(from var(--gmt-cyan) srgb r g b / .42) 100%);-webkit-mask-composite:xor;pointer-events:none;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;mask-composite:exclude;mask-mode:match-source,match-source}.gmt-glass:after{content:"";top:1px;left:var(--gmt-space-4);right:var(--gmt-space-4);background:linear-gradient(90deg, transparent, var(--gmt-highlight) 30%, var(--gmt-highlight) 70%, transparent);pointer-events:none;height:1px;position:absolute}.gmt-brackets{position:relative}.gmt-brackets:before,.gmt-brackets:after{content:"";border-color:var(--gmt-cyan);opacity:.6;pointer-events:none;border-style:solid;border-width:0;width:12px;height:12px;position:absolute}.gmt-brackets:before{border-top-width:2px;border-left-width:2px;top:-1px;left:-1px}.gmt-brackets:after{border-bottom-width:2px;border-right-width:2px;bottom:-1px;right:-1px}.gmt-glass-heavy{background:color(from var(--gmt-teal) srgb r g b / .18);-webkit-backdrop-filter:blur(var(--gmt-blur-heavy)) saturate(var(--gmt-saturate)) brightness(var(--gmt-brightness))}.gmt-icon-button{color:var(--gmt-cyan);border-radius:var(--gmt-radius-sm);corner-shape:bevel;cursor:pointer;transition:color var(--gmt-duration-fast) var(--gmt-easing), border-color var(--gmt-duration-fast) var(--gmt-easing), background var(--gmt-duration-fast) var(--gmt-easing);border-radius:var(--gmt-radius-md);corner-shape:bevel;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;margin:-.25em;padding:.5em;display:inline-flex}.gmt-icon-button svg{width:1.25em;height:1.25em}.gmt-icon-button:hover{color:var(--gmt-cyan-bright);background:var(--gmt-fill-strong);border-color:var(--gmt-border);box-shadow:0 0 8px var(--gmt-glow);backdrop-filter:blur(var(--gmt-blur)) saturate(var(--gmt-saturate))}@keyframes gmt-focus-sonar{0%{box-shadow:0 0 0 2px color(from var(--gmt-cyan) srgb r g b / .95), 0 0 0 3px color(from var(--gmt-cyan) srgb r g b / .7)}to{box-shadow:0 0 0 2px color(from var(--gmt-cyan) srgb r g b / .95), 0 0 0 16px color(from var(--gmt-cyan) srgb r g b / 0)}}@keyframes gmt-focus-sonar-loop{0%{box-shadow:0 0 0 2px color(from var(--gmt-cyan) srgb r g b / .95), 0 0 0 3px color(from var(--gmt-cyan) srgb r g b / .7)}60%,to{box-shadow:0 0 0 2px color(from var(--gmt-cyan) srgb r g b / .95), 0 0 0 16px color(from var(--gmt-cyan) srgb r g b / 0)}}.gmt-sonar-focus:focus,.gmt-icon-button:focus{box-shadow:0 0 0 2px color(from var(--gmt-cyan) srgb r g b / .95), 0 0 0 5px color(from var(--gmt-cyan) srgb r g b / .25);animation:gmt-focus-sonar var(--gmt-motion-sonar-duration) var(--gmt-easing) 1;outline:none}.gmt-sonar-loop{animation:gmt-focus-sonar-loop var(--gmt-motion-sonar-loop-duration) var(--gmt-easing) infinite}.gmt-field{appearance:none;font:inherit;padding:var(--gmt-space-2) var(--gmt-space-3);color:var(--gmt-ice);background:var(--gmt-fill-subtle);border:1px solid var(--gmt-border);border-radius:var(--gmt-radius-sm);corner-shape:bevel}.gmt-field:focus-visible{border-color:var(--gmt-cyan);outline:none}.gmt-button{appearance:none;font:inherit;border:1px solid var(--gmt-border);border-radius:var(--gmt-radius-sm);corner-shape:bevel;color:var(--gmt-ice);background:var(--gmt-fill-subtle);cursor:pointer;transition:color var(--gmt-duration-fast) var(--gmt-easing), background var(--gmt-duration-fast) var(--gmt-easing)}.gmt-button:hover,.gmt-button:focus-visible{color:var(--gmt-cyan-ink);background:var(--gmt-fill-strong)}.gmt-button:focus-visible{outline:2px solid var(--gmt-cyan);outline-offset:2px}.gmt-button:disabled{color:var(--gmt-ice-dim);background:var(--gmt-fill-subtle);cursor:not-allowed;opacity:.7}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.ng-mark[data-astro-cid-yciwpboz]{block-size:1.75rem;inline-size:auto;display:block;overflow:visible}.pane-top[data-astro-cid-yciwpboz]{stop-color:var(--gmt-ice);stop-opacity:.07}.pane-bottom[data-astro-cid-yciwpboz]{stop-color:var(--gmt-ice);stop-opacity:0}.sheen-top[data-astro-cid-yciwpboz]{stop-color:var(--gmt-ice);stop-opacity:.05}.sheen-bottom[data-astro-cid-yciwpboz]{stop-color:var(--gmt-ice);stop-opacity:0}.pane[data-astro-cid-yciwpboz]{fill:url(#ng-mark-pane)}.sheen[data-astro-cid-yciwpboz]{fill:url(#ng-mark-sheen)}.edge[data-astro-cid-yciwpboz],.ridge[data-astro-cid-yciwpboz],.glyph[data-astro-cid-yciwpboz]{fill:none;stroke:var(--gmt-ice);stroke-linejoin:round;stroke-linecap:round}.edge[data-astro-cid-yciwpboz],.ridge[data-astro-cid-yciwpboz]{vector-effect:non-scaling-stroke;stroke-width:1px}.edge[data-astro-cid-yciwpboz]{stroke-opacity:.5}.ridge[data-astro-cid-yciwpboz]{stroke-opacity:.35}.glyph[data-astro-cid-yciwpboz]{stroke-opacity:.75;stroke-width:36px}@media (forced-colors:active){.ng-mark[data-astro-cid-yciwpboz]{forced-color-adjust:none}.pane[data-astro-cid-yciwpboz],.sheen[data-astro-cid-yciwpboz]{fill:none}.edge[data-astro-cid-yciwpboz],.ridge[data-astro-cid-yciwpboz],.glyph[data-astro-cid-yciwpboz]{stroke:canvastext;stroke-opacity:1}}.site-header[data-astro-cid-nen7h5rs]{--gmt-blur:4px;z-index:10;border-width:0 0 1px;border-radius:0;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:.75rem 16px;display:flex;position:sticky;top:0}.site-header[data-astro-cid-nen7h5rs]:before,.site-header[data-astro-cid-nen7h5rs]:after{display:none}.wordmark[data-astro-cid-nen7h5rs]{align-items:center;gap:var(--gmt-space-3);font-family:var(--gmt-font-display);color:var(--gmt-ice);letter-spacing:.04em;display:inline-flex}nav[data-astro-cid-nen7h5rs]{gap:1rem;display:flex}.gmt-icon-button[data-astro-cid-nen7h5rs]{color:var(--gmt-ice-dim);text-decoration:none}.gmt-icon-button[data-astro-cid-nen7h5rs]:hover,.gmt-icon-button[data-astro-cid-nen7h5rs]:focus-visible{color:var(--gmt-ice)}:root{color-scheme:dark}*,:before,:after{box-sizing:border-box}body{background:var(--gmt-void);min-height:100vh;color:var(--gmt-ice);font-family:var(--gmt-font-mono);margin:0;line-height:1.6}main{max-width:64rem;padding:var(--gmt-space-6,2rem) 16px;margin:0 auto}h1,h2{font-family:var(--gmt-font-display);overflow-wrap:anywhere;font-weight:400;line-height:1.25}.intro{color:var(--gmt-ice-dim);max-width:40rem}a{color:var(--gmt-cyan)}.ng-enter-text,.ng-enter-pane{--ng-aurora:color-mix(in oklab, var(--gmt-spring) 45%, var(--gmt-cyan));--ng-sweep:linear-gradient(100deg, #000 38%, transparent 62%);animation-duration:2.4s;animation-timing-function:cubic-bezier(.25,.6,.2,1);animation-fill-mode:backwards;animation-delay:var(--ng-delay,0s);mask-size:300% 100%;mask-repeat:repeat-y;mask-clip:no-clip}.ng-enter-text{animation-name:ng-aurora-text}.ng-enter-pane{animation-name:ng-aurora-pane}@keyframes ng-aurora-text{0%{mask-image:var(--ng-sweep);filter:blur(12px);color:var(--ng-aurora);text-shadow:0 0 24px color(from var(--ng-aurora) srgb r g b / .7);box-shadow:0 0 48px 32px #0000;mask-position:100% 0}45%{filter:blur(3px);color:var(--ng-aurora);text-shadow:0 0 18px color(from var(--ng-aurora) srgb r g b / .45)}to{mask-image:var(--ng-sweep);filter:blur();text-shadow:0 0 #0000;box-shadow:0 0 48px 32px #0000;mask-position:0 0}}@keyframes ng-aurora-pane{0%{mask-image:var(--ng-sweep);filter:blur(10px);border-color:color(from var(--ng-aurora) srgb r g b / .6);box-shadow:0 0 40px -6px color(from var(--ng-aurora) srgb r g b / .4);mask-position:100% 0}45%{filter:blur(2px);border-color:color(from var(--ng-aurora) srgb r g b / .4);box-shadow:0 0 32px -6px color(from var(--ng-aurora) srgb r g b / .25)}to{mask-image:var(--ng-sweep);filter:blur();mask-position:0 0}}html.ng-await :is(.ng-enter-pane,.ng-enter-text):not(.ng-brushed){opacity:0;animation-name:none}html.ng-return :is(.ng-enter-pane,.ng-enter-text)[data-ng-target=header]{opacity:1;animation-name:none}:is(.ng-enter-pane,.ng-enter-text).ng-brushed{--ng-sweep:linear-gradient(var(--ng-angle,135deg), #000 38%, transparent 62%);animation-duration:var(--ng-brush-duration,1s);animation-timing-function:linear;animation-delay:0s;mask-size:300% 300%;mask-repeat:no-repeat}.ng-enter-pane.ng-brushed{animation-name:ng-brush-pane}.ng-enter-text.ng-brushed{animation-name:ng-brush-text}@keyframes ng-brush-text{0%{mask-image:var(--ng-sweep);mask-position:var(--ng-from,100% 100%);translate:calc(var(--ng-dx,.7) * -10px) calc(var(--ng-dy,.7) * -10px);filter:blur(12px);color:var(--ng-aurora);text-shadow:0 0 24px color(from var(--ng-aurora) srgb r g b / .7);box-shadow:0 0 48px 32px #0000}45%{filter:blur(3px);color:var(--ng-aurora);text-shadow:0 0 18px color(from var(--ng-aurora) srgb r g b / .45)}to{mask-image:var(--ng-sweep);mask-position:var(--ng-to,0% 0%);filter:blur();text-shadow:0 0 #0000;translate:0;box-shadow:0 0 48px 32px #0000}}@keyframes ng-brush-pane{0%{mask-image:var(--ng-sweep);mask-position:var(--ng-from,100% 100%);translate:calc(var(--ng-dx,.7) * -10px) calc(var(--ng-dy,.7) * -10px);filter:blur(10px);border-color:color(from var(--ng-aurora) srgb r g b / .7);box-shadow:0 0 44px -4px color(from var(--ng-aurora) srgb r g b / .5)}45%{filter:blur(2px);border-color:color(from var(--ng-aurora) srgb r g b / .45);box-shadow:0 0 32px -6px color(from var(--ng-aurora) srgb r g b / .3)}to{mask-image:var(--ng-sweep);mask-position:var(--ng-to,0% 0%);filter:blur();translate:0}}@media (prefers-reduced-motion:reduce){.ng-enter-text,.ng-enter-pane{animation-name:ng-fade;animation-duration:.6s;animation-delay:0s}}@keyframes ng-fade{0%{opacity:0}}
