.midnight-page{max-width:1160px;--night:#1d1733;--violet:#352255;--lime:#d7f347;--orange:#ff8e41;--pink:#ff85c2}
.midnight-hero{border:2px solid #171520;box-shadow:9px 9px 0 #171520;position:relative;overflow:hidden;min-height:470px;margin:24px 0 24px;color:#fff;display:flex;align-items:end;background:var(--night)}
.midnight-hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.midnight-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(22,13,39,.91),rgba(22,13,39,.46) 54%,rgba(22,13,39,.05))}
.midnight-hero-copy{position:relative;z-index:1;max-width:750px;padding:clamp(27px,5vw,65px)}
.midnight-hero .eyebrow{color:var(--lime);text-transform:uppercase;letter-spacing:.12em}
.midnight-hero h1{font-size:clamp(45px,7vw,88px);line-height:.93;letter-spacing:-.065em;margin:16px 0}
.midnight-hero h1 em{color:var(--lime)}
.midnight-hero p{max-width:590px;font-size:clamp(18px,2.2vw,24px);line-height:1.35}
.midnight-hero a,.midnight-play-link{display:inline-block;background:var(--lime);color:#171520;border:2px solid #171520;padding:13px 17px;text-decoration:none;font:700 13px 'DM Mono',monospace;text-transform:uppercase;box-shadow:4px 4px 0 #171520}
.midnight-hero a:hover,.midnight-hero a:focus-visible{background:#fff}
.midnight-byline{display:flex;flex-wrap:wrap;gap:10px 24px;border-bottom:2px solid #171520;padding:18px 0;font:12px 'DM Mono',monospace;text-transform:uppercase}
.midnight-intro,.midnight-story{max-width:850px;margin:54px auto;font-size:18px;line-height:1.65}
.midnight-intro strong{background:var(--lime);box-shadow:4px 0 var(--lime),-4px 0 var(--lime)}
.midnight-story h2,.midnight-rules h2{font-size:clamp(31px,4vw,52px);line-height:1.04;letter-spacing:-.05em;margin:0 0 18px}
.midnight-story a,.midnight-rules a{font-weight:700;text-decoration-thickness:2px;text-underline-offset:3px}
.midnight-game{margin:60px auto;max-width:930px;background:var(--night);color:#fff;border:3px solid #171520;box-shadow:10px 10px 0 #171520;position:relative;overflow:hidden;padding:clamp(14px,3vw,30px)}
.midnight-game:before{content:"";position:absolute;width:310px;height:310px;border-radius:50%;background:radial-gradient(circle,#8c48be66,transparent 70%);top:-125px;right:-100px;pointer-events:none}
.midnight-game-head{position:relative;display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:17px}
.midnight-game-kicker{font:700 11px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.16em;color:var(--lime)}
.midnight-game h2{margin:5px 0 5px;font-size:clamp(29px,4vw,48px);letter-spacing:-.055em;line-height:1}
.midnight-demo-badge{flex:none;background:var(--lime);color:#171520;border:2px solid #171520;box-shadow:3px 3px 0 #ff8e41;font:700 11px 'DM Mono',monospace;padding:8px 10px;transform:rotate(3deg)}
.midnight-statusbar{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 15px}
.midnight-stat{background:#302348;border:1px solid #7a6490;padding:9px 12px;min-width:0}
.midnight-stat span{display:block;color:#d7cee0;font:10px 'DM Mono',monospace;text-transform:uppercase;letter-spacing:.08em}
.midnight-stat strong{font-size:clamp(17px,2.6vw,26px);color:#fff;line-height:1.25;font-variant-numeric:tabular-nums}
.midnight-cabinet{border:5px solid #efac55;background:linear-gradient(125deg,#aa6b2c,#ffe08f 17%,#b76a29 32%,#fbbf62 60%,#854522);border-radius:24px;padding:clamp(8px,1.8vw,18px);box-shadow:inset 0 0 0 3px #532842,0 9px 0 #7b3d2e,0 22px 30px #08061188}
.midnight-board{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(3,minmax(65px,1fr));gap:clamp(3px,.8vw,8px);background:#211438;border:3px solid #100d20;border-radius:11px;padding:clamp(4px,.8vw,8px);min-height:clamp(222px,37vw,394px)}
.midnight-cell{background:#513373;border:2px solid #aa80d3;border-radius:9px;display:grid;place-items:center;position:relative;min-width:0;overflow:hidden;box-shadow:inset 0 3px 0 #ffffff24}
.midnight-cell img{width:min(94%,125px);height:min(94%,125px);object-fit:contain;display:block}
.midnight-cell[data-kind="moon"]{background:radial-gradient(circle at 50% 30%,#598761,#355867 55%,#24415a)}
.midnight-cell[data-kind="rabbit"]{background:radial-gradient(circle at 50% 30%,#bb5091,#713c91 65%)}
.midnight-cell[data-kind="bat"],.midnight-cell[data-kind="cat"]{background:#795498}
.midnight-cell[data-kind="moon"]:after,.midnight-cell[data-kind="rabbit"]:after{position:absolute;bottom:3px;left:50%;transform:translateX(-50%);font:900 clamp(7px,.9vw,11px) 'DM Mono',monospace;letter-spacing:.03em;padding:2px 4px;border-radius:2px;color:#1d1733;background:#d7f347;box-shadow:0 2px 0 #1d1733;white-space:nowrap}
.midnight-cell[data-kind="moon"]:after{content:"SCATTER"}.midnight-cell[data-kind="rabbit"]:after{content:"WILD";background:#ff85c2}
.midnight-cell.is-pay{outline:4px solid var(--lime);outline-offset:-5px;z-index:1;background:#6a477f}
.midnight-cell.is-reeling img{animation:midnight-roll .16s linear infinite}
@keyframes midnight-roll{0%{transform:translateY(-15%) scale(.96)}50%{transform:translateY(15%) scale(.96)}100%{transform:translateY(-15%) scale(.96)}}
.midnight-cell.is-landing img{animation:midnight-land .48s cubic-bezier(.14,1.65,.35,1) both}
@keyframes midnight-land{0%{transform:translateY(-45%) scale(.75);opacity:.5}65%{transform:translateY(9%) scale(1.12);opacity:1}100%{transform:translateY(0) scale(1);opacity:1}}
.midnight-cell.is-pay{animation:midnight-win-glow 1.1s ease-in-out infinite alternate}
.midnight-cell.is-pay img{animation:midnight-win-icon 1.1s ease-in-out infinite alternate}
@keyframes midnight-win-glow{from{outline-color:var(--lime);background:#6a477f}to{outline-color:#ff91c1;background:#8452a0}}
@keyframes midnight-win-icon{from{transform:scale(1)}to{transform:scale(1.14) rotate(-3deg)}}
.midnight-cabinet{animation:midnight-cabinet-glow 5s ease-in-out infinite alternate}
@keyframes midnight-cabinet-glow{from{box-shadow:inset 0 0 0 3px #532842,0 9px 0 #7b3d2e,0 22px 30px #08061188}to{box-shadow:inset 0 0 0 3px #532842,0 9px 0 #7b3d2e,0 22px 36px #b2609566}}
.midnight-game:before{animation:midnight-moon-breathe 7s ease-in-out infinite alternate}
@keyframes midnight-moon-breathe{from{transform:scale(.85);opacity:.5}to{transform:scale(1.2);opacity:1}}
.midnight-game.is-bonus .midnight-cabinet{animation:midnight-bonus-flash .3s ease-in-out 5 alternate}
@keyframes midnight-bonus-flash{from{border-color:#efac55}to{border-color:#d7f347}}
.midnight-burst{position:absolute;inset:0;pointer-events:none;z-index:8;overflow:hidden;display:grid;place-items:center}
.midnight-burst strong{padding:14px 28px;background:#d7f347;color:#1d1733;border:3px solid #1d1733;box-shadow:7px 7px 0 #ff8e41;font:900 clamp(27px,5vw,58px) 'Space Grotesk',sans-serif;letter-spacing:-.05em;transform:rotate(-5deg);animation:midnight-burst-title 1.5s ease both}
.midnight-burst i{position:absolute;top:-20px;left:var(--x);width:9px;height:18px;background:var(--hue);border-radius:2px;animation:midnight-confetti 1.25s var(--delay) ease-in both}
@keyframes midnight-burst-title{0%{transform:scale(.3) rotate(-17deg);opacity:0}22%{transform:scale(1.15) rotate(3deg);opacity:1}48%{transform:scale(1) rotate(-5deg);opacity:1}85%{opacity:1}100%{transform:scale(.88) rotate(-7deg);opacity:0}}
@keyframes midnight-confetti{0%{transform:translateY(-20px) rotate(0)}100%{transform:translateY(700px) rotate(840deg)}}
.midnight-result{min-height:46px;display:flex;align-items:center;justify-content:center;text-align:center;margin:12px 0;background:#130f25;border:1px solid #66517d;padding:8px 12px;color:var(--lime);font:700 clamp(12px,1.9vw,17px) 'DM Mono',monospace}
.midnight-result.is-win{background:#d7f347;color:#171520;animation:midnight-flash .65s ease}
@keyframes midnight-flash{from{transform:scale(.97)}to{transform:scale(1)}}
.midnight-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:center}
.midnight-controls button{border:2px solid #171520;cursor:pointer;font:700 14px 'DM Mono',monospace;min-height:48px;padding:11px 17px;box-shadow:3px 3px 0 #08070e;transition:transform .15s,box-shadow .15s}
.midnight-controls button:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:5px 5px 0 #08070e}
.midnight-controls button:focus-visible{outline:3px solid #fff;outline-offset:3px}
.midnight-controls button:disabled{opacity:.5;cursor:not-allowed}
.midnight-spin{background:var(--lime);min-width:170px;font-size:20px!important}
.midnight-bet{background:#fff}.midnight-reset{background:var(--orange)}
.midnight-bet-display{font:700 12px 'DM Mono',monospace;text-transform:uppercase;padding:0 5px}
.midnight-game-foot{font:11px 'DM Mono',monospace;text-align:center;color:#d0c4d8;margin:18px 0 0;line-height:1.5}
.midnight-cast{margin:72px 0;padding:clamp(18px,3vw,34px);background:#f7ebfc;border:3px solid #171520;box-shadow:8px 8px 0 #171520}
.midnight-cast-head{max-width:650px;margin-bottom:25px}.midnight-cast-head span{font:700 11px 'DM Mono',monospace;letter-spacing:.13em;color:#6a327e}.midnight-cast-head h2{margin:9px 0;font-size:clamp(31px,4vw,53px);letter-spacing:-.05em;line-height:1}.midnight-cast-head p{font-size:17px;line-height:1.5;margin:0}
.midnight-cast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.midnight-cast-grid figure{margin:0;min-width:0;display:grid;grid-template-rows:1fr auto;align-items:center;padding:10px;background:#5b367d;border:2px solid #21132e;box-shadow:4px 4px 0 #21132e;overflow:hidden}.midnight-cast-grid img{display:block;width:100%;height:clamp(130px,16vw,195px);object-fit:contain;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.midnight-cast-grid figure:hover img{transform:scale(1.1) rotate(-3deg)}.midnight-cast-grid figcaption{margin:8px -10px -10px;padding:9px 10px;background:#d7f347;border-top:2px solid #21132e;color:#21132e;font:800 13px 'DM Mono',monospace;text-transform:uppercase}.midnight-cast-grid .midnight-cast-wild{background:#82478d}.midnight-cast-wild figcaption{background:#ff85c2}
.midnight-rules{margin:70px 0;padding:clamp(20px,3vw,37px);border:2px solid #171520;background:#fffdf8;box-shadow:7px 7px 0 #171520}
.midnight-rules p,.midnight-rules li{font-size:17px;line-height:1.6}
.midnight-rules-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.midnight-rules-grid>div{min-width:0}
.midnight-table-wrap{overflow-x:auto;width:100%;max-width:100%}
.midnight-rules table{border-collapse:collapse;width:100%;min-width:360px;font-size:15px}
.midnight-rules th,.midnight-rules td{text-align:left;border-bottom:1px solid #a8a3a0;padding:9px 8px}
.midnight-pay-icon{width:30px;height:30px;object-fit:contain;vertical-align:middle;margin-right:5px}
.midnight-rules thead{background:var(--lime)}
.midnight-rules details{border-top:2px solid #171520;padding:13px 0}.midnight-rules summary{cursor:pointer;font-weight:700;font-size:18px}
.midnight-rule-note{background:#ffdbbd;padding:14px 17px;border-left:6px solid var(--orange)}
.midnight-related{margin:48px 0}
@media(max-width:760px){.midnight-hero{min-height:480px}.midnight-hero:after{background:linear-gradient(0deg,rgba(22,13,39,.98),rgba(22,13,39,.12) 90%)}.midnight-hero-copy{padding:23px}.midnight-statusbar{gap:5px}.midnight-stat{padding:7px}.midnight-cabinet{border-width:3px;border-radius:14px;padding:5px}.midnight-board{border-width:2px;gap:3px;padding:4px}.midnight-cell{border-width:1px;border-radius:5px}.midnight-controls{gap:7px}.midnight-controls button{padding:8px 10px;min-height:45px}.midnight-spin{order:-1;width:100%}.midnight-rules-grid{grid-template-columns:minmax(0,1fr)}.midnight-rules{padding:16px}.midnight-rules table{min-width:0;table-layout:fixed;font-size:13px}.midnight-rules th:first-child{width:52%}.midnight-rules th:not(:first-child){width:16%}.midnight-rules th,.midnight-rules td{padding:7px 3px}.midnight-pay-icon{width:24px;height:24px;margin-right:4px}.midnight-game{margin:40px -18px;padding:12px 8px;max-width:none;box-shadow:0 7px 0 #171520}.midnight-game-head{align-items:center;padding:0 4px}.midnight-statusbar{padding:0 4px}}
@media(max-width:400px){.midnight-cell img{width:98%;height:98%}.midnight-board{min-height:235px}.midnight-stat strong{font-size:16px}.midnight-demo-badge{font-size:9px}.midnight-game h2{font-size:27px}.midnight-cell[data-kind="moon"]:after,.midnight-cell[data-kind="rabbit"]:after{font-size:6px;bottom:1px;padding:1px 2px}}
@media(max-width:760px){.midnight-cast{margin:52px -18px;padding:18px;box-shadow:0 7px 0 #171520}.midnight-cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.midnight-cast-grid img{height:145px}.midnight-cast-wild{grid-column:span 2}.midnight-cast-wild img{height:190px}}
@media(prefers-reduced-motion:reduce){.midnight-cell.is-reeling img,.midnight-cell.is-landing img,.midnight-cell.is-pay,.midnight-cell.is-pay img,.midnight-game:before,.midnight-cabinet,.midnight-game.is-bonus .midnight-cabinet,.midnight-result.is-win{animation:none}.midnight-controls button{transition:none}}
@media(prefers-reduced-motion:reduce){.midnight-cast-grid img{transition:none}.midnight-cast-grid figure:hover img{transform:none}}
