@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-shimmer{background:linear-gradient(90deg,hsl(var(--muted)) 25%,hsl(var(--sekai-blush-pink)/.12) 50%,hsl(var(--muted)) 75%);background-size:200% 100%;animation:shimmer 1.8s ease-in-out infinite}.dark .skeleton-shimmer{background:linear-gradient(90deg,hsl(var(--muted)) 25%,hsl(var(--sekai-sailor-blue)/.15) 50%,hsl(var(--muted)) 75%);background-size:200% 100%}@keyframes hero-float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.animate-hero-float{animation:hero-float 3s ease-in-out infinite}@keyframes mascot-wobble{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}@keyframes dot-blink{0%,20%{opacity:0}40%,to{opacity:1}}.mascot-spinner{animation:mascot-wobble 1s ease-in-out infinite}.loading-dots span:first-child{animation:dot-blink 1.2s 0s infinite}.loading-dots span:nth-child(2){animation:dot-blink 1.2s .2s infinite}.loading-dots span:nth-child(3){animation:dot-blink 1.2s .4s infinite}.divider-hearts{display:flex;align-items:center;gap:4px;color:hsl(var(--sekai-blush-pink));font-size:.625rem}.divider-hearts:after,.divider-hearts:before{content:"";flex:1;height:1px;background:hsl(var(--border))}.divider-wave{border:none;height:4px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='4'%3E%3Cpath d='M0 2 Q5 0 10 2 Q15 4 20 2 Q25 0 30 2 Q35 4 40 2' stroke='%23F9A8D4' fill='none' stroke-width='1'/%3E%3C/svg%3E") repeat-x}.divider-pixel{border:none;height:2px;background:repeating-linear-gradient(90deg,hsl(var(--sekai-sailor-blue)) 0 4px,transparent 4px 8px)}@keyframes seasonal-fall{0%{transform:translate3d(0,-5vh,0) rotate(0deg);opacity:0}10%{opacity:.6}90%{opacity:.4}to{transform:translate3d(0,105vh,0) rotate(1turn);opacity:0}}@keyframes seasonal-diagonal{0%{transform:translate3d(0,-5vh,0) rotate(0deg);opacity:0}10%{opacity:.6}90%{opacity:.3}to{transform:translate3d(-30px,105vh,0) rotate(180deg);opacity:0}}@keyframes seasonal-flutter{0%{transform:translate3d(0,-5vh,0) rotate(0deg);opacity:0}10%{opacity:.5}50%{transform:translate3d(20px,50vh,0) rotate(180deg)}90%{opacity:.3}to{transform:translate3d(-10px,105vh,0) rotate(1turn);opacity:0}}.seasonal-snow{animation:seasonal-fall linear infinite}.seasonal-petals{animation:seasonal-diagonal ease-in-out infinite}.seasonal-bats{animation:seasonal-flutter ease-in-out infinite}.seasonal-fireworks{animation:seasonal-fall ease-out infinite}.seasonal-particle{will-change:transform;contain:layout style;pointer-events:none}.seasonal-particle--petal{width:10px;height:10px;background:rgba(242,140,174,.7);border-radius:50% 0 50% 0}.seasonal-particle--snow{width:6px;height:6px;background:rgba(238,242,246,.8);border-radius:50%;box-shadow:0 0 4px rgba(238,242,246,.4)}.seasonal-particle--bat{width:12px;height:8px;background:rgba(64,51,77,.7);clip-path:polygon(50% 100%,0 0,20% 40%,50% 20%,80% 40%,100% 0)}.seasonal-particle--firework{width:4px;height:4px;background:rgba(255,210,77,.9);border-radius:50%;box-shadow:0 0 6px rgba(255,210,77,.5)}.bg-sekai-dots{background-image:radial-gradient(circle,hsl(var(--sekai-blush-pink)/.08) 1px,transparent 1px);background-size:16px 16px}.bg-sekai-grid{background-image:linear-gradient(hsl(var(--border)/.3) 1px,transparent 1px),linear-gradient(90deg,hsl(var(--border)/.3) 1px,transparent 1px);background-size:24px 24px}.bg-sekai-scanline{background-image:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 0,rgba(0,0,0,.03) 4px)}.text-pixel{font-family:var(--font-pixel);-webkit-font-smoothing:none;-moz-osx-font-smoothing:unset}.text-display{font-family:var(--font-display)}[data-layout=dashboard]{font-family:var(--font-dashboard)}body:has([data-layout=dashboard])>[data-radix-portal]{font-family:var(--font-dashboard)}.hover-pop{transition:transform .2s ease,box-shadow .2s ease}.hover-pop:hover{transform:translateY(-4px) scale(1.02);box-shadow:0 4px 16px hsl(var(--sekai-hair-dark)/.12)}.hover-pop:active{transform:translateY(-1px) scale(1)}.press-pixel{transition:all .1s}.press-pixel:active{transform:translate(3px,3px);box-shadow:none}@keyframes glow-pulse{0%,to{box-shadow:0 0 4px hsl(var(--sekai-blush-pink))}50%{box-shadow:0 0 12px hsl(var(--sekai-blush-pink))}}.animate-glow-pulse{animation:glow-pulse 2s ease-in-out infinite}@keyframes soft-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.hover-bounce:hover{animation:soft-bounce .4s ease}.text-glow{text-shadow:0 0 8px hsl(var(--sekai-blush-pink)),0 0 16px hsl(var(--sekai-blush-pink)/.5)}@property --sekai-rainbow-angle{syntax:"<angle>";initial-value:0deg;inherits:false}@keyframes sekai-rainbow-spin{to{--sekai-rainbow-angle:360deg}}.rainbow-hover{--sekai-rainbow-width:2.5px;position:relative;transition:transform .25s ease}.rainbow-hover:before{content:"";position:absolute;inset:0;box-sizing:border-box;padding:var(--sekai-rainbow-width);border-radius:inherit;background:conic-gradient(from var(--sekai-rainbow-angle),#ffb3d9,#ffd9b3,#fff0b3,#b3ffd9,#b3e6ff,#c9b3ff,#ffb3e6,#ffb3d9);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .3s ease;animation:sekai-rainbow-spin 4s linear infinite paused;pointer-events:none}@supports not (((-webkit-mask-composite:xor) or (mask-composite:exclude)) or (-webkit-mask-composite:xor)){.rainbow-hover:after,.rainbow-hover:before{display:none}}.rainbow-hover:after{content:"";position:absolute;inset:0;box-sizing:border-box;padding:6px;z-index:-1;border-radius:inherit;background:conic-gradient(from var(--sekai-rainbow-angle),#ffb3d9,#ffd9b3,#fff0b3,#b3ffd9,#b3e6ff,#c9b3ff,#ffb3e6,#ffb3d9);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;filter:blur(5px);opacity:0;transition:opacity .3s ease;animation:sekai-rainbow-spin 4s linear infinite paused;pointer-events:none}.rainbow-hover:hover{transform:scale(1.02)}.rainbow-hover:hover:before{opacity:1;animation-play-state:running}.rainbow-hover:hover:after{opacity:.5;animation-play-state:running}.rainbow-hover:active{transform:scale(1)}@keyframes page-enter{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.animate-page-enter{animation:page-enter .3s ease-out}.stagger-item{opacity:0;animation:page-enter .3s ease-out forwards}.stagger-item:first-child{animation-delay:.06s}.stagger-item:nth-child(2){animation-delay:.12s}.stagger-item:nth-child(3){animation-delay:.18s}.stagger-item:nth-child(4){animation-delay:.24s}.stagger-item:nth-child(5){animation-delay:.3s}.stagger-item:nth-child(6){animation-delay:.36s}.stagger-item:nth-child(7){animation-delay:.42s}.stagger-item:nth-child(8){animation-delay:.48s}.stagger-item:nth-child(9){animation-delay:.54s}.stagger-item:nth-child(10){animation-delay:.6s}.stagger-item:nth-child(11){animation-delay:.66s}.stagger-item:nth-child(12){animation-delay:.72s}@keyframes float-up{0%{transform:translateY(0);opacity:1}to{transform:translateY(-24px);opacity:0}}.animate-float-up{animation:float-up 1s ease-out forwards;font-family:var(--font-pixel,monospace);color:hsl(var(--sekai-crown-gold))}@keyframes sparkle{0%{opacity:0;transform:scale(0) rotate(0deg)}50%{opacity:1;transform:scale(1.2) rotate(180deg)}to{opacity:0;transform:scale(0) rotate(1turn)}}.effect-sparkle{position:relative}.effect-sparkle:after,.effect-sparkle:before{content:"✦";position:absolute;color:hsl(var(--sekai-crown-gold));animation:sparkle 1.5s ease-in-out infinite;font-size:1rem;pointer-events:none}.effect-sparkle:before{top:-6px;left:-6px}.effect-sparkle:after{animation-delay:.5s;top:-8px;right:-8px}@keyframes heart-burst{0%{transform:scale(1)}15%{transform:scale(1.3)}30%{transform:scale(.95)}45%{transform:scale(1.1)}to{transform:scale(1)}}.effect-heart-burst{animation:heart-burst .6s ease-out;color:hsl(var(--sekai-ribbon-red))}@keyframes manga-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-4px) rotate(-1deg)}40%{transform:translateX(4px) rotate(1deg)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}.effect-shake{animation:manga-shake .5s ease-out}.card-tilt{transition:transform .1s ease;transform-style:preserve-3d}.card-tilt:before{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,hsl(var(--sekai-blush-pink)/.1) 45%,hsl(var(--sekai-sailor-blue)/.1) 50%,transparent 55%);border-radius:inherit;opacity:0;transition:opacity .3s;pointer-events:none;z-index:1}.card-tilt:hover:before{opacity:1}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;height:16px;width:16px;border-radius:9999px;background:hsl(var(--primary));border:2px solid hsl(var(--background));box-shadow:0 0 0 1px hsl(var(--primary)/.3);cursor:pointer}.slider-input::-moz-range-thumb{height:16px;width:16px;border-radius:9999px;background:hsl(var(--primary));border:2px solid hsl(var(--background));box-shadow:0 0 0 1px hsl(var(--primary)/.3);cursor:pointer}.fun-test-gradient-blue{background:linear-gradient(135deg,rgba(29,79,215,.08),rgba(49,49,196,.08))}.fun-test-gradient-pink{background:linear-gradient(135deg,rgba(249,149,206,.12),rgba(235,71,99,.08))}.fun-test-gradient-gold{background:linear-gradient(135deg,rgba(245,159,10,.1),rgba(242,108,13,.08))}.fun-test-gradient-purple{background:linear-gradient(135deg,rgba(153,92,214,.1),rgba(249,149,206,.08))}.fun-test-gradient-orange{background:linear-gradient(135deg,rgba(242,108,13,.1),rgba(242,185,13,.08))}.fun-test-gradient-cyan{background:linear-gradient(135deg,rgba(38,202,217,.1),rgba(29,79,215,.08))}.fun-test-gradient-red{background:linear-gradient(135deg,rgba(239,67,67,.1),rgba(249,149,206,.08))}.fun-test-gradient-indigo{background:linear-gradient(135deg,rgba(49,49,196,.1),rgba(153,92,214,.08))}@media (prefers-reduced-motion:reduce){.animate-float-up,.animate-glow-pulse,.animate-hero-float,.animate-page-enter,.effect-heart-burst,.effect-shake,.effect-sparkle:after,.effect-sparkle:before,.stagger-item{animation:none!important;opacity:1!important}.hover-pop:hover{transform:none!important}.hover-bounce:hover{animation:none!important}.card-tilt{transition:none!important}.card-tilt:before{display:none}.rainbow-hover{transition:none!important}.rainbow-hover:hover{transform:none!important}.loading-dots span,.mascot-spinner,.rainbow-hover:after,.rainbow-hover:before,.skeleton-shimmer{animation:none!important}.loading-dots span{opacity:1!important}}@keyframes hatch-shake{0%,to{transform:rotate(0deg)}10%{transform:rotate(-8deg)}20%{transform:rotate(8deg)}30%{transform:rotate(-8deg)}40%{transform:rotate(8deg)}50%{transform:rotate(0deg)}60%{transform:rotate(-5deg)}70%{transform:rotate(5deg)}80%{transform:rotate(-5deg)}90%{transform:rotate(5deg)}}.animate-hatch-shake{animation:hatch-shake .5s ease-in-out 3}@media (prefers-reduced-motion:reduce){.animate-hatch-shake{animation:none!important;opacity:1!important}}