/* v269 — 정복 지도 시각 강화 + 주요 거점 성채 + 스토리 이미지 */
#v267GameModeModal .v267-mode-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));}
#v267GameModeModal .v267-mode-box{width:min(1200px,96vw);max-width:1200px;}
.v267-mode-card.conquest{background:linear-gradient(145deg,rgba(19,28,22,.96),rgba(17,20,27,.96));}
.v268-locked-faction{padding:10px 12px;border:1px solid rgba(214,176,103,.38);border-radius:8px;background:rgba(255,255,255,.04);font-weight:800;}
.v268-gate-badge{color:#ffb347;}

.v268-path-box{width:min(1120px,97vw);max-width:1120px;}

/* 지도(SVG) — 밝은 고서 지도 스타일 */
.v268-map-wrap{margin-top:10px;border:1px solid rgba(230,181,86,.5);border-radius:12px;overflow:hidden;background:#2c2114;box-shadow:0 6px 22px rgba(0,0,0,.4),inset 0 0 40px rgba(0,0,0,.35);}
.v268-map-svg{display:block;width:100%;height:auto;max-height:66vh;}
.v268-map-frame-outer{fill:none;stroke:#e6b556;stroke-width:3;}
.v268-map-frame-inner{fill:none;stroke:rgba(230,181,86,.45);stroke-width:1;}
.v268-map-region-label{fill:#3a2c18;font-size:18px;font-weight:900;letter-spacing:3px;opacity:.52;text-anchor:middle;pointer-events:none;text-transform:uppercase;}
.v268-map-river{fill:none;stroke:#5fa0c9;stroke-width:4;opacity:.55;stroke-linecap:round;}
.v268-map-river2{opacity:.5;}
.v268-map-route-full{fill:none;stroke:#8a7a5c;stroke-width:2;stroke-dasharray:6 6;opacity:.6;}
.v268-map-route-done{fill:none;stroke:#e6b556;stroke-width:4;opacity:.95;filter:drop-shadow(0 0 4px rgba(230,181,86,.6));}
.v268-map-compass{pointer-events:none;}
.v268-map-compass circle{fill:rgba(255,255,255,.05);stroke:#e6b556;stroke-width:1.5;opacity:.7;}
.v268-map-compass-needle{fill:#e6b556;opacity:.85;}
.v268-map-compass-n{fill:#e6b556;font-size:13px;font-weight:900;text-anchor:middle;opacity:.85;}
.v268-map-node{cursor:pointer;}
.v268-map-node circle{stroke-width:3;transition:r .12s ease,filter .12s ease,stroke-width .12s ease;}
.v268-map-node:hover circle{filter:brightness(1.35);}
.v268-map-node:hover .v268-map-label{fill:#fff3d6;}
.v268-map-label-halo{font-size:15px;font-weight:900;stroke:#241a0e;stroke-width:4;paint-order:stroke;text-anchor:middle;pointer-events:none;}
.v268-map-label{font-size:15px;font-weight:900;fill:#f0e8d6;text-anchor:middle;pointer-events:none;}
.v268-map-order{font-size:11px;font-weight:900;fill:#241a0e;text-anchor:middle;pointer-events:none;}
.v268-map-check{font-size:15px;font-weight:900;fill:#0e2312;text-anchor:middle;pointer-events:none;}
.v268-map-gate-icon{font-size:17px;fill:#ffcf6e;text-anchor:middle;pointer-events:none;filter:drop-shadow(0 0 3px rgba(255,180,50,.7));}
/* 경로 미포함 성: 흐린 점 */
.v268-map-off .v268-map-node-circle{fill:url(#v268NodeDim);stroke:#4a3c26;}
.v268-map-off .v268-map-label,.v268-map-off .v268-map-label-halo{font-size:12px;opacity:.74;}
/* 아직 잠긴 목표: 회청색 */
.v268-map-locked .v268-map-node-circle{fill:url(#v268NodeGrey);stroke:#2c3742;}
/* 다음 목표: 금색 + 맥동 링 */
.v268-map-current .v268-map-node-circle{fill:url(#v268NodeGold);stroke:#fff3d6;}
.v268-map-ring{fill:none;stroke:#e6b556;stroke-width:2;opacity:.6;animation:v268PulseRing 1.6s ease-out infinite;}
@keyframes v268PulseRing{0%{opacity:.72;stroke-width:3;}100%{opacity:0;stroke-width:1;}}
.v268-map-current .v268-map-node-circle{animation:v268PulseGlow 1.6s ease-in-out infinite;}
@keyframes v268PulseGlow{0%,100%{filter:drop-shadow(0 0 2px rgba(230,181,86,.6));}50%{filter:drop-shadow(0 0 10px rgba(255,210,120,.95));}}
.v268-map-current .v268-map-label{fill:#ffe3a0;font-weight:900;}
/* 함락 완료: 초록 + 체크 */
.v268-map-done .v268-map-node-circle{fill:url(#v268NodeGreen);stroke:#c8f0cc;}
.v268-map-done .v268-map-label{fill:#c8f0cc;}
/* 최고 관문: 두꺼운 금테 */
.v268-map-gate .v268-map-node-circle{stroke-width:3.5;stroke:#ffcf6e;}
/* 선택된 노드 강조 */
.v268-map-selected .v268-map-node-circle{stroke:#fff;stroke-width:4;}
.v268-map-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:9px;padding:8px 12px;border-radius:8px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.07);font-size:11px;color:#c9c2b4;align-items:center;}
.v268-legend-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:5px;vertical-align:-1px;}
.v268-legend-current{background:#e6b556;box-shadow:0 0 5px rgba(230,181,86,.7);}
.v268-legend-done{background:#4c8f5a;}
.v268-legend-locked{background:#4a5866;}
.v268-legend-off{background:#6b5c3e;}
.v268-legend-star{color:#ffcf6e;font-weight:900;}
.v268-map-info{margin-top:9px;padding:11px 13px;border-radius:8px;border:1px solid rgba(230,181,86,.28);background:rgba(255,255,255,.03);font-size:12px;line-height:1.65;color:#d8d2c6;min-height:20px;}
.v268-map-info b{color:#f0e8d6;}
.v268-map-action-btn{margin-top:9px;width:100%;font-weight:900;}

.v268-path-list{display:grid;gap:6px;max-height:22vh;overflow:auto;margin-top:10px;}
.v268-path-row{display:grid;grid-template-columns:32px 1.1fr 1fr 1.3fr auto auto;gap:10px;align-items:center;padding:9px 11px;border:1px solid rgba(255,255,255,.08);border-radius:8px;font-size:12px;background:rgba(255,255,255,.02);}
.v268-path-step{font-weight:900;color:#e6b556;text-align:center;}
.v268-path-name{font-weight:800;color:#f0e8d6;}
.v268-path-gen{color:#c9c2b4;}
.v268-path-tag{color:#9aa3b5;font-size:11px;}
.v268-path-reward{color:#f0c66e;white-space:nowrap;}
.v268-path-status{font-weight:800;text-align:right;white-space:nowrap;}
.v268-path-row.v268-done{opacity:.6;border-color:rgba(120,200,120,.4);}
.v268-path-row.v268-done .v268-path-status{color:#8fd18f;}
.v268-path-row.v268-current{border-color:#e6b556;background:rgba(230,181,86,.14);}
.v268-path-row.v268-current .v268-path-status{color:#f0c66e;}
.v268-path-row.v268-locked{opacity:.42;}
.v268-path-row.v268-locked .v268-path-status{color:#9aa3b5;}

@media(max-width:720px){
  .v268-path-row{grid-template-columns:1fr;gap:3px;}
  .v268-path-status{text-align:left;}
}


/* v269 — 주요 거점/스토리 이미지 시각 강화 */
.v269-map-major .v268-map-node-circle{stroke-width:4;filter:drop-shadow(0 2px 5px rgba(0,0,0,.55));}
.v269-map-castle{pointer-events:none;filter:drop-shadow(0 2px 2px rgba(0,0,0,.65));}
.v269-map-castle use{fill:#f1cf83;stroke:#2b1b0e;stroke-width:.8;paint-order:stroke;}
.v268-map-done.v269-map-major .v269-map-castle use{fill:#bfe7c4;}
.v268-map-locked.v269-map-major .v269-map-castle use{fill:#aeb8c2;}
.v268-map-off.v269-map-major .v269-map-castle use{fill:#b7a77f;opacity:.8;}
.v269-map-story-mark{pointer-events:none;filter:drop-shadow(0 1px 2px rgba(0,0,0,.7));}
.v269-map-story-mark rect{fill:#f2d58e;stroke:#2a1d0f;stroke-width:1;}
.v269-map-story-mark circle,.v269-map-story-mark path{fill:#6d4f27;stroke:none;}
.v269-legend-castle{color:#f1cf83;font-weight:900;}
.v269-legend-story{color:#f2d58e;font-weight:800;}

.v269-map-detail{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(300px,1.1fr);gap:14px;align-items:stretch;}
.v269-map-detail-copy{display:flex;flex-direction:column;gap:5px;min-width:0;}
.v269-city-title{font-size:16px;line-height:1.35;}
.v269-city-title b{color:#fff0c9;}
.v269-city-castle{font-size:18px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));}
.v269-city-tag{color:#b9c1cc;}
.v269-story-panel{min-width:0;border-left:1px solid rgba(230,181,86,.18);padding-left:14px;display:flex;flex-direction:column;gap:8px;justify-content:center;}
.v269-story-image{position:relative;width:100%;height:234px;padding:0;border:1px solid rgba(230,181,86,.38);border-radius:10px;overflow:hidden;background:#17120c;cursor:zoom-in;box-shadow:0 5px 16px rgba(0,0,0,.28);}
.v269-story-image img{display:block;transition:filter .22s ease;}
.v269-story-image:hover img{filter:brightness(1.08);}
.v269-story-image.v269-story-draggable{cursor:grab;}
.v269-story-image.v269-story-draggable:active{cursor:grabbing;}
.v269-story-image.v269-story-conquered img{filter:grayscale(1);}
.v269-story-image.v269-story-conquered:hover img{filter:grayscale(1) brightness(1.08);}
.v269-story-conquered-badge{position:absolute;left:7px;bottom:7px;z-index:2;padding:3px 8px;border-radius:999px;background:rgba(0,0,0,.72);border:1px solid rgba(232,196,108,.4);color:#e7dcc0;font-size:10px;font-weight:800;letter-spacing:.03em;pointer-events:none;}
.v269-story-lightbox-card img.v269-conquered-photo{filter:grayscale(1);}
.v269-story-layout-editor{display:grid;gap:6px;padding:9px 0 2px;border-top:1px dashed rgba(230,181,86,.22);margin-top:2px;}
.v269-story-layout-title{font-size:11px;font-weight:900;color:#f0cf7b;}
.v269-story-layout-row{display:grid;grid-template-columns:64px 1fr 42px;gap:8px;align-items:center;font-size:10px;color:#d8d2c6;}
.v269-story-layout-row input[type="range"]{width:100%;}
.v269-story-layout-actions{display:flex;gap:7px;padding-top:2px;}
.v269-story-layout-actions .btn{padding:6px 10px;font-size:10px;}
.v269-story-layout-hint{font-size:9px;opacity:.65;}
.v269-story-empty{min-height:82px;border:1px dashed rgba(230,181,86,.3);border-radius:10px;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;color:#9e978b;background:rgba(0,0,0,.12);}
.v269-story-admin{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding-top:2px;}
.v269-story-admin .btn{padding:7px 10px;font-size:11px;}
.v269-story-admin span{font-size:10px;color:#8f98a7;}
.v269-story-lightbox{position:fixed;inset:0;z-index:10050;display:none;align-items:center;justify-content:center;padding:28px;background:rgba(5,5,7,.88);backdrop-filter:blur(5px);}
.v269-story-lightbox.show{display:flex;}
.v269-story-lightbox-card{max-width:min(1100px,92vw);max-height:88vh;border:1px solid rgba(230,181,86,.5);border-radius:14px;overflow:hidden;background:#15110c;box-shadow:0 18px 70px rgba(0,0,0,.65);}
.v269-story-lightbox-card img{display:block;max-width:92vw;max-height:82vh;object-fit:contain;background:#090806;}
.v269-story-lightbox-title{padding:10px 14px;text-align:center;font-weight:900;color:#f1d69e;}
.v269-story-lightbox-close{position:fixed;right:24px;top:18px;width:42px;height:42px;border:1px solid rgba(255,255,255,.24);border-radius:50%;background:rgba(0,0,0,.45);color:white;font-size:30px;line-height:36px;cursor:pointer;}

@media(max-width:820px){
  .v268-map-label,.v268-map-label-halo{font-size:13px;}
  .v268-map-off .v268-map-label,.v268-map-off .v268-map-label-halo{font-size:11px;}
  .v269-map-detail{grid-template-columns:1fr;}
  .v269-story-panel{border-left:0;border-top:1px solid rgba(230,181,86,.18);padding-left:0;padding-top:10px;}
  .v269-story-image{height:281px;}
}
