/* 对话 / 选项 / 确认：统一宣纸底 + 朱印名牌 + 墨线分隔（只换皮肤，不改行为） */
#dialog { border: 9px solid transparent !important; border-image: url(../../assets/v29/ui/ui_card_raise.png) 12 fill stretch !important; background: none !important; border-radius: 0 !important; box-shadow: 0 6px 14px rgba(0,0,0,.35) !important; padding: 8px 18px 8px !important; min-height: 96px; width: min(640px, 92vw); }
#dlg-name { top: -30px !important; left: 104px !important; z-index: 2; padding: 2px 16px !important; font: 400 16px/22px "猫田楷", serif !important; letter-spacing: 4px !important; color: #f6ecd4 !important; background: #a8392b !important; border: 0 !important; border-radius: 2px !important; transform: rotate(-2deg) !important; box-shadow: 0 1px 0 rgba(255,255,255,.35) inset, 1px 2px 3px rgba(0,0,0,.3) !important; }
#dialog.cat #dlg-name { background: #3d5a50 !important; }
#dlg-text { font-family: "猫田楷", serif; font-size: 19px; line-height: 30px; color: var(--ink-1, #2a2620); letter-spacing: 1px; }
#dlg-sub { margin-top: 4px; padding-top: 4px; border-top: 1px dashed var(--paper-edge, #c4b48a); font-size: 14px; color: var(--ink-3, #7a6c52) !important; }
.dlg-next { color: #a8392b !important; }
#choice { border: 9px solid transparent !important; border-image: url(../../assets/v29/ui/ui_card_raise.png) 12 fill stretch !important; background: none !important; border-radius: 0 !important; box-shadow: 0 6px 14px rgba(0,0,0,.35) !important; min-width: min(86vw, 340px); padding: 8px 12px 10px !important; gap: 5px !important; }
#choice .ctitle { font: 400 17px/24px "猫田楷", serif; letter-spacing: 2px; padding-bottom: 6px; margin-bottom: 2px; border-bottom: 1px solid var(--paper-edge, #c4b48a); color: var(--ink-1, #2a2620); }
#choice button { display: flex; align-items: center; gap: 10px; padding: 0 10px !important; min-height: 34px; font: 400 16px/1.2 "猫田楷", serif !important; border: 1px solid transparent !important; border-bottom: 1px solid var(--paper-edge, #c4b48a) !important; border-radius: 3px !important; background: none !important; color: var(--ink-1, #2a2620); }
#choice button b { flex: none; display: grid !important; place-items: center; width: 20px !important; height: 20px; font: 700 12px/1 "Noto Sans SC", sans-serif; color: #f6ecd4 !important; background: var(--ink-3, #7a6c52); border-radius: 50%; }
#choice button:hover, #choice button:focus { background: rgba(255,249,228,.9) !important; border: 1px solid var(--paper-edge, #c4b48a) !important; box-shadow: 0 1px 2px rgba(60,44,24,.25); }
#choice button:hover b, #choice button:focus b { background: #a8392b; }
.ink-confirm .ic-card { border: 9px solid transparent !important; border-image: url(../../assets/v29/ui/ui_card_raise.png) 12 fill stretch !important; background: none !important; box-shadow: 0 8px 18px rgba(0,0,0,.4); padding: 12px 22px 12px !important; }
.ink-confirm .ic-card h4 { font: 400 22px/1.2 "猫田楷", serif; letter-spacing: 8px; color: var(--ink-1, #2a2620) !important; }
.ink-confirm .ic-card h4::after { background: linear-gradient(90deg, transparent, var(--paper-edge, #b9a780), transparent); }
.ink-confirm .ic-card p { font-size: 15px; line-height: 24px; color: var(--ink-2, #4a3f2e); }
.ink-confirm .ic-btns button { height: 32px; min-width: 96px; padding: 0 16px; font: 400 15px/1 "猫田楷", serif; letter-spacing: 3px; border-radius: 4px; border: 1px solid var(--paper-edge, #b9a780); color: var(--ink-1, #2a2620); background: linear-gradient(#fbf3dc, #e9dcb6); box-shadow: 0 1px 0 rgba(255,255,255,.7) inset, 0 1px 2px rgba(0,0,0,.25); cursor: pointer; }
.ink-confirm .ic-btns button.yes { color: #f6ecd4; background: linear-gradient(#b8463a, #8f2e24); border-color: #6f2018; }
/* 短话：单行紧凑；长话：两行。文字区高度固定，超出一律裁在框内（上限由 v29_dialog.js 保证不会触发） */
#dialog { display: none; flex-direction: column; justify-content: center; }
#dialog.on { display: flex !important; }
#dialog.short29 { min-height: 68px; width: min(520px, 92vw); }
#dialog.long29 { min-height: 112px; width: min(660px, 94vw); }
#dlg-text { overflow: hidden; word-break: break-all; }
#dialog.short29 #dlg-text { min-height: 30px; max-height: 30px; }
#dialog.long29 #dlg-text { min-height: 60px; max-height: 60px; }
#dialog.cat #dlg-text { font-size: 22px; line-height: 30px; }
#dialog.nosub29 #dlg-sub { display: none; }
#dlg-sub { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
