/* 서버 끊김 · 점검 막는 팝업(netwait.js). 판 = 작은 팝업 공통(18-popup-dark: 어두운 둥근 판 · 모서리 문양) — 여기는 막 · 크기 · 글자 · 기다림 점만.
   크기 = 작은 창 기준값(설정 창 10-24: 제목 15 · 글자 10.5~12 · 단추 28) · 폭 = 확인 창 .popup.ask 300. 모든 창(확인 20 · 점검 띠 46)보다 위. */
#ui .nw-dim { position: absolute; inset: 0; z-index: 60; display: grid; place-items: center; padding: 10px; opacity: 0; pointer-events: auto; transition: opacity .18s ease; }
#ui .nw-dim.on { opacity: 1; }
#ui .nw-dim .shade { background: rgba(6, 8, 10, .55); }
/* 한 번도 붙지 못한 채 = 판을 가린다(서버 값 전 기본 캐릭터 · 빈 섬이 초기화처럼 보이지 않게) */
#ui .nw-dim.cold .shade { background: #0b0d0f; }
#ui .nw-dim .popup.nw { width: 300px; text-align: center; }
#ui .nw-dim.on .popup.nw { animation: fx-pop .34s cubic-bezier(.2, .9, .25, 1.15) both; }
#ui .nw .nw-title { font-size: 15px; font-weight: 800; line-height: 20px; margin: 0 0 8px; color: var(--ink); }
#ui .nw-dim[data-kind="maint"] .nw-title { color: #ffd27a; }   /* 점검 = 점검 띠 머리표 밝은 금(maint_banner.css .mt-tag #ffd27a) */
#ui .nw .nw-text { font-size: 12px; font-weight: 700; line-height: 18px; padding: 0; margin: 0; white-space: pre-line; color: var(--ink); }
#ui .nw .nw-sub { font-size: 10.5px; line-height: 15px; margin: 6px 0 0; min-height: 15px; color: var(--ink-soft); }
/* 기다림 점 셋 = 차례로 밝아짐(빨간 점 맥박 628 ms 결) */
#ui .nw .nw-wait { display: flex; justify-content: center; gap: 6px; margin: 12px 0 2px; }
#ui .nw .nw-wait i { width: 6px; height: 6px; border-radius: 50%; background: var(--ink); opacity: .25; animation: nw-dot 1.26s ease-in-out infinite; }
#ui .nw .nw-wait i:nth-child(2) { animation-delay: .21s; }
#ui .nw .nw-wait i:nth-child(3) { animation-delay: .42s; }
@keyframes nw-dot { 0%, 70%, 100% { opacity: .25; transform: none; } 35% { opacity: 1; transform: translateY(-2px); } }
#ui .nw .nw-btns { margin-top: 12px; }
#ui .nw .nw-btns[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) { #ui .nw .nw-wait i { animation: none; opacity: .6; } }
