@@ -12,6 +12,13 @@ export const TYPOGRAPHY_CLASSES = {
1212 "mt-4 text-balance font-['Sora','Segoe_UI',sans-serif] text-[clamp(2.1rem,5vw,4.3rem)] leading-[1.06] tracking-[-0.03em]" ,
1313 subheading : "text-2xl font-semibold text-[var(--text-strong)] md:text-3xl" ,
1414 body : "text-[clamp(1rem,2vw,1.2rem)] leading-[1.7] text-[var(--text-muted)]" ,
15+ label : "text-sm text-[var(--accent-strong)]" ,
16+ labelXs : "text-xs font-semibold text-[var(--accent-strong)]" ,
17+ cardTitle : "text-xl font-semibold text-[var(--text-strong)]" ,
18+ cardTitleBold : "text-xl font-bold leading-tight text-[var(--text-strong)]" ,
19+ cardBody : "text-base font-medium text-[var(--text-strong)]" ,
20+ cardBodySm : "text-sm text-[var(--text-muted)]" ,
21+ cardBodyXs : "text-xs text-[var(--text-muted)]" ,
1522} ;
1623
1724export const BUTTON_CLASSES = {
@@ -25,6 +32,9 @@ export const BUTTON_CLASSES = {
2532export const CARD_CLASSES = {
2633 base : "rounded-[var(--card-radius)] border border-[var(--card-uniform-border)] bg-[var(--card-uniform-bg)] shadow-[var(--card-shadow)]" ,
2734 compact : "p-5" ,
35+ glass : "rounded-lg border border-[var(--border-strong)] bg-[color-mix(in_srgb,var(--surface-panel)_80%,transparent)] shadow-[0_10px_26px_rgba(0,0,0,0.2)] backdrop-blur-sm" ,
36+ glassVariant : "rounded-lg border border-[var(--border-strong)] bg-[color-mix(in_srgb,var(--surface-panel)_88%,transparent)] shadow-[0_8px_18px_rgba(0,0,0,0.16)] backdrop-blur-sm" ,
37+ portfolio : "rounded-lg border border-[var(--border-strong)] bg-[color-mix(in_srgb,var(--surface-panel)_80%,transparent)] p-4 shadow-[0_12px_30px_rgba(0,0,0,0.22)] backdrop-blur-sm hover:shadow-[0_14px_36px_rgba(0,0,0,0.28)]" ,
2838} ;
2939
3040export const FORM_CLASSES = {
@@ -49,4 +59,28 @@ export const SKIP_LINK_CLASSES =
4959export const CONTAINER_CLASSES = {
5060 horizontal : "mx-auto max-w-screen-xl px-6" ,
5161 section : "mx-auto w-full max-w-screen-xl px-6" ,
62+ sectionLg : "section-content max-w-screen-lg mx-auto xl:max-w-screen-xl w-full" ,
63+ } ;
64+
65+ export const LINK_CLASSES = {
66+ underlined : "inline-block border-b border-[var(--accent-strong)] pb-0.5 text-xs font-semibold text-[var(--accent-strong)]" ,
67+ ctaButton : "inline-block rounded-lg bg-[var(--accent-strong)] px-6 py-3 font-semibold text-[var(--accent-contrast)] hover:opacity-90" ,
68+ } ;
69+
70+ export const LAYOUT_CLASSES = {
71+ siteBg : "fixed inset-0 -z-10 pointer-events-none site-bg" ,
72+ mainContent : "h-screen overflow-y-auto scroll-smooth-snap" ,
73+ slideSection : "min-h-screen snap-start snap-always flex items-center md:min-h-screen max-md:min-h-0 max-md:snap-normal" ,
74+ slideSectionChild : "w-full" ,
75+ homeSlide : "block" ,
76+ sectionSizeHome : "pt-[clamp(5.6rem,10vh,8rem)] pb-[clamp(2.5rem,6vh,5rem)] max-md:pt-[6.2rem] max-md:pb-10" ,
77+ sectionSizeWork : "pt-[clamp(4.5rem,8vh,6.5rem)] pb-[clamp(3rem,7vh,5.5rem)] max-md:pt-[6.2rem] max-md:pb-10" ,
78+ sectionSizeBlog : "pt-[clamp(4.2rem,7.5vh,6rem)] pb-[clamp(3rem,7vh,5.2rem)] max-md:pt-[6.2rem] max-md:pb-10" ,
79+ homeStack : "min-h-[clamp(35rem,calc(100vh-7rem),56rem)] flex flex-col justify-center gap-[clamp(1.5rem,3vh,2.5rem)] max-md:min-h-0 max-md:justify-start" ,
80+ } ;
81+
82+ export const TYPING_CLASSES = {
83+ live : "hidden js:inline" ,
84+ fallback : "js:hidden" ,
85+ cursor : "animate-blink" ,
5286} ;
0 commit comments