fix(layout): la sidebar réduite écrasait la barre mobile
`isCollapsed` (rail icône seule sur desktop) persiste dans localStorage indépendamment de la largeur de fenêtre — un utilisateur ayant réduit la sidebar sur desktop puis ouvrant la même session sur mobile (ou réduisant la fenêtre sous 640px) gardait `.app-sidebar.collapsed` (spécificité 0,2,0 : width 4.25rem, flex-direction column), qui l'emportait sur la règle mobile `@media (max-width: 640px)` (spécificité 0,1,0) censée passer la sidebar en barre horizontale pleine largeur. Le bloc `&.collapsed` est maintenant scopé sous `@media (min-width: 641px)` — le complément exact du breakpoint mobile — donc il ne s'applique plus du tout en dessous. Vérifié dans le navigateur : sidebar collapsed=true dans localStorage, viewport 375px — la sidebar calcule bien width: 375px / flex-direction: row (barre horizontale pleine largeur) au lieu de 4.25rem/column. Closes #27 Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
parent
9083770d57
commit
8475dd3d2d
1 changed files with 55 additions and 43 deletions
|
|
@ -264,6 +264,17 @@
|
|||
// A single class toggle on the root element — every nested rule below
|
||||
// just hides labels/chevrons and re-centers icons via CSS, no child
|
||||
// component needs to know the sidebar is collapsed.
|
||||
//
|
||||
// Scoped to `min-width: 641px` (the exact complement of the mobile
|
||||
// `@media (max-width: 640px)` block below): `isCollapsed` persists in
|
||||
// `localStorage` (`batchcooking:sidebarCollapsed`) independently of
|
||||
// viewport width, so a user who collapsed the desktop rail and then
|
||||
// shrinks the window (or opens the same session on a phone) still carries
|
||||
// that flag. Without this guard, `.app-sidebar.collapsed`'s `width:
|
||||
// 4.25rem`/`flex-direction: column` (specificity 0,2,0) beat the mobile
|
||||
// block's `.app-sidebar` rules (specificity 0,1,0) and crushed the
|
||||
// full-width horizontal bar into a tiny broken rail — see issue #27.
|
||||
@media (min-width: 641px) {
|
||||
&.collapsed {
|
||||
width: 4.25rem;
|
||||
padding-left: var(--space-sm);
|
||||
|
|
@ -319,6 +330,7 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.app-content {
|
||||
flex: 1;
|
||||
|
|
|
|||
Loading…
Reference in a new issue