<!-- SOLID CITY · part 1983 -->
, parkLift: 0.30, homeLift: 0.30, bob: true,
        solidBox: { hx: 0.65, hz: 0.65, top: 0.55 }, blipColor: '#2affd8',
        mountHelp: '🛹 THE HOVER BOARD — push the stick and she glides; she feeds herself under 6 m/s, carves with the stick, and HOP lifts her. Downhill is free speed. The action button steps you off.',
        makeMesh: function (T) { return fleet.createHoverBoardMesh(T); },
        makeState: function (core, pos, yaw) { return core.createHoverBoard(pos, yaw); },
        stepper: function (core) { return core.stepHoverBoard; } },
      { key: 'rider', name: 'SPACE RIDER', icon: '🚲', home: RIDER_HOME, clr: 0.52,
        meshDrop: 0.52, footLift: -0.34, parkLift: 0.0, homeLift: 0.22, bob: false,
        solidBox: { hx: 0.35, hz: 0.85, top: 1.30 }, blipColor: '#9fd0ff',
        mountHelp: '🚲 THE SPACE RIDER — push the stick to pedal her up; she tops out near 9 m/s, leans into her turns by bicycle law, and HOP bunny-hops her. The action button steps you off.',
        makeMesh: function (T) { return fleet.createSpaceRiderMesh(T); },
        makeState: function (core, pos, yaw) { return core.createSpaceRider(pos, yaw); },
        stepper: function (core) { return core.stepSpaceRider; } },
      { key: 'ship', name: 'SPACE SHIP', icon: '\u{1F680}', home: SHIP_HOME, clr: 0,
        meshDrop: 0, footLift: 1.15, parkLift: 0, homeLift: 0, bob: false,
        solidBox: { hx: 4.2, hz: 3.2, top: 2.6 }, blipColor: '#ffd873',
        mountHelp: '\u{1F680} THE SPACE SHIP — the action button launches her off the cradle. The stick flies her (push up to climb), \u25B2\u25BC work the throttle, and the action button toggles ASSIST. To land: ASSIST on, bring her low and slow — she flares and settles herself. You can only step out when she is parked.',
        makeMesh: function (T) { return fleet.createSpaceShipMesh(T); },
        makeState: function (core, pos, yaw) { return core.createSpaceShip(pos, yaw); },
        stepper: function (core) { return core.stepSpaceShip; } }
    ];
    defs.forEach(function (def) {
      var e = makeCraft(def);
      if (def.key === 'ship') e.park.yaw = SHIP_YAW; // she waits facing her departure, not the pad
      var ry = supportHere(def.home.x, def.home.z);
      if (def.key === 'ship') {
        e.rack = fleet.createShipBerth(A.T, A.labelTex);
        e.rack.position.set(def.home.x, ry, def.home.z);
        e.rack.rotation.y = -Math.PI / 2; // the berth plate faces the racks, where pilots walk from
      } else {
        e.rack = fleet.createFleetRack(A.T, A.labelTex, def.name, 'THE FLEET · EST. 2026');
        e.rack.position.set(def.home.x, ry, def.home.z);
        e.rack.rotation.y = e.park.yaw;
      }
      group.add(e.rack);
      e.mesh = def.makeMesh(A.T);
      if (def.key === 'rider' || def.key === 'ship') e.mesh.rotation.order = 'YXZ'; // yaw first, then the lean / the bank
      group.add(e.mesh);
      e.craft = def.makeState(core, { x: def.home.x, y: ry + def.homeLift + def.clr, z: def.home.z }, e.park.yaw);
      if (def.key === 'ship') {
        e.machine = fleet.createShipMachine(core, M.world);
        e.machine.board(e.craft, { x: def.home.x, y: ry, z: def.home.z }, e.park.yaw);
      } else {
        e.clock = core.createCraftClock(def.stepper(core), e.craft, M.world);
      }
      addSolid(e);
      M.crafts.push(e);
      if (A.POIS) A.POIS.push({ id: 'fleet-' + def.key, name: 'THE ' + def.name, icon: def.icon, x: def.home.x, z: def.home.z,
        blurb: def.key === 'board'
          ? 'The first of the futuristic fleet: a hover board on the spaceport apron, riding the surveyed fabric of the city. She feeds herself under 6 m/s, carves with the stick, and hops. Downhill is free speed.'
          : def.key === 'rider'
          ? 'The bicycle\u2019s heir: a stand-up space rider on VECTOR\u2019s controller. Pedal her toward 9 m/s; she leans into her turns by bicycle law \u2014 the front assembly steering into the fall.'
          : 'The fleet\u2019s ship: a winged atmospheric craft on VECTOR\u2019s flight core, flown through the flight-state machine of his fourth correction. The cradle throws her; the ASSIST lands her; she stalls honestly and settles mercifully. Top speed near 84 m/s.',
        arrive: def.key === 'ship'
          ? 'You stand at Berth 1. The ship waits inside her gold ring, facing the west sky.'
          : 'You stand at the fleet racks. The machines hum over their plinths, waiting.' });
    });
    A.world.add(group);
    A.logBuild({ t: Date.now(), site: 'THE FLEET — ORBITAL SPACEPORT', what: 'The futuristic fleet complete at the spaceport apron: the HOVER BOARD (-340, 292), the SPACE RIDER (-333, 292), and the SPACE SHIP at Berth 1 (-398, 288) — all on VECTOR\u2019s controllers over the city\u2019s standing fabric, under Rung 2\u2019s door law; the ship flown through her flight-state machine (PARKED, LAUNCH, FREE, ASSIST, APPROACH, FLARE, LANDING, EMERGENCY). The ground ride\u2019s law already pi