.curtain-welcome{z-index:100;color:var(--foreground);pointer-events:auto;position:fixed;inset:0;overflow:hidden}.welcome-curtain{background:repeating-linear-gradient(90deg, color-mix(in oklab, var(--primary) 38%, var(--accent)) 0%, var(--accent) 8%, color-mix(in oklab, var(--accent) 60%, var(--background)) 14%, var(--accent) 20%);border-bottom:8px solid var(--highlight);width:50.5%;transition:transform 1.8s cubic-bezier(.45,0,.2,1);position:absolute;top:0;bottom:0}.welcome-curtain-left{border-right:3px solid var(--border);left:0}.welcome-curtain-right{border-left:3px solid var(--border);right:0}.curtain-welcome.is-opening .welcome-curtain-left{transform:translate(-100%)}.curtain-welcome.is-opening .welcome-curtain-right{transform:translate(100%)}.curtain-valance{background:var(--primary);border-bottom:5px solid var(--highlight);width:104%;height:14%;box-shadow:0 5px 0 var(--border);border-radius:0 0 45% 45%;transition:transform 1.8s;position:absolute;top:-3%;left:-2%}.curtain-welcome.is-opening .curtain-valance{transform:translateY(-120%)}.curtain-mascot{object-fit:contain;width:min(29vw,260px);height:min(33vh,300px);transition:transform 1.8s cubic-bezier(.45,0,.2,1);position:absolute;top:55%}.curtain-mascot-cat{right:4%;transform:rotate(-8deg)}.curtain-mascot-bunny{left:4%;transform:rotate(8deg)}.curtain-welcome.is-opening .curtain-mascot-cat{transform:rotate(-18deg)translateY(-15px)}.curtain-welcome.is-opening .curtain-mascot-bunny{transform:rotate(18deg)translateY(-15px)}.curtain-greeting{text-align:center;width:min(600px,100% - 32px);transition:opacity .3s,transform .45s;position:absolute;top:24%;left:50%;transform:translate(-50%)}.curtain-greeting h2{text-wrap:balance;font-size:36px;line-height:1.2}.curtain-greeting p{margin:12px 0 20px;font-size:18px}.curtain-welcome.is-opening .curtain-greeting{opacity:0;pointer-events:none;transform:translate(-50%,-12px)}.curtain-welcome .welcome-celebration{z-index:2}.curtain-welcome .welcome-particle{animation:welcome-particle-fall var(--particle-duration) linear var(--particle-delay) 2 both}@media (width<=640px){.curtain-greeting h2{font-size:28px}.curtain-mascot{width:40vw;height:27vh;top:58%}.curtain-mascot-cat{right:3%}.curtain-mascot-bunny{left:3%}}@media (prefers-reduced-motion:reduce){.welcome-curtain,.curtain-mascot,.curtain-greeting,.curtain-valance{transition:none}.curtain-welcome .welcome-celebration{display:none}}.membership-intro{padding:1.5rem 0 2rem;position:relative}.membership-intro-copy{max-width:38rem}.membership-art{align-items:center;gap:.75rem;margin:0 0 1.5rem;display:flex}.membership-art img{object-fit:contain;width:6rem;height:6rem}.membership-art img:first-child{transform:rotate(-9deg)}.membership-art img:last-child{transform:rotate(9deg)}.membership-sticker{border:2px solid var(--border);box-shadow:var(--shadow-sticker-sm);border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .9rem;font-weight:700;display:inline-flex}.membership-intro-star{width:3rem;height:3rem;color:var(--primary)}.membership-tier{border:2px solid var(--border);box-shadow:var(--shadow-sticker);border-radius:1.25rem;padding:1.5rem;transition:transform .2s;position:relative}.membership-tier:hover{transform:translateY(-5px)}.membership-tier-bronze{background:color-mix(in oklab, var(--accent) 22%, var(--card))}.membership-tier-silver{background:var(--secondary)}.membership-tier-gold{background:var(--muted)}.membership-tier-platinum{background:var(--primary);color:var(--primary-foreground)}.membership-tier-platinum .membership-tier-detail{color:var(--primary-foreground)}.membership-tier-detail{color:var(--muted-foreground)}.membership-tier-badge{background:var(--card);width:4rem;height:4rem;color:var(--primary);border:2px solid var(--border);box-shadow:var(--shadow-sticker-sm);border-radius:35% 45%;place-items:center;margin-bottom:1.5rem;display:grid;transform:rotate(-8deg)}.membership-tier-badge svg{width:2rem;height:2rem;transform:rotate(8deg)}.membership-current{background:var(--accent);color:var(--accent-foreground);font-size:.75rem;position:absolute;top:-.8rem;right:.75rem;transform:rotate(5deg)}.membership-points{border-top:2px dashed var(--border);padding-top:2rem}.membership-earn-row{border-bottom:1px solid color-mix(in oklab, var(--border) 25%, transparent);align-items:center;gap:.75rem;padding:.9rem 0;display:flex}.membership-earn-icon{background:var(--secondary);width:2.25rem;height:2.25rem;color:var(--secondary-foreground);border-radius:50%;flex-shrink:0;place-items:center;display:grid}.membership-earn-row:nth-child(3n+2) .membership-earn-icon{background:var(--accent);color:var(--accent-foreground)}.membership-earn-row:nth-child(3n+3) .membership-earn-icon{background:var(--muted);color:var(--primary)}@media (width>=768px){.membership-intro{min-height:12rem;padding-right:17rem}.membership-art{position:absolute;top:0;right:0}.membership-art img{width:7rem;height:9rem}}@media (prefers-reduced-motion:reduce){.membership-tier{transition:none}.membership-tier:hover{transform:none}}
