@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--bg:#101110;--panel:#191a18;--gold:#dfbf7b;--muted:#a3a498;--line:#33342d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:#f5f2e9;font:16px 'DM Sans',Arial,sans-serif;height:100dvh;overflow:hidden}header,.heading,.lineup,footer,.picker>.eyebrow,.board-bottom,.note{display:none}main{width:100%;height:100dvh;padding:14px;display:flex;flex-direction:column;gap:12px}.picker{flex:none}.choices{display:grid;grid-template-columns:repeat(var(--prize-count,7),minmax(0,1fr));gap:10px}button{font:600 14px 'DM Sans',Arial,sans-serif;cursor:pointer;border:0;border-radius:8px;transition:background .15s}button:disabled{opacity:.55;cursor:default}button:focus-visible,input:focus-visible{outline:3px solid #fff;outline-offset:3px}.choice{display:flex;align-items:center;gap:12px;height:70px;margin:0;padding:8px 14px;text-align:left;background:var(--panel);color:#deded2;border:1px solid var(--line)}.choice:hover{background:#2d2b23}.choice.selected{border-color:var(--gold);background:#d8b87515;color:#f5d792}.choice img{width:25px;height:50px;object-fit:cover;border-radius:4px}.choice small{display:block;margin-top:5px;font-size:12px;color:var(--muted)}.game-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:20px;flex:1;min-height:0}.board-card{grid-column:2;grid-row:1;display:flex;flex-direction:column;min-height:0;min-width:0;position:relative;background:radial-gradient(ellipse at 50% 60%,#36302044,transparent 70%)}.board-top{display:flex;justify-content:space-between;padding:4px 12px;font-size:11px;letter-spacing:1.5px;color:var(--muted);flex:none}.board-top span:last-child{color:var(--gold)}.board-wrap{display:flex;flex-direction:column;flex:1;min-height:0;width:100%;margin:0}.playfield{position:relative;flex:1;min-height:0;width:100%}canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.falling{position:absolute;width:28px;height:48px;top:0;left:50%;border-radius:5px;overflow:hidden;pointer-events:none;box-shadow:0 0 22px #e9c27566;transform:translate(-50%,-50%)}.falling img{width:100%;height:100%;object-fit:cover}.slots{display:grid;grid-template-columns:repeat(var(--prize-count,7),minmax(0,1fr));gap:8px;margin:0 0 4px;flex:none}.slot{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:58px;padding:8px 2px;background:#b58d4630;border-radius:7px;box-shadow:inset 0 -3px #9c793c;color:#edd399;font-size:14px;font-weight:700}.slot span{display:block;margin-top:4px;font-size:12px;font-weight:400;color:#bebcaf}.slot.target{background:#d7b369;color:#181b13;box-shadow:inset 0 -4px #a87a32,0 0 16px #d7b36922}.slot.target span{color:#3c392c}.slot.winner{background:#f3d792;box-shadow:0 0 28px #d8b87577}.slot.miss{background:#514c3b;color:#fff}aside{grid-column:1;grid-row:1;min-height:0;overflow:auto;border-radius:12px;background:var(--panel)}.control-card{padding:22px 18px;display:flex;flex-direction:column;gap:18px}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--gold);margin:0}h2{font:500 24px 'Space Grotesk',Arial,sans-serif;letter-spacing:-.7px;margin:-8px 0 0}label{display:flex;justify-content:space-between;margin-bottom:8px;font-size:14px;font-weight:500}label span{color:var(--gold)}.order-row{display:flex;gap:7px}.order-row input{width:100%;min-width:0;background:#11120f;border:1px solid #48493c;color:#fff;font:14px 'DM Sans',Arial,sans-serif;border-radius:7px;padding:11px 9px}.order-row button{padding:10px;background:var(--gold);color:#181b13}.hint{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.5}.control-card>.hint{margin-top:-10px}#attempts{margin:0;color:var(--gold);font-size:14px;line-height:1.5}.token-preview{display:flex;gap:12px;align-items:center;padding:16px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.token-preview img{width:32px;height:66px;object-fit:cover;border-radius:5px}.small-label{font-size:10px;letter-spacing:1px;color:var(--muted)}h3{font-size:17px;margin:6px 0}.token-preview p{font-size:12px;color:var(--muted);margin:0;line-height:1.5}.aim-controls{width:100%}input[type=range]{width:100%;height:24px;margin:0;accent-color:var(--gold);cursor:pointer}.range-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:3px}#drop{display:flex;justify-content:space-between;width:100%;padding:15px 16px;background:var(--gold);color:#181b13;font-size:16px}#drop:hover:enabled,.order-row button:hover:enabled{background:#f0d492}.result{border-top:1px solid #454337;padding-top:18px;min-height:100px}.result strong{display:block;color:var(--gold);font:500 22px 'Space Grotesk',Arial,sans-serif;margin:8px 0}.result p{font-size:13px;line-height:1.5;color:#d1d1c6;margin:8px 0 0}.result .small-label{font-size:10px}.control-card:after{content:'Demo only · No real prizes issued';font-size:11px;color:var(--muted);line-height:1.5}
@media(min-width:1500px){.game-layout{grid-template-columns:300px minmax(0,1fr);gap:28px}main{padding:18px}.choice{height:76px}.control-card{padding:26px 22px;gap:22px}}
@media(max-width:1000px){.game-layout{grid-template-columns:240px minmax(0,1fr);gap:12px}.control-card{padding:18px 14px;gap:14px}.choice{padding:8px;gap:8px;font-size:12px}.choice img{width:22px;height:44px}.slot{font-size:12px}.slots{gap:5px}}
@media(max-width:760px){main{padding:8px;gap:7px;min-height:540px}.choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.choice{height:47px;font-size:11px;gap:7px;padding:5px 8px}.choice img{width:18px;height:35px}.choice small{font-size:10px;margin-top:2px}.game-layout{display:flex;flex-direction:column;gap:7px}.board-card{flex:1;min-height:180px}.board-top{font-size:9px;padding:2px 4px}.slots{gap:3px;margin-bottom:0}.slot{min-height:39px;font-size:10px;padding:4px 1px}.slot span{font-size:10px;margin-top:2px}.falling{width:19px;height:34px}aside{flex:none;overflow:visible;border-radius:9px}.control-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 12px;padding:9px 12px}.control-card>.eyebrow,.control-card>h2,.token-preview,.control-card>.hint,.range-labels,.control-card:after,#orderForm>.hint{display:none}.result{grid-column:1/-1;grid-row:1;min-height:46px;padding:0 0 7px;border-top:0;border-bottom:1px solid var(--line)}.result .small-label{display:block;font-size:9px}.result strong{display:inline;font-size:16px;margin:0 7px 0 0}.result p{display:inline;font-size:11px;line-height:1.4;margin:3px 0 0}#orderForm{grid-column:1;grid-row:2}#orderForm label{font-size:11px;margin-bottom:4px}.order-row{gap:5px}.order-row input{padding:8px 6px;font-size:11px;min-height:34px}.order-row button{padding:7px;font-size:11px}#attempts{grid-column:2;grid-row:2;font-size:12px;align-self:center}.aim-controls{grid-column:1;grid-row:3}.aim-controls label{font-size:12px;margin-bottom:3px}#drop{grid-column:2;grid-row:3;align-self:center;padding:12px;font-size:14px}input[type=range]{height:22px}}
@media(max-height:550px){body{overflow:auto}main{min-height:540px;height:100dvh}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
@media(min-width:761px){.control-card{gap:14px}.control-card>.eyebrow,.control-card>.token-preview,.control-card>.hint{display:none}.control-card h2{margin:0}.result{min-height:80px;padding-top:14px}}
@media(min-width:761px) and (max-height:800px){.control-card{gap:10px;padding-top:16px;padding-bottom:16px}.result{min-height:70px}.result strong{font-size:20px;margin:6px 0}.control-card h2{font-size:22px}}

.falling{width:32px;height:54px}@media(max-width:760px){.falling{width:22px;height:38px}}

.falling{width:28px;height:70px;overflow:visible;border-radius:0;box-shadow:none;background:none;filter:drop-shadow(0 2px 3px #0007);will-change:transform}.falling img{position:absolute;max-width:none;object-fit:fill;border-radius:0}.falling.shape-mask{clip-path:polygon(50% 0.4%,80% 1%,91% 2%,95% 3%,95% 9%,93% 10%,92% 16%,86% 17%,81% 17.5%,81% 22%,83% 24%,91% 26%,96% 28%,98% 31%,98% 93%,96% 96%,92% 98%,79% 99.5%,50% 100%,21% 99.5%,8% 98%,4% 96%,2% 93%,2% 31%,4% 28%,9% 26%,17% 24%,19% 22%,19% 17.5%,14% 17%,8% 16%,7% 10%,5% 9%,5% 3%,9% 2%,20% 1%)}
@media(max-width:760px){.falling{width:18px;height:45px}.order-row input{font-size:16px}.choice{min-height:48px}.aim-controls input{height:30px}#drop{min-height:44px}}

.falling.shape-mask.glow-mask{clip-path:polygon(50% 0.3%,80% 0.8%,93% 1.8%,97% 2.8%,97% 9%,94% 10%,94% 17%,90% 18%,82% 18.8%,82% 22%,85% 25%,94% 27.5%,98% 30%,99% 32%,99% 92%,97% 95%,91% 97%,78% 99%,50% 99.7%,22% 99%,9% 97%,3% 95%,1% 92%,1% 32%,2% 30%,6% 27.5%,15% 25%,18% 22%,18% 18.8%,10% 18%,6% 17%,6% 10%,3% 9%,3% 2.8%,7% 1.8%,20% 0.8%)}

.win-dialog{position:fixed;margin:auto;width:min(430px,calc(100vw - 28px));max-height:90dvh;overflow:auto;box-sizing:border-box;border:1px solid #dfbf7b;border-radius:20px;background:radial-gradient(ellipse at 50% 45%,#403521,#151612 70%);color:#f5f2e9;text-align:center;padding:32px 24px;box-shadow:0 24px 100px #000a}.win-dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}.win-dialog h2{font-size:clamp(24px,5vw,34px);line-height:1.15;margin:12px 0;color:#f4d490}.win-dialog p{font-size:14px;line-height:1.5;overflow-wrap:anywhere}.win-dialog .eyebrow{font-size:12px}.win-close{position:absolute;right:12px;top:10px;width:44px;height:44px;background:transparent;color:#dfbf7b;font-size:28px}.win-display{height:215px;display:grid;place-items:center;margin:18px 0}.win-display .falling{position:relative;left:auto;top:auto;transform:none;width:84px;height:210px;filter:drop-shadow(0 8px 18px #0009)}.win-continue{min-height:46px;background:#dfbf7b;color:#181b13;padding:12px 24px;width:100%}#winClaim{color:#dfbf7b}#winSize{font-weight:700}@media(max-width:760px){.win-display{height:180px}.win-display .falling{width:72px;height:180px}}@media(max-height:650px){.win-dialog{padding:20px}.win-display{height:135px;margin:8px}.win-display .falling{width:54px;height:135px}}

.win-dialog[open]{animation:win-arrive .38s cubic-bezier(.2,.8,.2,1) both}.win-flurries{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:2;border-radius:inherit}.win-flake{position:absolute;top:-20px;opacity:0;animation-name:win-flurry;animation-timing-function:cubic-bezier(.16,.45,.65,1);animation-fill-mode:both;will-change:transform}.win-close,.win-continue{position:relative;z-index:3}.win-close{position:absolute}@keyframes win-arrive{from{opacity:0;transform:translateY(18px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes win-flurry{0%{opacity:0;transform:translate3d(0,-15px,0) rotate(0)}8%{opacity:1}82%{opacity:1}100%{opacity:0;transform:translate3d(var(--drift),var(--fall-distance),0) rotate(var(--spin))}}@media(prefers-reduced-motion:reduce){.win-dialog[open]{animation:none}.win-flurries{display:none}}

#billingFields{margin-top:12px}#billingFields[hidden]{display:none}#billingEmail{box-sizing:border-box;width:100%;min-height:44px;font:16px 'DM Sans',Arial,sans-serif;background:#11120f;border:1px solid #48493c;border-radius:7px;color:#fff;padding:9px}#billingFields label{font-size:14px}.order-row button{min-width:68px}@media(max-width:760px){#billingFields{margin-top:7px}#billingFields label{font-size:11px}body{overflow:auto}main{min-height:610px}.order-row{flex-wrap:wrap}.order-row button{flex:1}}

.win-code{position:relative;z-index:3;margin:16px auto;padding:12px 20px;width:fit-content;min-width:180px;border:1px dashed #dfbf7b88;border-radius:10px;background:#0f100dcc}.win-code span{display:block;font-size:11px;letter-spacing:2px;color:#b6ad95}.win-code strong{display:block;margin-top:5px;font:700 32px 'Space Grotesk',monospace;letter-spacing:7px;color:#f8db9c;user-select:all}@media(max-height:650px){.win-code{margin:8px auto;padding:8px 16px}.win-code strong{font-size:26px}}

/* Seven choices remain in board order, with BPC-157 at the center. */
@media(max-width:760px){.choices{grid-template-columns:repeat(4,minmax(0,1fr))}.choice{padding:5px;gap:4px}.slots{gap:0}.slot{border-radius:4px;overflow-wrap:anywhere}}
