.g-robot-path{--rp-floor:#e8f4f8;--rp-floor-line:#c5dde8;--rp-robot:#26a5b8;--rp-robot-dark:#14707d;--rp-rock:#8d8577;--rp-rock-dark:#5f5a50;--rp-star:#f5b301;--rp-gem:#b85cf0;gap:var(--sp-3)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .g-robot-path{--rp-floor:#1c2a33;--rp-floor-line:#2b3f4b}}:root[data-theme=dark] .g-robot-path{--rp-floor:#1c2a33;--rp-floor-line:#2b3f4b}.g-robot-path :focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}.g-robot-path .rp-grid{width:min(100%, calc(var(--cols) * 68px));aspect-ratio:var(--cols) / var(--rows);border-radius:var(--r-lg);background:var(--rp-floor);box-shadow:inset 0 0 0 3px var(--rp-floor-line);--cw:calc(100% / var(--cols));--rh:calc(100% / var(--rows));position:relative}.g-robot-path .rp-cell{width:var(--cw);height:var(--rh);border:1px solid var(--rp-floor-line);place-items:center;padding:8%;display:grid;position:absolute;inset-block-start:calc(var(--r) * var(--rh));inset-inline-start:calc(var(--c) * var(--cw))}.g-robot-path .rp-cell.is-path{background:color-mix(in srgb, var(--c-accent) 35%, transparent)}.g-robot-path .rp-cellart{filter:drop-shadow(0 2px 2px #0003);width:100%;height:100%}.g-robot-path .rp-rock{fill:var(--rp-rock);stroke:var(--rp-rock-dark);stroke-width:3px;stroke-linejoin:round}.g-robot-path .rp-rocklight{fill:#fff;opacity:.35}.g-robot-path .rp-star{fill:var(--rp-star);stroke:#b45309;stroke-width:3px;stroke-linejoin:round}.g-robot-path .rp-gem{fill:var(--rp-gem);stroke:#6d28d9;stroke-width:3px;stroke-linejoin:round}.g-robot-path .rp-gemlight{fill:none;stroke:#fff;stroke-width:2.5px;opacity:.7}.g-robot-path .rp-cell.is-taken .rp-cellart{opacity:.15}.g-robot-path .rp-robot{width:var(--cw);height:var(--rh);transform:rotate(var(--rot,0deg));pointer-events:none;padding:6%;position:absolute;inset-block-start:calc(var(--r) * var(--rh));inset-inline-start:calc(var(--c) * var(--cw))}.g-robot-path .rp-robotart{filter:drop-shadow(0 3px 3px #0000004d);width:100%;height:100%}.g-robot-path .rp-head,.g-robot-path .rp-bodyp{fill:var(--rp-robot);stroke:var(--rp-robot-dark);stroke-width:3px}.g-robot-path .rp-antenna,.g-robot-path .rp-foot{fill:var(--rp-robot-dark)}.g-robot-path .rp-bulb{fill:#ff7043}.g-robot-path .rp-robot.has-gem .rp-bulb{fill:var(--rp-gem)}.g-robot-path .rp-eye{fill:#fff}.g-robot-path .rp-pupil{fill:#1a1a22}.g-robot-path .rp-mouth{fill:#0f3f47}.g-robot-path .rp-robot.is-bump .rp-robotart{filter:drop-shadow(0 0 6px var(--c-warn))}.g-robot-path.is-done .rp-grid{box-shadow:inset 0 0 0 3px var(--c-good)}.g-robot-path .rp-tray{justify-content:center;gap:var(--sp-3);display:flex}.g-robot-path .rp-cmd{min-width:72px;min-height:var(--tap);padding:var(--sp-2) var(--sp-3);border:2px solid var(--c-border-strong);border-radius:var(--r-md);background:var(--c-surface);color:var(--c-brand);font:inherit;cursor:pointer;flex-direction:column;align-items:center;gap:2px;display:flex}.g-robot-path .rp-cmd:disabled{opacity:.45;cursor:default}.g-robot-path .rp-arrow{fill:currentColor;width:28px;height:28px}.g-robot-path .rp-cmdname{color:var(--c-text);font-size:var(--fs-xs);font-weight:var(--fw-semi)}.g-robot-path .rp-strip{justify-content:center;gap:var(--sp-1);width:min(100%,420px);min-height:48px;padding:var(--sp-2);border-radius:var(--r-md);background:var(--c-surface-2);flex-wrap:wrap;display:flex}.g-robot-path .rp-chip,.g-robot-path .rp-slot{border-radius:var(--r-sm);place-items:center;width:40px;height:40px;display:grid}.g-robot-path .rp-chip{border:2px solid var(--c-brand);background:var(--c-brand-soft);color:var(--c-brand);cursor:pointer;padding:0}.g-robot-path .rp-chip .rp-arrow{width:22px;height:22px}.g-robot-path .rp-chip.is-active{background:var(--c-accent);border-color:var(--c-accent);color:#1a1a22}.g-robot-path .rp-chip:disabled{cursor:default}.g-robot-path .rp-slot{border:2px dashed var(--c-border-strong)}.g-robot-path .rp-msg{max-width:36ch;min-height:2.6em;color:var(--c-text-dim);font-size:var(--fs-md);font-weight:var(--fw-med);line-height:var(--lh-snug);text-align:center;text-wrap:balance;margin:0}.g-robot-path .rp-msg.is-good{color:var(--c-good);font-weight:var(--fw-bold)}.g-robot-path .rp-msg.is-almost{color:var(--c-warn);font-weight:var(--fw-semi)}.g-robot-path .rp-actions{justify-content:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.g-robot-path .rp-run,.g-robot-path .rp-action{min-height:var(--tap);padding-block:var(--sp-2);padding-inline:var(--sp-5);border:2px solid var(--c-border-strong);border-radius:var(--r-full);background:var(--c-surface);color:var(--c-text);font:inherit;font-size:var(--fs-md);font-weight:var(--fw-semi);cursor:pointer}.g-robot-path .rp-run{border-color:var(--c-good);background:var(--c-good);color:var(--c-text-on-accent);font-weight:var(--fw-bold)}.g-robot-path .rp-run:disabled,.g-robot-path .rp-action:disabled{opacity:.5;cursor:default}.g-robot-path.is-done .rp-tray,.g-robot-path.is-done .rp-actions{visibility:hidden}.g-robot-path .rp-robot,.g-robot-path .rp-cell,.g-robot-path .rp-chip{transition:none}@media (prefers-reduced-motion:no-preference){.g-robot-path.is-motion .rp-robot{transition:inset-block-start var(--dur-slow) var(--ease), inset-inline-start var(--dur-slow) var(--ease), transform var(--dur-slow) var(--ease)}.g-robot-path.is-motion .rp-robot.is-bump{animation:rp-shake var(--dur-slow) var(--ease)}@keyframes rp-shake{0%,to{translate:0}25%{translate:-4px}75%{translate:4px}}.g-robot-path.is-motion .rp-cell{transition:background-color var(--dur) var(--ease)}.g-robot-path.is-motion .rp-chip{transition:background-color var(--dur-fast) var(--ease)}}
