.trains-page{--train-gold:#e6b43e;--train-blue:#63e7ff;background:#020303}.trains-titlebar{background-image:linear-gradient(90deg,#020303f7 0%,#020303df 28%,#02030373 56%,#02030318 75%,#020303c7 100%),linear-gradient(#0000 57%,#020303 100%),url(/assets/bally-trains-cover-v1.png);background-position:50% 52%;background-size:cover;border-bottom-color:#6f531b;min-height:clamp(520px,62vh,760px);box-shadow:inset 0 -55px 90px #020303}.trains-titlebar:after{content:"EXPRESS";color:#0000;-webkit-text-stroke:1px #f1c85b10}.trains-titlebar>div{text-shadow:0 5px 30px #000;max-width:740px}.trains-titlebar h1 em{color:var(--train-gold);text-shadow:0 0 35px #e6b43e38}.trains-titlebar>a{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020303c2}.trains-service-board{background:#080806;border:1px solid #4c3b18;grid-template-columns:1.15fr repeat(3,.8fr) 1.4fr;width:min(1450px,94vw);margin:20px auto 0;display:grid}.trains-service-board>div,.trains-service-board>span,.trains-service-board>p{border-right:1px solid #332a18;flex-direction:column;justify-content:center;min-height:94px;margin:0;padding:18px 20px;display:flex}.trains-service-board small{color:#7d704c;letter-spacing:.14em;font-size:.42rem;font-weight:950}.trains-service-board b{color:#e9dfbd;letter-spacing:.04em;margin-top:8px;font:1.25rem Impact}.trains-service-board>div b,.trains-service-board>span:nth-child(2) b{color:var(--train-gold)}.trains-service-board>span:nth-child(4) b{color:var(--train-blue)}.trains-service-board p{color:#756f61;font-size:.65rem;line-height:1.55}.trains-stage{max-width:860px}.trains-hud span:nth-child(2) b{color:var(--train-blue)}.trains-hud span:nth-child(3) b{color:var(--train-gold)}.trains-canvas-shell{aspect-ratio:4/3;isolation:isolate;background:linear-gradient(#02030338,#02030338),url(/assets/bally-trains-yard-v1.webp) 50%/cover no-repeat;border:2px solid #a37a25;border-radius:8px;box-shadow:0 38px 130px #000,0 0 0 5px #0b0905,0 0 90px #e7b53d20}.trains-canvas-shell:after{content:"";z-index:2;pointer-events:none;mix-blend-mode:soft-light;background:repeating-linear-gradient(0deg,#0000 0 4px,#ffffff04 5px);position:absolute;inset:0}.trains-canvas-shell canvas{touch-action:none;width:100%;height:100%;display:block}.trains-overlay{z-index:3;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:radial-gradient(circle,#181207d8,#020303ed 68%)}.trains-overlay small{color:#b59849}.trains-overlay h2{color:var(--train-gold);text-shadow:0 0 38px #e5b13d35}.trains-overlay .game-start{color:#160e02;background:linear-gradient(110deg,#ad7011,#f2ca64);border-color:#ddb13f;box-shadow:0 14px 45px #000,0 0 28px #e3b2392b}.trains-overlay .game-start:hover{color:#120d04;background:#fff;border-color:#fff}.trains-controls{background:#080705;border:1px solid #3b301b;border-top:0;grid-template-columns:repeat(5,1fr);gap:7px;padding:9px;display:grid}.trains-controls button{color:#e4c878;cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:#100d07;border:1px solid #4a3b1d;min-height:72px;padding:9px;font:950 1rem Arial;transition:all .15s}.trains-controls button span{color:#81724a;letter-spacing:.11em;margin-top:6px;font-size:.42rem;display:block}.trains-controls button:active{color:#130d02;background:#d89e26;border-color:#f0c75d;transform:translateY(1px)}.trains-controls .train-pause{color:#68e9ff;background:#071216;border-color:#225b66}.trains-controls .train-pause:active{color:#031013;background:#5ceaff}.trains-keyboard{justify-content:center}.trains-rules{grid-template-columns:1fr 1fr;gap:10px;max-width:1250px;margin:0 auto;padding:0 24px 110px;display:grid}.trains-rules article{background:linear-gradient(135deg,#0d0b07,#050504);border:1px solid #3a2f1b;min-height:250px;padding:32px;position:relative;overflow:hidden}.trains-rules article:after{content:attr(data-number);color:#0000;-webkit-text-stroke:1px #e6b43e16;font:8rem Impact;position:absolute;bottom:-25px;right:-5px}.trains-rules small{color:#977a37;letter-spacing:.14em;font-size:.45rem;font-weight:950}.trains-rules h2{color:#eee7d9;margin:13px 0 12px;font-size:2.8rem}.trains-rules h2 em{color:var(--train-gold)}.trains-rules p{color:#8c8578;max-width:510px;margin:0;line-height:1.7}.trains-attract{flex-wrap:wrap;justify-content:center;gap:7px;margin:20px 0 3px;display:flex}.trains-attract span{color:#e7c76a;letter-spacing:.1em;background:#080704b8;border:1px solid #9b752d;padding:8px 10px;font-size:.42rem;font-weight:950}.trains-attract span:first-letter{color:#62eaff}@media (width<=900px){.trains-service-board{grid-template-columns:repeat(3,1fr)}.trains-service-board>div,.trains-service-board>p{grid-column:1/-1}.trains-hud{grid-template-columns:repeat(4,1fr)}.trains-hud>button{grid-column:1/-1;min-height:46px}}@media (width<=650px){.trains-titlebar{background-image:linear-gradient(#0203036b 0%,#02030328 27%,#020303c4 56%,#020303f8 100%),url(/assets/bally-trains-cover-v1.png);background-position:top;min-height:620px}.trains-service-board{border-inline:0;width:100%;margin-top:0}.trains-service-board>span{padding:13px 10px}.trains-service-board b{font-size:1rem}.trains-hud{grid-template-columns:1fr 1fr}.trains-hud>span{min-height:64px}.trains-controls{grid-template-columns:repeat(3,1fr)}.trains-controls button{min-height:66px}.trains-controls button:first-child{grid-column:2}.trains-controls button:nth-child(2){grid-area:2/1}.trains-controls .train-pause{grid-area:2/2}.trains-controls button:nth-child(4){grid-area:2/3}.trains-controls button:nth-child(5){grid-area:3/2}.trains-rules{grid-template-columns:1fr;padding:0 16px 80px}.trains-rules article{min-height:230px;padding:27px 22px}.trains-rules h2{font-size:2.5rem}.trains-overlay p{font-size:.78rem}.trains-overlay h2{font-size:3rem}.trains-attract{gap:4px;margin:13px 0 0}.trains-attract span{padding:6px;font-size:.34rem}}.trains-hud{grid-template-columns:repeat(5,1fr) 150px}.trains-hud.rush-active{border-color:#ffe06d;box-shadow:0 0 28px #ffd21a22}.trains-hud.rush-active span:nth-child(5) b{color:#ffe06d;text-shadow:0 0 14px #ffd21a}@media (width<=900px){.trains-hud{grid-template-columns:repeat(3,1fr)}.trains-hud>button{grid-column:1/-1}}@media (width<=650px){.trains-hud{grid-template-columns:1fr 1fr}.trains-hud>span{min-height:64px}}
