.jogo-hud {
  position: absolute;
  inset: 0;
  z-index: 6;
  pointer-events: none;
}

.jogo-sala {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: auto;
  image-rendering: pixelated;
}

.jogo-sala[hidden] {
  display: none;
}

.jogo-prompt {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(28, 22, 16, 0.88);
  color: #f5f0e6;
  font: 600 14px/1.3 "Segoe UI", sans-serif;
  pointer-events: none;
  z-index: 7;
  /* Acima da barra Z/X/C/V (~90px) + folga */
  bottom: max(132px, calc(var(--hud-safe-bottom, 12px) + 118px));
  max-width: min(520px, 70vw);
  text-align: center;
}

.jogo-toast {
  position: relative;
  left: auto;
  top: auto;
  transform: none;
  margin: 0;
  padding: 7px 12px;
  border-radius: 12px;
  background: rgba(255, 248, 232, 0.94);
  color: #3a3328;
  font: 650 13px/1.3 "Segoe UI", sans-serif;
  pointer-events: none;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.28);
  max-width: 100%;
}

.acao-prompt {
  --fonte: "Segoe UI", system-ui, sans-serif;
  position: absolute;
  z-index: 7;
  left: 0;
  top: 0;
  transform: translate(-36px, -28px);
  display: flex;
  pointer-events: none;
  user-select: none;
  filter: drop-shadow(0 6px 18px rgba(0, 0, 0, 0.45));
}

.acao-prompt[hidden] {
  display: none;
}

.acao-prompt--nova .acao-prompt__teclado {
  animation: acao-prompt-entra 0.22s cubic-bezier(0.22, 1, 0.36, 1) both;
}

@keyframes acao-prompt-entra {
  from {
    opacity: 0;
    transform: translateY(8px) scale(0.94);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

.acao-prompt__corpo {
  display: flex;
  align-items: center;
}

.acao-prompt__teclado {
  position: relative;
  width: 78px;
  height: 58px;
  flex: 0 0 auto;
  padding: 4px;
  border-radius: 10px;
  background: linear-gradient(165deg, rgba(8, 12, 10, 0.72) 0%, rgba(8, 12, 10, 0.42) 100%);
  backdrop-filter: blur(5px);
  -webkit-mask-image: radial-gradient(ellipse 120% 120% at 50% 50%, #000 68%, transparent 100%);
  mask-image: radial-gradient(ellipse 120% 120% at 50% 50%, #000 68%, transparent 100%);
}

.acao-prompt__tecla {
  position: absolute;
  width: 17px;
  height: 17px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
  font-family: var(--fonte);
  font-size: 9px;
  font-weight: 700;
  line-height: 1;
  color: rgba(232, 224, 208, 0.34);
  border: 1px solid rgba(232, 224, 208, 0.14);
  background: rgba(8, 12, 10, 0.48);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
}

.acao-prompt__tecla--2 { left: 18px; top: 0; }
.acao-prompt__tecla--3 { left: 38px; top: 0; }
.acao-prompt__tecla--w { left: 8px; top: 20px; }
.acao-prompt__tecla--e { left: 28px; top: 20px; }
.acao-prompt__tecla--r { left: 48px; top: 20px; }
.acao-prompt__tecla--s { left: 18px; top: 40px; }
.acao-prompt__tecla--d { left: 38px; top: 40px; }
.acao-prompt__tecla--f { left: 58px; top: 40px; }

.acao-prompt__tecla--ativa {
  z-index: 2;
  transform: scale(1.06);
  font-size: 11px;
  font-weight: 800;
  color: #1a1408;
  border: 2px solid rgba(12, 18, 14, 0.92);
  background: linear-gradient(165deg, #f4f0e4 0%, #ddd4bc 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.65),
    0 2px 0 rgba(0, 0, 0, 0.35);
}

.acao-prompt__rotulo {
  margin-left: -4px;
  padding: 8px 18px 8px 14px;
  min-width: 72px;
  border-radius: 0 999px 999px 0;
  background: linear-gradient(180deg, #fffef8 0%, #f3efe6 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    inset 0 -1px 0 rgba(180, 168, 148, 0.28),
    0 6px 14px rgba(0, 0, 0, 0.22);
  font-family: var(--fonte);
  font-size: 18px;
  font-style: italic;
  font-weight: 650;
  color: #3a3328;
  white-space: nowrap;
}

/* toast: posicionado via .hud-toast-stack */

.jogo-dialogo,
.jogo-painel,
.jogo-roda {
  pointer-events: auto;
  background: #f6efe2;
  color: #1c1917;
  border: 2px solid #1c1917;
  border-radius: 16px;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28);
  font: 15px/1.4 "Segoe UI", sans-serif;
}

.jogo-dialogo {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 88px;
  padding: 16px 18px;
}

.jogo-dialogo__corpo {
  display: flex;
  gap: 12px;
  align-items: flex-start;
}

.jogo-dialogo__retrato {
  width: 72px;
  height: 72px;
  flex: 0 0 auto;
  object-fit: contain;
  image-rendering: pixelated;
  background: #efe4d0;
  border-radius: 10px;
}

.jogo-dialogo__nome {
  margin: 0 0 6px;
  font-weight: 700;
}

.jogo-dialogo__acoes {
  display: flex;
  gap: 8px;
  margin-top: 10px;
}

.jogo-painel {
  position: absolute;
  top: 24px;
  left: 24px;
  bottom: 88px;
  width: min(560px, calc(100% - 48px));
  overflow: auto;
  padding: 14px;
}

.jogo-painel--lado {
  left: auto;
  right: 24px;
  width: min(360px, calc(100% - 48px));
}

.jogo-painel--capsula {
  left: 50%;
  transform: translateX(-50%);
  width: min(920px, calc(100% - 32px));
  display: flex;
  flex-direction: column;
}

.capsula-topo,
.capsula-acoes,
.capsula-tipos {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}

.capsula-topo {
  margin: 8px 0;
}

.capsula-retrato {
  width: 72px;
  height: 72px;
  object-fit: contain;
  image-rendering: pixelated;
  background: #fffaf1;
  border-radius: 12px;
}

.capsula-retrato--vazio {
  display: grid;
  place-items: center;
  font-weight: 700;
}

.capsula-nome {
  margin: 0 0 4px;
  font-weight: 700;
}

.capsula-nivel input,
.capsula-busca {
  border: 1px solid #1c1917;
  border-radius: 8px;
  padding: 4px 8px;
  font: inherit;
}

.capsula-busca {
  width: 100%;
  margin-bottom: 8px;
}

.capsula-tipo {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 2px solid transparent;
  background: var(--tipo, #94a3b8);
  padding: 0;
}

.capsula-tipo.is-on {
  border-color: #1c1917;
  outline: 2px solid #fff;
}

.capsula-lista {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(168px, 1fr));
  gap: 6px;
  overflow: auto;
  min-height: 0;
}

.capsula-item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  background: #fffaf1;
  border-radius: 10px;
}

.capsula-item small {
  opacity: 0.7;
}

.capsula-resto {
  grid-column: 1 / -1;
  margin: 4px 0;
}

.jogo-roda {
  position: absolute;
  left: 50%;
  bottom: 96px;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 6px 8px;
  padding: 12px;
  width: min(420px, calc(100% - 32px));
}

.jogo-abas,
.jogo-cats,
.jogo-dialogo__acoes,
.jogo-topo {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
}

.jogo-topo h2,
.jogo-painel h3 {
  margin: 8px 0;
}

.jogo-dinheiro {
  font-weight: 700;
}

.jogo-grade {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.jogo-item {
  display: flex;
  gap: 8px;
  align-items: center;
  justify-content: space-between;
  padding: 6px 8px;
  background: #fffaf1;
  border-radius: 10px;
}

.jogo-item.is-off {
  opacity: 0.45;
}

.jogo-swatch {
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid #1c1917;
}

.jogo-hud button:not(.hotbar-hud__slot):not(.hud-utility-btn):not(.party-slot),
.jogo-painel select {
  pointer-events: auto;
  border: 1px solid #1c1917;
  background: #fff;
  border-radius: 8px;
  padding: 4px 8px;
  font: inherit;
  cursor: pointer;
}

.jogo-hud button.is-on:not(.hotbar-hud__slot):not(.party-slot):not(.hud-utility-btn),
.jogo-slot.is-on {
  background: #1c1917;
  color: #fff;
}

.jogo-mini {
  width: 144px;
  height: 144px;
  border-radius: 50%;
  pointer-events: none;
  display: block;
}

.jogo-canto {
  position: absolute;
  top: 10px;
  right: 12px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  z-index: 5;
  pointer-events: none;
}

.jogo-relogio {
  display: flex;
  align-items: baseline;
  gap: 8px;
  padding: 4px 10px;
  border-radius: 999px;
  background: rgba(15, 20, 16, 0.78);
  color: #f5f0e6;
  font: 700 13px/1 "Segoe UI", sans-serif;
  pointer-events: none;
}

.jogo-relogio [data-periodo],
.jogo-relogio [data-clima] {
  font-weight: 600;
  opacity: 0.75;
  font-size: 12px;
}

.jogo-relogio[data-periodo="noite"] b { color: #c7d2fe; }
.jogo-relogio[data-periodo="aurora"] b { color: #fdba74; }
.jogo-relogio[data-periodo="tarde"] b { color: #fb923c; }
.jogo-relogio[data-periodo="dia"] b { color: #fde68a; }

.hud-wx {
  width: 196px;
  padding: 4px 8px 6px;
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255, 254, 248, 0.92), rgba(243, 239, 230, 0.88));
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 6px 16px rgba(40, 32, 24, 0.22);
  color: #3a3328;
  pointer-events: none;
}

/* No map-dock a skin Sheikah (hud-gameplay) manda — evita cream vazando */
.hud-map-dock .hud-wx,
.hud-map-dock .hud-vento {
  background: transparent;
  box-shadow: none;
  color: inherit;
}

.hud-wx__viewport {
  position: relative;
  overflow: hidden;
  height: 28px;
}

.hud-wx__track {
  display: flex;
  gap: 4px;
  will-change: transform;
  transition: transform 0.12s linear;
}

.hud-wx__agora {
  position: absolute;
  left: 50%;
  top: 0;
  bottom: 0;
  width: 28px;
  margin-left: -14px;
  border-radius: 8px;
  box-shadow: inset 0 0 0 2px color-mix(in srgb, #65a30d 55%, transparent);
  pointer-events: none;
}

.hud-wx__slot {
  flex: 0 0 28px;
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  color: #5c5346;
  opacity: 0.55;
}

.hud-wx__slot[data-role="now"] {
  opacity: 1;
  color: #3f6212;
}

.hud-wx__slot[data-role="future"] {
  opacity: 0.8;
}

.hud-wx__slot[data-force="forte"] {
  transform: scale(1.08);
  color: #0e7490;
}

.hud-wx__icon {
  width: 18px;
  height: 18px;
}

.hud-vento {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 7.5ch;
  padding: 5px 12px 5px 8px;
  border-radius: 999px;
  background: linear-gradient(180deg, #fffef8 0%, #f3efe6 100%);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.95),
    0 4px 12px rgba(40, 32, 24, 0.18);
  color: #3a3328;
  font: 750 12px/1 "Segoe UI", sans-serif;
  pointer-events: none;
}

.hud-vento[hidden] {
  display: none !important;
}

.hud-vento__view {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  overflow: hidden;
  background: linear-gradient(180deg, #f7f3ea, #e8e0d2);
}

.hud-vento__rotor {
  width: 100%;
  height: 100%;
  position: relative;
  transform-origin: 50% 50%;
}

.hud-vento__dart {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 18px;
  height: 18px;
  margin: 0;
  color: #0e7490;
  /* posição X vem do JS (hudVento) — não animar via CSS */
}

.hud-vento__dart--echo {
  opacity: 0.18;
  color: #5c5346;
}

.hud-vento[data-force="forte"] .hud-vento__dart {
  color: #0369a1;
}

.hud-vento__kmh {
  font: inherit;
  font-variant-numeric: tabular-nums;
  color: #8a6914;
}

.jogo-mini-anel {
  position: relative;
  width: 144px;
  height: 144px;
  border-radius: 50%;
  box-shadow:
    0 0 0 3px rgba(255, 250, 241, 0.82),
    0 8px 24px rgba(0, 0, 0, 0.35);
  overflow: hidden;
}

.jogo-mini-anel__norte {
  position: absolute;
  top: 4px;
  left: 50%;
  transform: translateX(-50%);
  font: 800 11px/1 "Segoe UI", sans-serif;
  color: #fffaf1;
  text-shadow: 0 1px 2px #111;
}

.mapa-kanto {
  top: 12px;
  left: 12px;
}

.jogo-hotbar {
  position: absolute;
  left: 50%;
  bottom: 16px;
  transform: translateX(-50%);
  display: flex;
  gap: 6px;
  pointer-events: auto;
}

.jogo-slot {
  width: 64px;
  min-height: 72px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  position: relative;
  padding: 4px;
}

.jogo-slot__tecla,
.jogo-slot__qtd {
  font-size: 11px;
  opacity: 0.75;
}

.jogo-slot__tecla {
  position: absolute;
  top: 2px;
  left: 4px;
}

.jogo-slot__qtd {
  position: absolute;
  right: 4px;
  bottom: 2px;
}

.jogo-slot__icone,
.jogo-item__icone,
.jogo-icone {
  width: 36px;
  height: 36px;
  object-fit: contain;
  image-rendering: pixelated;
}

.jogo-icone--tileset {
  display: inline-block;
  flex-shrink: 0;
  overflow: hidden;
  vertical-align: middle;
  image-rendering: pixelated;
}

.jogo-icone--vazio {
  display: block;
  border-radius: 6px;
  background: rgba(28, 25, 23, 0.08);
}

.jogo-equipe {
  position: relative;
  top: auto;
  right: auto;
  display: flex;
  flex-direction: column;
  gap: 6px;
  pointer-events: auto;
  z-index: 2;
}

.jogo-mon {
  display: grid;
  grid-template-columns: 44px 1fr;
  grid-template-rows: auto 8px auto;
  column-gap: 8px;
  width: 176px;
  padding: 6px;
  text-align: left;
  background: rgba(255, 250, 241, 0.94);
}

.jogo-mon__face {
  grid-row: 1 / span 3;
  width: 44px;
  height: 44px;
  object-fit: contain;
  image-rendering: pixelated;
  background: #1c1917;
  border-radius: 6px;
}

.jogo-mon__nome {
  font-size: 13px;
  font-weight: 700;
}

.jogo-mon__nome small {
  font-weight: 600;
  opacity: 0.65;
}

.jogo-mon__barra {
  display: block;
  height: 8px;
  border-radius: 99px;
  background: #1c1917;
  overflow: hidden;
}

.jogo-mon__barra i {
  display: block;
  height: 100%;
  width: 0;
  background: #4ade80;
}

.jogo-mon__barra i[data-baixa="1"] {
  background: #f87171;
}

.jogo-mon__txt {
  font-size: 11px;
  opacity: 0.75;
}

.bag-wheel {
  position: fixed;
  inset: 0;
  z-index: 80;
  pointer-events: auto;
}

.bag-wheel[hidden] {
  display: none;
}

.bag-wheel__dim {
  position: absolute;
  inset: 0;
  background: rgba(12, 10, 8, 0.55);
}

.bag-wheel__frame {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(560px, 92vw);
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.bag-wheel__tabs {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: center;
}

.bag-wheel__tab,
.bag-wheel__item {
  border: 1px solid #1c1917;
  background: #fffaf1;
  color: #1c1917;
  border-radius: 999px;
  cursor: pointer;
  font: 600 13px/1 "Segoe UI", sans-serif;
}

.bag-wheel__tab {
  padding: 6px 12px;
}

.bag-wheel__tab.is-active {
  background: #1c1917;
  color: #fffaf1;
}

.bag-wheel__ring {
  position: relative;
  width: min(420px, 70vh);
  height: min(420px, 70vh);
  border-radius: 50%;
  background:
    radial-gradient(circle at 50% 50%, #fffaf1 0 27%, transparent 28% 38%, rgba(28, 22, 16, 0.28) 39% 100%);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.35);
}

.bag-wheel__center {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 34%;
  transform: translate(-50%, -50%);
  text-align: center;
  color: #1c1917;
  pointer-events: none;
}

.bag-wheel__center-icon {
  width: 56px;
  height: 56px;
  object-fit: contain;
  image-rendering: pixelated;
}

.bag-wheel__center-name {
  font: 700 16px/1.2 "Segoe UI", sans-serif;
}

.bag-wheel__center-desc {
  font: 600 13px/1.2 "Segoe UI", sans-serif;
  opacity: 0.7;
}

.bag-wheel__item {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 68px;
  height: 68px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  transform: translate(-50%, -50%);
}

.bag-wheel__item.is-on {
  outline: 3px solid #b45309;
  background: #fff;
}

.bag-wheel__icon {
  width: 36px;
  height: 36px;
  object-fit: contain;
  image-rendering: pixelated;
}

.bag-wheel__cmds {
  margin: 0;
  color: #fffaf1;
  font: 600 13px/1.3 "Segoe UI", sans-serif;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.65);
  order: -1;
}

.campo-menu {
  position: fixed;
  z-index: 40;
  min-width: 196px;
  max-width: 280px;
  padding: 8px;
  border-radius: 14px;
  background: rgba(28, 22, 16, 0.94);
  color: #f5f0e6;
  font: 600 14px/1.3 "Segoe UI", sans-serif;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.4);
  pointer-events: auto;
}

.campo-menu[hidden] {
  display: none;
}

.campo-menu__mon {
  display: flex;
  gap: 8px;
  align-items: center;
  padding: 6px 4px;
}

.campo-menu__mon + .campo-menu__mon {
  border-top: 1px solid rgba(245, 240, 230, 0.12);
}

.campo-menu__face {
  width: 40px;
  height: 40px;
  object-fit: contain;
  image-rendering: pixelated;
  background: rgba(255, 255, 255, 0.06);
  border-radius: 8px;
}

.campo-menu__nome {
  margin: 0 0 4px;
}

.campo-menu__acoes {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}

.campo-menu__acoes button {
  border: 0;
  border-radius: 999px;
  padding: 4px 10px;
  background: #b45309;
  color: #fffaf1;
  font: 700 12px/1.2 "Segoe UI", sans-serif;
  cursor: pointer;
}

.campo-menu__acoes button:hover {
  background: #c2410c;
}

.campo-menu__vazio {
  margin: 0;
  padding: 6px 4px;
  font-weight: 600;
}

.ganho-carta {
  position: fixed;
  inset: 0;
  z-index: 7400;
  display: grid;
  place-items: center;
  background: rgba(12, 10, 8, 0.55);
  cursor: pointer;
}

.ganho-carta__folha {
  position: relative;
  width: min(420px, calc(100vw - 48px));
  padding: 28px 32px 22px;
  border-radius: 18px;
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(255, 244, 214, 0.95), rgba(244, 228, 196, 0.92) 42%, rgba(214, 184, 132, 0.94));
  box-shadow:
    0 0 0 1px rgba(255, 248, 230, 0.7),
    0 18px 50px rgba(0, 0, 0, 0.45);
  text-align: center;
  color: #3a2a14;
  animation: ganho-carta-entra 0.38s cubic-bezier(0.16, 1, 0.3, 1);
}

.ganho-carta__olho {
  margin: 0 0 14px;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  font: 700 12px/1 "Segoe UI", sans-serif;
  color: #8a6914;
}

.ganho-carta__icone {
  display: grid;
  place-items: center;
  width: 112px;
  height: 112px;
  margin: 0 auto 4px;
  background: radial-gradient(circle, rgba(255, 236, 179, 0.55) 0%, rgba(255, 236, 179, 0) 70%);
}

.ganho-carta__sprite {
  width: 72px;
  height: 72px;
  object-fit: contain;
  image-rendering: pixelated;
  filter: drop-shadow(0 6px 14px rgba(58, 42, 20, 0.35));
}

.ganho-carta__nome {
  margin: 0;
  font: 700 32px/1.1 Palatino, "Palatino Linotype", Georgia, serif;
}

.ganho-carta__qtd {
  margin: 6px 0 0;
  min-height: 1.2em;
  font: 750 18px/1 "Segoe UI", sans-serif;
  color: #8a6914;
}

.ganho-carta__desc {
  margin: 10px 0 0;
  font: 500 15px/1.4 "Segoe UI", sans-serif;
  color: #5c4630;
}

.ganho-carta__continua {
  margin: 18px 0 0;
  font: 600 12px/1 "Segoe UI", sans-serif;
  letter-spacing: 0.04em;
  color: #8a6914;
  animation: ganho-carta-pulsa 1.4s ease-in-out infinite;
}

.ganho-carta__brilhos {
  position: absolute;
  width: 280px;
  height: 280px;
  pointer-events: none;
}

.ganho-carta__brilhos span {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 8px;
  height: 8px;
  margin: -4px;
  border-radius: 50%;
  background: #fff6d4;
  box-shadow: 0 0 10px #ffe08a;
  transform: rotate(calc(var(--i) * 45deg)) translateY(-120px);
  animation: ganho-faisca 1.1s ease-out both;
  animation-delay: calc(var(--i) * 0.04s);
}

@keyframes ganho-carta-entra {
  from {
    opacity: 0;
    transform: translateY(16px) scale(0.92);
  }
  to {
    opacity: 1;
    transform: none;
  }
}

@keyframes ganho-carta-pulsa {
  50% {
    opacity: 0.45;
  }
}

@keyframes ganho-faisca {
  from {
    opacity: 0;
    transform: rotate(calc(var(--i) * 45deg)) translateY(-40px) scale(0.4);
  }
  to {
    opacity: 1;
    transform: rotate(calc(var(--i) * 45deg)) translateY(-120px) scale(1);
  }
}

.item-obtain-dock {
  position: relative;
  right: auto;
  bottom: auto;
  z-index: 1;
  pointer-events: none;
  width: 100%;
}

.item-obtain-toast {
  min-width: 168px;
  max-width: 280px;
  padding: 8px 10px;
  border-radius: 14px;
  background: rgba(255, 248, 232, 0.94);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.28);
}

.item-obtain-toast__list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 6px;
}

.item-obtain-toast__row {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  opacity: 0;
  transform: translateY(6px);
  transition: opacity 0.16s ease, transform 0.16s ease;
}

.item-obtain-toast__row.is-visible {
  opacity: 1;
  transform: none;
}

.item-obtain-toast__icon {
  width: 28px;
  height: 28px;
  display: grid;
  place-items: center;
}

.item-obtain-toast__sprite {
  width: 28px;
  height: 28px;
  object-fit: contain;
  image-rendering: pixelated;
}

.item-obtain-toast__name {
  min-width: 0;
  color: #3a3328;
  font: 650 14px/1.2 "Segoe UI", sans-serif;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.item-obtain-toast__qty {
  color: #8a6914;
  font: 750 15px/1 "Segoe UI", sans-serif;
  font-variant-numeric: tabular-nums;
}

.item-obtain-toast__row.is-bump .item-obtain-toast__qty {
  animation: item-obtain-qty-bump 0.28s ease;
}

@keyframes item-obtain-qty-bump {
  40% {
    transform: scale(1.28);
  }
}
