:root{
  --gold:#ffd76a;--gold2:#f5a62b;--ink:#fff0c6;--wood:#4f210f;--deep:#180907;--red:#bd321d;--green:#68d985;
  --shadow:#080302;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);
  font-family:Georgia,"Times New Roman",serif;color-scheme:dark;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;user-select:none}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#070302;color:var(--ink)}
button{border:0;background:none;color:inherit;font:inherit;padding:0;cursor:pointer;touch-action:manipulation}
button:disabled{filter:grayscale(.6);opacity:.65;cursor:not-allowed}
[hidden]{display:none!important}

.preloader{position:fixed;inset:0;z-index:999;overflow:hidden;background:#3a1208 url('assets/loading/quyet-chien-loading.jpg') center/cover no-repeat;display:block}
.splash-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(22,5,1,.04) 0%,rgba(29,7,2,.08) 48%,rgba(33,6,2,.84) 74%,#140301 100%),radial-gradient(circle at 50% 37%,transparent 0 30%,rgba(35,7,1,.2) 58%,rgba(10,1,0,.55) 100%)}
.top-tab{position:absolute;z-index:30;left:50%;top:0;transform:translateX(-50%);width:13%;height:3.4%;min-height:40px;max-width:78px;border-radius:0 0 15px 15px;background:linear-gradient(#27233d,#09081d);box-shadow:0 3px 12px #0009;display:grid;place-items:center}
.splash-tab span{width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:17px solid #aaa7b6}
.splash-brand{position:absolute;z-index:4;left:7%;right:7%;top:29.5%;height:22%;padding:5.7% 5% 3%;text-align:center;background:linear-gradient(180deg,rgba(95,39,15,.96),rgba(49,17,8,.98)),url('assets/ui/bw_bg_a.png') center/100% 100% no-repeat;clip-path:polygon(7% 5%,93% 5%,100% 24%,96% 88%,76% 97%,24% 97%,4% 88%,0 24%);border:2px solid #b97032;box-shadow:inset 0 0 0 3px #2a0b05,0 10px 18px #2c0906cc;text-shadow:0 3px 0 #561c08,0 0 18px #f67f1e}
.splash-brand-kicker{font:800 clamp(8px,2.4vw,13px)/1 Arial,sans-serif;letter-spacing:.32em;color:#eed1a0}
.splash-brand-main{margin-top:2%;font-weight:900;font-size:clamp(25px,8.4vw,52px);line-height:.92;color:#ffe17e;-webkit-text-stroke:1.5px #6e2308}
.splash-brand-sub{font-weight:900;font-size:clamp(28px,9vw,56px);line-height:1;color:#f3a72c;-webkit-text-stroke:1.5px #5c1906}
.splash-brand-note{margin-top:2.2%;font:800 clamp(7px,2vw,12px)/1 Arial,sans-serif;letter-spacing:.18em;color:#fff1ce}
.splash-feature{position:absolute;z-index:4;left:3%;right:3%;top:54.5%;padding:2.5% 2%;text-align:center;background:linear-gradient(90deg,transparent,rgba(72,18,7,.82) 12% 88%,transparent);border-top:1px solid #d78b3a66;border-bottom:1px solid #d78b3a66;text-shadow:0 3px 0 #53160a,0 0 10px #f4a338;font-weight:900}
.splash-feature span{display:block;font-size:clamp(21px,6vw,39px);color:#fff0d1;-webkit-text-stroke:1px #58301e}
.splash-feature strong,.splash-feature b{display:block;font-size:clamp(24px,7.3vw,46px);line-height:1.06;color:#ffbd38;-webkit-text-stroke:1.2px #6a1e0b}
.loading-box{position:absolute;z-index:5;left:16%;right:16%;top:72%}
.loading-track{height:24px;padding:3px;border:3px solid #24130d;border-radius:7px;background:#080808;box-shadow:0 0 0 1px #e4b985,0 4px 15px #000c;position:relative;overflow:hidden}
.loading-track i{display:block;width:0;height:100%;border-radius:4px;background:repeating-linear-gradient(135deg,#dc271c 0 14px,#ef4a33 14px 28px);box-shadow:0 0 12px #ff6a43;transition:width .18s linear}
.loading-track em{position:absolute;inset:0;display:grid;place-items:center;font:800 11px Arial,sans-serif;color:#fff;text-shadow:0 1px 2px #000}
.loading-text{text-align:center;margin-top:10px;font:500 clamp(13px,3.7vw,20px)/1.2 Arial,sans-serif;color:#f5e6da;text-shadow:0 2px 3px #000}
.splash-footer{position:absolute;z-index:4;left:5%;right:5%;bottom:2.4%;text-align:center;font-family:Arial,sans-serif;color:#d9c0b2}
.splash-footer strong{display:block;color:#f4c46f;font-size:clamp(12px,3.2vw,18px);letter-spacing:.14em}
.splash-footer span{display:block;margin-top:4px;font-size:clamp(8px,2.4vw,12px)}
.preloader.leave{animation:fadeOut .65s ease forwards}

.game{position:relative;margin:auto;width:min(100vw,calc(100dvh * .54));height:100dvh;min-height:560px;overflow:hidden;background:#2b120b;isolation:isolate}
.game-backdrop{position:absolute;inset:0;z-index:-5;background:linear-gradient(#1e0d08,#57311d 45%,#183833 80%,#0b1d1b)}
.scene{position:absolute;left:0;width:100%;pointer-events:none;object-fit:fill}
.scene-main{z-index:-3;top:4.5%;height:67%}
.scene-top{z-index:1;top:0;height:33.5%}
.scene-bottom{z-index:2;bottom:-1%;height:37.5%}
.dust-layer{position:absolute;z-index:20;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle,#ffd999 0 1px,transparent 1.7px);background-size:53px 53px;animation:dust 18s linear infinite}
.menu-tab{height:3.1%;min-height:39px}
.menu-tab img{width:33%;image-rendering:auto;filter:drop-shadow(0 1px 1px #000)}
.trophy-btn{position:absolute;z-index:35;right:2%;top:3%;width:8.8%;aspect-ratio:1;border-radius:0 0 13px 13px;background:linear-gradient(#3c2b1d,#160b08);box-shadow:0 4px 9px #0009;display:grid;place-items:center}
.trophy-btn svg{width:69%;fill:#ffd04f;filter:drop-shadow(0 0 5px #ffb228)}
.multiplier-board{position:absolute;z-index:7;left:-1%;top:4.9%;width:102%;height:17%;filter:drop-shadow(0 6px 5px #0008)}
.multiplier-board>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.mult-mark,.mult-current{position:absolute;z-index:2;top:44%;transform:translate(-50%,-50%) rotate(-8deg);font-weight:900;color:#82431e;text-shadow:0 1px 0 #f6c874;font-size:clamp(15px,5vw,30px);letter-spacing:.02em}
.m1024{left:13%;color:#a54d28}.m1{left:31%}.m4{left:70%;transform:translate(-50%,-50%) rotate(7deg)}.m8{left:88%;transform:translate(-50%,-50%) rotate(10deg)}
.mult-current{left:50%;top:50%;font-size:clamp(32px,10vw,60px);color:#ffd77a;-webkit-text-stroke:1.5px #59220c;text-shadow:0 3px 0 #8b3f16,0 0 20px #ffb42d;transform:translate(-50%,-50%)}
.mult-glow{position:absolute;left:38%;top:15%;width:24%;height:60%;border-radius:50%;background:radial-gradient(circle,#ffd977aa,transparent 68%);mix-blend-mode:screen;animation:pulse 1.8s ease-in-out infinite}

.reel-stage{position:absolute;z-index:5;left:1.5%;top:18.1%;width:97%;height:52.8%;overflow:visible}
.reel-wood{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;filter:drop-shadow(0 5px 8px #0008)}
.ways{position:absolute;z-index:4;top:4.7%;font-weight:900;font-size:clamp(10px,3.7vw,22px);color:#692714;text-shadow:0 1px 0 #a9784d;opacity:.92}
.ways-left{left:2%;transform:rotate(-26deg)}.ways-right{right:1%;transform:rotate(25deg)}
.reels{position:absolute;z-index:6;left:1.2%;right:1.2%;top:5.5%;bottom:14%;display:flex;align-items:center;justify-content:stretch;overflow:visible}
.reel-column{width:16.6667%;display:grid;align-self:center;gap:1.3%;padding:0 .25%;overflow:visible}
.reel-column.reel-h3{height:61%;grid-template-rows:repeat(3,1fr)}
.reel-column.reel-h4{height:80%;grid-template-rows:repeat(4,1fr)}
.reel-column.reel-h5{height:100%;grid-template-rows:repeat(5,1fr)}
.symbol{position:relative;width:100%;height:100%;display:grid;place-items:center;overflow:visible;transition:filter .22s,opacity .22s,transform .28s}
.symbol img{display:block;width:auto;height:auto;max-width:103%;max-height:103%;object-fit:contain;filter:drop-shadow(0 3px 2px #120501aa);pointer-events:none;transform:none!important}
.symbol[data-id="bandit"] img,.symbol[data-id="hat"] img,.symbol[data-id="gun"] img{max-width:110%;max-height:110%}
.symbol[data-id="whisky"] img{max-width:100%;max-height:100%}
.symbol[data-id="wild"] img{max-width:103%;max-height:108%}
.symbol[data-id="scatter"] img{max-width:112%;max-height:112%}
.symbol.col-spinning{filter:blur(1.2px) brightness(.82);animation:reelRush .14s linear infinite}
.symbol.settle{animation:settle .28s cubic-bezier(.2,1.5,.4,1)}
.symbol.win{z-index:10;animation:symbolWin .5s ease-in-out infinite alternate;filter:drop-shadow(0 0 10px #ffd237) brightness(1.3)}
.symbol.dim{opacity:.28;filter:brightness(.48)}
.symbol.vanish{animation:symbolVanish .34s ease forwards}
.symbol.drop-in{animation:symbolDrop .42s cubic-bezier(.18,.9,.28,1.28)}
.cascade-status{position:absolute;z-index:19;left:50%;top:5.5%;transform:translateX(-50%);min-width:45%;padding:5px 12px;border-radius:999px;background:rgba(37,10,5,.9);border:1px solid #f1b34d;color:#ffe292;text-align:center;font:900 clamp(8px,2.4vw,13px)/1.2 Arial,sans-serif;box-shadow:0 0 15px #f5a62b99;text-shadow:0 1px 1px #411} 
.win-overlay{position:absolute;z-index:9;inset:7% 2% 2%;pointer-events:none}
.free-badge{position:absolute;z-index:15;left:50%;top:4%;transform:translateX(-50%);min-width:38%;text-align:center;padding:4px 12px 6px;border-radius:0 0 13px 13px;background:linear-gradient(#6f2d15,#2c0d08);border:2px solid #e3a347;box-shadow:0 3px 8px #0009}
.free-badge span{display:block;font:800 clamp(7px,2.1vw,11px)/1 Arial,sans-serif;color:#ffe3a3}.free-badge strong{font-size:clamp(15px,4.4vw,24px);color:#ffd05b}
.big-win{position:absolute;z-index:30;inset:13% 3% 18%;display:grid;place-items:center;animation:bigPop .45s ease}
.big-win>img{position:absolute;width:92%;height:72%;object-fit:contain;filter:drop-shadow(0 0 24px #ff9c28)}
.big-win-copy{position:relative;text-align:center;margin-top:2%}.big-win-copy>span{display:block;font-weight:900;font-size:clamp(23px,7vw,42px);color:#ffe57e;-webkit-text-stroke:1px #6d2309;text-shadow:0 3px 0 #8b3510}
.sprite-number{height:clamp(44px,13vw,76px);display:flex;align-items:center;justify-content:center;gap:1px}.sprite-number img{height:100%;width:auto;filter:drop-shadow(0 2px 1px #3a1108)}

.buy-feature{position:absolute;z-index:18;right:-2.5%;top:61.1%;width:37%;height:8.6%;filter:drop-shadow(0 5px 4px #0008)}
.buy-feature>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.buy-feature span,.buy-feature strong{position:relative;z-index:2;display:block;text-align:center;font-weight:900;color:#ffdc67;text-shadow:0 2px 0 #53170a;-webkit-text-stroke:.5px #7f3414;font-size:clamp(12px,4.2vw,24px);line-height:1.05}.buy-feature span{padding-top:14%}
.win-board{position:absolute;z-index:17;left:4%;top:68.3%;width:92%;height:8.1%;display:grid;place-items:center;filter:drop-shadow(0 4px 4px #0008)}
.win-board>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.win-board>div{position:relative;z-index:2;text-align:center;margin-top:4%}.win-board span{display:block;font-weight:900;font-size:clamp(10px,3vw,17px);color:#ffdb6b;text-shadow:0 2px 0 #55200e}.win-board strong{display:block;font-size:clamp(24px,7.5vw,43px);color:#fff2c0;text-shadow:0 3px 0 #5c1d09,0 0 12px #ffb43d}

.info-bar{position:absolute;z-index:21;left:0;top:76.1%;width:100%;height:7%;display:grid;grid-template-columns:9% 27% 28% 27% 9%;align-items:center}
.info-bar-art{position:absolute;z-index:-1;left:0;top:-17%;width:100%;height:135%;object-fit:fill;opacity:.85}
.money-chip{text-align:center;font-family:Arial,sans-serif;min-width:0;padding:4px 2px;border-radius:999px;background:rgba(19,15,12,.48);text-shadow:0 1px 2px #000}.money-chip small{display:block;font-size:clamp(6px,1.8vw,9px);color:#c8b49d;font-weight:800}.money-chip strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:clamp(9px,2.8vw,15px);color:#ffd735;font-weight:500}.balance-chip{grid-column:2}.win-chip{grid-column:3}.bet-chip{grid-column:4}
.mini-icon{width:86%;aspect-ratio:1;margin:auto;border-radius:50%;display:grid;place-items:center;color:white}.profile-mini{grid-column:1;border:2px solid #fff}.profile-mini span{width:44%;height:44%;border:2px solid #fff;border-radius:50%;position:relative}.profile-mini span:after{content:"";position:absolute;left:50%;top:98%;transform:translateX(-50%);width:155%;height:70%;border:2px solid #fff;border-bottom:0;border-radius:18px 18px 0 0}.money-mini{grid-column:5;border:2px solid #fff}.money-mini span{font:700 clamp(12px,4vw,22px)/1 Arial,sans-serif}

.controls{position:absolute;z-index:22;left:3%;right:3%;top:83.3%;height:11.8%;display:grid;grid-template-columns:1fr 1fr 1.55fr 1fr 1fr;align-items:center;gap:3.3%}
.control-round{width:100%;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:rgba(4,9,9,.76);box-shadow:inset 0 0 0 1px #28474399,0 4px 9px #0007}
.asset-btn img{width:100%;height:100%;object-fit:contain}.asset-btn:active{transform:scale(.92)}
.turbo-btn i{width:50%;height:50%;position:relative;transform:rotate(-24deg)}.turbo-btn i:before,.turbo-btn i:after{content:"";position:absolute;background:#fff;border-radius:4px}.turbo-btn i:before{left:45%;top:0;width:11%;height:100%;transform:rotate(44deg)}.turbo-btn i:after{left:8%;top:42%;width:86%;height:12%;transform:rotate(-7deg);box-shadow:0 -10px 0 -3px #fff,0 10px 0 -3px #fff}.turbo-btn.active{box-shadow:inset 0 0 0 2px #ffd85a,0 0 13px #ffd342}.turbo-btn.active i:before,.turbo-btn.active i:after{background:#ffd75c}
.auto-btn{position:relative}.auto-btn i{width:54%;height:54%;border:4px solid white;border-left-color:transparent;border-radius:50%;position:relative}.auto-btn i:after{content:"";position:absolute;right:-5px;top:-4px;border-left:9px solid white;border-top:6px solid transparent;border-bottom:6px solid transparent;transform:rotate(-42deg)}.auto-btn b{position:absolute;font:900 clamp(7px,2vw,11px)/1 Arial,sans-serif;bottom:17%;right:17%}
.spin-btn{position:relative;width:100%;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:radial-gradient(circle at 45% 40%,#9a4b1d,#5d250f 56%,#2b0d07 58%,#9a501d 69%,#3d160b 72%);box-shadow:inset 0 0 0 4px #a65b27,inset 0 0 0 7px #402013,0 7px 13px #0009,0 0 12px #e38a2c77}
.spin-btn:before{content:"";position:absolute;inset:7%;border:2px solid #d6872c;border-radius:50%}.spin-ring{position:absolute;width:55%;height:55%;border:clamp(4px,1.1vw,7px) solid #f0a12e;border-left-color:transparent;border-radius:50%;filter:drop-shadow(0 0 5px #ff9e1d)}.spin-ring i{position:absolute;left:-11%;top:47%;width:0;height:0;border-top:clamp(7px,2vw,12px) solid transparent;border-bottom:clamp(7px,2vw,12px) solid transparent;border-right:clamp(12px,3vw,18px) solid #f0a12e;transform:rotate(-30deg)}.spin-btn b{position:absolute;bottom:11%;font:900 clamp(7px,2vw,11px)/1 Arial,sans-serif;color:#f7cd7b;letter-spacing:.08em}.spin-btn.spinning .spin-ring{animation:spin .55s linear infinite}.spin-btn:active{transform:scale(.96)}
.game-footer{position:absolute;z-index:23;bottom:calc(.3% + var(--safe-bottom));left:0;right:0;text-align:center;font:700 clamp(6px,1.7vw,9px)/1 Arial,sans-serif;letter-spacing:.09em;color:#c5aa8a;text-shadow:0 1px 2px #000}

.modal-backdrop{position:fixed;z-index:1000;inset:0;background:rgba(6,2,1,.74);backdrop-filter:blur(2px)}
.wood-panel{position:fixed;z-index:1001;color:#fff0ca;filter:drop-shadow(0 8px 18px #000b);overflow:hidden}
.panel-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:-1}
.wood-panel header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:10px 15px;border-bottom:1px solid #855034}.wood-panel header strong{font-size:18px;color:#ffd468;text-shadow:0 2px 0 #5c1807}.close-btn{width:38px;height:38px;display:grid;place-items:center}.close-btn img{width:80%;height:80%;object-fit:contain}
.side-panel{left:0;top:0;width:min(82vw,360px);height:100dvh;padding-top:var(--safe-top);animation:slideRight .28s ease}
.panel-item{position:relative;width:88%;height:58px;margin:10px 6%;display:flex;align-items:center;gap:15px;padding:10px 18px;border-radius:10px;background:linear-gradient(180deg,#6d331b,#2f130b);border:1px solid #bb7740;box-shadow:inset 0 0 12px #0007;text-align:left}.panel-item img{width:34px;height:34px;object-fit:contain}.panel-item span{font-weight:900;color:#ffe0a0}.reset-symbol{font-size:34px}.panel-note{position:absolute;left:8%;right:8%;bottom:calc(20px + var(--safe-bottom));font:12px/1.4 Arial,sans-serif;color:#bfa58d;text-align:center}
.bottom-panel{left:50%;bottom:0;transform:translateX(-50%);width:min(100vw,560px);max-height:70dvh;border-radius:22px 22px 0 0;background:linear-gradient(#5c2b18,#1c0a06);border:2px solid #a86537;animation:slideUp .28s ease;padding-bottom:calc(15px + var(--safe-bottom))}
.option-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:16px}.option-grid button{min-height:54px;border-radius:11px;background:linear-gradient(#713719,#301108);border:1px solid #c17a3d;color:#ffd86d;font-weight:900;box-shadow:inset 0 0 10px #0008}.option-grid button.selected{outline:2px solid #ffe67d;box-shadow:0 0 15px #ffb12d}.option-grid button.danger{color:#ff9b84}
.info-panel{height:auto}.info-content{max-height:50dvh;overflow:auto;padding:8px 18px 22px;font:14px/1.45 Arial,sans-serif;color:#ead6bd}.info-content h3{font-family:Georgia,serif;color:#ffd35f;margin:14px 0 5px}.info-content p{margin:5px 0}.info-content table{width:100%;border-collapse:collapse}.info-content td{padding:8px;border-bottom:1px solid #714229}.info-content img{width:46px;vertical-align:middle;margin-right:8px}
.dialog-panel{left:50%;top:50%;transform:translate(-50%,-50%);width:min(88vw,420px);min-height:390px;border-radius:18px;animation:bigPop .28s ease}.buy-copy{text-align:center;padding:28px 22px 12px}.buy-copy span{display:block;font-size:16px;color:#e9ca9d}.buy-copy strong{display:block;margin:10px 0;font-size:34px;color:#ffd15b;text-shadow:0 2px 0 #6b1b08}.buy-copy p{font:13px/1.45 Arial,sans-serif;color:#c5ab93}.dialog-actions{display:flex;gap:8px;padding:12px 20px 25px}.texture-button{position:relative;flex:1;height:64px}.texture-button img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.texture-button span{position:relative;z-index:2;font-weight:900;font-size:18px;color:#ffe2a1;text-shadow:0 2px 0 #5b1807}
.bonus-panel{position:fixed;z-index:1100;inset:0;overflow:hidden;background:#3a1208;animation:fadeIn .35s ease}.bonus-bg{position:absolute;inset:0;background:url('assets/loading/quyet-chien-loading.jpg') 55% center/cover no-repeat;filter:saturate(1.06) brightness(1.08)}.bonus-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,180,58,.04),rgba(67,17,5,.06) 58%,rgba(21,4,1,.48) 100%),radial-gradient(circle at 50% 34%,rgba(255,221,105,.2),transparent 45%)}.bonus-content{position:absolute;z-index:2;inset:8% 4% 12%;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;text-shadow:0 3px 0 #6a250b,0 0 12px #ffbf49}.bonus-count{font-size:clamp(110px,34vw,210px);line-height:.82;color:#ffd871;-webkit-text-stroke:3px #6b260d;filter:drop-shadow(0 8px 3px #5c1b08)}.bonus-panel h2{margin:5% 0 8%;font-size:clamp(42px,11vw,72px);line-height:.9;color:#fff0bf;-webkit-text-stroke:2px #6d260f}.bonus-panel p{max-width:560px;margin:0 7%;font:900 clamp(18px,5vw,31px)/1.35 Georgia,serif;color:#fff1d1;-webkit-text-stroke:.5px #5e2a18}.bonus-start{position:relative;margin-top:10%;width:min(78vw,390px);height:90px}.bonus-start img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.bonus-start span{position:relative;z-index:2;font-size:clamp(28px,7vw,43px);font-weight:900;color:#ffe394;text-shadow:0 3px 0 #682009}.bonus-bottom{position:absolute;z-index:3;left:2%;right:2%;bottom:2%;height:7%;display:grid;grid-template-columns:1fr .7fr 1fr;align-items:center;border-radius:40px;background:rgba(18,11,8,.72);font:700 clamp(17px,5vw,28px)/1 Arial,sans-serif;color:#ffd637}.bonus-bottom>*{text-align:center}.bonus-bottom b{color:#c9c9c9;border:2px solid #aaa;border-radius:18px;padding:6px 12px;font-size:16px}
.toast{position:fixed;z-index:2000;left:50%;bottom:calc(16% + var(--safe-bottom));transform:translateX(-50%);max-width:86vw;padding:10px 16px;border-radius:999px;background:rgba(22,10,6,.94);border:1px solid #a96939;color:#ffdf9b;font:600 13px/1.3 Arial,sans-serif;text-align:center;box-shadow:0 5px 14px #0009;animation:toastIn .2s ease}
.portrait-warning{display:none;position:fixed;z-index:5000;inset:0;background:#160804;place-items:center;text-align:center;color:#ffd76b;padding:30px}

@media (orientation:landscape) and (max-height:600px){.portrait-warning{display:grid}}
@media (min-width:700px){body{background:radial-gradient(circle,#3d1a0d,#070302 70%)}.game,.preloader{box-shadow:0 0 55px #000}}
@keyframes fadeOut{to{opacity:0;visibility:hidden;transform:scale(1.03)}}@keyframes fadeIn{from{opacity:0}}
@keyframes pulse{50%{opacity:.55;transform:scale(.92)}}@keyframes dust{to{background-position:160px 220px}}
@keyframes reelRush{50%{transform:translateY(9%) scaleY(1.07)}}@keyframes settle{0%{transform:translateY(-18%) scaleY(1.1)}70%{transform:translateY(5%)}100%{transform:none}}
@keyframes symbolWin{to{transform:scale(1.12)}}@keyframes symbolVanish{0%{opacity:1;transform:scale(1)}55%{filter:brightness(1.8) drop-shadow(0 0 14px #ffd54c)}100%{opacity:0;transform:scale(.25) rotate(8deg)}}@keyframes symbolDrop{0%{opacity:0;transform:translateY(-65%) scale(.9)}70%{opacity:1;transform:translateY(7%) scale(1.03)}100%{transform:none}}@keyframes bigPop{from{opacity:0;transform:scale(.72)}to{opacity:1;transform:scale(1)}}
@keyframes spin{to{transform:rotate(-360deg)}}@keyframes slideRight{from{transform:translateX(-100%)}}@keyframes slideUp{from{transform:translate(-50%,100%)}}
@keyframes toastIn{from{opacity:0;transform:translate(-50%,10px)}}

/* V5: Mỗi spin chỉ 1–5 khung ở cột 3–4. Wild sống đúng một cascade. */
.symbol.wild-frame-slot::before{content:"";position:absolute;z-index:0;inset:-9% -8% -11%;background:url('assets/symbols-v5/wild-frame.png') center/100% 100% no-repeat;filter:drop-shadow(0 0 5px #ffc33dcc);opacity:.95;pointer-events:none}
.symbol.wild-frame-slot>img{position:relative;z-index:1;max-width:93%;max-height:93%}
.symbol.wild-frame-slot[data-id="wild"]::before{opacity:1;filter:drop-shadow(0 0 9px #ffd43d)}
.symbol[data-id="wild"] img{max-width:116%;max-height:116%;filter:drop-shadow(0 0 8px #ffd23e) drop-shadow(0 3px 2px #120501aa)}
.symbol.active-wild{z-index:12;animation:wildHold .8s ease-in-out infinite alternate}
.symbol.wild-born{z-index:15;animation:wildTransform .52s cubic-bezier(.2,1.4,.35,1),wildHold .8s .52s ease-in-out infinite alternate!important}
.symbol.wild-expire{animation:wildExpire .34s ease forwards!important}
.pg-idle{font:900 clamp(15px,4vw,23px)/1 Arial,sans-serif;color:#b8b8b8;border:2px solid #aaa;border-radius:14px;padding:5px 9px}
@keyframes wildTransform{0%{opacity:.15;transform:scale(.45);filter:brightness(3) drop-shadow(0 0 18px #fff4a2)}55%{opacity:1;transform:scale(1.2);filter:brightness(1.8) drop-shadow(0 0 22px #ffd32f)}100%{transform:scale(1);filter:drop-shadow(0 0 8px #ffd32f)}}
@keyframes wildHold{to{filter:brightness(1.12) drop-shadow(0 0 9px #ffc52f);transform:scale(1.035)}}
@keyframes wildExpire{to{opacity:0;transform:scale(.3);filter:brightness(2.2) blur(2px)}}
