From 68c24424198775294c1579e26b3451595f184412 Mon Sep 17 00:00:00 2001 From: Till JS Date: Sat, 11 Apr 2026 23:38:30 +0200 Subject: [PATCH] =?UTF-8?q?feat(workbench):=20paper-grain=20polish=20?= =?UTF-8?q?=E2=80=94=20blend-mode,=20border,=20stone=20palette?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Switch PageShell's per-theme paper overlay from a ::before + mix-blend-mode + opacity stack to direct background-blend-mode on the element itself. The old approach had invisibility issues in dark mode and stacking-context quirks that made the grain disappear entirely. background-blend-mode against background-color is the simpler, more reliable primitive. utils.ts auto-switches multiply → overlay in dark mode (dark × dark is essentially invisible) while leaving other blend modes as-is. The opacityLight/opacityDark knobs are gone from the paper config since background-blend-mode has no opacity slot — tune via blendMode choice instead. Visual tuning pass: - Card border bumped from 1px box-shadow ring to a real 2px border with background-clip: border-box so the paper texture reads continuously across the edge. Alpha 0.12 light / 0.28 dark (black). - Drop shadow deepened (0 8px 24px + 0 3px 8px) for more card lift. - Stone theme cooled toward real slate-blue: hue 200 → 212, saturation bumped ~10pts across the palette. Stone was reading as warm-neutral grey, now it's a proper cold blue. - Texture remap: Lume → paper-004 (strongest grain, 480px tile for coarser fiber), Stone → cardboard-002 (linen), Lavender → paper-001 (freed up after Stone claimed cardboard-002). Co-Authored-By: Claude Opus 4.6 (1M context) --- .../components/page-carousel/PageShell.svelte | 63 ++++++------- packages/shared-theme/src/constants.ts | 90 +++++++++---------- packages/shared-theme/src/types.ts | 17 ++-- packages/shared-theme/src/utils.ts | 15 ++-- 4 files changed, 88 insertions(+), 97 deletions(-) diff --git a/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte b/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte index 2792cde93..20255e349 100644 --- a/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte +++ b/apps/mana/apps/web/src/lib/components/page-carousel/PageShell.svelte @@ -235,58 +235,53 @@