Skip to content

Commit 7f04bf8

Browse files
committed
feat(saman-skills): tonal card families, headline bar, and a name scrub
Studied a set of competitor sheets in her actual niche (dense pastel reference graphics, not the tool-chrome and GTM-diagram work benchmarked earlier) and brought across the craft that makes them read as designed rather than assembled. TONAL FAMILIES replace the flat pastel fills. Five hues, three values each: fill, a border one step deeper in the same hue, and a title tone. A card takes all three from one family. The 2px tonal border is the single move that separates a considered pastel sheet from a generic one — a pastel card with a grey hairline reads cheap. Every title tone clears 4.5:1 on its own fill, so a coloured card title is hierarchy rather than decoration. Also adds the headline bar (H5) as an alternative to the inline pill for when the whole second line is the claim, and the dense tile (C6) for save-and-zoom reference sheets. Pill or bar, never both. Her spine stays the signature. The competitor set has no structural line at all, which is exactly why hers is worth keeping — the craft is borrowed, the shape is not. NAME SCRUB: no other creator is named anywhere in the shipped files. The two laws that referenced one by name now describe the thing being avoided instead, which is what they were always about. Verified by scanning every text file inside the built zips. Both templates repainted and re-verified end to end from a clean-room extract: 10/10 grey gate, autofix clean, 2160x2700 static, GIF and MP4. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0187zcyEaMFy8EeQnT1MPYpY
1 parent 33bd26a commit 7f04bf8

14 files changed

Lines changed: 134 additions & 55 deletions

File tree

1.36 KB
Binary file not shown.
57 Bytes
Binary file not shown.
293 Bytes
Binary file not shown.

‎saman-skills/saman-brand.zip‎

1.36 KB
Binary file not shown.

‎saman-skills/saman-brand/SKILL.md‎

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -37,24 +37,35 @@ sheet instead of a busy one.
3737
| **Bright** | `#F2506A` | node rings, the closing figure. The only thing that grabs. |
3838
| **Bright-deep** | `#B0243C` | chip text and small emphasis, where `Bright` would be too light to read. |
3939

40-
**SOFT FILLS — the pastel family. Card backgrounds only.**
40+
**SOFT FAMILIES — five hues, three values each. Cards only.**
4141

42-
| Token | Hex | |
43-
|---|---|---|
44-
| `--p1` | `#FFE4DE` | peach |
45-
| `--p2` | `#FFF2D6` | cream |
46-
| `--p3` | `#FFE9F3` | rose |
47-
| `--p4` | `#F4EBFF` | orchid |
48-
| `--p5` | `#E3F2FD` | pale sky — Material Blue 50, her own blue's family |
42+
| Family | fill | edge (border) | name (title) |
43+
|---|---|---|---|
44+
| peach | `#FFE4DE` | `#F6C0B4` | `#B23F1E` |
45+
| cream | `#FFF2D6` | `#F0D592` | `#8A5A00` |
46+
| rose | `#FFE9F3` | `#F4BFD8` | `#A81E68` |
47+
| orchid | `#F4EBFF` | `#D7C2F4` | `#5A2C9E` |
48+
| sky | `#E3F2FD` | `#B4D8F4` | `#0D47A1` |
49+
50+
Cards rotate through the families down a sheet. **A card is always all three values from ONE
51+
family** — fill, its own border, its own title colour. Mixing families inside a card is what
52+
makes a pastel sheet look assembled rather than designed.
53+
54+
**The tonal border is the craft move.** A pastel card with a grey hairline reads cheap. The
55+
same card bordered 2px in a deeper tone of its own hue reads considered. It is one CSS value
56+
and it is most of the difference between a good pastel sheet and a generic one.
57+
58+
Every title tone clears 4.5:1 on its own fill, so a coloured card title is genuinely readable
59+
— it is hierarchy, not decoration.
4960

50-
Cards rotate through the fills down a sheet. They are pale on purpose: at this value they
51-
read as **one family**, so the sheet counts as five colours, not ten. Saturate one and the
52-
count breaks.
61+
The fills stay pale on purpose: at this value the five read as **one family**, so a sheet
62+
counts as five colours, not fifteen. Saturate one fill and the count breaks.
5363

54-
**The three rules that hold it together:**
64+
**The four rules that hold it together:**
5565
1. Bright never fills a card.
56-
2. A pastel never carries text and never touches the spine.
66+
2. A fill never carries body text and never touches the spine.
5767
3. Blue never leaves the spine.
68+
4. One family per card. Fill, edge and name always match.
5869

5970
*(Her blue `#90CAF8` is Material Blue 200 — one digit from `#90CAF9`. That is why the Blue-50
6071
pale sky belongs in the fill set: it is literally her own colour's family.)*
@@ -305,8 +316,9 @@ These exist because each one is a specific way a sheet stops being hers.
305316

306317
**Not somebody else's system**
307318
11. **No Object Frame.** The sheet is never drawn as a physical object — not a phone, a
308-
folder, a receipt, a terminal window, a notebook. That is Ayan's signature and it is the
309-
single fastest way to make her look derivative. Her sheet is a *line*, not a *thing*.
319+
folder, a receipt, a terminal window, a notebook. That device already belongs to a large
320+
account in an adjacent niche, and borrowing it is the fastest way to look derivative.
321+
Her sheet is a *line*, not a *thing*.
310322
12. No terracotta, no orange, no deep navy ground pretending to be Ink. Her Ink is `#051D2F`
311323
and it is used sparingly on light, not as a dark canvas by default.
312324
13. No brand-coloured Pill Word in Blue — hers is Ink, and that inversion is the point.

‎saman-skills/saman-brand/references/brand-kit.md‎

Lines changed: 49 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,15 @@ needs a colour that is not here, the sheet is wrong.
3131
--bright: #F2506A; /* node rings, the closing figure */
3232
--bright-deep: #B0243C; /* chip text, small emphasis (4.5:1 on --p1) */
3333

34-
/* ---- SOFT FILLS: the pastel family. Card backgrounds only ---- */
35-
--p1: #FFE4DE; /* peach */
36-
--p2: #FFF2D6; /* cream */
37-
--p3: #FFE9F3; /* rose */
38-
--p4: #F4EBFF; /* orchid */
39-
--p5: #E3F2FD; /* pale sky (Material Blue 50 — her blue's own family) */
34+
/* ---- SOFT FAMILIES: five hues, three values each ----
35+
fill = the card · edge = its border, same hue deeper · name = its title.
36+
A card is always all three from ONE family. Mixing families inside a card
37+
is what makes a pastel sheet look assembled rather than designed. */
38+
--p1: #FFE4DE; --e1: #F6C0B4; --n1: #B23F1E; /* peach */
39+
--p2: #FFF2D6; --e2: #F0D592; --n2: #8A5A00; /* cream */
40+
--p3: #FFE9F3; --e3: #F4BFD8; --n3: #A81E68; /* rose */
41+
--p4: #F4EBFF; --e4: #D7C2F4; --n4: #5A2C9E; /* orchid */
42+
--p5: #E3F2FD; --e5: #B4D8F4; --n5: #0D47A1; /* sky — Material Blue 50/900 */
4043

4144
/* ---- the only shadow ---- */
4245
--shadow: 0 2px 10px rgba(5,29,47,.07);
@@ -102,10 +105,20 @@ LOCKED Sky #EBF6FF Blue #90CAF8 Ink #051D2F
102105
BRIGHT #F2506A #B0243C
103106
points rings, figure chip text
104107
105-
SOFT FILLS #FFE4DE #FFF2D6 #FFE9F3 #F4EBFF #E3F2FD
106-
card backgrounds only, never text, never the spine
108+
SOFT FAMILIES peach cream rose orchid sky
109+
fill #FFE4DE #FFF2D6 #FFE9F3 #F4EBFF #E3F2FD card background
110+
edge #F6C0B4 #F0D592 #F4BFD8 #D7C2F4 #B4D8F4 its border
111+
name #B23F1E #8A5A00 #A81E68 #5A2C9E #0D47A1 its card title
107112
```
108113

114+
**The tonal border is what makes it look designed.** A pastel card with a neutral grey
115+
hairline reads cheap; the same card bordered in a deeper tone of its own hue reads considered.
116+
It costs one CSS value and it is the single biggest difference between a good pastel sheet and
117+
a generic one.
118+
119+
Every title tone clears 4.5:1 on its own fill, so a coloured card title is fully readable —
120+
it is not decoration.
121+
109122
**Counting colours.** The craft benchmark for this kind of sheet is 5–7 colours. Hers reads as
110123
five: ground, type, spine, bright, and the pastel family — because the five fills sit at the
111124
same value and register as one family, not five decisions. That only holds while they stay
@@ -123,6 +136,20 @@ leaves the spine. That separation is what keeps ten named colours reading as fiv
123136

124137
Exactly one per sheet, in the headline only.
125138

139+
## The headline bar — an alternative to the inline pill
140+
141+
A full-width Ink bar carrying the second line of the headline in `--sky` caps. Heavier than
142+
the inline pill and it holds a longer phrase.
143+
144+
```css
145+
.h1bar{display:inline-block; background:var(--ink); color:var(--sky);
146+
border-radius:var(--r-card); padding:.06em .28em; letter-spacing:-.02em}
147+
```
148+
149+
**Pill or bar, never both.** They are two answers to the same question, and a sheet that uses
150+
both has decided nothing. The bar suits a two-line headline where the whole second line is the
151+
claim; the pill suits one word inside a flowing line.
152+
126153
## The spine
127154

128155
One SVG path in a layer behind the cards.
@@ -157,13 +184,21 @@ stay neutral (dense tables, a matrix) and the pastels when the sheet wants warmt
157184

158185
```css
159186
.card{background:var(--p1); border-radius:var(--r-card);
160-
border:var(--w-hair) solid rgba(5,29,47,.07);
187+
border:2px solid var(--e1); /* 2px, tonal — not a grey hairline */
161188
box-shadow:var(--shadow); padding:var(--s5)}
162-
.rail > .card:nth-of-type(1){background:var(--p1)}
163-
.rail > .card:nth-of-type(2){background:var(--p2)}
164-
.rail > .card:nth-of-type(3){background:var(--p3)}
165-
.rail > .card:nth-of-type(4){background:var(--p4)}
166-
.rail > .card:nth-of-type(5){background:var(--p5)}
189+
.card .ctitle{color:var(--n1)}
190+
191+
/* one family per card, all three values together */
192+
.rail > .card:nth-of-type(1){background:var(--p1);border-color:var(--e1)}
193+
.rail > .card:nth-of-type(1) .ctitle{color:var(--n1)}
194+
.rail > .card:nth-of-type(2){background:var(--p2);border-color:var(--e2)}
195+
.rail > .card:nth-of-type(2) .ctitle{color:var(--n2)}
196+
.rail > .card:nth-of-type(3){background:var(--p3);border-color:var(--e3)}
197+
.rail > .card:nth-of-type(3) .ctitle{color:var(--n3)}
198+
.rail > .card:nth-of-type(4){background:var(--p4);border-color:var(--e4)}
199+
.rail > .card:nth-of-type(4) .ctitle{color:var(--n4)}
200+
.rail > .card:nth-of-type(5){background:var(--p5);border-color:var(--e5)}
201+
.rail > .card:nth-of-type(5) .ctitle{color:var(--n5)}
167202

168203
/* BRIGHT does the pointing, and only these three things */
169204
.node{border-color:var(--bright)}

‎saman-skills/saman-brand/references/style-kit.md‎

Lines changed: 19 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Pick one variant per component per sheet. Do not mix two card styles on one shee
1010

1111
---
1212

13-
## Headers — 4 variants
13+
## Headers — 5 variants
1414

1515
**H1 · Stacked** *(default)*
1616
Headline, then deck under it. Full width. Nothing else.
@@ -28,13 +28,19 @@ Headline, deck, then a label row that names the two sides.
2828
A `.seclab` eyebrow above the headline ("THE FRIDAY PROBLEM"), then headline, then deck.
2929
→ Use when the topic needs one line of framing before the claim lands.
3030

31+
**H5 · Headline bar**
32+
Line one plain Ink, line two inside a full-width Ink bar in `--sky` caps.
33+
→ Use when the whole second line is the claim, not one word of it. Heavier and more
34+
declarative than the inline pill. **Pill or bar, never both on one sheet.**
35+
3136
---
3237

33-
## Cards — 5 variants
38+
## Cards — 6 variants
3439

35-
**C1 · Warm fill** *(default)*
36-
Pastel background rotating through `--p1`…`--p5`, hairline at 7% Ink, soft shadow.
37-
→ The workhorse. Warm, readable, unmistakably hers.
40+
**C1 · Tonal family** *(default)*
41+
Pastel fill, 2px border in the same hue one step deeper, card title in that family's name
42+
tone, soft shadow. Cards rotate through the five families down the sheet.
43+
→ The workhorse, and the variant that carries most of the craft.
3844

3945
**C2 · Neutral**
4046
`--paper` fill, `--blue-pale` hairline.
@@ -49,9 +55,15 @@ Pastel background rotating through `--p1`…`--p5`, hairline at 7% Ink, soft sha
4955
→ The closer. Never more than one.
5056

5157
**C5 · Split card**
52-
Warm fill, with a `--sky-deep` strip down the right third holding a figure or a before-value.
58+
Tonal fill, with a strip down the right third in the same family's edge tone, holding a figure
59+
or a before-value.
5360
→ Use when every card carries a number worth isolating.
5461

62+
**C6 · Dense tile**
63+
Tonal family card at half height, no body copy — title plus one line. Six to nine in a grid.
64+
→ For a reference sheet people will save and zoom. Density is the point; keep the tonal
65+
borders or it turns into a wall.
66+
5567
---
5668

5769
## Node styles — 3 variants
@@ -121,7 +133,7 @@ Ink block, one instruction and a time box: "Start with #2. Twenty minutes."
121133
| Big-number sheet | H2 | C1 | N1 | P3 | X2 |
122134
| Manual vs system | H3 | C3 + C1 | N2 | P2 | X1 |
123135
| Step-by-step setup | H4 | C1 | N1 | P1 | X4 |
124-
| Dense reference | H1 | C2 | N1 | P2 | X3 |
136+
| Dense reference | H5 | C6 | N1 | P2 | X3 |
125137
| Hard truth (Ink canvas) | H4 | C1 | N2 | P3 | X3 |
126138

127139
---

‎saman-skills/saman-craft.zip‎

57 Bytes
Binary file not shown.

‎saman-skills/saman-craft/SKILL.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -111,8 +111,8 @@ The short version — any of these is an automatic fail:
111111
7. Emoji anywhere on the canvas
112112
8. A headline that could sit on anyone's sheet ("Powerful AI Tools You Should Know")
113113
9. Centre-aligned body text
114-
10. **Anything that looks like Ayan's system** — an Object Frame, terracotta, a drawn physical
115-
object. Her sheet is a line, not a thing.
114+
10. **Anything that reads as a neighbouring account's system** — an Object Frame, terracotta,
115+
a drawn physical object. Her sheet is a line, not a thing.
116116

117117
---
118118

‎saman-skills/saman-craft/references/design-laws.md‎

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,10 +62,11 @@ the headline still fits, it is not a headline yet.
6262
**Why:** ragged left edges destroy the scan, which is the only thing a cheatsheet is for.
6363
**Fix:** left-align everything except a single figure in a closer.
6464

65-
### 10. Nothing that looks like Ayan's system
65+
### 10. Nothing that reads as a neighbouring account's system
6666
**Fail:** an Object Frame (the sheet drawn as a phone, a folder, a terminal, a receipt),
6767
terracotta or orange, a navy ground by default, a brand-coloured pill word.
68-
**Why:** it is the fastest way to make her look derivative of a bigger account in the same niche.
68+
**Why:** each of those is the signature of a larger account in an adjacent niche. Borrowing one
69+
makes her look derivative of the thing she is competing with.
6970
**Fix:** her sheet is a **line**, not a **thing**. Her pill is Ink on light, and that inversion
7071
is deliberate.
7172

0 commit comments

Comments
 (0)