.auction-reward-layer{position:absolute;inset:0;pointer-events:none;z-index:5;overflow:hidden;contain:strict}
.auction-reward-field{position:absolute;overflow:hidden;pointer-events:none;contain:strict;isolation:isolate}
.auction-coin,.auction-spark{position:absolute;left:0;top:0;object-fit:contain;image-rendering:pixelated;pointer-events:none;will-change:transform,opacity;user-select:none;backface-visibility:visible}
.auction-coin{z-index:3;filter:drop-shadow(0 2px 0 #62411744)}
/* Burst coins pass behind the readable panels and in front of the coffer. */
.auction-burst-layer{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden;contain:strict}
.auction-stream-layer{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:hidden}
.auction-coin-stream{position:absolute;left:0;top:0;image-rendering:pixelated}
.auction-dust{position:absolute;pointer-events:none;opacity:0;image-rendering:pixelated;will-change:opacity,transform}
.auction-dust-face{width:100%;height:100%;background-size:400% 100%;background-repeat:no-repeat;image-rendering:pixelated}
.auction-coin-face{position:absolute;inset:0;background-repeat:no-repeat;background-position:0 0;image-rendering:pixelated}
.auction-reward-rays,.auction-reward-glow{position:absolute;border-radius:50%;pointer-events:none;will-change:transform,opacity;mix-blend-mode:screen}
.auction-reward-rays{background:repeating-conic-gradient(from -4deg,#ffe6a0 0deg 7deg,transparent 7deg 22.5deg);-webkit-mask-image:radial-gradient(circle,#000 0 12%,#0008 34%,transparent 66%);mask-image:radial-gradient(circle,#000 0 12%,#0008 34%,transparent 66%)}
.auction-reward-glow{background:radial-gradient(circle,#fff8dc 0 6%,#ffd76ee6 16%,#e4b75b66 36%,transparent 66%)}
.game-app[data-theme=classroom] .auction-reward-rays{mix-blend-mode:multiply;background:repeating-conic-gradient(from -4deg,#e9b44c80 0deg 5deg,transparent 5deg 22.5deg)}
.game-app[data-theme=classroom] .auction-reward-glow{mix-blend-mode:multiply;background:radial-gradient(circle,#f7d77a 0 10%,#f2cf6c80 30%,transparent 62%)}
.game-app :is(.topbar,.score,.turn-label,.challenge,.latest-summon,.result,.move-form){position:relative;z-index:4}
.auction-spark{z-index:4}
.auction-collect-coin{z-index:5}
.auction-receipts{position:absolute;inset:0 0 auto;min-height:32px;display:grid;grid-template-columns:1fr 1fr;gap:8px;pointer-events:none;z-index:7}
.auction-receipt{grid-row:1;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;column-gap:7px;padding:3px 6px;color:#684819;font-size:17px;line-height:25px;animation:auction-receipt-pop 1.4s ease-out both;white-space:nowrap;text-shadow:0 1px 0 #fffdf5}
.auction-receipt[data-who=player]{grid-column:1}
.auction-receipt[data-who=opponent]{grid-column:2;color:#5b553e}
.auction-receipts[data-player-count="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
.auction-receipt[data-who=third]{grid-column:3;color:#615574}
.auction-receipts[data-player-count="3"] .auction-receipt{white-space:normal;overflow-wrap:anywhere;font-size:15px;column-gap:4px}
.auction-receipts[data-player-count="3"] .auction-receipt-price{font-size:17px}
/* Four to six seats: receipts flow three to a row in seat order. */
.auction-receipts:is([data-player-count="4"],[data-player-count="5"],[data-player-count="6"]){grid-template-columns:repeat(3,minmax(0,1fr))}
.auction-receipts:is([data-player-count="4"],[data-player-count="5"],[data-player-count="6"]) .auction-receipt{grid-column:auto;white-space:normal;overflow-wrap:anywhere;font-size:13px;column-gap:4px}
.auction-receipts:is([data-player-count="4"],[data-player-count="5"],[data-player-count="6"]) .auction-receipt-price{font-size:15px}
.auction-receipt-word{min-width:0;font-weight:700}
.auction-receipt-price{flex-shrink:0;font-variant-numeric:tabular-nums;font-size:19px;font-weight:850;color:#8c5e09;letter-spacing:-.3px}
.auction-reward-flash{position:absolute;inset:8% 8% 0;z-index:1;background:#e4b75b;clip-path:polygon(40% 100%,30% 80%,30% 70%,15% 70%,15% 54%,4% 54%,4% 38%,23% 38%,23% 20%,37% 20%,37% 4%,63% 4%,63% 20%,77% 20%,77% 38%,96% 38%,96% 54%,85% 54%,85% 70%,70% 70%,70% 80%,60% 100%);pointer-events:none;will-change:opacity}
.auction-reward-flash[data-tier=drop]{background:#b78336;inset:35% 25% 0}
.auction-reward-flash[data-tier=rain]{background:#ffe69a}
.auction-reward-beam{position:absolute;top:2px;bottom:5px;width:12px;z-index:2;background:linear-gradient(to top,#ffe69a 0 32%,#e4b75b 32% 61%,#b7833680 61% 83%,transparent 83%);clip-path:polygon(33% 0,66% 0,66% 23%,83% 23%,83% 63%,100% 63%,100% 100%,0 100%,0 63%,17% 63%,17% 23%,33% 23%);transform-origin:50% 100%;pointer-events:none;will-change:transform,opacity}
.score.is-rewarding{animation:auction-score-gain 1.4s ease-out both}
.score.is-rewarding.is-collecting{animation:none;box-shadow:inset 0 0 0 1px var(--auction-gain-color,#dfb947),2px 3px 0 #10222680}
.score.is-rewarding[data-reward-tier=burst],.score.is-rewarding[data-reward-tier=rain]{--auction-gain-color:#f3c547}
#auction-stage[data-reward-phase=burst] .auction-floor{background:#ead087}
#auction-sound[data-sound=off]{opacity:.6}
@keyframes auction-receipt-pop{0%{opacity:1;transform:translateY(3px) scale(.96)}12%,78%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-3px) scale(1)}}
@keyframes auction-score-gain{0%,100%{filter:none}12%,58%{box-shadow:inset 0 0 0 1px var(--auction-gain-color,#dfb947),2px 3px 0 #10222680}73%{box-shadow:inset 0 0 0 1px #ffe2a4,2px 3px 0 #10222680}}
@media(min-width:900px){.auction-receipts{min-height:40px;gap:18px}.auction-receipt{font-size:21px;line-height:30px;column-gap:10px}.auction-receipt-price{font-size:25px}.auction-reward-beam{width:18px;box-shadow:6px 0 0 #ffd56c44,-6px 0 0 #ffd56c44}}
@media(max-width:350px){.auction-receipt{font-size:15px;line-height:22px;column-gap:4px;padding:2px}.auction-receipt-price{font-size:16px}}
@media(prefers-reduced-motion:reduce){.auction-receipt{animation:none}.score.is-rewarding{animation:none;box-shadow:inset 0 0 0 1px var(--auction-gain-color,#dfb947),2px 3px 0 #10222680}}
