.ban{--ban-ink:#060609;--ban-bone:#ece6d6;--ban-ash:#9c978b;--ban-ember:#f4b740;--ban-rule:rgb(236 230 214/0.45);--ban-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono",monospace;--ban-gap:clamp(1rem,2.4vh,1.75rem);position:relative;min-height:100vh;min-height:100svh;overflow-x:clip;background:var(--ban-ink);color:var(--ban-bone);font-family:var(--font-alegreya),serif}.ban-rain{position:fixed;inset:0;opacity:.16;-webkit-mask-image:linear-gradient(180deg,#000 0,#000 30vh,rgb(0 0 0/.4) 70vh);mask-image:linear-gradient(180deg,#000 0,#000 30vh,rgb(0 0 0/.4) 70vh)}.ban-eye,.ban-rain{pointer-events:none}.ban-eye{--w:min(116vw,41rem);min-height:0;position:relative;left:50%;width:var(--w);aspect-ratio:16/9;margin:calc(var(--w) * -.06) 0 calc(var(--w) * -.1) calc(var(--w) * -.5)}.ban-doc{position:relative;z-index:1;width:min(100% - 2.5rem,36rem);margin-inline:auto;padding-bottom:max(3rem,env(safe-area-inset-bottom))}.ban-doc>*+*{margin-top:var(--ban-gap)}.ban-title{font-size:clamp(2.75rem,1.6rem + 5.2vw,5.5rem);font-style:italic;font-weight:500;line-height:.95;letter-spacing:-.02em;word-spacing:.08em;text-wrap:balance}.ban-lede{max-width:34rem;font-size:clamp(1.0625rem,1rem + .3vw,1.25rem);line-height:1.5;text-wrap:pretty}.ban-mono{font-family:var(--ban-mono);font-size:.86em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.ban-leadin{color:var(--ban-ash);font-size:clamp(1rem,.95rem + .25vw,1.1875rem);line-height:1.4}.ban-ember{margin-top:.15em;color:var(--ban-ember);font-size:clamp(2.25rem,1.5rem + 3.4vw,4rem);font-weight:700;font-variant-numeric:lining-nums tabular-nums;line-height:1;letter-spacing:-.01em}.ban-ember--text{font-size:clamp(1.625rem,1.2rem + 1.9vw,2.5rem);font-weight:600;line-height:1.1}.ban-small{margin-top:.5rem;color:var(--ban-ash);font-size:.9375rem;line-height:1.45}.ban-small+.ban-small{margin-top:.15rem}.ban-appeal{max-width:34rem;font-size:clamp(1rem,.97rem + .2vw,1.125rem);line-height:1.5}.ban a{color:var(--ban-bone);text-decoration:underline;text-decoration-color:var(--ban-rule);text-decoration-thickness:1px;text-underline-offset:.22em}.ban-mail{display:inline-block;padding-block:.65rem;margin-block:-.65rem;overflow-wrap:anywhere}.ban :focus-visible{outline:2px solid var(--ban-bone);outline-offset:3px;border-radius:2px}.ban-browser summary,.ban-record h2{color:var(--ban-ash);font-size:1rem;font-weight:400;line-height:1.4}.ban-record dl{display:grid;grid-template-columns:minmax(0,1fr);gap:.15rem 1.25rem;margin-top:.75rem;font-size:.9375rem;line-height:1.6}.ban-record dt{margin-top:.7rem;color:var(--ban-ash)}.ban-record dt:first-child{margin-top:0}.ban-record dd{min-width:0;margin:0;overflow-wrap:anywhere}.ban-paths{margin:0;padding:0;list-style:none}.ban-paths li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 1.25rem}.ban-note,.ban-paths time{color:var(--ban-ash)}.ban-note{display:block;grid-column:1/-1;padding-block:.1rem .35rem;font-style:italic;line-height:1.4}.ban-browser summary{display:inline-block;padding-block:.65rem;margin-block:-.65rem;cursor:pointer;list-style:none;text-decoration:underline;text-decoration-color:var(--ban-rule);text-decoration-thickness:1px;text-underline-offset:.22em}.ban-browser summary::-webkit-details-marker{display:none}.ban-browser summary:before{content:"+ ";font-family:var(--ban-mono)}.ban-browser[open] summary:before{content:"− "}.ban-epigraph{color:var(--ban-ash);font-size:clamp(1rem,.95rem + .25vw,1.1875rem);font-style:italic;line-height:1.4}.ban-exit{display:inline-block;padding:.75rem 1.75rem;border:1px solid var(--ban-bone);border-radius:2px;font-size:1.125rem;line-height:1.4;text-decoration:none!important;transition:background-color .15s,color .15s}.ban-exit:hover{background:var(--ban-bone);color:var(--ban-ink)}.ban-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.ban-shell{position:fixed;inset:auto 0 0 0;z-index:5;padding:.6rem clamp(1.25rem,6.67vw,6rem) max(.6rem,env(safe-area-inset-bottom));border-top:1px solid rgb(236 230 214/.16);background:var(--ban-ink);font-family:var(--ban-mono);font-size:.8125rem;line-height:1.55}.ban--shell .ban-doc{padding-bottom:13rem}.ban-shell [role=log]{display:flex;flex-direction:column;justify-content:flex-end;max-height:9.5em;overflow:hidden;color:var(--ban-ash);white-space:pre-wrap;overflow-wrap:anywhere}.ban-shell .ban-echo{color:var(--ban-bone)}.ban-shell form{display:flex;gap:.6ch;align-items:baseline}.ban-shell label{flex:none;color:var(--ban-ash)}.ban-shell input{flex:1;min-width:0;min-height:0;padding:0;border:0;background:none;color:var(--ban-bone);font:inherit;caret-color:var(--ban-ember)}.ban-shell input:focus-visible{outline:none}@keyframes ban-in{0%{opacity:0}}.ban-in{animation:ban-in .6s ease-out var(--d,0s) backwards}.ban-title.ban-in{animation:ban-title-in .9s cubic-bezier(.2,.7,.1,1) var(--d,0s) backwards}@keyframes ban-title-in{0%{opacity:0;letter-spacing:.06em}}.ban[data-seen] .ban-in{animation:ban-in .3s ease-out backwards}@media (prefers-reduced-motion:reduce){.ban .ban-in{animation:none}}@media (max-width:639px){.ban-note--extra{display:none}}@media (max-width:479px){.ban-paths time{display:none}}@media (orientation:landscape) and (max-height:500px) and (max-width:1023px){.ban-eye{--w:min(116vw,41rem,56vh)}.ban-title{font-size:clamp(2rem,10vh,3rem)}}@media (min-width:1024px){.ban-rain{-webkit-mask-image:linear-gradient(90deg,transparent 0 30%,#000 60%);mask-image:linear-gradient(90deg,transparent 0 30%,#000 60%)}.ban{--ban-left:max(clamp(2rem,6.67vw,6rem),(100vw - 120rem)/2);--ban-right:max(1.5vw,(100vw - 120rem)/2);--ban-col:clamp(28rem,42vw,36rem)}.ban-eye{--w:min((100vw - var(--ban-right) - var(--ban-left) - var(--ban-col) - 1rem)/0.8,138vh,76rem);position:fixed;top:calc(47vh - var(--w) * .28125);right:calc(var(--ban-right) - var(--w) * .1);left:auto;margin:0}.ban-shell{padding-inline:var(--ban-left)}.ban-doc{width:var(--ban-col);margin-left:var(--ban-left);padding-block:clamp(2.5rem,9vh,6rem) max(5rem,env(safe-area-inset-bottom))}.ban-record dl{grid-template-columns:9.5rem minmax(0,1fr)}.ban-record dt{margin-top:0}.ban-record dd+dt,.ban-record dd+dt+dd{margin-top:.45rem}}