Some checks failed
Main Confidence / confidence (push) Failing after 40s
## Summary - implement the website-only visual foundation for apps/website - formalize semantic tokens, typography, spacing, surfaces, and shared CTA/navigation primitives - align landing, trust/legal, and content-heavy routes plus Playwright smoke coverage with the new foundation ## Validation - corepack pnpm build:website - corepack pnpm --filter @tenantatlas/website exec playwright test ## Scope - website-only change set for spec 214 - no apps/platform runtime coupling introduced Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #251
27 lines
742 B
Plaintext
27 lines
742 B
Plaintext
---
|
|
interface Props {
|
|
class?: string;
|
|
tone?: 'accent' | 'neutral' | 'signal' | 'warm';
|
|
}
|
|
|
|
const { class: className = '', tone = 'accent' } = Astro.props;
|
|
|
|
const toneClasses = {
|
|
accent: 'bg-[var(--color-accent)] text-[var(--color-accent-foreground)]',
|
|
neutral: 'bg-white/78 text-[var(--color-ink-800)]',
|
|
signal: 'bg-[var(--surface-trust)] text-[var(--color-signal)]',
|
|
warm: 'bg-[rgba(175,109,67,0.14)] text-[var(--color-warm)]',
|
|
};
|
|
---
|
|
|
|
<span
|
|
class:list={[
|
|
'inline-flex w-fit items-center rounded-[var(--radius-pill)] px-3 py-1 text-[0.72rem] font-semibold uppercase tracking-[var(--tracking-eyebrow)]',
|
|
toneClasses[tone],
|
|
className,
|
|
]}
|
|
data-badge-tone={tone}
|
|
>
|
|
<slot />
|
|
</span>
|