══════════ کادر نوشتن پیام در کروم/فایرفاکس موبایل (بدون نصب اپ) ══════════

مشکل
  در مرورگر موبایل (کروم و موزیلا روی گوشی) کادر پیام دیده نمی‌شد یا زیر لبهٔ صفحه
  پنهان می‌ماند؛ فقط بعد از «نصب اپ» درست کار می‌کرد.

علت‌ها (همه بررسی و رفع شدند)
  1) 100vh در موبایل بلندتر از ناحیهٔ واقعی دیدنی است (نوار آدرس مرورگر).
  2) وقتی کیبورد باز می‌شود، ارتفاع visualViewport کم می‌شود ولی لایه‌بندی
     با vh قدیمی هم‌خوان نمی‌ماند.
  3) در style.css برای .app مقدار min-height:100vh بود و در بعضی شرایط روی
     قوانین chat3 غلبه می‌کرد.
  4) برگهٔ ساخت/ویرایش پروفایل هم با کیبورد زیر صفحه می‌رفت.
  5) فونت textarea کمتر از ۱۶px باعث زوم ناخواستهٔ iOS روی فوکوس می‌شد.

اصلاح اساسی
  • ارتفاع واقعی صفحه با API مرورگر visualViewport اندازه گرفته می‌شود و در
    متغیرهای CSS --app-h و --app-top ریخته می‌شود (هر تغییر نوار آدرس یا کیبورد
    فوراً اعمال می‌شود).
  • body.c3 و .c3 .app با position:fixed و همین ارتفاع واقعی قفل می‌شوند تا
    کادر پیام همیشه داخل ناحیهٔ دیدنی بماند (روی دسکتاپ رفتار قبلی حفظ شده).
  • پروفایل (psheet/pbox) هم از --app-h پیروی می‌کند.
  • با فوکوس روی کادر پیام، داک بالا جمع می‌شود و کادر به پایین ناحیهٔ دیدنی
    اسکرول می‌شود.
  • اندازهٔ فونت textarea و فیلدهای پروفایل ۱۶px شد.

فایل‌های تغییرکرده
  chat.html , chat3.css , style.css , avatars.css , chat-dock.js , sw.js (کش v23)

نصب
  همهٔ فایل‌های پروژه را جایگزین کنید (پوشهٔ data/ را دست نزنید).
  یک‌بار صفحه را در مرورگر موبایل با «تازه‌سازی سخت» باز کنید
  (یا کش مرورگر/سرویس‌ورکر را خالی کنید تا v23 بیاید).
  نیازی به نصب اپ نیست؛ در همان تب کروم یا فایرفاکس کادر پیام باید دیده شود.
