/*
 * ==========================================================
 * VIBE GAMES UI SDK WEB ADAPTER 1.1
 *
 * Generated from platform-neutral VIBE UI SDK contracts.
 * ==========================================================
 */


/* ==========================================================
 * GAME APP
 * ========================================================== */

.vg-games-app{
  --vg-card-radius:20px;
  --vg-input-height:46px;
  --vg-input-radius:12px;
  --vg-button-height:48px;
  --vg-button-radius:14px;
  --vg-segment-height:40px;
  --vg-segment-radius:12px;
  --vg-stat-radius:14px;
  --vg-result-radius:13px;
  --vg-mine-gap:8px;
  --vg-mine-radius:14px;

  padding-bottom:24px;
}


.vg-games-app
.vsys-grid{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap:14px;
}


/* ==========================================================
 * STANDARD GAME CARD
 * ========================================================== */

.vg-game-card{
  position:relative;

  min-width:0;
  overflow:hidden;

  border-radius:
    var(--vg-card-radius)
    !important;

  border:
    1px solid
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 16%,
      rgba(255,255,255,.075)
    )
    !important;

  background:
    linear-gradient(
      155deg,
      color-mix(
        in srgb,
        var(--vb-accent,#8b7cff) 5%,
        rgba(255,255,255,.025)
      ),
      rgba(255,255,255,.012)
    )
    !important;

  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.035),
    0 10px 30px rgba(0,0,0,.12);
}


.vg-game-card::after{
  content:"";

  position:absolute;

  inset:
    0
    0
    auto;

  height:1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      color-mix(
        in srgb,
        var(--vb-accent,#8b7cff) 42%,
        transparent
      ),
      transparent
    );

  opacity:.55;

  pointer-events:none;
}


.vg-game-body{
  display:flex;
  flex-direction:column;

  min-height:100%;

  padding:18px !important;
}


.vg-game-head{
  display:flex;
  align-items:center;

  gap:13px;

  margin-bottom:18px;
}


.vg-game-icon{
  flex:
    0
    0
    52px;

  width:52px;
  height:52px;

  display:grid;
  place-items:center;

  margin:0 !important;

  border-radius:15px;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 10%,
      rgba(255,255,255,.025)
    );

  border:
    1px solid
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 18%,
      rgba(255,255,255,.07)
    );

  font-size:28px !important;

  line-height:1;
}


.vg-game-copy{
  min-width:0;
}


.vg-game-title{
  margin:0 !important;

  color:
    var(--vb-text,#f4f6fb);

  font-size:16px !important;
  font-weight:850 !important;

  letter-spacing:-.015em;
}


.vg-game-sub{
  margin-top:3px;

  color:
    var(--vb-text-soft,#929bad);

  font-size:12.5px;
  line-height:1.45;
}


/* ==========================================================
 * CONFIGURATION
 * ========================================================== */

.vg-game-config{
  display:flex !important;

  flex-direction:column;

  gap:10px !important;

  margin-top:0 !important;
}


.vg-game-card
.vb-field,

.vmine-app
.vb-field{
  gap:6px;
}


.vg-game-card
.vb-label,

.vmine-app
.vb-label{
  color:
    var(--vb-text-soft,#929bad);

  font-size:11px;
  font-weight:800;

  letter-spacing:.045em;

  text-transform:uppercase;
}


.vg-game-card
.vb-input,

.vmine-app
.vb-input,

.vmine-app
.vb-select{
  min-height:
    var(--vg-input-height);

  border-radius:
    var(--vg-input-radius)
    !important;

  border:
    1px solid
    rgba(255,255,255,.08)
    !important;

  background:
    rgba(0,0,0,.18)
    !important;

  color:
    var(--vb-text,#f4f6fb);

  font-family:
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    monospace;

  font-size:16px;
  font-weight:750;

  transition:
    border-color .14s ease,
    background .14s ease,
    box-shadow .14s ease;
}


.vg-game-card
.vb-input:focus,

.vmine-app
.vb-input:focus,

.vmine-app
.vb-select:focus{
  outline:none;

  border-color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 52%,
      transparent
    )
    !important;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 5%,
      rgba(0,0,0,.18)
    )
    !important;

  box-shadow:
    0 0 0 3px
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 10%,
      transparent
    );
}


/* ==========================================================
 * BET PRESETS
 * ========================================================== */

.vg-bet-presets{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:5px;

  margin-top:-2px;
}


.vg-preset{
  min-height:34px;

  border:
    1px solid
    rgba(255,255,255,.07);

  border-radius:10px;

  background:
    rgba(255,255,255,.025);

  color:
    var(--vb-text-soft,#929bad);

  font-family:
    ui-monospace,
    monospace;

  font-size:12px;
  font-weight:800;

  cursor:pointer;

  transition:
    transform .12s ease,
    color .12s ease,
    border-color .12s ease,
    background .12s ease;
}


.vg-preset:hover{
  transform:
    translateY(-1px);

  color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 60%,
      white
    );

  border-color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 32%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 8%,
      transparent
    );
}


.vg-preset:active{
  transform:
    scale(.98);
}


/* ==========================================================
 * SEGMENTED CONTROL
 * ========================================================== */

.vg-select-source{
  position:absolute !important;

  width:1px !important;
  height:1px !important;

  opacity:0 !important;

  pointer-events:none !important;
}


.vg-segmented{
  display:flex;

  min-height:
    var(--vg-segment-height);

  gap:4px;

  padding:4px;

  margin-top:0;

  border:
    1px solid
    rgba(255,255,255,.075);

  border-radius:
    var(--vg-segment-radius);

  background:
    rgba(0,0,0,.20);

  overflow:auto;
}


.vg-segmented button{
  flex:
    1
    1
    0;

  min-width:42px;
  min-height:32px;

  padding:
    0
    10px;

  border:0;

  border-radius:9px;

  background:transparent;

  color:
    var(--vb-text-soft,#929bad);

  font-family:
    ui-monospace,
    monospace;

  font-size:12px;
  font-weight:750;

  white-space:nowrap;

  cursor:pointer;

  transition:
    color .12s ease,
    background .12s ease,
    box-shadow .12s ease,
    transform .12s ease;
}


.vg-segmented
button:hover{
  color:
    var(--vb-text,#f4f6fb);
}


.vg-segmented
button:active{
  transform:
    scale(.98);
}


.vg-segmented
button.is-active{
  color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 56%,
      white
    );

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 13%,
      transparent
    );

  box-shadow:
    inset 0 0 0 1px
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 24%,
      transparent
    );
}


/* ==========================================================
 * PRIMARY ACTION
 * ========================================================== */

.vg-game-actions{
  margin-top:15px !important;
}


.vg-primary-action,

.vmine-start,

.vmine-cashout{
  width:100%;

  min-height:
    var(--vg-button-height)
    !important;

  border-radius:
    var(--vg-button-radius)
    !important;

  font-size:14px !important;
  font-weight:850 !important;

  letter-spacing:.01em;

  transition:
    transform .12s ease,
    filter .12s ease,
    box-shadow .12s ease;
}


.vg-primary-action:hover,

.vmine-start:hover,

.vmine-cashout:hover{
  filter:
    brightness(1.06);
}


.vg-primary-action:active,

.vmine-start:active,

.vmine-cashout:active{
  transform:
    scale(.985);
}


/* ==========================================================
 * RESULT
 * ========================================================== */

.vg-result-banner{
  min-height:48px;

  display:flex;
  align-items:center;

  margin-top:10px !important;

  padding:
    11px
    14px
    !important;

  border-radius:
    var(--vg-result-radius)
    !important;

  border:
    1px solid
    rgba(255,255,255,.055);

  background:
    rgba(0,0,0,.14);

  color:
    var(--vb-text-soft,#929bad);

  font-size:12.5px;
  line-height:1.45;
}


/* ==========================================================
 * MINE APP
 * ========================================================== */

#vsysMine{
  margin-top:16px;
}


.vmine-app{
  position:relative;

  overflow:hidden;

  border-radius:
    var(--vg-card-radius)
    !important;

  border:
    1px solid
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 18%,
      rgba(255,255,255,.075)
    )
    !important;

  background:
    radial-gradient(
      circle at 50% -10%,
      color-mix(
        in srgb,
        var(--vb-accent,#8b7cff) 10%,
        transparent
      ),
      transparent 46%
    ),
    rgba(255,255,255,.018)
    !important;
}


.vmine-app-body{
  padding:20px !important;
}


.vmine-head{
  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:14px;

  margin-bottom:18px;
}


.vmine-title-group{
  display:flex;
  align-items:center;

  gap:13px;

  min-width:0;
}


.vmine-title-icon{
  flex:
    0
    0
    54px;

  width:54px;
  height:54px;

  display:grid;
  place-items:center;

  border-radius:16px;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 11%,
      rgba(255,255,255,.025)
    );

  border:
    1px solid
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 20%,
      rgba(255,255,255,.06)
    );

  font-size:29px;
}


.vmine-title{
  color:
    var(--vb-text,#f4f6fb);

  font-size:20px;
  font-weight:900;

  letter-spacing:-.025em;
}


.vmine-subtitle{
  max-width:620px;

  margin-top:3px;

  color:
    var(--vb-text-soft,#929bad);

  font-size:12.5px;
  line-height:1.5;
}


.vmine-live-chip{
  flex:none;

  padding:
    7px
    10px;

  border-radius:999px;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 11%,
      transparent
    );

  border:
    1px solid
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 24%,
      transparent
    );

  color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 54%,
      white
    );

  font-size:11px;
  font-weight:850;

  text-transform:uppercase;

  letter-spacing:.06em;
}


/* ==========================================================
 * MINE SETUP
 * ========================================================== */

.vmine-setup-grid{
  display:grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0,1fr)
    );

  gap:12px;
}


.vmine-setup-grid
.vg-bet-presets{
  grid-column:
    1
    /
    -1;

  order:3;
}


.vmine-preview{
  display:grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0,1fr)
    );

  gap:8px;

  margin-top:14px;
}


.vmine-preview-item{
  min-height:62px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:
    10px
    12px;

  border:
    1px solid
    rgba(255,255,255,.055);

  border-radius:13px;

  background:
    rgba(0,0,0,.13);
}


.vmine-preview-label{
  margin-bottom:4px;

  color:
    var(--vb-text-soft,#929bad);

  font-size:10px;
  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.055em;
}


.vmine-preview-item strong{
  color:
    var(--vb-text,#f4f6fb);

  font-size:14px;
  font-weight:850;
}


/* ==========================================================
 * MINE STATS
 * ========================================================== */

.vmine-stats{
  display:grid;

  grid-template-columns:
    repeat(
      4,
      minmax(0,1fr)
    );

  gap:8px;

  margin-bottom:16px;
}


.vmine-stat{
  min-height:68px;

  display:flex;
  flex-direction:column;
  justify-content:center;

  padding:
    10px
    12px;

  border:
    1px solid
    rgba(255,255,255,.055);

  border-radius:
    var(--vg-stat-radius);

  background:
    rgba(0,0,0,.14);
}


.vmine-stat span{
  color:
    var(--vb-text-soft,#929bad);

  font-size:11px;
  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.045em;
}


.vmine-stat strong{
  margin-top:2px;

  color:
    var(--vb-text,#f4f6fb);

  font-family:
    ui-monospace,
    monospace;

  font-size:18px;
  font-weight:850;

  line-height:1.05;
}


.vmine-stat small{
  margin-top:3px;

  color:
    var(--vb-text-soft,#929bad);

  font-size:10px;
}


.vmine-stat--accent{
  border-color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 22%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 7%,
      rgba(0,0,0,.14)
    );
}


.vmine-stat--accent strong{
  color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 55%,
      white
    );
}


/* ==========================================================
 * MINE BOARD
 * ========================================================== */

.vmine-board{
  width:min(
    100%,
    540px
  );

  display:grid !important;

  grid-template-columns:
    repeat(
      5,
      minmax(0,1fr)
    );

  gap:
    var(--vg-mine-gap)
    !important;

  margin:
    0
    auto
    12px
    !important;

  padding:12px;

  border-radius:20px;

  border:
    1px solid
    rgba(255,255,255,.055);

  background:
    rgba(0,0,0,.22);

  box-shadow:
    inset 0 1px 0
    rgba(255,255,255,.025);
}


.vmine-cell{
  position:relative;

  width:100% !important;
  min-width:0;

  aspect-ratio:1;

  display:grid;
  place-items:center;

  border-radius:
    var(--vg-mine-radius)
    !important;

  border:
    1px solid
    rgba(255,255,255,.075)
    !important;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.052),
      rgba(255,255,255,.014)
    )
    !important;

  box-shadow:
    inset 0 1px 0
      rgba(255,255,255,.045),
    0 4px 12px
      rgba(0,0,0,.16);

  color:
    var(--vb-text,#f4f6fb);

  cursor:pointer;

  overflow:hidden;

  transition:
    transform .12s ease,
    border-color .12s ease,
    background .12s ease,
    box-shadow .12s ease;
}


.vmine-cell::before{
  content:"";

  position:absolute;

  inset:5px;

  border-radius:
    calc(
      var(--vg-mine-radius)
      -4px
    );

  border:
    1px solid
    rgba(255,255,255,.022);

  pointer-events:none;
}


.vmine-cell:not(:disabled):hover{
  transform:
    translateY(-2px)
    scale(1.018);

  border-color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 40%,
      transparent
    )
    !important;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 9%,
      rgba(255,255,255,.025)
    )
    !important;

  box-shadow:
    0 7px 18px rgba(0,0,0,.22),
    0 0 9px
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 12%,
      transparent
    );
}


.vmine-cell:not(:disabled):active{
  transform:
    scale(.97);
}


.vmine-cell.is-open{
  transform:none;

  cursor:default;

  border-color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 30%,
      transparent
    )
    !important;

  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 10%,
      rgba(255,255,255,.025)
    )
    !important;

  box-shadow:
    inset 0 0 16px
    rgba(0,0,0,.20);
}


.vmine-cell-core{
  position:relative;
  z-index:1;

  display:grid;
  place-items:center;

  width:32px;
  height:32px;

  border-radius:50%;

  color:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 58%,
      white
    );

  font-size:16px;
  font-weight:900;
}


.vmine-cell.is-open
.vmine-cell-core{
  background:
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 11%,
      transparent
    );

  box-shadow:
    inset 0 0 0 1px
    color-mix(
      in srgb,
      var(--vb-accent,#8b7cff) 20%,
      transparent
    );
}


/* ==========================================================
 * MINE PROGRESS / ACTION
 * ========================================================== */

.vmine-progress{
  width:min(
    100%,
    540px
  );

  display:flex;
  justify-content:space-between;

  gap:10px;

  margin:
    0
    auto
    14px;

  color:
    var(--vb-text-soft,#929bad);

  font-size:11px;
}


.vmine-progress strong{
  color:
    var(--vb-text,#f4f6fb);

  font-family:
    ui-monospace,
    monospace;
}


.vmine-action-bar{
  margin-top:16px !important;
}


/* ==========================================================
 * RESPONSIVE
 * ========================================================== */

@media (max-width:820px){

  .vg-games-app
  .vsys-grid{
    grid-template-columns:1fr;
  }


  .vg-game-body{
    padding:16px !important;
  }

}


@media (max-width:720px){

  .vmine-app-body{
    padding:
      15px
      !important;
  }


  .vmine-head{
    align-items:flex-start;
  }


  .vmine-title-icon{
    flex-basis:46px;

    width:46px;
    height:46px;

    border-radius:14px;

    font-size:24px;
  }


  .vmine-title{
    font-size:18px;
  }


  .vmine-setup-grid{
    grid-template-columns:1fr;
  }


  .vmine-setup-grid
  .vg-bet-presets{
    grid-column:auto;
  }


  .vmine-preview{
    grid-template-columns:
      repeat(
        3,
        minmax(0,1fr)
      );
  }


  .vmine-preview-item{
    min-height:56px;

    padding:
      8px
      9px;
  }


  .vmine-stats{
    grid-template-columns:
      repeat(
        2,
        minmax(0,1fr)
      );
  }


  .vmine-board{
    gap:5px !important;

    padding:7px;

    border-radius:15px;
  }


  .vmine-cell{
    border-radius:10px !important;
  }


  .vmine-cell::before{
    inset:3px;

    border-radius:8px;
  }


  .vmine-cell-core{
    width:26px;
    height:26px;

    font-size:14px;
  }


  .vmine-progress{
    flex-direction:column;

    gap:3px;
  }


  .vmine-action-bar{
    position:sticky;

    bottom:
      calc(
        8px
        +
        env(
          safe-area-inset-bottom
        )
      );

    z-index:5;

    padding:5px;

    border-radius:16px;

    background:
      color-mix(
        in srgb,
        var(--vb-surface,#10131a) 92%,
        transparent
      );

    backdrop-filter:
      blur(12px);
  }

}


/* ==========================================================
 * VIBE_GAMES_FEEDBACK_WEB_V1_BEGIN
 * ========================================================== */

.vg-game-card{
  --vg-win:
    #4ade80;

  --vg-loss:
    #fb7185;

  --vg-draw:
    #94a3b8;

  --vg-error:
    #f97316;
}


/* Request state */

.vg-game-card.is-playing{
  cursor:progress;
}


.vg-game-card.is-playing
.vg-game-config{
  opacity:.72;

  pointer-events:none;
}


[data-game-play][data-game-busy="1"]{
  position:relative;

  color:transparent !important;

  cursor:wait;
}


[data-game-play][data-game-busy="1"]::after{
  content:"";

  position:absolute;

  width:17px;
  height:17px;

  left:50%;
  top:50%;

  margin:
    -8.5px
    0
    0
    -8.5px;

  border:
    2px solid
    rgba(255,255,255,.30);

  border-top-color:
    rgba(255,255,255,.95);

  border-radius:50%;

  animation:
    vg-spinner
    .65s
    linear
    infinite;
}


/* Result base */

.vg-result-banner{
  position:relative;

  gap:9px;

  overflow:hidden;

  transition:
    color .18s ease,
    border-color .18s ease,
    background .18s ease,
    box-shadow .18s ease;
}


.vg-result-banner::before{
  flex:
    0
    0
    24px;

  width:24px;
  height:24px;

  display:grid;
  place-items:center;

  border-radius:50%;

  font-size:12px;
  font-weight:900;
}


.vg-result-banner[
  data-state="pending"
]::before{
  content:"…";

  color:
    var(
      --vb-text-soft,
      #929bad
    );

  background:
    rgba(
      255,
      255,
      255,
      .045
    );
}


.vg-result-banner[
  data-state="win"
]{
  color:
    color-mix(
      in srgb,
      var(--vg-win) 72%,
      white
    );

  border-color:
    color-mix(
      in srgb,
      var(--vg-win) 28%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vg-win) 8%,
      rgba(0,0,0,.14)
    );

  box-shadow:
    inset 0 0 24px
    color-mix(
      in srgb,
      var(--vg-win) 4%,
      transparent
    );
}


.vg-result-banner[
  data-state="win"
]::before{
  content:"✓";

  background:
    color-mix(
      in srgb,
      var(--vg-win) 14%,
      transparent
    );

  box-shadow:
    inset 0 0 0 1px
    color-mix(
      in srgb,
      var(--vg-win) 24%,
      transparent
    );
}


.vg-result-banner[
  data-state="loss"
]{
  color:
    color-mix(
      in srgb,
      var(--vg-loss) 76%,
      white
    );

  border-color:
    color-mix(
      in srgb,
      var(--vg-loss) 27%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vg-loss) 7%,
      rgba(0,0,0,.14)
    );
}


.vg-result-banner[
  data-state="loss"
]::before{
  content:"×";

  background:
    color-mix(
      in srgb,
      var(--vg-loss) 12%,
      transparent
    );

  box-shadow:
    inset 0 0 0 1px
    color-mix(
      in srgb,
      var(--vg-loss) 22%,
      transparent
    );
}


.vg-result-banner[
  data-state="draw"
]{
  color:
    var(
      --vb-text,
      #f4f6fb
    );

  border-color:
    color-mix(
      in srgb,
      var(--vg-draw) 20%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vg-draw) 5%,
      rgba(0,0,0,.14)
    );
}


.vg-result-banner[
  data-state="draw"
]::before{
  content:"=";

  color:
    var(
      --vg-draw
    );

  background:
    rgba(
      255,
      255,
      255,
      .04
    );
}


.vg-result-banner[
  data-state="error"
]{
  color:
    color-mix(
      in srgb,
      var(--vg-error) 72%,
      white
    );

  border-color:
    color-mix(
      in srgb,
      var(--vg-error) 26%,
      transparent
    );

  background:
    color-mix(
      in srgb,
      var(--vg-error) 7%,
      rgba(0,0,0,.14)
    );
}


.vg-result-banner[
  data-state="error"
]::before{
  content:"!";

  background:
    color-mix(
      in srgb,
      var(--vg-error) 12%,
      transparent
    );
}


/* Card outcome accent */

.vg-game-card[
  data-game-state="win"
]{
  border-color:
    color-mix(
      in srgb,
      var(--vg-win) 19%,
      rgba(255,255,255,.075)
    )
    !important;
}


.vg-game-card[
  data-game-state="loss"
]{
  border-color:
    color-mix(
      in srgb,
      var(--vg-loss) 14%,
      rgba(255,255,255,.075)
    )
    !important;
}


/* Motion */

.vg-result-banner.is-flash{
  animation:
    vg-result-in
    .32s
    ease-out;
}


.vg-game-card.is-result-pulse{
  animation:
    vg-card-result
    .42s
    ease-out;
}


@keyframes vg-spinner{

  to{
    transform:
      rotate(
        360deg
      );
  }

}


@keyframes vg-result-in{

  0%{
    opacity:.35;

    transform:
      translateY(
        3px
      );
  }

  100%{
    opacity:1;

    transform:
      translateY(
        0
      );
  }

}


@keyframes vg-card-result{

  0%{
    transform:
      scale(
        .996
      );
  }

  45%{
    transform:
      scale(
        1.003
      );
  }

  100%{
    transform:
      scale(
        1
      );
  }

}


@media (
  prefers-reduced-motion:
  reduce
){

  [data-game-play][
    data-game-busy="1"
  ]::after,

  .vg-result-banner.is-flash,

  .vg-game-card.is-result-pulse{
    animation:none;
  }

}


/* VIBE_GAMES_FEEDBACK_WEB_V1_END */


