:root{--pink:#ea4c91;--pink-deep:#d7357b;--pink-light:#fff0f7;--ink:#282136;--muted:#766b79;--line:#f0dce6;--white:#fff;--mint:#baf0d8;--shadow:0 14px 40px rgba(97,46,74,.075)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;color:var(--ink);background:#fffafc;font-family:'Noto Sans KR',system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #7a51dc;outline-offset:3px}img{max-width:100%}.wrap{width:min(1180px,calc(100% - 44px));margin:0 auto}.skip-link{position:absolute;top:-60px;left:12px;z-index:50;background:#fff;padding:10px}.skip-link:focus{top:10px}.site-header{height:76px;background:rgba(255,255,255,.95);backdrop-filter:blur(16px);border-bottom:1px solid rgba(237,213,224,.8);position:sticky;top:0;z-index:40}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:22px}.brand{display:flex;align-items:center;font-size:21px;line-height:1.1;font-weight:900;letter-spacing:-1px;white-space:nowrap}.brand-mark{height:34px;width:34px;display:grid;place-items:center;background:var(--pink);color:#fff;border-radius:12px;transform:rotate(-11deg);margin-right:10px;font-size:20px;box-shadow:0 5px 0 #ffc2dc}.brand-highlight{color:var(--pink)}.brand small{display:block;font-size:8px;letter-spacing:2px;color:#c58ba8;margin-top:5px}.desktop-nav{display:flex;align-items:center;gap:27px;font-size:13px;font-weight:700;color:#6c5866}.desktop-nav a:hover{color:var(--pink)}.nav-cta{border-radius:30px;background:#2e2636;color:#fff;font-weight:700;padding:11px 17px;font-size:12px;white-space:nowrap}.nav-cta:hover,.btn-dark:hover{background:#4a2c48;transform:translateY(-2px)}
.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 24% 16%,rgba(255,255,255,.14),transparent 23%),linear-gradient(119deg,#f16aa6 0%,#ea4c91 54%,#d53684 100%);min-height:520px}.hero::before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.25) 1.5px,transparent 1.5px);background-size:25px 25px;opacity:.65}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;min-height:515px;padding:68px 0 80px}.eyebrow{font:800 11px 'DM Sans',sans-serif;letter-spacing:2.5px;color:#ffe5ee;display:flex;align-items:center;gap:9px}.live-dot{width:8px;height:8px;border-radius:50%;background:#fff;box-shadow:0 0 0 5px rgba(255,255,255,.17)}.pretitle{font-weight:700;font-size:13px;margin:22px 0 12px;color:#fff8fc}.hero h1{font-size:clamp(39px,4.4vw,62px);letter-spacing:-3px;line-height:1.31;margin:0;font-weight:900}.hero h1 em{font-style:normal;color:#fff7ad;position:relative}.hero h1 em::after{content:'';position:absolute;bottom:-5px;left:0;right:0;height:8px;background:#fff7ad;border-radius:50%;opacity:.85;transform:rotate(-4deg)}.title-star{font-size:22px;vertical-align:top;margin-left:8px;color:#ffea8a}.hero-sub{font-size:15px;line-height:1.9;color:#ffeaf4;margin:26px 0 24px}.hero-dates{display:flex;align-items:center;gap:12px;margin-bottom:25px}.pill-white{background:#fff;color:var(--pink-deep);padding:3px 10px;border-radius:20px;font-size:11px;font-weight:800}.hero-dates strong{font:800 18px 'DM Sans','Noto Sans KR',sans-serif}.hero-dates strong span{font-size:11px;opacity:.8}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:13px 20px;font-size:13px;font-weight:800;border-radius:12px;transition:background .2s,transform .2s;line-height:1.3;border:0}.btn span{font-size:16px}.btn-dark{background:#30253b;color:#fff}.btn-light{background:#fff;color:var(--pink-deep)}.btn-light:hover{background:#ffedf5;transform:translateY(-2px)}.hero-art{height:390px;position:relative;display:grid;place-items:center}.art-halo{position:absolute;width:400px;height:400px;border:2px dashed rgba(255,255,255,.31);border-radius:50%;top:-5px;left:50%;transform:translateX(-50%)}.art-halo::after{content:'';position:absolute;inset:35px;border-radius:50%;border:1px solid rgba(255,255,255,.24)}.art-poster{width:300px;height:350px;border:8px solid #fff;border-radius:18px;background:linear-gradient(175deg,#ffe2ed,#fff7de 68%,#ffc4d2);box-shadow:21px 28px 0 #b72572,0 26px 55px rgba(72,18,57,.3);transform:rotate(6deg);position:relative;overflow:hidden}.poster-sun{position:absolute;width:220px;height:220px;background:#ffc6dc;border-radius:50%;top:24px;left:42px}.poster-city{position:absolute;display:flex;align-items:end;gap:6px;bottom:0;left:0;right:0;height:190px;opacity:.88}.poster-city i{flex:1;background:#ec7ca4;border-radius:6px 6px 0 0;height:60%}.poster-city i:nth-child(2){height:83%;background:#e8589a}.poster-city i:nth-child(3){height:55%}.poster-city i:nth-child(4){height:100%;clip-path:polygon(44% 0,56% 0,56% 18%,77% 26%,77% 100%,23% 100%,23% 26%,44% 18%);background:#d94389}.poster-city i:nth-child(5){height:76%}.poster-city i:nth-child(6){height:58%;background:#ff9fc1}.poster-city i:nth-child(7){height:88%;background:#dc5f97}.poster-type{position:absolute;top:44px;left:19px;right:15px;text-align:center;color:#ad296b}.poster-type small{display:block;font:800 14px 'DM Sans',sans-serif;letter-spacing:5px}.poster-type b{display:block;font:900 40px 'DM Sans',sans-serif;letter-spacing:-2px;line-height:1.17}.poster-type b span{color:#fa7197}.poster-jp{display:inline-block;background:#fff;border-radius:99px;padding:3px 13px;font-size:12px;font-weight:800;margin-top:9px;box-shadow:0 3px 0 #f9aacb}.poster-stripe{position:absolute;bottom:19px;left:22px;right:22px;border-top:4px dotted #fff}.art-sticker{position:absolute;z-index:4;top:13px;right:20px;width:130px;height:130px;border-radius:50%;background:#fffad0;color:#e44991;box-shadow:0 11px 27px #9d276855;border:7px solid #fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(14deg)}.art-sticker span{font:900 48px 'DM Sans',sans-serif;line-height:1}.art-sticker sup{font-size:16px}.art-sticker small{font:800 9px 'DM Sans',sans-serif;letter-spacing:1px}.art-note{position:absolute;z-index:5;left:0;bottom:21px;background:#fff;color:#d93e85;padding:11px 18px;border-radius:13px;transform:rotate(-8deg);font-size:14px;font-weight:900;line-height:1.5;box-shadow:0 8px 0 rgba(136,35,96,.22)}.art-note span{position:absolute;top:-20px;right:-15px;font-size:32px;color:#ffec9a}.float-star{position:absolute;color:#fff4ad;z-index:2}.star-a{font-size:44px;left:35px;top:20px}.star-b{font-size:37px;right:5px;bottom:50px}.float-heart{position:absolute;font-size:25px;right:45px;top:7px}.hero-deco{position:absolute;color:rgba(255,255,255,.4);font-size:70px}.hero-spark-one{left:2%;top:12%}.hero-spark-two{right:2%;bottom:12%}.hero-wave{position:absolute;z-index:3;bottom:-1px;height:20px;left:0;right:0;background:#fffafc;clip-path:polygon(0 54%,10% 63%,22% 47%,36% 67%,48% 50%,63% 70%,78% 49%,90% 68%,100% 52%,100% 100%,0 100%)}
.intro{position:relative;margin-top:28px;margin-bottom:28px;display:grid;grid-template-columns:1fr 1fr 1fr 1.75fr;align-items:stretch;border:1px solid #f2dce6;box-shadow:var(--shadow);background:#fff;border-radius:19px;overflow:hidden}.intro-stat{display:grid;grid-template-columns:auto auto;column-gap:9px;justify-content:center;align-content:center;border-right:1px solid #f0e2e9;padding:19px 10px}.intro-stat span{font-size:28px;align-self:center}.intro-stat strong{font:900 33px 'DM Sans',sans-serif;color:var(--pink-deep)}.intro-stat small{grid-column:1/-1;text-align:center;font-size:11px;font-weight:700;color:#8d6d80}.intro-note{padding:18px 25px;background:#fff2f8}.intro-note b{font-size:13px;color:#c22b72}.intro-note p{font-size:11px;line-height:1.7;margin:5px 0 0;color:#866174}
.section-pad{padding:75px 0}.section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:20px}.section-heading h2{font-size:clamp(26px,3.1vw,39px);letter-spacing:-1.6px;line-height:1.3;margin:5px 0 10px;font-weight:900}.section-heading h2 span{color:var(--pink)}.section-heading p:not(.section-kicker){color:var(--muted);margin:0;font-size:14px}.section-kicker{margin:0!important;font:800 11px 'DM Sans',sans-serif!important;letter-spacing:2px;color:#ea5796!important}.section-icon{background:linear-gradient(135deg,#fff0f7,#ffe2ee);border:1px solid #ffd5e7;width:73px;height:73px;display:grid;place-items:center;border-radius:20px;font-size:31px;transform:rotate(6deg)}.explore-section{background:#fffafc}.explore-shell{display:grid;grid-template-columns:315px minmax(0,1fr);gap:23px;align-items:start}.filters{position:sticky;top:100px;max-height:calc(100vh - 116px);overflow:auto;background:#fff;border:1px solid #eadde5;box-shadow:var(--shadow);border-radius:21px;padding:21px;scrollbar-width:thin}.filters-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.filters-title h3{margin:0;font-size:18px;font-weight:900}.text-button{background:none;border:0;color:#d44587;font-size:12px;font-weight:700;padding:4px;white-space:nowrap}.text-button:hover{text-decoration:underline}.field-label{display:block;margin:0 0 6px;font-size:12px;font-weight:800}.search-wrap{position:relative}.search-wrap span{position:absolute;left:13px;top:1px;font-size:26px;color:#c581a6}.search-wrap input{width:100%;outline:none;border:1px solid #eadce4;border-radius:12px;background:#fffafd;padding:11px 12px 11px 38px;font-size:12px}.search-wrap input:focus{border-color:#e84b92;box-shadow:0 0 0 3px #f9d5e6}.filter-block{border-top:1px solid #f0e5eb;padding-top:19px;margin-top:20px}.filter-block-title{display:flex;align-items:center;justify-content:space-between;gap:6px}.filter-block h4{margin:0 0 14px;font-size:14px;font-weight:900}.filter-block h4 small{font-size:10px;color:#a08f99;font-weight:500}.mode-control{display:flex;background:#fff0f6;border-radius:30px;padding:3px;gap:2px;align-self:start}.mode-btn{padding:5px 8px;border:0;background:transparent;font-size:10px;color:#9d647f;border-radius:30px;font-weight:800;white-space:nowrap}.mode-btn.active{background:var(--pink);color:#fff}.switch-row{display:flex;gap:8px;align-items:center;font-size:11px;color:#705b6c;cursor:pointer;margin-bottom:15px}.switch-row input{position:absolute;opacity:0}.fake-switch{width:31px;height:18px;border-radius:12px;background:#d3c0cd;position:relative;flex-shrink:0}.fake-switch:before{content:'';position:absolute;top:3px;left:3px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .18s}.switch-row input:checked + .fake-switch{background:var(--pink)}.switch-row input:checked + .fake-switch:before{transform:translateX(13px)}.character-filters{display:flex;flex-direction:column;gap:14px}.series-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;gap:8px}.series-heading button{background:transparent;border:0;padding:0;font-size:12px;font-weight:900;color:#473843;text-align:left}.series-heading button:hover{text-decoration:underline}.series-heading small{font-size:10px;color:#ab98a4;font-weight:500}.series-color{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px}.character-chips{display:flex;gap:5px;flex-wrap:wrap}.char-chip{display:inline-flex;align-items:center;gap:4px;cursor:pointer;position:relative}.char-chip input{position:absolute;opacity:0}.char-chip span{border:1px solid #eadce5;background:#fff;padding:5px 9px;border-radius:20px;font-size:10px;font-weight:600;color:#705b6a;line-height:1.35;transition:all .15s}.char-chip input:checked + span{border-color:var(--pink);background:#fae4ee;color:#ab236a;box-shadow:inset 0 0 0 1px var(--pink)}.char-chip i{font-style:normal;color:var(--series-color);font-size:9px}.perk-filters{display:flex;flex-wrap:wrap;gap:7px}.perk-filters label{cursor:pointer}.perk-filters input{position:absolute;opacity:0}.perk-filters span{display:block;background:#fffafc;border:1px solid #eadce5;border-radius:9px;padding:8px 10px;font-weight:700;font-size:11px}.perk-filters input:checked+span{background:#ffe5f0;color:#be3076;border-color:#ef8db9}.area-filters{display:flex;gap:6px;flex-wrap:wrap}.area-btn{border:1px solid #eadce5;background:#fff;border-radius:99px;font-size:11px;padding:6px 11px;color:#776472;font-weight:700}.area-btn.active{color:#fff;background:#343043;border-color:#343043}
.results{min-width:0}.results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 3px 17px}.results-toolbar b{font:900 26px 'DM Sans',sans-serif;color:var(--pink)}.results-toolbar span{margin-left:5px;font-size:13px;color:#6f5e6b}.results-toolbar label,.rally-toolbar label{font-size:11px;color:#8e7686;font-weight:700}.results-toolbar select,.rally-toolbar select{font-size:11px;background:white;border:1px solid #eadce5;border-radius:9px;padding:8px;margin-left:5px;color:#665365}.active-filters{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}.active-filter{border:1px solid #f2c4d9;background:#fff4fa;border-radius:99px;padding:4px 10px;color:#b33675;font-size:10px;font-weight:700}.store-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.store-card{border:1px solid #eddce6;background:#fff;border-radius:18px;box-shadow:0 5px 19px rgba(91,42,65,.045);overflow:hidden;transition:transform .2s,box-shadow .2s}.store-card:hover{transform:translateY(-3px);box-shadow:0 13px 29px rgba(91,42,65,.09)}.card-visual{height:104px;background:linear-gradient(125deg,var(--card-c1),var(--card-c2));position:relative;overflow:hidden;display:flex;align-items:center;padding:17px;color:#fff}.card-visual:before{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.33) 1px,transparent 1px);background-size:18px 18px;opacity:.54}.card-visual:after{content:'';position:absolute;width:150px;height:150px;background:rgba(255,255,255,.16);border-radius:50%;right:-30px;top:-50px}.card-illustration{position:absolute;right:19px;font-size:51px;line-height:1;transform:rotate(-12deg);filter:drop-shadow(0 5px 0 rgba(93,37,75,.18));z-index:2}.card-category{font-size:10px;font-weight:800;letter-spacing:1px;color:#fff8;position:relative;z-index:2}.card-visual strong{display:block;margin-top:5px;position:relative;z-index:2;font-size:20px;letter-spacing:-.8px;font-weight:900;max-width:77%;line-height:1.3;text-shadow:0 2px 8px #0002}.card-body{padding:16px 16px 17px}.card-meta{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:11px}.tag{font-size:10px;line-height:1.3;border-radius:7px;padding:5px 7px;font-weight:700}.tag-goods{background:#fff0dc;color:#a66b18}.tag-novelty{background:#fce5f0;color:#bd347a}.tag-photo{background:#e7f4fd;color:#48799c}.tag-pending{background:#eee9f6;color:#7e668d}.card-summary{font-size:12px;color:#6d5e6b;margin:0 0 12px;min-height:38px;line-height:1.7}.card-chars{display:flex;flex-wrap:wrap;gap:5px;min-height:23px;margin:7px 0 12px}.mini-char{border-radius:99px;border:1px solid #eedee7;color:#806a79;font-size:10px;padding:2px 7px;background:#fffafd}.mini-char i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--series-color);margin-right:5px}.card-footer{border-top:1px dashed #eadbe4;padding-top:11px;display:flex;justify-content:space-between;align-items:center;gap:8px}.card-footer small{color:#9d8996;font-size:10px}.detail-btn{border:0;background:var(--pink);color:white;font-weight:800;font-size:11px;border-radius:9px;padding:8px 11px;white-space:nowrap}.detail-btn:hover{background:var(--pink-deep)}.store-details{background:#fff9fc;padding:15px 16px 17px;border-top:1px solid #f3dfeb}.store-details h4{font-size:12px;margin:0 0 8px;color:#b92c72}.detail-item{margin:0 0 10px;font-size:11px;line-height:1.7;color:#776472}.detail-item b{display:block;color:#3e3040;font-size:12px}.detail-price{display:inline-block;margin-left:5px;color:#d43679;font-weight:900}.spot-mini{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 0;border-top:1px solid #f3e8ee;font-size:11px}.spot-mini b{display:block}.spot-mini small{color:#998694;display:block;font-size:10px}.spot-mini a,.card-source a{color:#cf3b7d;font-weight:800;white-space:nowrap;font-size:11px}.card-source{display:flex;gap:13px;flex-wrap:wrap;border-top:1px dashed #eadbe4;margin-top:11px;padding-top:11px}.empty-state{text-align:center;background:white;border:1px dashed #e3bbd1;border-radius:16px;padding:50px 15px}.empty-state span{font-size:36px}.empty-state h3{margin:9px 0}.empty-state p{font-size:12px;color:#8a7785}
.goods-section{background:#fff}.goods-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.goods-card{background:#fff;border:1px solid #eadde5;border-radius:17px;overflow:hidden;box-shadow:0 7px 25px #5c294b0b}.goods-top{min-height:114px;display:flex;justify-content:space-between;padding:16px 17px;background:var(--goods-bg);position:relative}.goods-top:after{content:'✦';font-size:75px;opacity:.11;position:absolute;right:65px;top:-18px}.goods-number{background:#fff;border-radius:50%;display:grid;place-items:center;height:27px;width:27px;color:#a34b79;font:800 11px 'DM Sans',sans-serif;box-shadow:0 2px 5px #0001}.goods-emoji{font-size:52px;transform:rotate(-8deg);align-self:center;margin-right:14px;filter:drop-shadow(0 4px 2px #7f3b581a)}.goods-body{padding:17px}.goods-body h3{margin:0 0 5px;font-size:17px;font-weight:900}.goods-title{font-size:12px;font-weight:700;color:#645061;min-height:40px;margin:0}.goods-price{font:900 23px 'DM Sans',sans-serif;color:#d23a7f;margin:13px 0 7px}.goods-desc{font-size:11px;color:#877382;line-height:1.75;min-height:38px}.goods-shop{font-size:11px;border-radius:9px;background:#fff5f9;padding:10px;color:#8c536e;margin:10px 0 12px}.goods-shop b{display:block;color:#ba3475;margin-bottom:2px}.goods-body>a{font-size:11px;font-weight:800;color:#d53b82}.callout{display:flex;gap:12px;background:#fff7e9;border:1px solid #f7deaa;border-radius:14px;padding:16px 18px;margin-top:20px}.callout span{font-size:24px}.callout b{font-size:12px;color:#916323}.callout p{margin:3px 0 0;font-size:11px;color:#8e7960}
.ticket-section{background:linear-gradient(165deg,#fff3f8,#fffafc)}.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.ticket-card{position:relative;padding:27px;border-radius:20px;background:#fff;border:1px solid #eedce7;box-shadow:var(--shadow)}.ticket-card.featured{border:2px solid var(--pink);background:linear-gradient(145deg,#fff,#fff0f6)}.ticket-type{color:#b3487b;font-size:12px;font-weight:900}.ticket-type span{background:#ee4c91;color:#fff;padding:2px 8px;border-radius:5px;font-size:10px;margin-left:8px}.ticket-card h3{font-size:20px;margin:9px 0 4px;letter-spacing:-.7px}.ticket-price{font:900 38px 'DM Sans',sans-serif;color:#db3e84;margin:8px 0}.ticket-card ul{padding-left:20px;min-height:100px;color:#6c5e6b;font-size:13px;line-height:2}.ticket-bottom{font-size:11px;font-weight:700;color:#a45e80;border-top:1px dashed #ebcfdc;padding-top:12px}.ticket-how{background:#fff;border:1px solid #e9d9e2;border-radius:18px;padding:23px;margin-top:18px}.ticket-how h3,.voucher-shops h3{font-size:18px;margin:0 0 15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.steps>div{display:flex;align-items:center;gap:12px;background:#fff4f8;border:1px solid #f8dce8;border-radius:12px;padding:14px}.steps b{color:#dc498e;font:900 24px 'DM Sans',sans-serif}.steps span{font-size:12px;font-weight:700}.ticket-how>p{font-size:11px;color:#786676;margin:15px 0 0}.voucher-shops{margin-top:18px;display:flex;align-items:center;justify-content:space-between;gap:30px;border:1px solid #e9d9e2;background:#fff;border-radius:18px;padding:23px}.voucher-shops>div{max-width:670px}.voucher-shops h3{margin-bottom:5px}.voucher-shops p{font-size:12px;color:#716170;margin:7px 0}.voucher-shops .small-warn{color:#b43e6c;font-weight:600}.voucher-shops .btn{flex-shrink:0}
.stamp-section{background:#fff}.rally-head{display:grid;grid-template-columns:1fr 1fr;gap:20px;border-radius:20px;padding:24px 28px;background:linear-gradient(116deg,#e94c91,#bc3b8a);color:#fff;box-shadow:0 14px 30px #d7388336}.rally-head small{font-size:12px;color:#ffedf5}.rally-head strong{display:block;font:900 40px 'DM Sans',sans-serif;margin:2px 0 11px}.rally-head strong em{font:700 22px 'DM Sans',sans-serif;color:#ffdce9}.progress-track{background:#ffffff50;height:10px;border-radius:20px;overflow:hidden;max-width:390px}.progress-bar{height:100%;width:0%;border-radius:20px;background:#fff9ad;transition:width .3s}.rally-reward{display:flex;align-items:center;justify-content:flex-end;gap:17px;border-left:1px solid #ffffff45}.rally-reward>span{font-size:44px}.rally-reward p{font-size:13px;margin:0;font-weight:700}.rally-reward p small{font-size:10px;display:block;margin-top:4px}.rally-toolbar{display:flex;gap:15px;justify-content:flex-end;align-items:center;flex-wrap:wrap;margin:20px 0 15px}.only-unchecked{display:flex;align-items:center;gap:5px;font-size:12px!important}.only-unchecked input{accent-color:var(--pink)}.stamp-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.stamp-item{background:#fff;border:1px solid #e9dce4;border-radius:14px;padding:13px 13px 12px;display:flex;align-items:flex-start;gap:10px;min-height:93px}.stamp-item.is-done{background:#fff2f8;border-color:#f7b0d0}.stamp-check{height:21px;width:21px;accent-color:#e3488d;cursor:pointer;flex-shrink:0;margin-top:3px}.stamp-text{min-width:0;flex:1}.stamp-text b{font-size:12px;display:block;line-height:1.45}.stamp-item.is-done b{text-decoration:line-through;color:#b48da0}.stamp-text small{font-size:10px;color:#978492;display:block;margin:3px 0}.stamp-text a{font-size:10px;color:#d3407d;font-weight:800}.stamp-area-badge{font-size:9px;color:#a4567a;background:#fff2f8;padding:2px 6px;border-radius:20px}.map-panel{margin-top:29px;border-radius:20px;border:1px solid #e9dae3;background:#fff;overflow:hidden;display:grid;grid-template-columns:1fr 1.2fr;min-height:310px}.map-panel>div{padding:35px}.map-icon{font-size:36px}.map-panel h3{font-size:21px;margin:7px 0}.map-panel p{color:#7a6977;font-size:12px;line-height:1.8;margin-bottom:20px}.map-panel iframe{border:0;width:100%;height:100%;min-height:310px;background:#fdebf3}
.faq-section{background:#fff4f8}.section-heading.compact{margin-bottom:20px}.faq-list{display:grid;grid-template-columns:1fr 1fr;gap:11px}.faq-list details{border:1px solid #efd6e2;background:#fff;border-radius:13px;padding:17px 19px;align-self:start}.faq-list summary{font-size:13px;font-weight:800;cursor:pointer;list-style:none;position:relative;padding-right:26px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;top:-3px;font-size:23px;color:#df4488}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:12px;color:#766674;margin:12px 0 0;padding-top:12px;border-top:1px solid #f2e4eb}.footer{background:#2c2535;color:#fff;padding:40px 0}.footer-inner{display:flex;justify-content:space-between;gap:30px}.footer-logo{font-size:22px;font-weight:900;color:#ff92bf}.footer-logo small{font:700 9px 'DM Sans';letter-spacing:1.5px;color:#e1b2ca}.footer p{font-size:12px;color:#dbd0d9;margin:11px 0}.footer small{font-size:10px;color:#9f8d9d;max-width:710px;display:block;line-height:1.7}.footer-links{display:flex;flex-direction:column;gap:8px;align-items:flex-end;font-size:12px;color:#f1c1d8;white-space:nowrap}
@media(max-width:1060px){.hero-layout{grid-template-columns:1fr .8fr}.hero h1{font-size:43px}.art-poster{transform:scale(.86) rotate(6deg)}.art-sticker{right:-3px}.explore-shell{grid-template-columns:270px minmax(0,1fr)}.filters{padding:16px}.store-grid{grid-template-columns:1fr 1fr}.card-visual strong{font-size:17px}.goods-list{grid-template-columns:repeat(2,1fr)}.stamp-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:750px){.site-header{height:66px}.desktop-nav{display:none}.brand{font-size:17px}.brand-mark{width:30px;height:30px;font-size:16px}.nav-cta{padding:8px 11px;font-size:10px}.wrap{width:min(100% - 30px,610px)}.hero-layout{grid-template-columns:1fr;gap:0;padding:48px 0 35px}.hero h1{font-size:clamp(37px,8vw,51px);letter-spacing:-2px}.hero-art{height:300px;max-width:440px;width:100%;margin:5px auto 0;transform:scale(.78);transform-origin:center}.hero-sub{font-size:13px}.hero-dates strong{font-size:15px}.intro{grid-template-columns:repeat(3,1fr);margin-top:14px}.intro-note{grid-column:1/-1;padding:14px 17px}.intro-stat{padding:14px 5px}.intro-stat span{font-size:20px}.intro-stat strong{font-size:26px}.intro-stat small{font-size:9px}.section-pad{padding:49px 0}.section-heading h2{font-size:27px}.section-heading p:not(.section-kicker){font-size:12px}.section-icon{width:51px;height:51px;border-radius:14px;font-size:23px}.explore-shell{display:flex;flex-direction:column}.filters{position:static;max-height:none;width:100%;padding:18px}.character-filters{display:grid;grid-template-columns:1fr 1fr;gap:12px}.results{width:100%}.store-grid{grid-template-columns:1fr 1fr}.goods-list{grid-template-columns:1fr 1fr}.ticket-grid{grid-template-columns:1fr 1fr}.steps>div{padding:11px;gap:7px}.steps b{font-size:19px}.steps span{font-size:10px}.rally-head{padding:21px}.map-panel{grid-template-columns:1fr}.map-panel>div{padding:25px}.map-panel iframe{height:330px}.faq-list{grid-template-columns:1fr}.footer-inner{flex-direction:column}.footer-links{align-items:flex-start}}
@media(max-width:540px){.hero h1{font-size:37px}.hero-art{height:260px;transform:scale(.67);margin:-20px auto -20px}.hero-actions .btn{flex:1;gap:6px;padding:13px 10px;font-size:11px}.character-filters{grid-template-columns:1fr}.store-grid,.goods-list,.ticket-grid,.stamp-list{grid-template-columns:1fr}.card-visual{height:112px}.card-visual strong{font-size:21px}.store-grid{gap:11px}.goods-top{min-height:100px}.goods-title,.goods-desc{min-height:0}.ticket-card{padding:21px}.ticket-card ul{min-height:0}.steps{grid-template-columns:1fr}.steps>div{min-height:59px}.voucher-shops{flex-direction:column;align-items:stretch;padding:20px}.voucher-shops .btn{width:100%}.rally-head{grid-template-columns:1fr;gap:16px}.rally-reward{justify-content:flex-start;border-left:0;border-top:1px solid #ffffff45;padding-top:15px}.rally-toolbar{justify-content:flex-start}.stamp-item{min-height:80px}.section-icon{display:none}.intro-stat strong{font-size:23px}.intro-stat span{font-size:18px}.nav-cta{font-size:9px}.footer{padding:32px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
