Design System.
모든 공개 페이지에서 사용되는 VGS 브랜드 가이드라인, 컴포넌트 라이브러리, 디자인 패턴의 기준점.
색상 팔레트
Tailwind 설정에 정의된 브랜드 및 UI 색상. 모든 페이지에서 이 클래스를 일관되게 사용하세요.
브랜드
brand-500
#F0E6C8
brand-400
#F4ECCE
brand-300
#FAF6E7
brand-600
#B5A87F
brand-700
#B45309
brand-800
#92400E
그레이 스케일
gray-900
#18181b
gray-800
#27272a
gray-700
#3f3f46
gray-600
#52525b
gray-500
#71717a
gray-400
#a1a1aa
상태 색상
emerald-400
Success
rose-500
Danger
sky-400
Info
amber-500
Warning
타이포그래피
두 글꼴 패밀리가 타입 시스템을 구성합니다. 제목과 디스플레이에는 Audiowide, 본문과 UI에는 Inter(산세리프).
제목 font-audiowide uppercase tracking-tight
제목 레벨 1
text-4xl md:text-6xl font-audiowide uppercase
제목 레벨 2
text-3xl md:text-4xl font-audiowide uppercase
제목 레벨 3
text-xl font-audiowide uppercase
본문 Default sans-serif (Inter), text-gray-400 for secondary
본문은 다양한 크기의 Inter를 사용합니다. 기본 색상은 주요 콘텐츠에 흰색, 보조 설명과 보조 텍스트에 gray-400입니다.
text-lg text-gray-400 leading-relaxed
라벨 및 캡션 text-xs uppercase tracking-wider text-gray-500
섹션 라벨
버튼
버튼은 세 가지를 결합합니다: 변형(색상), 크기, 선택적 효과.
변형
크기
효과
.btn-glow is the standard CTA halo. .btn-glow-intense doubles it for the single most important CTA on a page. .btn-shimmer adds a one-shot light sweep on hover. .btn-press adds a micro scale-down on click for tactile feedback.
사용법
<!-- Variant + size + effect compose freely -->
<button class="btn-primary btn-lg btn-glow">Get Started</button>
<button class="btn-secondary btn-md">Learn more</button>
<button class="btn-ghost btn-sm btn-press">Cancel</button>
/* CSS — src/styles/globals.css */
.btn-glow:hover { box-shadow: 0 0 12px rgba(240,230,200,0.15), 0 0 24px rgba(240,230,200,0.05); }
.btn-press:active { transform: scale(0.96); }표면
글래스, 카드, 배지, 탭. 샴페인 톤의 글래스는 VGS의 상징적인 표면입니다.
글래스
.glass
Standard glass surface. Champagne-tinted backdrop blur, 16px radius. Best for full-width sections and hero overlays.
.glass-card
Slightly stronger explicit variant with a 12px blur. Drop-in replacement when .glass feels too soft.
카드
.card
Base translucent card. Padding 6, radius sm.
.card-elevated
Adds a subtle shadow. Use sparingly for elevation.
.card-interactive
Pointer cursor + hover state. Use when the entire card is clickable.
.card-compact
Tighter padding (p-4) — for dense rows and grids.
.card-minimal
Resets background, padding, and border. Used as a wrapper that should not visually exist.
배지
애니메이션
스크롤로 트리거되는 애니메이션은 선택적으로 활성화됩니다. 항상 동작 줄이기 설정을 존중합니다.
스크롤 애니메이션
Fade Up
data-animate (default)
Fade Left
data-animate="fade-left"
Fade Right
data-animate="fade-right"
Scale
data-animate="scale"
Staggered Delays
Add data-stagger="100" on a parent container. Child elements with data-animate will automatically receive incremental delays (in ms).
<!-- Staggered children -->
<div data-stagger="100">
<div data-animate>0ms delay</div>
<div data-animate>100ms delay</div>
<div data-animate>200ms delay</div>
</div>아이콘
공개 페이지는 Font Awesome Etch 아이콘 팩을 사용합니다 — 일관된 미학을 지닌 약 280개 아이콘의 엄선된 하위 집합.
house
gamepad
trophy
arrow-down-to-line
angle-right
arrows-rotate
사용법
<!-- HTML -->
<i class="fa-etch fa-solid fa-gamepad text-2xl text-brand-500"></i>
<i class="fa-brands fa-discord text-xl"></i>클래식 FA → Etch 이름 변경
Several common classic-FA names do not exist in Etch and have different replacements. Check the CLAUDE.md icon list before adding a new icon.
chevron-down → angle-down
download → arrow-down-to-line
circle-check → check
shield-halved → shield
hard-drive → compact-disc
spinner → arrows-rotate fa-spin