:root{color-scheme:dark;--ink:#071810;--panel:#10261c;--gold:#edc370;--gold-light:#ffe5a3;--muted:#baad86;--line:#87683b;--emerald:#268a43;--game-font:Heavitas,Arial,sans-serif;--serif:var(--game-font);--sans:var(--game-font)}*{box-sizing:border-box}body{margin:0;background:#051a13;color:#fff1cc;font-family:var(--sans);font-size:16px}button,a,input{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #fff6b5;outline-offset:4px}button{transition:filter .18s,transform .18s,opacity .18s}button:not(:disabled):hover{filter:brightness(1.2)}button:not(:disabled):active{transform:translateY(2px)}[hidden]{display:none!important}#game{position:relative;min-height:100svh;overflow:hidden;isolation:isolate}.landscape{position:absolute;inset:0;background:#153529 url('../assets/jungle.webp') center 42%/cover;z-index:-4}.scene-light{position:absolute;inset:0;background:linear-gradient(0deg,#071710 0%,transparent 35%,#0003 80%,#05180bc9 100%);z-index:-3;pointer-events:none}#atmosphere{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:4;opacity:.7}.topbar{height:52px;display:flex;align-items:center;justify-content:flex-end;padding:0 30px;position:relative;z-index:8}.toolbar{display:flex;gap:10px}.toolbar button{border:1px solid #d0a45d60;border-radius:50%;width:34px;height:34px;background:#102016cf;font-family:var(--serif);font-size:20px}.main-scene{height:calc(100svh - 252px);min-height:480px;max-height:920px;display:grid;grid-template-columns:56% 44%;position:relative;padding:16px 35px 16px;align-items:center}.wheel-area{height:min(100%,740px);aspect-ratio:1;max-width:100%;position:relative;margin:auto}.wheel-halo{position:absolute;inset:1%;border-radius:50%;box-shadow:0 0 70px #ffa80b55,0 0 140px #142311;background:#d29414}.wheel-frame{position:absolute;inset:3%;border-radius:50%;border:9px solid #98651e;background:#422906;box-shadow:0 0 0 3px #ffe39b,0 0 0 10px #65461d,0 0 0 13px #b78339,0 15px 30px #000b,inset 0 0 15px #0009;overflow:hidden}.wheel-frame::after{content:'';position:absolute;inset:0;border-radius:50%;box-shadow:inset 0 0 0 5px #ffe9a28c,inset 0 0 0 17px #64391355,inset 0 0 24px 7px #070400ab;pointer-events:none;background:linear-gradient(135deg,#fff4c044,transparent 32%,transparent 62%,#1e0c0044)}#wheel{width:100%;height:100%;display:block;will-change:transform}.wheel-hub{position:absolute;inset:36%;border-radius:50%;border:5px solid #fff0a6;background:radial-gradient(circle at 36% 25%,#ffe9a1,#e2a537 38%,#9b591b 70%);box-shadow:0 0 0 5px #723f14,0 0 0 10px #d6a742,0 9px 16px #0008;display:grid;place-items:center;pointer-events:none}.paw{width:85%;height:85%;display:grid;place-items:center;font-size:70px;color:#78490e;text-shadow:0 2px 1px #ffe09d;background:url('../assets/symbols.webp') 66.6667% 100%/400% 400%}.pointer{position:absolute;z-index:5;top:-.2%;left:46.5%;height:10%;width:7%;filter:drop-shadow(0 3px 4px #000a);transform-origin:50% 10%;background:linear-gradient(90deg,#8b4e0e,#fff6c1 42%,#e99716 51%,#8f4709);clip-path:polygon(0 0,100% 0,50% 100%);border-top:4px solid #ffffbc}.pointer.tick{animation:tick .08s ease-out}.wheel-doors{position:absolute;inset:0;border-radius:50%;overflow:hidden;z-index:3;transition:visibility 0s 2.6s}.wheel-door{position:absolute;top:0;bottom:0;width:50%;overflow:hidden;transition:transform 2.5s cubic-bezier(.46,0,.26,1);background:#b87c23;border:2px solid #643609;box-shadow:0 0 30px #0009}.wheel-door.left{left:0;transform-origin:left}.wheel-door.right{right:0;transform-origin:right}.wheel-door::before{content:'';position:absolute;top:0;width:200%;height:100%;border-radius:50%;background:url('../assets/reference.webp') 20% 13%/223% 126%}.wheel-door.left::before{left:0}.wheel-door.right::before{right:0}.door-pattern{position:absolute;inset:8%;border:3px solid #ffe6a538;border-radius:50%;filter:drop-shadow(0 0 7px #fff)}.door-lock{position:absolute;inset:37%;border-radius:50%;border:6px solid #f0c76b;background:radial-gradient(circle,#f3c352,#ae671b);display:grid;place-items:center;box-shadow:0 0 0 4px #693b0d,0 0 22px #0008;transition:transform .5s,opacity .3s .4s}.door-lock span{font-size:80px;color:#613808}.wheel-doors.open .left{transform:translateX(-105%) rotateY(-50deg)}.wheel-doors.open .right{transform:translateX(105%) rotateY(50deg)}.wheel-doors.open .door-lock{transform:rotate(100deg) scale(.85);opacity:0}.wheel-doors.open{visibility:hidden}.wheel-doors.open .door-pattern{box-shadow:inset 0 0 40px #ffe590;animation:engraving .6s}.adventure-side{height:100%;position:relative;display:flex;align-items:center;flex-direction:column}.brand{position:relative;text-align:center;margin:0;z-index:2;filter:drop-shadow(0 5px 4px #001004);width:100%;height:38%;max-height:260px;flex:none}.brand h1{margin:0;width:100%;height:100%;min-width:0;min-height:0;display:block}.brand-logo{display:block;width:100%;height:100%;object-fit:contain}#host{height:61%;width:auto;max-width:76%;position:absolute;bottom:0;left:-4%;object-fit:contain;pointer-events:none;filter:drop-shadow(8px 12px 7px #041c1080)}.spin-area{position:absolute;bottom:7%;right:1%;width:53%;text-align:center;z-index:3}.spin-area p{font-family:var(--serif);font-size:17px;line-height:1.4;text-shadow:0 2px 4px #000;background:linear-gradient(90deg,transparent,#0a261ba8,transparent);padding:5px;min-height:52px;margin:0 0 12px}.spin-button{width:100%;height:80px;display:flex;gap:18px;align-items:center;justify-content:center;border:3px solid #ffe085;border-radius:10px;background:linear-gradient(#66c147,#21843a 42%,#155c28 51%,#298c38);box-shadow:0 0 0 3px #613d10,0 8px 0 #10381d,0 12px 24px #0009,inset 0 0 0 3px #e4ffbe42;color:#fff6c9;font:700 36px var(--serif);letter-spacing:4px;text-shadow:0 3px #123b1a}.spin-button:disabled{opacity:.62;filter:saturate(.6)}.spin-glyph{font:38px var(--sans);letter-spacing:0}.betting-dock{position:relative;z-index:6;min-height:200px;padding:9px 28px 6px;background:linear-gradient(#1d3022f5,#091c15fc);border-top:3px solid #b48b48;box-shadow:0 -4px 0 #193b25,0 -10px 25px #04120acc}.wallet-row{display:flex;gap:32px;align-items:center;max-width:1500px;margin:0 auto 13px;height:57px}.meter{min-width:170px}.meter>span,.increment>span{display:block;font-family:var(--serif);font-size:11px;letter-spacing:2px;color:#d6b77a;margin-bottom:2px}.meter strong{font-family:var(--serif);font-size:26px;letter-spacing:.5px;font-variant-numeric:tabular-nums}.meter small{display:block;font-size:8px;color:#9eac91;letter-spacing:1.5px;margin-top:1px}.increment>div{display:flex;align-items:center;gap:17px}.increment strong{min-width:64px;text-align:center;font-size:21px;font-family:var(--serif)}.increment button{width:28px;height:28px;border-radius:50%;background:linear-gradient(#f3d37c,#9b6621);border:1px solid #fdebb2;color:#241e12;font-size:24px;line-height:24px}.bet-actions{margin-left:auto;display:flex;gap:12px}.bet-actions button{background:transparent;color:#d7cda7;border:1px solid #9b875a66;border-radius:4px;font-size:15px;padding:8px 14px}.total-meter{text-align:right;border-left:1px solid #9b875a66;padding-left:25px;min-width:175px}.categories{display:grid;grid-template-columns:repeat(8,1fr);gap:10px;max-width:1500px;margin:auto;padding-top:13px}.bet-category{position:relative;min-width:0;height:78px;border:2px solid var(--cat-light);border-radius:6px;box-shadow:0 0 0 2px #271d0d,inset 0 0 15px #000a,0 4px 8px #0008;background:linear-gradient(155deg,var(--cat-light),var(--cat-color) 28%,var(--cat-dark) 83%);display:flex;align-items:center;justify-content:center}.bet-category:before{content:'';position:absolute;inset:3px;border:1px solid #ffe2a24d;border-radius:3px;pointer-events:none}.category-number{font:700 48px var(--serif);color:#ffedcb;text-shadow:2px 3px 0 #2a130c,0 0 6px #301306}.category-name{position:absolute;bottom:5px;left:0;right:0;font:700 14px var(--serif);letter-spacing:1.5px;text-shadow:0 2px 3px #000;z-index:2}.category-portrait{height:82px;width:82px;background-image:url('../assets/symbols.webp');background-size:400% 400%;position:absolute;bottom:4px;filter:drop-shadow(0 2px 4px #000)}.stake-badge{position:absolute;top:-19px;left:50%;transform:translateX(-50%);background:linear-gradient(#163f2b,#0b281b);border:1px solid #fbe09d;box-shadow:0 2px 4px #000a;border-radius:4px;padding:3px 16px;font-size:14px;color:#fff4cf;font-weight:bold;z-index:3;white-space:nowrap;font-variant-numeric:tabular-nums}.bet-category.added .stake-badge{animation:chip .3s ease-out}.bet-category.landed{box-shadow:0 0 0 3px #fff4b9,0 0 28px 10px #ffb92eaa;filter:brightness(1.25)}.dock-note{max-width:1500px;margin:10px auto 0;display:flex;justify-content:space-between;color:#a2b395;font-size:9px;letter-spacing:1.4px}.overline{font-size:11px;color:#dabb76;letter-spacing:3px}.gold-button{background:linear-gradient(#ffe3a0,#dbad50 50%,#b77927 52%,#e2af51);border:1px solid #fff0bb;box-shadow:0 0 0 3px #755122,0 5px 14px #0007,inset 0 0 0 2px #fae5a373;color:#32200d;padding:17px 30px;border-radius:4px;font:bold 17px var(--serif);letter-spacing:2px}.intro-card .gold-button{display:block;width:100%;margin:26px 0 15px}.intro-card .virtual-note{font-size:11px;color:#a9b799;margin-top:20px}.transition{position:absolute;inset:0;z-index:30;pointer-events:none;visibility:hidden;overflow:hidden}.transition.active{visibility:visible;pointer-events:all}.transition-door{position:absolute;top:0;bottom:0;width:50.2%;background:linear-gradient(90deg,#69441c,#edbe62 7%,#bd7b26 9%,#e5b24f 14%,#865215 46%,#d2973d 75%,#ffe39b 94%,#7b4b1a);border:8px solid #4a351e;box-shadow:inset 0 0 0 4px #fddc84,inset 0 0 0 25px #503c2355,inset 0 0 60px #422206;transition:transform .65s cubic-bezier(.52,0,.3,1)}.transition-door::after{content:'';position:absolute;inset:7%;border:6px double #ffdc7c88;background:url('../assets/reference.webp') 21% 12%/400% 125%;opacity:.6}.transition-door.left{left:0;transform:translateX(-103%)}.transition-door.right{right:0;transform:translateX(103%)}.transition.closed .transition-door{transform:translateX(0)}.transition-medallion{position:absolute;left:calc(50% - 90px);top:calc(50% - 90px);width:180px;height:180px;border-radius:50%;background:radial-gradient(#ffe19b,#b97622);border:8px double #634014;box-shadow:0 0 0 5px #fad780,0 0 60px #ffe28a;color:#57380d;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:82px;opacity:0;transition:opacity .16s}.closed .transition-medallion{opacity:1;transition-delay:.55s}.transition-medallion small{font-size:10px;letter-spacing:1px}.shake{animation:shake .35s linear}.bonus-mode .betting-dock{display:none}.bonus-mode .main-scene{display:none}.bonus-scene{min-height:calc(100svh - 52px);position:relative}dialog{border:1px solid #cca457;background:linear-gradient(145deg,#183527,#0b2118);color:#f2e3bb;border-radius:10px;box-shadow:0 0 0 4px #42351e,0 25px 100px #000b;max-height:90svh;max-width:calc(100vw - 28px);padding:26px;width:760px;z-index:40}dialog::backdrop{background:#03150ccb;backdrop-filter:blur(5px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #bd955750;margin-bottom:18px;padding-bottom:12px}.dialog-heading h2{font:30px var(--serif);font-weight:normal;margin:0;color:#efce84}.dialog-heading button{border:1px solid #c5a05d66;background:#0a2118;border-radius:50%;font-size:23px;width:36px;height:36px}#info-body{line-height:1.65;font-size:15px}#info-body h3{font:24px var(--serif);color:#ecd09c;margin-bottom:8px}#info-body table{border-collapse:collapse;width:100%;font-size:14px}#info-body td,#info-body th{padding:7px 10px;border-bottom:1px solid #baa47033;text-align:left}.setting{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:25px;border-bottom:1px solid #baa47033}.setting input[type=range]{accent-color:#e8c078;width:200px}.result-dialog{width:490px;text-align:center;overflow:hidden;padding:26px 34px}.result-card{position:relative}.result-card h2{font:36px/1.1 var(--serif);color:#ffe2a0;margin:12px 0}.result-card p{font-size:13px;color:#cccfab;line-height:1.6;min-height:20px}.result-animal{height:120px;width:120px;display:block;margin:-8px auto 0;background-image:url('../assets/symbols.webp');background-size:400% 400%;filter:drop-shadow(0 0 20px #c3a95a66)}.return-label{display:block;font-size:11px;letter-spacing:3px;color:#c9b876;margin-top:18px}.count-up{display:block;width:100%;background:transparent;font:52px var(--serif);color:#ffe19d;padding:7px 0 15px;font-variant-numeric:tabular-nums}.result-details{border-top:1px solid #b6964d66;border-bottom:1px solid #b6964d66;padding:12px 0;margin-bottom:25px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.result-details span{display:block;font-size:11px;color:#b8c09b;margin-bottom:4px}.result-details strong{font-size:16px;font-weight:normal}.result-card .gold-button{width:100%}.result-card .gold-button span{margin-left:25px}.result-rays{position:absolute;z-index:-1;inset:-50%;background:repeating-conic-gradient(from 10deg,#ffe1a008 0deg 12deg,transparent 12deg 30deg);animation:rays 45s linear infinite;pointer-events:none}#toast{position:fixed;z-index:60;left:50%;bottom:30px;transform:translate(-50%,20px);background:#162d20;border:1px solid #ecd397;border-radius:6px;padding:13px 20px;box-shadow:0 5px 30px #0009;opacity:0;pointer-events:none;transition:.2s;font-size:14px}#toast.show{transform:translate(-50%,0);opacity:1}.dev-tools{position:fixed;left:8px;top:58px;z-index:11;background:#092118ed;border:1px solid #ba9552;padding:8px;max-width:260px;font-size:12px}.dev-tools select,.dev-tools button{background:#173b28;padding:5px;color:#fff2c9;border:1px solid #b69b68;margin:3px}.dev-tools summary{cursor:pointer;color:#ffdb7e}.reduced-motion *, .reduced-motion *::before,.reduced-motion *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}@keyframes chip{from{transform:translate(-50%,-16px) scale(1.3);opacity:.4}to{transform:translate(-50%,0) scale(1);opacity:1}}@keyframes tick{50%{transform:rotate(-15deg)}}@keyframes engraving{50%{filter:brightness(3) drop-shadow(0 0 8px #fff0b3)}}@keyframes shake{25%{transform:translate(3px,1px)}50%{transform:translate(-2px,-1px)}75%{transform:translate(1px,2px)}}@keyframes rays{to{transform:rotate(360deg)}}
@media(min-width:1800px){.main-scene{max-width:1800px;margin:auto}.spin-area{right:5%}}@media(max-height:780px) and (min-width:901px){.topbar{height:40px}.main-scene{height:calc(100svh - 218px);min-height:370px}.betting-dock{min-height:178px;padding-top:6px}.wallet-row{height:48px;margin-bottom:10px}.categories{padding-top:10px}.bet-category{height:64px}.category-portrait{width:68px;height:68px}.category-number{font-size:42px}.spin-button{height:66px}.spin-area{bottom:6%}}@media(max-width:1100px){.main-scene{padding:14px 25px}.wallet-row{gap:15px}.bet-actions{gap:6px}.bet-actions button{padding:7px 10px;font-size:13px}.meter{min-width:135px}.categories{gap:7px}.category-name{font-size:12px}.spin-area{width:57%;right:0}.spin-area p{font-size:15px}}
@media(max-width:760px){.topbar{padding:0 14px;height:46px}.toolbar{gap:6px}.toolbar button{width:30px;height:30px}.main-scene{--mobile-logo-height:clamp(140px,42vw,190px);height:auto;min-height:0;display:flex;flex-direction:column;padding:calc(var(--mobile-logo-height) + 12px) 18px 15px}.wheel-area{width:min(100%,440px);height:auto;aspect-ratio:1}.adventure-side{height:175px;width:100%;max-width:440px;flex:none}.brand{position:absolute;top:calc(-1 * min(calc(100vw - 36px),440px) - var(--mobile-logo-height) - 6px);width:100%;height:var(--mobile-logo-height);max-height:none}#host{height:180px;width:160px;max-width:none;left:1%;bottom:-15px}.spin-area{bottom:4px;right:3%;width:58%}.spin-area p{font-size:14px;min-height:38px;padding:3px;margin-bottom:6px}.spin-button{height:64px;font-size:29px;gap:12px}.spin-glyph{font-size:29px}.betting-dock{min-height:0;padding:10px 12px env(safe-area-inset-bottom,10px)}.wallet-row{height:auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:17px}.meter{min-width:0}.meter strong{font-size:21px}.meter>span,.increment>span{font-size:8px;letter-spacing:1px}.meter small{font-size:6px;letter-spacing:.8px}.increment{text-align:center}.increment>div{gap:5px;justify-content:center}.increment strong{min-width:45px;font-size:18px}.increment button{width:26px;height:26px}.total-meter{grid-column:3;grid-row:1;padding-left:8px;min-width:0}.bet-actions{grid-row:2;grid-column:1/4;justify-content:center;margin:4px 0 -3px;gap:9px}.bet-actions button{padding:5px 16px;min-height:32px}.categories{grid-template-columns:repeat(4,1fr);gap:22px 8px;padding-top:5px}.bet-category{height:70px}.category-portrait{height:74px;width:74px}.category-number{font-size:44px}.category-name{font-size:11px}.stake-badge{top:-15px;font-size:12px;padding:2px 12px}.dock-note{font-size:7px;letter-spacing:.5px;margin:10px auto}.bonus-scene{min-height:calc(100svh - 46px)}.dialog-heading h2{font-size:24px}dialog{padding:20px}.result-dialog{width:400px;padding:18px 24px}.result-animal{width:90px;height:90px}.result-card h2{font-size:30px}.count-up{font-size:42px}.result-details{padding:10px 0;gap:9px;margin-bottom:20px}.setting input[type=range]{width:130px}.dev-tools{top:50px;opacity:.93}}




.toolbar .dev-mode-status{width:auto;max-width:220px;padding:0 10px;border-radius:5px;border-color:#efc873;background:#322911;color:#ffe6a2;font:700 11px var(--sans);white-space:nowrap}.wheel-test-settings{border-top:1px solid #baa47055;margin-top:24px}.dev-wheel-fields{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:16px}.dev-wheel-fields label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:#dac594}.dev-wheel-fields select{width:100%;min-width:0;min-height:42px;padding:8px;color:#fff0bf;background:#102d1e;border:1px solid #b08c50;border-radius:4px;font:15px var(--sans)}.dev-wheel-fields select:disabled{opacity:.5}.dev-matching-bet{padding:10px 16px;background:#225132;border:1px solid #c9a86a;border-radius:4px;color:#ffedc0;font-size:14px}.wheel-test-settings .dev-help{font-size:12px;color:#b5c2a8;line-height:1.6}#dev-landing-description{font-size:14px;color:#f0dab0}@media(max-width:760px){.toolbar .dev-mode-status{font-size:10px;padding:0 7px}.dev-wheel-fields{gap:10px}.dev-wheel-fields select{font-size:13px}}
/* Keep shared rules/settings controls visible while only the panel content scrolls. */
#info-dialog{padding:0;overflow:hidden}
#info-dialog[open]{display:flex;flex-direction:column}
#info-dialog>.dialog-heading{flex:none;margin:0;padding:20px 26px 16px}
#info-dialog>.dialog-heading h2{flex:1;min-width:0}
#close-info{flex:none;display:grid;place-items:center;width:40px;height:40px;padding:0}
#info-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 26px 26px}
@media(max-width:760px){#info-dialog>.dialog-heading{padding:16px 20px 12px}#info-body{padding:0 20px 20px}}

.setting.setting-secondary{margin-top:4px;padding:10px 0 10px 18px;border-bottom:0;border-left:2px solid #ba955755;gap:14px}
.setting.setting-secondary:has(input:disabled){opacity:.55}
#info-body .setting-secondary-note{margin:0 0 8px;padding-left:20px;font-size:12px;line-height:1.45;color:#c6cbaa}
