/* FYG 실제 화면 투어 (Phase 14) */
.fyg-tour-block { position: fixed; inset: 0; z-index: 10049; background: transparent; }
.fyg-tour-hole { position: fixed; z-index: 10050; pointer-events: none; border-radius: 10px;
  box-shadow: 0 0 0 9999px rgba(15, 23, 42, .58); outline: 3px solid #fbbf24;
  transition: left .35s ease, top .35s ease, width .35s ease, height .35s ease; }
.fyg-tour-pop { position: fixed; z-index: 10051; background: #fff; color: #0f172a; border-radius: 14px; padding: 14px 16px 12px;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .3); font-size: .93rem; line-height: 1.55; transition: left .3s ease, top .3s ease; }
.fyg-tour-pop.in { animation: fygTourIn .28s ease both; }
@keyframes fygTourIn { from { opacity: 0; transform: translateY(6px) scale(.98); } to { opacity: 1; transform: none; } }
.fyg-tour-top { display: flex; align-items: center; margin-bottom: 2px; }
.fyg-tour-count { font-size: .75rem; font-weight: 700; color: #6366f1; letter-spacing: .04em; }
.fyg-tour-x { margin-left: auto; border: 0; background: none; color: #94a3b8; font-size: 1rem; line-height: 1; padding: 2px 4px; }
.fyg-tour-x:hover { color: #0f172a; }
.fyg-tour-title { font-weight: 800; font-size: 1.02rem; margin-bottom: 4px; }
.fyg-tour-text { color: #334155; word-break: keep-all; }
.fyg-tour-miss { margin-top: 6px; font-size: .82rem; color: #b45309; background: #fffbeb; border-radius: 8px; padding: 6px 8px; }
.fyg-tour-dots { display: flex; gap: 4px; margin: 10px 0 8px; }
.fyg-tour-dots i { width: 6px; height: 6px; border-radius: 50%; background: #e2e8f0; }
.fyg-tour-dots i.on { background: #0d6efd; width: 16px; border-radius: 3px; }
.fyg-tour-btns { display: flex; align-items: center; gap: 6px; }
.fyg-tour-lesson { font-size: .82rem; text-decoration: none; }

.fyg-tour-fab { position: fixed; right: 18px; bottom: 18px; z-index: 1040; width: 46px; height: 46px; border-radius: 50%; border: 0;
  background: #0d6efd; color: #fff; font-weight: 800; font-size: 1.3rem; box-shadow: 0 8px 22px rgba(13, 110, 253, .45);
  transition: transform .15s; }
.fyg-tour-fab:hover { transform: scale(1.08); }
body.fyg-touring .fyg-tour-fab, body.fyg-touring .fyg-tour-nudge { display: none; }
.fyg-tour-nudge { position: fixed; right: 18px; bottom: 76px; z-index: 1040; width: 250px; background: #fff; border-radius: 14px; padding: 12px 14px;
  font-size: .88rem; color: #334155; box-shadow: 0 14px 40px rgba(0, 0, 0, .22); animation: fygTourIn .4s ease both; }
.fyg-tour-nudge::after { content: ''; position: absolute; right: 18px; bottom: -7px; width: 14px; height: 14px; background: #fff; transform: rotate(45deg); }
@media print { .fyg-tour-fab, .fyg-tour-nudge { display: none !important; } }
