/* Full viewport art stage; original raster and the edition's foil stay separate. */
dialog.art-viewer{--ambient:#6b8278;--ambient-soft:#829280;position:fixed;inset:0;width:100vw;width:100dvw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;overflow:hidden;background:#081317;box-shadow:none;isolation:isolate;touch-action:none;overscroll-behavior:none}
.art-viewer::backdrop{background:#081317;backdrop-filter:none}
.art-viewer,.art-viewer *{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.art-viewer img{-webkit-user-drag:none}
.art-viewer[data-element=light]{--ambient:#ac9671;--ambient-soft:#bcb394}.art-viewer[data-element=darkness]{--ambient:#70617e;--ambient-soft:#92849e}.art-viewer[data-element=fire]{--ambient:#8f6554;--ambient-soft:#b18c72}.art-viewer[data-element=water]{--ambient:#507785;--ambient-soft:#93b2b5}.art-viewer[data-element=wind]{--ambient:#648776;--ambient-soft:#a0b3a4}.art-viewer[data-element=earth]{--ambient:#84725a;--ambient-soft:#aa9674}.art-viewer[data-element=steel]{--ambient:#697784;--ambient-soft:#a0abb4}
.art-viewer-atmosphere{position:absolute;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(ellipse at 50% 43%,color-mix(in srgb,var(--ambient) 45%,transparent),transparent 63%),radial-gradient(ellipse at 17% 14%,color-mix(in srgb,var(--ambient-soft) 12%,transparent),transparent 44%),linear-gradient(150deg,#112129,#071115 80%)}
.art-viewer-atmosphere:before{content:'';position:absolute;width:min(130vmin,1000px);aspect-ratio:1;left:50%;top:50%;transform:translate(-50%,-50%) rotate(25deg);border:1px solid #dacdaa0d;border-radius:50%;box-shadow:0 0 0 42px #dacdaa04,0 0 0 88px #dacdaa03}
.art-viewer-atmosphere:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,transparent 30%,#02090d9c 100%),linear-gradient(180deg,#020a0c55,transparent 22%,transparent 75%,#02090d77)}
.art-viewer-stage{position:absolute;inset:0;display:grid;place-items:center;padding:calc(env(safe-area-inset-top,0px) + 64px) 0 calc(env(safe-area-inset-bottom,0px) + 36px);perspective:1400px;touch-action:none;cursor:default}
.art-viewer-pose.is-dragging,.art-viewer-pose.is-dragging *{cursor:grabbing}
.art-viewer-pose{width:min(86dvw,calc((100dvh - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px) - 112px)/1.5),820px);aspect-ratio:2/3;position:relative;transform:rotateX(var(--view-rotate-x,0deg)) rotateY(var(--view-rotate-y,0deg));transform-style:preserve-3d;transition:transform .42s cubic-bezier(.2,.7,.25,1);filter:drop-shadow(0 24px 32px #0008);touch-action:none}
.art-viewer-pose.is-dragging{transition:transform .06s linear}
.art-viewer-pose>.card-illustration{width:100%;height:100%;filter:none;touch-action:none;cursor:grab}
/* One rounded clip owns the image and its foil. Nested rounded image edges and
   a separate outline are avoided so all edges share one antialiasing boundary. */
.art-viewer .card-illustration>.card-surface{transform:none!important;transition:none!important;clip-path:none;overflow:hidden;border-radius:clamp(10px,2.5vmin,20px);box-shadow:none}
.art-viewer .card-illustration .card-art,.art-viewer .card-illustration .foil-art-clip{inset:0;width:100%;height:100%;clip-path:none;border-radius:0}
.art-viewer .card-illustration .card-art{display:block;object-fit:cover}
.card-motion-art{position:absolute;inset:2.5% 3.5% 2.6%;overflow:hidden;border-radius:7% / 4.67%;pointer-events:none;opacity:0;transition:opacity 120ms linear;background:#101c22}
.card-motion-art.is-live{opacity:1}
.card-motion-art.is-live+.card-art{opacity:0}
.card-motion-art+.card-art{transition:opacity 120ms linear}
.card-motion-take{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;opacity:0;transition:opacity 140ms linear;pointer-events:none}
.card-motion-take.is-active{opacity:1}
.card-illustration .card-motion-art{inset:0;border-radius:0}
@media(prefers-reduced-motion:reduce){.card-motion-art{display:none}}
.art-viewer-close{position:absolute;left:calc(env(safe-area-inset-left,0px) + 16px);top:calc(env(safe-area-inset-top,0px) + 14px);z-index:5;display:grid;place-items:center;padding:0;line-height:0;width:44px;height:44px;border-radius:50%;border:1px solid #c4bf9d36;background:#0a1a22c9;box-shadow:0 3px 14px #0003;color:#e5d7b5;backdrop-filter:blur(8px);touch-action:manipulation}
.art-viewer-close svg{display:block;width:23px;height:23px;pointer-events:none}
@media(prefers-reduced-motion:reduce){.art-viewer-pose,.art-viewer-pose.is-dragging{transition:none}}
.art-viewer[data-element=dark]{--ambient:#70617e;--ambient-soft:#92849e}
