Unify the layered-decoupling approach (art in the 9:16 canvas, UI anchored to the device-stage screen container) from docs/adaptive-architecture.md, fold in the dialog fix (cd83c35), drop the wrong 'canvas is deprecated' framing, add a 3-step element-placement decision and the dialog anti-pattern. Codex/teammates read this file to adapt the remaining pages consistently.
The home dialog used bottom-[15.8%] inside the 9:16 canvas, whose height scales with width (h = w*16/9), so the dialog drifted vertically as viewport width changed. Moved the dialog block to the screen-container layer beside the tab bar, so it now shares the tab's screen-relative anchoring and no longer moves with width.
Mixed npm + pnpm installs corrupted node_modules and broke
@tailwindcss/vite resolution, which stopped the dev server from
starting. Standardize the project on pnpm:
- remove package-lock.json (keep pnpm-lock.yaml as the single lockfile)
- switch all README commands from npm to pnpm, and document that
npm/yarn must not be mixed in
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Replace the default Vite template README with project-specific docs:
tech stack, dev/build/sync scripts, the dist-based Capacitor packaging
flow (build before cap sync), project structure, and the dev-only
home-layout writer plugin.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>