.scene{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 14px;border:1px solid var(--line-3);border-radius:16px;background:var(--panel)}.scene-legend{font:400 11.5px var(--mono);color:var(--dim);text-align:center}.scene-caption{font-size:13.5px;color:var(--body);text-align:center}.board{display:grid;grid-template-columns:repeat(8,1fr);width:100%;max-width:420px;aspect-ratio:1;border-radius:10px;overflow:hidden;border:2px solid #3a2a1c}.board-cell{position:relative;display:grid;place-items:center;padding:0;border:0;font-size:clamp(18px,5vw,30px);line-height:1;background:var(--cell-bg);color:var(--piece-c);cursor:var(--cell-cur, pointer);box-shadow:inset 0 0 0 3px var(--ring-c)}.board-cell--static{cursor:default}.board-mark{position:absolute;font:700 18px var(--mono);color:var(--mark-c)}.board-coord{position:absolute;font:600 9px var(--mono);pointer-events:none;color:var(--coord-c)}.board-coord--rank{left:3px;top:2px}.board-coord--file{right:3px;bottom:1px}.robot-field{display:grid;grid-template-columns:var(--field-cols);gap:3px;width:100%;max-width:var(--field-max)}.robot-cell{aspect-ratio:1;border-radius:6px;display:grid;place-items:center;font-size:clamp(14px,4vw,24px);background:var(--cell-bg);border:1.5px solid var(--cell-bd);transition:background .2s,border-color .2s}.ttt-boards{display:flex;gap:16px;flex-wrap:wrap;justify-content:center}.ttt{display:flex;flex-direction:column;align-items:center;gap:6px}.ttt-grid{display:grid;grid-template-columns:repeat(3,38px);gap:3px;padding:3px;border-radius:8px;background:var(--line-5)}.ttt-cell{width:38px;height:38px;border-radius:4px;display:grid;place-items:center;background:#121314;font:700 20px var(--mono);color:var(--mark-c)}.ttt-caption{font:500 11px var(--mono);color:var(--dim)}.light{display:flex;gap:22px;align-items:center;flex-wrap:wrap;justify-content:center}.light-box{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:22px;background:#151618;border:2px solid var(--line-5)}.light-lamp{width:52px;height:52px;border-radius:50%;background:var(--lamp-bg);box-shadow:var(--lamp-glow);transition:background .3s,box-shadow .3s}.light-seq{display:flex;gap:6px;flex-wrap:wrap;max-width:260px}.light-seq-dot{width:18px;height:18px;border-radius:50%;background:var(--dot-bg);opacity:var(--dot-op);transition:opacity .3s}.receipt{width:100%;max-width:340px;padding:16px 18px 22px;border-radius:6px 6px 0 0;background:#f6f3ea;color:#1b1b1b;font:13.5px/21px var(--mono);box-shadow:0 10px 30px #0006;-webkit-mask:linear-gradient(#000 0 0) top/100% calc(100% - 8px) no-repeat,radial-gradient(circle 6px at 8px 100%,transparent 6px,#000 6.5px) bottom/16px 8px repeat-x;mask:linear-gradient(#000 0 0) top/100% calc(100% - 8px) no-repeat,radial-gradient(circle 6px at 8px 100%,transparent 6px,#000 6.5px) bottom/16px 8px repeat-x}.receipt-title{margin-bottom:8px;text-align:center;font-weight:700;letter-spacing:.1em}.receipt-line{min-height:21px;white-space:pre-wrap}.cash{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;min-height:56px}.cash-empty{font:500 12px var(--mono);color:var(--dim)}.cash-note{width:92px;height:46px;border-radius:6px;display:grid;place-items:center;animation:rise .3s ease;background:var(--note-bg);border:2px solid rgba(255,255,255,.25);box-shadow:0 4px #00000059;font:700 15px var(--mono);color:#fff}
