*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:STZhongsong,华文中宋,Songti SC,SimSun,宋体,"Noto Serif SC",serif;background:#07070f;color:#e5e7eb;line-height:1.7;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;background:radial-gradient(ellipse 60% 40% at 20% 30%,rgba(236,72,153,.15),transparent 65%),radial-gradient(ellipse 60% 40% at 80% 70%,rgba(99,102,241,.15),transparent 65%);pointer-events:none;z-index:0}.container{max-width:1100px;margin:0 auto;padding:0 24px;position:relative;z-index:1}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:rgba(7,7,15,.7);border-bottom:1px solid rgba(255,255,255,.06)}.nav-inner{justify-content:space-between;height:60px}.logo-link,.nav-inner{display:flex;align-items:center}.logo-link{gap:10px;text-decoration:none;color:#f3f4f6;font-weight:700;font-size:14px}.logo-link img{width:24px;height:24px}.nav-links{display:flex;gap:20px}.nav-links a{text-decoration:none;color:#9ca3af;font-size:12px;font-weight:500;transition:color .2s}.nav-links a:hover{color:#f472b6}.hero{padding:60px 0 40px;text-align:center}.hero h1{font-size:clamp(28px,4.5vw,48px);font-weight:900;letter-spacing:-.01em;margin-bottom:14px;background:linear-gradient(135deg,#ec4899,#6366f1,#06b6d4);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero p{font-size:14px;color:#6b7280}.game-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px;padding:20px 0 40px}.game-card{position:relative;text-decoration:none;color:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 24px;border-radius:14px;aspect-ratio:1;overflow:hidden;transition:transform .3s ease;border:1px solid rgba(255,255,255,.08)}.game-card:hover{transform:translateY(-6px)}.game-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;border-radius:14px 14px 0 0}.game-card.go{background:radial-gradient(circle at 80% 20%,rgba(34,197,94,.18),transparent 55%),linear-gradient(145deg,#052e1a,#083a22 60%,#041f12);border-color:rgba(34,197,94,.3)}.game-card.go:before{background:linear-gradient(90deg,#22c55e,#15803d)}.game-card.go .g-icon{color:#4ade80;filter:drop-shadow(0 0 14px rgba(34,197,94,.6))}.game-card.go .g-tag{background:rgba(34,197,94,.2);color:#86efac;border-color:rgba(34,197,94,.35)}.game-card.go .g-title{color:#bbf7d0}.game-card.gomoku{background:radial-gradient(circle at 20% 80%,rgba(59,130,246,.18),transparent 55%),linear-gradient(145deg,#0a1428,#0c1c3a 60%,#071226);border-color:rgba(59,130,246,.3)}.game-card.gomoku:before{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.game-card.gomoku .g-icon{color:#60a5fa;filter:drop-shadow(0 0 14px rgba(59,130,246,.6))}.game-card.gomoku .g-tag{background:rgba(59,130,246,.2);color:#93c5fd;border-color:rgba(59,130,246,.35)}.game-card.gomoku .g-title{color:#dbeafe}.game-card.tetris{background:radial-gradient(circle at 20% 20%,rgba(249,115,22,.2),transparent 55%),linear-gradient(145deg,#1f1408,#2e1a08 60%,#160c04);border-color:rgba(249,115,22,.3)}.game-card.tetris:before{background:linear-gradient(90deg,#f97316,#ea580c)}.game-card.tetris .g-icon{color:#fb923c;filter:drop-shadow(0 0 14px rgba(249,115,22,.6))}.game-card.tetris .g-tag{background:rgba(249,115,22,.2);color:#fed7aa;border-color:rgba(249,115,22,.35)}.game-card.tetris .g-title{color:#fff7ed}.game-card.snake{background:radial-gradient(circle at 80% 80%,rgba(168,85,247,.2),transparent 55%),linear-gradient(145deg,#1a0f2e,#1e1b4b 60%,#100a24);border-color:rgba(168,85,247,.3)}.game-card.snake:before{background:linear-gradient(90deg,#a855f7,#7c3aed)}.game-card.snake .g-icon{color:#c4b5fd;filter:drop-shadow(0 0 14px rgba(168,85,247,.6))}.game-card.snake .g-tag{background:rgba(168,85,247,.2);color:#ddd6fe;border-color:rgba(168,85,247,.35)}.game-card.snake .g-title{color:#ede9fe}.g-icon{width:64px;height:64px;margin-bottom:16px}.g-tag{display:inline-block;padding:4px 14px;font-size:10px;font-weight:700;letter-spacing:3px;text-transform:uppercase;border-radius:2px;border:1px solid;margin-bottom:10px}.g-title{font-size:22px;font-weight:900;margin-bottom:6px}.g-desc{font-size:12px;color:#9ca3af}.footer{padding:30px 0;border-top:1px solid rgba(255,255,255,.06);text-align:center;font-size:11px;color:#4b5563;letter-spacing:2px;margin-top:40px}.footer a{color:#6b7280;text-decoration:none}.footer a:hover{color:#f472b6}.game-page{padding:24px 0}.game-page h2{font-size:20px;font-weight:900;margin-bottom:8px}.game-page .sub{font-size:12px;color:#6b7280;margin-bottom:20px}.game-wrap{display:flex;justify-content:center;align-items:center;padding:20px 0}.game-canvas{background:#111118;border:1px solid rgba(255,255,255,.1);border-radius:8px;box-shadow:0 0 40px rgba(0,0,0,.5)}.game-controls{text-align:center;padding:14px}.game-controls button{background:linear-gradient(135deg,#ec4899,#6366f1);color:#fff;border:none;padding:8px 24px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:2px;cursor:pointer}.game-stats{display:flex;justify-content:center;gap:24px;margin:12px 0;font-size:12px;color:#9ca3af}.game-stats span strong{color:#f472b6}@media (max-width:640px){.game-grid{grid-template-columns:1fr}.game-canvas{max-width:100%}}.diff-group{display:flex;justify-content:center;gap:8px;margin:4px 0 18px}.diff-btn{background:rgba(255,255,255,.06);color:#cbd5e1;border:1px solid rgba(255,255,255,.12);padding:6px 18px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:1px;cursor:pointer;transition:all .2s}.diff-btn:hover{border-color:rgba(168,85,247,.5)}.diff-btn.active{background:linear-gradient(135deg,#a855f7,#7c3aed);color:#fff;border-color:transparent}.ctrl-row{display:flex;justify-content:center;gap:10px;margin-top:14px;flex-wrap:wrap}.ctrl-row button{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#ec4899,#6366f1);color:#fff;border:none;padding:8px 18px;border-radius:4px;font-size:12px;font-weight:700;letter-spacing:1px;cursor:pointer}.ctrl-row button.ghost{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#cbd5e1}.touch-hint{font-size:11px;color:#6b7280;margin-top:10px}