:root{--bg:#000;--card-bg:#1a1a1a;--text:#fff;--text-sub:#999;--accent:#fff;--accent2:#ccc;--tab-bg:#1a1a1a;--tab-active:#2a2a2a;--radius:10px}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}.header{height:10px}.logo{font-size:20px;font-weight:700}.logo span{color:var(--accent2)}.tab-bar{-webkit-overflow-scrolling:touch;gap:8px;padding:6px 12px 14px;display:flex;overflow-x:auto}.tab-bar::-webkit-scrollbar{display:none}.tab-btn{cursor:pointer;background:var(--tab-bg);color:var(--text-sub);white-space:nowrap;border:none;border-radius:20px;flex-shrink:0;padding:8px 20px;font-size:13px;font-weight:600;transition:all .2s}.tab-btn:hover{color:var(--text);background:#2a2a2a}.tab-icon{object-fit:contain;vertical-align:middle;width:18px;height:18px;margin-right:5px}.tab-emoji{vertical-align:middle;margin-right:3px;font-size:15px}.tab-btn.active{background:var(--tab-active);color:#fff;border:1px solid #ffffff26}.game-count{color:var(--text-sub);padding:0 16px 10px;font-size:12px}.grid{grid-template-columns:repeat(5,1fr);gap:12px;padding:0 12px 40px;display:grid}.card{cursor:pointer;transition:transform .18s}.card:active{transform:scale(.96)}.card-img{aspect-ratio:1;border-radius:var(--radius);background:var(--card-bg);width:100%;max-width:110px;margin:0 auto;overflow:hidden}.card-img img{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.card:hover .card-img img{transform:scale(1.05)}.card-name{text-align:center;color:var(--text);white-space:nowrap;text-overflow:ellipsis;margin-top:6px;padding:0 2px;font-size:17px;font-weight:500;line-height:1.3;overflow:hidden}.marquee-bar{background:url(/icons/notice-bg.png) 50%/100% 100% no-repeat;border-radius:18px;align-items:center;height:36px;margin:10px 12px 0;padding:0 14px;display:flex;overflow:hidden}.marquee-icon{background:url(/icons/laba.png) 50%/contain no-repeat;flex-shrink:0;width:20px;height:20px;margin-right:10px;font-size:0;display:block}.marquee-wrap{flex:1;position:relative;overflow:hidden}.marquee-text{white-space:nowrap;color:#666;font-size:12px;animation:20s linear infinite marquee}@keyframes marquee{0%{transform:translate(100%)}to{transform:translate(-100%)}}.game-modal{z-index:1000;background:#000;flex-direction:column;display:flex;position:fixed;inset:0}.modal-bar{background:#111;flex-shrink:0;justify-content:space-between;align-items:center;height:44px;padding:0 14px;display:flex}.modal-bar .name{font-size:14px;font-weight:500}.modal-bar .close{color:#fff;cursor:pointer;background:#333;border:none;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex}.modal-bar .close:hover{background:#444}.modal-body{flex:1;position:relative}.modal-body iframe{border:none;width:100%;height:100%}.modal-loading{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spinner{border:3px solid #333;border-top-color:var(--accent2);border-radius:50%;width:32px;height:32px;animation:.6s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-wrap{justify-content:center;padding:80px 0;display:flex}.empty{text-align:center;color:#555;padding:80px 0;font-size:14px}@media (width<=768px){.grid{grid-template-columns:repeat(4,1fr);gap:8px;padding:0 8px 30px}.card-name{font-size:13px}.tab-btn{padding:7px 16px;font-size:12px}}@media (width<=480px){.grid{grid-template-columns:repeat(3,1fr);gap:6px}}@media (width>=1024px){.grid{grid-template-columns:repeat(6,1fr);max-width:1200px;margin:0 auto}.header,.tab-bar,.game-count{max-width:1200px;margin:0 auto}}
