/* ============================================================
 * 《火柴人 · 三国》UI 样式
 * 高级感：深墨底 + 鎏金描边 + 楷体标题 + 三国杀式锦囊卡
 * ============================================================ */
* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
html, body { width: 100%; height: 100%; overflow: hidden; background: #101c2e; }
body {
  font-family: -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
  color: #eee7d6; user-select: none; -webkit-user-select: none; touch-action: none;
}
#gameCanvas { position: fixed; inset: 0; display: block; touch-action: none; }

button { font-family: inherit; cursor: pointer; border: none; }

/* ============ 顶栏 ============ */
#topbar {
  position: fixed; top: 0; left: 0; right: 0; z-index: 20;
  display: flex; justify-content: space-between; align-items: center;
  padding: 8px 12px;
  background: linear-gradient(180deg, rgba(10,14,22,0.88), rgba(10,14,22,0.62) 80%, transparent);
  pointer-events: none;
}
.tb-left, .tb-right { display: flex; align-items: center; gap: 8px; pointer-events: auto; flex-wrap: wrap; }
#tbFaction { font-family: KaiTi, STKaiti, serif; font-size: 19px; font-weight: bold; letter-spacing: 1px; }
.tb-stat {
  font-size: 12px; color: #d9cfae;
  background: rgba(255, 255, 255, 0.07);
  border: 1px solid rgba(215, 190, 130, 0.25);
  padding: 3px 9px; border-radius: 20px;
}
.tb-btn {
  font-size: 14px; color: #eee7d6;
  background: rgba(22, 28, 40, 0.85);
  border: 1px solid rgba(215, 190, 130, 0.4);
  padding: 8px 16px; border-radius: 10px;
  min-height: 40px; transition: all .15s;
}
.tb-btn:active { transform: scale(0.94); }
.tb-btn.active { background: rgba(122, 96, 38, 0.9); border-color: #ffd75e; color: #ffe9b0; }

/* ============ 提示条 ============ */
#hintBar {
  position: fixed; top: 56px; left: 50%; transform: translateX(-50%) translateY(-8px);
  z-index: 18; max-width: 88vw;
  background: rgba(12, 16, 26, 0.88);
  border: 1px solid rgba(215, 190, 130, 0.45);
  color: #ffe9b0; font-size: 14px;
  padding: 8px 18px; border-radius: 24px;
  opacity: 0; transition: all .3s; pointer-events: none;
  text-align: center;
}
#hintBar.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* ============ 城市面板 ============ */
#cityPanel {
  position: fixed; left: 12px; bottom: 12px; z-index: 19;
  width: min(300px, 62vw);
  background: linear-gradient(160deg, rgba(18, 22, 34, 0.94), rgba(12, 15, 24, 0.94));
  border: 1px solid rgba(215, 190, 130, 0.5);
  border-radius: 14px; padding: 12px 14px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
}
.cp-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; }
.cp-head b { font-family: KaiTi, STKaiti, serif; font-size: 22px; }
.cp-tier { font-size: 11px; color: #c9b98a; border: 1px solid rgba(215, 190, 130, .4); padding: 2px 8px; border-radius: 12px; }
.cp-spec { display: flex; align-items: center; gap: 7px; font-size: 12px; color: #d9cfae; margin-bottom: 8px; }
.cp-spec img { width: 30px; height: 30px; border-radius: 50%; }
.cp-garrison { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 8px; }
.g-row {
  display: flex; align-items: center; gap: 5px;
  font-size: 12px; background: rgba(255, 255, 255, 0.06);
  padding: 3px 8px 3px 3px; border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.g-row img { width: 24px; height: 24px; border-radius: 50%; }
.g-empty { font-size: 12px; color: #998; }
.cp-meta { font-size: 11px; color: #a99f83; margin-bottom: 6px; }
.cp-hint { font-size: 12px; color: #ffd75e; border-top: 1px dashed rgba(215, 190, 130, .3); padding-top: 7px; }

/* ============ 锦囊卡 ============ */
#cardHand {
  position: fixed; bottom: 12px; left: 50%; transform: translateX(-50%);
  z-index: 19; display: flex; gap: 10px; pointer-events: auto;
}
.card {
  --cc: #5b4a8a;
  width: 108px; padding: 10px 9px 8px;
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.09), transparent 60%),
    linear-gradient(165deg, #1c2233, #12151f);
  border: 1.5px solid var(--cc);
  border-radius: 12px;
  box-shadow: 0 6px 22px rgba(0, 0, 0, 0.55), inset 0 0 18px rgba(0, 0, 0, 0.4);
  cursor: pointer; transition: transform .15s;
  animation: cardIn .35s cubic-bezier(.2, 1.4, .4, 1);
  position: relative; overflow: hidden;
}
.card::before {
  content: ''; position: absolute; inset: 3px;
  border: 1px solid rgba(215, 190, 130, 0.25); border-radius: 9px; pointer-events: none;
}
@keyframes cardIn { from { transform: translateY(50px) scale(.7); opacity: 0; } }
.card:active { transform: scale(0.92); }
.card.expiring { animation: cardBlink .5s infinite alternate; }
@keyframes cardBlink { from { opacity: 1; } to { opacity: 0.45; } }
.card-zi {
  width: 44px; height: 44px; margin: 2px auto 6px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, color-mix(in srgb, var(--cc) 80%, #fff), var(--cc));
  color: #fff; font-family: KaiTi, STKaiti, serif;
  font-size: 26px; font-weight: bold; line-height: 44px; text-align: center;
  text-shadow: 0 2px 4px rgba(0, 0, 0, .5);
  box-shadow: 0 3px 10px rgba(0, 0, 0, .5), inset 0 -3px 6px rgba(0, 0, 0, .3);
}
.card-name { font-family: KaiTi, STKaiti, serif; font-size: 16px; font-weight: bold; text-align: center; color: #ffe9b0; }
.card-type { font-size: 10px; text-align: center; color: var(--cc); filter: brightness(1.6); margin: 1px 0 4px; }
.card-desc { font-size: 10.5px; line-height: 1.45; color: #cfc6ad; text-align: center; min-height: 42px; }
.card-timer { height: 3px; background: rgba(255, 255, 255, 0.12); border-radius: 2px; margin-top: 5px; overflow: hidden; }
.card-timer i { display: block; height: 100%; background: linear-gradient(90deg, #ffd75e, #e8a23a); transition: width .2s linear; }

/* ============ 全屏界面 ============ */
.screen {
  position: fixed; inset: 0; z-index: 30;
  display: flex; align-items: center; justify-content: center;
  background: radial-gradient(ellipse at center, rgba(8, 12, 20, 0.25), rgba(6, 9, 16, 0.78));
  overflow-y: auto; touch-action: pan-y;
}
.title-wrap { text-align: center; padding: 20px; }
.title-seal {
  display: inline-block;
  font-family: KaiTi, STKaiti, serif; font-size: 20px; color: #fff;
  background: #c0392b; padding: 6px 14px; border-radius: 6px;
  box-shadow: 0 4px 14px rgba(192, 57, 43, .5);
  letter-spacing: 4px; margin-bottom: 6px;
  transform: rotate(-2deg);
}
.game-title {
  font-family: KaiTi, STKaiti, serif;
  font-size: clamp(84px, 20vw, 150px); font-weight: bold;
  color: #f5ead0; letter-spacing: 18px; line-height: 1.1;
  text-shadow: 0 4px 0 #7a6220, 0 10px 34px rgba(0, 0, 0, .8), 0 0 80px rgba(255, 215, 94, .25);
}
.title-sub {
  font-family: KaiTi, STKaiti, serif; font-size: clamp(15px, 3.4vw, 21px);
  color: #d9cfae; letter-spacing: 6px; margin: 10px 0 34px;
}
.title-btns { display: flex; gap: 18px; justify-content: center; flex-wrap: wrap; }
.big-btn {
  font-family: KaiTi, STKaiti, serif; font-size: 21px; font-weight: bold;
  color: #2a1f08; letter-spacing: 4px;
  background: linear-gradient(180deg, #ffe9a8, #d9b25e);
  border: 1px solid #8a6c22; border-radius: 12px;
  padding: 15px 42px; min-width: 170px; min-height: 58px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, .5), inset 0 1px 0 #fff8;
  transition: transform .15s;
}
.big-btn:active { transform: scale(.95); }
.big-btn.ghost {
  background: rgba(20, 26, 40, .85); color: #d9cfae;
  border: 1px solid rgba(215, 190, 130, .45);
}
.title-foot { margin-top: 30px; font-size: 12px; color: #8d9bab; letter-spacing: 2px; }

/* ============ 面板页 ============ */
.panel-wrap { width: min(760px, 94vw); padding: 20px 10px 40px; text-align: center; }
.panel-title {
  font-family: KaiTi, STKaiti, serif; font-size: 34px; color: #f5ead0;
  letter-spacing: 8px; margin-bottom: 8px;
  text-shadow: 0 3px 12px rgba(0, 0, 0, .7);
}
.panel-sub { font-size: 13px; color: #a99f83; margin-bottom: 18px; }
.faction-row { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; margin-bottom: 22px; }
.faction-pick {
  --fc: #888;
  width: min(220px, 86vw); padding: 22px 16px 18px;
  background: linear-gradient(165deg, rgba(22, 27, 41, .95), rgba(13, 16, 26, .95));
  border: 1.5px solid var(--fc); border-radius: 16px;
  color: #eee7d6; display: flex; flex-direction: column; gap: 7px; align-items: center;
  box-shadow: 0 8px 26px rgba(0, 0, 0, .5);
  transition: transform .15s;
}
.faction-pick:active { transform: scale(.96); }
.fp-name {
  font-family: KaiTi, STKaiti, serif; font-size: 46px; font-weight: bold;
  color: var(--fc); text-shadow: 0 0 24px color-mix(in srgb, var(--fc) 60%, transparent);
}
.fp-cap { font-size: 13px; color: #d9cfae; letter-spacing: 2px; }
.fp-desc { font-size: 12px; color: #a99f83; line-height: 1.6; }
.back-btn {
  font-size: 15px; color: #d9cfae; background: rgba(22, 28, 40, .85);
  border: 1px solid rgba(215, 190, 130, .4); border-radius: 10px;
  padding: 10px 26px; min-height: 44px;
}

/* ============ 战役列表 ============ */
#battleList { display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px; }
.battle-item {
  display: flex; align-items: center; gap: 12px; flex-wrap: wrap;
  background: linear-gradient(160deg, rgba(20, 25, 38, .95), rgba(13, 16, 25, .95));
  border: 1px solid rgba(215, 190, 130, .35); border-radius: 14px;
  padding: 13px 16px; text-align: left; cursor: pointer;
  transition: border-color .2s;
}
.battle-item:hover { border-color: #ffd75e; }
.battle-item.locked { opacity: .45; cursor: not-allowed; }
.bi-main { flex: 1; min-width: 200px; }
.bi-name { font-family: KaiTi, STKaiti, serif; font-size: 21px; color: #ffe9b0; font-weight: bold; }
.bi-year { font-size: 11px; color: #a99f83; margin-left: 10px; font-family: sans-serif; letter-spacing: 1px; }
.bi-desc { font-size: 12px; color: #b3ab93; margin: 4px 0 7px; }
.bi-sides { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.bi-sides i {
  font-style: normal; font-size: 11px; color: #fff;
  padding: 2px 10px; border-radius: 10px;
}
.bi-sides em { font-style: normal; font-size: 10px; color: #776f58; }
.bi-lock { font-size: 20px; }
.bi-pick { width: 100%; display: none; align-items: center; gap: 10px; padding-top: 10px; border-top: 1px dashed rgba(215, 190, 130, .3); }
.bi-pick span { font-size: 13px; color: #d9cfae; }
.bi-pick button {
  font-family: KaiTi, STKaiti, serif; font-size: 17px; font-weight: bold; color: #fff;
  padding: 8px 22px; border-radius: 10px; min-height: 42px;
  text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
}

/* ============ 结算 ============ */
#endOverlay {
  position: fixed; inset: 0; z-index: 40;
  display: flex; align-items: center; justify-content: center;
  background: rgba(5, 8, 14, .72); backdrop-filter: blur(3px);
}
.end-box {
  text-align: center; padding: 40px 50px;
  background: linear-gradient(160deg, rgba(22, 27, 41, .97), rgba(13, 16, 26, .97));
  border: 1.5px solid rgba(215, 190, 130, .55); border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .7);
  max-width: 88vw;
}
#endTitle {
  font-family: KaiTi, STKaiti, serif; font-size: 64px; font-weight: bold;
  letter-spacing: 16px; margin-bottom: 12px;
  text-shadow: 0 4px 20px rgba(0, 0, 0, .6);
}
#endMsg { font-size: 16px; color: #d9cfae; margin-bottom: 28px; letter-spacing: 2px; }
.end-btns { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* 窄屏优化 */
@media (max-width: 640px) {
  #tbFaction { font-size: 15px; }
  .tb-stat { font-size: 10.5px; padding: 2px 7px; }
  .tb-btn { font-size: 12.5px; padding: 7px 11px; min-height: 38px; }
  .card { width: 96px; }
  .card-desc { font-size: 9.5px; min-height: 48px; }
  #cityPanel { width: min(260px, 70vw); }
}

/* ============ V9 官阶 ============ */
.tb-rank {
  font-family: KaiTi, STKaiti, serif; font-size: 13px; font-weight: bold;
  color: #ffd75e; background: rgba(120, 30, 20, .55);
  border: 1px solid rgba(255, 215, 94, .5); border-radius: 4px;
  padding: 2px 8px; letter-spacing: 2px;
}
.title-rank { margin-top: 18px; font-size: 14px; color: #d9cfae; letter-spacing: 1px; }
.title-rank b { color: #ffd75e; font-family: KaiTi, STKaiti, serif; font-size: 17px; }

/* 晋升圣旨 */
#promoteOverlay {
  position: fixed; inset: 0; z-index: 60;
  display: flex; align-items: center; justify-content: center;
  background: rgba(5, 8, 14, .68); backdrop-filter: blur(3px);
  cursor: pointer;
}
.promote-scroll {
  width: min(560px, 88vw); padding: 0; text-align: center;
  background: linear-gradient(180deg, #e8d9ae, #d9c48e 55%, #cbb377);
  border: 3px solid #8a6d3b; border-radius: 6px;
  box-shadow: 0 24px 80px rgba(0, 0, 0, .8), inset 0 0 60px rgba(140, 110, 60, .35);
  position: relative; overflow: hidden;
}
.promote-scroll::before, .promote-scroll::after {
  content: ''; position: absolute; top: -6px; bottom: -6px; width: 26px;
  background: linear-gradient(90deg, #6b4f2a, #9a7b46, #6b4f2a);
  border-radius: 13px;
}
.promote-scroll::before { left: -8px; }
.promote-scroll::after { right: -8px; }
#promoteOverlay.play .promote-scroll { animation: scrollUnroll .7s cubic-bezier(.2, 1.2, .3, 1); }
@keyframes scrollUnroll { from { transform: scaleY(.06); opacity: 0; } to { transform: scaleY(1); opacity: 1; } }
.ps-top {
  font-family: KaiTi, STKaiti, serif; font-size: 15px; letter-spacing: 8px;
  color: #6d5522; padding: 16px 0 0;
}
.ps-body { padding: 10px 0 26px; }
.ps-label { font-family: KaiTi, STKaiti, serif; font-size: 20px; color: #8a6d3b; letter-spacing: 22px; text-indent: 22px; }
#promoteRank {
  font-family: KaiTi, STKaiti, serif; font-size: 62px; font-weight: bold;
  color: #2a2118; letter-spacing: 14px; text-indent: 14px; margin: 8px 0 6px;
  text-shadow: 0 2px 0 rgba(255, 255, 255, .35);
}
.ps-perk { font-size: 15px; color: #6d5522; letter-spacing: 2px; }
.ps-seal {
  position: absolute; right: 46px; bottom: 30px;
  width: 64px; height: 64px; border-radius: 8px;
  background: #b0271b; color: #f4e8d0;
  font-family: KaiTi, STKaiti, serif; font-size: 38px; font-weight: bold;
  line-height: 64px; text-align: center;
  box-shadow: 0 3px 10px rgba(0, 0, 0, .35);
  transform: rotate(-6deg); opacity: .92;
}
#promoteOverlay.play .ps-seal { animation: sealStamp .5s .55s cubic-bezier(.2, 2.2, .4, 1) backwards; }
@keyframes sealStamp { from { transform: rotate(-6deg) scale(2.6); opacity: 0; } to { transform: rotate(-6deg) scale(1); opacity: .92; } }

/* ============ V9 士气 & 三选一 ============ */
#cardDock {
  position: fixed; bottom: 12px; left: 50%; transform: translateX(-50%);
  z-index: 19; display: flex; flex-direction: column; align-items: center; gap: 7px;
  pointer-events: none;
}
#cardDock #cardHand { position: static; transform: none; pointer-events: auto; }
#moraleWrap {
  display: flex; align-items: center; gap: 8px; pointer-events: auto;
  background: rgba(14, 17, 26, .82); border: 1px solid rgba(215, 190, 130, .35);
  border-radius: 20px; padding: 4px 12px;
}
.morale-label { font-family: KaiTi, STKaiti, serif; font-size: 13px; color: #ffd75e; letter-spacing: 2px; }
#moraleBar { width: 150px; height: 9px; background: rgba(255, 255, 255, .1); border-radius: 5px; overflow: hidden; }
#moraleFill {
  display: block; height: 100%; width: 0%;
  background: linear-gradient(90deg, #e8a23a, #ffd75e);
  border-radius: 5px; transition: width .25s linear;
}
#moraleNum { font-size: 13px; font-weight: bold; color: #ffe9b0; min-width: 20px; text-align: center; }
.card-cost {
  position: absolute; top: -7px; left: -7px; z-index: 2;
  width: 24px; height: 24px; border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #ffe9b0, #d9a83e);
  color: #4a2f10; font-size: 14px; font-weight: bold; line-height: 24px; text-align: center;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .5);
}
.card.cant { filter: grayscale(.75) brightness(.6); }
.card.combo-ready { box-shadow: 0 0 18px 3px rgba(255, 107, 26, .75), 0 6px 22px rgba(0, 0, 0, .55); }
#offerBar {
  position: fixed; bottom: 178px; left: 50%; transform: translateX(-50%);
  z-index: 20; display: flex; align-items: center; gap: 12px; pointer-events: auto;
  background: rgba(14, 17, 26, .85); border: 1px solid rgba(215, 190, 130, .45);
  border-radius: 14px; padding: 10px 14px;
}
.offer-label {
  font-family: KaiTi, STKaiti, serif; font-size: 15px; color: #ffd75e;
  letter-spacing: 3px; writing-mode: vertical-rl;
}
.offer-card { width: 76px; height: 104px; animation: cardIn .35s cubic-bezier(.2, 1.4, .4, 1); }
.card-back {
  position: absolute; inset: 6px; border-radius: 8px;
  background:
    radial-gradient(circle at 50% 40%, rgba(255, 215, 94, .18), transparent 65%),
    repeating-linear-gradient(45deg, #232a3d 0 6px, #1b2130 6px 12px);
  border: 1px solid rgba(215, 190, 130, .4);
  display: flex; align-items: center; justify-content: center;
  font-family: KaiTi, STKaiti, serif; font-size: 19px; color: #d9cfae;
  letter-spacing: 3px; writing-mode: vertical-rl;
}

/* ============ V9 卡组配置 ============ */
#deckOverlay {
  position: fixed; inset: 0; z-index: 50;
  display: flex; align-items: center; justify-content: center;
  background: rgba(5, 8, 14, .75); backdrop-filter: blur(3px);
}
.deck-box {
  width: min(680px, 94vw); max-height: 90vh; overflow-y: auto; text-align: center;
  background: linear-gradient(160deg, rgba(22, 27, 41, .97), rgba(13, 16, 26, .97));
  border: 1.5px solid rgba(215, 190, 130, .55); border-radius: 18px;
  padding: 26px 24px; box-shadow: 0 20px 60px rgba(0, 0, 0, .7);
}
.deck-title { font-family: KaiTi, STKaiti, serif; font-size: 30px; color: #ffe9b0; letter-spacing: 8px; margin: 0 0 6px; }
.deck-count { font-size: 13px; color: #a99f83; margin-bottom: 16px; }
#deckGrid { display: flex; flex-wrap: wrap; gap: 12px; justify-content: center; margin-bottom: 20px; }
.deck-card { animation: none; }
.deck-card.off { filter: grayscale(.9) brightness(.45); }

/* ============ V9 战役征程（羊皮卷） ============ */
.chapter-head {
  display: flex; align-items: center; gap: 10px; margin: 14px 0 2px;
}
.chapter-head .ch-dot {
  width: 12px; height: 12px; border-radius: 50%;
  background: radial-gradient(circle at 35% 30%, #3a3125, #14100a);
  box-shadow: 0 0 0 3px rgba(215, 190, 130, .25);
}
.chapter-head .ch-name {
  font-family: KaiTi, STKaiti, serif; font-size: 19px; font-weight: bold;
  color: #d7be82; letter-spacing: 6px;
}
.chapter-head .ch-line { flex: 1; border-top: 1.5px dashed rgba(215, 190, 130, .35); }
.battle-item { position: relative; margin-left: 22px; }
.battle-item::before {
  content: ''; position: absolute; left: -17px; top: -12px; bottom: -12px;
  border-left: 2px dashed rgba(215, 190, 130, .3);
}
.battle-item .bi-node {
  position: absolute; left: -22.5px; top: 22px;
  width: 9px; height: 9px; border-radius: 50%;
  background: #d7be82; box-shadow: 0 0 6px rgba(215, 190, 130, .8);
}
.battle-item.locked .bi-node { background: #5a5344; box-shadow: none; }
.bi-stars { margin-left: 10px; letter-spacing: 2px; }
.bi-stars i { font-style: normal; font-size: 15px; color: #4a4438; }
.bi-stars i.on { color: #ffd75e; text-shadow: 0 0 8px rgba(255, 215, 94, .6); }
.bi-daily {
  margin-left: 10px; font-size: 10.5px; color: #7de89a;
  border: 1px solid rgba(125, 232, 154, .5); border-radius: 8px; padding: 1px 8px;
}
.bi-seal {
  align-self: flex-start;
  font-family: KaiTi, STKaiti, serif; font-size: 15px; font-weight: bold;
  color: #f4e8d0; background: #b0271b; border-radius: 5px;
  padding: 4px 7px; transform: rotate(-8deg); opacity: .9;
  box-shadow: 0 2px 6px rgba(0, 0, 0, .4); letter-spacing: 1px;
}

/* 结算三星 */
#endStars { font-size: 40px; letter-spacing: 12px; margin-bottom: 10px; }
#endStars span { color: #4a4438; }
#endStars span.on { color: #ffd75e; text-shadow: 0 0 16px rgba(255, 215, 94, .7); }

/* V10.1 经典模式开关 */
.big-btn.ghost.small { font-size: 14px; padding: 8px 18px; opacity: .85; }

/* 游戏内菜单弹窗 */
#menuOverlay {
  position: fixed; inset: 0; z-index: 45;
  display: flex; align-items: center; justify-content: center;
  background: rgba(5, 8, 14, .6); backdrop-filter: blur(3px);
}
.menu-box {
  display: flex; flex-direction: column; gap: 12px;
  min-width: 250px; padding: 32px 42px;
  background: linear-gradient(160deg, rgba(22, 27, 41, .97), rgba(13, 16, 26, .97));
  border: 1.5px solid rgba(215, 190, 130, .55); border-radius: 20px;
  box-shadow: 0 20px 60px rgba(0, 0, 0, .7);
  text-align: center;
}
.menu-title {
  margin: 0 0 10px; font-size: 24px; letter-spacing: .45em; text-indent: .45em;
  color: #e8d9ae; font-weight: 600;
}
.menu-box .big-btn { width: 100%; }
/* 隐藏平台注入角标 */
a[href*="kimi"], [class*="kimi-"], [id*="kimi-"], [class*="Kimi"] { display: none !important; }
