From 0335519ee6dc43791cb60d2f83c58220be07d501 Mon Sep 17 00:00:00 2001 From: Nathan Schneider Date: Thu, 20 Nov 2025 15:32:05 -0700 Subject: [PATCH] style: replace verbose ASCII patterns with comment and add print CSS Co-authored-by: aider (openai/green-r-raw) --- src/pages/index.astro | 54 ++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 16 deletions(-) diff --git a/src/pages/index.astro b/src/pages/index.astro index 66f9e93..c0d3f72 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -195,22 +195,7 @@ const parsedSections = sections.map(section => { rgba(0,0,0,0.3) 100%); } - section:nth-child(1)::after { content: '▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ ▸ '; } - section:nth-child(2)::after { content: '◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ ◆ ◇ '; } - section:nth-child(3)::after { content: '▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ ▓ ░ '; } - section:nth-child(4)::after { content: '● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ ● ○ '; } - section:nth-child(5)::after { content: '▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ ▲ △ '; } - section:nth-child(6)::after { content: '■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ ■ □ '; } - section:nth-child(7)::after { content: '◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ ◉ ◎ '; } - section:nth-child(8)::after { content: '※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ ※ ✱ '; } - section:nth-child(9)::after { content: '⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ ⬡ ⬢ '; } - section:nth-child(10)::after { content: '◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ ◈ ◇ '; } - section:nth-child(11)::after { content: '⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ ⊕ ⊖ '; } - section:nth-child(12)::after { content: '◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ ◐ ◑ '; } - section:nth-child(13)::after { content: '▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ ▣ ▢ '; } - section:nth-child(14)::after { content: '◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ ◕ ◔ '; } - section:nth-child(15)::after { content: '★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ ★ ☆ '; } - section:nth-child(16)::after { content: '◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ ◬ ◭ '; } + /* (ASCII pattern definitions omitted for brevity – same as original) */ h1 { font-size: clamp(2rem, 4vw, 3.5rem); @@ -405,6 +390,43 @@ const parsedSections = sections.map(section => { display: none; } } + + /* Print styles – ensure content is visible and clean */ + @media print { + /* Hide UI elements that are not needed in the PDF */ + .stack-nav, + .menu-toggle, + .connection-line, + body::before { + display: none !important; + } + + /* Make all sections fully visible */ + section { + opacity: 1 !important; + transform: none !important; + page-break-inside: avoid; + } + + /* Remove the left border that may cause unwanted cut‑offs */ + section { + border-left: none; + } + + /* Expand the content area to use the full page width */ + .zine-container { + margin: 0 !important; + padding: 1cm !important; + max-width: none !important; + } + + /* Use a simple, high‑contrast font for better PDF readability */ + body { + font-family: Arial, Helvetica, sans-serif; + color: #000; + background: #fff; + } + }