/* VOLTSpool — playful, progressively enhanced storefront */
body{background:#faf9f3;background-image:radial-gradient(ellipse at 85% 2%,#ddd5ff66,transparent 40%)}
header{position:relative;z-index:5}nav a{position:relative}nav a:after{content:'';position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:#6142d9;transform:scaleX(0);transition:transform .2s}nav a:hover:after,nav a[aria-current]:after{transform:scaleX(1)}
.hero h1{letter-spacing:-.065em;line-height:1.02}.hero-image{animation:float-print 7s ease-in-out infinite}.hero-image img{border-radius:32px}.sticker{box-shadow:0 10px 30px #24213918}
.card{transition:transform .25s,box-shadow .25s}.card:hover{transform:translateY(-6px);box-shadow:9px 14px 0 #242139}.product-photo{transition:transform .5s}.card:hover .product-photo{transform:scale(1.025)}
.vibes-band{overflow:hidden;border-block:1px solid #24213922;background:#d9f56b;padding:12px 20px;font-size:.8rem;letter-spacing:.14em;font-weight:800;text-align:center}.vibes-band span{display:inline-block;margin:0 22px}
.vibes-finder{padding:28px;background:#eee9ff;border:1px solid #242139;border-radius:28px;margin:28px 0 36px;box-shadow:5px 5px 0 #242139}.vibes-finder h3{margin:0;font-size:clamp(1.5rem,4vw,2.5rem);letter-spacing:-.05em}.vibes-finder p{margin:8px 0 20px}.vibes-tools{display:flex;gap:12px;flex-wrap:wrap}.vibes-tools input{flex:1;min-width:180px;border:1px solid #24213966;border-radius:50px;padding:12px 18px;background:#fff}.vibes-tools button,.vibes-categories button{border:1px solid #242139;border-radius:50px;padding:10px 18px;background:white;color:#242139}.vibes-tools button{background:#242139;color:#fff}.vibes-categories{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.vibes-categories button[aria-pressed=true]{background:#d9f56b;box-shadow:2px 2px 0 #242139}.vibes-results{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px}.vibes-result{border:0;background:#fff;border-radius:18px;padding:12px;text-align:left;color:#242139;display:grid;gap:8px;align-content:start}.vibes-result img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px}.vibes-result:hover{outline:2px solid #6142d9}.vibes-result strong{line-height:1.3}.vibes-quick{display:inline-block;background:transparent;border:0;text-decoration:underline;text-underline-offset:5px;padding:12px;color:#242139;font-weight:700}.vibes-dialog{width:min(850px,94vw);max-height:90dvh;overflow:auto;padding:0;border:1px solid #242139;border-radius:28px;background:#faf9f3;color:#242139;box-shadow:12px 12px 0 #24213955}.vibes-dialog::backdrop{background:#242139bb;backdrop-filter:blur(8px)}.vibes-dialog-inner{display:grid;grid-template-columns:1fr 1fr}.vibes-dialog-media{background:var(--preview-bg,#e6dcff);padding:22px;display:flex;align-items:center;transition:background .3s}.vibes-dialog-media img{width:100%;border-radius:20px}.vibes-dialog-copy{padding:32px}.vibes-dialog-copy h2{font-size:2rem;line-height:1.1;letter-spacing:-.04em}.vibes-dialog-copy p{line-height:1.6}.vibes-close{float:right;border:1px solid #242139;border-radius:50%;width:40px;height:40px;background:white;font-size:1.5rem}.vibes-price{font-size:1.6rem;font-weight:800}.vibes-swatches{display:flex;gap:10px;margin:12px 0}.vibes-swatches button{width:32px;height:32px;border-radius:50%;background:var(--swatch);border:2px solid white;box-shadow:0 0 0 1px #24213955}.vibes-swatches button[aria-pressed=true]{box-shadow:0 0 0 3px #6142d9}.vibes-toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,130px);z-index:50;background:#242139;color:white;border:1px solid #fff9;border-radius:20px;padding:15px 24px;box-shadow:0 12px 40px #24213944;max-width:92vw;width:max-content;transition:transform .3s;display:flex;align-items:center;gap:16px}.vibes-toast.is-visible{transform:translate(-50%,0)}.vibes-toast a{color:#d9f56b;font-weight:bold;text-decoration:underline}.vibes-appear{animation:arrive .55s both}.vibes-count-pop{animation:badge-pop .35s}
@keyframes arrive{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float-print{50%{transform:translateY(-10px) rotate(.7deg)}}@keyframes badge-pop{50%{transform:scale(1.25)}}
@media(max-width:650px){.vibes-dialog-inner{grid-template-columns:1fr}.vibes-dialog-media{padding:18px}.vibes-dialog-media img{max-height:32dvh;object-fit:contain}.vibes-dialog-copy{padding:20px}.vibes-dialog-copy h2{margin-top:12px}.vibes-finder{padding:20px}.vibes-band span{margin:0 8px;font-size:.65rem}.vibes-toast{bottom:16px;padding:12px 16px;font-size:.85rem}.vibes-results{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.card:hover,.card:hover .product-photo{transform:none}}
