.app--gridlock{grid-template-rows:auto 1fr auto}.board{place-items:center;min-height:0;padding:4px 10px 8px;display:grid}.park{isolation:isolate;width:calc(var(--cell) * 6);height:calc(var(--cell) * 6);background:var(--surface);touch-action:none;border-radius:10px;margin-right:30px;position:relative;box-shadow:0 6px 18px #040a164d}.park[data-empty]{visibility:hidden}.bays{border-radius:10px;grid-template:repeat(6,1fr)/repeat(6,1fr);display:grid;position:absolute;inset:0;overflow:hidden}.bay{border-right:1px dashed color-mix(in srgb, var(--text-dim) 26%, transparent);border-bottom:1px dashed color-mix(in srgb, var(--text-dim) 26%, transparent)}.bay:nth-child(6n){border-right:none}.bay:nth-child(n+31){border-bottom:none}.park:after{content:"";opacity:.85;background:linear-gradient(180deg, #e6394a 0 calc(var(--cell) * var(--exit-row) + 3px), transparent calc(var(--cell) * var(--exit-row) + 3px) calc(var(--cell) * (var(--exit-row) + 1) - 3px), #e6394a calc(var(--cell) * (var(--exit-row) + 1) - 3px));border-radius:2px;width:4px;margin-left:2px;position:absolute;top:0;bottom:0;left:100%}.exit{width:26px;position:absolute;left:100%}.exit:after{content:"";border-top:2.5px solid #e6394a;border-right:2.5px solid #e6394a;border-radius:1px;width:9px;height:9px;position:absolute;top:50%;left:12px;transform:translateY(-50%)rotate(45deg)}.car{background:linear-gradient(160deg, var(--car) 0%, var(--car-shade) 100%);box-shadow:inset 0 1px 0 #ffffff47, 0 2px 0 var(--car-shade), 0 3px 7px #040a1659;cursor:grab;touch-action:none;z-index:2;border-radius:9px;transition:left .16s cubic-bezier(.3,.9,.35,1),top .16s cubic-bezier(.3,.9,.35,1);position:absolute}.car:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.car-glass{background:#0b122057;border-radius:5px;position:absolute;inset:20%}.car--h .car-glass{background:linear-gradient(90deg,#0b12205c 0 42%,#0000 42%),linear-gradient(90deg,#0000 0 58%,#0b12205c 58%);inset:22% 16%}.car--v .car-glass{background:linear-gradient(#0b12205c 0 42%,#0000 42%),linear-gradient(#0000 0 58%,#0b12205c 58%);inset:16% 22%}.car--target{box-shadow:inset 0 0 0 2px #ffffff8c, inset 0 1px 0 #ffffff4d, 0 2px 0 var(--car-shade), 0 4px 10px #b41e2d66}.car-mark{border-top:2.5px solid #ffffffeb;border-right:2.5px solid #ffffffeb;width:8px;height:8px;position:absolute;top:50%;right:12%;transform:translateY(-50%)rotate(45deg)}.car.is-dragging{cursor:grabbing;z-index:6;filter:brightness(1.09);box-shadow:inset 0 1px 0 #ffffff47, 0 3px 0 var(--car-shade), 0 10px 20px #040a1673;transition:none}.car.is-selected{z-index:5;filter:brightness(1.06)}.car.is-hinted{z-index:5;box-shadow:inset 0 0 0 2px var(--accent), 0 2px 0 var(--car-shade), 0 0 16px var(--accent-soft)}.car.is-blocking:after{content:"";border-radius:9px;position:absolute;inset:0;box-shadow:inset 0 0 0 1.5px #ffffff52}.slot{z-index:4;cursor:pointer;background:0 0;border:none;padding:0;position:absolute}.slot:after{content:"";background:var(--accent);opacity:.42;border-radius:50%;transition:opacity .12s;position:absolute;inset:30%}.slot:hover:after,.slot:focus-visible:after{opacity:.75}.park.is-won .slot{display:none}@media (prefers-reduced-motion:reduce){.car{transition:none}}.slot.is-hinted:after{opacity:1;background:var(--accent);box-shadow:0 0 0 2px var(--accent-soft);inset:18%}
