/* 튜토리얼 코치 오버레이 (src/ui/coach.js). 야전 지휘 막사 톤: 짙은 회갈색 + 놋쇠 금색 하나 */
.coach { position: fixed; inset: 0; z-index: 9000; pointer-events: none; }
.coach[hidden] { display: none; }
.coach-shade { position: fixed; background: rgb(8 6 4 / 0.72); pointer-events: auto; touch-action: none; }
.coach.free .coach-shade { display: none; }
.coach-cover { position: fixed; pointer-events: auto; touch-action: none; }
.coach-cover[hidden], .coach.free .coach-cover { display: none; }
.coach-ring { position: fixed; border: 2px solid #d4a24c; border-radius: 9px; pointer-events: none;
  box-shadow: 0 0 0 1px #1a1307, 0 0 18px 2px rgb(212 162 76 / 0.55); }
.coach-ring[hidden] { display: none; }
.coach-ring::after { content: ""; position: absolute; inset: -2px; border: 2px solid #d4a24c; border-radius: 11px; opacity: 0;
  animation: coach-ring 1.6s ease-out infinite; }
@keyframes coach-ring { 0% { opacity: 0.7; transform: scale(1); } 100% { opacity: 0; transform: scale(1.12, 1.25); } }

.coach-bubble { position: fixed; width: min(340px, calc(100vw - 16px)); pointer-events: auto; background: #1c1712; color: #f1e8d8;
  border: 1px solid #d4a24c; border-radius: 10px; padding: 10px 12px; box-shadow: 0 12px 32px #000c; font-size: 0.95em; line-height: 1.45; }
.coach.free .coach-bubble { border-color: #6a5232; }
.cb-head { display: flex; justify-content: space-between; gap: 8px; font-size: 0.8em; color: #a8998a; }
.cb-title { color: #d4a24c; font-weight: 600; }
.cb-count { font-variant-numeric: tabular-nums; }
.cb-text { margin: 4px 0 8px; white-space: pre-line; }
.cb-actions { display: flex; justify-content: flex-end; gap: 6px; }
.cb-actions button { padding: 0.35em 0.9em; min-width: 0; }
.cb-actions .cb-exit { margin-right: auto; background: transparent; border-color: transparent; color: #a8998a; padding-left: 0; }
.cb-actions button[hidden] { display: none; }
.coach-bubble.nudge { animation: coach-nudge 0.3s; }
@keyframes coach-nudge { 25% { transform: translateX(-4px); } 75% { transform: translateX(4px); } }

/* 코치 중에는 유닛 설명 창(#unit-tip)을 가림막 위로 올려 밝게 보인다 */
body.coaching .unit-tip { z-index: 9001; pointer-events: none; }

/* 가로 폰: 말풍선을 작게 */
@media (max-height: 560px) {
  .coach-bubble { width: min(300px, calc(100vw - 16px)); padding: 7px 10px; font-size: 0.85em; }
  .cb-text { margin: 2px 0 6px; }
}
@media (prefers-reduced-motion: reduce) {
  .coach-ring::after, .coach-bubble.nudge { animation: none; }
}

/* 과제 목록 (메뉴) */
.lesson-list .menu-btn { display: grid; grid-template-columns: 1.6em minmax(0, 1fr); align-items: center; column-gap: 8px; text-align: left; }
.lesson-list .l-mark { color: #d4a24c; text-align: center; font-variant-numeric: tabular-nums; }
.lesson-list .l-mark.done { color: #6fdc6f; }
.lesson-list .menu-btn small { display: block; color: #a8998a; }
