diff --git a/mobile.html b/mobile.html index eecfebd..6bf1bca 100644 --- a/mobile.html +++ b/mobile.html @@ -60,9 +60,10 @@ @media (display-mode:standalone){ #app{ --pad:26px; padding-top:max(20px,env(safe-area-inset-top)); padding-bottom:max(16px,env(safe-area-inset-bottom)); } } /* ---- top ---- */ + /* the logo + header-icon row is always a full-width bar at the very top, in + both orientations — it never joins the side-by-side landscape header flow */ #top{ flex:0 0 auto; display:flex; flex-direction:column; gap:11px; } - #topctl{ display:flex; flex-direction:column; gap:11px; } - #brandrow{ display:flex; align-items:center; gap:10px; } + #brandrow{ flex:0 0 auto; display:flex; align-items:center; gap:10px; width:100%; } #logoLink{ display:inline-flex; opacity:.9; } .brandlogo{ height:clamp(21px,4.2vmin,30px); width:auto; display:block; } .hicons{ display:flex; align-items:center; gap:8px; margin-left:auto; } @@ -200,7 +201,8 @@ @media (orientation:landscape){ #app{ --maxw:1060px; } #top{ flex-direction:row; flex-wrap:wrap; align-items:flex-end; gap:8px 14px; } - #topctl{ flex:1 1 320px; gap:8px; } + #brandrow{ flex:1 1 100%; } + #top .vol{ flex:1 1 220px; width:auto; min-width:0; } #top .sels{ flex:2 1 320px; min-width:0; } #mid{ display:grid; align-items:stretch; gap:8px 4vw; padding-top:0; grid-template-columns:40% 60%; grid-template-rows:auto 1fr auto; @@ -264,18 +266,16 @@
-
-
- -
-
-
?
-
-
-
+
+ +
+
+
?
+
+
-
+
@@ -843,7 +843,7 @@ function loadFromHash(text){ /* ========================= HELP TOUR ========================================= */ const TOUR=[ - {sel:"#topctl", title:"Controls", text:"The ↑ share menu, ? to replay this tour, ◐ light/dark theme, ⛶ full screen, and the full-width volume slider (soft p → loud f)."}, + {sel:"#brandrow,#volrow", title:"Controls", text:"The ↑ share menu, ? to replay this tour, ◐ light/dark theme, ⛶ full screen, and the full-width volume slider (soft p → loud f)."}, {sel:".sels", title:"Pick what to play", text:"Choose a set list and the track within it. Tracks are your practice items — name them for whatever you're working on, even if two share the same beat."}, {sel:"#saveBtn", title:"Save & library", text:"Save the current track — “Save as new”, or “Update” one of yours. The same sheet is your library: make set lists and rename / reorder / delete tracks. It all lives with the full editor too."}, {sel:"#trackpanel", title:"Track settings", text:"Optional per-track extras (above the tempo): Repeat for N bars then stop / next / prev track, a tempo ramp, and practice gaps."},