*{box-sizing:border-box;margin:0;padding:0}html,body{background:#0d0d10;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}.cosplay-page{color:#f0eef2;-webkit-tap-highlight-color:transparent;background:#0d0d10;min-height:100vh;padding-bottom:110px;position:relative}.cosplay-page .logo,.cosplay-page .stats .item,.cosplay-page .feat,.cosplay-page .urgency,.cosplay-page .more,.cosplay-page .slide,.cosplay-page .card{color:inherit;cursor:pointer;border:none;font-family:inherit;text-decoration:none}.cosplay-page .cta{cursor:pointer;border:none;font-family:inherit;text-decoration:none}.cosplay-page .logo:disabled,.cosplay-page .stats .item:disabled,.cosplay-page .feat:disabled,.cosplay-page .urgency:disabled,.cosplay-page .more:disabled,.cosplay-page .slide:disabled,.cosplay-page .card:disabled,.cosplay-page .cta:disabled{opacity:.7;cursor:not-allowed}.bg-hearts{pointer-events:none;opacity:.04;z-index:0;color:#f5a3b5;letter-spacing:40px;flex-wrap:wrap;justify-content:space-around;align-items:center;width:100%;height:100%;font-size:80px;display:flex;position:fixed;top:0;left:0;overflow:hidden}.bg-hearts span{margin:20px;display:inline-block;transform:rotate(12deg)}.header{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1;background:#0d0d10d9;border-bottom:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:16px 20px;display:flex;position:relative}.logo{color:#fff;letter-spacing:-.3px;background:0 0;border:none;align-items:center;gap:10px;font-size:18px;font-weight:700;display:flex}.logo-heart img{object-fit:cover;border:1px solid #ffffff14;border-radius:12px;width:40px;height:40px}.online-pill{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#ccc;background:#ffffff0f;border:1px solid #ffffff0a;border-radius:40px;align-items:center;gap:8px;padding:6px 16px;font-size:13px;display:flex}.online-pill .dot{background:#4cdf8b;border-radius:50%;width:10px;height:10px;display:inline-block;box-shadow:0 0 8px #4cdf8b88}.hero-copy{z-index:1;background:0 0;padding:18px 24px 6px;position:relative}.hero-copy h1{color:#fff;text-shadow:0 2px 12px #0009;font-size:34px;font-weight:700;line-height:1.15}.hero-copy .accent{color:#f5a3b5;text-shadow:0 0 20px #f5a3b540}.hero-copy p{opacity:.85;color:#d0cdd6;text-shadow:0 1px 8px #00000080;max-width:500px;margin-top:10px;font-size:15px}.hero{z-index:1;padding:12px 0 0;position:relative}.swiper{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;justify-content:center;gap:0;padding:0 10px;display:flex;overflow-x:auto}.swiper::-webkit-scrollbar{display:none}.slide{scroll-snap-align:center;aspect-ratio:3/4;background:#1e1e24;border:1px solid #ffffff0f;border-radius:32px;flex-direction:column;flex:0 0 85%;max-width:340px;margin:0 6px;padding:0;transition:transform .2s;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 40px #000000b3}.slide-img{background-position:50%;background-repeat:no-repeat;background-size:cover;flex:1;width:100%;height:100%;position:relative}.slide-verified{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.3px;z-index:2;background:#2b8c5ed9;border:1px solid #ffffff14;border-radius:30px;padding:4px 14px;font-size:12px;font-weight:600;position:absolute;top:16px;left:16px}.slide-online{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;z-index:2;background:#0009;border:1px solid #ffffff0f;border-radius:30px;align-items:center;gap:6px;padding:4px 14px;font-size:12px;display:flex;position:absolute;top:16px;right:16px}.slide-online .dot{background:#4cdf8b;border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 10px #4cdf8b}.slide-info{color:#fff;pointer-events:none;text-align:left;background:linear-gradient(#0000 0%,#0000004d 30%,#000000d9 100%);padding:24px 18px 18px;position:absolute;bottom:0;left:0;right:0}.slide-info .name{text-shadow:0 2px 12px #000000b3;letter-spacing:-.2px;font-size:22px;font-weight:700}.slide-info .loc{opacity:.9;text-shadow:0 1px 8px #0009;margin-top:2px;font-size:13px}.tag-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.tag{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;text-shadow:0 1px 4px #0000004d;background:#ffffff1f;border:1px solid #ffffff14;border-radius:30px;padding:4px 14px;font-size:11px;font-weight:500}.dots{justify-content:center;gap:10px;margin-top:16px;padding-bottom:4px;display:flex}.dots i{cursor:pointer;background:#fff3;border:1px solid #ffffff0d;border-radius:50%;width:10px;height:10px;transition:all .3s;display:inline-block}.dots i.on{background:#e88b9c;border-color:#e88b9c;border-radius:20px;width:28px;box-shadow:0 0 16px #e88b9c66}.stats{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1;background:#ffffff0a;border:1px solid #ffffff0a;border-radius:48px;justify-content:space-around;margin:20px 16px;padding:16px 12px;display:flex;position:relative}.stats .item{color:#fff;text-align:center;background:0 0;border:none}.stats .num{color:#f5f0f5;font-size:18px;font-weight:700}.stats .lbl{opacity:.6;color:#b0aeb8;font-size:11px}.sect-title{z-index:1;justify-content:space-between;align-items:center;margin-top:24px;padding:0 20px;display:flex;position:relative}.sect-title h2{color:#fff;text-shadow:0 2px 8px #0006;font-size:20px;font-weight:700}.more{color:#f5a3b5;background:0 0;border:none;font-size:14px;font-weight:600}.grid{z-index:1;grid-template-columns:repeat(2,1fr);gap:14px;padding:16px 20px;display:grid;position:relative}.card{color:#fff;text-align:left;aspect-ratio:3/4;background:#18181e;border:1px solid #ffffff0a;border-radius:24px;flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 24px #00000080}.card-img{background-position:50%;background-size:cover;flex:1;width:100%;height:100%}.card-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;letter-spacing:.2px;background:#0000008c;border:1px solid #ffffff0f;border-radius:30px;padding:3px 12px;font-size:10px;font-weight:600;position:absolute;top:12px;left:12px}.card-badge.gold{color:#fff;background:#b8863b}.card-badge.new{background:#2b5e4a}.card-heart{color:#e88b9c;text-shadow:0 0 20px #e88b9c55;font-size:20px;position:absolute;top:12px;right:14px}.card-online{background:#4cdf8b;border:2px solid #18181e;border-radius:50%;width:14px;height:14px;position:absolute;bottom:66px;right:12px;box-shadow:0 0 12px #4cdf8b88}.card-info{background:linear-gradient(#0000 0%,#0003 20%,#000c 100%);min-height:70px;margin-top:auto;padding:12px 14px}.card-info .nm{color:#fff;text-shadow:0 1px 8px #00000080;font-size:15px;font-weight:700}.card-info .tg{opacity:.85;color:#d0cdd6;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:10px;display:flex}.card-info .tg span{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000004d;border-radius:20px;padding:2px 10px}.features{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1;background:#ffffff08;border:1px solid #ffffff0a;border-radius:48px;justify-content:space-around;margin:16px;padding:14px 10px;display:flex;position:relative}.feat{color:#fff;text-align:center;background:0 0;border:none}.feat-icon{filter:drop-shadow(0 4px 8px #0000004d);font-size:28px}.ft{color:#f0eef2;margin-top:2px;font-size:14px;font-weight:600}.fs{opacity:.6;color:#b0aeb8;font-size:11px}.urgency{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;z-index:1;background:#ffffff0a;border:1px solid #ffffff0a;border-radius:60px;align-items:center;gap:14px;width:calc(100% - 40px);margin:16px 20px;padding:14px 20px;display:flex;position:relative;box-shadow:0 8px 24px #0003}.av{background-position:50%;background-size:cover;border:2px solid #ffffff14;border-radius:50%;flex-shrink:0;width:52px;height:52px}.urgency .txt{text-align:left;color:#e5e2ea;font-size:14px;line-height:1.4}.urgency .txt b{color:#fff;font-weight:700}.foot-hint{text-align:center;opacity:.7;color:#b0aeb8;z-index:1;margin:28px 0 14px;font-size:13px;position:relative}.stars{color:#f5b342;letter-spacing:4px;text-shadow:0 0 20px #f5b34233;margin-bottom:4px;font-size:20px;display:inline-block}.cta-wrap{z-index:50;padding:14px 22px calc(14px + env(safe-area-inset-bottom));pointer-events:none;background:linear-gradient(#ffe6f000 0%,#ffdae8d9 50%,#ffd2e2 100%);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.cta-wrap:before{content:"";left:50%;bottom:calc(14px + env(safe-area-inset-bottom));filter:blur(14px);z-index:-1;background:radial-gradient(#ff4d8d66,#0000 70%);border-radius:999px;width:220px;height:56px;animation:1.6s ease-in-out infinite glow;position:absolute;transform:translate(-50%)}.cta{pointer-events:auto;color:#fff;letter-spacing:.3px;white-space:nowrap;cursor:pointer;background:linear-gradient(135deg,#ff4d8d 0%,#ff1f6a 60%,#e80f5a 100%);border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;width:100%;max-width:480px;padding:16px 36px;font-size:17px;font-weight:900;animation:1.6s ease-in-out infinite bounce;display:inline-flex;position:relative;box-shadow:0 12px 28px #ff1f6a8c,0 0 0 6px #ff1f6a1f,inset 0 -2px #0000001f}.cta:before{content:"";pointer-events:none;background:radial-gradient(circle at 30% 20%,#ffffff8c,#0000 50%);border-radius:999px;position:absolute;inset:0}.cta .heart{font-size:22px;animation:1.2s ease-in-out infinite heartBeat;display:inline-block}.cta.loading{opacity:.65;pointer-events:none;cursor:wait;animation:none}@keyframes bounce{0%,to{transform:translateY(0);box-shadow:0 12px 28px #ff1f6a8c,0 0 0 6px #ff1f6a1f,inset 0 -2px #0000001f}50%{transform:translateY(-10px);box-shadow:0 22px 38px #ff1f6a73,0 0 0 6px #ff1f6a1a,inset 0 -2px #0000001f}}@keyframes heartBeat{0%,to{transform:scale(1)}25%{transform:scale(1.25)}50%{transform:scale(1)}75%{transform:scale(1.15)}}@keyframes glow{0%,to{opacity:.7;transform:translate(-50%)scale(1)}50%{opacity:1;transform:translate(-50%)scale(1.06)}}@media (min-width:768px){.hero-copy h1{font-size:42px}.grid{grid-template-columns:repeat(4,1fr);max-width:960px;margin:0 auto}.swiper{justify-content:center}.slide{flex:0 0 320px}}#app{width:100%;min-height:100%}.modal{z-index:99999;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal_content{text-align:center;color:#333;background:#fff;border-radius:12px;min-width:260px;padding:24px}.close_button{color:#fff;cursor:pointer;background:#e88b9c;border-radius:8px;margin-top:16px;padding:8px 24px}
