/* [맥과장] 아시아 비전 장면(#destinations)을 오로라·홀로그램·골드 라이트로 재해석한 최종 덮어쓰기. 가장 마지막에 로드된다. */
body.editorial-home #destinations.asia-section {
  --editorial-bg: #0b0714;
  --asia-gold: #ffd36b;
  --asia-gold-deep: #f5b81d;
  --asia-rose: #ff8a6c;
  --asia-violet: #b48cff;
  --asia-mint: #6ff2e4;
  --asia-ink: #fff8ea;
  --asia-muted: #cbbfd6;
  color: var(--asia-ink);
  background:
    radial-gradient(ellipse 60% 50% at 18% 12%, #f9653833, transparent 65%),
    radial-gradient(ellipse 45% 45% at 85% 20%, #7b3fe433, transparent 65%),
    radial-gradient(ellipse 60% 55% at 70% 95%, #08c2c226, transparent 65%),
    linear-gradient(180deg, #0b0714 0%, #140b26 55%, #0b0714 100%);
  overflow: clip;
  isolation: isolate;
}
body.editorial-home #destinations.asia-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  background:
    radial-gradient(ellipse 34% 30% at 28% 38%, #ffd36b14 0, transparent 70%),
    radial-gradient(ellipse 40% 36% at 76% 62%, #ff8a6c12 0, transparent 70%);
}
body.editorial-home #destinations.asia-section :is(h2, .section-intro) { color: var(--asia-ink); }
body.editorial-home #destinations.asia-section h2 em {
  font-style: normal;
  background: linear-gradient(92deg, #ffe9a8 0%, var(--asia-gold) 35%, var(--asia-rose) 70%, var(--asia-violet) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
body.editorial-home #destinations.asia-section .section-intro { color: var(--asia-muted); }
body.editorial-home #destinations.asia-section :is(.eyebrow, .eyebrow > span, .edition-label) { color: var(--asia-gold); }
body.editorial-home #destinations.asia-section .section-top { border-color: #ffffff22; }
body.editorial-home #destinations.asia-section .section-footnote { color: #a99cb8; }

/* 지도 패널: 유리 프레임 + 골드 림 라이트 */
body.editorial-home #destinations.asia-section .asia-map-panel {
  position: relative;
  padding: 0;
  border: 0;
  border-radius: 22px;
  background: transparent;
  box-shadow: none;
  isolation: isolate;
}
body.editorial-home #destinations.asia-section .asia-map-panel > .depth-surface-skin { display: none; }
body.editorial-home #destinations.asia-section .asia-stage {
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  background: #0b0714;
  box-shadow:
    0 0 0 1px #ffffff14,
    inset 0 0 0 1px #ffd36b22,
    0 30px 80px #00000080,
    0 0 90px #7b3fe433;
}
body.editorial-home #destinations.asia-section .asia-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  border-radius: inherit;
  padding: 1px;
  background: conic-gradient(from 210deg at 50% 50%, #ffd36b, #ff8a6c, #b48cff, #6ff2e4, #ffd36b);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .9;
}
body.editorial-home #destinations.asia-section .asia-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(180deg, #ffffff10, transparent 22%),
    linear-gradient(0deg, #0b071499, transparent 30%);
}
body.editorial-home #destinations.asia-section .asia-scene-canvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 0;
}
body.editorial-home #destinations.asia-section .asia-map {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  overflow: hidden;
}
/* 캔버스가 대륙·항로·물결을 그리므로 SVG는 라벨과 핀만 남긴다. */
body.editorial-home #destinations.asia-section [data-asia-scene="ready"] :is(.asia-land, .asia-blooms, .asia-spread, .asia-arcs, .asia-route, .asia-travel) { display: none; }
body.editorial-home #destinations.asia-section [data-asia-scene="fallback"] .asia-land path { fill: #ffd36b22; stroke: #ffd36b66; }
body.editorial-home #destinations.asia-section [data-asia-scene="fallback"] .asia-route { stroke: #ffd36b; opacity: .6; }
body.editorial-home #destinations.asia-section .asia-city-halo { fill: #ffd36b1f; stroke: #ffd36b55; }
body.editorial-home #destinations.asia-section .asia-city-core { fill: #fff3d0; stroke: #ffd36b; }
body.editorial-home #destinations.asia-section .asia-city text { fill: #ffe9b5; font: 600 9px var(--mono); letter-spacing: .14em; paint-order: stroke; stroke: #0b0714; stroke-width: 3px; }
body.editorial-home #destinations.asia-section .asia-pin-core { fill: #fff6dd; stroke: #ffd36b; stroke-width: 1.2; }
body.editorial-home #destinations.asia-section .asia-pin-halo { fill: #ffd36b1a; stroke: #ffd36b66; }
body.editorial-home #destinations.asia-section .asia-pin-pulse { stroke: #ffd36b66; }
body.editorial-home #destinations.asia-section .asia-pin text { fill: #fff3d4; stroke: #0b0714; stroke-width: 4px; font: 700 10.5px var(--mono); letter-spacing: .16em; }
body.editorial-home #destinations.asia-section .asia-pin.is-selected .asia-pin-core { fill: #fff; stroke: #ff8a6c; stroke-width: 1.6; }
body.editorial-home #destinations.asia-section .asia-pin.is-selected .asia-pin-halo { fill: #ff8a6c33; stroke: #ffb27a; }
body.editorial-home #destinations.asia-section .asia-pin.is-selected .asia-pin-pulse { stroke: #ffd36b; }
body.editorial-home #destinations.asia-section .asia-pin.is-selected text { fill: #ffe08a; font-size: 12px; }

/* 상단 HUD 라벨 */
body.editorial-home #destinations.asia-section .asia-hud {
  position: absolute;
  z-index: 4;
  left: 18px;
  right: 18px;
  top: 16px;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  pointer-events: none;
  font: 600 9px var(--mono);
  letter-spacing: .2em;
  color: #ffe9b5;
}
body.editorial-home #destinations.asia-section .asia-hud > span { display: inline-flex; align-items: center; gap: 8px; }
body.editorial-home #destinations.asia-section .asia-hud i {
  width: 6px; height: 6px; border-radius: 50%; background: var(--asia-gold);
  box-shadow: 0 0 10px var(--asia-gold), 0 0 22px var(--asia-rose);
  animation: asia-hud-blink 1.6s ease-in-out infinite;
}
@keyframes asia-hud-blink { 50% { opacity: .35; } }

body.editorial-home #destinations.asia-section .asia-map-caption {
  border: 0;
  padding: 18px 6px 0;
  color: #bfb2cf;
  font: 500 10px var(--mono);
  letter-spacing: .16em;
}
body.editorial-home #destinations.asia-section .asia-map-caption > span:first-child { color: var(--asia-gold); }

/* 권역 선택: 유리 카드 + 골드 활성 */
body.editorial-home #destinations.asia-section .region-tabs { gap: 10px; }
body.editorial-home #destinations.asia-section .region-tabs button {
  position: relative;
  min-height: 56px;
  border: 1px solid #ffffff1f;
  border-radius: 14px;
  color: #efe6f7;
  background: linear-gradient(135deg, #2a1f3fcc, #1a1230cc);
  box-shadow: inset 0 1px 0 #ffffff1c, 0 10px 30px #00000055;
  overflow: hidden;
  transition: transform .3s cubic-bezier(.2,.8,.2,1), border-color .3s, box-shadow .3s, background .3s;
}
body.editorial-home #destinations.asia-section .region-tabs button::after {
  content: "";
  position: absolute;
  inset: -60% auto -60% -30%;
  width: 40%;
  transform: skewX(-20deg) translateX(-160%);
  background: linear-gradient(90deg, transparent, #ffffff33, transparent);
  transition: transform .8s ease;
  pointer-events: none;
}
body.editorial-home #destinations.asia-section .region-tabs button:hover::after,
body.editorial-home #destinations.asia-section .region-tabs button:focus-visible::after { transform: skewX(-20deg) translateX(420%); }
body.editorial-home #destinations.asia-section .region-tabs button:hover {
  transform: translateY(-2px);
  border-color: #ffd36b88;
  color: #fff;
  box-shadow: inset 0 1px 0 #ffffff2a, 0 14px 34px #00000066, 0 0 30px #ffd36b22;
}
body.editorial-home #destinations.asia-section .region-tabs button > span:first-child { color: var(--asia-gold); font-weight: 700; }
body.editorial-home #destinations.asia-section .region-tabs button > i { color: var(--asia-gold); }
body.editorial-home #destinations.asia-section .region-tabs button[aria-pressed="true"] {
  color: #2a1400;
  border-color: #ffe08a;
  background: linear-gradient(135deg, #fff1bd 0%, #ffd36b 45%, #ffb35e 100%);
  box-shadow: 0 0 0 1px #ffe9a8, 0 12px 34px #ffb35e55, 0 0 60px #ffd36b33;
}
body.editorial-home #destinations.asia-section .region-tabs button[aria-pressed="true"] > span:first-child,
body.editorial-home #destinations.asia-section .region-tabs button[aria-pressed="true"] > i { color: #4a2a00; }
body.editorial-home #destinations.asia-section :focus-visible { outline: 3px solid #ffd36b; outline-offset: 4px; box-shadow: 0 0 0 8px #0b0714; }

/* 권역 상세 */
body.editorial-home #destinations.asia-section .region-detail {
  border-top: 1px solid #ffffff1c;
  position: relative;
}
body.editorial-home #destinations.asia-section .region-detail::before {
  content: "";
  position: absolute;
  left: 0; top: -1px;
  width: 92px; height: 2px;
  background: linear-gradient(90deg, var(--asia-gold), var(--asia-rose), transparent);
  box-shadow: 0 0 14px var(--asia-gold);
}
body.editorial-home #destinations.asia-section .region-code { color: var(--asia-gold); }
body.editorial-home #destinations.asia-section .region-detail h3 {
  color: #fff8ea;
  text-shadow: 0 0 30px #ffd36b2a;
}
body.editorial-home #destinations.asia-section .region-detail > p:not(.region-code) { color: #d6cbe3; }
body.editorial-home #destinations.asia-section .region-detail > span {
  color: #ffe9b5;
  background: #ffd36b14;
  border-color: #ffd36b55;
  box-shadow: inset 0 0 14px #ffd36b12;
}

/* 모션 정지·감소 시에는 정적 프레임과 장식만 유지한다. */
html[data-motion="paused"] body.editorial-home #destinations.asia-section .asia-hud i { animation: none; }
@media (prefers-reduced-motion: reduce) {
  body.editorial-home #destinations.asia-section :is(.region-tabs button, .region-tabs button::after) { transition: none; }
  body.editorial-home #destinations.asia-section .asia-hud i { animation: none; }
}
@media (max-width: 900px) {
  body.editorial-home #destinations.asia-section .asia-map-panel { padding: 0; margin-bottom: 4px; }
  body.editorial-home #destinations.asia-section .asia-stage { border-radius: 18px; }
  body.editorial-home #destinations.asia-section .asia-hud { left: 12px; right: 12px; top: 11px; font-size: 8px; letter-spacing: .14em; }
}
@media (max-width: 600px) {
  body.editorial-home #destinations.asia-section .asia-map-panel { width: 100%; margin-left: 0; }
  body.editorial-home #destinations.asia-section .asia-stage { border-radius: 14px; }
  body.editorial-home #destinations.asia-section .asia-hud > span:last-child { display: none; }
  body.editorial-home #destinations.asia-section .region-tabs button { min-height: 52px; border-radius: 12px; }
}
@media print {
  body.editorial-home #destinations.asia-section { background: #fff !important; color: #151515; }
  body.editorial-home #destinations.asia-section :is(h2, .section-intro, .region-detail h3, .region-detail p, .region-tabs button) { color: #151515 !important; }
  body.editorial-home #destinations.asia-section .asia-scene-canvas { display: none; }
}

/* grade.css의 도시 색·크기 지정보다 우선하는 골드 라벨 */
body.editorial-home #destinations.asia-section .asia-city[data-wave] .asia-city-core { fill: #fff3d0; stroke: #ffd36b; stroke-width: 1.1; }
body.editorial-home #destinations.asia-section .asia-city[data-wave] .asia-city-halo { fill: #ffd36b22; stroke: #ffd36b66; stroke-width: .8; }
body.editorial-home #destinations.asia-section .asia-city[data-wave] text { fill: #ffe9b5; font: 700 11px var(--mono); letter-spacing: .1em; stroke: #0b0714; stroke-width: 3.5px; }
body.editorial-home #destinations.asia-section .asia-pin[data-region-pin] text { font-size: 13px; }
body.editorial-home #destinations.asia-section .asia-pin[data-region-pin].is-selected text { font-size: 14.5px; }
