.prose header{margin-bottom:2rem}@media(min-width:640px){.prose header{margin-bottom:2rem}}.prose header h1{margin:0;font-size:clamp(var(--font-size-xl),5vw,var(--font-size-4xl));font-weight:400;color:var(--color-text-secondary);letter-spacing:.02em;line-height:1.4;opacity:.5;text-transform:uppercase}.prose header p{margin-top:.5rem;font-size:.88rem;color:var(--color-text-secondary);opacity:.7}.prose .content{font-size:1rem;line-height:1.7;color:var(--color-text);max-width:80ch;margin-left:auto;margin-right:auto}@media(min-width:640px){.prose .content{font-size:1.1rem;line-height:1.8}}.prose .content>h1:first-child{display:none}.prose .content>*+*{margin-top:2.5rem}.prose .content>h2{margin:0 0 1.5rem;font-size:1.1rem;font-weight:500;color:var(--color-text);letter-spacing:-.01em;line-height:1.3}@media(min-width:640px){.prose .content>h2{font-size:1.3rem;margin-bottom:2rem}}.prose .content>h2+*{margin-top:0}.prose .content>.collection{margin-top:0;margin-bottom:0;max-width:none;width:100%;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding-left:clamp(1rem,5vw,3rem);padding-right:clamp(1rem,5vw,3rem);box-sizing:border-box;overflow:visible}.prose .content>.collection+*{margin-top:2.5rem}.prose .content h1:not(:first-child),.prose .content h2{font-size:1.4rem;color:var(--color-text);letter-spacing:-.01em;font-weight:500;margin-top:2em;margin-bottom:1em}@media(min-width:640px){.prose .content h1:not(:first-child),.prose .content h2{font-size:clamp(1.5rem,1.3rem + 1vw,1.8rem)}}.prose .content h3{font-size:1.3rem;color:var(--color-text);letter-spacing:0;font-weight:500;margin-top:2em;margin-bottom:1em}@media(min-width:640px){.prose .content h3{font-size:clamp(1.3rem,1.1rem + .75vw,1.3rem)}}.prose .content h4,.prose .content h5,.prose .content h6{font-size:1.1rem;color:var(--color-text);font-weight:500;margin-top:2em;margin-bottom:1em}.prose .content>p:has(a[href*="/consumed/"]),.prose .content>p:has(a[href*="/playlists/"]),.blog .content>p:has(a[href*="/consumed/"]),.blog .content>p:has(a[href*="/playlists/"]){margin-top:var(--space-5xl);margin-bottom:0;padding-top:var(--space-3xl);padding-bottom:var(--space-2xl);border-top:1px solid var(--color-border);text-align:center;font-size:.81rem;line-height:1.6;color:var(--color-text-secondary);letter-spacing:.02em;opacity:.6;max-width:none;width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding-left:max(calc((100vw - min(1200px,100% - clamp(1rem,5vw,3rem) * 2))/2),clamp(1rem,5vw,3rem));padding-right:max(calc((100vw - min(1200px,100% - clamp(1rem,5vw,3rem) * 2))/2),clamp(1rem,5vw,3rem));box-sizing:border-box;display:block}.prose .content>p:has(a[href*="/consumed/"]) a,.prose .content>p:has(a[href*="/playlists/"]) a,.blog .content>p:has(a[href*="/consumed/"]) a,.blog .content>p:has(a[href*="/playlists/"]) a{color:var(--color-text);text-decoration:none;font-weight:400;transition:opacity var(--transition-base),text-decoration var(--transition-base);opacity:.8}.prose .content>p:has(a[href*="/consumed/"]) a:hover,.prose .content>p:has(a[href*="/playlists/"]) a:hover,.blog .content>p:has(a[href*="/consumed/"]) a:hover,.blog .content>p:has(a[href*="/playlists/"]) a:hover{opacity:1;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.prose .posts,.blog .posts{display:flex;flex-direction:column;gap:0}.prose:has(.posts) header{margin-bottom:2rem}@media(min-width:640px){.prose:has(.posts) header{margin-bottom:.5rem}}.prose:has(.posts) .post-preview,.blog .post-preview{position:relative;display:flex;align-items:baseline;justify-content:space-between;gap:2rem;padding:.75rem 0}[data-theme=light] .prose:has(.posts) .post-preview,[data-theme=light] .blog .post-preview{border-bottom:1px solid rgba(0,0,0,5%)}[data-theme=dark] .prose:has(.posts) .post-preview,[data-theme=dark] .blog .post-preview{border-bottom:1px solid rgba(255,255,255,5%)}.prose:has(.posts) .post-preview:first-child,.blog .post-preview:first-child{padding-top:0}.prose:has(.posts) .post-preview:last-child,.blog .post-preview:last-child{border-bottom:none}.prose:has(.posts) .post-preview:hover h2 a,.blog .post-preview:hover h2 a{opacity:.5}.prose:has(.posts) .post-preview:hover .post-meta,.blog .post-preview:hover .post-meta{opacity:.7}.prose:has(.posts) .post-preview h2,.blog .post-preview h2{margin:0;font-size:.94rem;font-weight:400;letter-spacing:0;line-height:1.4;flex:1;min-width:0}.prose:has(.posts) .post-preview h2 a,.blog .post-preview h2 a{color:var(--color-text);text-decoration:none;display:inline}.prose:has(.posts) .post-preview h2 a::after,.blog .post-preview h2 a::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0}.prose:has(.posts) .post-preview .post-meta,.blog .post-preview .post-meta{display:flex;justify-content:flex-end;align-items:center;gap:1.5rem;font-size:.75rem;color:var(--color-text-secondary);font-weight:400;opacity:.4;flex-shrink:0;flex-wrap:nowrap;white-space:nowrap}.prose:has(.posts) .post-preview .post-meta .post-meta-right time,.blog .post-preview .post-meta .post-meta-right time{font-variant-numeric:tabular-nums;white-space:nowrap}article.post .content h1,.post .content>h1,.post .content h1:first-child,.post .content h1:first-of-type,.post header+.content h1,.post header~.content h1{display:none!important;visibility:hidden!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;font-size:0!important;line-height:0!important}.prose .playlist-list{display:flex;flex-direction:column;gap:1rem;margin-top:2rem;max-width:none}.prose .playlist-item{border:1px solid var(--color-border);background:0 0}.prose .playlist-link{display:block;padding:1.5rem;text-decoration:none;color:inherit}.prose .playlist-item-header{margin-bottom:.75rem}.prose .playlist-item-meta{display:flex;gap:.5rem;align-items:baseline;margin-bottom:.5rem;font-size:.88rem;color:var(--color-text-secondary)}.prose .playlist-item-month{font-weight:500}.prose .playlist-item-year{font-weight:400}.prose .playlist-item-title{margin:0;font-size:1.3rem;font-weight:600;line-height:1.4;color:var(--color-text)}.prose .playlist-item-description{margin:0 0 .75rem;color:var(--color-text-secondary);line-height:1.6;font-size:1rem}.prose .playlist-item-date{font-size:.88rem;color:var(--color-text-secondary);display:block}.prose .no-playlists{text-align:center;color:var(--color-text-secondary);padding:3rem 0}.playlist-single header{margin-bottom:var(--space-2xl);padding-bottom:var(--space-xl);border-bottom:1px solid var(--color-border)}[data-theme=dark] .playlist-single header{border-bottom-color:var(--color-border)}@media(min-width:640px){.playlist-single header{margin-bottom:var(--space-3xl);padding-bottom:var(--space-2xl)}}.playlist-single header h1{margin:0 0 var(--space-xl);font-size:clamp(2rem,1.8rem + 1.5vw,2.8rem);font-weight:600;line-height:1.2;letter-spacing:-.03em}@media(min-width:640px){.playlist-single header h1{font-size:clamp(2rem,1.8rem + 1.5vw,2.8rem)}}.playlist-single header .post-meta{flex-direction:column;align-items:flex-start;gap:0}.playlist-single .playlist-content{line-height:1.6}.playlist-single .playlist-content h2{margin-top:2rem;margin-bottom:1rem;font-size:1.5rem;font-weight:600;color:var(--color-text)}.playlist-single .playlist-content h3{margin-top:1.5rem;margin-bottom:.75rem;font-size:1.3rem;font-weight:600;color:var(--color-text)}.playlist-single .playlist-content ul,.playlist-single .playlist-content ol{margin:1rem 0;padding-left:1.5rem}.playlist-single .playlist-content li{margin:.5rem 0}.playlist-single .playlist-content p{margin:1rem 0}.playlist-single .playlist-footer{margin-top:3rem;padding-top:2rem;border-top:1px solid var(--color-border)}.playlist-single .playlist-back-link{display:inline-block;text-decoration:none;color:var(--color-text-secondary);font-size:.88rem}.post .content .bandcamp-embed-standard,.post .content .bandcamp-embed-slim{float:left;width:520px;max-width:520px;margin:0 var(--space-xl)var(--space-lg)0;clear:left}.bandcamp-embed iframe{position:relative;border:none;display:block;max-width:100%}.bandcamp-embed-standard iframe{width:520px;height:120px;max-width:100%}.bandcamp-embed-slim iframe{width:520px;height:42px;max-width:100%}.post .content .bandcamp-embed-float-left{float:left;clear:none;margin:0 var(--space-xl)var(--space-base)0}.post .content .bandcamp-embed-float-right{float:right;clear:none;margin:0 0 var(--space-base)var(--space-xl)}.post .content .bandcamp-embed-standard.bandcamp-embed-float-right,.post .content .bandcamp-embed-slim.bandcamp-embed-float-right{float:right;margin-left:var(--space-xl);margin-right:0;clear:none}.post .content .bandcamp-embed-standard.bandcamp-embed-float-none,.post .content .bandcamp-embed-slim.bandcamp-embed-float-none{float:none;max-width:520px;width:520px;margin-left:auto;margin-right:auto}.post .content>.bandcamp-embed-standard,.post .content>.bandcamp-embed-slim{margin-top:0}.post .content p{overflow-wrap:break-word}@media(max-width:768px){.playlist-single .playlist-title{font-size:1.8rem}.prose .playlist-item-title{font-size:1.1rem}.prose .playlist-link{padding:1.3rem}.post .content .bandcamp-embed-standard,.post .content .bandcamp-embed-slim{float:none;max-width:100%;width:100%;margin:var(--space-lg)0}.bandcamp-embed-standard iframe,.bandcamp-embed-slim iframe{width:100%}}.zola-anchor{margin-inline-start:var(--space-sm);font-size:.8em;text-decoration:none;opacity:0;transition:opacity var(--transition-base);color:var(--color-text-secondary,#666)}.zola-anchor::before{content:"#"}@media(prefers-color-scheme:dark){.zola-anchor{color:#888}}.zola-anchor:hover{color:var(--color-link,#0066cc)}@media(prefers-color-scheme:dark){.zola-anchor:hover{color:#66b3ff}}:is(h1,h2,h3,h4,h5,h6):hover .zola-anchor{opacity:var(--opacity-full)}.zola-anchor[aria-label*=Anchor]{font-size:0}.zola-anchor[aria-label*=Anchor]::before{font-size:var(--font-size-lg)}.detail{margin:2rem 0;border-left:3px solid var(--color-accent-tertiary);border-radius:4px;background:var(--color-bg-secondary)}.detail-header{display:flex;align-items:center;gap:.75rem;padding:.5rem 1.5rem;cursor:pointer;list-style:none;font-weight:500;font-size:.88rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-accent-tertiary);user-select:none;transition:background-color .2s ease}.detail-header::-webkit-details-marker{display:none}.detail-header:hover{background:rgba(0,0,0,2%)}@media(prefers-color-scheme:dark){.detail-header:hover{background:rgba(255,255,255,2%)}}.detail-icon{display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;flex-shrink:0;font-size:.63rem;transition:transform .2s ease;color:var(--color-accent-tertiary)}.detail-title{flex:1}.detail[open] .detail-icon{transform:rotate(90deg)}.detail-content{padding:0 1.5rem 1.3rem;font-size:.94rem;line-height:1.6;color:var(--color-text)}.detail-content p{margin:0}.detail-content p:not(:last-child){margin-bottom:.75rem}.detail-content>*:first-child{margin-top:.75rem}.callout{margin:1.5rem 0;padding:0. em 1.25rem;border:2px solid;border-radius:4px;padding-block:8px}.callout-header{display:flex;align-items:center;margin-bottom:.5rem;font-weight:500;font-size:.88rem;text-transform:uppercase;letter-spacing:.05em}.callout-icon{width:1.5rem;height:1.5rem;min-width:1.5rem;min-height:1.5rem;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.75rem;line-height:1;flex-shrink:0;text-align:center;padding:0;margin:0}.callout-icon::before,.callout-icon::after{content:none}.callout-content{padding-left:1.5rem;font-size:.94rem;line-height:1.6}.callout-content p{margin:0}.callout-content p:not(:last-child){margin-bottom:.5rem}.callout.callout-note{background:0 0;border-color:var(--color-accent-tertiary)}.callout.callout-note .callout-icon,.callout.callout-note .callout-title,.callout.callout-note .callout-content{color:var(--color-accent-tertiary)}.callout.callout-tip{background:0 0;border-color:var(--color-accent-secondary)}.callout.callout-tip .callout-icon,.callout.callout-tip .callout-title,.callout.callout-tip .callout-content{color:var(--color-accent-secondary)}.callout.callout-important{background:0 0;border-color:var(--color-accent)}.callout.callout-important .callout-icon,.callout.callout-important .callout-title,.callout.callout-important .callout-content{color:var(--color-accent)}.callout.callout-warning{background:0 0;border-color:#d4a574}.callout.callout-warning .callout-icon,.callout.callout-warning .callout-title,.callout.callout-warning .callout-content{color:#d4a574}.callout.callout-caution{background:0 0;border-color:#c75b4a}.callout.callout-caution .callout-icon,.callout.callout-caution .callout-title,.callout.callout-caution .callout-content{color:#c75b4a}.quote-block{margin:2rem 0;padding:0;border:none}.quote-text{margin:0;padding:1rem 1.5rem 1rem 2.5rem;font-size:1.1rem;line-height:1.6;font-style:italic;color:var(--color-accent);background:0 0;border:none;border-radius:2px;position:relative}.quote-text::before{content:'"';position:absolute;top:.75rem;left:.5rem;font-size:3rem;line-height:1;color:var(--color-accent);opacity:.15;font-family:Georgia,serif}.quote-text p{margin:0;position:relative;z-index:1}.quote-text p:not(:last-child){margin-bottom:1rem}.quote-cite{margin-top:.75rem;padding-left:1.5rem;font-size:.88rem;color:var(--color-accent);font-style:normal;opacity:.7}.quote-cite::before{content:'— '}@media(max-width:640px){.quote-block{margin:1.5rem 0}.quote-text{padding:.75rem 1.3rem .75rem 2rem;font-size:1rem}.quote-text::before{top:.5rem;left:.25rem;font-size:2.5rem}.quote-cite{padding-left:1.3rem}}.mermaid-container{margin:var(--space-xl)0;padding:0;background:0 0!important;border-radius:0;overflow-x:auto;width:100%}.mermaid-container .mermaid{margin:0 auto;padding:var(--space-md)0;text-align:center;background:0 0!important;width:100%;max-width:100%}.mermaid-container .mermaid svg{background:0 0!important;width:100%!important;max-width:100%;height:auto!important;display:block;margin:0 auto}.mermaid-container .mermaid text{fill:var(--color-text)!important;font-family:inherit!important;font-size:inherit!important}.mermaid-container .mermaid svg g,.mermaid-container .mermaid svg g[id^=mermaid-],.mermaid-container .mermaid svg>g{fill:var(--color-text)!important;font-family:var(--font-family)!important}.mermaid-container .mermaid svg [fill="#1a1a1a"],.mermaid-container .mermaid svg [fill="#333333"],.mermaid-container .mermaid svg [fill="#000000"],.mermaid-container .mermaid svg [fill=black]{fill:var(--color-text)!important}.mermaid-container .mermaid .label text,.mermaid-container .mermaid .nodeLabel,.mermaid-container .mermaid .edgeLabel,.mermaid-container .mermaid .cluster-label text{fill:var(--color-text)!important}.mermaid-container .mermaid .node rect,.mermaid-container .mermaid .node circle,.mermaid-container .mermaid .node ellipse,.mermaid-container .mermaid .node polygon{fill:var(--color-bg-secondary)!important;stroke:var(--color-border)!important;stroke-width:1.5px}.mermaid-container .mermaid .actor{fill:var(--color-bg-secondary)!important;stroke:var(--color-border)!important;stroke-width:1.5px}.mermaid-container .mermaid .messageLine0,.mermaid-container .mermaid .messageLine1{stroke:var(--color-text-secondary)!important}.mermaid-container .mermaid .flowchart-link{stroke:var(--color-text-secondary)!important}.mermaid-container .mermaid .note{fill:var(--color-bg-secondary)!important;stroke:var(--color-accent)!important;opacity:.6}.mermaid-container .mermaid .noteText{fill:var(--color-text)!important}.mermaid-container .mermaid .cluster rect,.mermaid-container .mermaid .cluster polygon{fill:transparent!important;stroke:var(--color-border)!important;opacity:.3}.mermaid-container .mermaid g rect[fill]:not(.quadrant-point):not([class*=quadrant]):not([class*=pie]):not(.er):not([class*=entity]),.mermaid-container .mermaid g polygon[fill]:not([class*=quadrant]):not([class*=pie]){fill:var(--color-bg)!important}.mermaid-container .mermaid rect[style*="fill: rgb(255, 255, 255)"],.mermaid-container .mermaid rect[style*="fill:rgb(255, 255, 255)"],.mermaid-container .mermaid rect[fill="#ffffff"],.mermaid-container .mermaid rect[fill=white]{fill:var(--color-bg)!important}.mermaid-container .mermaid polygon[style*="fill: rgb(255, 255, 255)"],.mermaid-container .mermaid polygon[style*="fill:rgb(255, 255, 255)"],.mermaid-container .mermaid polygon[fill="#ffffff"],.mermaid-container .mermaid polygon[fill=white]{fill:var(--color-bg)!important}.mermaid-container .mermaid .quadrant-point{fill:var(--color-accent)!important}.mermaid-container .mermaid .quadrant-point-label{fill:var(--color-text)!important}.mermaid-container .mermaid .quadrant-label{fill:var(--color-text)!important}.mermaid-container .mermaid .pieOuterCircle,.mermaid-container .mermaid .pieCircle{stroke:var(--color-border)!important}.mermaid-container .mermaid .commit-label{fill:var(--color-text)!important}.mermaid-container .mermaid .commit-id{fill:var(--color-accent)!important}.mermaid-container .mermaid .branch-label{fill:var(--color-accent-secondary)!important}.mermaid-container .mermaid .section0,.mermaid-container .mermaid .section1,.mermaid-container .mermaid .section2,.mermaid-container .mermaid .section3{fill:var(--color-bg-secondary)!important}.mermaid-container .mermaid .task0,.mermaid-container .mermaid .task1,.mermaid-container .mermaid .task2,.mermaid-container .mermaid .task3{fill:var(--color-accent)!important}.mermaid-container .mermaid .taskText0,.mermaid-container .mermaid .taskText1,.mermaid-container .mermaid .taskText2,.mermaid-container .mermaid .taskText3{fill:var(--color-text)!important}.mermaid-container .mermaid svg>rect,.mermaid-container .mermaid svg>g>rect:first-child{fill:var(--color-bg)!important}@media(max-width:640px){.mermaid-container{margin:2rem 0;padding:.5rem 0}}.outdate-alert{margin:2rem 0;padding:1.3rem 1.5rem;background:var(--color-bg-secondary);border-left:4px solid #d4a574;border-radius:4px;display:flex;align-items:flex-start;gap:1rem}.outdate-alert-icon{flex-shrink:0;font-size:1.5rem;color:#d4a574;line-height:1;margin-top:.13rem}.outdate-alert-content{flex:1}.outdate-alert strong{display:block;margin-bottom:.5rem;font-size:.94rem;font-weight:500;color:var(--color-accent)}.outdate-alert p{margin:0;font-size:.88rem;line-height:1.6;color:var(--color-text-secondary);opacity:.9}.katex-display{margin:2rem 0!important;overflow-x:auto;overflow-y:hidden}.katex{font-size:1.1em}.katex-display>.katex{text-align:left;white-space:pre-wrap}.responsive-image{display:block;max-width:100%;margin:2rem auto}.responsive-image picture{display:block;line-height:0}.responsive-image img{width:100%;height:auto;display:block;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);box-shadow:0 2px 8px rgba(0,0,0,8%),0 4px 16px rgba(0,0,0,5%)}figure.responsive-image{margin:2.5rem auto;padding:0}figure.responsive-image .image-container{position:relative;line-height:0}figure.responsive-image .image-container .dithered-img,figure.responsive-image .image-container .original-img{width:100%;height:auto}figure.responsive-image .image-container .dithered-img,.dithered-img{mix-blend-mode:color-burn;opacity:.85}.consumed-page-content figure.responsive-image:has(.dithered-img),.consumed-content-section figure.responsive-image:has(.dithered-img){mix-blend-mode:color-burn;isolation:auto}@supports not selector(:has(*)){.consumed-page-content .dithered-img,.consumed-content-section .dithered-img{mix-blend-mode:color-burn!important;opacity:.85!important}}.consumed-page-content .dithered-img,.consumed-content-section .dithered-img{mix-blend-mode:normal!important;opacity:.85!important}.consumed-page-content figure.responsive-image .image-container,.consumed-content-section figure.responsive-image .image-container{isolation:auto!important}@media(prefers-color-scheme:dark){figure.responsive-image .image-container .dithered-img,.dithered-img{mix-blend-mode:luminosity;opacity:.9}.consumed-page-content figure.responsive-image:has(.dithered-img),.consumed-content-section figure.responsive-image:has(.dithered-img){mix-blend-mode:luminosity;isolation:auto}@supports not selector(:has(*)){.consumed-page-content .dithered-img,.consumed-content-section .dithered-img{mix-blend-mode:luminosity!important;opacity:.9!important}}.consumed-page-content .dithered-img,.consumed-content-section .dithered-img{mix-blend-mode:normal!important;opacity:.9!important}.consumed-page-content figure.responsive-image .image-container,.consumed-content-section figure.responsive-image .image-container{isolation:auto!important}}figure.responsive-image .image-container .original-img img{mix-blend-mode:normal}figure.responsive-image figcaption{margin-top:.5rem;padding:.5rem 4rem;font-size:.81rem;line-height:1.5;color:var(--color-text-secondary);text-align:center;font-style:normal;font-weight:400;opacity:.9;background:var(--color-bg-secondary);clip-path:polygon(0 0,92% 0,100% 100%,8% 100%);box-shadow:0 1px 4px rgba(0,0,0,5%)}figure.responsive-image figcaption .toggle-original{display:inline-block;margin-left:.5rem;padding:0;border:none;background:0 0;font-size:.88rem;font-weight:500;font-family:inherit;color:var(--color-accent);cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:2px;opacity:.8;transition:opacity var(--transition-base)}figure.responsive-image figcaption .toggle-original:hover{text-decoration-style:solid;opacity:1}figure.responsive-image figcaption .toggle-original:focus-visible{outline:1px solid var(--color-accent);outline-offset:2px;opacity:1}.image-comparison{margin:3rem auto;max-width:100%}.image-comparison figcaption{margin-bottom:1.5rem;font-size:1rem;font-weight:600;text-align:center;color:#333}@media(prefers-color-scheme:dark){.image-comparison figcaption{color:#ddd}}.image-comparison .comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}@media(max-width:768px){.image-comparison .comparison-grid{grid-template-columns:1fr;gap:1.5rem}}.image-comparison .comparison-item{display:flex;flex-direction:column;gap:.75rem}.image-comparison .comparison-item h4{margin:0;padding:.5rem;font-size:.88rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;text-align:center;background:#f5f5f5;border-radius:4px 4px 0 0;color:#555}@media(prefers-color-scheme:dark){.image-comparison .comparison-item h4{background:#2a2a2a;color:#bbb}}.image-comparison .comparison-item picture{display:block;line-height:0}.image-comparison .comparison-item img{width:100%;height:auto;display:block;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);box-shadow:0 2px 8px rgba(0,0,0,8%),0 4px 16px rgba(0,0,0,5%)}picture.responsive-image{display:block;max-width:100%;margin:1.5rem auto;line-height:0}picture.responsive-image img{width:100%;height:auto;display:block;clip-path:polygon(8% 0,100% 0,92% 100%,0 100%);box-shadow:0 2px 8px rgba(0,0,0,8%),0 4px 16px rgba(0,0,0,5%)}.responsive-image.small{max-width:400px}.responsive-image.medium{max-width:600px}.responsive-image.large{max-width:1e3px}.responsive-image.full-bleed{max-width:none;width:100vw;margin-left:50%;transform:translateX(-50%)}.responsive-image.full-bleed img{clip-path:none}img[loading=lazy]{min-height:200px}.consumed-poster-image-container[data-category=music] img[loading=lazy]{min-height:0!important;height:auto!important}img[loading=lazy]:not([src]){animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}100%{background-position:-200% 0}}.responsive-image.zoomable img{cursor:zoom-in;transition:transform .3s ease,box-shadow .3s ease}.responsive-image.zoomable img:active{transform:scale(1.5);cursor:zoom-out;position:relative;z-index:10}img[src*=_dithered],img[src*=dithered]{mix-blend-mode:multiply;opacity:.85}@media(prefers-color-scheme:dark){img[src*=_dithered],img[src*=dithered]{mix-blend-mode:luminosity;opacity:.9}}.img-gallery{display:grid;grid-template-columns:repeat(var(--gallery-columns,3),1fr);gap:2rem;margin:2rem 0}@media(max-width:1024px){.img-gallery{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media(max-width:640px){.img-gallery{grid-template-columns:1fr;gap:1rem}}.img-gallery .responsive-image{margin:0}.img-gallery figure.responsive-image{margin:0}.img-gallery figure.responsive-image figcaption{padding:.5rem 1rem;font-size:.75rem}@media print{.responsive-image,figure.responsive-image{break-inside:avoid;page-break-inside:avoid}img{max-width:100%!important;box-shadow:none!important}img[src*=_dithered],img[src*=dithered]{mix-blend-mode:normal}.img-gallery{grid-template-columns:repeat(2,1fr)!important}}.chroma{background-color:#1a1a1a;color:#e6e6e6}.chroma .err{color:#f6f8fa;background-color:#82071e}.chroma .lnlinks{outline:none;text-decoration:none;color:inherit}.chroma .lntd{vertical-align:top;padding:0;margin:0;border:0}.chroma .lntable{border-spacing:0;padding:0;margin:0;border:0}.chroma .hl{background-color:#2a2a2a}.chroma .lnt{white-space:pre;margin-right:.4em;padding:0 .4em;color:#666}.chroma .ln{white-space:pre;margin-right:.4em;padding:0 .4em;color:#666}.chroma .line{display:flex}.chroma .k{color:#ff79c6}.chroma .kc{color:#ff79c6}.chroma .kd{color:#ff79c6}.chroma .kn{color:#ff79c6}.chroma .kp{color:#ff79c6}.chroma .kr{color:#ff79c6}.chroma .kt{color:#8be9fd}.chroma .na{color:#50fa7b}.chroma .nc{color:#8be9fd}.chroma .no{color:#bd93f9}.chroma .nd{color:#bd93f9}.chroma .ni{color:#bd93f9}.chroma .nl{color:#ffb86c}.chroma .nn{color:#f8f8f2}.chroma .nx{color:#f8f8f2}.chroma .nt{color:#ff79c6}.chroma .nb{color:#8be9fd}.chroma .bp{color:#f8f8f2}.chroma .nv{color:#f8f8f2}.chroma .vc{color:#f8f8f2}.chroma .vg{color:#f8f8f2}.chroma .vi{color:#f8f8f2}.chroma .vm{color:#f8f8f2}.chroma .nf{color:#50fa7b}.chroma .fm{color:#50fa7b}.chroma .s{color:#f1fa8c}.chroma .sa{color:#f1fa8c}.chroma .sb{color:#f1fa8c}.chroma .sc{color:#f1fa8c}.chroma .dl{color:#f1fa8c}.chroma .sd{color:#f1fa8c}.chroma .s2{color:#f1fa8c}.chroma .se{color:#f1fa8c}.chroma .sh{color:#f1fa8c}.chroma .si{color:#f1fa8c}.chroma .sx{color:#f1fa8c}.chroma .sr{color:#f1fa8c}.chroma .s1{color:#f1fa8c}.chroma .ss{color:#f1fa8c}.chroma .m{color:#bd93f9}.chroma .mb{color:#bd93f9}.chroma .mf{color:#bd93f9}.chroma .mh{color:#bd93f9}.chroma .mi{color:#bd93f9}.chroma .il{color:#bd93f9}.chroma .mo{color:#bd93f9}.chroma .o{color:#ff79c6}.chroma .ow{color:#ff79c6}.chroma .p{color:#f8f8f2}.chroma .c{color:#6272a4;font-style:italic}.chroma .ch{color:#6272a4;font-style:italic}.chroma .cm{color:#6272a4;font-style:italic}.chroma .c1{color:#6272a4;font-style:italic}.chroma .cs{color:#6272a4;font-style:italic}.chroma .cp{color:#6272a4;font-style:italic}.chroma .cpf{color:#6272a4;font-style:italic}.chroma .gd{color:#f55;background-color:#44475a}.chroma .ge{font-style:italic}.chroma .gi{color:#50fa7b;background-color:#44475a}.chroma .go{color:#f8f8f2}.chroma .gl{text-decoration:underline}.chroma .w{color:#f8f8f2}@media(prefers-color-scheme:dark){.chroma{background-color:#0d0d0d;color:#e6e6e6}.chroma .hl{background-color:#1a1a1a}.chroma .k{color:#ff92d0}.chroma .kc{color:#ff92d0}.chroma .kd{color:#ff92d0}.chroma .kn{color:#ff92d0}.chroma .kp{color:#ff92d0}.chroma .kr{color:#ff92d0}.chroma .kt{color:#9aedfe}.chroma .na{color:#5af78e}.chroma .nc{color:#9aedfe}.chroma .nf{color:#5af78e}.chroma .fm{color:#5af78e}.chroma .s{color:#f4f99d}.chroma .sa{color:#f4f99d}.chroma .sb{color:#f4f99d}.chroma .sc{color:#f4f99d}.chroma .dl{color:#f4f99d}.chroma .sd{color:#f4f99d}.chroma .s2{color:#f4f99d}.chroma .se{color:#f4f99d}.chroma .sh{color:#f4f99d}.chroma .si{color:#f4f99d}.chroma .sx{color:#f4f99d}.chroma .sr{color:#f4f99d}.chroma .s1{color:#f4f99d}.chroma .ss{color:#f4f99d}.chroma .no{color:#c9a7fa}.chroma .nd{color:#c9a7fa}.chroma .ni{color:#c9a7fa}.chroma .m{color:#c9a7fa}.chroma .mb{color:#c9a7fa}.chroma .mf{color:#c9a7fa}.chroma .mh{color:#c9a7fa}.chroma .mi{color:#c9a7fa}.chroma .il{color:#c9a7fa}.chroma .mo{color:#c9a7fa}.chroma .gd{color:#ff6b6b;background-color:#2a2a2a}.chroma .gi{color:#69ff94;background-color:#2a2a2a}}pre{background:#1a1a1a!important}@media(prefers-color-scheme:dark){pre{background:#0d0d0d!important}}pre code{background:0 0!important;color:inherit}pre .copy-button{position:absolute;top:.5rem;right:.5rem;padding:.38rem .75rem;font-size:.75rem;color:#e0e0e0;background:#2a2a2a;border:1px solid #444;border-radius:3px;cursor:pointer;opacity:0;transition:opacity .2s ease}pre:hover .copy-button{opacity:.7}pre .copy-button:hover{opacity:1;background:#333}@media(prefers-color-scheme:dark){pre .copy-button{background:#1a1a1a;border-color:#333}pre .copy-button:hover{background:#222}}