:root{--loader-bg-plum:#4b1d3f;--loader-primary-pink:#ff8fb1;--loader-vibrant-rose:#e97999;--loader-soft-peach:#ffd3b6;--loader-warm-cream:#fff7ee;--loader-candy-mint:#a8e6cf;--loader-candy-lavender:#dcd6f7;--loader-shadow-deep:#4b1d3f2e;--loader-glow-intense:#e9799973}.app-loader-container{box-sizing:border-box;color:var(--loader-bg-plum);text-align:center;-webkit-user-select:none;user-select:none;flex-direction:column;justify-content:center;align-items:center;font-family:inherit;display:flex}.app-loader-fullscreen{z-index:999999;pointer-events:all;background:radial-gradient(circle at 50% 30%,#fffbf5 0%,#fff2e6 55%,#fde6dd 100%);justify-content:center;align-items:center;width:100vw;height:100dvh;transition:opacity .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;inset:0;overflow:hidden}.app-loader-fullscreen.loader-exiting{opacity:0;pointer-events:none;transform:scale(1.03)translateY(-6px)}.candy-ambient-glow{pointer-events:none;z-index:0;position:absolute;inset:0;overflow:hidden}.ambient-orb{filter:blur(35px);opacity:.6;pointer-events:none;border-radius:50%;position:absolute;transform:translateZ(0)}.ambient-orb-1{background:radial-gradient(circle,#ff8fb173,#0000 70%);width:380px;height:380px;animation:8s ease-in-out infinite alternate orbDrift1;top:10%;left:15%}.ambient-orb-2{background:radial-gradient(circle,#e9799961,#0000 70%);width:420px;height:420px;animation:9s ease-in-out infinite alternate orbDrift2;bottom:8%;right:12%}.ambient-orb-3{background:radial-gradient(circle,#ffd3b680,#0000 65%);width:280px;height:280px;animation:6s ease-in-out infinite alternate orbDrift3;top:45%;left:48%;transform:translate(-50%,-50%)}.candy-stage-card{z-index:2;width:min(380px,100vw - 32px);box-shadow:none;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;padding:0;animation:.6s cubic-bezier(.16,1,.3,1) forwards stageEnter;display:flex;position:relative}.candy-showcase-box{place-items:center;width:170px;height:170px;margin-bottom:24px;display:grid;position:relative}.candy-outer-halo{-webkit-mask-composite:xor;filter:drop-shadow(0 0 12px var(--loader-glow-intense));background:conic-gradient(from 180deg,#ff8fb1 0%,#ffc4b2 20%,#a8e6cf 40%,#e97999 60%,#dcd6f7 80%,#ff8fb1 100%);border-radius:50%;padding:3px;animation:4s linear infinite haloSpin;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.candy-middle-ring{border:1.5px dashed #e9799959;border-radius:50%;animation:8s linear infinite ringCounterSpin;position:absolute;inset:10px}.candy-center-capsule{background:radial-gradient(circle at 40% 30%,#fff 0%,#fff7f2 70%,#ffedf1 100%);border:2px solid #fffffff2;border-radius:50%;justify-content:center;align-items:center;width:116px;height:116px;animation:3.2s ease-in-out infinite capsuleFloat;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 32px #4b1d3f24,0 2px 8px #ff8fb140,inset 0 4px 8px #ffffffe6}.candy-center-capsule:after{content:"";pointer-events:none;background:linear-gradient(#fffc 0%,#0000 100%);border-radius:50% 50% 0 0;height:45%;position:absolute;top:0;left:0;right:0}.candy-socks-duo{z-index:2;justify-content:center;align-items:center;gap:2px;width:78px;height:78px;display:flex;position:relative}.sock-left{transform-origin:bottom;animation:2.4s ease-in-out infinite alternate sockLeftSway}.sock-right{transform-origin:bottom;animation:2.4s ease-in-out .4s infinite alternate sockRightSway}.orbit-charm{z-index:4;pointer-events:none;filter:drop-shadow(0 2px 6px #4b1d3f14);background:#fff;border:1px solid #fffffff2;border-radius:50%;place-items:center;width:32px;height:32px;font-size:15px;display:grid;position:absolute;box-shadow:0 6px 16px #4b1d3f1f,0 1px 4px #e9799933}.charm-strawberry{animation:3s ease-in-out infinite alternate charmFloat1;top:2px;right:6px}.charm-heart{animation:3.4s ease-in-out .5s infinite alternate charmFloat2;top:8px;left:2px}.charm-lollipop{animation:3.2s ease-in-out .9s infinite alternate charmFloat3;bottom:8px;right:4px}.charm-sparkle{animation:2.8s ease-in-out 1.2s infinite alternate charmFloat4;bottom:4px;left:6px}.candy-brand-tag{color:#ad2e5a;letter-spacing:.04em;background:#ff8fb129;border:1px solid #e9799942;border-radius:999px;align-items:center;gap:7px;margin-bottom:12px;padding:5px 14px;font-size:10.5px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #ff8fb11f}.brand-heart-pulse{color:#e97999;animation:1.2s ease-in-out infinite heartThump;display:inline-block}.candy-reveal-title{letter-spacing:-.03em;color:var(--loader-bg-plum);justify-content:center;align-items:center;gap:6px;margin:0 0 4px;font-family:Readex Pro,Poppins,sans-serif;font-size:21px;font-weight:800;display:flex}.candy-title-wordmark{background:linear-gradient(135deg,#4b1d3f 0%,#7a2656 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.candy-title-pink-dot{color:#e97999;-webkit-text-fill-color:#e97999}.candy-phase-message-wrap{justify-content:center;align-items:center;min-height:24px;margin-bottom:18px;display:flex}.candy-phase-message{color:#7b5f6e;align-items:center;gap:5px;font-size:12px;font-weight:600;animation:.35s ease-out messageSlideIn;display:flex}.candy-progress-section{flex-direction:column;gap:8px;width:100%;max-width:280px;display:flex}.candy-progress-header{color:#9c7b8d;justify-content:space-between;align-items:center;padding:0 2px;font-size:11px;font-weight:700;display:flex}.candy-percentage-number{font-variant-numeric:tabular-nums;color:#b73463;letter-spacing:.02em;font-family:Readex Pro,Inter,monospace;font-size:13px;font-weight:800}.candy-liquid-bar-track{background:#4b1d3f14;border:1px solid #ffffffb3;border-radius:999px;width:100%;height:8px;position:relative;overflow:hidden;box-shadow:inset 0 1px 3px #4b1d3f14}.candy-liquid-bar-fill{background:linear-gradient(90deg,#ff8fb1 0%,#e97999 50%,#ffc4b2 80%,#ff8fb1 100%) 0 0/200% 100%;border-radius:999px;transition:width .15s cubic-bezier(.16,1,.3,1);animation:1.8s linear infinite gradientFlow;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 12px #ff8fb1cc,0 0 4px #e9799999}.candy-liquid-bar-fill:after{content:"";background:linear-gradient(90deg,#0000,#fffc,#0000);border-radius:999px;width:20px;position:absolute;top:0;bottom:0;right:0}.candy-footer-tagline{color:#9c8390;letter-spacing:.03em;margin:14px 0 0;font-size:10px}@keyframes stageEnter{0%{opacity:0;transform:scale(.92)translateY(16px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes haloSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes ringCounterSpin{0%{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes capsuleFloat{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(-5px)scale(1.02)}}@keyframes sockLeftSway{0%{transform:rotate(-12deg)translateY(0)}to{transform:rotate(-3deg)translateY(-4px)}}@keyframes sockRightSway{0%{transform:rotate(14deg)translateY(-3px)}to{transform:rotate(4deg)translateY(2px)}}@keyframes charmFloat1{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-7px)rotate(12deg)}}@keyframes charmFloat2{0%{transform:translateY(0)rotate(0)}to{transform:translateY(-8px)rotate(-10deg)}}@keyframes charmFloat3{0%{transform:translateY(0)rotate(0)}to{transform:translateY(6px)rotate(-8deg)}}@keyframes charmFloat4{0%{transform:translateY(0)rotate(0)scale(.95)}to{transform:translateY(-6px)rotate(14deg)scale(1.1)}}@keyframes heartThump{0%,to{transform:scale(1)}30%{transform:scale(1.25)}50%{transform:scale(1.08)}70%{transform:scale(1.22)}}@keyframes messageSlideIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes gradientFlow{0%{background-position:0%}to{background-position:200%}}@keyframes orbDrift1{0%{transform:translate(0)scale(1)}to{transform:translate(30px,20px)scale(1.12)}}@keyframes orbDrift2{0%{transform:translate(0)scale(1)}to{transform:translate(-25px,-30px)scale(1.08)}}@keyframes orbDrift3{0%{transform:translate(-50%,-50%)scale(1)}to{transform:translate(-45%,-55%)scale(1.15)}}@media (max-width:640px){.candy-showcase-box{width:145px;height:145px;margin-bottom:20px}.candy-center-capsule{width:98px;height:98px}.candy-socks-duo{width:64px;height:64px}.orbit-charm{width:27px;height:27px;font-size:13px}.candy-reveal-title{font-size:19px}.candy-progress-section{max-width:240px}}@media (prefers-reduced-motion:reduce){.candy-outer-halo,.candy-middle-ring,.candy-center-capsule,.sock-left,.sock-right,.orbit-charm,.brand-heart-pulse,.ambient-orb{animation:none!important}}
