From b3b62fa9026a099f56b71723b8ad9061839250c5 Mon Sep 17 00:00:00 2001 From: wasrusgen Date: Sat, 16 May 2026 12:28:40 +0300 Subject: [PATCH] refine: per-theme personality from dashboard analysis Extracted from reference dashboards (computed styles, class structure, color usage): B Foundry: r-card 0px, body lh 1.5, Archivo 800 display, dark #15140F header (palette + greeting full-width), wide 0.18em kicker tracking, heavy section labels C Boardroom: r-card 0px, r-tag 999px (pills), body lh 1.12, Geist 400 display (restrained), dark petrol header, copper accent on greeting D Atelier: body lh 1.1, Manrope 700 display, white card header on dove bg, ink-bottom-border divider, prominent uppercase section labels Also: role-card border-radius switched to var(--r-card) from hardcoded 16px Co-Authored-By: Claude Sonnet 4.6 --- miniapp/assets/podbor.css | 2 +- miniapp/assets/styles.css | 169 +++++++++++++++++++++++++++++++++++++- miniapp/index.html | 4 +- 3 files changed, 171 insertions(+), 4 deletions(-) diff --git a/miniapp/assets/podbor.css b/miniapp/assets/podbor.css index 17d9362..07450cd 100644 --- a/miniapp/assets/podbor.css +++ b/miniapp/assets/podbor.css @@ -2189,7 +2189,7 @@ padding: 18px 18px; background: var(--card, #fff); border: 1px solid var(--line-strong, rgba(15, 15, 14, 0.16)); - border-radius: 16px; + border-radius: var(--r-card, 14px); cursor: pointer; transition: background 0.15s, transform 0.1s; text-align: left; diff --git a/miniapp/assets/styles.css b/miniapp/assets/styles.css index 988c28f..1fa7dd5 100644 --- a/miniapp/assets/styles.css +++ b/miniapp/assets/styles.css @@ -188,7 +188,7 @@ body { font-family: var(--font-ui); font-size: 15px; font-weight: 400; - line-height: 1.45; + line-height: var(--lh, 1.45); letter-spacing: -0.01em; color: var(--ink); background: var(--paper); @@ -1194,3 +1194,170 @@ body.has-bottom-nav #app { place-items: center; letter-spacing: 0; } + + +/* ============================================================ + Per-theme personality overrides v5.1 + Tokens distilled from B/C/D reference dashboards. + ============================================================ */ + +/* ------------------------------------------------------- + B — Foundry: Archivo 800, sharp corners, dark header + Dashboard: font-weight 400/700/800, radius 0px, lh 1.5 + ------------------------------------------------------- */ +html[data-variant="b"] { + --r-card: 0px; + --r-btn: 0px; + --r-tag: 0px; + --lh: 1.5; +} + +/* Dark header extends edge-to-edge — palette switcher + greeting */ +html[data-variant="b"] .palette-switcher, +html[data-variant="b"] .greeting { + margin-inline: calc(-1 * var(--s4)); + padding-inline: var(--s4); + background: var(--ink); +} +html[data-variant="b"] .palette-switcher { + margin-top: calc(-1 * var(--s3)); + padding-top: var(--s3); + padding-bottom: var(--s2); +} +html[data-variant="b"] .greeting { + padding-bottom: var(--s5); + margin-bottom: var(--s5); +} + +/* Palette switcher on dark bg */ +html[data-variant="b"] .palette-switcher__label { color: rgba(239,233,216,0.38); } +html[data-variant="b"] .ps-btn { background: rgba(239,233,216,0.06); border-color: rgba(239,233,216,0.12); } +html[data-variant="b"] .ps-btn.active { background: rgba(239,233,216,0.15); border-color: rgba(239,233,216,0.55); } +html[data-variant="b"] .ps-name { color: rgba(239,233,216,0.55); } +html[data-variant="b"] .ps-btn.active .ps-name { color: #EFE9D8; } + +/* Greeting typography — Archivo Heavy */ +html[data-variant="b"] .greeting-kicker { color: rgba(239,233,216,0.45); } +html[data-variant="b"] .greeting-headline { + font-family: var(--font-ui); + font-style: normal; + font-weight: 800; + font-size: 34px; + letter-spacing: -0.04em; + color: #EFE9D8; +} +html[data-variant="b"] .greeting-headline .accent { color: #B68A1A; } + +/* Section labels — wider tracking, ink weight */ +html[data-variant="b"] .section-head .label { + font-weight: 700; + letter-spacing: 0.18em; +} + +/* Cards — flat with visible border */ +html[data-variant="b"] .quick-card, +html[data-variant="b"] .card, +html[data-variant="b"] .today-card { + border-width: 1.5px; +} + +/* ------------------------------------------------------- + C — Boardroom: Geist 400, sharp corners, petrol header + Dashboard: font-weight 400/500, radius 0/999px, lh 1.12 + ------------------------------------------------------- */ +html[data-variant="c"] { + --r-card: 0px; + --r-btn: 0px; + --r-tag: 999px; /* pills stay pill-shaped */ + --lh: 1.12; +} + +/* Dark petrol header */ +html[data-variant="c"] .palette-switcher, +html[data-variant="c"] .greeting { + margin-inline: calc(-1 * var(--s4)); + padding-inline: var(--s4); + background: var(--ink); +} +html[data-variant="c"] .palette-switcher { + margin-top: calc(-1 * var(--s3)); + padding-top: var(--s3); + padding-bottom: var(--s2); +} +html[data-variant="c"] .greeting { + padding-bottom: var(--s5); + margin-bottom: var(--s5); +} + +/* Palette switcher on dark bg */ +html[data-variant="c"] .palette-switcher__label { color: rgba(242,233,214,0.35); } +html[data-variant="c"] .ps-btn { background: rgba(242,233,214,0.06); border-color: rgba(242,233,214,0.12); } +html[data-variant="c"] .ps-btn.active { background: rgba(242,233,214,0.14); border-color: rgba(242,233,214,0.50); } +html[data-variant="c"] .ps-name { color: rgba(242,233,214,0.50); } +html[data-variant="c"] .ps-btn.active .ps-name { color: #F2E9D6; } + +/* Greeting typography — Geist Regular, restrained */ +html[data-variant="c"] .greeting-kicker { color: rgba(242,233,214,0.40); } +html[data-variant="c"] .greeting-headline { + font-family: var(--font-ui); + font-style: normal; + font-weight: 400; + font-size: 30px; + letter-spacing: -0.01em; + line-height: 1.1; + color: #F2E9D6; +} +html[data-variant="c"] .greeting-headline .accent { color: #D08A55; } + +/* Section labels — Geist, moderate weight */ +html[data-variant="c"] .section-head .label { + font-family: var(--font-ui); + font-weight: 500; + letter-spacing: 0.10em; +} + +/* ------------------------------------------------------- + D — Atelier: Manrope 700, white card header, dove bg + Dashboard: font-weight 400/600/700, lh 1.1, white cards + ------------------------------------------------------- */ +html[data-variant="d"] { + --lh: 1.1; +} + +/* White card header — floats on dove background */ +html[data-variant="d"] .palette-switcher, +html[data-variant="d"] .greeting { + margin-inline: calc(-1 * var(--s4)); + padding-inline: var(--s4); + background: var(--card); +} +html[data-variant="d"] .palette-switcher { + margin-top: calc(-1 * var(--s3)); + padding-top: var(--s3); + padding-bottom: var(--s2); +} +html[data-variant="d"] .greeting { + padding-bottom: var(--s4); + margin-bottom: 0; + border-bottom: 1px solid var(--line); +} + +/* Greeting typography — Manrope Bold */ +html[data-variant="d"] .greeting-headline { + font-family: var(--font-ui); + font-style: normal; + font-weight: 700; + font-size: 30px; + letter-spacing: -0.02em; + line-height: 1.1; +} +html[data-variant="d"] .greeting-headline .accent { color: var(--accent-1); } + +/* Section labels — prominent uppercase, Manrope semibold */ +html[data-variant="d"] .section-head .label { + font-family: var(--font-ui); + font-weight: 700; + font-size: 10px; + letter-spacing: 0.16em; + color: var(--ink-2); +} diff --git a/miniapp/index.html b/miniapp/index.html index e5a9783..15690d2 100644 --- a/miniapp/index.html +++ b/miniapp/index.html @@ -12,8 +12,8 @@ - - + +