.game-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}
.game-thumb{border-radius:16px;flex:none;box-shadow:0 6px 14px rgba(255,150,180,.25)}
.game-head h1{margin:0;font-size:26px;color:#5a4a6a;text-shadow:0 2px 0 #fff}
.game-head .sub{margin:2px 0 0;color:#9a86ad;font-size:14px}
.ms-wrap { max-width: 720px; margin: 0 auto; }
.ms-top { display: flex; align-items: center; gap: 10px; justify-content: center; margin: 6px 0 12px; flex-wrap: wrap; }
.ms-level { font-weight: 800; color: #fff; background: #ff7eb3; border-radius: 999px; padding: 4px 12px; white-space: nowrap; }
.ms-goal { font-weight: 700; color: #7a5a2a; text-align: center; }
.ms-top .btn { display: inline-block; width: auto; flex: 0 0 auto; margin-top: 0; padding: 8px 14px;
  font-size: 14px; white-space: nowrap; box-shadow: 0 3px 0 #ef5e98; border-radius: 999px; }
.ms-top .btn:active { transform: translateY(2px); box-shadow: 0 1px 0 #ef5e98; }
.ms-board-wrap { position: relative; border-radius: 20px; overflow: hidden; background: #fbf3df;
  background-image: radial-gradient(#f1e6c8 22%, transparent 23%); background-size: 46px 46px; background-position: 10px 10px;
  box-shadow: inset 0 0 0 3px #efe2bd; }
#msBoard { width: 100%; display: block; touch-action: none; cursor: pointer; }
.ms-overlay { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(60,40,15,.42); }
.ms-overlay.hidden { display: none; }
.ms-ovcard { background: #fff; border-radius: 20px; padding: 22px 26px; text-align: center; max-width: 84%; box-shadow: 0 16px 44px rgba(0,0,0,.3); }
.ms-ovcard h2 { margin: 6px 0 4px; color: #ff7eb3; }
.ms-ovcard p { margin: 0 0 14px; color: #5a4a6a; }
.ms-toast { position: absolute; left: 50%; top: 14px; transform: translateX(-50%) translateY(-8px);
  background: #fff0f6; color: #d81b74; border: 2px solid #ffb3d1; border-radius: 999px;
  padding: 8px 18px; font-weight: 800; font-size: 15px; white-space: nowrap;
  box-shadow: 0 8px 22px rgba(216,27,116,.22); opacity: 0; pointer-events: none; z-index: 6;
  transition: opacity .18s ease, transform .18s ease; }
.ms-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
