.welcome{z-index:7;background:radial-gradient(circle at 50% 35%,#123743f2,#071722f8);padding:5%}.welcome>span{font:500 36px Georgia,serif;color:var(--amber)}.welcome h2{margin:5px 0 7px}.welcome .welcome-lead{max-width:440px;margin:5px 0 10px;color:#a4babc;font-size:12px;line-height:1.65}.welcome .welcome-lead b{color:#eaf2ed}.rule-map{display:grid;grid-template-columns:repeat(3,1fr);width:min(420px,94%);gap:7px}.rule-map div{padding:9px 5px;border:1px solid #315965;border-radius:7px;background:#0c2834}.rule-map i,.rule-map b,.rule-map small{display:block}.rule-map i{color:var(--amber);font-style:normal;font-size:20px}.rule-map b{margin:3px 0;color:#dce9e5;font-size:11px}.rule-map small{color:#79979c;font-size:8px}.welcome-actions{display:grid;width:min(280px,85%);gap:7px;margin-top:12px}.welcome-actions .text-btn{margin:1px 0 0}.text-btn{border:0;background:transparent;color:#698891;margin-top:10px;font-size:11px;cursor:pointer}.coach-panel{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:10px 0 2px;padding:12px 14px;border:1px solid #39736f;border-radius:8px;background:linear-gradient(90deg,#10343d,#0b2632);box-shadow:0 8px 26px #0004}.coach-panel.hidden,.coach-reason.hidden{display:none}.coach-copy{flex:1}.coach-panel span,.coach-panel strong,.coach-panel p{display:block}.coach-panel span{color:var(--amber);font-size:9px;font-weight:800;letter-spacing:.12em}.coach-panel strong{margin-top:4px;color:#e8f1ed;font-size:13px}.coach-panel p{margin:3px 0 0;color:#9bb2b3;font-size:10px;line-height:1.55}.coach-reason{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:8px}.coach-reason i{padding:5px 7px;border-radius:4px;background:#0a202a;color:#87a5a7;font:normal 9px/1.35 system-ui}.coach-reason b{grid-column:1/-1;margin:1px 0 0;color:var(--amber);font:700 10px/1.4 system-ui}.coach-panel .text-btn{flex:none;margin:0}.board.coaching .cell{opacity:.4}.board.coaching .cell.coach-context{opacity:.8}.board.coaching .cell.coach-target{z-index:4;opacity:1;background:#f2dcae;box-shadow:inset 0 0 0 3px var(--amber),0 0 22px #dca95d99;animation:coachPulse 1.4s ease-in-out infinite}.board.coaching .cell.coach-target.selected{background:#bce5d9;box-shadow:inset 0 0 0 3px var(--teal),0 0 22px #20b7ad88}.help-dialog>form>p{color:#8fa8aa;font-size:12px;line-height:1.65}.help-rules{display:grid;gap:7px;margin:18px 0}.help-rules div{padding:11px 12px;border:1px solid #294b56;border-radius:6px;background:#0c2834}.help-rules b,.help-rules span{display:block}.help-rules b{color:var(--teal2);font-size:12px}.help-rules span{margin-top:4px;color:#88a4a7;font-size:10px}.help-dialog .primary{width:100%}.session-stats button{border:0;background:transparent;color:inherit;cursor:pointer;padding:0}.session-stats button:hover strong{color:var(--teal2)}.technique-grid{display:grid;gap:8px;margin:20px 0}.technique-grid article{display:flex;gap:13px;text-align:left;border:1px solid #284a55;border-radius:7px;padding:13px;background:#0c2834}.technique-grid article>span{color:var(--amber);font-size:20px}.technique-grid b{font-size:13px}.technique-grid p{margin:4px 0 0;color:#78969b;font-size:11px;line-height:1.5}.technique-grid .locked{opacity:.45}.growth-dialog>form>p{color:#86a0a5;font-size:12px}.cell.just-placed{animation:place .36s var(--ease)}.board.solved .cell{animation:solveWave .65s var(--ease) var(--reveal) both}@keyframes coachPulse{50%{transform:scale(.96);filter:brightness(1.08)}}@keyframes place{0%{transform:scale(.72);color:var(--amber)}60%{transform:scale(1.08)}100%{transform:scale(1)}}@keyframes solveWave{50%{background:#bfe4d7;color:#087d77;transform:translateY(-2px)}}
.daily-goals{display:flex;gap:6px;min-height:24px;margin:-4px 0 8px;overflow:auto;scrollbar-width:none}.daily-goals span{display:flex;align-items:center;gap:5px;white-space:nowrap;border:1px solid #274552;border-radius:20px;padding:4px 9px;color:#708d94;font-size:9px;transition:.25s}.daily-goals span.alive{border-color:#316d6b;color:var(--teal2);background:#103038}.daily-goals small{color:#526f77;font-size:8px}.complete{padding:5%}.complete .complete-star{font-size:48px!important}.complete h2{margin:5px 0}.observation-card{display:grid;grid-template-columns:1fr 1fr;width:min(360px,90%);margin:12px 0 16px;border:1px solid #31545e;border-radius:8px;background:#0b2530;padding:12px}.observation-card div{border-right:1px solid #294751}.observation-card div:nth-child(2){border:0}.observation-card strong,.observation-card small{display:block}.observation-card strong{font:500 19px Georgia,serif;color:#e9f0eb}.observation-card small{margin-top:3px;color:#65858c;font-size:8px}.observation-card p{grid-column:1/-1;display:flex;justify-content:center;gap:8px;margin:12px 0 0;padding-top:10px;border-top:1px solid #294751}.observation-card i{font-style:normal;color:#516f76;font-size:9px}.observation-card i.done{color:var(--amber)}
.complete-actions{display:flex;gap:8px}.secondary{border:1px solid #35616b;border-radius:4px;padding:11px 17px;color:#b8d9d5;background:#0b2934;font-weight:700;cursor:pointer}.board.replaying{pointer-events:none}.cell.replay-pulse{z-index:3;animation:replayPulse .42s var(--ease)}@keyframes replayPulse{0%{box-shadow:inset 0 0 0 2px var(--amber);transform:scale(.82);color:var(--amber)}100%{box-shadow:inset 0 0 0 0 transparent;transform:scale(1)}}@media(max-width:480px){.complete-actions{flex-direction:column}.observation-card{margin:7px 0}.complete{padding:3%}.coach-panel{align-items:flex-start}.coach-panel p{max-width:245px}}
.app-shell{padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(44px,env(safe-area-inset-bottom))}@media(max-width:850px){.app-shell{padding-top:max(8px,env(safe-area-inset-top));padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}}
.recommended-card{position:relative;width:100%;overflow:hidden;text-align:left;border:1px solid #3c7775;border-radius:9px;background:linear-gradient(135deg,#123944,#0b2632);color:#e8f2ee;padding:16px;margin:4px 0 14px;cursor:pointer}.recommended-card span,.recommended-card b,.recommended-card small{display:block}.recommended-card span{color:var(--amber);font-size:9px;font-weight:800;letter-spacing:.16em}.recommended-card b{margin:7px 0 4px;font:500 19px Georgia,serif}.recommended-card small{color:#8dacaf;font-size:10px}.recommended-card i{position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--teal) var(--progress,0%),#24434e var(--progress,0%));transition:.4s}.choice-label{margin:4px 0 8px;color:#628087;font-size:9px;letter-spacing:.13em;text-transform:uppercase}

/* ── 모바일에서 '사고의 흔적' 패널 복구 ──────────────────────────────
   기존에는 @media(max-width:850px)에서 .insight-panel 을 통째로 숨겨,
   폰 사용자가 논리 렌즈(힌트)·논리 지도·세션 통계에 접근할 수 없었다.
   장식용 orb만 걷어내고 컴팩트한 가로 바로 되살린다. (마크업/JS 변경 없음) */
@media(max-width:850px){
  .insight-panel{display:block;padding:10px 2px 0;text-align:center}
  .insight-panel .orb{display:none}
  .insight-panel>.eyebrow{display:none}
  .insight-panel h2{font:500 15px/1.35 Georgia,serif;margin:0 0 3px}
  .insight-panel>p{font-size:11.5px;line-height:1.5;min-height:0;margin:0 auto;max-width:34em}
  .hint-steps{height:auto;margin-top:7px}
  .insight-btn{margin-top:9px;padding:11px;font-size:13px}
  .insight-btn span{float:none;margin-left:6px;opacity:.6}
  .session-stats{margin-top:10px;padding-top:9px}
  .session-stats strong{font-size:16px}
  .session-stats button{border:0;background:transparent;padding:0;cursor:pointer}
}

/* 패널이 되살아난 만큼 세로 여백을 조여 한 화면에 담는다 */
@media(max-width:850px){
  .app-shell{padding-bottom:max(12px,env(safe-area-inset-bottom))}
  .topbar{margin-bottom:4px}
  .game-meta{margin-bottom:8px}
  .status-line{padding-top:6px;padding-bottom:4px}
  .keypad{margin-top:5px}
  .tools{margin-top:7px}
  .insight-panel{padding-top:6px}
  .insight-panel h2{font-size:14px}
  .insight-btn{margin-top:7px;padding:9px}
  .session-stats{margin-top:7px;padding-top:7px}
  .session-stats strong{font-size:15px}
}
