/* rig */
.rig{position:relative}
.rig .head{display:flex;align-items:center;gap:8px;margin-bottom:10px}
.rig .head h3{font-size:22px;margin-right:auto}
.pill{border:2px solid var(--ink);border-radius:20px;padding:2px 10px;font-weight:800;font-size:13px;background:var(--paper2)}
.pill.ok{background:var(--mint)}.pill.hot{background:var(--orange)}.pill.trip,.pill.dead{background:var(--rose)}.pill.off,.pill.incomplete{background:#cfcfcf}
.parts{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}
.pslot{background:#fff;border:3px solid var(--ink);border-radius:10px;padding:6px;text-align:left;display:flex;flex-direction:column;min-height:52px}
.pslot b{font-size:12px;opacity:.65}.pslot span{font-size:14px;font-weight:800;line-height:1.15}
.pslot.empty{border-style:dashed;background:transparent}
.gpus{display:grid;grid-template-columns:repeat(auto-fill,minmax(98px,1fr));gap:8px;margin-bottom:12px}
.gslot{background:#fff;border:3px solid var(--ink);border-radius:10px;padding:6px;display:flex;flex-direction:column;align-items:center;gap:3px;min-height:92px;justify-content:center}
.gslot.empty{border-style:dashed;background:transparent;font-family:var(--head);font-size:24px}
.gslot.empty span{font-family:var(--body);font-size:12px;font-weight:800;opacity:.7}
.gslot .gname{font-size:12px;font-weight:800;text-align:center;line-height:1.1}
.gslot .mini{width:100%;height:7px;border:2px solid var(--ink);border-radius:5px;background:var(--paper2);overflow:hidden}
.gslot .mini i{display:block;height:100%;background:var(--mint)}
.gpu{width:100%;max-width:84px;height:auto}
.gpu .fan{transform-box:fill-box;transform-origin:center}
.rig.run .gpu .fan{animation:spin var(--spd,1.2s) linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.meters{display:grid;gap:8px;margin-bottom:10px}
.meter{display:grid;grid-template-columns:78px 1fr 84px;gap:8px;align-items:center;font-size:14px}
.meter span:last-child{text-align:right;font-weight:800}
.nums{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:10px 0;text-align:center}
.nums div{background:#fff;border:2px solid var(--ink);border-radius:10px;padding:4px}
.nums small{display:block;font-size:11px;opacity:.65}.nums b{font-size:15px}
.coins{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.coins button{background:#fff;border:3px solid var(--ink);border-radius:10px;padding:4px 10px;font-weight:800}
.coins button.on{background:var(--mint)}
.coins .oc.on{background:var(--rose)}
.rigempty{border-style:dashed;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;min-height:200px}
.hint{background:var(--sky);border:3px solid var(--ink);border-radius:14px;padding:10px 14px;margin-bottom:16px;box-shadow:0 4px 0 var(--ink)}

