You are W-FAR. Problem: the operator wants settlements 3x denser (towns 300-450 buildings, cities 700-1000, houses
wall to wall). Today a 'lite' medieval house still costs 25-35k triangles (windows, bressummers, chimneys, dormers
dominate even after vertex clustering), so a 900-house city would draw about 28 M triangles. Too heavy for a phone.
Goal: a third detail level `detail: 'far'` for buildings seen from 60 m and beyond (aerial views, the far side of town).
1. styles/medieval.mjs layoutStyle and layout.mjs (Breton) accept kitInfo.detail === 'far': the house keeps its exact
   massing, roof shape, colours and materials, but
   - walls: flat quads WITHOUT holes (same wall / plaster / rubble material, normal map kept, no displacement);
   - every window and door becomes ONE flat inset quad (2 triangles) 2 cm proud of the wall: a new panel kind
     'opening' that render.mjs draws in one merged mesh with a dark glass / dark oak vertex colour (glass 0x2a3036,
     door = the door's paint tint darkened, or 0x3b2a1e), so a facade still reads as windows from 60 m;
   - timber frame members stay (they are cheap merged boxes and carry the look), bressummers become plain beam boxes;
   - roofs: one slab per slope as in lite, ridge as one box;
   - chimneys: one box (stone material) of the chimney's size with a dark top; dormers: a box plus a 2-slope slab roof;
   - signs, lanterns, shutters, gutters, downpipes, pegs, benches, barrels: dropped;
   - trades atoms (forge_shed, chimney_forge, bread_oven, hall_post...) keep their atom (they are few per town).
   Target: <= 2,500 triangles per house in 'far' (measure per type: house, shop, tavern, smithy, bakery, market_hall;
   report the table). Draw calls: the whole far set adds at most ~6 merged meshes per settlement (walls per material,
   roofs per material, beams, openings, chimney boxes).
2. render.mjs: draws the new panel kinds into merged meshes (same pattern as the lite flat walls / roof slabs).
3. settlement-render.mjs: `detail` accepts 'far' too, and a new mode 'auto-far': plots within near.r (default 60 m when
   near is given) of near {x,z} are 'full', plots within 2*near.r are 'lite', the rest 'far'. Without `near`, keep
   today's defaults. stats gains farBuildings. Do NOT change the planner (settlement.mjs: the root is rewriting it).
4. browse/settlement.html: a 'detail: far' button and ?detail=far; browse/buildings.html ?detail=far.
5. Test: test/lod.test.mjs gains far cases (far <= 2,500 triangles per house type, same bbox as full within 5 cm,
   openings count = windows + doors of the full layout). 'full' and 'lite' outputs must stay byte-identical (pin them).
Evidence: tests pass; GPU screenshots (tools/gpu/settlement_probe.py or a shots probe, FAL_PORT 8993) of the same town
in lite and far from the aerial view side by side, and one far house close up next to its full twin; the triangle
table. Files: omg/kit/building/{styles/medieval.mjs,layout.mjs,render.mjs,settlement-render.mjs,TOWN.md},
browse/settlement.html, browse/buildings.html, omg/kit/building/test/lod.test.mjs. Local server port 8994.
Time box: 60 minutes (stop by the clock time the root gives you).
