.gl-casino { --casino-symbol-height:148px; box-sizing:border-box; position:fixed; inset:0; margin:auto; padding:0; border:1px solid #d4d5d7; border-radius:24px; width:min(680px,calc(100vw - 24px)); max-width:none; max-height:calc(100dvh - 24px); overflow:auto; overscroll-behavior:contain; background:#111720; color:#fff; font-family:inherit; box-shadow:0 24px 100px #0006; }
.gl-casino::backdrop { background:#090d16b8; }
.gl-casino * { box-sizing:border-box; }
.gl-casino__close { position:sticky; top:10px; float:right; z-index:2; margin:10px 10px -48px 0; display:grid; place-items:center; width:38px; height:38px; padding:0; border:1px solid #1113; border-radius:50%; background:#fff; color:#111720; font-size:28px; line-height:1; cursor:pointer; }
.gl-casino__head { height:auto; padding:20px 26px 18px; background:#f7c900; color:#111720; }
.gl-casino__brand { width:142px; height:26px; object-fit:contain; object-position:left; display:block; }
.gl-casino__head h2 { margin:8px 0 0; font-size:clamp(36px,8vw,54px); line-height:1; font-weight:900; letter-spacing:-2px; color:inherit; }
.gl-casino__head p { margin:8px 0 0; font-size:15px; line-height:1.3; }
.gl-casino__body { padding:20px 26px; }
.gl-casino__eyebrow { display:flex; justify-content:space-between; gap:12px; flex-wrap:wrap; margin:0 0 16px; font-size:13px; letter-spacing:1px; font-weight:900; color:#bfc4cd; }
.gl-casino__status { color:#f7c900; }
.gl-casino__reels { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; position:relative; padding:12px; border:1px solid #f7c900; border-radius:22px; background:#080d13; }
.gl-casino__reels::after { content:''; position:absolute; pointer-events:none; inset:calc(12px + var(--casino-symbol-height) / 2) 12px; height:var(--casino-symbol-height); border-top:1px solid #dfc72d80; border-bottom:1px solid #dfc72d80; }
.gl-casino__reels::before { content:'›'; position:absolute; left:2px; top:50%; transform:translateY(-50%); color:#f7c900; font-size:22px; font-weight:900; }
.gl-casino__reel { position:relative; height:calc(var(--casino-symbol-height) * 2); overflow:hidden; border-radius:12px; background:#f8f7f2; color:#111; }
.gl-casino__reel::after { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(#10172060,transparent 30%,transparent 70%,#10172060); box-shadow:inset 0 0 1px 1px #fff5; border-radius:inherit; }
.gl-casino__strip { transform:translateY(calc(var(--casino-symbol-height) / -2)); }
.gl-casino__symbol { height:var(--casino-symbol-height); display:flex; align-items:center; justify-content:center; font-size:76px; }
.gl-casino__symbol img { width:1.25em; height:1em; max-width:85%; object-fit:contain; flex-shrink:0; }
.gl-casino__message { min-height:42px; margin:14px 0; font-size:16px; line-height:1.35; color:#fff; }
.gl-casino__controls { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.gl-casino__balance { display:flex; flex-direction:column; font-size:14px; color:#d0d3db; }
.gl-casino__balance strong { color:#fff; font-size:28px; line-height:1; }
.gl-casino__spin { display:inline-flex; align-items:center; justify-content:center; gap:10px; flex-shrink:0; white-space:nowrap; border:0; border-radius:30px; padding:14px 25px; background:#f7c900; color:#111720; font:inherit; font-size:16px; font-weight:900; cursor:pointer; }
.gl-casino__spin-icon { position:static; width:1em; height:1em; flex-shrink:0; fill:currentColor; }
.gl-casino__spin:disabled { opacity:.55; cursor:default; }
.gl-casino button:focus-visible { outline:3px solid #8dbbff; outline-offset:3px; }
.gl-casino__badge { padding:14px 0; margin-top:18px; border-top:1px solid #ffffff30; display:flex; gap:12px; align-items:center; }
.gl-casino__badge > span { font-size:27px; }
.gl-casino__badge[hidden] { display:none; }
.gl-casino__badge strong,.gl-casino__badge small { display:block; }
.gl-casino__badge small { color:#c4c8d0; }
.gl-casino__fine { margin:18px 0 0; color:#bfc4cd; font-size:12px; line-height:1.45; }
.gl-casino__info-button { display:flex; align-items:center; gap:8px; width:fit-content; margin-top:18px; padding:7px 12px; border:1px solid #ffffff40; border-radius:24px; cursor:pointer; font:inherit; font-size:14px; font-weight:900; color:#d0d3db; background:transparent; }
.gl-casino__rules-dialog { position:fixed; inset:0; margin:auto; width:min(540px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain; padding:24px; border:1px solid #f7c900; border-radius:20px; color:#d0d3db; background:#111720; font:inherit; font-size:15px; box-shadow:0 16px 60px #0008; }
.gl-casino__rules-dialog::backdrop { background:#080d13b3; }
.gl-casino__rules-dialog h3 { margin:0 44px 18px 0; color:#f7c900; font-size:22px; }
.gl-casino__rules-close { position:sticky; top:0; float:right; display:grid; place-items:center; width:32px; height:32px; border:1px solid #ffffff40; border-radius:50%; background:#111720; color:#fff; font-size:24px; line-height:1; cursor:pointer; }
.gl-casino__rules { line-height:1.5; }
.gl-casino__links { display:flex; flex-wrap:wrap; gap:10px; }
.gl-casino__winners { list-style:none; padding:0; margin:16px 0 0; }
.gl-casino__winners li + li { border-top:1px solid #ffffff26; }
.gl-casino__winners a { display:flex; align-items:center; gap:14px; padding:12px 0; color:#fff; text-decoration:none; }
.gl-casino__winners a:hover { color:#f7c900; }
.gl-casino__winners img { width:44px; height:44px; flex-shrink:0; border-radius:50%; object-fit:cover; }
.gl-casino__winners span { overflow-wrap:anywhere; font-weight:900; }
.gl-casino__winners a:focus-visible { outline:2px solid #f7c900; outline-offset:2px; }
.gl-casino__rules p { margin:0 0 10px; }
.gl-casino__rules p:last-child { margin:0; }
.gl-casino__rules ul { margin:0 0 10px; padding-left:20px; list-style:disc; }
.gl-casino-link { display:inline-flex; align-items:center; gap:10px; margin:12px 10px; max-width:calc(100% - 20px); vertical-align:middle; border:1px solid #e0bc24; border-radius:12px; padding:10px 16px; background:#fff8d9; color:#111720; font-weight:900; text-decoration:none; }
@media(max-width:380px),(max-height:650px) {
 .gl-casino__head { padding:14px 18px; }
 .gl-casino__body { padding:14px 18px; }
 .gl-casino__head h2 { font-size:36px; }
 .gl-casino__spin { padding:12px 18px; }
 .gl-casino__badge { margin-top:12px; padding:10px 0; }
}
@media(max-width:520px) {
 .gl-casino { --casino-symbol-height:100px; }
 .gl-casino__reels { padding:10px; gap:8px; border-radius:18px; }
 .gl-casino__reels::after { inset:calc(10px + var(--casino-symbol-height) / 2) 10px; }
 .gl-casino__symbol { font-size:48px; }
}
