/* ============================================================
   美术总改 · 参考皇帝成长计划2 / 三国志战略版
   目标：按钮如玉牌鎏金、面板如绢帛框裱、字号层级分明
   ============================================================ */

/* ---------- 全局字号与基调 ---------- */
body { font-size: 15px !important; }

/* ---------- 底部一级导航：鎏金令牌 ---------- */
#action-rail[data-scene="court"],
#action-rail[data-scene="palace"] {
  background: linear-gradient(180deg,
    rgba(42,26,12,.96) 0%,
    rgba(58,36,16,.94) 50%,
    rgba(42,26,12,.96) 100%
  ) !important;
  border: none !important;
  border-top: 3px solid #c49a4a !important;
  box-shadow: 0 -4px 20px rgba(0,0,0,.5) !important;
  padding: 8px 12px !important;
}
#action-rail[data-scene="palace"] {
  background: linear-gradient(90deg,
    rgba(42,26,12,.96) 0%,
    rgba(58,36,16,.94) 50%,
    rgba(42,26,12,.96) 100%
  ) !important;
  border: none !important;
  border-left: 3px solid #c49a4a !important;
  box-shadow: -4px 0 20px rgba(0,0,0,.5) !important;
}
#action-rail button {
  position: relative;
  min-height: 52px !important;
  font: 700 17px var(--serif) !important;
  letter-spacing: 5px !important;
  color: #ffe9c2 !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.7), 0 0 8px rgba(255,200,100,.15);
  background:
    linear-gradient(160deg, rgba(255,200,100,.12) 0%, transparent 40%),
    linear-gradient(180deg, #6d3d19 0%, #4a2a10 45%, #5a3312 55%, #3d2208 100%) !important;
  border: 1px solid #8a6a2e !important;
  border-radius: 3px !important;
  box-shadow:
    0 2px 8px rgba(0,0,0,.5),
    inset 0 1px 0 rgba(255,215,130,.25),
    inset 0 -1px 0 rgba(0,0,0,.4) !important;
  transition: background .15s, box-shadow .15s, border-color .15s;
}
#action-rail button::before {
  content: '';
  position: absolute;
  top: 3px; left: 50%; transform: translateX(-50%);
  width: 30%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,215,130,.5), transparent);
}
#action-rail button:hover {
  color: #fff3d6 !important;
  background:
    linear-gradient(160deg, rgba(255,200,100,.2) 0%, transparent 40%),
    linear-gradient(180deg, #8b5a2a 0%, #6d4020 45%, #7a4820 55%, #5a3312 100%) !important;
  border-color: #c49a4a !important;
  box-shadow:
    0 3px 12px rgba(0,0,0,.5),
    0 0 16px rgba(255,180,80,.15),
    inset 0 1px 0 rgba(255,215,130,.35),
    inset 0 -1px 0 rgba(0,0,0,.4) !important;
}
#action-rail button.active {
  color: #fff8e2 !important;
  background:
    linear-gradient(160deg, rgba(255,180,60,.25) 0%, transparent 50%),
    linear-gradient(180deg, #a0522d 0%, #8b3a2a 50%, #6d2c1a 100%) !important;
  border-color: #d4a050 !important;
  box-shadow:
    0 2px 10px rgba(160,60,20,.5),
    0 0 12px rgba(200,100,40,.3),
    inset 0 1px 0 rgba(255,200,130,.4),
    inset 0 -1px 0 rgba(0,0,0,.4) !important;
}
#action-rail .rail-log {
  background: linear-gradient(180deg, #3d2810, #2a1a08) !important;
  border-color: #6a5a2e !important;
  font-size: 13px !important;
  letter-spacing: 2px !important;
}

/* ---------- 二级上拉菜单：鎏金令牌小号版 ---------- */
#rail-flyout {
  background:
    linear-gradient(180deg, rgba(42,26,12,.97), rgba(58,36,16,.95)) !important;
  border: 1px solid #c49a4a !important;
  border-radius: 4px !important;
  box-shadow: 0 8px 30px rgba(0,0,0,.6) !important;
  padding: 6px !important;
  gap: 5px !important;
}
#rail-flyout button {
  min-height: 48px !important;
  font: 700 16px var(--serif) !important;
  letter-spacing: 4px !important;
  color: #ffe9c2 !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.6) !important;
  background:
    linear-gradient(160deg, rgba(255,200,100,.1) 0%, transparent 40%),
    linear-gradient(180deg, #6d3d19, #4a2a10) !important;
  border: 1px solid #8a6a2e !important;
  border-radius: 3px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,215,130,.2) !important;
}
#rail-flyout button:hover {
  color: #fff3d6 !important;
  background:
    linear-gradient(160deg, rgba(255,200,100,.18) 0%, transparent 40%),
    linear-gradient(180deg, #8b5a2a, #6d4020) !important;
  border-color: #c49a4a !important;
}

/* ---------- 二级条（朝堂内页导航）：玉牌 ---------- */
#court-subnav button {
  min-height: 44px !important;
  font: 700 16px var(--serif) !important;
  letter-spacing: 4px !important;
  color: #4e3214 !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.4) 0%, transparent 50%),
    linear-gradient(180deg, #f5ead0, #e8d5a8) !important;
  border: 1px solid #b8934e !important;
  border-radius: 3px !important;
  box-shadow:
    0 2px 6px rgba(90,60,20,.15),
    inset 0 1px 0 rgba(255,255,255,.7),
    inset 0 -1px 0 rgba(180,140,70,.2) !important;
}
#court-subnav button:hover {
  background:
    linear-gradient(135deg, rgba(255,255,255,.5) 0%, transparent 50%),
    linear-gradient(180deg, #fff0c9, #f0d494) !important;
  border-color: #bd761f !important;
}
#court-subnav button.active {
  color: #fff3d6 !important;
  background:
    linear-gradient(135deg, rgba(255,200,100,.2) 0%, transparent 50%),
    linear-gradient(180deg, #a0522d, #6d3d19) !important;
  border-color: #d4a050 !important;
  text-shadow: 0 1px 3px rgba(0,0,0,.4) !important;
}

/* ---------- 页内标签（建造/政务/宗正/廷尉） ---------- */
.page-tabs button {
  min-height: 42px !important;
  font: 700 16px var(--serif) !important;
  letter-spacing: 3px !important;
  background: linear-gradient(180deg, #f5ead0, #e8d5a8) !important;
  border: 1px solid #b8934e !important;
  border-radius: 3px !important;
}
.page-tabs button.active {
  background: linear-gradient(180deg, #a0522d, #6d3d19) !important;
  color: #fff3d6 !important;
  border-color: #d4a050 !important;
}

/* ---------- 顶栏：暗底鎏金 ---------- */
#topbar {
  background: linear-gradient(180deg, #2a1a08, #1a0f04) !important;
  color: #ffe9c2 !important;
  border-bottom: 3px solid #c49a4a !important;
  box-shadow: 0 2px 12px rgba(0,0,0,.5) !important;
}
#topbar > span {
  background: transparent !important;
  border: 1px solid rgba(196,154,74,.25) !important;
  border-radius: 2px !important;
  color: #ffe9c2 !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.6) !important;
}
#topbar > span b { color: #f4c96e !important; }
#tb-gold, #tb-food, #tb-people { border-left: 2px solid rgba(196,154,74,.5) !important; }
#tb-army { border-left: 2px solid rgba(196,154,74,.5) !important; }
#tb-xinmin, #tb-prestige, #tb-legitimacy, #tb-baoli { border-left: 2px solid rgba(196,154,74,.5) !important; }
#tb-ruler { border-left: 2px solid rgba(196,154,74,.5) !important; }
#tb-time {
  background: linear-gradient(180deg, #c49a4a, #a87828) !important;
  color: #fff8e2 !important;
  font-weight: 700 !important;
  border: none !important;
  border-radius: 0 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.5) !important;
}

/* ---------- 面板：绢帛质感 + 装饰角 ---------- */
.v7-page, .v9-palace {
  border: none !important;
  border-radius: 4px !important;
  box-shadow:
    0 4px 24px rgba(0,0,0,.18),
    inset 0 0 0 1px rgba(196,154,74,.3),
    inset 0 0 0 3px rgba(255,248,232,.5),
    inset 0 0 0 4px rgba(196,154,74,.2) !important;
}
.v7-heading {
  border-bottom: 2px solid #c49a4a !important;
  background: linear-gradient(90deg, #fff8e5 0%, #f5e5c0 60%, #f0ddae 100%) !important;
}
.v7-heading h2 {
  font: 700 30px var(--serif) !important;
  letter-spacing: 8px !important;
  color: #5a2d0e !important;
  text-shadow: 0 1px 2px rgba(200,160,80,.3) !important;
}
.v7-heading span {
  font-size: 14px !important;
  letter-spacing: 4px !important;
  color: #8a6a3c !important;
}

/* ---------- 面板内信息：数值醒目 ---------- */
.data-table th, .data-table td { font-size: 14px !important; }
.hr-summary article, .build-dashboard article {
  font-size: 14px !important;
  padding: 10px 14px !important;
}
.hr-summary b, .build-dashboard b { font-size: 22px !important; }

/* ---------- 各类卡片：绢帛底 + 金边 + 悬停浮起 ---------- */
.roster-card, .consort-card, .talent-card, .system-card,
.quest-card, .visit-event, .visit-npc, .visit-do,
.city-row, .work-row, .item-row, .yihong-girl {
  background: linear-gradient(180deg, #fffaf0, #fdf6e5) !important;
  border: 1px solid #c8a96e !important;
  border-radius: 3px !important;
  transition: box-shadow .15s, border-color .15s, transform .15s;
}
.roster-card:hover, .consort-card:hover, .talent-card:hover,
.system-card:hover, .city-row:hover {
  box-shadow: 0 4px 16px rgba(160,100,30,.25) !important;
  border-color: #bd761f !important;
  transform: translateY(-1px);
}

/* ---------- 信息数值：醒目 + 色阶 ---------- */
.hr-row b { font-size: 16px !important; }
.hr-row-attrs { font-size: 12px !important; }
.key-attrs b, .featured-attrs strong { font-size: 14px !important; padding: 4px 8px !important; }
.state-line span { font-size: 13px !important; }
.trait-line.big b { font-size: 15px !important; }
.trait-line.big span { font-size: 14px !important; color: #5d4426 !important; }
.minor-attrs { font-size: 11px !important; }
.minor-attrs em { font-size: 10px !important; }
.candidate-attrs article b { font-size: 22px !important; }
.candidate-attrs article span { font-size: 13px !important; }
.candidate-attrs article em { font-size: 11px !important; }
.bio-card { font-size: 14px !important; line-height: 1.8 !important; }

/* ---------- 弹窗：绢帛裱框 ---------- */
#modal-box {
  border-radius: 4px !important;
  box-shadow:
    0 12px 40px rgba(0,0,0,.4),
    inset 0 0 0 1px rgba(196,154,74,.4),
    inset 0 0 0 4px rgba(255,248,232,.6),
    inset 0 0 0 5px rgba(196,154,74,.2) !important;
  background: linear-gradient(180deg, #fffaf0, #fdf6e5) !important;
}
#modal-box h3 {
  font: 700 22px var(--serif) !important;
  letter-spacing: 3px !important;
  color: #5a2d0e !important;
}

/* ---------- 正文按钮：统一鎏金风 ---------- */
.btn {
  font: 700 14px var(--body-font) !important;
  letter-spacing: 1px !important;
  padding: 8px 16px !important;
  color: #5a3515 !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,.4) 0%, transparent 50%),
    linear-gradient(180deg, #f5ead0, #e0c890) !important;
  border: 1px solid #b8934e !important;
  border-radius: 3px !important;
  box-shadow: 0 1px 4px rgba(90,60,20,.15), inset 0 1px 0 rgba(255,255,255,.6) !important;
  transition: all .15s;
}
.btn:hover, .btn:focus-visible {
  background:
    linear-gradient(135deg, rgba(255,255,255,.5) 0%, transparent 50%),
    linear-gradient(180deg, #fff0c9, #f0d494) !important;
  border-color: #bd761f !important;
  box-shadow: 0 2px 8px rgba(160,100,30,.25) !important;
}
.btn-primary {
  color: #fff3d6 !important;
  text-shadow: 0 1px 2px rgba(0,0,0,.3) !important;
  background:
    linear-gradient(135deg, rgba(255,200,100,.15) 0%, transparent 50%),
    linear-gradient(180deg, #a0522d, #6d3d19) !important;
  border: 1px solid #8a6a2e !important;
  box-shadow: 0 2px 8px rgba(100,50,10,.35), inset 0 1px 0 rgba(255,200,130,.3) !important;
}
.btn-primary:hover {
  background:
    linear-gradient(135deg, rgba(255,200,100,.25) 0%, transparent 50%),
    linear-gradient(180deg, #c06238, #8a4822) !important;
  border-color: #d4a050 !important;
  box-shadow: 0 3px 12px rgba(140,70,20,.4) !important;
}
.btn-small { font-size: 13px !important; padding: 5px 12px !important; }
.btn-danger {
  color: #fff !important;
  background: linear-gradient(180deg, #9b3a26, #7a2a18) !important;
  border-color: #7a3a22 !important;
}

/* ---------- 对话弹窗：卷轴感 ---------- */
.dlg-scene {
  font-size: 15px !important;
  line-height: 2 !important;
  background: linear-gradient(180deg, #faf3e2, #f5ead0) !important;
  border: none !important;
  border-left: 3px solid #c49a4a !important;
  padding: 12px 16px !important;
  color: #3b2a10 !important;
}
.dlg-choice {
  padding: 12px 14px !important;
  font-size: 15px !important;
  background: linear-gradient(180deg, #fffaf0, #f5ead0) !important;
  border: 1px solid #b8934e !important;
  border-radius: 3px !important;
  transition: all .15s;
}
.dlg-choice:hover {
  background: linear-gradient(180deg, #fff0c9, #f0d494) !important;
  border-color: #bd761f !important;
  box-shadow: 0 2px 8px rgba(160,100,30,.2) !important;
}

/* ---------- 正殿：标题鎏金 + 要务卡片 ---------- */
.palace-title h1 {
  font: 700 42px var(--serif) !important;
  letter-spacing: 12px !important;
  color: #4a2008 !important;
  text-shadow: 0 2px 4px rgba(200,160,80,.4), 0 1px 0 #fff8e8 !important;
}
.palace-title span {
  font-size: 15px !important;
  letter-spacing: 6px !important;
  color: #8a6a3c !important;
}
.palace-agenda-v9 h3 {
  font: 700 17px var(--serif) !important;
  letter-spacing: 8px !important;
  color: #7a4a1c !important;
  border-bottom: 1px solid #d4a050 !important;
  padding-bottom: 6px !important;
  margin-bottom: 8px !important;
}
.agenda-row {
  font-size: 15px !important;
  padding: 11px 14px !important;
  background: linear-gradient(90deg, #fffaf0, #fdf6e5) !important;
  border: 1px solid #c8a96e !important;
  border-left: 3px solid #c49a4a !important;
  transition: all .12s;
}
.agenda-row:hover {
  background: #fff8e2 !important;
  border-left-color: #a0522d !important;
  border-color: #bd761f !important;
}
.agenda-row b { font-size: 15px !important; color: #7a3d0e !important; }

/* ---------- 朝堂奏折页：鎏金大字 ---------- */
.court-throne h2 {
  font: 700 36px var(--serif) !important;
  letter-spacing: 10px !important;
  color: #4a2008 !important;
  text-shadow: 0 2px 4px rgba(200,160,80,.4) !important;
}
.court-throne span {
  font-size: 15px !important;
  letter-spacing: 8px !important;
  color: #8a6a3c !important;
}
.court-throne .btn-primary {
  font: 700 17px var(--serif) !important;
  letter-spacing: 6px !important;
  padding: 12px 40px !important;
}

/* ---------- 空态：优雅缩小 ---------- */
.empty-state.compact {
  max-width: 320px !important;
  margin: 32px auto !important;
  padding: 20px 32px !important;
  background: linear-gradient(180deg, #fffaf0, #fdf6e5) !important;
  border: 1px dashed #c8a96e !important;
  border-radius: 4px !important;
}
.empty-state.compact b { font-size: 16px !important; color: #7a4a1c !important; }
.empty-state.compact span { font-size: 13px !important; color: #9a8568 !important; }

/* ---------- 响应式适配 ---------- */
@media(max-width:1100px){
  #action-rail button { font-size: 15px !important; letter-spacing: 3px !important; }
  .v7-heading h2 { font-size: 24px !important; }
  .court-throne h2 { font-size: 26px !important; }
}
@media(max-width:700px){
  #action-rail button { font-size: 13px !important; letter-spacing: 1px !important; min-height: 40px !important; }
  #rail-flyout button { font-size: 14px !important; min-height: 36px !important; }
  .page-tabs button { font-size: 13px !important; min-height: 36px !important; }
  #court-subnav button { font-size: 13px !important; min-height: 38px !important; }
  .v7-heading h2 { font-size: 20px !important; letter-spacing: 4px !important; }
  .palace-title h1 { font-size: 28px !important; letter-spacing: 6px !important; }
  .court-throne h2 { font-size: 22px !important; letter-spacing: 4px !important; }
}
@media(max-height:560px){
  #action-rail button { min-height: 36px !important; font-size: 12px !important; letter-spacing: 1px !important; }
  #rail-flyout button { min-height: 30px !important; font-size: 12px !important; }
  .v7-heading h2 { font-size: 18px !important; }
}
