
:root {
  --pkl-gold: var(--color-gold, #b8860b);
  --pkl-on-gold: var(--color-on-gold, #1a1d26);
  --pkl-gold-2: color-mix(in srgb, var(--pkl-gold) 62%, #7a5500);
  --pkl-gold-bg: color-mix(in srgb, var(--pkl-gold) 12%, transparent);
  --pkl-gold-bd: color-mix(in srgb, var(--pkl-gold) 45%, transparent);
  --pkl-red: var(--bh-danger, #ED8A8F);
  --pkl-red-bg: var(--bh-danger-soft, rgba(237,138,143,.12));
  --pkl-grn: var(--bh-green, #57C29A);
  --pkl-grn-bg: color-mix(in srgb, var(--bh-green, #57C29A) 14%, transparent);
  --pkl-neu-bg: color-mix(in srgb, var(--bh-ink, #1C2540) 5%, transparent);
  --pkl-neu-bd: var(--bh-line, #E2E8F2);
  --pkl-ink-soft: color-mix(in srgb, var(--bh-ink, #1C2540) 55%, transparent);
}
[data-theme="dark"] {
  --pkl-gold-2: color-mix(in srgb, var(--pkl-gold) 70%, #b98900);
  --pkl-neu-bg: rgba(255,255,255,.06);
  --pkl-neu-bd: rgba(255,255,255,.14);
  --pkl-ink-soft: rgba(255,255,255,.62);
}

[data-wtype^="pkl-"] {
  font-family: var(--bh-display, Inter, system-ui, sans-serif); color: var(--bh-ink);
  display: flex; flex-direction: column; min-height: 0; height: 100%;
}
.pkl-head {
  display: flex; align-items: center; justify-content: space-between; gap: .75rem;
  padding-bottom: .5rem; margin-bottom: .7rem; position: relative; flex: none;
  border-bottom: 1px solid var(--bh-line);
}
.pkl-head::after {
  content: ''; position: absolute; left: 0; bottom: -1px; width: clamp(24px, 8cqi, 46px); height: 2px;
  background: linear-gradient(90deg, var(--pkl-gold), transparent); border-radius: 2px;
}
.pkl-title {
  font-size: clamp(.62rem, 1.6cqi, .74rem); letter-spacing: .14em; text-transform: uppercase;
  color: var(--bh-ink-2); font-weight: 700;
}
.pkl-meta {
  font-size: clamp(.6rem, 1.5cqi, .72rem); color: var(--pkl-gold); font-weight: 700;
  font-variant-numeric: tabular-nums; white-space: nowrap; letter-spacing: .01em;
}
.pkl-sub { color: var(--bh-ink-3); font-size: clamp(.62rem, 1.7cqi, .74rem); margin: .6rem 0 0; line-height: 1.45; flex: none; }

.pkl-empty { color: var(--bh-ink-3); font-size: clamp(.72rem, 2cqi, .88rem); padding: 1rem 0; text-align: center; }
.pkl-empty-rich {
  flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center;
  gap: .5rem; text-align: center; padding: 1rem .5rem; min-height: 0;
}
.pkl-empty-ic {
  width: clamp(30px, 11cqi, 56px); height: auto; color: var(--pkl-gold); opacity: .9;
  filter: drop-shadow(0 3px 10px color-mix(in srgb, var(--pkl-gold) 30%, transparent));
  animation: pkl-float 3.4s ease-in-out infinite;
}
.pkl-empty-t {
  font-size: clamp(.82rem, 2.4cqi, 1.02rem); font-weight: 750; letter-spacing: -.01em; color: var(--bh-ink);
}
.pkl-empty-s { font-size: clamp(.64rem, 1.8cqi, .8rem); color: var(--bh-ink-3); max-width: 26ch; line-height: 1.4; }
.pkl-e-dice .pkl-empty-ic { animation: pkl-wobble 3s ease-in-out infinite; }
.pkl-e-feed .pkl-empty-ic { animation: pkl-pulse 2s ease-in-out infinite; }
@keyframes pkl-float  { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@keyframes pkl-wobble { 0%,100% { transform: rotate(-6deg); } 50% { transform: rotate(6deg); } }
@keyframes pkl-pulse  { 0%,100% { opacity: .55; } 50% { opacity: 1; } }

.pkl-brand { display: inline-flex; align-items: center; gap: .5rem; }
.pkl-brand svg { width: clamp(16px, 3.2cqi, 24px); height: auto; display: block; color: var(--bh-ink); }
.pkl-brand b { font-weight: 800; letter-spacing: -.02em; font-size: clamp(.78rem, 2.2cqi, 1rem); }
.pkl-brand i { font-style: normal; color: var(--bh-ink-3); font-size: clamp(.6rem, 1.7cqi, .76rem); }
.pkl-mark { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; flex: 1; min-height: 0; }
.pkl-mark-txt { display: flex; flex-direction: column; gap: .3rem; margin-right: auto; }
.pkl-qr {
  width: clamp(64px, 15cqi, 108px); height: auto; display: block; flex: none;
  background: #fff; padding: 6px; border-radius: 10px;
  box-shadow: 0 6px 18px -8px rgba(0,0,0,.5), 0 0 0 1px var(--pkl-gold-bd);
}
.pkl-join { font-size: clamp(.72rem, 2.3cqi, 1rem); font-weight: 800; letter-spacing: -.01em;
  color: var(--pkl-gold); font-variant-numeric: tabular-nums; }
.pkl-mark .pkl-meta { align-self: center; padding: .3em .7em; border-radius: 999px;
  background: var(--pkl-gold-bg); border: 1px solid var(--pkl-gold-bd); }

.pkl-table {
  display: flex; flex-wrap: wrap; align-items: center; align-content: center; justify-content: center;
  gap: clamp(.4rem, 1.4cqi, .85rem) clamp(.45rem, 1.5cqi, .9rem); flex: 1; min-height: 0; padding: .4rem 0;
}
.pkl-gift {
  position: relative; flex: none; align-self: center;
  width: clamp(38px, 8cqi, 104px); height: clamp(46px, 9.6cqi, 124px);
  border-radius: 6px 6px 11px 11px; display: grid; place-items: end center;
  padding-bottom: clamp(.24rem, 1cqi, .7rem); box-sizing: border-box;
  font-variant-numeric: tabular-nums;
  border: 1.5px solid var(--pkl-neu-bd);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--pkl-neu-bd) 55%, transparent) 0 18%,
                    transparent 18% 100%),
    var(--pkl-neu-bg);
  box-shadow: 0 5px 12px -7px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.06);
}
.pkl-gift::before {
  content: ''; position: absolute; top: 0; bottom: 0; left: 50%; width: 16%; transform: translateX(-50%);
  background: color-mix(in srgb, var(--pkl-neu-bd) 50%, transparent);
}
.pkl-bow {
  position: absolute; top: -14%; left: 50%; transform: translateX(-50%);
  width: 58%; height: auto; color: var(--pkl-neu-bd); z-index: 2;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,.25));
}
.pkl-gift-no {
  position: relative; z-index: 3; font-weight: 800; color: var(--bh-ink);
  font-size: clamp(.72rem, 2.6cqi, 1.7rem);
  text-shadow: 0 1px 2px color-mix(in srgb, var(--bh-card-glass, #111) 60%, transparent);
}
.pkl-gift.free {
  border-color: var(--pkl-gold-bd);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--pkl-gold) 55%, transparent) 0 18%, transparent 18% 100%),
    color-mix(in srgb, var(--pkl-gold) 16%, transparent);
  box-shadow: 0 6px 16px -8px color-mix(in srgb, var(--pkl-gold) 55%, transparent), inset 0 1px 0 rgba(255,255,255,.1);
  animation: pkl-gift-breathe 2.8s ease-in-out infinite;
}
.pkl-gift.free::before { background: color-mix(in srgb, var(--pkl-gold) 55%, transparent); }
.pkl-gift.free .pkl-bow { color: var(--pkl-gold); }
.pkl-gift.free .pkl-gift-no { color: var(--pkl-gold); text-shadow: none; }
@keyframes pkl-gift-breathe {
  0%,100% { box-shadow: 0 6px 16px -8px color-mix(in srgb, var(--pkl-gold) 45%, transparent), inset 0 1px 0 rgba(255,255,255,.1); }
  50%     { box-shadow: 0 8px 22px -6px color-mix(in srgb, var(--pkl-gold) 70%, transparent), inset 0 1px 0 rgba(255,255,255,.14); }
}
.pkl-gift.owned {
  border-color: color-mix(in srgb, var(--pkl-neu-bd) 75%, transparent);
  background:
    linear-gradient(180deg, color-mix(in srgb, var(--bh-ink-3) 45%, transparent) 0 18%, transparent 18% 100%),
    color-mix(in srgb, var(--bh-ink-3) 10%, var(--pkl-neu-bg));
}
.pkl-gift.owned .pkl-bow { color: color-mix(in srgb, var(--bh-ink-3) 65%, transparent); }
.pkl-gift.owned .pkl-gift-no { color: var(--bh-ink-2); }
.pkl-gift.owned::before { background: color-mix(in srgb, var(--bh-ink-3) 30%, transparent); }
.pkl-gift.lock { border-color: var(--pkl-grn); background:
  linear-gradient(180deg, color-mix(in srgb, var(--pkl-grn) 55%, transparent) 0 18%, transparent 18% 100%), var(--pkl-grn-bg); }
.pkl-gift.lock .pkl-bow, .pkl-gift.lock .pkl-gift-no { color: var(--pkl-grn); }
.pkl-gift.lock::before { background: color-mix(in srgb, var(--pkl-grn) 45%, transparent); }
.pkl-gift.hot { border-color: var(--pkl-red); background:
  linear-gradient(180deg, color-mix(in srgb, var(--pkl-red) 55%, transparent) 0 18%, transparent 18% 100%), var(--pkl-red-bg);
  box-shadow: 0 6px 16px -8px color-mix(in srgb, var(--pkl-red) 60%, transparent); animation: pkl-shake .5s ease-in-out 2; }
.pkl-gift.hot .pkl-bow, .pkl-gift.hot .pkl-gift-no { color: var(--pkl-red); }
.pkl-gift.hot::before { background: color-mix(in srgb, var(--pkl-red) 50%, transparent); }
@keyframes pkl-shake { 0%,100% { transform: translateX(0); } 25% { transform: translateX(-2px) rotate(-1.5deg); } 75% { transform: translateX(2px) rotate(1.5deg); } }
.pkl-gift b {
  position: absolute; bottom: -6px; right: -6px; width: clamp(15px, 3.6cqi, 20px); aspect-ratio: 1; border-radius: 50%;
  background: var(--bh-surface, #10141f); border: 1.5px solid var(--pkl-neu-bd); font-size: clamp(.42rem, 1.2cqi, .56rem);
  display: grid; place-items: center; font-weight: 800; color: var(--bh-ink-2); z-index: 4;
}

.pkl-rows { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.pkl-row, .pkl-feed, .pkl-award {
  display: flex; align-items: center; gap: clamp(.6rem, 1.8cqi, 1.1rem);
  flex: 1 1 0; min-height: 0; padding: clamp(.3rem, 1cqi, .7rem) .1rem;
  border-bottom: 1px solid var(--bh-line); font-size: clamp(.8rem, 2.7cqi, 1.4rem);
}
.pkl-row:last-child, .pkl-feed:last-child, .pkl-award:last-child { border-bottom: 0; }
.pkl-pos {
  color: var(--bh-ink-3); width: clamp(1.4rem, 3.4cqi, 2.2rem); text-align: center; font-variant-numeric: tabular-nums;
  font-size: clamp(.7rem, 2cqi, 1.15rem); font-weight: 800; flex: none;
}
.pkl-row:nth-child(-n+3) .pkl-pos {
  aspect-ratio: 1; width: clamp(1.5rem, 4cqi, 2.6rem); border-radius: 50%; display: grid; place-items: center;
  box-shadow: inset 0 0 0 2px currentColor; color: var(--pkl-gold);
}
.pkl-row:nth-child(1) .pkl-pos { color: var(--pkl-gold); background: color-mix(in srgb, var(--pkl-gold) 16%, transparent); }
.pkl-row:nth-child(2) .pkl-pos { color: #b7c0d0; background: color-mix(in srgb, #b7c0d0 14%, transparent); }
.pkl-row:nth-child(3) .pkl-pos { color: #cf9060; background: color-mix(in srgb, #cf9060 15%, transparent); }
.pkl-nm { flex: 1; font-weight: 700; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; letter-spacing: -.01em; }
.pkl-ct {
  font-size: clamp(1.05rem, 4.2cqi, 2.6rem); font-weight: 800; color: var(--pkl-gold);
  font-variant-numeric: tabular-nums; letter-spacing: -.03em; line-height: 1;
}
.pkl-ct.dim { color: var(--bh-ink-3); }
.pkl-dl { color: var(--bh-ink-3); font-size: clamp(.62rem, 1.7cqi, .95rem); font-variant-numeric: tabular-nums; min-width: 2.4rem; text-align: right; }

.pkl-av {
  width: clamp(26px, 7cqi, 58px); aspect-ratio: 1; border-radius: 50%; display: grid; place-items: center;
  flex: none; font-size: clamp(.55rem, 2.2cqi, 1.15rem); font-weight: 800;
  background: var(--pkl-neu-bg); border: 1.5px solid var(--pkl-neu-bd); color: var(--bh-ink);
}
.pkl-av.r { background: var(--pkl-red-bg); border-color: var(--pkl-red); color: var(--pkl-red); }
.pkl-av.g { background: var(--pkl-gold-bg); border-color: var(--pkl-gold-bd); color: var(--pkl-gold); }
.pkl-row:nth-child(1) .pkl-av { border-color: var(--pkl-gold-bd); background: var(--pkl-gold-bg); color: var(--pkl-gold); }
.pkl-row:nth-child(1) .pkl-nm { color: var(--bh-ink); }

.pkl-tag {
  font-size: clamp(.55rem, 1.6cqi, .82rem); letter-spacing: .07em; text-transform: uppercase;
  padding: .28em .6em; border-radius: 6px; font-weight: 700; flex: none;
}
.pkl-tag.six { background: var(--pkl-gold-bg); color: var(--pkl-gold); box-shadow: inset 0 0 0 1px var(--pkl-gold-bd); }
.pkl-tag.st  { background: var(--pkl-red-bg);  color: var(--pkl-red); }
.pkl-tag.cl  { background: var(--pkl-grn-bg);  color: var(--pkl-grn); }
.pkl-tag.ms  { background: var(--pkl-neu-bg);  color: var(--bh-ink-3); }
.pkl-feed span:not(.pkl-tag) { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.pkl-nem { display: grid; grid-template-columns: auto 1fr auto; gap: .3rem .7rem; align-items: center;
  flex: 1 1 0; min-height: 0; align-content: center;
  padding: clamp(.4rem, 1.2cqi, .7rem) 0; border-bottom: 1px solid var(--bh-line); font-size: clamp(.75rem, 2.3cqi, 1.15rem); }
.pkl-nem:last-child { border-bottom: 0; }
.pkl-pair { display: flex; align-items: center; gap: .5rem; min-width: 0; font-weight: 700; }
.pkl-arrow { color: var(--pkl-red); font-size: .72em; text-align: center; white-space: nowrap;
  text-transform: uppercase; letter-spacing: .06em; font-weight: 800; }
.pkl-nemsub { grid-column: 1/-1; color: var(--bh-ink-3); font-size: .72em; }

.pkl-award .pkl-av { align-self: center; }
.pkl-lbl { display: block; font-size: clamp(.56rem, 1.7cqi, .95rem); letter-spacing: .1em;
  text-transform: uppercase; color: var(--pkl-gold); font-weight: 800; }
.pkl-val { font-weight: 750; }
.pkl-dt { color: var(--bh-ink-3); font-size: .8em; }

.pkl-dice { display: flex; gap: clamp(.3rem, 1cqi, .6rem); justify-content: center; align-items: center;
  flex: 1; min-height: 0; padding: .4rem 0; }
.pkl-die {
  --pkl-s: clamp(40px, 15cqi, 118px);
  width: var(--pkl-s); height: var(--pkl-s); box-sizing: border-box; display: grid;
  grid-template: repeat(3, 1fr) / repeat(3, 1fr);
  gap: calc(var(--pkl-s) * .07); padding: calc(var(--pkl-s) * .12);
  border-radius: calc(var(--pkl-s) * .2); background: linear-gradient(155deg, #F6EFDD, #E7DBC0);
  border: 1px solid #C9B98F; box-shadow: 0 4px 10px -5px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.5);
  flex: none;
}
.pkl-die i { border-radius: 50%; background: #1A1206; }
.pkl-die i.o { background: transparent; }
.pkl-die.win {
  background: linear-gradient(155deg, var(--pkl-gold), var(--pkl-gold-2));
  border-color: color-mix(in srgb, var(--pkl-gold) 70%, #000);
  box-shadow: 0 0 18px color-mix(in srgb, var(--pkl-gold) 55%, transparent), inset 0 1px 0 rgba(255,255,255,.3);
  animation: pkl-pop .45s ease-out;
}
.pkl-die.win i:not(.o) { background: var(--pkl-on-gold); }
@keyframes pkl-pop { 0% { transform: scale(.7) rotate(-8deg); } 60% { transform: scale(1.12) rotate(3deg); } 100% { transform: scale(1); } }
.pkl-verdict { text-align: center; margin: .3rem 0 0; font-size: clamp(.85rem, 3cqi, 1.7rem); color: var(--bh-ink-2); flex: none; }
.pkl-verdict.win { color: var(--pkl-gold); font-weight: 750; }
.pkl-verdict.win b { font-weight: 800; }

.pkl-timer-wrap { flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; min-height: 0; gap: .4rem; }
.pkl-remain {
  font-size: clamp(1.3rem, 6.5cqi, 3.4rem); font-weight: 800; letter-spacing: -.02em;
  line-height: 1.08; margin: 0; color: var(--pkl-gold); text-wrap: balance;
  text-shadow: 0 2px 22px color-mix(in srgb, var(--pkl-gold) 40%, transparent);
}
.pkl-remain.urgent { color: var(--pkl-red); animation: pkl-pulse 1.1s ease-in-out infinite;
  text-shadow: 0 2px 16px color-mix(in srgb, var(--pkl-red) 45%, transparent); }


.pkl-lb { display: flex; flex-direction: column; flex: 1; min-height: 0; }
.pkl-lbrow {
  display: flex; align-items: center; gap: clamp(.5rem, 1.7cqi, 1.05rem);
  flex: 1 1 0; min-height: 0; padding: clamp(.28rem, .9cqi, .6rem) .1rem;
  border-bottom: 1px solid var(--bh-line);
}
.pkl-lbrow:last-child { border-bottom: 0; }
.pkl-lbav { position: relative; flex: none; display: grid; place-items: center; }
.pkl-crown {
  position: absolute; top: -48%; left: 50%; transform: translateX(-50%) rotate(-7deg);
  width: clamp(15px, 3.4cqi, 28px); height: auto; color: var(--pkl-gold); z-index: 2;
  filter: drop-shadow(0 1px 3px color-mix(in srgb, var(--pkl-gold) 55%, transparent));
  animation: pkl-crown-bob 3s ease-in-out infinite;
}
@keyframes pkl-crown-bob { 0%, 100% { transform: translateX(-50%) rotate(-7deg) translateY(0); } 50% { transform: translateX(-50%) rotate(-7deg) translateY(-2px); } }
.pkl-medal {
  flex: none; width: clamp(1.5rem, 4cqi, 2.6rem); aspect-ratio: 1; border-radius: 50%;
  display: grid; place-items: center; font-weight: 800; font-variant-numeric: tabular-nums;
  font-size: clamp(.7rem, 2cqi, 1.15rem); box-shadow: inset 0 0 0 2px currentColor;
}
.pkl-medal.m1 { color: var(--pkl-gold); background: color-mix(in srgb, var(--pkl-gold) 18%, transparent); }
.pkl-medal.m2 { color: #b7c0d0; background: color-mix(in srgb, #b7c0d0 14%, transparent); }
.pkl-medal.m3 { color: #cf9060; background: color-mix(in srgb, #cf9060 16%, transparent); }
.pkl-lbmain { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: clamp(.22rem, .8cqi, .5rem); }
.pkl-lbtop { display: flex; align-items: baseline; justify-content: space-between; gap: .6rem; }
.pkl-lbtop .pkl-nm { flex: 1; }
.pkl-bar { position: relative; height: clamp(7px, 1.8cqi, 15px); border-radius: 99px;
  background: color-mix(in srgb, var(--bh-ink-3) 20%, transparent); overflow: hidden; }
.pkl-bar-fill {
  position: relative; display: block; height: 100%; border-radius: 99px; transition: width .6s cubic-bezier(.2, .7, .3, 1);
  background: linear-gradient(90deg, color-mix(in srgb, var(--pkl-gold) 40%, transparent), var(--pkl-gold));
  box-shadow: 0 0 12px color-mix(in srgb, var(--pkl-gold) 45%, transparent);
}
.pkl-lbrow.lead .pkl-lbav > .pkl-av { border-color: var(--pkl-gold-bd); background: color-mix(in srgb, var(--pkl-gold) 20%, transparent); color: var(--pkl-gold);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--pkl-gold) 35%, transparent), 0 0 16px color-mix(in srgb, var(--pkl-gold) 30%, transparent); }
.pkl-lbrow.lead .pkl-nm { color: var(--bh-ink); font-weight: 800; }
.pkl-lbrow.lead .pkl-ct { font-size: clamp(1.25rem, 5cqi, 3rem); }
.pkl-lbrow.lead .pkl-bar-fill { background: linear-gradient(90deg, var(--pkl-gold-2), var(--pkl-gold)); }
.pkl-lbrow.lead .pkl-bar-fill::after {
  content: ''; position: absolute; inset: 0; border-radius: 99px;
  background: linear-gradient(105deg, transparent 40%, rgba(255, 255, 255, .55) 50%, transparent 60%);
  transform: translateX(-120%); animation: pkl-shine 2.6s ease-in-out infinite;
}
@keyframes pkl-shine { 0% { transform: translateX(-120%); } 55%, 100% { transform: translateX(220%); } }

.pkl-gift.free::after {
  content: ''; position: absolute; inset: 0; border-radius: inherit; pointer-events: none; z-index: 1;
  background: linear-gradient(112deg, transparent 45%, rgba(255, 255, 255, .26) 50%, transparent 55%);
  background-size: 260% 100%; background-repeat: no-repeat; background-position: 210% 0;
  animation: pkl-gift-shine 5s ease-in-out infinite;
}
@keyframes pkl-gift-shine { 0%, 34% { background-position: 210% 0; } 62%, 100% { background-position: -110% 0; } }

.pkl-dice { position: relative; isolation: isolate; }
.pkl-dice::before {
  content: ''; position: absolute; inset: -60% -30%; z-index: -1; pointer-events: none;
  background: conic-gradient(from 0deg,
    transparent 0 14deg, color-mix(in srgb, var(--pkl-gold) 10%, transparent) 22deg, transparent 40deg,
    transparent 90deg, color-mix(in srgb, var(--pkl-gold) 8%, transparent) 98deg, transparent 116deg,
    transparent 180deg, color-mix(in srgb, var(--pkl-gold) 10%, transparent) 188deg, transparent 206deg,
    transparent 270deg, color-mix(in srgb, var(--pkl-gold) 8%, transparent) 278deg, transparent 296deg);
  animation: pkl-spin 14s linear infinite;
}
.pkl-dice::after {
  content: ''; position: absolute; inset: -20% 0; z-index: -1; pointer-events: none;
  background: radial-gradient(55% 65% at 50% 48%, color-mix(in srgb, var(--pkl-gold) 15%, transparent), transparent 72%);
}
@keyframes pkl-spin { to { transform: rotate(360deg); } }
.pkl-die { position: relative; z-index: 1; animation: pkl-die-idle 3.2s ease-in-out infinite; }
.pkl-die:nth-child(2) { animation-delay: -.5s; }
.pkl-die:nth-child(3) { animation-delay: -1s; }
.pkl-die:nth-child(4) { animation-delay: -1.6s; }
@keyframes pkl-die-idle { 0%, 100% { transform: translateY(0) rotate(-1.5deg); } 50% { transform: translateY(-7%) rotate(1.5deg); } }
.pkl-die.win { animation: pkl-die-idle 3.2s ease-in-out infinite, pkl-die-winglow 1.4s ease-in-out infinite; }
@keyframes pkl-die-winglow {
  0%, 100% { box-shadow: 0 0 16px color-mix(in srgb, var(--pkl-gold) 50%, transparent), inset 0 1px 0 rgba(255,255,255,.3); }
  50% { box-shadow: 0 0 34px color-mix(in srgb, var(--pkl-gold) 85%, transparent), inset 0 1px 0 rgba(255,255,255,.4); }
}
.pkl-verdict.win { animation: pkl-verdict-pulse 1.6s ease-in-out infinite; }
@keyframes pkl-verdict-pulse { 0%, 100% { opacity: .85; transform: scale(1); } 50% { opacity: 1; transform: scale(1.04); } }
[data-wtype="pkl-terning"]:has(.pkl-die.win) { animation: pkl-winflash 1.2s ease-out; }
@keyframes pkl-winflash {
  0% { box-shadow: inset 0 0 0 0 transparent; }
  25% { box-shadow: inset 0 0 120px color-mix(in srgb, var(--pkl-gold) 40%, transparent); }
  100% { box-shadow: inset 0 0 0 0 transparent; }
}

.pkl-gift.free { animation: pkl-gift-breathe 2.8s ease-in-out infinite, pkl-gift-bob 4.5s ease-in-out infinite; }
.pkl-gift.free:nth-child(2n) { animation-delay: 0s, -1.2s; }
.pkl-gift.free:nth-child(3n) { animation-delay: 0s, -2.4s; }
@keyframes pkl-gift-bob { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7%); } }

.pkl-remain { animation: pkl-timer-beat 2.6s ease-in-out infinite; }
@keyframes pkl-timer-beat {
  0%, 100% { text-shadow: 0 2px 20px color-mix(in srgb, var(--pkl-gold) 30%, transparent); transform: scale(1); }
  50% { text-shadow: 0 2px 44px color-mix(in srgb, var(--pkl-gold) 65%, transparent); transform: scale(1.025); }
}

.pkl-feed { padding-left: clamp(.55rem, 1.6cqi, 1rem); border-left: clamp(3px, .8cqi, 5px) solid transparent; }
.pkl-feed.f-st { border-left-color: var(--pkl-red); }
.pkl-feed.f-six { border-left-color: var(--pkl-gold); }
.pkl-feed.f-cl { border-left-color: var(--pkl-grn); }
.pkl-feed.f-ms { border-left-color: color-mix(in srgb, var(--bh-ink-3) 45%, transparent); }

.pkl-award:first-child .pkl-av { border-color: var(--pkl-gold-bd); background: var(--pkl-gold-bg); color: var(--pkl-gold);
  box-shadow: 0 0 14px color-mix(in srgb, var(--pkl-gold) 25%, transparent); }

.pkl-insp-head { display: flex; align-items: center; gap: .6rem; margin-bottom: .7rem; padding-bottom: .6rem;
  border-bottom: 1px solid color-mix(in srgb, var(--color-gold, #b8860b) 28%, transparent); }
.pkl-insp-badge { flex: none; width: 30px; height: 30px; border-radius: 9px; display: grid; place-items: center;
  background: color-mix(in srgb, var(--color-gold, #b8860b) 16%, transparent); color: var(--color-gold, #b8860b);
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--color-gold, #b8860b) 35%, transparent); font-size: 1rem; }
.pkl-insp-h { display: flex; flex-direction: column; line-height: 1.2; }
.pkl-insp-h b { font-size: .82rem; font-weight: 800; letter-spacing: -.01em; color: var(--bh-ink); }
.pkl-insp-h span { font-size: .66rem; color: var(--bh-ink-3); }
.pkl-insp-prev { display: flex; align-items: center; gap: .5rem; margin-top: .7rem; flex-wrap: wrap; }
.pkl-insp-st { font-size: .6rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase;
  padding: .22em .6em; border-radius: 999px; background: color-mix(in srgb, var(--bh-ink-3) 15%, transparent); color: var(--bh-ink-2); }
.pkl-insp-st.on { background: color-mix(in srgb, var(--bh-green, #57C29A) 18%, transparent); color: var(--bh-green, #57C29A); }
.pkl-insp-st.done { background: color-mix(in srgb, var(--color-gold, #b8860b) 16%, transparent); color: var(--color-gold, #b8860b); }
.pkl-insp-gifts { display: inline-flex; align-items: center; gap: .3em; font-size: .68rem; font-weight: 650; color: var(--bh-ink-2); }
.pkl-insp-gifts .ic { color: var(--color-gold, #b8860b); }

.pkl-flash {
  position: fixed; inset: 0; z-index: 90000; pointer-events: none; overflow: hidden;
  display: flex; align-items: flex-start; justify-content: center; padding-top: 6vh;
}
.pkl-flash-card {
  position: relative; z-index: 2; display: flex; flex-direction: column; align-items: center; gap: .15em;
  padding: clamp(.8rem, 2vw, 1.4rem) clamp(1.4rem, 4vw, 3rem); border-radius: 20px; text-align: center;
  transform: translateY(-180%); opacity: 0;
  transition: transform .55s cubic-bezier(.2, .85, .3, 1.25), opacity .4s ease;
  background: linear-gradient(180deg, color-mix(in srgb, var(--pkl-gold) 90%, #fff), var(--pkl-gold));
  color: var(--pkl-on-gold);
  box-shadow: 0 22px 60px -12px rgba(0, 0, 0, .6), 0 0 70px color-mix(in srgb, var(--pkl-gold) 45%, transparent);
}
.pkl-flash-steal .pkl-flash-card {
  background: linear-gradient(180deg, color-mix(in srgb, var(--pkl-red) 90%, #fff), var(--pkl-red)); color: #2a0d0f;
  box-shadow: 0 22px 60px -12px rgba(0, 0, 0, .6), 0 0 70px color-mix(in srgb, var(--pkl-red) 50%, transparent);
}
.pkl-flash.in .pkl-flash-card { transform: translateY(0); opacity: 1; }
.pkl-flash.out .pkl-flash-card { transform: translateY(-180%); opacity: 0; }
.pkl-flash-who { font-size: clamp(1.5rem, 4.4vw, 3.4rem); font-weight: 900; letter-spacing: -.02em; line-height: 1; }
.pkl-flash-act { font-size: clamp(.9rem, 2.2vw, 1.6rem); font-weight: 750; opacity: .82; }
.pkl-flash-conf { position: absolute; inset: 0; z-index: 1; }
.pkl-flash-conf i {
  position: absolute; top: -6%; width: clamp(8px, .9vw, 14px); height: clamp(12px, 1.4vw, 20px); border-radius: 2px;
  background: var(--pkl-gold); opacity: .95; transform: rotate(var(--rot, 0deg));
  animation: pkl-flash-fall linear forwards;
}
.pkl-flash-conf i:nth-child(3n) { background: #EFE7D6; }
.pkl-flash-conf i:nth-child(3n+1) { background: #ffffff; }
@keyframes pkl-flash-fall { to { transform: translateY(112vh) rotate(calc(var(--rot, 0deg) + 560deg)); opacity: .15; } }

@media (prefers-reduced-motion: reduce) {
  .pkl-empty-ic, .pkl-gift.free, .pkl-gift.hot, .pkl-die, .pkl-die.win, .pkl-remain, .pkl-remain.urgent,
  .pkl-crown, .pkl-bar-fill::after, .pkl-gift.free::after, .pkl-dice::before, .pkl-verdict.win,
  [data-wtype="pkl-terning"]:has(.pkl-die.win) { animation: none; }
  .pkl-gift.free::after, .pkl-bar-fill::after, .pkl-flash-conf { display: none; }
  .pkl-flash-card { transition: opacity .3s; transform: none; }
}
