:root{color-scheme:dark;font-family:Arial,sans-serif;color:#fff2b9;background:#163721}*{box-sizing:border-box}body{margin:0;background:#163721}main{width:100%;margin:auto}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,input:focus-visible{outline:3px solid white;outline-offset:3px}
#game-shell{position:relative;width:min(100%,calc((100dvh - 42px) * 16 / 9));margin:auto;isolation:isolate;background:#5d994f}#scene-wrap{aspect-ratio:16/9;position:relative}#wheel{display:block;width:100%!important;height:100%!important}#scene-loading{position:absolute;top:44%;left:18%;padding:15px 25px;border-radius:20px;background:#00391b;color:#ffe293;font:24px Georgia,serif}#scene-loading[hidden]{display:none}#ui-layer{position:absolute;left:0;top:0;width:1600px;height:900px;transform-origin:0 0;pointer-events:none}#ui-layer button,#ui-layer input,#ui-layer summary{pointer-events:auto}
.game-board{position:absolute;left:1010px;top:64px;width:542px;padding:0 16px 13px;border-radius:30px;border:3px solid #fff1a3;background:radial-gradient(ellipse at 40% 0,#09552b,#003619 46%,#00280e);box-shadow:0 0 0 3px #865319,0 0 0 6px #ffd773,inset 0 0 0 3px #635b1e,inset 0 0 0 6px #246724,0 7px 12px #19351488;pointer-events:auto}.game-board:before,.game-board:after{content:'❧';position:absolute;color:#ffe69c;font-size:53px;text-shadow:2px 2px #8e5a12;top:305px;pointer-events:none}.game-board:before{left:-9px;transform:rotate(90deg)}.game-board:after{right:-9px;transform:rotate(-90deg)}
.board-title{display:flex;align-items:center;justify-content:space-between;height:61px;border-bottom:2px solid #c49c45;margin:0 -9px 0;padding:0 10px;gap:8px}.board-title h1{margin:0;font:700 31px/1 Georgia,serif;color:#ffe994;text-shadow:0 2px #995807,0 3px 3px #000;white-space:nowrap;letter-spacing:-.9px}.flower{font-size:48px;line-height:1;color:#ffe67d;text-shadow:2px 3px #8d5109}.demo{font-size:16px;border:1px solid #bbd65e;border-radius:10px;padding:6px 10px;color:#fffad6;background:#002811;box-shadow:inset 0 1px #badb5166}.roundbar{display:flex;justify-content:space-between;align-items:center;height:26px;font-size:12px;color:#d6eabd;padding:0 4px}.roundbar strong{font-weight:500}#countdown{font-size:16px;font-weight:700;color:#ffdf75}
#options h2{position:relative;display:flex;align-items:center;justify-content:center;margin:7px 0 8px;font-size:23px;line-height:27px;height:29px;color:#ffe388;text-shadow:0 2px 2px #000;gap:10px}#options h2:before,#options h2:after{content:'';flex:1;height:20px;border-top:2px solid #efcd76;border-radius:50%;box-shadow:0 -1px #6e4212;transform:translateY(8px)}#options h2:after{transform:translateY(8px) scaleX(-1)}#options h2[data-group=parity],#options h2[data-group=range]{display:none}.grid{display:grid;gap:6px}.numbers{grid-template-columns:repeat(6,1fr)}.groups{grid-template-columns:repeat(4,1fr)}.treasures,.ranges{grid-template-columns:repeat(3,1fr)}.parity{grid-template-columns:repeat(2,1fr);margin-top:10px}.ranges{margin-top:8px}
.grid button{--surface:linear-gradient(150deg,#9cea9a 0%,#1c9c43 9%,#005f1c 26%,#003d17 63%,#056e26 85%,#62b047 100%);position:relative;isolation:isolate;min-width:0;height:43px;border:0;border-radius:9px;padding:4px;color:#fffef0;background:linear-gradient(135deg,#fffcc2,#bd7a10 24%,#ffe991 45%,#8c5309 71%,#ffd566);clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 9px,100% calc(100% - 9px),calc(100% - 9px) 100%,9px 100%,0 calc(100% - 9px),0 10px);font-size:21px;font-weight:750;text-shadow:0 2px 2px #06290b;transition:filter .12s,transform .12s}.grid button:before{content:'';position:absolute;z-index:-1;inset:2px;background:var(--surface);border:1px solid #b9fab3;border-radius:7px;clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 7px,100% calc(100% - 7px),calc(100% - 7px) 100%,7px 100%,0 calc(100% - 7px),0 7px);box-shadow:inset 0 2px 2px #ffffff70,inset 0 -3px 2px #002600}.numbers button{font-size:28px;line-height:1}.grid button:after{content:'';position:absolute;top:3px;left:12px;width:32%;height:3px;background:linear-gradient(90deg,transparent,#fffbe2,transparent);border-radius:50%;opacity:.75}.grid button:hover:not(:disabled){filter:brightness(1.2)}.grid button:active:not(:disabled){transform:translateY(2px)}.grid button:disabled{filter:saturate(.9) brightness(.91)}.grid button[aria-pressed=true]{--surface:linear-gradient(145deg,#fff9bd,#ffd759 12%,#ec9803 42%,#c17400 77%,#ffcc3c);color:#332309;text-shadow:0 1px #fff0a6}.grid button[aria-pressed=true]:before{border-color:#fff1b4}.grid button[aria-pressed=true]:after{content:'✓';position:absolute;left:auto;right:3px;top:0;height:auto;width:auto;background:none;font-size:18px;line-height:1;color:#fff4b0;opacity:1;text-shadow:0 1px #2f3800,1px 0 #2f3800}
.treasures button{height:49px;font-size:19px;display:flex;align-items:center;justify-content:center;gap:4px}.grid .sapphire{--surface:linear-gradient(150deg,#9ee8ff,#0477f3 18%,#0628a1 67%,#295de6)}.grid .gold{--surface:linear-gradient(150deg,#fff7b7,#ffdc4f 18%,#d89200 67%,#ffcf39);color:#382603;text-shadow:0 1px #ffebb2}.grid .emerald{--surface:linear-gradient(150deg,#bbffaf,#12aa2e 18%,#00480e 67%,#168c25)}.symbol{display:inline-block;width:34px;height:36px;flex:0 0 34px;background-image:url('/assets/symbols-v3.png');background-size:200% 200%;background-repeat:no-repeat;vertical-align:middle}.symbol.sapphire{background-position:0 0}.symbol.gold{background-position:100% 0}.symbol.emerald{background-position:0 100%}.symbol.clover{background-position:100% 100%}.treasures small,.parity small,.ranges small{font-size:18px;margin-left:4px;font-weight:600}.parity button,.ranges button{font-size:21px}
.ticket{margin:12px -4px 0;padding:8px 12px 9px;border:1px solid #86ab33;border-radius:18px;background:#002b12;box-shadow:inset 0 1px #bacd5133}.ticket-top{display:flex;align-items:center;justify-content:space-between;color:#ffeca9;font-size:18px}.ticket-bottom{display:flex;align-items:center;gap:5px;margin-top:7px;min-height:37px}#chips{display:flex;gap:5px;flex:1;flex-wrap:wrap}#chips:empty:before{content:'Обери до п’яти варіантів';font-size:15px;color:#96b984}#chips button{height:32px;padding:3px 10px;border:1px solid #ffd875;border-radius:9px;background:linear-gradient(#107b2f,#01431d);color:#fff7d6;font-size:16px;font-weight:650;box-shadow:inset 0 1px #d0ed8660}#clear{background:transparent;border:0;color:#cbd3a3;font-size:11px;padding:4px}
.controls{position:absolute;left:620px;top:804px;width:936px;height:80px;display:flex;align-items:center;gap:20px;padding:8px 13px;border:2px solid #fff0a2;border-radius:25px;background:linear-gradient(105deg,#084d21,#002c10 50%,#075220);box-shadow:0 0 0 3px #a86c19,0 0 0 5px #ffdb77,inset 0 0 0 3px #487728,0 6px 10px #0a2b1766;pointer-events:auto}.balance{display:flex;align-items:center;gap:10px;min-width:181px;border-right:1px solid #c3b940;padding-right:17px}.clover{font-size:58px;line-height:1;color:#84b720;text-shadow:1px 2px #ffd85c}.controls label{display:block;font-size:17px;font-weight:600;color:#fff7d9;text-shadow:0 2px #001b0b}.balance strong{font-size:32px;line-height:1.1;color:#ffe693;text-shadow:0 2px #493702}.stake{text-align:center;border-right:1px solid #c3b940;padding-right:20px}.stake>div{display:flex;align-items:center;gap:10px}.stake button{width:40px;height:40px;border-radius:50%;border:2px solid #e6d064;background:linear-gradient(#208143,#00491a);color:#ffe797;font-size:32px;line-height:30px;text-shadow:0 2px #65510b;box-shadow:inset 0 2px #ddf7b055}.stake input{width:115px;height:35px;padding:0 4px;border-radius:20px;text-align:center;border:1px solid #8eb732;background:#002508;color:#fffde3;font-size:25px;font-weight:700;appearance:textfield}.stake input::-webkit-inner-spin-button{appearance:none}#auto{height:56px;min-width:116px;background:linear-gradient(145deg,#a6ec9c,#03862c 15%,#004b16 72%,#127b24);border:2px solid #b5e775;border-radius:14px;color:#fffde9;font-size:23px;font-weight:750;text-shadow:0 2px #073209;box-shadow:inset 0 1px #ffffff,0 2px 3px #001904}#spin{flex:1;min-width:238px;height:60px;border:3px solid #fff1ad;border-radius:33px;background:linear-gradient(#fff1a2,#ffe057 25%,#efb90a 66%,#ffe154);color:#171e04;font-size:25px;font-weight:800;box-shadow:inset 0 0 0 2px #c0840e,inset 0 4px 3px #ffffff80,0 0 0 1px #af6e0c;text-shadow:0 1px #fff2a0}.controls button:disabled{opacity:.7}.controls button:hover:not(:disabled){filter:brightness(1.15)}
.result-capsule{position:absolute;left:314px;top:767px;max-width:565px;display:flex;align-items:center;gap:14px;padding:8px 18px;background:#003313e8;border:2px solid #e3ba55;border-radius:20px;box-shadow:0 2px 6px #0a310a55;font-size:17px;pointer-events:none}#outcome{font-weight:700;color:#ffeb9f}.payout-label{font-size:12px;color:#d6e3be}.is-result .result-capsule{box-shadow:0 0 20px #fff3839c}.is-spinning #countdown{color:white}.status-strip{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:5px 18px;min-height:31px;padding:5px 12px;color:#b4cca5;font-size:10px;background:#0b2919}.status-strip p{margin:0}#error{color:#ffb18e}#error:empty{display:none}.game-details{padding:8px 18px;background:#0b2919;border-top:1px solid #3c542d;font-size:11px;color:#b3cfa4}.game-details summary{cursor:pointer}.game-details p{max-width:1000px;line-height:1.6}.history{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #3c592f;padding:8px}
@media(max-width:849px){#game-shell{width:100%;background:#164f26}#scene-wrap{aspect-ratio:10/9}#ui-layer{position:relative;width:100%;height:auto;transform:none!important;padding:0 10px 16px}.game-board{position:relative;left:auto;top:auto;width:100%;max-width:600px;margin:0 auto;padding:0 10px 12px;border-radius:20px}.board-title{height:56px;padding:0 8px}.board-title h1{font-size:clamp(19px,4.7vw,30px);letter-spacing:-.7px}.flower{font-size:35px}.demo{font-size:11px;padding:5px 7px}.roundbar{height:26px;font-size:10px}#countdown{font-size:14px}#options h2{font-size:20px;height:25px;margin:6px 0}.grid{gap:5px}.grid button{height:41px;font-size:20px}.numbers button{font-size:24px}.treasures button{height:45px;font-size:clamp(11px,3.1vw,19px);gap:1px}.treasures small,.parity small,.ranges small{font-size:14px;margin-left:2px}.symbol{width:25px;height:28px;flex-basis:25px}.parity button,.ranges button{font-size:clamp(14px,3.7vw,20px)}.ticket-top{font-size:15px}.ticket{padding:8px}.ticket-bottom{min-height:34px}#chips button{font-size:13px;padding:3px 6px}.controls{position:relative;left:auto;top:auto;width:100%;max-width:600px;height:auto;min-height:134px;margin:18px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:10px 12px;border-radius:20px}.balance{min-width:0;justify-content:center;border:0;padding:0;gap:5px}.clover{font-size:40px}.controls label{font-size:12px}.balance strong{font-size:27px}.stake{padding:0;border:0}.stake>div{justify-content:center;gap:5px}.stake button{width:31px;height:31px;font-size:26px;line-height:25px}.stake input{width:76px;height:30px;font-size:21px}#auto{min-width:0;height:45px;font-size:20px}#spin{min-width:0;height:47px;font-size:clamp(15px,4vw,23px);border-radius:24px}.result-capsule{position:relative;left:auto;top:auto;margin:15px auto 0;width:max-content;max-width:100%;font-size:13px;padding:7px 12px}.status-strip{font-size:9px}.game-board:before,.game-board:after{font-size:37px;top:280px}}
@media(prefers-reduced-motion:reduce){button{transition:none}}
.numeral-picker{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;padding:8px 14px;min-height:58px;background:linear-gradient(#123b25,#0b2919);border-top:1px solid #718249;color:#dfe4bd;font-size:13px}.picker-label{margin-right:10px}.numeral-picker button{display:flex;align-items:center;gap:9px;min-height:40px;padding:3px 14px;border:1px solid #617440;border-radius:9px;background:#123621;color:#dfe4bd;font-size:13px;transition:background .15s,border-color .15s}.numeral-picker button:hover{background:#225737;border-color:#c9b46a}.numeral-picker button[aria-pressed=true]{background:#34572b;border-color:#f7d57e;color:#fff3c4;box-shadow:inset 0 0 0 1px #f7d57e33}.numeral-sample{width:32px;line-height:30px;font-size:26px;color:#ffe4a0;text-shadow:0 1px 1px #241907}.sample-ivory{font-family:'Baskerville Old Face','Baskerville','Times New Roman',serif;color:#fff9e6;font-size:30px}.sample-story{font-family:'Bookman Old Style',Georgia,serif;font-weight:bold;color:#ffdc67;font-size:23px}.sample-deco{font-family:Bahnschrift,Arial,sans-serif;font-weight:600;letter-spacing:1px}.sample-gilded{font-family:'Palatino Linotype','Book Antiqua',Georgia,serif;font-weight:bold}
@media(min-width:850px){#game-shell{width:min(100%,calc((100dvh - 100px) * 16 / 9))}}
@media(max-width:600px){.numeral-picker{gap:6px;padding:10px}.picker-label{width:100%;margin:0 0 3px;text-align:center}.numeral-picker button{justify-content:center;flex:1 1 44%;padding:3px 8px}}
.game-board.board-pixi{background:transparent;border-color:transparent;box-shadow:0 8px 20px #001d2040}.board-art{position:absolute;left:-3px;top:-3px;z-index:0;pointer-events:none;display:block}.board-pixi>*:not(.board-art){position:relative;z-index:1}.game-board.board-pixi:before,.game-board.board-pixi:after{display:none}.board-pixi .board-title{border-bottom-color:transparent}.board-pixi .flower{visibility:hidden}.board-pixi .board-title h1{font-family:'Palatino Linotype','Book Antiqua',Georgia,serif;font-size:30px;letter-spacing:-.9px;background:linear-gradient(#fff6d4,#ffe8a2 38%,#d7af53 74%,#fff0b9);background-clip:text;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 1px #00180d);text-shadow:none;line-height:1.2}.board-pixi .demo{border-color:#a8a76a;border-radius:7px;background:#062f1e;color:#e9e8c2;box-shadow:inset 0 1px #d7de9b22}.board-pixi .roundbar{color:#bcd5b5;padding:0 7px}.board-pixi #options h2{font-family:'Palatino Linotype','Book Antiqua',Georgia,serif;font-size:22px;font-weight:700;color:#ffe7a6;text-shadow:0 1px 1px #001e11;letter-spacing:.1px}.board-pixi #options h2:before,.board-pixi #options h2:after{visibility:hidden}.board-pixi .grid button{background:transparent;clip-path:none;border-radius:7px;box-shadow:none;color:#fff0c9;text-shadow:0 1px 1px #002b18;font-weight:600;transition:color .12s;filter:none;transform:none}.board-pixi .grid button:before,.board-pixi .grid button:after{display:none}.board-pixi .grid button:hover:not(:disabled),.board-pixi .grid button:active:not(:disabled),.board-pixi .grid button:disabled{filter:none;transform:none}.board-pixi .numbers button,.board-pixi .numbers button[aria-pressed=true]{color:transparent!important;text-shadow:none!important}.board-pixi .grid button[aria-pressed=true],.board-pixi .grid .gold{color:#25441e;text-shadow:0 1px #fff0b177}.board-pixi .groups button{font-family:'Palatino Linotype','Book Antiqua',Georgia,serif;font-size:22px;font-weight:bold}.board-pixi .treasures button{font-size:17px;gap:3px}.board-pixi .treasures small{font-size:16px}.board-pixi .parity button,.board-pixi .ranges button{font-size:19px}.board-pixi .symbol{width:30px;height:32px;flex-basis:30px;filter:drop-shadow(0 1px 1px #00240f88)}.board-pixi .ticket{background:transparent;border-color:transparent;box-shadow:none}.board-pixi .ticket-top{color:#f7e4a7;font-size:16px}.board-pixi #chips:empty:before{color:#aac0a3;font-size:13px}.board-pixi #chips button{border-color:#cfa758;background:linear-gradient(#216340,#083a24);font-weight:600}.board-pixi #clear{color:#c4d2b6}.board-pixi .grid button:focus-visible{outline:2px solid #fff6cd;outline-offset:2px}
@media(max-width:849px){.board-pixi .board-title h1{font-size:clamp(18px,4.5vw,29px)}.board-pixi #options h2{font-size:20px}.board-pixi .treasures button{font-size:clamp(11px,3vw,17px);gap:1px}.board-pixi .treasures small{font-size:13px;margin-left:1px}.board-pixi .symbol{width:24px;height:26px;flex-basis:24px}.board-pixi .groups button{font-size:clamp(16px,4.4vw,22px)}.board-pixi .parity button,.board-pixi .ranges button{font-size:clamp(13px,3.5vw,19px)}.board-pixi .ticket-top{font-size:14px}}
/* Physical enamel / gold artwork rendered in Blender; labels remain live. */
.game-board.board-pixi{box-shadow:0 12px 30px #001c2370;border-radius:30px}
.board-pixi .board-title{padding:0 14px;height:65px}
.board-pixi .board-title h1{font-size:28px;letter-spacing:-.7px}
.board-pixi .demo{font-size:12px;border:1px solid #c7b77b66;border-radius:20px;padding:5px 10px;background:#00322366;box-shadow:none}
.board-pixi #options h2{font-family:Bahnschrift,'Segoe UI',sans-serif;font-size:17px;font-weight:500;letter-spacing:.55px;color:#f2dfb0;text-shadow:none}
.board-pixi .grid button{border-radius:11px;color:#fff8e4;text-shadow:0 1px 2px #001c18cc}
.board-pixi .groups button{font-family:Bahnschrift,'Segoe UI',sans-serif;font-size:21px;font-weight:500}
.board-pixi .parity button,.board-pixi .ranges button{font-size:18px;font-weight:500}
.board-pixi .grid button[aria-pressed=true],.board-pixi .grid .gold{color:#2d2009;text-shadow:0 1px #ffeeb64d}
.board-pixi #chips button{border:1px solid #cdbb7b66;border-radius:16px;background:#0b594a;font-size:14px;box-shadow:none}
.board-pixi .ticket-top{font-weight:500}.board-pixi .roundbar{font-size:11px;color:#c2d2c1}
@media(max-width:849px){.board-pixi .board-title{padding:0 7px;height:59px}.board-pixi .board-title h1{font-size:clamp(17px,4.4vw,28px)}.board-pixi .demo{font-size:10px;padding:4px 7px}.board-pixi #options h2{font-size:16px}.board-pixi .groups button{font-size:clamp(16px,4.4vw,21px)}.board-pixi .parity button,.board-pixi .ranges button{font-size:clamp(13px,3.5vw,18px)}.board-pixi .roundbar{font-size:10px}}
.numeral-sample.sample-sprite{width:44px;height:32px;background-size:384px 192px;background-position:-330px -152px;background-repeat:no-repeat}
.sample-jewelled{background-image:url('/assets/numerals/jewelled.png')}
.sample-softgold{background-image:url('/assets/numerals/softgold.png')}
