여백 임팩트 부족, 파스텔 orb 6 개 + 그레인 텍스처 등 12 레이어 추가 — POP-SPOT v1.9 매거진 풀 리디자인
"여백 많고 임팩트 부족, 적어도 10 가지" 피드백. 파스텔 orb 6 + 그레인 텍스처 + conic ray + dust 파티클 + 좌측 매거진 라벨 + VOL 칩 + ghost 번호 + 따뜻한 다크 톤 등 12 레이어.
"여백이 너무 많아서 임팩트가 부족함, 최소 10 가지 적용" 이라는 피드백을 받아 데코 레이어 12 개를 추가한 버전이다. v1.7·v1.8 은 섹션 구조에 대한 작업이었고, v1.9 는 그 구조 위에 시각 레이어를 채우는 작업이다.
이 글에서 다루는 것
모르는 단어 한 줄로
| 용어 | 한 줄 설명 |
|---|---|
| orb | 동그란 파스텔 빛덩어리. <code>border-radius: 9999px</code> + <code>filter: blur(80px)</code> |
| 그레인 텍스처 | 아주 작은 노이즈 패턴. 단조롭지 않도록 배경에 덱을 입힌다 |
| conic ray | 한 점에서 부채꼴처럼 퍼지는 빛살. <code>conic-gradient</code> 로 구현 |
| VOL 칩 | "VOL. 03" 같이 잡지 표지에서 보는 작은 라벨 |
| ghost 번호 | 섹션 번호를 아주 연하게 (예: opacity 0.05) 대형으로 그리고 배경으로 깔아둔 것 |
무엇이 바뀌었나
| 항목 | v1.8.1 | v1.9 |
|---|---|---|
| 여백 | 섹션마다 큰 공백, 한산함 | 파스텔 orb 6 + 그레인 + conic + dust 파티클 |
| 섹션 라벨 | 가운데 제목만 | 좌측 매거진 라벨 + ghost 번호 + VOL 칩 |
| Hero | POP·SPOT 한 단어 + CTA | 거대 outline + 폴라로이드 4 장 + 마킨 스트립 |
| 다크 베이스 | 순수 검정 (#0a0a0a) | warm deep purple-gray 그라디언트 (#1a1820 → #221e2a) |
| 영상 배경 | 17MB mp4 고정 로드 | 영상 제거 + 파스텔 + 데코 레이어로 대체 (v2.4 에서 선택적 복구) |
12 개 레이어. 라이트·다크 양쪽 적용. 857 라인.
왜 이렇게 했음
여백의 문제는 크기가 아니었다 — 피드백은 "여백 넓은 게 문제" 같아 보였지만 실제는 "여백이 텍 비어 있고 아무것도 안 깔려 있어서" 떨어지는 느낌이었다. 여백을 줄이면 해결 → 관계 없음. 대신 그 여백에 보조 레이어 (orb / 텍스처 / ray / particle) 를 깔아서 "의도된 조용함" 으로 바꿔주어야 함.
다크 톤을 "warm purple-gray" — 순수 검정 (#0a0a0a) 은 "웹을 아직 만드는 중" 같은 느낌을 준다. 팝업이라는 주제와도 멀다. 보라를 짙은 회색에 살짝 섞은 정도의 #1a1820 → #221e2a 그라디언트로 가면 따뜻한 느낌이 든다.
영상 제거 — v1.7·v1.8 의 인트로 풀스크린 비디오 (17MB mp4) 은 모바일에서 버볍거렸고 데이터 소모도 했다. v1.9 에서 일단 제거하고 정적 레이어로 대체. 그래도 비디오가 주는 동적인 명황 (실제 팝업을 걷는 장면) 이 아쉬워서 v2.4 에서 토글로 부활시키게 된다.
코드로는 어떻게 (필요한 부분만)
파스텔 orb 레이어.
파일: popspot-frontend/src/app/intro/page.tsx 안 Hero 섹션 부분
// v1.9 — 파스텔 orb 레이어 1 (앞쪽 좌상단 핏크 광채)
<div className="absolute -top-40 -left-40 w-[600px] h-[600px]
// ^^^^^^^^ ^^^^^^^ ^^^^^^^^ ^^^^^^^^^^ ^^^^^^^^^^^
// | | | | |
// | | | | +-- 세로 600px
// | | | +-- 가로 600px. 대괄호는 Tailwind 의 arbitrary value 표기
// | | +-- 좌측으로 10rem(160px) 너머감. 원의 왼쪽 끝이 화면 밖으로 숨겨짐
// | +-- 동일하게 상단으로 너머감. 원의 한 조각만 처음에 보이게 함
// +-- absolute — 부모의 relative 좌표계에서 떠있음. 문서 흐름을 차지하지 않음
rounded-full bg-pink-400/30 blur-[120px]
// ^^^^^^^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^^^
// | | |
// | | +-- CSS filter: blur(120px). orb 의 테두리를 완전히 퍼뜨려 광채로 만듦
// | | 이 px 값이 클수로 부드러움. 120px 은 적당히 은은한 편
// | +-- 핏크 400 단계 30% 불투명 (파스텔 느낌)
// +-- border-radius:9999px. 완전한 원형
pointer-events-none" />
// ^^^^^^^^^^^^^^^^^^^^ 마우스 이벤트를 통과시키 — 호버·클릭이 본문으로 전달됨
// 장식 레이어는 상호작용을 막으면 안 됨
// v1.9 — 파스텔 orb 레이어 2 (우측 중간·상단 에 바이올렛)
<div className="absolute top-[20%] right-[-200px] w-[500px] h-[500px]
// ^^^^^^^^ ^^^^^^^^^^^^^ 세로 20% 지점, 가로 우측 200px 밖
// 좌상단 orb 와 대각선으로 배치
rounded-full bg-violet-400/30 blur-[100px]
// ^^^^^^^^^^^^^^ 바이올렛 — 핏크·바이올렛은 포인트로 잘 어울리는 조합
pointer-events-none" />
// ... 이런 패턴으로 총 6개 (lime·amber·sky·teal 을 고르게 섞음)
// 원칙: 서로 다른 위치, 다른 색, 다른 크기 — "동일 패턴 반복" 느낌이 안 나게 함
// blur 는 GPU 합성 레이어로 처리되므로 6개도 60fps 유지좌측 매거진 라벨 + ghost 번호.
파일: 같은 intro/page.tsx 안 각 섹션 래퍼 (반복 구조)
// v1.9 — 잡지 표지 느낌 적용. 좌상단 VOL 칩 + 배경 은은한 대형 숫자
<section className="relative">
// ^^^^^^^^ 내부 absolute 자식이 이 섹션을 기준으로 자리잡음
<div className="absolute left-0 top-0 text-xs tracking-widest">
// ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^^^^^^
// | | |
// | | +-- letter-spacing 넓힘. 잡지·커버 제목 느낌
// | +-- text-xs — 0.75rem 가장 작은 표준 폰트
// +-- absolute — 부모 section 의 left:0, top:0 에 붙이기
VOL. 03 — WHY POP-SPOT
// ^^^^^^^ 잡지 권호처럼 읽먀. 시리즈 속 구별용
</div>
<span className="absolute -left-12 top-20 text-[280px] font-black
// ^^^^^^^^ ^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^^^^ ^^^^^^^^^^
// | | | | |
// | | | | +-- font-weight:900 최대 굵기
// | | | +-- 280px 큰 글자. 잡지 커버 타이포 괄로 쓰임
// | | +-- top-20 — 상단 5rem(80px)
// | +-- -left-12 — 좌측으로 3rem(48px) 너머감. 일부 잘린 채 보임
// +-- absolute — 위 section 의 좌표계로 광레
text-zinc-900/[0.04] select-none">03</span>
// ^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^
// | |
// | +-- 드래그로 선택 차단 — 잡지 느낌을 손상하지 않음
// +-- zinc-900 를 4% 불투명으로 (arbitrary 0.04) — 그림자처럼 희미하게
// 280px 큰 숫자가 배경으로 깔려 있을 뿐 읽힌은 잘 안 되어 "그림자" 느낌만 주고 본문 가독성 유지
{/* ... 실제 컨텐츠 */}
</section>핵심 파일: popspot-frontend/src/app/intro/page.tsx
직접 보는 법
popspot.co.kr 의 인트로 페이지를 따라 스크롤. 각 섹션에 좌상단 라벨·배경의 연한 숫자·파스텔 광채가 있다. 그게 v1.9 에서 들어간 12 레이어 중 일부.