body{margin:0;background:#0B1020}
a{color:#FFC14D}a:hover{color:#FFD88A}
*{box-sizing:border-box}
.lift{transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease}
.lift:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(0,0,0,.38);border-color:#6B5320 !important}
@keyframes tt-rise{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: view()){.reveal{animation:tt-rise linear both;animation-timeline:view();animation-range:entry 0% entry 55%}}}
.pv{position:relative;height:90px;border-radius:12px;background:#0E1528;border:1px solid #22304F;overflow:hidden;display:flex;align-items:center;justify-content:center}
@keyframes tt-draw{from{stroke-dashoffset:260}to{stroke-dashoffset:0}}
.gcard:hover .pv-crash polyline{stroke-dasharray:260;animation:tt-draw 1.4s ease-out infinite}
@keyframes tt-drop{0%{transform:translate(0,0);opacity:1}20%{transform:translate(9px,13px)}40%{transform:translate(0,26px)}60%{transform:translate(9px,39px)}85%{transform:translate(18px,54px);opacity:1}100%{transform:translate(18px,58px);opacity:0}}
.gcard:hover .pv-plinko .ball{animation:tt-drop 1.3s ease-in infinite}
@keyframes tt-roll{0%,100%{transform:rotate(0)}25%{transform:rotate(-20deg) translateY(-8px)}50%{transform:rotate(15deg)}75%{transform:rotate(-8deg) translateY(-3px)}}
.gcard:hover .pv-dice .die{animation:tt-roll .7s ease-in-out infinite}
@keyframes tt-gem{0%,35%{background:#1A2340}50%,100%{background:#3DDC97}}
.gcard:hover .pv-mines .gem{animation:tt-gem 1.2s ease-in-out infinite alternate}
@keyframes tt-fan{from{transform:rotate(6deg)}to{transform:rotate(18deg) translateX(10px)}}
.gcard:hover .pv-bj .card2{animation:tt-fan .6s ease-out infinite alternate}
@keyframes tt-light{0%,100%{background:#1A2340;color:#A3AEC6}50%{background:#FFB020;color:#1A1200}}
.gcard:hover .pv-keno .k{animation:tt-light 1.2s ease-in-out infinite}
@keyframes tt-pop{0%,100%{transform:scale(1)}50%{transform:scale(1.25)}}
.gcard:hover .pv-limbo .num{animation:tt-pop .9s ease-in-out infinite}
@keyframes tt-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
.gcard:hover .pv-hilo .arrow{animation:tt-bob .7s ease-in-out infinite}
@keyframes tt-mole{0%,100%{transform:translateY(20px)}40%,60%{transform:translateY(0)}}
.gcard:hover .pv-moles .mole{animation:tt-mole 1.2s ease-in-out infinite}
@media (prefers-reduced-motion: reduce){.lift,.lift:hover{transition:none;transform:none}.gcard:hover *{animation:none !important}}
.btn-3d{transition:transform .15s ease, box-shadow .15s ease, filter .15s ease}
.btn-3d:hover{transform:translate(-3px,-3px);box-shadow:1px 1px 0 #C98410, 2px 2px 0 #B87810, 3px 3px 0 #A86A0C, 4px 4px 0 #985F0A, 5px 5px 0 #8A5508, 8px 14px 26px rgba(255,176,32,.28);filter:brightness(1.06);color:#1A1200 !important}
.btn-3d:active{transform:translate(0,0);box-shadow:1px 1px 0 #A86A0C, 2px 4px 10px rgba(255,176,32,.2)}
.btn-ghost{transition:transform .2s ease, border-color .2s ease, background-color .2s ease, box-shadow .2s ease}
.btn-ghost:hover{transform:translateY(-3px);border-color:#FFB020 !important;background-color:rgba(255,176,32,.08) !important;box-shadow:0 12px 26px rgba(0,0,0,.35);color:#FFFFFF !important}
.btn-ghost:active{transform:translateY(0)}
.btn-3d:focus-visible,.btn-ghost:focus-visible{outline:2px solid #FFD88A;outline-offset:3px}
@media (prefers-reduced-motion: reduce){.btn-3d,.btn-3d:hover,.btn-3d:active,.btn-ghost,.btn-ghost:hover{transform:none;transition:none}}
.navlink{position:relative;padding:6px 0;transition:color .2s ease}
.navlink::after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:2px;border-radius:2px;background:#FFB020;transition:left .25s ease,right .25s ease}
.navlink:hover{color:#FFFFFF !important}
.navlink:hover::after,.navlink.is-current::after{left:0;right:0}
.navlink:focus-visible{outline:2px solid #FFD88A;outline-offset:4px}
@media (prefers-reduced-motion: reduce){.navlink,.navlink::after{transition:none}}
