/* 玩法百科：固定 760×366，左搜索+条目，右详情分页 */
#panel .pbox.hb29box { overflow: hidden; }
.hb29 { height: 100%; box-sizing: border-box; display: flex; gap: 10px; padding: 6px 8px; border: 8px solid transparent; border-image: url(../../assets/v29/ui/ui_well.png) 12 fill stretch; overflow: hidden; }
.hb29-l { flex: none; width: 262px; display: flex; flex-direction: column; gap: 5px; min-height: 0; }
.hb29-s { flex: none; display: flex; gap: 4px; height: 26px; }
.hb29-s input { flex: 1; min-width: 0; height: 26px; box-sizing: border-box; padding: 0 8px; font: 12px "Noto Sans SC", sans-serif; color: var(--ink); background: var(--paper-hi, #fbf3dc); border: 1px solid var(--paper-edge, #c4b48a); border-radius: 4px; }
.hb29-s .k29-btn { flex: none; height: 26px; min-height: 0; padding: 0 9px; font-size: 12px; }
.hb29-ls { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 3px; }
.hb29-it { flex: 1; max-height: 28px; display: flex; align-items: center; gap: 8px; padding: 0 8px; min-width: 0; background: none; border: 1px solid transparent; border-bottom-color: var(--paper-edge, #c4b48a); font-family: "Noto Sans SC", sans-serif; color: var(--ink-2, #4a3f2e); cursor: pointer; text-align: left; }
.hb29-it .gd29-ic { flex: none; width: 22px; height: 22px; }
.hb29-it b { font-size: 13px; font-weight: 400; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hb29-it.on { background: rgba(255,249,228,.85); border: 1px solid var(--paper-edge, #c4b48a); box-shadow: 0 1px 2px rgba(60,44,24,.25); color: var(--ink-1, #2a2620); }
.hb29-it.on b { font-weight: 700; }
.hb29-pg, .hb29-dpg { flex: none; display: flex; align-items: center; justify-content: center; gap: 8px; height: 24px; font-size: 12px; color: var(--ink-3); position: relative; }
.hb29-pg span, .hb29-dpg span { min-width: 46px; text-align: center; background: var(--paper-hi); border: 1px solid var(--paper-edge); border-radius: 10px; padding: 0 8px; line-height: 18px; }
.hb29-pg span b, .hb29-dpg span b { color: var(--ink); font-size: 13px; }
.hb29-pg em { position: absolute; right: 0; font-style: normal; font-size: 11px; color: var(--ink-3); }
.hb29-pg .gd29-arr, .hb29-dpg .gd29-arr { width: 30px; height: 22px; }
.hb29-r { flex: 1; min-width: 0; min-height: 0; display: flex; flex-direction: column; gap: 6px; padding: 8px 12px; border: 8px solid transparent; border-image: url(../../assets/v29/ui/ui_card_raise.png) 12 fill stretch; overflow: hidden; }
.hb29-top { flex: none; display: flex; align-items: center; gap: 10px; height: 46px; }
.hb29-top .gd29-big { flex: none; width: 46px; height: 46px; }
.hb29-nm { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 2px; }
.hb29-nm b { font: 400 20px/1.1 "猫田楷", serif; letter-spacing: 3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.hb29-nm small { font-size: 11px; color: #a8392b; letter-spacing: 2px; }
.hb29-art { flex: none; height: 44px; width: auto; max-width: 90px; object-fit: contain; border: 1px solid var(--paper-edge, #c4b48a); }
.hb29-rows { flex: 1; min-height: 0; display: flex; flex-direction: column; gap: 4px; overflow: hidden; border-top: 1px solid var(--paper-edge, #c4b48a); padding-top: 6px; }
.hb29-row { display: flex; gap: 8px; align-items: flex-start; }
.hb29-row small { flex: none; width: 52px; text-align: center; font-size: 11px; line-height: 18px; color: var(--ink-3, #7a6c52); letter-spacing: 1px; border-right: 1px solid var(--paper-edge, #c4b48a); padding-right: 6px; }
.hb29-row p { margin: 0; flex: 1; min-width: 0; font-size: 13px; line-height: 20px; color: var(--ink-2, #4a3f2e); }
.hb29-no { margin: auto; font-size: 12px; color: var(--ink-3); }
