feat(theme): golden-ratio width cap for tag groups

This commit is contained in:
Ilia Mashkov
2026-07-14 10:35:35 +03:00
parent 1bd76d7061
commit 59304f4ae3
3 changed files with 11 additions and 2 deletions
@@ -41,7 +41,8 @@ export function ExperienceCard({ title, company, period, description, stack, cla
<p className="text-sm font-medium brutal-border-left pl-3">{period}</p> <p className="text-sm font-medium brutal-border-left pl-3">{period}</p>
<p className="text-lg font-black">{company}</p> <p className="text-lg font-black">{company}</p>
{stack.length > 0 && ( {stack.length > 0 && (
<div className="flex flex-wrap gap-2"> /* Golden-ratio cap for the stacked (top) tablet layout; full width on mobile, and lg sidebar is already width-constrained. */
<div className="flex flex-wrap gap-2 sm:max-w-golden lg:max-w-none">
{stack.map((tech) => ( {stack.map((tech) => (
<Badge key={tech} variant="outline" size="xs"> <Badge key={tech} variant="outline" size="xs">
{tech} {tech}
@@ -47,7 +47,8 @@ export function ProjectCard({ title, year, description, tags, url, imageUrl, pri
<div className="flex flex-col gap-4"> <div className="flex flex-col gap-4">
<p className="text-sm font-medium brutal-border-left pl-3">{year}</p> <p className="text-sm font-medium brutal-border-left pl-3">{year}</p>
{tags.length > 0 && ( {tags.length > 0 && (
<div className="flex flex-wrap gap-2"> /* Golden-ratio cap for the stacked (top) tablet layout; full width on mobile, and lg sidebar is already width-constrained. */
<div className="flex flex-wrap gap-2 sm:max-w-golden lg:max-w-none">
{tags.map((tag) => ( {tags.map((tag) => (
<Badge key={tag} variant="outline" size="xs"> <Badge key={tag} variant="outline" size="xs">
{tag} {tag}
+7
View File
@@ -293,6 +293,13 @@
.brutal-shadow-lg { .brutal-shadow-lg {
box-shadow: var(--shadow-brutal-lg); box-shadow: var(--shadow-brutal-lg);
} }
/* Golden-ratio (1/φ ≈ 0.618) cap for badge/tag groups so they form a tidy
* block instead of spanning the full width. Apply with a breakpoint prefix
* (e.g. sm:) — on mobile the group should use the full available width. */
@utility max-w-golden {
max-width: 61.8%;
}
@utility brutal-border { @utility brutal-border {
border: var(--border-width) solid var(--blue); border: var(--border-width) solid var(--blue);
border-radius: var(--radius); border-radius: var(--radius);