.p-kaifu { width: 1200px; margin: 20px auto 0; }
.p-kaifu .calendar { position: absolute; right: 25px; top: -119px; width: 80px; text-align: center; color: #fff; }
.p-kaifu .calendar .sp1 { background: #4ca7e6; line-height: 22px; }
.p-kaifu .calendar .sp2 { background: #288bd2; line-height: 22px; }
.p-kaifu .calendar .sp3 { background: #fff; color: #333; font-size: 32px; font-weight: bold; line-height: 50px; }
.g-inner { position: relative; margin: 15px auto 0; width: 1200px; background: #fff; border-radius: 8px; padding: 15px; margin-bottom: 30px; box-shadow: 0 2px 8px rgba(0,0,0,0.04); }
.kfb_list { margin-bottom: 15px; }
.kfb_list .m-herald:not(:last-child) { margin-bottom: 15px; }
.kfb_list .m-herald { width: 100%; border-collapse: collapse; background-color: #fff; font-size: 15px; text-align: center; box-sizing: border-box; table-layout: fixed; border-radius: 6px; overflow: hidden; }
.kfb_list .m-herald thead { background: #fafafa; color: #333; }
.kfb_list .m-herald thead th { height: 44px; font-weight: 500; border: 1px solid #eee; font-size: 15px; background: #fafafa; text-align: center; }
.kfb_list .m-herald td { padding: 10px 6px; border: 1px solid #eee; font-size: 15px; vertical-align: middle; }
.kfb_list .m-herald thead th:nth-child(1){ width: 90px; }
.kfb_list .m-herald thead th:nth-child(2) { width: 230px; }
.kfb_list .m-herald thead th:nth-child(3) { width: 100px; }
.kfb_list .m-herald thead th:nth-child(4){ width: 85px; }
.kfb_list .m-herald thead th:nth-child(5) { width: 200px; }
.kfb_list .m-herald thead th:nth-child(6) { width: 100px; }
.kfb_list .m-herald thead th:nth-child(7) { width: 120px; }
.kfb_list .m-herald tbody tr:nth-child(even) { background: #fcfcfc; }
.kfb_list .m-herald tbody tr:hover { background: #f4f9ff; }
.kfb_list .m-herald tbody.z-today tr { background: #fff9d1; }
.kfb_list .m-herald tbody.z-today tr td { border-color: #ffe999; }
.kfb_list .m-herald tbody.z-today tr:nth-child(even) { background: #fffbdd; }
.kfb_list .m-herald tbody.z-today tr:hover { background: #fff4b7; }
.kfb_list .m-herald tbody.z-top tr, .kfb_list .m-herald tbody tr.z-top { background: #e0f8ff !important; }
.kfb_list .m-herald tbody.z-top tr td, .kfb_list .m-herald tbody tr.z-top td { border-color: #b3e6f7 !important; }
.kfb_list .m-herald tbody.z-top tr:hover, .kfb_list .m-herald tbody tr.z-top:hover { background: #d1f4ff !important; }
.kfb_list .m-herald .diode { display: inline-flex; align-items: center; justify-content: center; gap: 6px; max-width: 100%; white-space: nowrap; overflow: hidden; }
.kfb_list .m-herald .diode::before { content: ''; flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.kfb_list .m-herald .diode em { flex-shrink: 0; width: 22px; height: 22px; line-height: 22px; background: #ff5400; text-align: center; font-size: 12px; font-weight: bold; color: #fff; border-radius: 4px; margin: 0; font-style: normal; }
.kfb_list .m-herald .z-hot { padding-left: 18px; background: url(/static/web/img/server/g_hot.gif) no-repeat 0 50%; }
.kfb_list .m-herald .top-label { position: relative; display: inline-block; width: 80px; background: #ed3340; line-height: 26px; color: #fff; text-align: center; border-radius: 5px; }
.kfb_list .m-herald .top-label:before { position: absolute; top: 50%; right: -8px; margin-top: -4px; border: 4px solid transparent; border-left-color: #ed3340; content: ''; }
.kfb_list .m-herald .btn-start { display: inline-block; width: 86px; height: 32px; line-height: 32px; text-align: center; color: #fff; background: #2697fc; border-radius: 16px; font-size: 14px; text-decoration: none; transition: all 0.2s ease; }
.kfb_list .m-herald .btn-start:hover { background: #0f7cd6; color: #fff; }
.kfb_list .m-herald .btn-all { display: inline-block; font-size: 14px; color: #3c3c3c; text-decoration: none; }
.kfb_list .m-herald .btn-all:hover { color: #2697fc; text-decoration: underline; }
.tc-warn { color: #f30; }
.ts-bold { font-weight: bold; }
.kfb-tabs { display: flex; gap: 12px; margin-top: 20px; }
.kfb-tabs .tab-item { font-size: 15px; color: #555; padding: 10px 22px; border-radius: 30px; cursor: pointer; transition: all 0.2s ease; border: 1px solid #e0e0e0; background: #fff; }
.kfb-tabs .tab-item.active { background-color: #2697fc; color: #fff; border-color: #2697fc; }
.tab-content { display: none; }
.tab-content.active { display: block; }
/* 游戏信息卡片*/
.game-info-card { background: #fff; border-radius: 8px; padding: 20px; margin-bottom: 20px; margin-top: 20px; box-shadow: 0 1px 3px rgba(0,0,0,0.1); width: 1230px; margin-left: auto; margin-right: auto; box-sizing: border-box; }
.game-info-top { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 20px; }
.game-info-left { display: flex; align-items: flex-start; gap: 15px; }
.game-info-icon img { width: 250px; height: 150px; border-radius: 8px; object-fit: cover; border: 1px solid #eee; margin-right: 15px; }
.game-info-main { display: flex; flex-direction: column; gap: 12px; }
.game-info-title-row { display: flex; align-items: center; gap: 15px; }
.game-info-name { font-size: 22px; font-weight: bold; color: #333; margin: 0; }
.game-info-btn { display: inline-block; padding: 6px 16px; background: #27ae60; color: #fff; text-decoration: none; border-radius: 4px; font-size: 14px; }
.game-info-btn:hover {background: #219653;color: #fff;text-decoration: none;}
/* 游戏信息 */
.game-info-meta { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px 16px; margin-top: 15px; }
.info-row { display: flex; align-items: center; gap: 5px; margin-right: 25px;margin-top: 5px;}
.info-row .label { color: #999; }
.info-row .value { color: #999; font-weight: 500; }
.game-info-main .slogan {font-size: 15px;color: #FF9800;margin-top: 5px;}
/* 右侧游戏人气 */
.game-info-hot { display: flex; flex-direction: column; align-items: center; justify-content: center; width: 180px; height: 150px; border-radius: 8px; background: #fefefe; }
.hot-title { font-size: 14px; color: #666; margin-bottom: 6px; }
.hot-num { font-size: 32px; font-weight: bold; color: #ff3300; margin: 10px 0; }
.hot-desc { font-size: 13px; color: #999; margin-top: 4px; }
.game-info-intro { border-top: 1px solid #eee; padding-top: 20px; }
.intro-title { font-size: 16px; color: #333; margin: 0 0 10px 0; }
.intro-content { font-size: 14px; line-height: 1.8; color: #666; }