:root{--surface:#14171d;--surface-raised:#1c2029;--ink:#edede7;--ink-soft:#9a9c93;--hairline:#33362f;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2.5rem;--space-7:3.5rem;--space-8:5rem;--text-xs:.75rem;--text-sm:.8rem;--text-base:1rem;--text-lg:1.05rem;--text-xl:1.35rem;--text-2xl:clamp(1.5rem, 2vw + 1rem, 2rem);--text-3xl:clamp(2.25rem, 5vw + 1rem, 3.75rem);--radius-sm:3px;--radius-md:8px;--dur-fast:.15s;--dur-base:.25s;--dur-slow:.4s;--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1)}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(/_astro/fraunces-italic-500.BEbM7Mn6.woff2)format("woff2")}@font-face{font-family:Fraunces Fallback;src:local(Georgia),local(Times New Roman),local(Times);size-adjust:97.62%;ascent-override:100.18%;descent-override:26.12%;line-gap-override:0%}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/plex-sans-400.CDDApCn2.woff2)format("woff2")}@font-face{font-family:Plex Sans Fallback;src:local(Arial),local(Helvetica Neue),local(Helvetica);size-adjust:99.51%;ascent-override:103.01%;descent-override:27.64%;line-gap-override:0%}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_astro/plex-mono-400.DMJ8VG8y.woff2)format("woff2")}@font-face{font-family:Plex Mono Fallback;src:local(Consolas),local(Menlo),local(DejaVu Sans Mono);size-adjust:105.26%;ascent-override:97.38%;descent-override:26.13%;line-gap-override:0%}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fade{0%{opacity:0}to{opacity:1}}.rise{opacity:0;animation:rise var(--dur-slow) var(--ease-out) forwards}.fade{opacity:0;animation:fade var(--dur-base) var(--ease-out) forwards}@supports (animation-timeline:view()){.reveal-on-scroll{opacity:0;animation:rise var(--dur-slow) var(--ease-out) forwards;animation-timeline:view();animation-range:entry 10% cover 30%}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.interactive{color:var(--ink);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent);transition-property:color,border-color,opacity,transform;transition-duration:var(--dur-fast);transition-timing-function:var(--ease-out);position:relative}.interactive:after{content:"";min-width:44px;min-height:44px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.interactive:hover,.interactive:focus-visible{color:var(--accent)}.interactive:active{transform:translateY(1px)}.interactive[aria-disabled=true],.interactive:disabled{opacity:.5;pointer-events:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--text-3xl:1.875rem;--radius-sm:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.static{position:static}.hidden{display:none}.inline{display:inline}}:root{--accent:#8fae9b}*,:before,:after{box-sizing:border-box}html{color-scheme:dark}body{background:var(--surface);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:IBM Plex Sans,Plex Sans Fallback,system-ui,-apple-system,sans-serif;line-height:1.6}.frame{max-width:46rem;padding:var(--space-6) var(--space-5) var(--space-8);flex-direction:column;min-height:100vh;margin:0 auto;display:flex}.redaction{font-family:Fraunces,Fraunces Fallback,serif;font-style:italic;font-weight:500;font-size:var(--text-3xl);letter-spacing:-.025em;margin:0 0 var(--space-6);opacity:0;max-width:18ch;animation:fade var(--dur-base) var(--ease-out) forwards;line-height:1.05}.redact{white-space:nowrap;position:relative}.redact:after{content:"";background:var(--accent);transform-origin:100%;animation:unredact var(--dur-slow) var(--ease-out) forwards;position:absolute;inset:.08em -.12em .12em}.redact:first-of-type:after{animation-delay:.4s}.redact:nth-of-type(2):after{animation-delay:.65s}@keyframes unredact{0%{transform:scaleX(1)}to{transform:scaleX(0)}}
