:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;color:#333;background-color:#f5f5f5;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;background:#fff;color:#1a1a1a;min-height:100vh;line-height:1.6}.container{max-width:1400px;margin:0 auto;padding:0;background:#fff}h1{font-size:22px;font-weight:500;letter-spacing:-.5px}h2{font-size:18px;font-weight:500;margin-bottom:20px;letter-spacing:-.3px}h3{font-size:16px;font-weight:500;margin-bottom:12px}.auth-box{max-width:400px;margin:100px auto;background:#fff;border:1px solid #e0e0e0;padding:40px;box-shadow:0 1px 3px #0000000a}.tabs{display:flex;margin-bottom:30px;border-bottom:1px solid #e0e0e0}.tabs button{flex:1;padding:12px;border:none;background:none;cursor:pointer;font-size:15px;color:#999;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s}.tabs button.active{color:#1a1a1a;border-bottom-color:#1a1a1a}form input{width:100%;padding:14px 16px;border:1px solid #e0e0e0;margin-bottom:16px;font-size:15px;background:#fafafa;transition:all .2s}form input:focus{outline:none;border-color:#1a1a1a;background:#fff}form button{width:100%;padding:14px;background:#1a1a1a;color:#fff;border:none;cursor:pointer;font-size:15px;font-weight:500;transition:all .2s}form button:hover{background:#000}form button:disabled{background:#ccc;cursor:not-allowed}.error{color:#1a1a1a;font-size:13px;margin-bottom:16px;padding:12px;background:#f5f5f5;border-left:3px solid #1a1a1a}header{display:flex;justify-content:space-between;align-items:center;padding:24px 40px;background:#fff;border-bottom:1px solid #e0e0e0}.header-left{display:flex;align-items:baseline;gap:20px}.company-title{font-size:13px;color:#1a1a1a;font-weight:500;padding:6px 14px;background:#f5f5f5;border:1px solid #e0e0e0;border-radius:2px;letter-spacing:.5px}.user-info{display:flex;align-items:center;gap:16px}.user-info span{color:#666;font-size:14px}.user-info button{padding:8px 16px;background:none;border:1px solid #e0e0e0;cursor:pointer;font-size:13px;color:#1a1a1a;transition:all .2s}.user-info button:hover{border-color:#1a1a1a;background:#fafafa}.game-list-page{padding:40px}.add-game-section{background:#fff;border:1px solid #e0e0e0;padding:30px;margin-bottom:30px}.add-game-form input{margin-bottom:12px;background:#fafafa}.add-game-form button{margin-top:8px}.games-grid{background:#fff;border:1px solid #e0e0e0;padding:30px}.game-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-top:20px}.game-card{background:#fafafa;border:1px solid #e0e0e0;padding:24px;cursor:pointer;transition:all .2s;position:relative}.game-card:hover{border-color:#1a1a1a;background:#fff;box-shadow:0 2px 8px #0000000f}.game-card h3{margin:0 0 16px;color:#1a1a1a;font-size:17px;font-weight:500}.game-card .game-appid{color:#999;font-size:13px;margin:8px 0;font-family:Courier New,monospace}.game-card .game-time{color:#ccc;font-size:12px;margin:8px 0}.delete-btn-small{position:absolute;top:12px;right:12px;background:#1a1a1a;color:#fff;border:none;padding:6px 14px;font-size:12px;cursor:pointer;transition:all .2s}.delete-btn-small:hover{background:#000}.game-detail-page{padding:40px;max-width:1400px;margin:0 auto}.query-section{background:#fff;border:1px solid #e0e0e0;padding:24px 30px;margin-bottom:30px;display:flex;gap:16px;align-items:center}.query-section input[type=date]{flex:1;max-width:200px;padding:10px 14px;border:1px solid #e0e0e0;font-size:14px;background:#fafafa}.query-section input[type=date]:focus{border-color:#1a1a1a;background:#fff;outline:none}.query-section button{padding:10px 24px;background:#1a1a1a;color:#fff;border:none;cursor:pointer;font-size:14px;transition:all .2s}.query-section button:hover{background:#000}.query-section button:disabled{background:#ccc;cursor:not-allowed}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.stat-card{padding:28px;background:#fafafa;border:1px solid #e0e0e0;display:flex;flex-direction:column;align-items:flex-start;transition:all .2s}.stat-card:hover{background:#fff}.stat-card .label{font-size:13px;color:#999;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.stat-card .value{font-size:28px;font-weight:400;color:#1a1a1a;letter-spacing:-1px}.stat-card.highlight{background:#1a1a1a;border-color:#1a1a1a}.stat-card.highlight .label,.stat-card.highlight .value{color:#fff}.records{background:#fff;border:1px solid #e0e0e0;padding:30px}table{width:100%;border-collapse:collapse}th,td{padding:16px;text-align:left;border-bottom:1px solid #f0f0f0}th{font-weight:500;background:#fafafa;font-size:13px;color:#999;text-transform:uppercase;letter-spacing:.5px}td{font-size:14px;color:#1a1a1a}tbody tr{transition:background .15s}tbody tr:hover{background:#fafafa}tbody tr.clickable{cursor:pointer}tbody tr.clickable:hover{background:#f5f5f5}tbody tr.expanded{background:#f0f0f0;cursor:pointer}tr.detail-row{background:#fafafa}tr.detail-row td{padding:0}.details-table{max-height:400px;overflow-y:auto;padding:20px}.details-table table{background:#fff;border:1px solid #e0e0e0}.details-table th{background:#f5f5f5;font-size:12px}.details-table td{font-size:13px;padding:12px 16px}.details-table .openid{font-family:Courier New,monospace;font-size:12px;color:#666;max-width:200px;overflow:hidden;text-overflow:ellipsis}.details-table td:nth-child(2){text-align:center;font-weight:500;color:#1a1a1a}.no-details{text-align:center;color:#999;padding:40px!important}.log-id{margin-top:16px;font-size:12px;color:#ccc;font-family:Courier New,monospace;word-break:break-all}.admin-panel{background:#fff;border:1px solid #e0e0e0;padding:40px}.admin-row{display:flex;gap:30px;margin-bottom:30px}.admin-row .admin-section{flex:1}.admin-section{margin-bottom:30px}.create-user-form{max-width:320px}.users-table tbody tr.selected{background:#f0f0f0}.admin-games-layout{display:flex;gap:30px}.admin-games-list{flex:1;max-height:500px;overflow-y:auto;border:1px solid #e0e0e0}.admin-game-records{flex:1;max-height:500px;overflow-y:auto;border:1px solid #e0e0e0;padding:20px}.empty{color:#999;text-align:center;padding:40px}.ip-location{color:#999;font-size:12px}.delete-btn{padding:6px 12px;font-size:12px;background:none;border:1px solid #e0e0e0;cursor:pointer;color:#666;transition:all .2s}.delete-btn:hover{border-color:#1a1a1a;color:#1a1a1a;background:#fafafa}@media(max-width:768px){.container{padding:0}header{flex-direction:column;gap:16px;padding:20px}.game-list-page,.game-detail-page,.add-game-section,.games-grid,.query-section,.records{padding:20px}.game-cards,.stats{grid-template-columns:1fr;gap:16px}.stat-card{padding:20px}.stat-card .value{font-size:24px}.query-section{flex-direction:column;align-items:stretch}.query-section input[type=date]{max-width:100%}table{font-size:13px}th,td{padding:12px 8px}.admin-row,.admin-games-layout{flex-direction:column}}
