From e2a739c4c6a48deb5f9ca253469a33767ad9edff Mon Sep 17 00:00:00 2001 From: bruno Date: Sat, 11 Jul 2026 00:15:24 -0400 Subject: [PATCH] =?UTF-8?q?feat:=20responsive=20mobile=20UI/UX=20=E2=80=94?= =?UTF-8?q?=20hamburger=20menu,=20touch=20support,=20adaptive=20layout?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - CSS: 3 breakpoints (480px / 768px / 1024px) avec mobile-first design - Hamburger button dans la topbar (visible ≤768px) - Sidebar slide-in avec overlay + bouton close - Kanban scroll-snap columns full-width sur mobile - Tables scrollables horizontalement - Touch targets 44px minimum - Swipe-left to close sidebar - Modal full-width sur ≤480px - Topbar simplifiée sur mobile (cacher breadcrumbs center) - Filter/toolbar wrap + scroll - Donut/team-load redimensionnés - app.js: touch events, htmx sidebar close, modal body scroll lock --- app/templates/base.html | 46 +++++-- static/css/app.css | 279 +++++++++++++++++++++++++++++++++++++--- static/js/app.js | 69 +++++++++- 3 files changed, 363 insertions(+), 31 deletions(-) diff --git a/app/templates/base.html b/app/templates/base.html index a1cd367..94d9012 100644 --- a/app/templates/base.html +++ b/app/templates/base.html @@ -12,6 +12,12 @@
+ + + {# ─── Recursive tree macro ─── #} {% macro render_tree_item(page, depth=0) %} {% set indent_px = depth * 16 %} @@ -49,15 +55,22 @@ {% endmacro %} -