/* ===== WOW LAYER: efek premium (background, animasi, keranjang) ===== */
body{background:radial-gradient(1200px 600px at 10% -10%,#ffe3ea,transparent 60%),radial-gradient(900px 500px at 100% 0,#f6e9fb,transparent 55%),#FFF9FA}
#fx{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}
#fx i{position:absolute;border-radius:50%;animation:flt 14s ease-in-out infinite}
#fx i.bl{filter:blur(70px);opacity:.45}
@keyframes flt{50%{transform:translate(20px,-42px) rotate(20deg)}}
main,body>footer{position:relative;z-index:1}
header{background:rgba(255,255,255,.62)!important;backdrop-filter:blur(18px) saturate(1.7)}
.tick{overflow:hidden;background:linear-gradient(90deg,#E88D9F,#F4B6C2,#E88D9F);color:#fff;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:7px 0;position:relative;z-index:1}
.tick div{display:flex;gap:48px;width:max-content;animation:mq 30s linear infinite}
@keyframes mq{to{transform:translateX(-50%)}}
.page-view.active,.pane:not(.hidden){animation:pin .7s cubic-bezier(.2,.8,.2,1)}
@keyframes pin{from{opacity:0;transform:translateY(22px) scale(.99);filter:blur(6px)}}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s,transform .9s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1;transform:none}
#page-home h1{background:linear-gradient(90deg,#4A3A3D,#B98FA3,#E8B7C8,#4A3A3D);background-size:300%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shn 7s linear infinite}
@keyframes shn{to{background-position:300%}}
button.bg-mimora-rose,a.bg-mimora-rose,.cd .wa{position:relative;overflow:hidden}
button.bg-mimora-rose::after,a.bg-mimora-rose::after,.cd .wa::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.6) 50%,transparent 60%);transform:translateX(-120%);animation:swp 3.6s infinite}
@keyframes swp{60%,100%{transform:translateX(120%)}}
.tilt{transition:transform .25s,box-shadow .25s;position:relative;will-change:transform}
.tilt:hover{box-shadow:0 22px 50px rgba(232,141,159,.32)}
.tilt::before{content:"";position:absolute;inset:0;border-radius:inherit;background:radial-gradient(260px circle at var(--mx,50%) var(--my,0),rgba(255,255,255,.7),transparent 60%);opacity:0;transition:.3s;pointer-events:none;z-index:2}
.tilt:hover::before{opacity:1}
.ptabs{display:flex;gap:6px;padding:6px;border-radius:99px;background:rgba(255,255,255,.75);backdrop-filter:blur(10px);border:1px solid #F4B6C255;width:max-content;max-width:100%;margin:0 auto 28px;box-shadow:0 8px 30px rgba(232,141,159,.18);overflow:auto}
.ptabs button{padding:10px 20px;border-radius:99px;font-size:13px;font-weight:600;color:#7a6a6e;white-space:nowrap;transition:.3s}
.ptabs button.on{background:linear-gradient(135deg,#E88D9F,#F4B6C2);color:#fff;box-shadow:0 6px 18px rgba(232,141,159,.5)}
#liveBox{background:linear-gradient(160deg,#fff,#FFF0F3);border:1px solid #F4B6C255;border-radius:28px;padding:18px;text-align:center;box-shadow:0 20px 50px rgba(232,141,159,.2)}
#liveBox svg{width:100%;max-height:340px}
.sw{transform-origin:100px 18px;animation:sw 5s ease-in-out infinite}
@keyframes sw{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}
.pp{transform-box:fill-box;transform-origin:center;animation:pp .5s both cubic-bezier(.3,1.6,.5,1)}
@keyframes pp{from{transform:scale(0)}}
.co{position:fixed;inset:0;background:rgba(60,20,35,.35);backdrop-filter:blur(6px);opacity:0;pointer-events:none;transition:.4s;z-index:90}
.co.on{opacity:1;pointer-events:auto}
.cd{position:fixed;top:12px;right:12px;bottom:12px;width:min(420px,calc(100% - 24px));background:rgba(255,255,255,.85);backdrop-filter:blur(24px) saturate(1.8);border:1px solid #fff;border-radius:32px;box-shadow:0 30px 80px rgba(120,40,70,.35);transform:translateX(115%);transition:transform .55s cubic-bezier(.2,.9,.2,1);z-index:100;display:flex;flex-direction:column;overflow:hidden}
.cd.on{transform:none}
.ch{display:flex;justify-content:space-between;align-items:center;padding:20px 24px 6px}
.cd h3{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:#4A3A3D}
.gift{margin:6px 22px 12px;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,#FFF0F3,#fff);font-size:12px;color:#7a6a6e}
.bar{height:8px;border-radius:9px;background:#f3dfe4;margin-top:8px;overflow:hidden}
.bar i{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,#F4B6C2,#E88D9F,#F4B6C2);background-size:200%;animation:shn 2s linear infinite;transition:width .8s cubic-bezier(.2,.9,.2,1)}
#cartItemsList{flex:1;overflow:auto;padding:0 18px;display:flex;flex-direction:column;gap:10px}
.ci{display:flex;gap:12px;padding:10px;border-radius:20px;background:#fff;box-shadow:0 4px 14px rgba(232,141,159,.12);animation:pin .5s both}
.ci img{width:62px;height:62px;border-radius:14px;object-fit:cover;flex:none}
.ci h4{font-size:12.5px;font-weight:600;color:#333}
.ci small{display:block;font-size:10px;color:#999;line-height:1.35}
.q{display:inline-flex;align-items:center;gap:8px;background:#FFF0F3;border-radius:99px;padding:2px 6px;font-size:12px;font-weight:600}
.q button{width:22px;height:22px;border-radius:50%;background:#fff;color:#E88D9F;box-shadow:0 1px 4px #0001}
.cfoot{padding:14px 22px 22px;background:linear-gradient(transparent,#fff 30%)}
.cfoot textarea{width:100%;border-radius:14px;border:1px solid #F4B6C266;padding:8px 12px;font-size:12px;resize:none;background:#fff}
.cfoot .t{display:flex;justify-content:space-between;align-items:baseline;margin:10px 0}
.cfoot .t b{font-size:24px;color:#333}
.cd .wa{width:100%;padding:14px;border-radius:18px;background:linear-gradient(135deg,#25D366,#12a150);color:#fff;font-weight:700;font-size:14px;box-shadow:0 10px 28px rgba(37,211,102,.45)}
.fly,.cf{position:fixed;z-index:200;pointer-events:none;font-size:22px;line-height:1}
.fly{width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#fff,#F4B6C2 60%,#E88D9F)}
#cartCountBadge.bump{animation:bmp .5s}
@keyframes bmp{40%{transform:scale(1.9)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01s!important;transition-duration:.01s!important}}
