From 0185c458b735d1262a32cbc4354898cc85699501 Mon Sep 17 00:00:00 2001 From: you Date: Sat, 14 Feb 2026 01:43:05 +0000 Subject: [PATCH 01/51] =?UTF-8?q?fix:=20mobile=20responsiveness=20?= =?UTF-8?q?=E2=80=94=20grid=20columns=20visible,=20touch=20targets=20?= =?UTF-8?q?=E2=89=A544px?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes #34 — Grid columns E-H off-screen on mobile: - Hide non-essential columns G (Rev/yr) and H (empty) on screens ≤600px - Reduce grid to 7 columns with flexible widths - Enable horizontal scroll as fallback (overflow-x: auto) - Hide decorative toolbar to save vertical space - Compact title bar, formula bar, status bar - Make modals, toasts, and arc selection fit mobile viewports Fixes #35 — Touch targets too small: - All game buttons (Hire, Upgrade, Auto, Collect, Max) min-height 44px - Menu items and dropdown items min-height 44px - Toast close button and toast action buttons min-height 44px - Mini-task buttons min-height 44px - Modal buttons min-height 44px - Help close button min-height 44px - Title bar buttons min-width 44px All changes use @media (max-width: 600px) — desktop layout unchanged. --- index.html | 2 +- style.css | 329 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 330 insertions(+), 1 deletion(-) diff --git a/index.html b/index.html index 5eaea8d..f9b1614 100644 --- a/index.html +++ b/index.html @@ -20,7 +20,7 @@ Q4 Financials - Operations.xlsx - Quarter Close - + diff --git a/style.css b/style.css index 336af42..40c7bc8 100644 --- a/style.css +++ b/style.css @@ -1651,3 +1651,332 @@ body { font-size: 10px; font-style: italic; } + +/* ============================================ + MOBILE RESPONSIVE — Issue #34 & #35 + ============================================ */ +@media (max-width: 600px) { + /* --- #34: Grid columns E-H off-screen --- */ + + /* Hide non-essential columns G (Rev/yr) and H (empty) */ + .cell-g, .cell-h, .col-g, .col-h { + display: none !important; + } + + /* Filler rows: hide 8th and 9th child (G and H columns) */ + .filler-row > :nth-child(8), + .filler-row > :nth-child(9) { + display: none !important; + } + + /* Reduce grid to 7 columns */ + #grid-container { + grid-template-columns: 28px minmax(60px, 1.2fr) 32px 50px minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr); + overflow-x: auto; + } + + /* Hide toolbar to save vertical space (it's decorative) */ + #toolbar { + display: none; + } + + /* Hide decorative menu items (keep only File and Help) */ + .menu-item:not(#file-menu):not([onclick="showHelp()"]) { + display: none; + } + + /* Compact title bar */ + #title-bar { + height: 26px; + padding: 0 4px; + } + + #title-text { + font-size: 11px; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; + max-width: 200px; + } + + /* Compact menu bar */ + #menu-bar { + height: 36px; + } + + /* Compact formula bar */ + #formula-bar { + height: 22px; + font-size: 10px; + } + + #cell-ref { + width: 40px; + font-size: 10px; + } + + /* Smaller row numbers */ + .row-num { + font-size: 9px; + } + + /* Allow button text to wrap on narrow screens */ + .cell-btn { + white-space: normal; + text-align: center; + line-height: 1.2; + font-size: 10px; + } + + /* Compact cell padding */ + .cell { + padding: 2px 3px; + font-size: 11px; + } + + /* Ensure source names don't overflow */ + .cell-a { + overflow: hidden; + text-overflow: ellipsis; + } + + /* Revenue breakdown: stack or scroll */ + #revenue-breakdown { + font-size: 9px; + padding: 2px 6px; + gap: 4px; + overflow-x: auto; + flex-wrap: nowrap; + } + + /* Sheet tabs: scrollable */ + #sheet-tabs { + overflow-x: auto; + padding: 0 4px; + } + + .sheet-tab { + font-size: 10px; + padding: 3px 10px; + } + + /* Status bar compact */ + #status-bar { + height: 22px; + font-size: 10px; + padding: 0 6px; + } + + /* Toast: fit mobile width */ + #event-toast { + width: 90vw; + max-width: 360px; + } + + /* Modals: fit mobile width */ + #help-content { + max-width: 95vw; + max-height: 85vh; + } + + #about-content { + max-width: 90vw; + padding: 20px; + } + + #offline-content { + max-width: 90vw; + padding: 20px; + } + + #series-a-content { + max-width: 95vw; + } + + #confirm-content { + max-width: 90vw; + padding: 20px; + } + + /* Arc selection: single column on mobile */ + #arc-options { + grid-template-columns: 1fr; + gap: 8px; + } + + #arc-container { + padding: 20px; + width: 95%; + } + + #arc-title { + font-size: 20px; + } + + /* Valuation chart: fit mobile */ + #valuation-chart-container { + max-width: 90vw !important; + left: 5vw !important; + } + + /* Mini-task bar: compact */ + #mini-task-bar { + padding: 4px 8px 4px 12px; + font-size: 11px; + max-width: 100%; + flex-wrap: wrap; + gap: 6px; + } + + /* --- #35: Touch targets too small --- */ + + /* All game buttons: minimum 44px touch target */ + .cell-btn { + min-height: 44px; + min-width: 44px; + padding: 8px 10px; + font-size: 12px; + } + + /* Max(N) links: 44px touch target */ + .cell-btn.btn-max { + min-height: 44px; + min-width: 36px; + padding: 8px 6px; + font-size: 11px; + display: inline-flex; + align-items: center; + justify-content: center; + } + + /* Grid rows: taller to accommodate buttons */ + .grid-row > * { + min-height: 48px; + } + + /* Header row can stay compact */ + .header-row > * { + min-height: 28px; + } + + /* Separator row stays compact */ + .sep-cell { + min-height: 4px !important; + height: 4px !important; + } + + #row-sep > * { + min-height: 4px !important; + } + + /* Filler rows stay compact */ + .filler-row > * { + min-height: 24px; + } + + /* Menu items: 44px touch targets */ + .menu-item { + min-height: 44px; + display: inline-flex; + align-items: center; + padding: 8px 16px; + font-size: 13px; + } + + /* Dropdown menu items: 44px touch targets */ + .menu-dropdown-item { + min-height: 44px; + padding: 10px 16px; + font-size: 13px; + } + + /* Toast close button: 44px touch target */ + #toast-close { + min-width: 44px; + min-height: 44px; + display: flex; + align-items: center; + justify-content: center; + font-size: 18px; + } + + /* Toast action buttons: 44px */ + .toast-btn { + min-height: 44px; + padding: 10px 16px; + font-size: 13px; + } + + /* Mini-task buttons: 44px */ + .mini-task-btn { + min-height: 44px; + padding: 8px 14px; + font-size: 13px; + } + + .mini-task-skip { + min-height: 44px; + min-width: 44px; + padding: 8px 10px; + font-size: 13px; + display: flex; + align-items: center; + justify-content: center; + } + + /* Modal buttons: 44px */ + #offline-ok, + #series-a-ok, + #about-content button, + #confirm-buttons button { + min-height: 44px; + padding: 10px 20px; + font-size: 14px; + } + + /* Help close button */ + .help-close { + min-width: 44px; + min-height: 44px; + display: flex; + align-items: center; + justify-content: center; + font-size: 20px; + } + + /* Tab buttons */ + .sheet-tab { + min-height: 36px; + display: flex; + align-items: center; + } + + /* Column headers stay compact */ + #col-headers > * { + min-height: 22px; + } + + /* Title bar buttons */ + .title-btn { + min-width: 44px; + min-height: 30px; + } + + /* Arc option cards: larger touch targets */ + .arc-option { + padding: 20px 16px; + min-height: 80px; + } + + /* Boss view: hide on mobile (Esc key doesn't work on touch) */ + /* No change needed - boss view is hidden by default */ + + /* Toast countdown wrapper */ + .toast-countdown-wrapper { + height: 44px; + } + + .toast-countdown-label { + font-size: 13px; + } +} From 33f7ae977a6ad9d2aae9bff473f6149ff0eaa9eb Mon Sep 17 00:00:00 2001 From: you Date: Sat, 14 Feb 2026 01:45:35 +0000 Subject: [PATCH 02/51] fix: hide valuation chart on mobile (covers grid, unusable with touch) --- style.css | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/style.css b/style.css index 40c7bc8..88b889e 100644 --- a/style.css +++ b/style.css @@ -1813,10 +1813,9 @@ body { font-size: 20px; } - /* Valuation chart: fit mobile */ + /* Valuation chart: hide on mobile (covers grid, hard to drag on touch) */ #valuation-chart-container { - max-width: 90vw !important; - left: 5vw !important; + display: none !important; } /* Mini-task bar: compact */ From 45b1b5d5be80f52be593d6cb3e2af027a3a6ab3d Mon Sep 17 00:00:00 2001 From: you Date: Sat, 14 Feb 2026 01:48:14 +0000 Subject: [PATCH 03/51] bump CSS cache buster to v14 --- index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.html b/index.html index f9b1614..14bccd7 100644 --- a/index.html +++ b/index.html @@ -20,7 +20,7 @@ Q4 Financials - Operations.xlsx - Quarter Close - + From aa8963d311b4070be0af39943c371d4466943b8a Mon Sep 17 00:00:00 2001 From: you Date: Sat, 14 Feb 2026 01:55:56 +0000 Subject: [PATCH 04/51] =?UTF-8?q?fix:=20mobile=20P1=20=E2=80=94=20revenue?= =?UTF-8?q?=20bar=20and=20text=20sizes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Hide $/hr and $/day stats on mobile, show only $/sec and $/min (#39) - Hide debug buttons on mobile revenue bar - Scale up text across the board for mobile readability (#40): grid cells 11px→14px, buttons 10px→13px, status bar 10px→12px, sheet tabs 10px→12px, formula bar/col headers bumped to 12px, toasts/modals to 14px Fixes #39, closes #40 --- index.html | 2 +- style.css | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 101 insertions(+), 6 deletions(-) diff --git a/index.html b/index.html index 14bccd7..9be91e0 100644 --- a/index.html +++ b/index.html @@ -20,7 +20,7 @@ Q4 Financials - Operations.xlsx - Quarter Close - + diff --git a/style.css b/style.css index 88b889e..a572643 100644 --- a/style.css +++ b/style.css @@ -1740,13 +1740,30 @@ body { text-overflow: ellipsis; } - /* Revenue breakdown: stack or scroll */ + /* Revenue breakdown: show only $/sec and $/min on mobile (#39) */ #revenue-breakdown { - font-size: 9px; - padding: 2px 6px; - gap: 4px; - overflow-x: auto; + font-size: 12px; + padding: 4px 8px; + gap: 6px; flex-wrap: nowrap; + overflow: hidden; + } + + /* Hide $/hr and $/day stats and their preceding separators on mobile */ + #stat-hr, + #stat-day { + display: none; + } + + /* Hide the 2nd and 3rd separators (after $/min and $/hr) */ + #revenue-breakdown .rb-sep:nth-of-type(2), + #revenue-breakdown .rb-sep:nth-of-type(3) { + display: none; + } + + /* Hide debug buttons on mobile */ + #revenue-breakdown > span:last-child { + display: none; } /* Sheet tabs: scrollable */ @@ -1978,4 +1995,82 @@ body { .toast-countdown-label { font-size: 13px; } + + /* --- #40: Scale up text sizes for mobile readability --- */ + + /* Grid cells: bump from 11px to 14px */ + .cell { + font-size: 14px; + } + + /* Revenue numbers in grid */ + .cell-e, .cell-f { + font-size: 13px; + } + + /* Button labels: readable on mobile */ + .cell-btn { + font-size: 13px; + } + + .cell-btn.btn-max { + font-size: 12px; + } + + /* Revenue breakdown bar */ + .rb-label { + font-size: 12px; + } + + .rb-val { + font-size: 12px; + } + + /* Status bar */ + #status-bar { + font-size: 12px; + } + + /* Sheet tabs */ + .sheet-tab { + font-size: 12px; + } + + /* Formula bar */ + #formula-bar { + font-size: 12px; + } + + #cell-ref { + font-size: 11px; + } + + /* Row numbers */ + .row-num { + font-size: 10px; + } + + /* Column headers */ + .col-header { + font-size: 12px; + } + + /* Toast messages */ + #event-toast { + font-size: 14px; + } + + /* Mini-task bar */ + #mini-task-bar { + font-size: 13px; + } + + /* Modal text */ + #help-content { + font-size: 14px; + } + + #about-content { + font-size: 14px; + } } From 83d7ccd6a63153be98d5c91813211fd4ce96c5ff Mon Sep 17 00:00:00 2001 From: you Date: Sat, 14 Feb 2026 02:12:01 +0000 Subject: [PATCH 05/51] Fix P2 mobile issues #41 #42 #43 #44 #45 #46 #50 #51 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit #41 — Toast notifications: max-width 90vw, text wraps, buttons stack #42 — Mobile boss key: minimize button in title bar triggers boss mode #43 — Touch support: touch-action:manipulation CSS, viewport meta updated #44 — Formula bar: hidden on mobile to save vertical space #45 — Mini-task bar: full-width, text wraps, touch-sized buttons #46 — Golden cells: exclude hidden columns G/H on mobile (JS fix) #50 — Status bar: hide dense info, keep only date + time on mobile #51 — Modal dialogs: max-width 95vw with proper scroll support --- game.js | 6 ++- index.html | 10 ++--- style.css | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 128 insertions(+), 6 deletions(-) diff --git a/game.js b/game.js index 5391425..af43b7b 100644 --- a/game.js +++ b/game.js @@ -905,7 +905,11 @@ function trySpawnGoldenCell() { const rowIndex = pick.i; // Pick a random visible cell in that row (columns b through h) - const cols = ['cell-b', 'cell-c', 'cell-d', 'cell-e', 'cell-f', 'cell-g', 'cell-h']; + // On mobile (narrow screens), columns G and H are hidden — exclude them (#46) + let cols = ['cell-b', 'cell-c', 'cell-d', 'cell-e', 'cell-f', 'cell-g', 'cell-h']; + if (window.innerWidth <= 600) { + cols = ['cell-b', 'cell-c', 'cell-d', 'cell-e', 'cell-f']; + } const colClass = cols[Math.floor(Math.random() * cols.length)]; // Find the grid row for this source diff --git a/index.html b/index.html index 9be91e0..c2ec8b6 100644 --- a/index.html +++ b/index.html @@ -2,7 +2,7 @@ - + @@ -20,7 +20,7 @@ Q4 Financials - Operations.xlsx - Quarter Close - + @@ -46,7 +46,7 @@ Q4 Financials - Operations.xlsx
- +
@@ -251,7 +251,7 @@ Book1 - Excel
- +
@@ -427,7 +427,7 @@

🏢 Board Room (Post-IPO)

- + + + + + + + + + + + + + + + + + + + + + + + + + +