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 <noreply@anthropic.com>
This commit is contained in:
wasrusgen 2026-05-16 12:28:40 +03:00
parent db6c4f3265
commit b3b62fa902
3 changed files with 171 additions and 4 deletions

View File

@ -2189,7 +2189,7 @@
padding: 18px 18px; padding: 18px 18px;
background: var(--card, #fff); background: var(--card, #fff);
border: 1px solid var(--line-strong, rgba(15, 15, 14, 0.16)); border: 1px solid var(--line-strong, rgba(15, 15, 14, 0.16));
border-radius: 16px; border-radius: var(--r-card, 14px);
cursor: pointer; cursor: pointer;
transition: background 0.15s, transform 0.1s; transition: background 0.15s, transform 0.1s;
text-align: left; text-align: left;

View File

@ -188,7 +188,7 @@ body {
font-family: var(--font-ui); font-family: var(--font-ui);
font-size: 15px; font-size: 15px;
font-weight: 400; font-weight: 400;
line-height: 1.45; line-height: var(--lh, 1.45);
letter-spacing: -0.01em; letter-spacing: -0.01em;
color: var(--ink); color: var(--ink);
background: var(--paper); background: var(--paper);
@ -1194,3 +1194,170 @@ body.has-bottom-nav #app {
place-items: center; place-items: center;
letter-spacing: 0; 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);
}

View File

@ -12,8 +12,8 @@
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&family=Geist:wght@400;500;600&family=Manrope:wght@400;500;600;700&family=Newsreader:ital,wght@0,400..600;1,400..600&family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500&family=Cormorant+Garamond:ital,wght@1,400;1,500;1,600&family=Caveat:wght@500;700&display=swap"> <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Inter:wght@400;500;600;700;800&family=Geist:wght@400;500;600&family=Manrope:wght@400;500;600;700&family=Newsreader:ital,wght@0,400..600;1,400..600&family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500&family=Cormorant+Garamond:ital,wght@1,400;1,500;1,600&family=Caveat:wght@500;700&display=swap">
<script src="https://telegram.org/js/telegram-web-app.js"></script> <script src="https://telegram.org/js/telegram-web-app.js"></script>
<link rel="stylesheet" href="assets/styles.css?v=20260517a"> <link rel="stylesheet" href="assets/styles.css?v=20260517b">
<link rel="stylesheet" href="assets/podbor.css?v=20260517a"> <link rel="stylesheet" href="assets/podbor.css?v=20260517b">
</head> </head>
<body> <body>
<!-- Splash — лого @wasrusgen1 + опилки (16) + вращающийся диск --> <!-- Splash — лого @wasrusgen1 + опилки (16) + вращающийся диск -->