.circular-gallery{position:relative;width:100%;height:100%;overflow:hidden;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab}.circular-gallery[data-pointer]{cursor:pointer}.circular-gallery[data-dragging]{cursor:grabbing}.circular-gallery-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.circular-gallery-labels{position:absolute;inset:0;pointer-events:none}.circular-gallery-label{position:absolute;top:0;left:0;line-height:1.2;white-space:nowrap;will-change:transform,opacity}.circular-gallery-caption{position:absolute;top:0;left:50%;width:min(90%,36rem);text-align:center;opacity:0;pointer-events:none}.circular-gallery-caption-text{margin:0;line-height:1.5;opacity:.65}.circular-gallery-close{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s ease}.circular-gallery-close[data-visible]{opacity:.8;pointer-events:auto}.circular-gallery-close:hover{opacity:1}.circular-gallery-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}.circular-gallery-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.page-wallet{overflow:hidden}.home-btn{position:fixed;z-index:20;top:max(12px,env(safe-area-inset-top,0px));left:max(14px,env(safe-area-inset-left,0px));width:42px;height:42px;border-radius:50%;display:grid;place-items:center;color:var(--fg);background:#08070c8c;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s ease}.home-btn:before{content:"";position:absolute;inset:0;padding:1px;border-radius:inherit;pointer-events:none;background:conic-gradient(from var(--ring),#ffa31a,#e0246f,#00a49d,#ffa31a);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:ring 7s linear infinite reverse}.home-btn svg{width:22px;height:22px;overflow:visible;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.home-btn path{stroke-dasharray:40;stroke-dashoffset:40;animation:draw 1.1s cubic-bezier(.6,0,.2,1) forwards}.home-btn .home-walls{animation-delay:.25s}.home-btn .home-door{animation-delay:.55s;transition:fill .35s ease,stroke .35s ease}.home-btn .home-roof{transition:transform .45s cubic-bezier(.3,1.6,.5,1),stroke .35s ease;transform-origin:16px 10px}@keyframes draw{to{stroke-dashoffset:0}}.home-btn:hover,.home-btn:focus-visible{transform:translateY(-1px) scale(1.06);box-shadow:0 0 22px -4px #e0246f8c,0 0 34px -10px #ffa31a80}.home-btn:hover .home-roof,.home-btn:focus-visible .home-roof{transform:translateY(-2.5px) rotate(-4deg);stroke:url(#home-ink)}.home-btn:hover .home-door,.home-btn:focus-visible .home-door{fill:#ffa31a;stroke:#ffa31a;filter:drop-shadow(0 0 4px #ffa31a)}.home-btn:focus-visible{outline:2px solid var(--fg);outline-offset:3px}@media(prefers-reduced-motion:reduce){.home-btn path{animation:none;stroke-dashoffset:0}.home-btn:before{animation:none}}body[data-mode=ring]:not(.ready) .ghost{background:linear-gradient(100deg,transparent 35%,rgba(255,163,26,.55) 45%,rgba(224,36,111,.55) 50%,rgba(0,164,157,.55) 55%,transparent 65%) 0 0 / 300% 100%;-webkit-background-clip:text;background-clip:text;animation:sheen 1.8s linear infinite}@keyframes sheen{0%{background-position:100% 0}to{background-position:-50% 0}}.ghost{position:fixed;inset:0;z-index:1;display:grid;place-items:center;pointer-events:none;white-space:nowrap;font-weight:800;font-size:min(15vw,30vh);line-height:.85;text-transform:uppercase;letter-spacing:-.02em;color:transparent;-webkit-text-stroke:1px rgba(244,241,236,.14)}.vault{position:relative;z-index:2;height:100svh;pointer-events:none}.vault>*{pointer-events:auto}.head{position:fixed;z-index:5;left:0;right:0;top:max(26px,calc(env(safe-area-inset-top,0px) + 14px));text-align:center;pointer-events:none}.meta{margin:0;font:600 11px var(--ui-font);letter-spacing:.16em;text-transform:uppercase;color:#f4f1ec8c}.meta.addr{text-transform:none;letter-spacing:.08em}.count{margin:0 0 7px;font-weight:800;font-size:22px;line-height:1;letter-spacing:.02em;text-transform:uppercase;color:var(--fg)}.count:empty{display:none}@media(max-width:560px){.count{font-size:19px;margin-bottom:6px}}@media(max-width:560px)and (orientation:portrait){body[data-mode=portrait] .head{display:flex;justify-content:center;align-items:baseline;gap:10px}body[data-mode=portrait] .count{font-size:13px;margin:0}}.ring{position:fixed;inset:0}.ring[hidden]{display:none}.progress{position:fixed;left:50%;top:50%;translate:-50% -50%;width:min(240px,60vw);height:1px;background:#f4f1ec24;overflow:hidden;z-index:3}.progress i{display:block;height:100%;width:0;background:var(--fg);transition:width .3s ease}.portrait{--p-size: min( calc(100vw - 32px) , calc(100svh - 300px) , 620px);position:fixed;inset:0;display:grid;justify-items:center;align-content:safe center;gap:0;padding:70px 16px 24px;overflow-y:auto;overscroll-behavior:contain}.portrait[hidden]{display:none}body[data-mode=portrait] .ghost{opacity:.6}.portrait .p-media{position:relative;inset:auto;background:#0b0a10;width:var(--p-size);height:var(--p-size)}.portrait .p-bar,.portrait .p-traits,.portrait .v-dl{width:min(100%,calc(100svh - 300px),620px)}.v-dl{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:12px;width:var(--vw-size)}.v-dl-label{font:600 10px var(--ui-font);letter-spacing:.14em;text-transform:uppercase;color:#f4f1ec73;margin-right:4px}.v-dl button{all:unset;cursor:pointer;display:inline-flex;align-items:baseline;gap:6px;padding:8px 13px;border-radius:999px;border:1px solid rgba(244,241,236,.2);font:700 10px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;color:var(--fg);transition:border-color .3s ease,background-color .3s ease}.v-dl button small{font-weight:500;font-size:9px;letter-spacing:.06em;opacity:.55;text-transform:none}.v-dl button:hover{border-color:#f4f1ec99;background:#f4f1ec0f}.v-dl button:focus-visible{outline:1px solid var(--fg)}.v-dl button:disabled{opacity:.3;cursor:default}.v-dl button.busy{cursor:progress;background:linear-gradient(90deg,rgba(244,241,236,.16) calc(var(--p, 0) * 100%),transparent 0)}.v-dl button.done{border-color:#3ddc97;color:#3ddc97}.empty{position:fixed;inset:0;z-index:3;display:grid;place-content:center;justify-items:center;gap:18px;text-align:center;pointer-events:none}.empty[hidden]{display:none}.empty p{margin:0;font-weight:800;font-size:clamp(22px,4vw,40px);text-transform:uppercase;letter-spacing:.01em}.empty a,.empty button{all:unset;cursor:pointer;pointer-events:auto;font:600 11px var(--ui-font);letter-spacing:.14em;text-transform:uppercase;padding:11px 18px;border-radius:999px;border:1px solid rgba(244,241,236,.3);color:var(--fg)}.empty a:hover,.empty button:hover{border-color:#f4f1ecb3}@media(max-width:560px){.v-dl{justify-content:center}.head{top:calc(max(12px,env(safe-area-inset-top,0px)) + 54px)}}.viewer{--vw-size: min(100%, max(280px, calc(100dvh - 260px) ), 860px);border:0;padding:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;background:#040408db;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);color:var(--fg)}.viewer[open]{display:grid;grid-template-rows:auto auto auto auto;align-content:safe center;overflow-y:auto;overscroll-behavior:contain;justify-items:center;align-items:center;padding:calc(64px + env(safe-area-inset-top,0px)) 16px calc(22px + env(safe-area-inset-bottom,0px));box-sizing:border-box;animation:v-in .35s ease}.viewer::backdrop{background:transparent}@keyframes v-in{0%{opacity:0}}.v-stage{position:relative;width:var(--vw-size);aspect-ratio:1;align-self:center}.v-media{position:absolute;inset:0;border-radius:16px;overflow:hidden;background:#f4f1ec0a}.v-media>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;animation:v-in .3s ease}.v-nav{all:unset;cursor:pointer;position:absolute;top:50%;translate:0 -50%;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;font-size:26px;color:var(--fg);background:#08070c73;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.v-nav.prev{left:10px}.v-nav.next{right:10px}.v-nav:focus-visible,.v-close:focus-visible{outline:2px solid var(--fg)}.v-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;width:var(--vw-size);margin-top:16px;flex-wrap:wrap}.v-id{font-weight:800;font-size:22px}.v-tabs{display:flex;gap:2px;padding:3px;border-radius:999px;border:1px solid rgba(244,241,236,.14)}.v-tabs button{all:unset;cursor:pointer;padding:8px 13px;border-radius:999px;font:600 10px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;color:#f4f1ec99}.v-tabs button[aria-selected=true]{background:var(--fg);color:#0a0810}.v-tabs button:disabled{opacity:.3;cursor:default}.v-tabs button:focus-visible{outline:1px solid var(--fg)}.v-link{font:600 10px var(--ui-font);letter-spacing:.12em;text-transform:uppercase;color:#f4f1ec99;text-decoration:none}.v-link:hover{color:var(--fg)}.v-traits{margin:10px 0 0;width:var(--vw-size);font:500 11px var(--ui-font);letter-spacing:.06em;color:#f4f1ec73}.v-close{all:unset;cursor:pointer;position:absolute;top:max(12px,env(safe-area-inset-top,0px));left:max(14px,env(safe-area-inset-left,0px));display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 18px 0 12px;border-radius:999px;font:600 12px var(--ui-font);letter-spacing:.1em;text-transform:uppercase;color:var(--fg);background:#08070c8c;border:1px solid rgba(244,241,236,.22);transition:border-color .3s ease,transform .3s ease}.v-close svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s ease}.v-close:hover{border-color:#f4f1ec99}.v-close:hover svg{transform:translate(-3px)}@media(max-width:560px){.v-traits{text-align:center}.v-bar{justify-content:center}.v-id{width:100%;text-align:center;font-size:18px}.v-nav{display:none}}@media(orientation:landscape)and (max-height:560px){.viewer{--vw-size: min( calc(100dvh - 32px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)) , 55vw)}.viewer[open]{grid-template-columns:var(--vw-size) minmax(0,320px);grid-template-rows:1fr auto auto auto auto 1fr;column-gap:24px;row-gap:0;justify-content:center;align-content:center;justify-items:start;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.viewer .v-stage{grid-column:1;grid-row:1 / -1}.viewer .v-close{position:static;grid-column:2;grid-row:2;margin-bottom:18px}.viewer .v-bar{grid-row:3}.viewer .v-dl{grid-row:4}.viewer .v-traits{grid-row:5}.v-dl-label{width:100%;margin-bottom:2px}.viewer .v-bar,.viewer .v-dl,.viewer .v-traits{grid-column:2;width:100%;justify-content:flex-start}.viewer .v-bar{margin-top:0}.viewer .v-id{width:100%;text-align:left}.viewer .v-traits{text-align:left}.viewer .v-nav{display:grid;width:36px;height:36px}.portrait{--p-size: min( calc(100svh - 84px) , 50vw);grid-template-columns:var(--p-size) minmax(0,320px);grid-template-rows:1fr auto auto auto 1fr;column-gap:24px;justify-content:center;align-content:center;justify-items:start;padding:66px 16px 16px}.portrait .p-media{grid-column:1;grid-row:1 / -1;width:var(--p-size)}.portrait .p-bar{grid-row:2}.portrait .v-dl{grid-row:3}.portrait .p-traits{grid-row:4}.portrait .p-bar,.portrait .p-traits,.portrait .v-dl{grid-column:2;width:100%;justify-content:flex-start}.portrait .p-bar{margin-top:0}.portrait .v-id{width:100%;text-align:left}.portrait .p-traits{text-align:left}.head{top:max(22px,env(safe-area-inset-top,0px))}}.ghost span{display:inline-block}@media(max-width:600px)and (orientation:portrait){.ghost{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:min(10.5vw,10vh);line-height:.92}}@media(pointer:coarse){.v-tabs button{padding:12px 15px;font-size:11px}.v-link{padding:12px 4px;font-size:11px}.v-dl{gap:8px}.v-dl-label{width:100%;text-align:inherit;margin:0 0 2px;font-size:10px}.v-dl button{box-sizing:border-box;flex:1 1 0;justify-content:center;min-height:44px;align-items:center;font-size:11px}.v-tabs button,.v-link{box-sizing:border-box}.v-nav,.home-btn{width:44px;height:44px}.v-close{height:44px}.v-traits{font-size:12px;line-height:1.5}}@media(pointer:coarse)and (max-width:560px){.v-dl-label{text-align:center}}@media(hover:none){.home-btn:hover{transform:none;box-shadow:none}.home-btn:hover .home-roof{transform:none;stroke:currentColor}.home-btn:hover .home-door{fill:none;stroke:currentColor;filter:none}.v-dl button:hover{border-color:#f4f1ec33;background:transparent}.v-close:hover{border-color:#f4f1ec38}.v-close:hover svg{transform:none}}.v-dl button.ready{border-color:#3ddc97;color:#3ddc97}.v-dl button.ready small{opacity:1}@media(max-width:560px)and (orientation:portrait){.portrait{--p-size: min( calc(100vw - 32px) , calc(100svh - 330px) , 620px);padding-top:calc(max(12px,env(safe-area-inset-top,0px)) + 84px)}.portrait .p-bar,.portrait .p-traits,.portrait .v-dl{width:min(100%,calc(100svh - 330px),620px)}}
