:root{color:#f7f1dc;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#0b0d14;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{background:linear-gradient(#ffffff09 50%,#0000 50%) 0 0/100% 4px,linear-gradient(135deg,#090a12 0%,#16101f 38%,#071722 72%,#0b0d14 100%);min-height:100vh}a{color:inherit;-webkit-tap-highlight-color:transparent}button{font:inherit}.site-shell{min-height:100vh;padding:0 2rem 2rem}.site-header{justify-content:space-between;align-items:center;width:min(1180px,100%);margin:0 auto;padding:1rem 0;display:flex}.brand{color:#f7f1dc;align-items:center;gap:.75rem;min-width:0;text-decoration:none;display:inline-flex}.brand-mark{color:#ffe869;background:linear-gradient(#ffe8693d,#ffe86914),#171325;border:1px solid #ffe869e6;border-radius:.35rem;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-weight:950;display:grid;box-shadow:0 0 18px #ffe8694d,inset 0 0 16px #ffe8691f}.brand strong,.brand small{display:block}.brand strong{line-height:1.1}.brand small{color:#8ceeff;font-size:.84rem}.site-main{width:min(1180px,100%);margin:0 auto}.arcade-home{gap:1.25rem;display:grid}.arcade-marquee{background:linear-gradient(90deg,#ff2f921a,#0000 42%),linear-gradient(#ffffff0f,#0000 36%),#101321;border:1px solid #8ceeff52;border-radius:.75rem;min-height:14rem;padding:1rem;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 1px #ffffff0a,0 24px 60px #00000061}.arcade-marquee:before,.arcade-marquee:after{content:"";background:repeating-linear-gradient(90deg,#ff2f92 0 2.5rem,#ffe869 2.5rem 5rem,#31e6c7 5rem 7.5rem,#5a7cff 7.5rem 10rem);height:.55rem;position:absolute;left:0;right:0}.arcade-marquee:before{top:0}.arcade-marquee:after{bottom:0}.marquee-copy{align-content:end;gap:.8rem;min-width:0;padding:2rem 1rem 1.5rem;display:grid}.eyebrow{color:#31e6c7;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}.marquee-copy h1{color:#f7f1dc;text-shadow:0 0 10px #ff2f92bf,0 0 22px #31e6c740;max-width:12ch;margin:0;font-size:3.8rem;line-height:.95}.marquee-copy p:not(.eyebrow){color:#c9d3df;max-width:34rem;margin:0;font-size:1rem;line-height:1.65}.game-library{gap:.9rem;padding-bottom:2rem;display:grid}.library-sign{border-bottom:1px solid #8ceeff3d;justify-content:space-between;align-items:end;gap:1rem;padding:.25rem 0 .7rem;display:flex}.library-sign h2{color:#f7f1dc;margin:0;font-size:1.9rem;line-height:1.1}.cabinet-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr));align-items:stretch;gap:1rem;display:grid}.game-card{background:linear-gradient(#ffffff0f,#0000 40%),#101321;border:1px solid #8ceeff42;border-radius:.65rem;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:4.75rem minmax(0,1fr);gap:.9rem;min-height:14rem;padding:.9rem;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid;box-shadow:inset 0 0 0 1px #ffffff08,0 16px 34px #00000047}.game-card:hover,.game-card:focus-within{border-color:#31e6c7e6;transform:translateY(-2px);box-shadow:inset 0 0 0 1px #31e6c733,0 0 24px #31e6c738,0 18px 42px #00000059}.game-card__icon{aspect-ratio:1;color:#ffe869;overflow-wrap:anywhere;text-align:center;text-shadow:0 0 12px #ffe86980;background:linear-gradient(#ffe86940,#ff2f9229),#171325;border:1px solid #ffe869bf;border-radius:.45rem;align-self:start;place-items:center;width:4.75rem;font-size:1rem;font-weight:950;display:grid}.game-card__body{gap:.45rem;min-width:0;display:grid}.game-card h2{color:#f7f1dc;margin:0;font-size:1.25rem;line-height:1.15}.game-card p{color:#b8c2d0;margin:0;font-size:.95rem;line-height:1.55}.game-card__body>p:not(.game-card__controls){-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.game-card__specs{border-top:1px solid #8ceeff24;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .75rem;margin:.2rem 0 0;padding-top:.65rem;display:grid}.game-card__specs div{min-width:0}.game-card__specs dt,.game-card__specs dd{margin:0}.game-card__specs dt{color:#8ceeff;text-transform:uppercase;font-size:.68rem;font-weight:900}.game-card__specs dd{color:#f7f1dc;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:800;overflow:hidden}.game-card__controls{flex-wrap:wrap;gap:.35rem;display:flex}.game-card__controls span{color:#8ceeff;background:#8ceeff14;border:1px solid #8ceeff38;border-radius:999px;padding:.22rem .48rem;font-size:.74rem;font-weight:800}.game-card__footer{border-top:1px solid #ffffff1a;grid-column:1/-1;justify-content:space-between;align-items:center;gap:.75rem;padding-top:.75rem;display:flex}.game-card__footer>span{color:#ffe869;text-transform:uppercase;font-size:.78rem;font-weight:900}.game-card__play,.return-button{color:#11131d;background:#ffe869;border:1px solid #ffe869d9;border-radius:.4rem;justify-content:center;align-items:center;min-height:2.45rem;padding:.55rem .9rem;font-weight:950;text-decoration:none;display:inline-flex;box-shadow:0 0 16px #ffe86938}.game-card__play:hover,.game-card__play:focus-visible,.return-button:hover,.return-button:focus-visible{background:#fff}.empty-library,.missing-game{color:#f7f1dc;background:linear-gradient(#ffffff0d,#0000),#080b12d1;border:1px dashed #8ceeff6b;border-radius:.65rem;align-items:center;gap:1rem;min-height:11rem;padding:1.5rem;display:flex}.empty-library__icon{aspect-ratio:1;color:#31e6c7;text-shadow:0 0 14px #31e6c79e;background:#061016;border:1px solid #31e6c7bf;border-radius:.45rem;flex:none;place-items:center;width:5rem;font-size:1.4rem;font-weight:950;display:grid}.empty-library h2,.missing-game h1{margin:0}.empty-library p,.missing-game p{color:#b8c2d0;margin:.35rem 0 0;line-height:1.65}.game-screen{color:#f7f1dc;background:#080a10;grid-template-rows:auto minmax(0,1fr);width:100%;min-width:320px;min-height:100vh;display:grid}.game-screen__topbar{background:#080a10f5;border-bottom:1px solid #8ceeff29;justify-content:space-between;align-items:center;gap:.75rem;min-height:3.25rem;padding:.5rem 1rem;display:flex}.game-screen__title{text-align:right;justify-items:end;min-width:0;display:grid}.game-screen__title span{text-overflow:ellipsis;white-space:nowrap;max-width:min(58vw,36rem);font-weight:900;overflow:hidden}.game-screen__title small{color:#8ceeff;text-transform:uppercase;font-size:.72rem;font-weight:800}.game-screen .return-button{flex:none;min-height:2.25rem}.play-window{color:#171a1f;background:#fff;min-height:0;display:grid;overflow:auto}.play-window>*{min-height:calc(100vh - 3.25rem)}.game-panel{background:#fff;gap:1.25rem;min-height:100%;padding:2rem;display:grid}.game-panel__instructions h2{margin:0;font-size:2.5rem}.game-panel__instructions p:last-child{color:#4b515b;line-height:1.7}.score-board{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.score-board div{text-align:center;background:#eef1e8;border:2px solid #171a1f;border-radius:.5rem;padding:.9rem}.score-board span,.score-board strong{display:block}.score-board span{color:#555c66;text-transform:uppercase;font-size:.8rem;font-weight:900}.score-board strong{font-size:2.6rem}.game-screen--empty{place-items:center;padding:1rem}.missing-game{flex-direction:column;align-items:flex-start;max-width:36rem}@media (width<=860px){.site-shell{padding-left:1rem;padding-right:1rem}.marquee-copy{padding-left:.25rem;padding-right:.25rem}.marquee-copy h1{font-size:3.25rem}}@media (width<=560px){.site-shell{padding-left:.75rem;padding-right:.75rem}.brand small{display:none}.arcade-marquee{min-height:0;padding:1rem}.marquee-copy{padding-top:1.75rem;padding-bottom:1.25rem}.marquee-copy h1{font-size:2.5rem}.marquee-copy p:not(.eyebrow){font-size:1rem}.library-sign{flex-direction:column;align-items:flex-start}.game-card{grid-template-columns:3.8rem minmax(0,1fr)}.game-card__icon{width:3.8rem}.game-card__footer{flex-direction:column;align-items:stretch}.game-card__play{width:100%}.empty-library{flex-direction:column;align-items:flex-start}.game-screen__topbar{min-height:3rem;padding-left:.75rem;padding-right:.75rem}.game-screen__title span{max-width:50vw}.play-window>*{min-height:calc(100vh - 3rem)}.game-panel{padding:1rem}.game-panel__instructions h2{font-size:1.9rem}.score-board{grid-template-columns:1fr}.score-board strong{font-size:2.2rem}}
