/*!*********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./components/minigames/dodge-game/styles.module.css ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************/
.styles_gameArea__QD7Pv {
  position: relative;
  width: 100%;
  max-width: 800px;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(180deg, #1b2238 0%, #2d2d2d 60%, #4a3a26 100%);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  touch-action: none;
}

.styles_starfield__IcRkU {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(2px 2px at 20% 30%, rgba(255, 255, 255, 0.6), transparent 60%),
    radial-gradient(1px 1px at 70% 60%, rgba(255, 255, 255, 0.7), transparent 60%),
    radial-gradient(1px 1px at 40% 80%, rgba(255, 255, 255, 0.5), transparent 60%),
    radial-gradient(2px 2px at 85% 20%, rgba(246, 194, 67, 0.7), transparent 60%);
  pointer-events: none;
  opacity: 0.7;
}

.styles_entity__n9JbM {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(24px, 5vw, 40px);
  pointer-events: none;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

.styles_player__2T8qm {
  position: absolute;
  bottom: 4%;
  width: 10%;
  aspect-ratio: 1 / 1;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(28px, 6vw, 48px);
  transform: translateX(-50%);
  transition: left 100ms linear;
  filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.5));
}

.styles_playerHit__R0NIA {
  animation: styles_playerHitFlash__SStZS 350ms ease-out;
}

@keyframes styles_playerHitFlash__SStZS {
  0%   { filter: drop-shadow(0 0 0 #ff4d4d) brightness(1); }
  20%  { filter: drop-shadow(0 0 12px #ff4d4d) brightness(1.6); opacity: 0.4; }
  60%  { filter: drop-shadow(0 0 8px #ff4d4d) brightness(1.3); opacity: 0.85; }
  100% { filter: drop-shadow(0 4px 6px rgba(0, 0, 0, 0.5)); opacity: 1; }
}

.styles_shake__2NhvN {
  animation: styles_screenShake__7HurA 350ms ease-in-out;
}

@keyframes styles_screenShake__7HurA {
  0%, 100% { transform: translate(0, 0); }
  15%      { transform: translate(-8px, 4px); }
  30%      { transform: translate(8px, -4px); }
  45%      { transform: translate(-6px, -3px); }
  60%      { transform: translate(6px, 3px); }
  75%      { transform: translate(-3px, 2px); }
  90%      { transform: translate(3px, -2px); }
}

.styles_obstacleSpawn__HCkGE {
  animation: styles_obstacleSpawn__HCkGE 280ms ease-out;
}

@keyframes styles_obstacleSpawn__HCkGE {
  from { transform: scale(0) rotate(-45deg); opacity: 0; }
  to   { transform: scale(1) rotate(0); opacity: 1; }
}

.styles_powerup__NNQz7 {
  animation: styles_powerupGlow__6Fqnq 1.4s ease-in-out infinite;
}

@keyframes styles_powerupGlow__6Fqnq {
  0%, 100% { filter: drop-shadow(0 0 6px rgba(246, 194, 67, 0.6)) brightness(1); transform: scale(1); }
  50%      { filter: drop-shadow(0 0 16px rgba(246, 194, 67, 1)) brightness(1.3); transform: scale(1.12); }
}

.styles_shieldRing__dTk4k {
  position: absolute;
  inset: -10%;
  border: 3px solid rgba(123, 194, 110, 0.85);
  border-radius: 50%;
  animation: styles_shieldPulse__K41w3 1.6s ease-in-out infinite;
  pointer-events: none;
}

@keyframes styles_shieldPulse__K41w3 {
  0%, 100% { transform: scale(1); opacity: 0.7; }
  50%      { transform: scale(1.12); opacity: 1; }
}

.styles_overlay__5SNaC {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: rgba(0, 0, 0, 0.55);
  color: #fff2d6;
  text-align: center;
  padding: 24px;
  z-index: 20;
}

.styles_overlayTitle__WvgIl {
  font-size: clamp(28px, 6vw, 48px);
  font-weight: 900;
  color: #f6c243;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.5);
}

.styles_overlayText__JpM6D {
  max-width: 480px;
  font-size: clamp(14px, 2.4vw, 18px);
  line-height: 1.5;
  opacity: 0.92;
}

.styles_slowTint__sui_7 {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 60%, rgba(106, 168, 255, 0.18), transparent 70%);
  pointer-events: none;
  animation: styles_slowPulse__WqxgN 1.8s ease-in-out infinite;
}

@keyframes styles_slowPulse__WqxgN {
  0%, 100% { opacity: 0.7; }
  50%      { opacity: 1; }
}

/*!***********************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[14].oneOf[7].use[3]!./components/minigames/memory-match/styles.module.css ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************/
.styles_board__mER_8 {
  display: grid;
  gap: clamp(6px, 1.2vw, 12px);
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  perspective: 800px;
}

.styles_card__vybqT {
  position: relative;
  aspect-ratio: 3 / 4;
  border-radius: 12px;
  cursor: pointer;
  transform-style: preserve-3d;
  transition: transform 300ms cubic-bezier(0.16, 1, 0.3, 1);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}

.styles_cardDisabled__VPFEq {
  cursor: default;
}

.styles_cardFlipped__JGkRp {
  transform: rotateY(180deg);
}

.styles_face__4VfBf,
.styles_back__rnODI {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 12px;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  font-size: clamp(28px, 6vw, 56px);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.18);
}

.styles_back__rnODI {
  background: linear-gradient(150deg, #f6c243 0%, #e5b03a 100%);
  color: #2d2d2d;
  font-weight: 900;
  font-size: clamp(20px, 4.5vw, 36px);
  border: 2px solid #c79a2c;
}

.styles_face__4VfBf {
  background: #fff8e7;
  color: #2d2d2d;
  border: 2px solid #8b5a2b;
  transform: rotateY(180deg);
}

.styles_matched__XL71Y .styles_face__4VfBf {
  border-color: #7bc26e;
  background: #e9f7e3;
  animation: styles_matchPulse__AHHs7 600ms ease-out;
}

@keyframes styles_matchPulse__AHHs7 {
  0%   { box-shadow: 0 0 0 0 rgba(123, 194, 110, 0.7); }
  60%  { box-shadow: 0 0 0 14px rgba(123, 194, 110, 0); }
  100% { box-shadow: 0 0 0 0 rgba(123, 194, 110, 0); }
}

.styles_shake__Gisvd .styles_face__4VfBf {
  animation: styles_cardShake__WgAno 350ms ease-in-out;
  border-color: #ff6b6b;
}

@keyframes styles_cardShake__WgAno {
  0%, 100% { transform: rotateY(180deg) translateX(0); }
  25%      { transform: rotateY(180deg) translateX(-6px); }
  75%      { transform: rotateY(180deg) translateX(6px); }
}

.styles_boardWrap__UcWG6 {
  position: relative;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
}

.styles_overlay__zM_ic {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  background: rgba(255, 248, 231, 0.92);
  color: #2d2d2d;
  border-radius: 24px;
  text-align: center;
  padding: 24px;
  z-index: 10;
}

.styles_overlayTitle__eJWlx {
  font-size: clamp(28px, 6vw, 44px);
  font-weight: 900;
  color: #8b5a2b;
}

.styles_overlayText__dLX6i {
  max-width: 460px;
  font-size: clamp(14px, 2.4vw, 16px);
  line-height: 1.5;
}

