/* 홀린 나이트 — 어두운 지도 위 빛나는 핀. discovery.css 뒤에 로드. 모바일 기본, min-width 미디어쿼리만 사용. */
:root{--field-bg:#152a22;--field-text:#eef3ec;--field-border:rgba(255,255,255,.12);--text:#eef3ec;--secondary:#8ea396;--accent:#c9ee8b;--amber:#f2b84b;--quiet:#5b6f64;--border:rgba(255,255,255,.08);--canvas:#0b1612;--panel:#10211b;--panel-2:#152a22}
html{color-scheme:dark}
body{background:var(--canvas);color:var(--text)}
h1,h2,h3{color:var(--text)}
.muted{color:var(--secondary)}.green{color:var(--accent)}.gold{color:var(--amber)}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-color:var(--accent)}

/* ── 앱 셸 ── */
.boot{background:var(--canvas);color:var(--secondary)}
.app-header{background:rgba(11,22,18,.94);border-bottom:1px solid var(--border);backdrop-filter:blur(14px);position:sticky;top:0;z-index:30}
.app-header .brand{color:#fff;min-height:44px}
.header-inner{min-width:0}.desktop-nav{min-width:0}.desktop-nav a{color:#b9c6ba;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:160px;min-width:0}.desktop-nav a.active{color:#fff}.desktop-nav a.active:after{background:var(--accent)}
.operator-link{color:var(--secondary)}
.account-button{background:transparent;border-color:rgba(201,238,139,.5);color:var(--accent);border-radius:999px;min-height:44px}
.offline{background:#3a2e12;color:#f2d79a}
.footer{border-top-color:var(--border);color:#6f8276}.footer a{color:#8ea396}
.mobile-nav{background:rgba(11,22,18,.96);border-top:1px solid var(--border);backdrop-filter:blur(14px)}
.mobile-nav a{color:#8ea396;min-height:49px;font-size:12px}.mobile-nav a span{font-size:12px}.mobile-nav a.active{color:var(--accent)}
.page-heading p{color:var(--secondary)}
.btn{background:var(--panel-2);border-color:rgba(255,255,255,.12);color:var(--text)}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#0b1612}
.chip{background:transparent;border-color:rgba(255,255,255,.14);color:#cfd9cf;border-radius:999px;min-height:44px;font-size:13px}
.chip.active{background:var(--accent);border-color:var(--accent);color:#0b1612;font-weight:700}
.chip .icon{color:currentColor}
.tab{color:#8ea396}.tab.active{color:#fff;border-bottom-color:var(--accent)}
.tab-row{border-bottom-color:var(--border)}
.notice{background:#1f2a14;border-color:#3a4a24;color:#d7e3b5}
.field input,.field select,.field textarea{background:var(--field-bg);border-color:var(--field-border);color:var(--field-text)}
.field input::placeholder,.field textarea::placeholder{color:#8a978c}
.field label{color:var(--secondary)}
.empty{color:#8ea396}
#toast{background:var(--accent);color:#0b1612;font-weight:700}
.modal-backdrop{background:rgba(0,0,0,.65)}
.section-head a,.discovery-extras .section-head a{color:var(--secondary)}

/* ── 탐색(홈) 공통 ── */
.discovery-page{padding:0 0 95px;max-width:none;position:relative}
.discovery-layout{display:block;position:relative}
.discovery-panel{padding:18px 16px 0;min-width:0}
.location-label{color:var(--accent);font-weight:700;letter-spacing:1px;font-size:12px}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 10px var(--accent);display:inline-block;margin-right:7px;flex-shrink:0}
.location-label>span{color:var(--secondary);font-weight:500;letter-spacing:0;margin-left:4px}
.discovery-heading{display:block;margin:0}
.discovery-heading h1{font-size:clamp(28px,7vw,40px);font-weight:900;letter-spacing:-1.6px;line-height:1.15;color:#fff}
.discovery-heading p{color:var(--secondary);font-size:14px;line-height:1.6;margin-top:10px;word-break:keep-all}
.discovery-search{background:var(--panel-2);border:1px solid rgba(255,255,255,.1);border-radius:14px;height:50px;width:100%;margin-top:16px;min-width:0}
.discovery-search:focus-within{border-color:rgba(201,238,139,.6);box-shadow:0 0 0 3px rgba(201,238,139,.15)}
.discovery-search .icon{color:#8ea396}
.discovery-search input{color:#fff;font-size:16px;min-height:44px}.discovery-search input::placeholder{color:#6f8276}
.discovery-search button{background:var(--accent);color:#0b1612;font-weight:700;border-radius:10px;min-height:44px;min-width:52px}
.discovery-toolbar{display:flex;flex-direction:column;gap:0;min-width:0}
.district-tabs{border-bottom:1px solid var(--border);margin:0;padding:0;gap:6px;flex-wrap:wrap;overflow:visible}
.district-tab,.chip{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.district-tab{color:#8ea396;font-size:14px;padding:0 10px 12px;min-height:44px}
.district-tab.active{color:#fff}.district-tab.active:after{background:var(--accent)}
.discovery-filters{padding:12px 0 6px;margin:0;gap:8px}
.filter-scroll{padding-right:0;gap:8px;flex-wrap:wrap;overflow:visible}
.results-heading{margin:12px 0 4px}
.results-heading h2{font-size:14px;font-weight:700;color:#fff;display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}
.results-heading h2 span{color:var(--accent)}.results-heading h2 small{font-size:12px;color:var(--secondary);font-weight:500}
.results-heading>span{color:var(--secondary);font-size:12px}
.place-row{border-bottom:1px solid var(--border);padding:16px 0 8px;transition:background .15s,border-color .15s}
.place-row.is-selected{background:rgba(201,238,139,.08);border-radius:16px;padding:16px 12px 8px;margin:0 -12px}
.place-info h3{color:#fff}
.place-meta,.place-perks,.place-bottom>span,.directory-note{color:var(--secondary)}
.place-meta span{color:#4b5f54}
.place-status{color:var(--secondary)}.place-status.available{color:var(--accent);font-weight:700}.place-status.needs-check{color:#8ea396}
.place-map-button{color:var(--accent);font-weight:700;min-height:44px}
.place-map-button:disabled{color:#6f8276}
.place-monogram{background:#1c3129;color:var(--accent)}
.place-perks span+span:before{color:#4b5f54}
.directory-note{font-size:12px;line-height:1.6}
.nearby-benefit-bar{background:var(--panel);border:1px solid var(--border);color:var(--text);margin:18px 0 0;padding:16px}
.nearby-benefit-bar b{display:block;font-size:14px;color:#fff;margin-bottom:4px}
.nearby-benefit-bar span{font-size:12px;color:var(--secondary);line-height:1.6;word-break:keep-all}
.nearby-benefit-bar .btn{margin-top:12px;width:100%}
.discovery-page .empty{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:40px 20px}
.discovery-page .empty h2{color:#fff}.discovery-page .empty p{color:var(--secondary)}

/* ── 지도 ── */
.discovery-map{background:#0d1a15;border-color:var(--border)}
.discovery-map #venue-map,.leaflet-container{background:#0d1a15}
.leaflet-tile-pane{filter:invert(1) hue-rotate(180deg) brightness(.82) contrast(.9) saturate(.55)}
.leaflet-control-zoom{border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 8px 24px rgba(0,0,0,.4)!important;border-radius:12px!important;overflow:hidden}
.leaflet-bar a,.leaflet-touch .leaflet-bar a{background:rgba(16,33,27,.94);color:#eef3ec;border-bottom:1px solid rgba(255,255,255,.08);width:44px;height:44px;line-height:44px}
.leaflet-bar a:hover,.leaflet-touch .leaflet-bar a:hover{background:#1c3129;color:#fff}
.locate-button{background:rgba(16,33,27,.94);border:1px solid rgba(201,238,139,.4);color:var(--accent);box-shadow:0 8px 24px rgba(0,0,0,.4);width:44px;height:44px;min-height:44px;border-radius:12px;top:118px}
.map-context{background:rgba(11,22,18,.92);border:1px solid var(--border);color:#cfd9cf;box-shadow:none;border-radius:999px;gap:12px;padding:0 14px;min-height:36px;font-size:12px}
.legend{display:inline-flex;align-items:center;gap:6px;font-size:12px;white-space:nowrap}
.legend:before{content:'';width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 8px var(--accent)}
.legend.amber:before{background:var(--amber);box-shadow:none}.legend.quiet:before{background:var(--quiet);box-shadow:none}
.legend-note,.map-context>span:last-child{color:#6f8276;font-size:12px;white-space:nowrap}
.leaflet-container .leaflet-control-attribution{background:rgba(11,22,18,.85);color:#8ea396;font-size:12px}
.leaflet-container .leaflet-control-attribution a{color:#a9c0ad;display:inline-block;padding:13px 3px}
.map-error{background:#2a2412;color:#f2d79a;border-color:#4a3f1c}
.map-error button{background:var(--amber);color:#0b1612;border:0;border-radius:8px;min-height:36px;padding:0 12px;margin-left:8px;font-weight:700}

/* 핀 */
.venue-marker{background:none;border:0}
.venue-pin{display:flex;flex-direction:row;align-items:center!important;gap:6px!important;padding:0 12px 0 8px!important;min-height:36px;border-radius:999px!important;background:rgba(16,33,27,.95);border:1px solid rgba(201,238,139,.35);color:#eef3ec;font-weight:700;box-shadow:0 0 0 6px rgba(201,238,139,.08),0 8px 24px rgba(0,0,0,.45);max-width:none;transition:transform .15s,box-shadow .15s,background .15s}
.venue-pin .pin-dot{width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px var(--accent);flex-shrink:0}
.venue-pin strong{font-size:12px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.venue-pin b{font-size:12px!important;line-height:1;color:var(--accent);font-weight:700;white-space:nowrap}
.venue-pin.amber{border-color:rgba(242,184,75,.5);box-shadow:0 0 0 6px rgba(242,184,75,.08),0 8px 24px rgba(0,0,0,.45)}
.venue-pin.amber .pin-dot{background:var(--amber);box-shadow:0 0 12px var(--amber)}.venue-pin.amber b{color:var(--amber)}
.venue-pin.quiet{color:#8ea396;border-color:rgba(142,163,150,.3);box-shadow:0 8px 24px rgba(0,0,0,.35)}
.venue-pin.quiet .pin-dot{background:var(--quiet);box-shadow:none}.venue-pin.quiet b{color:#8ea396}
.venue-pin.selected{background:var(--accent);border-color:var(--accent);color:#0b1612;transform:scale(1.08);box-shadow:0 0 0 10px rgba(201,238,139,.18),0 0 40px rgba(201,238,139,.55)}
.venue-pin.selected .pin-dot{background:#0b1612;box-shadow:none}.venue-pin.selected b{color:#0b1612}
.venue-marker:focus-visible .venue-pin{outline:3px solid #fff;outline-offset:3px}

/* 시트 */
.map-selection{background:#0f1f19;border:1px solid rgba(201,238,139,.25);color:var(--text);box-shadow:0 -20px 40px rgba(0,0,0,.5);border-radius:20px}
.map-guide{max-width:none}
.map-guide .row{align-items:flex-start;margin-top:8px}
.map-guide .icon{color:var(--accent);margin-top:2px}
.map-guide b{color:#fff;font-size:14px}.map-guide p{color:var(--secondary);font-size:12px;line-height:1.5;margin-top:2px}
.sheet-open-count{font-size:12px;font-weight:700;color:var(--accent);letter-spacing:1px}
.map-guide .tiny{font-size:12px}
.sheet-rail{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0 0}
.rail-card{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.03);color:var(--text);text-align:left;min-height:56px;min-width:0}
.rail-card strong{font-size:13px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rail-card span{font-size:12px;font-weight:700;color:var(--accent);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rail-card.amber span{color:var(--amber)}.rail-card.quiet span{color:#8ea396}
.sheet-top h3{color:#fff}.sheet-close{color:#8ea396}
.sheet-summary .place-status{color:var(--accent);font-weight:700}
.sheet-more{color:var(--secondary);border-top-color:var(--border)}
.sheet-more .tag{background:rgba(201,238,139,.12);color:var(--accent)}
.directions-link{color:var(--accent);font-weight:700}
.sheet-handle span{background:#2e4a3c}

/* 플로팅 토글·추가 섹션 */
.floating-map-toggle{background:var(--accent);color:#0b1612;border-color:var(--accent);font-weight:700;font-size:13px}
.discovery-extras{padding:0 16px}
.event-compact{border-bottom-color:var(--border)}
.calendar-block{background:var(--panel-2);border-color:rgba(255,255,255,.1)}
.calendar-block span{color:var(--secondary)}.calendar-block strong{color:var(--accent)}
.event-compact h3{color:#fff}.event-compact p{color:var(--secondary)}.event-compact>svg{color:var(--secondary)}
.story-row{border-bottom-color:var(--border)}.story-row>span{color:var(--accent);font-size:11px}.story-row h3{color:#fff}.story-row small{color:var(--secondary)}
.discovery-page .footer{padding:20px 16px 0}

/* ── 모바일 지도 모드: 전면 지도 + 상단 검색 오버레이 + 하단 시트 ── */
.discovery-page:has(.mobile-map-active){height:calc(100dvh - 65px);min-height:0;overflow:hidden;padding:0}
.mobile-map-active{height:100%}
.mobile-map-active .discovery-panel{position:absolute;top:0;left:0;right:0;z-index:5;max-height:calc(100% - 170px);overflow-y:auto;padding:10px 16px 12px;background:linear-gradient(180deg,rgba(11,22,18,.96) 65%,rgba(11,22,18,0));pointer-events:none}
.mobile-map-active .discovery-panel>*{pointer-events:auto}
.mobile-map-active .discovery-heading{display:none}
.mobile-map-active .discovery-search{margin-top:0;height:48px}
.mobile-map-active .district-tabs{border-bottom:0;margin-top:4px;gap:4px}
.mobile-map-active .district-tab{min-height:44px;padding-bottom:6px}
.mobile-map-active .district-tab.active:after{bottom:2px}
.mobile-map-active .discovery-filters{padding:2px 0 0}
.mobile-map-active .discovery-results{display:none}
.mobile-map-active .discovery-map{display:block;position:absolute;top:0;left:0;right:0;bottom:calc(64px + env(safe-area-inset-bottom));height:auto;min-height:0;margin:0;border:0;border-radius:0}
.mobile-map-active .leaflet-control-zoom{display:none}
.mobile-map-active .locate-button{top:calc(var(--overlay-h,176px) + 12px);right:16px}
.mobile-map-active .map-context{bottom:auto;left:16px;top:calc(var(--overlay-h,176px) + 12px);max-width:calc(100% - 80px);overflow:hidden}
.mobile-map-active .map-selection{bottom:12px;left:12px;right:12px;max-width:none;padding:8px 16px 14px}
.mobile-map-active .map-guide{padding:8px 16px 14px}
.discovery-page:has(.mobile-map-active) .floating-map-toggle{position:absolute;top:calc(var(--overlay-h,176px) + 64px);right:16px;left:auto;bottom:auto;transform:none;min-height:44px;padding:0 14px;font-size:13px;border-radius:999px;z-index:4;pointer-events:auto}
.mobile-map-active .map-error{top:calc(var(--overlay-h,176px) + 118px);left:16px;right:16px}

/* ── 데스크톱: 전면 지도 + 떠 있는 왼쪽 패널 ── */
@media(min-width:960px){
.discovery-page{padding:0 0 28px;max-width:none;min-height:0}
.discovery-layout{display:block;position:relative;height:calc(100dvh - 80px);min-height:640px;margin:0}
.discovery-panel{position:absolute;top:20px;left:40px;bottom:24px;width:400px;z-index:5;display:flex;flex-direction:column;gap:14px;padding:24px 22px 18px;border-radius:24px;background:rgba(11,22,18,.88);border:1px solid var(--border);backdrop-filter:blur(14px);box-shadow:0 30px 60px rgba(0,0,0,.5);overflow:hidden}
.discovery-heading h1{font-size:34px}
.discovery-heading p{font-size:13px}
.discovery-search{margin-top:0}
.district-tabs{gap:18px}
.district-tab{font-size:13px;padding:0 8px 10px;min-height:40px}
.discovery-filters{padding:10px 0 0}
.view-toggle{display:none}
.discovery-results{flex:1;min-height:0;overflow:auto;scrollbar-width:thin;scrollbar-color:#2e4a3c transparent;margin:0 -10px;padding:0 10px}
.place-row{padding:14px 0 6px}
.place-row.is-selected{padding:14px 10px 6px;margin:0 -10px}
.place-monogram{width:64px;height:64px}
.place-bottom{margin-left:82px}
.discovery-map{position:absolute;top:0;left:0;right:0;bottom:0;height:auto;border:0;border-radius:0;display:block}
.leaflet-control-zoom{margin:20px 20px 0 0!important}
.leaflet-container .leaflet-control-attribution a{display:inline;padding:0}
.locate-button{top:124px;right:20px}
.map-context{top:auto;bottom:34px;left:470px;right:auto}
.map-selection{left:auto;right:84px;bottom:32px;max-width:380px;border-radius:18px;padding:16px 18px}
.map-guide{right:84px;left:auto;max-width:400px}
.sheet-rail{display:none}
.nearby-benefit-bar{flex-direction:column;align-items:stretch}
.discovery-extras{max-width:1392px;margin:36px auto 0;padding:0 40px}
.discovery-page .footer{max-width:1392px;margin:30px auto 0;padding:20px 40px 0}
.floating-map-toggle{display:none}
}
@media(min-width:1280px){
.discovery-panel{width:420px}
.map-context{left:500px}
}
@media(prefers-reduced-motion:reduce){
.venue-pin,.place-row{transition:none}
}

/* ── 불 켜짐: 선택·활성·호버 상태 공통 (핀을 누르면 불이 켜지는 느낌을 모든 콘텐츠에) ── */
.panel,.event-list-card,.board-post,.store-card,.event-card,.events-featured,.aside-card,.moment-card,.friend-tool-card,.tournament-ticket,.winner-benefit,.stat,.rail-card,.place-row,.story-row,.event-compact{transition:border-color .25s ease,box-shadow .25s ease,transform .2s ease,background .25s ease}
.event-list-card:hover,.board-post:hover,.store-card:hover,.rail-card:hover,.moment-card:hover,.friend-tool-card:hover,.event-list-card:focus-within,.board-post:focus-within,.store-card:focus-within,.rail-card:focus-visible{border-color:rgba(201,238,139,.45);box-shadow:0 0 0 1px rgba(201,238,139,.18),0 0 28px rgba(201,238,139,.14);transform:translateY(-1px)}
.place-row:hover,.story-row:hover,.event-compact:hover{background:rgba(201,238,139,.05)}
.lit,.is-selected,.panel.active,.rail-card.lit{border-color:var(--accent)!important;box-shadow:0 0 0 1px var(--accent),0 0 36px rgba(201,238,139,.35)!important}
.lit-pulse{animation:lit-pulse .55s ease-out}
@keyframes lit-pulse{0%{box-shadow:0 0 0 0 rgba(201,238,139,.7),0 0 0 rgba(201,238,139,0)}100%{box-shadow:0 0 0 12px rgba(201,238,139,0),0 0 40px rgba(201,238,139,0)}}
.chip.active,.event-chip.active,.event-date-picker button.active,.district-tab.active,.tab.active{text-shadow:0 0 14px rgba(201,238,139,.55)}
.chip.active,.event-chip.active,.event-date-picker button.active,.event-date-all.active{box-shadow:0 0 0 1px rgba(201,238,139,.5),0 0 22px rgba(201,238,139,.35)}
.btn.primary{box-shadow:0 0 0 1px rgba(201,238,139,.35),0 0 22px rgba(201,238,139,.25)}
.btn.primary:hover,.btn.primary:focus-visible{box-shadow:0 0 0 1px var(--accent),0 0 36px rgba(201,238,139,.55)}
.btn:active,button:active{transform:scale(.985)}
.mobile-nav a .nav-icon{transition:background .25s,box-shadow .25s,color .25s}
.mobile-nav a.active .nav-icon{background:rgba(201,238,139,.16);box-shadow:0 0 20px rgba(201,238,139,.5)}
.desktop-nav a.active{text-shadow:0 0 14px rgba(201,238,139,.6)}
.desktop-nav a.active:after{box-shadow:0 0 14px var(--accent)}
.toggle-switch input:checked+span,.switch.on{box-shadow:0 0 16px rgba(201,238,139,.6)}
@media(prefers-reduced-motion:reduce){.lit-pulse{animation:none}.panel,.event-list-card,.board-post,.store-card,.rail-card,.place-row,.btn,button{transition:none}}

/* ── 대회 캘린더(아레나): 포스터 카드 · 게임 대회 느낌 ── */
.events-header>div>span,.events-section-heading span{color:var(--accent);letter-spacing:2.4px;font-size:11px}
.events-header h1{text-shadow:0 0 30px rgba(201,238,139,.25)}
.events-count{background:var(--panel);border-color:rgba(201,238,139,.3);box-shadow:0 0 24px rgba(201,238,139,.12)}
.events-count strong{font-family:inherit;font-weight:900;color:var(--accent)}
.arena{margin:4px 0 36px}
.arena-controls{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}
.arena-search{display:flex;align-items:center;gap:10px;height:50px;padding:0 6px 0 14px;border-radius:14px;background:var(--panel-2);border:1px solid rgba(255,255,255,.1);min-width:0}
.arena-search:focus-within{border-color:rgba(201,238,139,.6);box-shadow:0 0 0 3px rgba(201,238,139,.15)}
.arena-search .icon{color:#8ea396;flex-shrink:0}
.arena-search input{flex:1;min-width:0;min-height:44px;background:transparent;border:0;outline:0;color:#fff;font-size:16px}
.arena-search input::placeholder{color:#6f8276}
.arena-search button{min-height:40px;min-width:52px;border:0;border-radius:10px;background:var(--accent);color:#0b1612;font-weight:700}
.arena-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.arena-sep{width:1px;height:24px;background:rgba(255,255,255,.12);margin:0 2px}
.arena-grid{display:grid;grid-template-columns:1fr;gap:14px}
.arena-card{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:var(--panel);border:1px solid rgba(255,255,255,.08);cursor:pointer;min-width:0}
.arena-card.live{border-color:rgba(201,238,139,.6)}
.arena-card:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.arena-poster{position:relative;aspect-ratio:4/3;background:#0d1a15;overflow:hidden}
.arena-poster img{width:100%;height:100%;object-fit:cover;object-position:top;display:block;transition:transform .35s ease}
.arena-card:hover .arena-poster img{transform:scale(1.03)}
.arena-poster:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,22,18,0) 55%,rgba(11,22,18,.92) 100%)}
.arena-noposter{height:100%;display:grid;place-items:center;color:#2e4a3c}.arena-noposter .icon{width:48px;height:48px}
.arena-flag{position:absolute;left:12px;top:12px;z-index:1;padding:0 10px;min-height:28px;display:inline-flex;align-items:center;border-radius:999px;background:rgba(11,22,18,.85);border:1px solid rgba(255,255,255,.14);color:#eef3ec;font-size:12px;font-weight:700;letter-spacing:.5px}
.arena-dday{position:absolute;right:12px;top:12px;z-index:1;padding:0 10px;min-height:28px;display:inline-flex;align-items:center;border-radius:999px;background:rgba(11,22,18,.85);border:1px solid rgba(201,238,139,.4);color:var(--accent);font-size:12px;font-weight:900;letter-spacing:1px}
.arena-dday.live{background:var(--accent);color:#0b1612;border-color:var(--accent);box-shadow:0 0 18px rgba(201,238,139,.7);animation:arena-live 1.8s ease-in-out infinite}
@keyframes arena-live{0%,100%{box-shadow:0 0 10px rgba(201,238,139,.5)}50%{box-shadow:0 0 26px rgba(201,238,139,.95)}}
.arena-body{display:flex;flex-direction:column;gap:8px;padding:14px 16px 16px;min-width:0}
.arena-dates{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.2px}
.arena-body h3{font-size:18px;line-height:1.35;font-weight:900;letter-spacing:-.5px;color:#fff;margin:0;word-break:keep-all}
.arena-venue{display:flex;align-items:center;gap:5px;font-size:13px;color:var(--secondary);min-width:0}
.arena-venue .icon{width:15px;height:15px;flex-shrink:0;color:#8ea396}
.arena-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:4px}
.arena-stats>div{padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);min-width:0}
.arena-stats small{display:block;font-size:12px;color:var(--secondary);letter-spacing:.5px}
.arena-stats b{display:block;margin-top:3px;font-size:15px;color:var(--amber);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.arena-stats>div:last-child b{color:#fff}
.arena-empty{margin-top:8px}
.arena-source{display:flex;gap:8px;align-items:flex-start;margin:16px 0 0;font-size:12px;line-height:1.6;color:#6f8276}
.arena-source .icon{flex-shrink:0;margin-top:2px;color:#6f8276}
.arena-divider{margin-top:8px}
/* 상세 모달 */
.arena-detail{display:flex;flex-direction:column;gap:14px}
.arena-detail-head{display:flex;gap:8px}
.arena-detail-head .arena-flag,.arena-detail-head .arena-dday{position:static}
.arena-detail h2{font-size:clamp(22px,5vw,30px);line-height:1.25;font-weight:900;letter-spacing:-.8px;color:#fff;margin:0;word-break:keep-all}
.arena-summary{color:#cfd9cf;font-size:14px;line-height:1.7;word-break:keep-all}
.arena-info{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.arena-info>div{padding:12px;border-radius:12px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);min-width:0}
.arena-info dt{font-size:12px;color:var(--secondary)}.arena-info dd{margin:4px 0 0;font-size:14px;font-weight:700;color:#fff;overflow-wrap:anywhere}
.arena-schedule h3{font-size:15px;color:var(--accent);margin:0 0 8px}
.table-wrap{overflow-x:auto;border-radius:12px;border:1px solid rgba(255,255,255,.08)}
.arena-schedule table{width:100%;border-collapse:collapse;font-size:13px;min-width:520px}
.arena-schedule th,.arena-schedule td{padding:9px 10px;text-align:left;border-bottom:1px solid rgba(255,255,255,.06);white-space:nowrap}
.arena-schedule th{font-size:12px;color:var(--secondary);font-weight:700;background:rgba(255,255,255,.03)}
.arena-schedule td:nth-child(6){color:var(--amber);font-weight:700}
.arena-posters{display:flex;flex-direction:column;gap:10px}
.arena-posters img{width:100%;height:auto;border-radius:14px;border:1px solid rgba(255,255,255,.08);display:block}
.arena-origin{align-self:flex-start;margin:0}
.arena-note{line-height:1.6}
@media(min-width:640px){.arena-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.arena-controls{flex-direction:row;align-items:center}.arena-search{flex:1;min-width:260px}}
@media(min-width:1024px){.arena-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.arena-info{grid-template-columns:repeat(3,minmax(0,1fr))}}
