@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Manrope:wght@400;500;600;700;800&display=swap");
:root{color-scheme:dark;font-family:Manrope,Arial,sans-serif;color:#fff5d7;background:#0b1e39;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,a{-webkit-tap-highlight-color:transparent}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;border:0}a{color:inherit;text-decoration:none}[hidden]{display:none!important}button:disabled{cursor:wait;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:3px solid #fff1a8;outline-offset:4px}button,a,input{transition:background .18s,border-color .18s,transform .18s}button:active{transform:translateY(1px)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-page{width:100%;height:100vh;height:100dvh;overflow:hidden;isolation:isolate}.festive-bg,.sparkles{position:fixed;inset:0;pointer-events:none;z-index:-2}.festive-bg{background-image:linear-gradient(180deg,#05132d18,transparent 55%,#09162a26),var(--background-desktop,url("assets/tube-background.png"));background-position:center;background-size:cover}.festive-bg:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 45%,transparent 40%,#06122630)}.sparkles{z-index:-1;opacity:.6;background-image:radial-gradient(circle at 23px 37px,#fff 1px,transparent 2px),radial-gradient(circle at 173px 189px,#ffefc0 1px,transparent 2px),radial-gradient(circle at 211px 63px,#fff 1px,transparent 3px);background-size:271px 297px,337px 391px,421px 433px;animation:snowfall 28s linear infinite;mask-image:linear-gradient(transparent,#000 20%,#000 80%,transparent)}@keyframes snowfall{to{background-position:50px 594px,-40px 782px,20px 866px}}
.game-header{position:absolute;z-index:5;inset:18px 22px auto;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.event-brand,.player-bar{display:flex;align-items:center;background:linear-gradient(135deg,#102317ed,#0a161eea);border:1px solid #e7bd5366;box-shadow:0 6px 30px #07132728;backdrop-filter:blur(14px);border-radius:14px}.event-brand{padding:5px 14px 5px 10px;min-height:62px;max-width:300px}.event-brand img{width:190px;height:52px;object-fit:contain}.event-brand b{font-size:19px;letter-spacing:1px;color:#ffe39b}.event-brand span{padding:10px;color:#f8d278}.player-bar{padding:10px 12px;gap:18px;min-height:62px}.player-bar>div{min-width:48px;max-width:150px}.player-bar small{display:block;font-size:8px;letter-spacing:1.4px;color:#c8c6ad;margin-bottom:3px}.player-bar b{display:block;font-size:12px;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-bar>div:nth-child(2) b{color:#ffe17b;font-size:17px;line-height:18px}.small-button,.sound-control{border:1px solid #cba85755;border-radius:8px;background:#d8ac3414;color:#fae7a9;font-size:9px;font-weight:800;letter-spacing:.7px;min-height:36px;padding:0 12px}.small-button:hover,.sound-control:hover{background:#d8ac3435}.sound-control{font-size:19px;min-width:36px;padding:0;letter-spacing:0}.panel-link{display:grid;place-items:center;background:linear-gradient(135deg,#bd2638,#8e1629);border:1px solid #e4736e75;border-radius:8px;padding:0 15px;min-height:36px;font-size:10px;font-weight:800;letter-spacing:.8px}.panel-link:hover{background:#b82c3b}
.game-stage{position:absolute;inset:82px 0 12px}.machine-wrap{position:absolute;width:min(calc((100dvh - 104px)*.666667),calc(100vw - 16px));aspect-ratio:2/3;left:50%;top:50%;transform:translate(-50%,-50%);filter:drop-shadow(0 15px 25px #08152730)}#arena{display:block;width:100%;height:100%;touch-action:none;cursor:pointer;user-select:none;outline:none}#arena:active{cursor:pointer}#arena:focus-visible{outline-offset:-4px;border-radius:25%}.play-hint{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:8px;letter-spacing:1.7px;font-weight:800;padding:9px 13px;background:#0d201bd6;border:1px solid #eac46159;border-radius:30px;color:#f3deab;pointer-events:none;box-shadow:0 4px 20px #0d183629}.hint-dot{width:5px;height:5px;background:#f3d276;border-radius:50%;box-shadow:0 0 8px #ffed96}.game-toast{position:absolute;z-index:4;left:50%;top:42%;transform:translate(-50%,-50%);padding:13px 19px;background:#101f20ed;border:1px solid #e7c15b6b;border-radius:12px;text-align:center;font-size:12px;line-height:1.6;max-width:calc(100% - 42px);width:max-content;opacity:0;pointer-events:none;transition:opacity .2s}.game-toast.visible{opacity:1}
.game-dialog{position:fixed;inset:0;margin:auto;width:min(430px,calc(100% - 36px));max-height:calc(100dvh - 40px);overflow:auto;background:radial-gradient(ellipse at top,#33482a,#101d1c 65%);border:1px solid #e1b64e9e;border-radius:25px;padding:37px 30px 30px;color:#fff3cb;box-shadow:0 25px 100px #020b18a6;text-align:center}.game-dialog::backdrop{background:#06132683;backdrop-filter:blur(6px)}.voucher-dialog{padding:29px 35px 26px;background:radial-gradient(ellipse at 50% -15%,#52612d,#142c25 50%,#0d1d23);overflow:hidden}.voucher-dialog:before{content:"";position:absolute;inset:8px;border:1px solid #e3ba5724;border-radius:18px;pointer-events:none}.voucher-emblem{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 21px;background:linear-gradient(140deg,#fff1a4,#d9aa30);color:#29402b;font-size:34px;border-radius:50%;box-shadow:0 0 0 6px #e6c65a0a,0 0 35px #f4cd5721}.dialog-close{position:absolute;z-index:2;right:14px;top:12px;width:32px;height:32px;border:1px solid #e0c08c33;border-radius:50%;background:#e5c6810d;color:#d2bb8c;font-size:24px;line-height:28px}.dialog-close:hover{background:#e5c68125}.dialog-kicker{display:block;letter-spacing:2.5px;font-size:9px;font-weight:800;color:#f8d47a;margin-bottom:12px}.game-dialog h2{font-family:"Cormorant Garamond",Georgia,serif;font-size:39px;line-height:1.08;margin:12px 0 14px;font-weight:700}.voucher-dialog h2{font-size:46px;letter-spacing:-.5px}.game-dialog p{font-size:11px;line-height:1.7;color:#bdc9b6;margin:0 0 23px}.gold-button{display:flex;align-items:center;justify-content:center;gap:24px;width:100%;padding:15px 22px;border-radius:10px;background:linear-gradient(120deg,#fff0a2,#e9ba40 65%,#c58a11);color:#392708;border:1px solid #ffe49a99;font-size:10px;font-weight:800;letter-spacing:1px;box-shadow:inset 0 1px #ffefbd,0 4px 20px #c1880e20}.gold-button span{font-size:18px;line-height:1}.gold-button:hover{background:linear-gradient(130deg,#fff3ba,#f7cc55 55%,#dda227)}.game-dialog form{text-align:left;margin-top:24px}.game-dialog label{font-size:9px;font-weight:700;letter-spacing:1.5px;display:block;margin-bottom:9px;color:#d6d6b4}.game-dialog input{width:100%;padding:14px 15px;border-radius:9px;border:1px solid #bc975360;background:#091916b0;color:#fff3d4;letter-spacing:1px;outline-offset:2px;font-size:13px}.game-dialog input::placeholder{color:#89937c}.game-dialog .form-error{font-size:11px;min-height:17px;color:#ffadac;margin:8px 0 12px}.gate-admin{display:inline-block;font-size:10px;color:#aab9a7;margin-top:23px;padding:6px 10px;letter-spacing:.3px}.gate-admin span{margin-left:5px}
.result-art{height:185px;display:grid;place-items:center;margin:14px -5px 0;background:radial-gradient(ellipse,#e9bb4f24,transparent 65%)}.prize-art{display:grid;place-items:center;width:100%;height:100%;position:relative;min-height:0;min-width:0;overflow:hidden}.prize-art img{display:block;width:100%;height:100%;min-height:0;min-width:0;object-fit:contain;filter:drop-shadow(0 12px 12px #0b07075c)}.prize-icon{width:150px;max-width:90%;height:120px;fill:none;stroke:#f5d580;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 6px 10px #140b0744)}.phone-shape{height:157px;width:78px;border-radius:17px;border:3px solid #f9d1a2;background:radial-gradient(circle at 20px 19px,#1a140d 6px,#a77848 7px,transparent 9px),radial-gradient(circle at 46px 19px,#1a140d 6px,#a77848 7px,transparent 9px),linear-gradient(135deg,#eccdad,#b78249);box-shadow:7px 9px 0 #5a3e28,15px 15px 24px #130b085c;transform:rotate(-12deg);color:#684428;display:grid;place-items:center;font-size:24px;font-weight:700}.gold-shape{height:104px;width:164px;background:linear-gradient(130deg,#fff4b2,#e9b92d 50%,#bf800c);border:4px solid #ffe596;border-radius:9px;transform:rotate(-12deg) skew(-7deg);box-shadow:8px 10px 0 #976007,15px 17px 24px #170e055c;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#7b4c06;text-shadow:0 1px #fff0a4}.gold-shape>span{font-size:25px}.gold-shape small{font-size:10px;letter-spacing:3px}.gold-shape b{font-size:20px;line-height:1.3}.game-page noscript{position:fixed;inset:40% 10% auto;background:#142c25;padding:24px;text-align:center;border-radius:15px}
@media(max-width:760px){.game-header{inset:12px;bottom:auto;gap:8px}.event-brand{min-height:50px;padding:3px 8px;border-radius:11px}.event-brand img{width:151px;height:42px}.player-bar{padding:7px 9px;gap:10px;min-height:50px;border-radius:11px}.player-bar>div{min-width:25px}.player-bar b{font-size:10px;max-width:80px}.player-bar small{font-size:6px;letter-spacing:.8px}.player-bar>div:nth-child(2) b{font-size:14px}.small-button,.panel-link{font-size:8px;min-height:32px;padding:0 9px}.sound-control{min-height:32px;min-width:28px;font-size:17px}.game-stage{inset:73px 0 10px}.machine-wrap{width:min(calc((100dvh - 90px)*.666667),calc(100vw - 16px))}}
@media(max-width:520px){.game-header{flex-wrap:wrap;justify-content:center}.event-brand{margin-right:auto;min-height:43px;padding:2px 8px}.event-brand img{width:153px;height:38px}.player-bar{gap:10px;width:100%;justify-content:center;min-height:43px;padding:5px 10px}.player-bar>div:first-child{margin-right:auto;max-width:110px}.player-bar>div:nth-child(2){margin-right:auto}.small-button{margin-left:auto}.game-stage{inset:112px 0 24px}.machine-wrap{width:min(calc((100dvh - 146px)*.666667),calc(100vw - 8px))}.festive-bg{background-image:linear-gradient(180deg,#061b3024,transparent 50%,#0717261a),var(--background-mobile,url("assets/tube-background-mobile.png"));background-size:cover;background-position:center}.play-hint{bottom:-8px;font-size:6px;letter-spacing:1.1px;padding:8px 10px}.game-toast{font-size:11px;max-width:calc(100% - 30px)}.game-dialog{padding:28px 25px 24px}.voucher-dialog{padding:27px 28px 23px}.voucher-dialog h2{font-size:42px}.game-dialog h2{font-size:33px}.voucher-emblem{margin-bottom:19px}.result-art{height:160px}}
@media(max-height:620px) and (min-width:521px){.game-header{inset:8px 12px auto}.event-brand,.player-bar{min-height:45px;padding:4px 9px}.event-brand img{width:148px;height:36px}.game-stage{inset:54px 0 6px}.machine-wrap{width:min(calc((100dvh - 66px)*.666667),calc(100vw - 16px))}.play-hint{bottom:0;padding:5px 9px;font-size:7px}.game-dialog{max-height:calc(100dvh - 20px);padding:23px}.voucher-emblem{display:none}.voucher-dialog h2{font-size:31px}.game-dialog p{margin-bottom:14px}.game-dialog form{margin-top:16px}.result-art{height:112px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}


.gold-button svg,.gate-admin svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.7;vertical-align:middle}.gate-admin svg{width:11px;height:11px;margin-left:5px}
