diff --git a/app/static/css/layout.css b/app/static/css/layout.css index 83f03f5..6acaf6c 100644 --- a/app/static/css/layout.css +++ b/app/static/css/layout.css @@ -253,11 +253,10 @@ body.drawer-open .drawer-backdrop { opacity: 1; } #portfolio-panel { grid-area: portfolio; } #log-panel { grid-area: log; - /* Don't stretch to fill both grid rows; if the log is shorter than - the portfolio next to it, the surplus below would render as a big - empty white box. Aligning to the start makes the panel shrink to - its content and the dashboard background fills any gap. */ - align-self: start; + /* Stretch (default align-self) so the log panel's border reaches the + bottom of the portfolio next to it — the two right-hand panels + align cleanly. The log body itself sits at the top of the panel; + any height beyond its content is empty padding inside the box. */ } #news-panel { grid-area: news; } diff --git a/app/static/js/portfolio.js b/app/static/js/portfolio.js index b7f820f..0f3ecb4 100644 --- a/app/static/js/portfolio.js +++ b/app/static/js/portfolio.js @@ -387,10 +387,12 @@ }); // Re-hydrate any cached AI analysis so the 60s auto-refresh doesn't - // wipe it. Collapsed by default on hydration so the panel stays - // compact — click the header to expand. + // wipe it. Rendered expanded so the user keeps seeing the body they + // just generated — collapsing it under their cursor every minute + // reads as "the analysis disappeared". They can still click the + // header to collapse manually within a single refresh window. if (pie.analysis && pie.analysis.content) { - showAnalysis(pie.analysis, { open: false }); + showAnalysis(pie.analysis, { open: true }); } }