:root{--bg: #f4f6fb;--card: #ffffff;--border: #e6e9f0;--text: #1f2430;--muted: #8a93a6;--primary: #4f6bf5;--up: #16a34a;--down: #e11d48;--radius: 14px;--shadow: 0 1px 2px rgba(16, 24, 40, .04), 0 8px 24px rgba(16, 24, 40, .06)}*{box-sizing:border-box}html,body,#app{margin:0;height:100%}body{background:#e9edf8 url(/assets/background-BiZ5uuUF.png) center / cover fixed no-repeat;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;-webkit-font-smoothing:antialiased}.app{min-height:100%;display:flex;flex-direction:column}.header{display:flex;align-items:center;justify-content:space-between;padding:14px 32px;background:#ffffff80;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);color:var(--text);box-shadow:0 1px 20px #4f6bf51f;position:sticky;top:0;z-index:100}.brand{display:flex;align-items:center;gap:12px}.logo{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#4f6bf5,#7b5cf0);font-weight:700;letter-spacing:.5px}.header h1{margin:0;font-size:20px;font-weight:600}.status{display:flex;align-items:center;gap:8px;font-size:14px}.dot{width:9px;height:9px;border-radius:50%}.dot.on{background:#4ade80;box-shadow:0 0 0 4px #4ade8040}.dot.off{background:#f87171;box-shadow:0 0 0 4px #f8717140}.content{flex:1;width:100%;max-width:400px;margin:0;padding:24px 28px 40px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow);display:flex;flex-direction:column;gap:8px}.card-title{color:var(--muted);font-size:14px}.card-value{font-size:30px;font-weight:700;line-height:1}.card-value small{font-size:14px;font-weight:500;color:var(--muted);margin-left:4px}.card-trend{font-size:13px}.card-trend.up{color:var(--up)}.card-trend.down{color:var(--down)}.panels{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:20px}.panel{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.panel-title{margin:0 0 16px;font-size:16px;font-weight:600}.chart{width:100%;height:320px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);white-space:nowrap}th{color:var(--muted);font-weight:500;font-size:13px}td.amount{font-weight:600}td.time{color:var(--muted);font-size:13px}.tag{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;background:#eef2ff;color:var(--primary)}.empty{text-align:center;color:var(--muted);padding:24px 0}.skeleton{background:linear-gradient(90deg,#eef0f5 25%,#f7f8fb,#eef0f5 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:8px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 900px){.cards{grid-template-columns:repeat(2,1fr)}.panels{grid-template-columns:1fr}}.header-right{display:flex;align-items:center;gap:16px}.login-btn{background:linear-gradient(135deg,#4f6bf5,#7b5cf0);color:#fff;border:none;border-radius:999px;padding:8px 18px;font-size:14px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #4f6bf54d}.login-btn:hover{transform:translateY(-1px) scale(1.03);box-shadow:0 6px 20px #4f6bf573}.user-entry{display:flex;align-items:center;gap:8px;cursor:pointer;padding:4px 10px;border-radius:999px;transition:background .2s}.user-entry:hover{background:#ffffff26}.user-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;background:#4f6bf51f;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--primary)}.user-avatar.placeholder{border:1px solid rgba(79,107,245,.3)}.user-name{color:var(--text);font-size:14px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182880;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border-radius:16px;padding:28px;width:380px;max-width:calc(100vw - 40px);box-shadow:0 20px 50px #10182840}.modal-title{margin:0 0 16px;font-size:20px;font-weight:600}.tabs{display:flex;gap:8px;margin-bottom:20px}.tab{flex:1;padding:9px;border:1px solid var(--border);background:#fff;color:var(--muted);border-radius:10px;cursor:pointer;font-size:14px}.tab.active{background:#eef2ff;color:var(--primary);border-color:var(--primary)}.field{margin-bottom:16px}.field label{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.field input{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font-size:14px;box-sizing:border-box}.field input:focus{outline:none;border-color:var(--primary)}.code-row{display:flex;gap:8px}.code-row input{flex:1}.code-btn{white-space:nowrap;padding:0 14px;border:1px solid var(--primary);background:#eef2ff;color:var(--primary);border-radius:10px;cursor:pointer;font-size:13px}.code-btn:disabled{opacity:.5;cursor:not-allowed}.error{color:var(--down);font-size:13px;margin:0 0 12px}.primary{width:100%;padding:11px;background:var(--primary);color:#fff;border:none;border-radius:10px;font-size:15px;cursor:pointer}.primary:disabled{opacity:.6;cursor:not-allowed}.ghost{width:100%;margin-top:10px;padding:11px;background:transparent;color:var(--muted);border:1px solid var(--border);border-radius:10px;font-size:14px;cursor:pointer}.profile-head{display:flex;align-items:center;gap:16px;margin-bottom:20px}.avatar-box{position:relative;width:72px;height:72px;border-radius:50%;cursor:pointer;overflow:hidden;background:#eef2ff;flex-shrink:0}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:600;color:var(--primary)}.avatar-edit{position:absolute;bottom:0;left:0;right:0;background:#00000080;color:#fff;font-size:11px;text-align:center;padding:3px 0}.profile-email{font-size:15px;color:var(--text);font-weight:500}.game-panel{background:#fff9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.65);border-radius:20px;padding:24px 22px;box-shadow:0 8px 32px #4f6bf524}.game-title{margin:0;font-size:32px;font-weight:800;letter-spacing:3px;background:linear-gradient(135deg,#4f6bf5,#7b5cf0);-webkit-background-clip:text;background-clip:text;color:transparent}.game-sub{margin:8px 0 20px;font-size:13px;color:var(--muted)}.game-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.game-item{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:14px;background:#fff;border:1px solid var(--border);color:var(--text);text-decoration:none;box-shadow:var(--shadow);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.game-item:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:0 10px 24px #4f6bf52e}.game-icon{font-size:18px;line-height:1}.game-name{flex:1;font-size:16px;font-weight:600}.game-go{font-size:13px;color:var(--primary)}.game-lock{font-size:12px;color:var(--muted);background:#f1f3f9;padding:3px 10px;border-radius:999px}.notice{margin:0 0 16px;padding:9px 12px;border-radius:10px;background:#eef2ff;color:var(--primary);font-size:13px}@media (max-width: 600px){.header{padding:12px 16px}.content{max-width:100%;padding:16px 16px 32px}.status .status-text{display:none}}
