/* Presentation only. Ticket content and scratch canvas geometry stay owned by
   the existing minigame module; this sheet changes only their displayed layout. */
#rw-minigames .mg-scratch-layout > section { min-width: 0; }
#rw-minigames .mg-ticket {
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: 548px;
  margin-inline: auto;
  padding: 17px 20px 14px;
  clip-path: none;
  border: 1px solid transparent;
  border-radius: 18px;
  color: #f4e9cf;
  background:
    linear-gradient(145deg, #22302f 0%, #101d25 48%, #18232d 100%) padding-box,
    linear-gradient(115deg, #84613a 0%, #f1d99a 18%, #c49450 34%, #87c9bd 47%, #b599d7 62%, #f2d991 78%, #84613a 100%) border-box;
  background-size: 100% 100%, 280% 280%;
  background-position: 0 0, 0% 50%;
  box-shadow: 0 14px 35px #06111566, 0 0 22px #c39b4312;
  animation: scratch-edge1372 9s ease-in-out infinite alternate;
}
#rw-minigames .mg-ticket::before,
#rw-minigames .mg-ticket::after {
  content: "";
  position: absolute;
  pointer-events: none;
  z-index: -1;
}
#rw-minigames .mg-ticket::before {
  inset: 5px;
  border: 1px solid #eed7a01c;
  border-radius: 13px;
}
#rw-minigames .mg-ticket::after {
  inset: 1px;
  border-radius: 17px;
  background: radial-gradient(ellipse at 15% 0%, #e6be6420, transparent 48%),
    radial-gradient(ellipse at 100% 75%, #9382cc12, transparent 44%);
}
#rw-minigames .mg-ticket header,
#rw-minigames .mg-ticket footer {
  color: #d1bd92;
  align-items: center;
  flex-wrap: wrap;
  line-height: 1.5;
}
#rw-minigames .mg-ticket header { letter-spacing: .12em; }
#rw-minigames .mg-ticket header b { color: #f1dca5; letter-spacing: .06em; }
#rw-minigames .mg-ticket footer { font-size: 10px; gap: 4px 12px; }
#rw-minigames .mg-ticket footer > :last-child { letter-spacing: .16em; }
#rw-minigames .mg-ticket-art {
  height: 66px;
  gap: 26px;
  font-size: 25px;
  color: #dbbc77;
  text-shadow: 0 0 16px #e7c98636;
}
#rw-minigames .mg-ticket-art .mg-clover { grid-template-columns: repeat(2, 15px); gap: 2px; }
#rw-minigames .mg-ticket-art .mg-clover i {
  width: 15px;
  height: 15px;
  border-radius: 3px;
  background: #a48d57;
  box-shadow: inset 2px 2px #dfc890, 0 0 10px #dfc89014;
}
#rw-minigames .mg-ticket .mg-scratch-zone {
  height: 116px;
  margin-bottom: 12px;
  border: 1px solid #bea36b77;
  border-radius: 9px;
  background: linear-gradient(135deg, #0b181e, #172631);
  box-shadow: inset 0 1px 10px #0003;
}
#rw-minigames .mg-ticket .mg-scratch-zone > div { gap: 5px; }
#rw-minigames .mg-ticket .mg-scratch-zone small { color: #c9bc9f; }
#rw-minigames .mg-ticket .mg-scratch-zone strong { color: #f5dfa7; font-size: 18px; }
#rw-minigames .mg-ticket .mg-scratch-zone span { color: #d2d7d4; }
#rw-minigames .mg-ticket [data-mg-scratch] { border-radius: 8px; }
@keyframes scratch-edge1372 {
  from { background-position: 0 0, 0% 50%; }
  to { background-position: 0 0, 100% 50%; }
}
@media (max-width: 600px) {
  #rw-minigames .mg-ticket { padding: 13px 13px 12px; border-radius: 15px; }
  #rw-minigames .mg-ticket-art { height: 62px; gap: 22px; }
  #rw-minigames .mg-ticket .mg-scratch-zone { height: 112px; }
  #rw-minigames .mg-ticket footer { flex-direction: row; align-items: center; }
}
@media (prefers-reduced-motion: reduce) {
  #rw-minigames .mg-ticket { animation: none; background-position: 0 0, 50% 50%; }
}
