@@ -2054,4 +2054,145 @@ html[data-theme="light"] {
20542054html [data-theme = "dark" ] {
20552055 scrollbar-width : thin !important ;
20562056 scrollbar-color : # 334155 transparent !important ;
2057- }
2057+ }
2058+
2059+ /* =====================================================
2060+ SECTION 15: BLOG POST PAGE — CENTER + TOC FIX
2061+
2062+ SAFE: Only targets .blog-wrapper (individual post page)
2063+ Remove any previous SECTION 15 block before adding this.
2064+ ===================================================== */
2065+
2066+ /* Full width container — no artificial max-width cutting space */
2067+ .blog-wrapper .container {
2068+ max-width : 100% !important ;
2069+ width : 100% !important ;
2070+ padding-left : 1rem !important ;
2071+ padding-right : 1rem !important ;
2072+ }
2073+
2074+ /* Row: full width flex, no gaps, sidebars hug the edges */
2075+ .blog-wrapper .container > .row {
2076+ display : flex !important ;
2077+ flex-wrap : nowrap !important ;
2078+ align-items : flex-start !important ;
2079+ width : 100% !important ;
2080+ margin : 0 !important ;
2081+ padding : 0 !important ;
2082+ }
2083+
2084+ /* LEFT sidebar — Recent Posts, fixed width, left edge */
2085+ .blog-wrapper .container > .row > .col .col--3 {
2086+ flex : 0 0 240px !important ;
2087+ width : 240px !important ;
2088+ max-width : 240px !important ;
2089+ padding-left : 0.5rem !important ;
2090+ padding-right : 1.5rem !important ;
2091+ }
2092+
2093+ /* CENTER content — takes all remaining space between sidebars */
2094+ .blog-wrapper .container > .row > .col : not (.col--2 ): not (.col--3 ) {
2095+ flex : 1 1 auto !important ;
2096+ min-width : 0 !important ;
2097+ max-width : 100% !important ;
2098+ /* Center the text content within this column */
2099+ padding-left : 3rem !important ;
2100+ padding-right : 3rem !important ;
2101+ }
2102+
2103+ /* RIGHT sidebar — TOC, wider so text is readable, right edge */
2104+ .blog-wrapper .container > .row > .col .col--2 {
2105+ flex : 0 0 280px !important ;
2106+ /* ← expanded from ~220px to 280px */
2107+ width : 280px !important ;
2108+ max-width : 280px !important ;
2109+ padding-left : 1rem !important ;
2110+ padding-right : 0.5rem !important ;
2111+ }
2112+
2113+ /* TOC links: allow text to wrap properly instead of squishing */
2114+ .blog-wrapper .table-of-contents__link {
2115+ white-space : normal !important ;
2116+ word-break : break-word !important ;
2117+ line-height : 1.4 !important ;
2118+ display : block !important ;
2119+ padding : 2px 0 !important ;
2120+ font-size : 0.85rem !important ;
2121+ }
2122+
2123+ /* TOC heading items — slightly bolder for hierarchy */
2124+ .blog-wrapper .table-of-contents li > .table-of-contents__link {
2125+ font-size : 0.875rem !important ;
2126+ }
2127+
2128+ /* Comfortable reading styles */
2129+ .blog-post-page .markdown {
2130+ max-width : 100% !important ;
2131+ line-height : 1.8 !important ;
2132+ }
2133+
2134+ /* ── Large desktop (≥1400px) ── */
2135+ @media (min-width : 1400px ) {
2136+ .blog-wrapper .container > .row > .col .col--3 {
2137+ flex : 0 0 260px !important ;
2138+ width : 260px !important ;
2139+ max-width : 260px !important ;
2140+ }
2141+
2142+ .blog-wrapper .container > .row > .col .col--2 {
2143+ flex : 0 0 300px !important ;
2144+ width : 300px !important ;
2145+ max-width : 300px !important ;
2146+ }
2147+
2148+ .blog-wrapper .container > .row > .col : not (.col--2 ): not (.col--3 ) {
2149+ padding-left : 4rem !important ;
2150+ padding-right : 4rem !important ;
2151+ }
2152+ }
2153+
2154+ /* ── Tablet (997px–1199px) ── */
2155+ @media (max-width : 1199px ) and (min-width : 997px ) {
2156+ .blog-wrapper .container > .row > .col .col--3 {
2157+ flex : 0 0 200px !important ;
2158+ width : 200px !important ;
2159+ max-width : 200px !important ;
2160+ }
2161+
2162+ .blog-wrapper .container > .row > .col .col--2 {
2163+ flex : 0 0 220px !important ;
2164+ width : 220px !important ;
2165+ max-width : 220px !important ;
2166+ }
2167+
2168+ .blog-wrapper .container > .row > .col : not (.col--2 ): not (.col--3 ) {
2169+ padding-left : 2rem !important ;
2170+ padding-right : 2rem !important ;
2171+ }
2172+ }
2173+
2174+ /* ── Mobile (≤996px): stack columns naturally ── */
2175+ @media (max-width : 996px ) {
2176+ .blog-wrapper .container {
2177+ padding-left : 1rem !important ;
2178+ padding-right : 1rem !important ;
2179+ }
2180+
2181+ .blog-wrapper .container > .row {
2182+ flex-direction : column !important ;
2183+ }
2184+
2185+ .blog-wrapper .container > .row > .col .col--3 ,
2186+ .blog-wrapper .container > .row > .col .col--2 ,
2187+ .blog-wrapper .container > .row > .col : not (.col--2 ): not (.col--3 ) {
2188+ flex : 1 1 auto !important ;
2189+ width : 100% !important ;
2190+ max-width : 100% !important ;
2191+ padding-left : 0 !important ;
2192+ padding-right : 0 !important ;
2193+ }
2194+ }
2195+
2196+ /* =====================================================
2197+ END SECTION 15
2198+ ===================================================== */
0 commit comments