/* Chrome cabinet look (prefixed gtd-*) */
.gtd-cabinet{display:flex;justify-content:center;margin:24px 0}
.gtd-cabinet-inner{
  position:relative; width:520px; padding:20px 20px 28px;
  border-radius:24px; background:linear-gradient(180deg,#111,#0a0a0a 40%,#151515);
  box-shadow:0 20px 50px rgba(0,0,0,.6), inset 0 2px 0 rgba(255,255,255,.04);
  border:8px solid transparent; background-clip:padding-box;
}
.gtd-cabinet-inner:before{
  content:''; position:absolute; inset:-10px; border-radius:28px;
  background:linear-gradient(135deg,#d9d9d9,#f6f6f6 20%,#9e9e9e 40%,#ffffff 60%,#b3b3b3 80%,#f0f0f0);
  z-index:-1; filter:drop-shadow(0 10px 25px rgba(0,0,0,.35));
}
.gtd-marquee{
  display:flex; align-items:center; justify-content:center;
  height:58px; border-radius:12px; margin-bottom:16px;
  background:linear-gradient(180deg,#ffeb99,#ffd24d);
  border:3px solid #caa52e; box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 6px 0 #caa52e;
}
.gtd-title{font-size:22px; font-weight:800; color:#351f00; text-shadow:0 1px 0 rgba(255,255,255,.6)}
.gtd-window{
  position:relative; display:flex; gap:14px; justify-content:center;
  padding:18px; border-radius:16px; background:linear-gradient(180deg,#0d0d0d,#000);
  border:6px solid #d4af37; box-shadow:inset 0 0 40px rgba(0,0,0,.9),0 6px 0 #b1892d;
  overflow:hidden;
}
.gtd-reel{ width:120px; height:140px; border-radius:12px; background:linear-gradient(180deg,#1a1a1a,#0f0f0f);
  border:3px solid #888; position:relative; overflow:hidden; box-shadow:inset 0 0 20px rgba(0,0,0,.6), inset 0 8px 20px rgba(255,255,255,.05)}
.gtd-strip{ position:absolute; left:0; top:0; width:100%; will-change:transform; }
.gtd-symbol{
  display:flex; align-items:center; justify-content:center;
  height:140px; font-size:80px; text-shadow: 0 2px 6px rgba(0,0,0,.4);
}
.gtd-controls{display:flex; align-items:center; justify-content:center; gap:20px; margin-top:16px}
.gtd-button{
  position:relative; border:none; cursor:pointer; border-radius:999px; padding:0 28px; height:54px; min-width:150px;
  background:radial-gradient(circle at 40% 30%, #ffefb0, #ffc533);
  color:#3a2400; font-weight:900; font-size:18px; letter-spacing:1px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 6px 0 #caa52e, 0 10px 18px rgba(0,0,0,.25);
}
.gtd-button:active{ transform:translateY(2px); box-shadow:inset 0 1px 0 rgba(255,255,255,.7), 0 4px 0 #caa52e, 0 6px 12px rgba(0,0,0,.25) }
.gtd-button:disabled{ opacity:.7; cursor:not-allowed }
.gtd-lever{ position:relative; width:46px; height:120px; margin-left:6px }
.gtd-lever-stick{
  position:absolute; left:22px; top:6px; width:6px; height:90px; background:linear-gradient(180deg,#d7d7d7,#9a9a9a); border-radius:3px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 2px 8px rgba(0,0,0,.3)
}
.gtd-lever-knob{
  position:absolute; top:0; left:6px; width:34px; height:34px; border-radius:50%;
  background:radial-gradient(circle at 35% 35%, #ff9898, #cc1e1e);
  box-shadow:inset 0 2px 6px rgba(255,255,255,.6), 0 8px 16px rgba(0,0,0,.35), 0 0 0 3px #7a0000;
  transform-origin:50% 200%;
  transition:transform .2s ease;
}
.gtd-lever.pull .gtd-lever-knob{ transform:rotate(25deg) translateY(8px) }
.gtd-lever.pull .gtd-lever-stick{ box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 2px 8px rgba(0,0,0,.3), 0 0 12px rgba(255,0,0,.4) }
.gtd-lights{ position:absolute; inset:8px; pointer-events:none; display:grid; grid-template-columns:repeat(10,1fr); gap:8px; opacity:.7}
.gtd-lights span{ width:10px; height:10px; border-radius:50%; background:radial-gradient(circle at 35% 35%, #fff,#ffd200); box-shadow:0 0 12px rgba(255,210,0,.9) }
.gtd-cabinet.spinning .gtd-lights span{ animation:gtd-twinkle .35s linear infinite alternate }
@keyframes gtd-twinkle{ from { filter:brightness(.7) } to { filter:brightness(1.4) } }
.gtd-message{ min-height:28px; margin-top:12px; font-weight:800; text-align:center; color:#ffe28a; text-shadow:0 2px 6px rgba(0,0,0,.6) }
.gtd-message.jackpot{ color:#00ff9c }
.gtd-message.smallwin{ color:#9ad4ff }
.gtd-message.lose{ color:#ffb3b3 }
.gtd-cabinet.spinning .gtd-symbol{ filter:blur(2px); opacity:.9 }
/* Coins overlay */
.gtd-cabinet-inner{ position:relative }
.gtd-coins{ position:absolute; inset:0; pointer-events:none; overflow:hidden; z-index:5 }
.gtd-coin{
  position:absolute; top:-40px; width:28px; height:28px; border-radius:50%;
  background: radial-gradient(circle at 30% 30%, #fff6bf, #ffd34d 60%, #d6a214 80%, #9c7a0a 100%);
  box-shadow: 0 2px 8px rgba(0,0,0,.35), inset 0 1px 2px rgba(255,255,255,.7);
  animation: gtd-coin-fall linear forwards, gtd-coin-spin linear forwards;
}
@keyframes gtd-coin-fall {
  0%   { transform: translateY(-40px); opacity: 0.9; }
  100% { transform: translateY(520px); opacity: 0.95; }
}
@keyframes gtd-coin-spin {
  0%   { filter: brightness(1); }
  50%  { filter: brightness(1.25); }
  100% { filter: brightness(1); }
}
