/* 主持台 —— 桌面/平板优先 */
body.dm{font-size:15px}
.dm-top{
  position:sticky; top:0; z-index:20; display:flex; justify-content:space-between; align-items:center;
  padding:11px 18px; background:rgba(11,13,17,.96); backdrop-filter:blur(8px); border-bottom:1px solid var(--line);
}
.dm-mark{font-family:"ZCOOL XiaoWei",serif; font-size:1.4rem; letter-spacing:.14em; color:var(--lamp)}
.dm-tabs{
  display:flex; gap:0; overflow-x:auto; background:var(--sunk); border-bottom:1px solid var(--line);
  position:sticky; top:47px; z-index:19;
}
.dm-tabs button{
  background:none; border:0; border-bottom:2px solid transparent; padding:11px 18px; cursor:pointer;
  color:var(--muted); font-family:"Noto Sans SC",sans-serif; font-size:.85rem; letter-spacing:.08em;
  white-space:nowrap; position:relative;
}
.dm-tabs button.on{color:var(--lamp); border-bottom-color:var(--lamp)}
.dm-tabs .badge{position:absolute; top:6px; right:6px}

body.dm main{max-width:1180px; margin:0 auto; padding:16px 18px 90px}
.dv{display:block}

.sel,.txt{
  background:var(--sunk); border:1px solid var(--line); border-radius:2px; color:var(--text);
  padding:9px 11px; font-size:.88rem; font-family:"Noto Serif SC",serif;
}
.sel{font-family:"Noto Sans SC",sans-serif}
.txt.num{font-family:"JetBrains Mono",monospace; text-align:right}
textarea.txt{width:100%; resize:vertical; font-size:.9rem; line-height:1.7}
.field .txt{width:100%; text-align:left; letter-spacing:0; font-size:.9rem}

/* 分房 */
.roomgrid{display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:10px}
.rcell{border:1px solid var(--line); border-radius:2px; padding:10px 11px; background:var(--sunk)}
.rcell .nm{font-family:"ZCOOL XiaoWei",serif; font-size:1.1rem; margin-bottom:6px}
.rcell select{width:100%}
.rcell.murder{border-color:var(--cinnabar)}
.rcell.murder .nm::after{content:" 凶手"; color:var(--cinnabar); font-size:.7rem; font-family:"Noto Sans SC",sans-serif}

/* 玩家板 */
#pboard{display:grid; grid-template-columns:repeat(auto-fill,minmax(330px,1fr)); gap:12px}
.pc{background:var(--raised); border:1px solid var(--line-soft); border-top:3px solid var(--f,var(--muted)); border-radius:0 0 2px 2px; padding:13px 14px}
.pc.f-ccp{--f:var(--cinnabar)} .pc.f-kmt{--f:var(--blue)} .pc.f-nw{--f:var(--lamp)} .pc.f-none{--f:var(--lamp-dim)} .pc.f-free{--f:var(--jade)}
.pc .h{display:flex; justify-content:space-between; align-items:baseline; gap:8px}
.pc .h b{font-family:"ZCOOL XiaoWei",serif; font-size:1.3rem; letter-spacing:.05em; font-weight:400}
.pc .h .rm{font-family:"JetBrains Mono",monospace; font-size:.76rem; color:var(--lamp); border:1px solid var(--lamp); padding:0 5px; border-radius:2px}
.pc .money{display:flex; align-items:baseline; gap:8px; margin:8px 0 2px}
.pc .money b{font-family:"JetBrains Mono",monospace; font-size:1.7rem; color:var(--lamp)}
.pc .money span{font-size:.72rem; color:var(--muted); font-family:"JetBrains Mono",monospace}
.pc .sect{font-family:"Noto Sans SC",sans-serif; font-size:.66rem; letter-spacing:.14em; color:var(--muted); margin:9px 0 4px}
.pc ul{margin:0; padding-left:1.1em; font-size:.82rem}
.pc ul li{margin:0 0 2px}
.pc ul li::marker{color:var(--muted)}
.pc .dead{color:var(--cinnabar); font-size:.72rem}
.pc .acts{display:flex; gap:6px; flex-wrap:wrap; margin-top:10px}

/* 发牌 */
.dealgrid{display:grid; grid-template-columns:repeat(auto-fill,minmax(230px,1fr)); gap:9px}
.dcard{border:1px solid var(--line); border-radius:2px; padding:10px 11px; background:var(--sunk)}
.dcard .t{font-family:"Noto Sans SC",sans-serif; font-size:.72rem; letter-spacing:.1em; color:var(--muted); margin-bottom:5px; display:flex; justify-content:space-between}
.dcard .x{font-size:.85rem; line-height:1.75; margin-bottom:9px; min-height:2.2em}
.dcard.used{opacity:.42}
.dcard .who{display:flex; gap:5px; flex-wrap:wrap}
.dcard .who button{
  border:1px solid var(--line); background:transparent; color:var(--text-mid); font-size:.74rem;
  padding:4px 8px; border-radius:2px; cursor:pointer; font-family:"Noto Sans SC",sans-serif;
}
.dcard .who button:hover:not(:disabled){border-color:var(--lamp); color:var(--lamp)}
.dcard .who button:disabled{opacity:.3; cursor:not-allowed; text-decoration:line-through}
.dcard .taken{font-size:.7rem; color:var(--jade); font-family:"Noto Sans SC",sans-serif}

.chips-pick{display:flex; gap:6px; flex-wrap:wrap}
.chips-pick button{
  border:1px solid var(--line); background:var(--sunk); color:var(--text-mid); font-size:.78rem;
  padding:6px 11px; border-radius:2px; cursor:pointer; font-family:"Noto Sans SC",sans-serif;
}
.chips-pick button.on{border-color:var(--lamp); color:var(--lamp); background:#1D1B14}

/* 拍卖 */
.scrollx{overflow-x:auto}
table.bt{border-collapse:collapse; width:100%; font-size:.82rem; min-width:640px}
table.bt th,table.bt td{border:1px solid var(--line-soft); padding:6px 8px; text-align:center}
table.bt th{background:var(--sunk); font-family:"Noto Sans SC",sans-serif; font-weight:500; font-size:.72rem; letter-spacing:.06em; color:var(--muted)}
table.bt td:first-child,table.bt th:first-child{text-align:left; white-space:nowrap}
table.bt td.b{font-family:"JetBrains Mono",monospace; color:var(--text)}
table.bt td.top{color:var(--lamp); font-weight:600}
table.bt td.ring{color:var(--jade)}
table.bt tr.tie{background:#1E1513}

.setrow{display:flex; align-items:center; gap:10px; padding:8px 0; border-bottom:1px solid var(--line-soft); font-size:.86rem}
.setrow .no{font-family:"JetBrains Mono",monospace; color:var(--lamp); width:28px; flex:none}
.setrow .nm{flex:1}
.setrow .st{font-family:"Noto Sans SC",sans-serif; font-size:.76rem}
.setrow .st.won{color:var(--jade)} .setrow .st.tie{color:var(--cinnabar)} .setrow .st.unsold{color:var(--muted)}

/* 流水 */
.force{display:flex; gap:8px; flex-wrap:wrap; align-items:center}
.force .sel,.force .txt{flex:0 1 auto; min-width:120px}
#lgBox .lg time{width:52px}
#lgBox .lg{font-size:.84rem}
.kd{font-family:"Noto Sans SC",sans-serif; font-size:.66rem; letter-spacing:.08em; border:1px solid var(--line); border-radius:2px; padding:1px 5px; color:var(--muted); flex:none}
.kd.dm{border-color:var(--cinnabar); color:var(--cinnabar)}
.kd.pl{border-color:var(--jade); color:var(--jade)}
.kd.au{border-color:var(--blue); color:var(--blue)}

/* 链接 */
.lk{display:flex; align-items:center; gap:10px; padding:9px 0; border-bottom:1px solid var(--line-soft); flex-wrap:wrap}
.lk b{font-family:"ZCOOL XiaoWei",serif; font-size:1.05rem; width:80px; flex:none}
.lk code{font-family:"JetBrains Mono",monospace; font-size:.76rem; color:var(--text-mid); background:var(--sunk); padding:5px 8px; border-radius:2px; flex:1; min-width:200px; word-break:break-all}

.warnbox{border:1px solid var(--cinnabar); background:#1C1614; border-radius:2px; padding:11px 13px; margin:0 0 12px; font-size:.86rem}

.printlink{margin-left:auto;padding:11px 18px;color:var(--lamp);text-decoration:none;font-family:'Noto Sans SC',sans-serif;font-size:.85rem;letter-spacing:.08em;align-self:center}
.printlink:hover{text-decoration:underline}
.dm-tabs{align-items:center}
