.site-header[data-v-cf10fcea]{position:fixed;top:0;left:0;right:0;z-index:100;height:64px;background:#fff;box-shadow:0 2px 12px #38bdf814}.header-inner[data-v-cf10fcea]{max-width:1280px;margin:0 auto;padding:0 20px;height:100%;display:flex;align-items:center;gap:8px}.logo[data-v-cf10fcea]{display:flex;align-items:center;gap:6px;text-decoration:none;flex-shrink:0}.logo-icon[data-v-cf10fcea]{font-size:28px}.logo-text[data-v-cf10fcea]{font-size:20px;font-weight:700;color:#1a73e8;letter-spacing:-.5px}.main-nav[data-v-cf10fcea]{display:flex;align-items:center;gap:4px;margin-left:32px}.main-nav a[data-v-cf10fcea]{padding:8px 14px;border-radius:10px;color:#555;text-decoration:none;font-size:15px;font-weight:500;transition:all .2s;white-space:nowrap}.main-nav a[data-v-cf10fcea]:hover,.main-nav a.router-link-active[data-v-cf10fcea]{color:#1a73e8;background:#1a73e812}.header-right[data-v-cf10fcea]{margin-left:auto;display:flex;align-items:center;gap:10px}.btn-create[data-v-cf10fcea]{display:inline-flex;align-items:center;gap:4px;background:linear-gradient(135deg,#38bdf8,#3b82f6);color:#fff;padding:9px 18px;border-radius:20px;text-decoration:none;font-size:14px;font-weight:600;box-shadow:0 2px 8px #3b82f64d;transition:transform .15s}.btn-create[data-v-cf10fcea]:hover{transform:scale(1.04);box-shadow:0 4px 14px #3b82f659}.btn-login[data-v-cf10fcea]{color:#1a73e8;font-size:14px;font-weight:600;text-decoration:none;padding:7px 16px;border:1.5px solid #c7d2fe;border-radius:20px;transition:all .2s}.btn-login[data-v-cf10fcea]:hover{background:#eff6ff}.user-menu[data-v-cf10fcea]{position:relative}.avatar-btn[data-v-cf10fcea]{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#38bdf8,#a78bfa);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:15px;font-weight:700;border:2px solid #fff;box-shadow:0 2px 8px #6366f133}.dropdown-menu[data-v-cf10fcea]{position:absolute;right:0;top:48px;min-width:180px;background:#fff;border-radius:14px;box-shadow:0 8px 30px #0000001f;padding:8px;z-index:200;animation:dropIn-cf10fcea .2s ease}.dropdown-menu a[data-v-cf10fcea]{display:block;padding:11px 16px;color:#444;text-decoration:none;border-radius:10px;font-size:14px;transition:background .15s}.dropdown-menu a[data-v-cf10fcea]:hover{background:#f0f5ff}@keyframes dropIn-cf10fcea{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.menu-toggle[data-v-cf10fcea]{display:none;width:36px;height:36px;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.menu-toggle span[data-v-cf10fcea]{display:block;height:2.5px;background:#333;border-radius:2px;transition:all .3s}.menu-toggle span.open[data-v-cf10fcea]:nth-child(1){transform:rotate(45deg) translateY(5px) translate(4px)}.menu-toggle span.open[data-v-cf10fcea]:nth-child(2){opacity:0}.menu-toggle span.open[data-v-cf10fcea]:nth-child(3){transform:rotate(-45deg) translateY(-5px) translate(4px)}.main-content[data-v-cf10fcea]{min-height:100vh;padding-top:64px}.main-content.admin-page[data-v-cf10fcea]{padding-top:0}.site-footer[data-v-cf10fcea]{background:#f8fafc;padding:28px 20px;text-align:center;margin-top:40px;border-top:1px solid #eef2ff}.footer-inner p[data-v-cf10fcea]{color:#94a3b8;font-size:13px;margin:4px 0}.footer-links a[data-v-cf10fcea]{color:#94a3b8;text-decoration:none;margin:0 10px;font-size:13px}.footer-links a[data-v-cf10fcea]:hover{color:#1a73e8}@media(max-width:768px){.main-nav[data-v-cf10fcea]{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;flex-direction:column;padding:16px;box-shadow:0 8px 30px #0000001a}.main-nav.active[data-v-cf10fcea],.menu-toggle[data-v-cf10fcea]{display:flex}.btn-create span[data-v-cf10fcea]{display:none}.btn-create[data-v-cf10fcea]{padding:9px 12px;font-size:13px}.logo-text[data-v-cf10fcea]{font-size:17px}}:root{--primary: #38bdf8;--primary-dark: #0ea5e9;--primary-light: #e0f2fe;--primary-gradient: linear-gradient(135deg, #38bdf8, #3b82f6);--yellow: #fde68a;--yellow-light: #fef3c7;--green: #86efac;--green-light: #dcfce7;--pink: #f9a8d4;--pink-light: #fce7f3;--bg: #f8fafc;--bg-card: #ffffff;--border: #e2e8f0;--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--success: #22c55e;--warning: #f59e0b;--danger: #ef4444;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 12px rgba(0,0,0,.07);--shadow-lg: 0 8px 24px rgba(0,0,0,.1);--shadow-primary: 0 4px 14px rgba(56,189,248,.25);--transition: .2s ease}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:-apple-system,PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea{font-family:inherit;outline:none;border:none}img{max-width:100%;display:block}.container{max-width:1280px;margin:0 auto;padding:0 20px}.page-header{padding:32px 0 28px}.page-title{font-size:26px;font-weight:700;color:var(--text-primary);margin-bottom:4px}.page-subtitle{font-size:15px;color:var(--text-secondary)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 22px;border-radius:var(--radius-full);font-size:14px;font-weight:600;transition:all var(--transition);cursor:pointer;border:none;white-space:nowrap}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:var(--shadow-primary)}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 18px #38bdf859}.btn-outline{background:#fff;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover{background:var(--primary-light)}.btn-ghost{background:transparent;color:var(--text-secondary)}.btn-ghost:hover{background:#64748b14}.btn-lg{padding:13px 30px;font-size:16px;border-radius:var(--radius-xl)}.btn-sm{padding:7px 14px;font-size:13px}:disabled.btn{opacity:.5;cursor:not-allowed;transform:none!important}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition)}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.game-card{position:relative;border-radius:var(--radius-lg);overflow:hidden}.game-card-cover{width:100%;aspect-ratio:4/3;object-fit:cover;background:linear-gradient(135deg,#e0f2fe,#ddd6fe);display:flex;align-items:center;justify-content:center;font-size:48px}.game-card-info{padding:14px}.game-card-title{font-size:15px;font-weight:600;color:var(--text-primary);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:8px}.game-card-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text-muted)}.tag{padding:3px 10px;border-radius:var(--radius-full);font-size:11px;font-weight:600;white-space:nowrap;display:inline-block}.tag-blue{background:var(--primary-light);color:var(--primary-dark)}.tag-yellow{background:var(--yellow-light);color:#d97706}.tag-green{background:var(--green-light);color:#15803d}.tag-pink{background:var(--pink-light);color:#be185d}.stat-badge{display:flex;align-items:center;gap:3px;color:var(--text-muted);font-size:12px}.empty-state{text-align:center;padding:60px 20px}.empty-icon{font-size:64px;margin-bottom:16px}.empty-text{font-size:16px;color:var(--text-secondary);margin-bottom:8px}.empty-hint{font-size:13px;color:var(--text-muted)}.loading-spinner{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;gap:16px}.loading-dots span{display:inline-block;width:10px;height:10px;border-radius:50%;background:var(--primary);animation:bounce 1.4s ease-in-out infinite both;margin:0 3px}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.search-box{display:flex;align-items:center;gap:8px;background:#fff;border:2px solid var(--border);border-radius:var(--radius-full);padding:10px 18px;transition:border-color var(--transition)}.search-box:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #38bdf81f}.search-box input{flex:1;font-size:15px;background:transparent;color:var(--text-primary)}.search-box input::placeholder{color:var(--text-muted)}.tabs{display:flex;gap:4px;background:var(--bg);padding:4px;border-radius:var(--radius-full)}.tab-btn{padding:8px 20px;border-radius:var(--radius-full);font-size:14px;font-weight:500;color:var(--text-secondary);transition:all var(--transition);cursor:pointer;border:none;background:transparent}.tab-btn.active{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm);font-weight:600}.pagination{display:flex;justify-content:center;gap:6px;margin-top:32px;flex-wrap:wrap}.page-btn{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;font-size:14px;background:#fff;color:var(--text-secondary);transition:all var(--transition);cursor:pointer;border:1px solid var(--border);font-weight:500}.page-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.page-btn:hover:not(.active){border-color:var(--primary);color:var(--primary)}.page-btn:disabled{opacity:.4;cursor:not-allowed}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#00000073;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease}.modal-box{background:#fff;border-radius:var(--radius-xl);padding:32px;max-width:520px;width:90%;max-height:85vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.toast-container{position:fixed;top:80px;right:20px;z-index:2000;display:flex;flex-direction:column;gap:8px}.toast{display:flex;align-items:center;gap:10px;padding:14px 20px;border-radius:var(--radius-md);background:#fff;box-shadow:var(--shadow-lg);font-size:14px;font-weight:500;min-width:260px;animation:toastIn .3s ease}.toast.success{border-left:4px solid var(--success)}.toast.error{border-left:4px solid var(--danger)}.toast.info{border-left:4px solid var(--primary)}@keyframes toastIn{0%{opacity:0;transform:translate(60px)}to{opacity:1;transform:translate(0)}}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1024px){.grid-4{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:repeat(2,1fr);gap:12px}.page-title{font-size:22px}}@media(max-width:480px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.hide-mobile{display:block}.show-mobile{display:none}@media(max-width:768px){.hide-mobile{display:none}.show-mobile{display:block}.container{padding:0 16px}}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{background:var(--primary-light);color:var(--primary-dark)}
