.lc-dust { position: absolute; left: 0; top: 0; z-index: 3; image-rendering: pixelated; pointer-events: none; }
.lostc .arm-box { touch-action: none; }

.lc-dial { position: absolute; bottom: 36px; z-index: 5; width: 200px; transform: translateX(-50%); display: flex; flex-direction: column; align-items: center; gap: 10px; pointer-events: none; }
.lc-dial canvas { display: block; image-rendering: pixelated; }
.lc-dial .lc-face { filter: drop-shadow(0 6px 0 rgba(0,0,0,.45)); transition: filter .12s; }
.lc-dial.click .lc-face { animation: lc-click .18s steps(2); }
@keyframes lc-click { 0% { filter: drop-shadow(0 6px 0 rgba(0,0,0,.45)) brightness(1.5); } 100% { filter: drop-shadow(0 6px 0 rgba(0,0,0,.45)); } }
.lc-num { font-size: 34px; line-height: 34px; color: var(--fg); font-variant-numeric: tabular-nums; text-align: center; min-width: 2.2ch; }
.lc-slots { display: flex; gap: 12px; }
.lc-slot { width: 44px; padding: 6px 0 8px; text-align: center; font-size: 16px; line-height: 16px; color: var(--muted); background: var(--bg3); box-shadow: 0 0 0 3px var(--ink); font-variant-numeric: tabular-nums; }
.lc-slot.cur { box-shadow: 0 0 0 3px #f2c45a; color: var(--fg); }
.lc-slot.on { color: #f2c45a; }
.lc-hint { width: 260px; min-height: 32px; font-size: 13px; line-height: 16px; text-align: center; color: var(--muted); }
.lc-dial.auto .lc-hint { opacity: .6; }

.lc-ghost { position: fixed; z-index: 9100; line-height: 0; pointer-events: none; transform: translate(-50%, -50%); filter: drop-shadow(0 6px 0 rgba(0,0,0,.4)); }
.lc-ghost canvas { display: block; image-rendering: pixelated; }
.pedestal.lc-lifted .ped-crate { opacity: .25; }
body.lc-drag, body.lc-drag * { cursor: grabbing !important; user-select: none; }

.lc-block { margin: 3px 3px 19px; padding: 18px 22px 22px; display: flex; align-items: center; gap: 28px; }
.lc-block::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: #c99bff; }
.lc-art { flex: none; line-height: 0; }
.lc-art canvas { display: block; image-rendering: pixelated; }
.lc-info { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; min-width: 0; }
.lc-title { font-size: 20px; line-height: 22px; color: #c99bff; }
.lc-text { font-size: 14px; line-height: 18px; max-width: 520px; }
.lc-odds { font-size: 13px; line-height: 16px; color: var(--muted); margin-bottom: 6px; }
