/* 🧸 魔法娃娃視窗（js/dolls.js）：外框沿用 .lmui-ov（3.5 視窗框，lmui.css），這裡只放三個分頁的內容。
   合成分頁的按鈕顏色照單機版魔法娃娃商人（粉紅＝袋子、琥珀＝盒子、紫＝合成、玫瑰紅＝重組）；圖鑑照單機版裝備收集冊 */
.dl-ov .box { max-width: 520px; }
.dl-ov .bd { gap: 8px; font-size: 14px; color: #cbd5e1; }
.dl-pink { color: #f9a8d4; } .dl-amber { color: #fcd34d; } .dl-green { color: #4ade80; } .dl-red { color: #f87171; } .dl-rose { color: #fda4af; } .dl-mute { color: #64748b; }
.dl-none { padding: 18px 6px; text-align: center; color: #94a3b8; line-height: 1.6; }
/* 最近的結果（同系統訊息那幾句；開著視窗時聊天框被蓋住，這裡也留一份） */
.dl-last { padding: 6px 10px; border: 1px solid #4a3f30; border-radius: 6px; background: rgba(0,0,0,.45); font-size: 13px; line-height: 1.55; }
.dl-m-ok, #lmui-lines .dl-m-ok { color: #fde68a; } .dl-m-ng, #lmui-lines .dl-m-ng { color: #cbd5e1; } .dl-m-rose, #lmui-lines .dl-m-rose { color: #fda4af; }
.dl-m-pink, #lmui-lines .dl-m-pink { color: #f9a8d4; } .dl-m-red, #lmui-lines .dl-m-red { color: #f87171; }
/* 按鈕 */
.dl-b { padding: 4px 10px; font-family: inherit; font-weight: 700; font-size: 12px; line-height: 1.4; color: #f1f5f9; border: 1px solid; border-radius: 5px; cursor: pointer; white-space: nowrap; }
.dl-b.dl-off { background: #2a2420; border-color: #4a3f30; color: #8a7f6c; opacity: .6; cursor: default; }
.dl-pinkb { background: #9d174d; border-color: #db2777; } .dl-pinkb2 { background: #831843; border-color: #db2777; }
.dl-amberb { background: #92400e; border-color: #d97706; } .dl-amberb2 { background: #78350f; border-color: #d97706; }
.dl-purple { background: #6b21a8; border-color: #a855f7; } .dl-purple2 { background: #581c87; border-color: #a855f7; }
.dl-roseb { background: #9f1239; border-color: #f43f5e; } .dl-roseb2 { background: #881337; border-color: #f43f5e; }
.dl-b.dl-red { background: #3a1410; border-color: #b91c1c; color: #fecaca; } .dl-b.dl-blue { background: #172554; border-color: #1d4ed8; color: #bfdbfe; }
.dl-b:not(.dl-off):active { filter: brightness(1.25); }
/* 我的娃娃：裝著的那隻 */
.dl-worn { display: flex; align-items: center; gap: 10px; padding: 10px; border: 1px solid var(--tc, #4a3f30); border-radius: 8px; background: linear-gradient(rgba(40,32,22,.9), rgba(15,11,8,.9)); box-shadow: inset 0 0 14px rgba(0,0,0,.6); }
.dl-worn.none { justify-content: center; color: #94a3b8; font-size: 13px; padding: 16px 10px; }
.dl-big { flex: none; width: 72px; height: 72px; padding: 0; border: 2px solid var(--tc); border-radius: 10px; background: radial-gradient(circle, rgba(255,255,255,.08), #0e0b08 72%); cursor: pointer;
  display: flex; align-items: center; justify-content: center; box-shadow: 0 0 10px color-mix(in srgb, var(--tc) 45%, transparent); }
.dl-big img { width: 76%; height: 76%; object-fit: contain; filter: drop-shadow(0 2px 2px #000); }
.dl-wtx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.dl-nm { font-size: 16px; font-weight: 700; }
.dl-worn > .dl-b { flex: none; align-self: center; padding: 8px 14px; font-size: 14px; }
/* 說明（同單機版道具視窗：第一句、紅字特效、紫字能力） */
.dl-desc { color: #e2e8f0; font-size: 13px; }
.dl-fx { color: #fda4af; font-weight: 700; font-size: 13px; line-height: 1.5; }
.dl-st { color: #a78bfa; font-weight: 700; font-size: 13px; line-height: 1.5; }
/* 袋子、盒子 */
.dl-pack { display: flex; flex-direction: column; gap: 6px; }
.dl-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 7px 10px; border: 1px solid #4a3f30; border-radius: 6px; background: rgba(15,11,8,.7); }
.dl-row > span:first-child { display: inline-flex; align-items: center; gap: 6px; min-width: 0; }
.dl-row img { width: 26px; height: 26px; object-fit: contain; }
.dl-row > .dl-b { padding: 6px 16px; font-size: 13px; }
.dl-btns { display: flex; gap: 6px; flex: none; }
/* 擁有的娃娃：照階級框色、右下角數量 */
.dl-hd { display: flex; align-items: baseline; gap: 8px; padding: 4px 2px 0; font-weight: 700; color: #e9dcc0; border-top: 1px solid #3a2e20; }
.dl-hd small { font-size: 12px; font-weight: 400; color: #a8997a; }
.dl-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(76px, 1fr)); gap: 6px; }
.dl-cell { position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; aspect-ratio: 1; min-width: 0; padding: 4px 2px; font-family: inherit; cursor: pointer;
  border: 1px solid var(--tc); border-radius: 6px; background: linear-gradient(#2a241c, #14110d); box-shadow: inset 0 0 8px color-mix(in srgb, var(--tc) 35%, transparent); }
.dl-cell img { width: 58%; height: 58%; object-fit: contain; filter: drop-shadow(0 1px 1px #000); }
.dl-cell span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; color: #e9dcc0; }
.dl-cell i { position: absolute; right: 3px; bottom: 2px; font: 700 13px/1 sans-serif; font-style: normal; color: #fcd34d; text-shadow: 0 1px 1px #000, 0 0 2px #000; }
/* 合成（單機版商人面板） */
.dl-sec { padding-top: 8px; border-top: 1px solid #3a2e20; color: #cbd5e1; } .dl-sec small, .dl-sec2 small { font-size: 12px; color: #94a3b8; } .dl-sec b, .dl-sec2 b { color: #f1f5f9; }
.dl-sec2 b.dl-rose { color: #fda4af; }
.dl-box { display: flex; flex-direction: column; gap: 8px; padding: 10px; border: 1px solid #4a3f30; border-radius: 6px; background: rgba(15,11,8,.7); }
.dl-pick { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 6px; } .dl-pick span { display: inline-flex; flex-wrap: wrap; gap: 4px; }
.dl-sel { padding: 2px 9px; font-family: inherit; font-size: 13px; line-height: 1.5; color: #e2e8f0; background: #1e1a16; border: 1px solid #5a4630; border-radius: 5px; cursor: pointer; }
.dl-sel.on { background: #0369a1; border-color: #38bdf8; color: #fff; }
.dl-stats { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 2px 10px; font-size: 12px; color: #94a3b8; }
.dl-two { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; } .dl-two .dl-b { padding: 8px; font-size: 14px; }
/* 圖鑑（單機版裝備收集冊） */
.dl-bk-head { font-size: 19px; font-weight: 700; color: #bae6fd; } .dl-bk-head small { margin-left: 8px; font-size: 13px; font-weight: 400; color: #94a3b8; }
.dl-bk-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(92px, 1fr)); gap: 8px; }
.dl-bk { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 8px 4px; min-width: 0; background: rgba(30,41,59,.7); border: 1px solid rgba(51,65,85,.6); border-radius: 8px; font-family: inherit; cursor: default; }
.dl-bk.got { border-color: #475569; cursor: pointer; }
.dl-bk img { width: 48px; height: 48px; object-fit: contain; } .dl-bk img.sil { filter: brightness(0) saturate(0); opacity: .55; }
.dl-bk span { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 12px; font-weight: 700; color: #fff; } .dl-bk:not(.got) span { color: #64748b; }
/* 說明小視窗、確認框 */
.dl-iw .box { max-width: 400px; }
.dl-iw .hd { justify-content: flex-start; }
.dl-ic { flex: none; width: 40px; height: 40px; border: 1px solid var(--tc); border-radius: 4px; background: linear-gradient(#2a241c, #14110d); display: flex; align-items: center; justify-content: center; }
.dl-ic img { width: 80%; height: 80%; object-fit: contain; }
.dl-inm { flex: 1; min-width: 0; font-size: 16px; overflow-wrap: anywhere; }
.dl-iw .bd { padding: 8px 10px; }
.dl-iw .dl-desc, .dl-iw .dl-fx, .dl-iw .dl-st { font-size: 15px; line-height: 1.75; }
.dl-iw .ft .dl-b, .dl-askov .ft button { flex: 1; padding: 9px 8px; font-size: 15px; }
.lmui-ov.dl-iw .ft button.dl-blue { background: #172554; border-color: #1d4ed8; color: #bfdbfe; }   /* 蓋過 lmui.css 的 .lmui-ov .ft button（同單機版：裝備藍、卸下紅） */
.lmui-ov.dl-iw .ft button.dl-red { background: #3a1410; border-color: #b91c1c; color: #fecaca; }
.dl-askov .cl-ask b { color: #fde047; }
.dl-askov .ft .dl-okb { border-color: #a855f7; background: #581c87; color: #f3e8ff; }
@media (max-width: 480px) {
  .dl-row { flex-wrap: wrap; }
  .dl-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 5px; }
  .dl-bk-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
  .dl-bk img { width: 44px; height: 44px; }
  .dl-bk span { font-size: 11px; white-space: normal; line-height: 1.3; text-align: center; }   /* 手機三欄：名字放不下一行就換行 */
  .dl-worn { flex-wrap: wrap; } .dl-worn > .dl-b { flex: 1 1 100%; }
}
/* 娃娃說明（js/doll-info.js，2026-10-23 站長「娃娃介紹」）：效果標籤（紫＝固定加的、紅＝機率發動／免疫）、階數小標、「怎麼取得」那幾列 */
.dl-tier { display: inline-block; margin-left: 6px; padding: 0 6px; border: 1px solid var(--tc, #64748b); border-radius: 9px; font: 700 11px/1.5 sans-serif; color: var(--tc, #cbd5e1); vertical-align: 2px; white-space: nowrap; }
.dl-fxs { display: flex; flex-wrap: wrap; gap: 4px; }
.dl-fxc { padding: 1px 7px; border: 1px solid rgba(167,139,250,.38); border-radius: 4px; background: rgba(124,58,237,.16); color: #ddd6fe; font-size: 12.5px; line-height: 1.55; font-weight: 700; white-space: nowrap; }
.dl-fxc.p { border-color: rgba(251,113,133,.42); background: rgba(225,29,72,.16); color: #fecdd3; }
.dl-worn .dl-fxs { margin-top: 4px; }
.dl-sub { display: flex; align-items: center; gap: 8px; margin-top: 2px; font-size: 12px; font-weight: 700; color: #e9dcc0; letter-spacing: 1px; }
.dl-sub::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, #5a4630, rgba(90,70,48,0)); }
.dl-get { display: flex; flex-direction: column; gap: 4px; }
.dl-gr { display: flex; align-items: center; gap: 8px; padding: 6px 9px; border: 1px solid #4a3f30; border-radius: 6px; background: rgba(15,11,8,.7); }
.dl-gr > img, .dl-gi { flex: none; width: 26px; height: 26px; object-fit: contain; display: flex; align-items: center; justify-content: center; font-style: normal; font-size: 18px; line-height: 1; }
.dl-gt { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: 13px; font-weight: 700; color: #e2e8f0; line-height: 1.35; }
.dl-gt small { font-size: 11.5px; font-weight: 400; color: #94a3b8; }
.dl-gv { flex: none; display: flex; flex-direction: column; align-items: flex-end; line-height: 1.25; }
.dl-gv em { font-style: normal; font-size: 10.5px; color: #a8997a; }
.dl-gv b { font-size: 14px; color: #fcd34d; font-variant-numeric: tabular-nums; }
.dl-iw .bd { gap: 8px; }
.dl-iw .dl-fxc { font-size: 13.5px; }
.lmui-ov.dl-iw .ft button.dl-purple { background: #6b21a8; border-color: #a855f7; color: #f3e8ff; }
.dl-bk { cursor: pointer; }   /* 圖鑑還沒有的也能點開看怎麼拿 */
@media (max-width: 480px) {
  .dl-fxc { font-size: 12px; padding: 1px 6px; }
  .dl-iw .dl-fxc { font-size: 13px; }
}
@media (max-height: 500px) {   /* 手機橫式：說明小視窗矮，標籤、取得那幾列收緊一點 */
  .dl-iw .dl-fxc { font-size: 12px; padding: 0 6px; }
  .dl-iw .bd { gap: 6px; }
  .dl-gr { padding: 4px 8px; }
  .dl-gr > img, .dl-gi { width: 22px; height: 22px; font-size: 15px; }
  .dl-gt { font-size: 12px; } .dl-gt small { font-size: 11px; } .dl-gv b { font-size: 13px; }
}
/* 地圖上顯示娃娃（伺服器本機改動第 132 項；dollshow.js） */
.dl-show { display: flex; align-items: center; justify-content: flex-end; gap: 8px; font-size: 13px; color: #a8997a; }
.dl-show select { font-family: inherit; font-size: 14px; color: #f0e2bf; background: #0b0908; border: 1px solid #5a4630; border-radius: 4px; padding: 3px 6px; }
/* 合成張數、失敗說明、買袋子（伺服器本機改動第 132 項） */
.dl-need { font-size: 14px; color: #e2e8f0; } .dl-need b { color: #fde68a; } .dl-need small { margin-left: 6px; font-size: 12px; color: #94a3b8; }
.dl-fail { font-size: 12px; color: #94a3b8; }
.dl-buy small { margin-left: 8px; font-size: 12px; color: #94a3b8; }
