.robotlab-game .game-hero { background: linear-gradient(135deg, #0a2540, #0f6b8f 55%, #3bceac); }
.rl-side { background: radial-gradient(circle at top, #164b6b, #081a2b); color: #fff; text-align: center; }
.rl-side .buddy p { color: #12124a; }
.rl-bay { padding: 12px; border: 3px solid #3bceac; border-radius: 18px; background: repeating-linear-gradient(45deg, #0d2a40 0 12px, #0b2236 12px 24px); box-shadow: inset 0 0 20px rgba(0,0,0,.5); }
.rl-bay-title { margin: 0 0 8px; color: #9ff0dc; font-size: .8rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.rl-bot { display: grid; justify-items: center; }
.rl-antenna { width: 4px; height: 14px; background: #ffd23f; box-shadow: 0 -6px 0 2px #ee4266; }
.rl-head { font-size: 3rem; line-height: 1; }
.rl-body { display: flex; flex-wrap: wrap; align-content: center; justify-content: center; gap: 4px; width: 150px; min-height: 76px; margin-top: 4px; padding: 8px; border: 3px solid #9ff0dc; border-radius: 16px; background: linear-gradient(160deg, #e8f7ff, #b9d9ea); }
.rl-part { font-size: 1.7rem; line-height: 1; animation: rl-snap .3s ease-out; }
.rl-count { color: #0a2540; font-family: ui-monospace, 'Cascadia Code', monospace; font-size: 1.6rem; font-weight: 800; }
@keyframes rl-snap { from { transform: scale(1.8); opacity: 0; } }
.rl-parts { min-height: 1.5em; margin: 8px 0 0; color: #d6f5ee; font-size: .85rem; }
.rl-status { font-weight: 700; }
.rl-step { margin: 12px 0 6px; font-weight: 800; }
.rl-program { margin: 0; padding: 10px 12px 10px 2.6em; border-radius: 14px; background: #0f1b2b; color: #cdeffd; font-family: ui-monospace, 'Cascadia Code', monospace; }
.rl-program .rl-line { min-height: 1.9em; padding: 4px 8px; border-radius: 8px; }
.rl-program .rl-line:nth-child(n + 3):not(.empty) { margin-left: 1.2em; }
.rl-program .rl-line.empty { color: #5d7a93; }
.rl-program .rl-line::marker { color: #5d7a93; }
.rl-chosen { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.rl-chosen li { padding: 6px 12px; border-radius: 999px; background: #dff6ef; color: #0a2540; font-weight: 700; }
.rl-card { font-weight: 700; }
.rl-card code { color: inherit; font-size: .9rem; white-space: normal; }
.mission-feedback .rl-program, .mission-feedback .rl-chosen { margin-top: 6px; }
@media (prefers-reduced-motion: reduce) { .rl-part { animation: none; } }
.pk-cards.rl-parts-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 8px; }
