.page-module___8aEwW__tabSection{padding:var(--spacing-08)var(--spacing-16)var(--spacing-04)}.page-module___8aEwW__listHeader{padding:var(--spacing-12)var(--spacing-16);justify-content:space-between;align-items:center;display:flex}.page-module___8aEwW__resultCount{color:var(--content-secondary);font-size:13px;font-weight:500}.page-module___8aEwW__mapSection{padding:0 var(--spacing-16)calc(var(--spacing-12) + env(safe-area-inset-bottom))}.page-module___8aEwW__mapHint{z-index:34;min-width:220px;max-width:calc(100% - 32px);color:var(--content-secondary);border:1px solid var(--border-primary);background:#ffffffeb;border-radius:14px;padding:12px 14px;font-size:13px;font-weight:500;position:absolute;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #14171f14}.page-module___8aEwW__mapDock{z-index:220;pointer-events:none;position:absolute;bottom:14px;left:0;right:0}.page-module___8aEwW__mapDock>*{pointer-events:auto}.page-module___8aEwW__mapTopAction{z-index:35;position:absolute;top:16px;left:50%;transform:translate(-50%)}.page-module___8aEwW__mapSearchButton{min-width:132px;color:var(--content-primary);background:#fffffffa;border:1px solid #14171f14;border-radius:999px;justify-content:center;align-items:center;padding:10px 14px;font-size:13px;font-weight:700;line-height:16px;display:inline-flex;box-shadow:0 10px 20px #14171f24,0 2px 6px #14171f14}.page-module___8aEwW__performanceList{padding:0 var(--spacing-16)var(--spacing-32);gap:var(--spacing-12);flex-direction:column;display:flex}.page-module___8aEwW__skeletonList{gap:var(--spacing-12);flex-direction:column;display:flex}.page-module___8aEwW__listLoading{color:var(--content-secondary);padding:0 var(--spacing-04);font-size:13px;font-weight:600}.page-module___8aEwW__skeletonCard{border-radius:var(--radius-12);height:140px}.page-module___8aEwW__loadMoreBtn{width:100%;padding:var(--spacing-14)0;border-radius:var(--radius-08);background:var(--bg-secondary);color:var(--content-secondary);text-align:center;font-size:14px;font-weight:600;transition:background .2s}.page-module___8aEwW__loadMoreBtn:hover{background:var(--neutral-100)}
.Header-module__hBw1pG__header{background:var(--bg-primary);z-index:50;border-bottom:1px solid var(--border-primary);position:sticky;top:0}.Header-module__hBw1pG__topRow{padding:var(--spacing-12)var(--spacing-16);justify-content:space-between;align-items:center;display:flex}.Header-module__hBw1pG__left{align-items:center;display:flex}.Header-module__hBw1pG__logoButton{cursor:pointer;background:0 0;border:0;align-items:center;padding:0;display:inline-flex}.Header-module__hBw1pG__logo{color:var(--cyan-800);letter-spacing:-.5px;font-size:20px;font-weight:800}.Header-module__hBw1pG__right{align-items:center;gap:var(--spacing-08);display:flex}.Header-module__hBw1pG__regionBtn{align-items:center;gap:var(--spacing-04);padding:var(--spacing-08)var(--spacing-12);border-radius:var(--radius-20);background:var(--bg-secondary);color:var(--content-primary);font-size:13px;font-weight:600;transition:background .2s;display:flex}.Header-module__hBw1pG__regionBtn:hover{background:var(--neutral-100)}.Header-module__hBw1pG__filterBtn{border-radius:var(--radius-half);background:var(--bg-secondary);width:36px;height:36px;color:var(--content-secondary);justify-content:center;align-items:center;transition:background .2s;display:flex;position:relative}.Header-module__hBw1pG__filterBtn:hover{background:var(--neutral-100)}.Header-module__hBw1pG__redDot{border-radius:var(--radius-half);border:1.5px solid var(--bg-primary);background:#f21137;width:6px;height:6px;position:absolute;top:6px;right:6px}.Header-module__hBw1pG__searchRow{align-items:center;gap:var(--spacing-08);padding:var(--spacing-04)var(--spacing-16)var(--spacing-12);display:flex}.Header-module__hBw1pG__searchWrapper{flex:1.2;min-width:0}.Header-module__hBw1pG__dateWrapper{flex:1;justify-content:flex-end;min-width:0;display:flex}@media (max-width:480px){.Header-module__hBw1pG__searchRow{padding:var(--spacing-04)var(--spacing-08)var(--spacing-08);gap:var(--spacing-04)}.Header-module__hBw1pG__searchWrapper{flex:1.5}.Header-module__hBw1pG__dateWrapper{flex:1}}
.CalendarSelector-module__rug2gq__container{-webkit-user-select:none;user-select:none;position:relative}.CalendarSelector-module__rug2gq__trigger{align-items:center;gap:var(--spacing-04);padding:var(--spacing-08)var(--spacing-12);border-radius:var(--radius-20);background:var(--bg-secondary);color:var(--content-primary);border:1px solid #0000;transition:all .2s;display:flex}.CalendarSelector-module__rug2gq__triggerActive{background:var(--cyan-50);color:var(--cyan-600);border-color:var(--cyan-100)}.CalendarSelector-module__rug2gq__trigger:hover{background:var(--neutral-100)}.CalendarSelector-module__rug2gq__triggerText{align-items:center;min-width:0;display:inline-flex}.CalendarSelector-module__rug2gq__triggerValue{font-size:13px;font-weight:700;line-height:16px}.CalendarSelector-module__rug2gq__arrowOpen{transform:rotate(180deg)}.CalendarSelector-module__rug2gq__popover{background:var(--bg-primary);border-radius:var(--radius-16);width:320px;padding:var(--spacing-16);z-index:1000;animation:.3s cubic-bezier(.16,1,.3,1) CalendarSelector-module__rug2gq__slideUp;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 10px 40px #0000001f,0 0 0 1px #0000000d}.CalendarSelector-module__rug2gq__selectionSummary{gap:var(--spacing-04);padding:var(--spacing-12);margin-bottom:var(--spacing-12);border-radius:var(--radius-12);background:var(--cyan-50);flex-direction:column;display:flex}.CalendarSelector-module__rug2gq__selectionLabel{color:var(--cyan-700);font-size:11px;font-weight:700;line-height:14px}.CalendarSelector-module__rug2gq__selectionValue{color:var(--content-primary);font-size:15px;line-height:20px}.CalendarSelector-module__rug2gq__selectionMeta{color:var(--content-secondary);font-size:12px;line-height:15px}@media (max-width:480px){.CalendarSelector-module__rug2gq__popover{width:calc(100vw - 32px);max-width:340px;margin:0;position:absolute;top:calc(100% + 8px);left:auto;right:0;transform:none}}@keyframes CalendarSelector-module__rug2gq__slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.CalendarSelector-module__rug2gq__calendarBody{flex-direction:column;display:flex}.CalendarSelector-module__rug2gq__monthNav{margin-bottom:var(--spacing-12);justify-content:space-between;align-items:center;display:flex}.CalendarSelector-module__rug2gq__monthNav span{color:var(--content-primary);font-size:15px;font-weight:700}.CalendarSelector-module__rug2gq__monthNav button{border-radius:var(--radius-half);width:30px;height:30px;color:var(--content-secondary);justify-content:center;align-items:center;transition:background .2s;display:flex}.CalendarSelector-module__rug2gq__monthNav button:hover{background:var(--neutral-100)}.CalendarSelector-module__rug2gq__weekDays{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;display:grid}.CalendarSelector-module__rug2gq__weekDays div{height:30px;color:var(--content-tertiary);justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.CalendarSelector-module__rug2gq__daysGrid{margin-bottom:var(--spacing-16);grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.CalendarSelector-module__rug2gq__day,.CalendarSelector-module__rug2gq__emptyDay{border-radius:var(--radius-08);height:36px;color:var(--content-primary);justify-content:center;align-items:center;font-size:13px;font-weight:500;display:flex;position:relative}.CalendarSelector-module__rug2gq__day{cursor:pointer;transition:all .2s}.CalendarSelector-module__rug2gq__day:hover{background:var(--neutral-100)}.CalendarSelector-module__rug2gq__today:after{content:"";background:var(--cyan-500);border-radius:var(--radius-half);width:3px;height:3px;position:absolute;bottom:4px;left:50%;transform:translate(-50%)}.CalendarSelector-module__rug2gq__disabled{pointer-events:none;color:#dcdcdc!important;cursor:default!important;background:0 0!important}.CalendarSelector-module__rug2gq__selected{border-radius:var(--radius-08);font-weight:700;background:var(--cyan-500)!important;color:#fff!important}.CalendarSelector-module__rug2gq__inRange{background:var(--cyan-50);color:var(--cyan-700);border-radius:0}.CalendarSelector-module__rug2gq__popoverFooter{padding-top:var(--spacing-12);border-top:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.CalendarSelector-module__rug2gq__todayBtn{color:var(--content-secondary);padding:var(--spacing-08)var(--spacing-12);font-size:13px;font-weight:600}.CalendarSelector-module__rug2gq__confirmBtn{padding:var(--spacing-08)var(--spacing-20);background:var(--cyan-500);color:#fff;border-radius:var(--radius-08);justify-content:center;align-items:center;min-width:60px;font-size:13px;font-weight:700;transition:background .2s;display:flex}.CalendarSelector-module__rug2gq__confirmBtn:hover{background:var(--cyan-600)}@media (max-width:480px){.CalendarSelector-module__rug2gq__day,.CalendarSelector-module__rug2gq__emptyDay{height:40px;font-size:14px}.CalendarSelector-module__rug2gq__confirmBtn{padding:var(--spacing-10)var(--spacing-24);font-size:14px}}.CalendarSelector-module__rug2gq__navDisabled{opacity:.1;pointer-events:none;cursor:default!important}
.GenreChips-module__1olUyq__wrapper{padding:var(--spacing-12)0}.GenreChips-module__1olUyq__scrollContainer{gap:var(--spacing-08);padding:0 var(--spacing-20);display:flex}.GenreChips-module__1olUyq__chip{min-height:36px;padding:var(--spacing-08)var(--spacing-14);border-radius:var(--radius-20);border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--content-secondary);white-space:nowrap;flex-shrink:0;font-size:14px;font-weight:600;line-height:1.2;transition:all .2s}.GenreChips-module__1olUyq__chip:hover{border-color:var(--neutral-300);background:var(--bg-secondary)}.GenreChips-module__1olUyq__chip.GenreChips-module__1olUyq__active{border-color:var(--cyan-800);background:var(--cyan-50);color:var(--cyan-800);font-weight:600}
.SearchBar-module__9ObJ7W__searchBar{background:0 0;align-items:center;width:100%;display:flex}@keyframes SearchBar-module__9ObJ7W__fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.SearchBar-module__9ObJ7W__inputWrap{align-items:center;gap:var(--spacing-06);padding:var(--spacing-08)var(--spacing-12);background:var(--bg-secondary);border-radius:var(--radius-12);border:1px solid #0000;flex:1;transition:all .2s;display:flex}.SearchBar-module__9ObJ7W__inputWrap:focus-within{background:var(--bg-primary);border-color:var(--border-activated)}.SearchBar-module__9ObJ7W__searchIcon{color:var(--content-tertiary);flex-shrink:0}.SearchBar-module__9ObJ7W__input{font-family:var(--font-family);color:var(--content-primary);background:0 0;border:none;outline:none;flex:1;font-size:14px}.SearchBar-module__9ObJ7W__input::placeholder{color:var(--content-placeholder)}.SearchBar-module__9ObJ7W__clearBtn{padding:0 var(--spacing-04);opacity:.8;flex-shrink:0;align-items:center;display:flex}.SearchBar-module__9ObJ7W__clearBtn:hover{opacity:1}.SearchBar-module__9ObJ7W__cancelBtn{color:var(--content-interactive);padding:var(--spacing-04);flex-shrink:0;font-size:14px;font-weight:600}
.PerformanceCard-module__KACfCG__card{gap:var(--spacing-12);padding:var(--spacing-12);border-radius:var(--radius-12);background:var(--bg-primary);border:1px solid var(--border-primary);color:inherit;text-decoration:none;transition:all .2s;display:flex}.PerformanceCard-module__KACfCG__card:hover{border-color:var(--cyan-200);box-shadow:var(--shadow-md);transform:translateY(-1px)}.PerformanceCard-module__KACfCG__posterWrap{border-radius:var(--radius-08);background:var(--neutral-50);flex-shrink:0;width:90px;height:120px;overflow:hidden}.PerformanceCard-module__KACfCG__poster{object-fit:cover;width:100%;height:100%}.PerformanceCard-module__KACfCG__posterPlaceholder{background:var(--neutral-50);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.PerformanceCard-module__KACfCG__info{gap:var(--spacing-04);flex-direction:column;flex:1;min-width:0;display:flex}.PerformanceCard-module__KACfCG__badges{gap:var(--spacing-04);flex-wrap:wrap;display:flex}.PerformanceCard-module__KACfCG__title{color:var(--content-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.PerformanceCard-module__KACfCG__venue{color:var(--content-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:400;overflow:hidden}.PerformanceCard-module__KACfCG__meta{align-items:center;gap:var(--spacing-08);display:flex}.PerformanceCard-module__KACfCG__area{color:var(--content-tertiary);font-size:12px}.PerformanceCard-module__KACfCG__distance{color:var(--cyan-800);font-size:12px;font-weight:600}.PerformanceCard-module__KACfCG__period{color:var(--content-tertiary);margin-top:auto;font-size:11px}
.MarathonCard-module__cPijUq__card{gap:var(--spacing-12);padding:var(--spacing-12);border-radius:var(--radius-12);background:var(--bg-primary);border:1px solid var(--border-primary);color:inherit;text-decoration:none;transition:all .2s;display:flex}.MarathonCard-module__cPijUq__card:hover{box-shadow:var(--shadow-md);border-color:#8dd6a7;transform:translateY(-1px)}.MarathonCard-module__cPijUq__posterWrap{border-radius:var(--radius-08);background:#ebf8f0;flex-shrink:0;width:90px;height:120px;overflow:hidden}.MarathonCard-module__cPijUq__posterFallback{justify-content:center;align-items:center;gap:var(--spacing-08);color:#1f7a43;background:linear-gradient(#eefaf3 0%,#dff4e7 100%);flex-direction:column;width:100%;height:100%;display:flex}.MarathonCard-module__cPijUq__posterIcon{font-size:15px;line-height:1}.MarathonCard-module__cPijUq__posterLabel{font-size:11px;font-weight:700;line-height:13px}.MarathonCard-module__cPijUq__info{gap:var(--spacing-04);flex-direction:column;flex:1;min-width:0;display:flex}.MarathonCard-module__cPijUq__badges{align-items:center;gap:var(--spacing-04);flex-wrap:wrap;display:flex}.MarathonCard-module__cPijUq__typeBadge,.MarathonCard-module__cPijUq__registrationBadge{border-radius:var(--radius-04);padding:var(--spacing-04)var(--spacing-08);align-items:center;font-size:12px;font-weight:600;line-height:14px;display:inline-flex}.MarathonCard-module__cPijUq__typeBadge{color:#1f7a43;background:#e6f6ec}.MarathonCard-module__cPijUq__open{color:#1f8a44;background:#e4f7ea}.MarathonCard-module__cPijUq__upcoming{color:#1f6fb5;background:#e6f2fd}.MarathonCard-module__cPijUq__closed{color:#5d6775;background:#f0f2f4}.MarathonCard-module__cPijUq__title{color:var(--content-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.MarathonCard-module__cPijUq__date,.MarathonCard-module__cPijUq__summary,.MarathonCard-module__cPijUq__place,.MarathonCard-module__cPijUq__distance{margin:0}.MarathonCard-module__cPijUq__date{color:var(--content-secondary);font-size:12px;line-height:15px}.MarathonCard-module__cPijUq__summary{color:#1f7a43;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;line-height:15px;overflow:hidden}.MarathonCard-module__cPijUq__place{color:var(--content-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:16px;overflow:hidden}.MarathonCard-module__cPijUq__tags{gap:var(--spacing-04);flex-wrap:wrap;min-height:20px;display:flex}.MarathonCard-module__cPijUq__tag{border-radius:var(--radius-04);color:#2b7b4b;background:#eaf7ee;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;line-height:13px;display:inline-flex}.MarathonCard-module__cPijUq__distance{color:#1f7a43;margin-top:auto;font-size:12px;font-weight:600;line-height:14px}
.FestivalCard-module__qHGEaa__card{gap:var(--spacing-12);padding:var(--spacing-12);border-radius:var(--radius-12);border:1px solid var(--border-primary);background:var(--bg-primary);color:inherit;text-decoration:none;display:flex}.FestivalCard-module__qHGEaa__posterWrap{border-radius:var(--radius-08);background:#f4f1ff;flex-shrink:0;width:90px;height:120px;overflow:hidden}.FestivalCard-module__qHGEaa__poster{object-fit:cover;width:100%;height:100%}.FestivalCard-module__qHGEaa__posterFallback{justify-content:center;align-items:center;gap:var(--spacing-08);color:#5e56a5;background:linear-gradient(#f6f2ff 0%,#ebe6ff 100%);flex-direction:column;width:100%;height:100%;display:flex}.FestivalCard-module__qHGEaa__posterIcon{font-size:15px;line-height:1}.FestivalCard-module__qHGEaa__posterLabel{font-size:11px;font-weight:700;line-height:13px}.FestivalCard-module__qHGEaa__info{gap:var(--spacing-04);flex-direction:column;flex:1;min-width:0;display:flex}.FestivalCard-module__qHGEaa__badges{align-items:center;gap:var(--spacing-04);flex-wrap:wrap;display:flex}.FestivalCard-module__qHGEaa__typeBadge,.FestivalCard-module__qHGEaa__statusBadge,.FestivalCard-module__qHGEaa__gradeBadge{border-radius:var(--radius-04);padding:var(--spacing-04)var(--spacing-08);align-items:center;font-size:12px;font-weight:600;line-height:14px;display:inline-flex}.FestivalCard-module__qHGEaa__typeBadge{color:#5b4ba2;background:#efeafd}.FestivalCard-module__qHGEaa__upcoming{color:#236fb2;background:#e8f3fe}.FestivalCard-module__qHGEaa__ongoing{color:#1f7a43;background:#e6f8eb}.FestivalCard-module__qHGEaa__ended{color:#5d6775;background:#f0f2f4}.FestivalCard-module__qHGEaa__gradeBadge{color:#8b5f00;background:#fff4d6}.FestivalCard-module__qHGEaa__title{color:var(--content-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.FestivalCard-module__qHGEaa__date,.FestivalCard-module__qHGEaa__operatingSummary,.FestivalCard-module__qHGEaa__place{margin:0}.FestivalCard-module__qHGEaa__date{color:var(--content-secondary);font-size:12px;line-height:15px}.FestivalCard-module__qHGEaa__place{color:var(--content-secondary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:16px;overflow:hidden}.FestivalCard-module__qHGEaa__operatingSummary{color:#4b5563;white-space:nowrap;text-overflow:ellipsis;font-size:12px;line-height:15px;overflow:hidden}
.FilterSheet-module__1xLPtG__sheet{background:var(--bg-primary);border-radius:var(--radius-16)var(--radius-16)0 0;z-index:110;width:100%;max-width:480px;animation:.3s FilterSheet-module__1xLPtG__slideUp;position:fixed;bottom:0;left:50%;transform:translate(-50%)}@keyframes FilterSheet-module__1xLPtG__slideUp{0%{transform:translate(-50%)translateY(100%)}to{transform:translate(-50%)translateY(0)}}.FilterSheet-module__1xLPtG__header{padding:var(--spacing-16);border-bottom:1px solid var(--border-primary);justify-content:space-between;align-items:center;display:flex}.FilterSheet-module__1xLPtG__title{font-size:18px;font-weight:700}.FilterSheet-module__1xLPtG__closeBtn{border-radius:var(--radius-half);width:32px;height:32px;color:var(--content-secondary);justify-content:center;align-items:center;display:flex}.FilterSheet-module__1xLPtG__section{padding:var(--spacing-20)var(--spacing-16)}.FilterSheet-module__1xLPtG__sectionTitle{color:var(--content-secondary);margin-bottom:var(--spacing-12);font-size:14px;font-weight:600}.FilterSheet-module__1xLPtG__sectionDesc{color:var(--content-secondary);margin:0;font-size:14px;line-height:20px}.FilterSheet-module__1xLPtG__options{gap:var(--spacing-08);flex-wrap:wrap;display:flex}.FilterSheet-module__1xLPtG__quickOptions{gap:var(--spacing-08);margin-bottom:var(--spacing-12);display:flex}.FilterSheet-module__1xLPtG__optionBtn{padding:var(--spacing-10)var(--spacing-16);border-radius:var(--radius-08);border:1px solid var(--border-primary);background:var(--bg-primary);color:var(--content-primary);font-size:14px;font-weight:500;transition:all .2s}.FilterSheet-module__1xLPtG__optionBtn:hover{border-color:var(--neutral-300)}.FilterSheet-module__1xLPtG__optionBtn.FilterSheet-module__1xLPtG__active{border-color:var(--cyan-800);background:var(--cyan-50);color:var(--cyan-800);font-weight:600}.FilterSheet-module__1xLPtG__sizeLabel{font-size:14px;display:block}.FilterSheet-module__1xLPtG__sizeDesc{color:var(--content-secondary);margin-top:2px;font-size:10px;font-weight:400;display:block}.FilterSheet-module__1xLPtG__optionBtn.FilterSheet-module__1xLPtG__active .FilterSheet-module__1xLPtG__sizeDesc{color:var(--cyan-800)}.FilterSheet-module__1xLPtG__footer{gap:var(--spacing-08);padding:var(--spacing-12)var(--spacing-16)var(--spacing-24);border-top:1px solid var(--border-primary);display:flex}.FilterSheet-module__1xLPtG__resetBtn{padding:var(--spacing-14)0;border-radius:var(--radius-08);background:var(--btn-secondary);color:var(--content-secondary);flex:1;font-size:15px;font-weight:600}.FilterSheet-module__1xLPtG__applyBtn{padding:var(--spacing-14)0;border-radius:var(--radius-08);background:var(--btn-primary);color:var(--common-100);flex:2;font-size:15px;font-weight:600;transition:background .2s}.FilterSheet-module__1xLPtG__applyBtn:hover{background:var(--btn-primary-hover)}
.EmptyState-module__QvXXza__container{padding:var(--spacing-48)var(--spacing-16);justify-content:center;align-items:center;gap:var(--spacing-12);flex-direction:column;display:flex}.EmptyState-module__QvXXza__message{color:var(--content-secondary);text-align:center;font-size:15px;font-weight:500}.EmptyState-module__QvXXza__suggestion{color:var(--content-tertiary);font-size:13px}
.ViewToggle-module__nij6bW__toggle{background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:4px;display:inline-grid}.ViewToggle-module__nij6bW__button{color:var(--content-secondary);cursor:pointer;background:0 0;border:0;border-radius:12px;padding:10px 14px;font-size:13px;font-weight:600;line-height:16px;transition:background-color .2s,color .2s,box-shadow .2s}.ViewToggle-module__nij6bW__active{background:var(--bg-primary);color:var(--content-primary);box-shadow:0 1px 2px #14171f0f}
.MapView-module__xDyCiW__frame{isolation:isolate;position:relative}.MapView-module__xDyCiW__map{z-index:0;border:1px solid var(--border-primary);background:radial-gradient(circle at 0 0,#1d8bff24,#0000 35%),linear-gradient(#f8fbff 0%,#eef5ff 100%);border-radius:20px;width:100%;height:52vh;min-height:360px;position:relative;overflow:hidden}.MapView-module__xDyCiW__errorOverlay{text-align:center;color:var(--text-secondary);background:#f8fbffeb;border-radius:20px;flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:24px;display:flex;position:absolute;inset:0}.MapView-module__xDyCiW__errorOverlay strong{color:var(--text-primary);font-size:16px}.MapView-module__xDyCiW__errorOverlay p{max-width:280px;margin:0;font-size:14px;line-height:1.5}.MapView-module__xDyCiW__labelPin{white-space:nowrap;text-overflow:ellipsis;max-width:118px;color:var(--content-primary);background:#fffffff5;border:1px solid #d9e6fa;border-radius:999px;padding:7px 10px;font-size:11px;font-weight:600;line-height:13px;overflow:hidden;box-shadow:0 2px 8px #14171f1f}.MapView-module__xDyCiW__defaultPin{color:var(--content-primary);background:#fffffff5}.MapView-module__xDyCiW__concertPin{color:var(--content-primary);background:#fffffff5;border-color:#d9e6fa}.MapView-module__xDyCiW__festivalPin{color:#935208;background:#fff4e2f5;border-color:#ffd9a8}.MapView-module__xDyCiW__marathonPin{color:#1d7242;background:#e8f8eef5;border-color:#b5e7c8}.MapView-module__xDyCiW__micePin{color:#1f63bf;background:#eaf2fff5;border-color:#bcd7ff}.MapView-module__xDyCiW__selected{color:#fff;background:#1273e6;border-color:#1273e6;max-width:118px;padding:7px 10px;font-size:11px;line-height:13px;box-shadow:0 4px 14px #1273e642}
.MapEventCard-module__hYAR7W__card{gap:var(--spacing-12);width:100%;padding:var(--spacing-12);border:1px solid var(--border-primary);cursor:pointer;text-align:left;background:#fffffffa;border-radius:16px;display:flex;box-shadow:0 10px 24px #14171f1f,0 2px 6px #14171f0f}.MapEventCard-module__hYAR7W__card[aria-current=true]{border-color:var(--cyan-200);box-shadow:0 12px 28px #14171f24,0 0 0 1px #3683ff14}.MapEventCard-module__hYAR7W__posterWrap{border-radius:var(--radius-08);background:var(--neutral-50);flex-shrink:0;width:88px;height:120px;position:relative;overflow:hidden}.MapEventCard-module__hYAR7W__poster{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none}.MapEventCard-module__hYAR7W__posterFallback{width:100%;height:100%;color:var(--content-secondary);background:linear-gradient(#eef4fc 0%,#dde8f8 100%);justify-content:center;align-items:center;padding:10px;font-size:11px;font-weight:700;display:flex}.MapEventCard-module__hYAR7W__posterFallbackMarathon{color:#1f7a43;background:linear-gradient(#eefaf3 0%,#dff4e7 100%);flex-direction:column;gap:8px}.MapEventCard-module__hYAR7W__posterFallbackFestival{color:#5e56a5;background:linear-gradient(#f6f2ff 0%,#ebe6ff 100%);flex-direction:column;gap:8px}.MapEventCard-module__hYAR7W__posterFallbackIcon{font-size:15px;line-height:1}.MapEventCard-module__hYAR7W__posterFallbackLabel{font-size:11px;font-weight:700;line-height:13px}.MapEventCard-module__hYAR7W__info{gap:var(--spacing-04);flex-direction:column;flex:1;min-width:0;display:flex}.MapEventCard-module__hYAR7W__badges{gap:var(--spacing-04);flex-wrap:wrap;display:flex}.MapEventCard-module__hYAR7W__typeBadge{color:#425168;background:#edf2f8}.MapEventCard-module__hYAR7W__concertType{color:#2f6dd5;background:#eaf1ff}.MapEventCard-module__hYAR7W__marathonType{color:#1f7a43;background:#e6f6ec}.MapEventCard-module__hYAR7W__festivalType{color:#5b4ba2;background:#efeafd}.MapEventCard-module__hYAR7W__miceType{color:#1f63bf;background:#eaf2ff}.MapEventCard-module__hYAR7W__registrationBadge{color:#2e7b4b;background:#ecf6ef}.MapEventCard-module__hYAR7W__registrationOpen{color:#1f8a44;background:#e4f7ea}.MapEventCard-module__hYAR7W__registrationUpcoming{color:#1f6fb5;background:#e6f2fd}.MapEventCard-module__hYAR7W__registrationClosed{color:#5a6673;background:#eef1f4}.MapEventCard-module__hYAR7W__festivalStatusBadge{color:#9e5a12;background:#fff1e6}.MapEventCard-module__hYAR7W__festivalUpcoming{color:#236fb2;background:#e8f3fe}.MapEventCard-module__hYAR7W__festivalOngoing{color:#1f7a43;background:#e6f8eb}.MapEventCard-module__hYAR7W__festivalEnded{color:#5d6775;background:#f0f2f4}.MapEventCard-module__hYAR7W__festivalGradeBadge{color:#8b5f00;background:#fff4d6}.MapEventCard-module__hYAR7W__miceCategoryBadge{color:#1f63bf;background:#edf3ff}.MapEventCard-module__hYAR7W__tagBadge{color:#2a7248;background:#eef8f1}.MapEventCard-module__hYAR7W__title{color:var(--content-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:15px;font-weight:700;line-height:20px;display:-webkit-box;overflow:hidden}.MapEventCard-module__hYAR7W__venue{white-space:nowrap;text-overflow:ellipsis;color:var(--content-secondary);margin:0;font-size:13px;line-height:16px;overflow:hidden}.MapEventCard-module__hYAR7W__meta{align-items:center;gap:var(--spacing-08);min-width:0;display:flex}.MapEventCard-module__hYAR7W__area{white-space:nowrap;text-overflow:ellipsis;color:var(--content-tertiary);font-size:12px;line-height:14px;overflow:hidden}.MapEventCard-module__hYAR7W__distance{color:var(--cyan-800);margin-left:auto;font-size:12px;font-weight:600;line-height:14px}.MapEventCard-module__hYAR7W__period{color:var(--content-tertiary);margin:auto 0 0;font-size:11px;line-height:13px}
.MapCarousel-module__vhljlG__viewport{scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:pan-x;gap:12px;padding-left:24px;padding-right:100px;scroll-padding-left:24px;scroll-padding-right:100px;display:flex;overflow-x:auto}.MapCarousel-module__vhljlG__single{justify-content:center;padding-left:24px;padding-right:24px}.MapCarousel-module__vhljlG__viewport::-webkit-scrollbar{display:none}.MapCarousel-module__vhljlG__item{scroll-snap-align:start;flex:0 0 304px;width:304px;transition:transform .18s,opacity .18s}.MapCarousel-module__vhljlG__single .MapCarousel-module__vhljlG__item{scroll-snap-align:center}
