/* Royal Fortune: violet velvet, champagne gold and readable controls. */
.royal-game-meta{display:flex;justify-content:center;gap:22px;margin:0 auto 24px;color:#bfa977;font-size:10px;letter-spacing:1.7px;font-weight:700}
.royal-reel-frame{position:relative;padding-left:22px}
.royal-line-markers{position:absolute;left:0;top:9px;bottom:9px;display:grid;grid-template-rows:repeat(3,1fr);align-items:center;color:#d7bd82;font-size:10px}
.royal-line-markers span{border:1px solid #c5a46766;border-radius:4px;padding:3px;background:#19111f}
.royal-session{max-width:1000px;margin:24px auto 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #c8a76533;background:#100e19d9;border-radius:14px;overflow:hidden}
.royal-session>div{padding:20px;text-align:center;min-width:0}.royal-session>div+div{border-left:1px solid #c8a76522}
.royal-session span{display:block;font-size:9px;letter-spacing:1.4px;color:#a89eb4;margin-bottom:8px}.royal-session strong{font-size:18px;color:#f3dfaa;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.royal-shortcuts{max-width:1000px;margin:14px auto;display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.royal-shortcuts a{color:#c4b7d1;font-size:12px;padding:10px 15px;border-radius:8px;border:1px solid transparent;text-decoration:none}.royal-shortcuts a:hover{border-color:#d9b97266;background:#d9b9720c;color:#ffe4a1}
.royal-history{list-style:none;padding:0;margin:16px 0 0}.royal-history li{display:flex;justify-content:space-between;gap:12px;padding:13px 10px;border-bottom:1px solid #ffffff0c;font-variant-numeric:tabular-nums}.royal-history li.is-win strong{color:#f1d59a}.royal-history li>span:first-child{color:#998da7}
.lj-royal-game .lj-royal-cabinet{background:radial-gradient(ellipse at 50% 0,#73568a45,transparent 70%),linear-gradient(135deg,#2a1d35,#100e18 70%);border-color:#ae8b4b}
.lj-royal-game .lj-royal-reel{background:linear-gradient(180deg,#100d1b,#292035 45%,#100d1b);box-shadow:inset 0 10px 20px #0009,inset 0 -10px 20px #0009}
.lj-royal-game .lj-royal-brand h1 em{background:linear-gradient(#fff3c7,#e4ba63 60%,#b48631);background-clip:text;-webkit-text-fill-color:transparent;text-shadow:none}
.lj-royal-game.has-win .lj-royal-cabinet{box-shadow:0 0 0 5px #b99b4320,0 20px 65px #000a,0 0 35px #e3b75226}
.lj-royal-game.is-playing .lj-royal-spin span{animation:royal-control-spin 1s linear infinite}
.lj-royal-game .lj-royal-spin[aria-busy=true]{opacity:.8}
@keyframes royal-control-spin{to{transform:rotate(360deg)}}
@media(max-width:700px){.royal-game-meta{gap:10px;font-size:8px;letter-spacing:.6px}.royal-reel-frame{padding-left:16px}.royal-line-markers{font-size:8px}.royal-line-markers span{padding:2px}.royal-session{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.royal-session>div{padding:15px 8px}.royal-session>div:nth-child(3){border-left:0}.royal-session>div:nth-child(n+3){border-top:1px solid #c8a76522}.royal-session strong{font-size:15px}.royal-shortcuts{gap:0}.royal-shortcuts a{padding:9px;font-size:11px}.royal-history li{flex-wrap:wrap;font-size:11px}.royal-history li>span:first-child{width:100%}}
@media(prefers-reduced-motion:reduce){.lj-royal-game.is-playing .lj-royal-spin span{animation:none}}
/* Symbol atlas and reel strips are sized independently of their content. */
.lj-royal-game .lj-royal-reel{display:block;height:clamp(160px,25vw,310px);min-height:0;position:relative}
.royal-reel-strip{width:100%;will-change:transform}
.lj-royal-game .lj-royal-symbol{height:calc(clamp(160px,25vw,310px) / 3 - .6667px);width:100%;border:0}
.royal-symbol-art{display:block;width:clamp(43px,7vw,94px);height:clamp(43px,7vw,94px);background-image:url('../images/royal-symbols-v1.webp');background-size:400% 200%;background-repeat:no-repeat;filter:drop-shadow(0 4px 4px #0007)}
.lj-royal-game .lj-royal-symbol--coin:after{display:none}
.lj-royal-reel.moving .royal-symbol-art{filter:blur(var(--reel-blur,1px))}
.royal-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 0 16px}
.royal-tools button{border:1px solid #b99a5755;border-radius:8px;padding:8px 11px;background:#100d18;color:#eedba7;font-size:11px;cursor:pointer}
.royal-tools button[aria-pressed=true]{background:#514028}
.royal-tools button:disabled{opacity:.4;cursor:default}
.royal-tools>span{margin-left:auto;color:#b6a6c1;font-size:11px}
.lj-royal-game:fullscreen{overflow:auto;width:100vw;height:100vh}
@media(max-width:700px){.royal-tools{gap:5px}.royal-tools>span{display:none}.royal-tools button{font-size:10px;padding:8px}.royal-symbol-art{width:clamp(40px,11vw,68px);height:clamp(40px,11vw,68px)}}
.lj-royal-game{background:radial-gradient(ellipse at 50% 35%,#583d773d,transparent 65%),linear-gradient(110deg,#08090edb,#160d20e0),url('../images/fortune-wheel-casino-stage-v1.webp') center/cover}
.lj-royal-brand{margin:30px auto 26px}.lj-royal-brand h1{font-size:clamp(36px,6vw,76px);line-height:1.08;letter-spacing:-2px}.lj-royal-brand h1 em{color:#f5d994}.lj-royal-brand>p:not(.lj-eyebrow){font-size:13px;color:#baaeca}
.lj-royal-cabinet{max-width:1000px;border:1px solid #d1ad67;border-radius:24px;background:linear-gradient(145deg,#392544,#17101f 65%);padding:20px 20px 0;box-shadow:0 0 0 5px #b99b4320,0 25px 65px #000a,inset 0 1px #ffedba38}
.lj-royal-cabinet__top{gap:15px;line-height:1.5;padding-bottom:16px;font:700 10px/1.5 system-ui;letter-spacing:1.2px}
.lj-royal-reels{gap:7px;padding:8px;border:1px solid #c5a467;background:#0b0912;border-radius:14px;box-shadow:0 0 0 3px #a9813821}
.lj-royal-reel{min-height:clamp(160px,25vw,310px);border:1px solid #80674166;border-radius:7px;background:linear-gradient(#171220,#30203d 50%,#171220)}
.lj-royal-symbol{min-height:0;text-shadow:0 3px 4px #000;color:#f3deb5;font-size:clamp(28px,5vw,64px);position:relative}
.lj-royal-symbol img{width:72%;height:78px;max-height:100%;object-fit:contain;filter:drop-shadow(0 5px 5px #0007)}
.lj-royal-symbol--coin{color:#f6cb62}.lj-royal-symbol--coin:after{content:"♜";position:absolute;color:#72501f;font-size:.45em;text-shadow:none}
.lj-royal-symbol.winning{background:#ffe18823;box-shadow:inset 0 0 0 2px #f1d790;animation:royal-winner .8s ease-in-out 3}
.lj-royal-status{margin:13px 0 0;background:#120e1a;border-color:#86643b4d;color:#efe2bd;min-height:42px;display:grid;place-items:center}
.lj-royal-controls{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr) 140px minmax(0,1fr);margin:16px -20px 0;padding:20px;gap:13px;background:linear-gradient(#251b30,#15111c);border-top:1px solid #a8874d80;border-radius:0 0 23px 23px}
.lj-royal-controls>div{min-width:0;min-height:68px;background:#0f0d17;border-color:#80694766;padding:8px}.lj-royal-controls strong{font-size:clamp(13px,1.7vw,21px);overflow-wrap:anywhere}
.lj-royal-bet{grid-template-columns:30px minmax(0,1fr) 30px;align-items:center}.lj-royal-bet button{width:30px;height:30px;background:#352b40}.lj-royal-bet button:disabled{opacity:.35;cursor:default}
.lj-royal-spin{width:126px;height:80px;margin:0;justify-self:center;border:1px solid #ffe6a1;border-radius:18px;background:linear-gradient(135deg,#ffe7a5,#c99942);box-shadow:inset 0 1px #fff8da,0 6px 22px #d8ad4333;color:#251807}
.lj-royal-spin span{font-size:30px;color:#493014}.lj-royal-spin b{font-size:11px}.lj-royal-spin:disabled{cursor:default;opacity:.5}.lj-royal-spin:not(:disabled):hover{filter:brightness(1.12);transform:translateY(-2px)}
.lj-royal-rules{max-width:1000px;margin:22px auto;padding:18px 22px;border:1px solid #b895514d;border-radius:14px;background:#110e18dd;color:#c8bdcf;font-size:13px}.lj-royal-rules summary{cursor:pointer;color:#f1d59a;font-weight:700}.lj-royal-rules table{width:100%;border-collapse:collapse;text-align:left}.lj-royal-rules th,.lj-royal-rules td{padding:8px;border-bottom:1px solid #ffffff12}.lj-royal-rules caption{text-align:left;padding:12px 0;color:#f3deb5}
.lj-royal-login:not([hidden]){display:flex;width:max-content;margin:20px auto}.lj-royal-login[hidden]{display:none}
.lj-royal-game button:focus-visible,.lj-royal-game a:focus-visible,.lj-royal-game summary:focus-visible{outline:2px solid #ffe4a1;outline-offset:4px}
@keyframes royal-winner{50%{filter:brightness(1.3)}}
@media(max-width:700px){.lj-royal-cabinet{padding:10px 8px 0;border-radius:17px}.lj-royal-controls{grid-template-columns:1fr 1fr;margin:12px -8px 0;padding:12px;gap:9px}.lj-royal-spin{grid-column:auto;order:0;width:100%;height:66px;margin:0;border-radius:12px}.lj-royal-controls>div{min-height:66px}.lj-royal-controls strong{font-size:16px}.lj-royal-reels{gap:3px;padding:4px}.lj-royal-symbol img{height:52px;width:85%}.lj-royal-paytable{margin-top:20px}.lj-royal-cabinet__top{font-size:8px}.lj-royal-brand{margin:22px auto}.lj-royal-brand h1{font-size:clamp(32px,8vw,52px)}}
@media(prefers-reduced-motion:reduce){.lj-royal-symbol.winning{animation:none}.lj-royal-spin{transition:none}.lj-royal-spin:not(:disabled):hover{transform:none}}
