/* AURA Wonder — scene engine styles (shared by storefront and admin) */
:root{
  --wz-ink:#1f1a33;--wz-cream:#fbf6ef;
  --wz-mint:#cdeeb4;--wz-sky:#bfe3f5;--wz-butter:#f6eda4;--wz-lilac:#cfc0f6;--wz-blush:#f8c7d5;--wz-peach:#f9d3b8;
  --wz-display:"Bodoni Moda","Playfair Display","Noto Serif SC","Songti SC",Georgia,serif;
  --wz-sans:"Jost","PingFang SC","Microsoft YaHei","Noto Sans SC",system-ui,sans-serif;
}
.wz-scene{position:absolute;inset:0;overflow:hidden;background:#141a12;contain:strict;pointer-events:none;isolation:isolate}
.wz-group{position:absolute;inset:0;transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.2,.8,.2,1)}
.wz-group.wz-enter{opacity:0;transform:scale(1.14)}
.wz-group.wz-leave{opacity:0;transform:scale(.94)}
.wz-layer{position:absolute;background-size:100% 100%;background-repeat:no-repeat;will-change:transform,opacity;backface-visibility:hidden}
.wz-flash{position:absolute;inset:0;background:radial-gradient(60% 55% at 50% 46%,#fff6ea 0%,rgba(255,240,226,.6) 45%,rgba(255,240,226,0) 75%);opacity:0;mix-blend-mode:screen}
.wz-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,8,18,.72) 0%,rgba(10,8,18,.25) 38%,rgba(10,8,18,0) 55%,rgba(10,8,18,.18) 100%),linear-gradient(0deg,rgba(10,8,18,.45),rgba(10,8,18,0) 40%);opacity:.35}
.wz-petals{position:absolute;inset:0;width:100%;height:100%}
/* front root: foreground flowers and near petals float in front of the page copy (the iPhone "depth effect") */
.wz-front{position:absolute;inset:0;overflow:hidden;contain:strict;pointer-events:none}
/* the foreground strip fades in toward the bottom so it frames the page without veiling the buttons */
.wz-front .wz-meadow-front{-webkit-mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 30%,#000 55%);mask-image:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.35) 30%,#000 55%)}
/* wake: the garden comes into focus the way the lock screen zooms in when the phone lights up */
.wz-wake>.wz-group,.wz-wake>.wz-petals{animation:wzWake 1.8s cubic-bezier(.2,.75,.2,1) both}
@keyframes wzWake{from{scale:1.14;filter:blur(12px) brightness(.55)}to{scale:1;filter:none}}
/* iOS asks before a page may read the gyroscope — this pill asks for it */
.wz-depth-pill{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 15px 0 12px;border:0;border-radius:999px;cursor:pointer;color:#fff;font:500 12px/1 var(--wz-sans);letter-spacing:.06em;background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.42),0 10px 24px rgba(10,6,24,.22);-webkit-backdrop-filter:blur(12px) saturate(1.3);backdrop-filter:blur(12px) saturate(1.3);transition:opacity .35s,scale .35s}
.wz-depth-pill svg{width:18px;height:18px;animation:wzRock 2.6s ease-in-out infinite}
.wz-depth-pill.wz-gone{opacity:0;scale:.9;pointer-events:none}
.wz-depth-pill:disabled{opacity:.6}
@keyframes wzRock{0%,100%{rotate:-10deg}50%{rotate:10deg}}

/* custom cursor */
.wz-cursor,.wz-cursor-ring{position:fixed;left:0;top:0;z-index:2147483000;pointer-events:none;border-radius:50%;opacity:0;transition:opacity .25s,width .25s,height .25s,margin .25s,background .25s}
.wz-cursor{width:8px;height:8px;margin:-4px 0 0 -4px;background:#fff;mix-blend-mode:difference}
.wz-cursor-ring{width:38px;height:38px;margin:-19px 0 0 -19px;border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(2px)}
.wz-cursor-ring.big{width:64px;height:64px;margin:-32px 0 0 -32px;background:rgba(255,255,255,.12)}
.wz-cursor-ring.down{width:30px;height:30px;margin:-15px 0 0 -15px}
html.wz-cursor-on .wz-cursor,html.wz-cursor-on .wz-cursor-ring{opacity:1}
html.wz-cursor-on [data-wz-zone],html.wz-cursor-on [data-wz-zone] a,html.wz-cursor-on [data-wz-zone] button{cursor:none}

/* rotating ring button */
.wz-ring{position:relative;width:104px;height:104px;border:0;border-radius:50%;padding:0;cursor:pointer;color:#fff;background:transparent}
.wz-ring svg{position:absolute;inset:0;width:100%;height:100%;animation:wzSpin 14s linear infinite}
.wz-ring:hover svg{animation-duration:5s}
.wz-ring text{font:600 9.5px/1 var(--wz-sans);letter-spacing:.32em;fill:currentColor;text-transform:uppercase}
.wz-ring-core{position:absolute;inset:26px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.45);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:background .25s,transform .25s}
.wz-ring:hover .wz-ring-core{background:#fff;color:var(--wz-ink);transform:scale(1.06)}
.wz-ring-core svg{position:static;width:20px;height:20px;animation:wzBob 1.8s ease-in-out infinite}
.wz-ring:focus-visible{outline:2px solid #fff;outline-offset:4px}
@keyframes wzSpin{to{transform:rotate(360deg)}}
@keyframes wzBob{50%{transform:translateY(3px)}}

/* glass card slider */
.wz-slider{position:relative;min-width:0}
.wz-slider-track{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px 2px 10px;outline:none}
.wz-slider-track::-webkit-scrollbar{display:none}
.wz-glasscard{flex:0 0 clamp(150px,13vw,190px);aspect-ratio:.82;scroll-snap-align:start;position:relative;border:1px solid rgba(255,255,255,.38);border-radius:24px;overflow:hidden;padding:0;cursor:pointer;color:#fff;text-align:left;background:rgba(255,255,255,.12);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);box-shadow:0 18px 40px rgba(10,6,24,.35),inset 0 1px 0 rgba(255,255,255,.4);transition:translate .35s cubic-bezier(.2,.8,.2,1),scale .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.wz-glasscard:hover{box-shadow:0 26px 50px rgba(10,6,24,.45),inset 0 1px 0 rgba(255,255,255,.5)}
.wz-glasscard-img{position:absolute;inset:8px 8px 70px;border-radius:18px;background-size:cover;background-position:center;transition:transform .6s}
.wz-glasscard:hover .wz-glasscard-img{transform:scale(1.04)}
.wz-glasscard-meta{position:absolute;left:12px;right:12px;bottom:12px;min-height:44px;display:flex;align-items:center;gap:10px;font:500 11.5px/1.3 var(--wz-sans)}
.wz-glasscard-meta>span:last-child{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical}
.wz-play{width:30px;height:30px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--wz-ink)}
.wz-play svg{width:12px;height:12px;margin-left:2px}
.wz-big{font:500 30px/1 var(--wz-display);letter-spacing:-.02em}
.wz-dots{display:flex;gap:8px;margin-top:6px;padding-left:4px}
.wz-dots button{position:relative;width:22px;height:4px;border:0;border-radius:4px;background:rgba(255,255,255,.35);cursor:pointer;padding:0;transition:width .3s,background .3s}
.wz-dots button::before{content:"";position:absolute;inset:-14px -4px}
.wz-dots button.on{width:38px;background:#fff}

/* arc carousel — cards on a turning wheel with a pole under the front card */
.wz-arc{position:relative;height:calc(var(--card-w) * 1.6);overflow:hidden;user-select:none;touch-action:pan-y;--card-w:clamp(150px,15vw,200px);outline:none}
.wz-arc-wheel{position:absolute;left:50%;top:calc(100% + var(--R,400px) - var(--card-w) * .95);width:0;height:0}
.wz-spoke{position:absolute;left:0;top:0;width:0;height:0;transition:opacity .4s}
.wz-arc-card{position:absolute;left:calc(var(--card-w) * -.5);top:calc(-1 * var(--R,400px) - var(--card-w) * .5);width:var(--card-w);aspect-ratio:1;border:0;border-radius:30px;padding:20px 18px;text-align:left;cursor:pointer;color:var(--wz-ink);background:var(--card);box-shadow:0 22px 40px rgba(40,20,70,.25),inset 0 1px 0 rgba(255,255,255,.7),inset 0 -10px 24px rgba(255,255,255,.18);display:flex;flex-direction:column;gap:8px;transition:translate .35s cubic-bezier(.2,.8,.2,1),scale .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.wz-arc-card b{font:500 clamp(19px,1.9vw,25px)/1.05 var(--wz-display);letter-spacing:-.01em;margin-top:auto}
.wz-arc-card>span:not(.wz-arc-ico){font:400 12px/1.45 var(--wz-sans);opacity:.75}
.wz-arc-card em{position:absolute;left:18px;top:18px;font:600 11px/1 var(--wz-sans);font-style:normal;padding:5px 9px;border-radius:20px;background:rgba(255,255,255,.65)}
.wz-arc-ico{position:absolute;right:14px;top:14px;width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:rgba(31,26,51,.12);font-size:13px}
.wz-arc-ico svg{width:15px;height:15px}
.wz-spoke.front .wz-arc-card{translate:0 -10px;scale:1.04;box-shadow:0 30px 60px rgba(40,20,70,.32),inset 0 1px 0 rgba(255,255,255,.8)}
.wz-arc-card:focus-visible{outline:3px solid #fff;outline-offset:4px}
.wz-arc-pole{position:absolute;left:50%;bottom:0;width:10px;height:calc(var(--card-w) * .45);margin-left:-5px;border-radius:5px 5px 0 0;background:linear-gradient(90deg,#d8d0e6,#fff 45%,#cfc6df);box-shadow:0 0 0 1px rgba(255,255,255,.4);opacity:.9}

/* headline word rise */
.wz-word{display:inline-block;animation:wzRise .9s cubic-bezier(.2,.8,.2,1) both;transform-origin:50% 100%}
@keyframes wzRise{from{opacity:0;transform:translateY(60%) rotateX(-50deg)}to{opacity:1;transform:none}}

@media (prefers-reduced-motion:reduce){.wz-ring svg,.wz-ring-core svg,.wz-word,.wz-wake>*,.wz-depth-pill svg{animation:none!important}.wz-glasscard,.wz-arc-card{transition:none}}

/* 3D tilt */
.wz-tilt{transform-style:preserve-3d;will-change:transform;backface-visibility:hidden}
.wz-tilt>.wz-glare{position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;mix-blend-mode:screen;z-index:3}
