diff --git a/docs/90_current_state.md b/docs/90_current_state.md index 19cc061..10ba21d 100644 --- a/docs/90_current_state.md +++ b/docs/90_current_state.md @@ -84,6 +84,10 @@ Last Updated: 2026-02-28 - 배지 타이포를 `text-xs` 이상으로 상향하고 칩 높이/패딩을 키워 가독성과 존재감을 개선 - `PRO MEMBER` 라벨과 저채도 그라데이션/내부 하이라이트/부드러운 그림자로 유료 멤버 위계를 강화 - `NORMAL`/`TEAM`도 등급별 표면 톤과 마커를 분리해 동일 구조 안에서 차분한 구분을 제공 +- `/app` 멤버십 배지 고급화 2차 적용: + - 등급 칩 높이를 `h-9`, 최소폭을 부여해 헤더 내에서 배지가 독립된 프리미엄 토큰처럼 보이도록 정렬 + - `PRO`는 모바일 축약 라벨, 데스크톱 `PRO MEMBER` 라벨을 분리해 밀집을 완화 + - 헤더 우측 그룹 간격을 `gap-3`으로 조정해 배지와 프로필 트리거의 시각 충돌을 완화 - 몰입 모드 ON 시 `/space` 크롬 정리: - 상단 `Current Room` 블록 숨김 - 우상단 허브 버튼 소형 아이콘화 @@ -123,7 +127,7 @@ Last Updated: 2026-02-28 - 외부 이미지 URL(임시) 의존이라 소스 만료/속도 이슈 가능성이 있어 자가 호스팅 전환 필요 - 전체 배경 블러 강도 증가로 저사양 환경에서 GPU 부담이 늘 수 있어 실기기 체감 점검 필요 - 밝은 배경 사진과 라이트 헤더 조합에서 상단 경계 인지가 약해질 수 있어 대비 점검 필요 -- 긴 멤버십 라벨(`PRO MEMBER`)이 좁은 폭에서 프로필과 밀집해 보일 수 있어 간격 점검 필요 +- 등급 칩 최소폭 증가로 초소형 화면에서 헤더 가로 여유가 줄어들 수 있어 간격 점검 필요 ## CHANGED FILES diff --git a/docs/session_brief.md b/docs/session_brief.md index 0da9818..ff26d31 100644 --- a/docs/session_brief.md +++ b/docs/session_brief.md @@ -69,6 +69,10 @@ Last Updated: 2026-02-28 - 배지 텍스트를 `text-xs` 이상으로 상향하고 칩 높이/패딩을 키워 가독성과 존재감을 높였다. - `PRO MEMBER` 기준으로 조용한 그라데이션 표면/내부 하이라이트/미세 그림자를 적용해 저자극 프리미엄 톤을 맞췄다. - `NORMAL`/`TEAM`도 등급별 표면 톤과 점 마커를 분리해 위계를 명확히 했다. +- `/app` 멤버십 배지를 Quiet Premium 톤으로 2차 정리했다. + - 등급 칩 높이를 `h-9`로 올리고 최소폭/자간을 통일해 배지가 독립 오브젝트처럼 보이도록 보정했다. + - `PRO`는 모바일에서 짧은 라벨, 데스크톱에서 `PRO MEMBER`를 노출해 밀집을 줄이면서 위계를 유지했다. + - 헤더 우측에서 배지와 프로필 사이 간격을 넓혀( `gap-3` ) 프리미엄 배지의 존재감을 안정화했다. - 공간 카드 높이를 고정해 사진 사이즈를 통일하고, 배경 전환 시 resize처럼 보이던 애니메이션 느낌을 완화했다. - 몰입 모드 ON 시 상단 룸 블록 숨김, 레일 미니화, HUD 저대비, 비네팅 강화가 적용된다. - 이후 작업은 `docs/work.md`를 기준으로 실행한다. @@ -89,7 +93,7 @@ Last Updated: 2026-02-28 - 외부 이미지 URL 의존으로 소스 만료/속도 이슈 가능성이 있어 자가 호스팅 전환이 필요함 - 배경 블러 강도 증가로 저사양 환경에서 GPU 부담이 늘 수 있어 체감 성능 확인이 필요함 - 밝은 배경 사진과 라이트 헤더가 겹칠 때 상단 요소 경계 인지가 약해질 수 있어 점검 필요함 -- 긴 멤버십 라벨(`PRO MEMBER`)이 작은 폭에서 프로필과 가까워 보일 수 있어 간격 점검이 필요함 +- 등급 칩 최소폭 증가로 초소형 화면에서 헤더 가로 여유가 줄어들 수 있어 실기기 점검이 필요함 ## 상세 원문 위치 diff --git a/src/entities/user/ui/MembershipTierBadge.tsx b/src/entities/user/ui/MembershipTierBadge.tsx index 7ff2236..e6b4564 100644 --- a/src/entities/user/ui/MembershipTierBadge.tsx +++ b/src/entities/user/ui/MembershipTierBadge.tsx @@ -6,25 +6,33 @@ interface MembershipTierBadgeProps { const TIER_META: Record< MembershipTier, - { label: string; surfaceClass: string; dotClass: string } + { + label: string; + mobileLabel: string; + surfaceClass: string; + dotClass: string; + } > = { pro: { label: 'PRO MEMBER', + mobileLabel: 'PRO', surfaceClass: - 'border-amber-700/34 bg-[linear-gradient(120deg,rgba(254,243,199,0.88)_0%,rgba(250,230,170,0.7)_55%,rgba(244,216,125,0.6)_100%)] text-amber-900 shadow-[inset_0_1px_0_rgba(255,255,255,0.62),0_8px_20px_rgba(120,82,20,0.14)]', - dotClass: 'bg-amber-700/72', + 'border-[#af8b4c]/44 bg-[linear-gradient(138deg,rgba(255,251,240,0.98)_0%,rgba(248,235,206,0.92)_58%,rgba(236,214,166,0.9)_100%)] text-[#6e5326] ring-1 ring-white/56 shadow-[inset_0_1px_0_rgba(255,255,255,0.66),0_10px_22px_rgba(120,82,20,0.14)]', + dotClass: 'bg-[#8f6a2c]/72', }, normal: { label: 'NORMAL', + mobileLabel: 'NORMAL', surfaceClass: - 'border-brand-dark/16 bg-white/76 text-brand-dark/68 shadow-[inset_0_1px_0_rgba(255,255,255,0.55),0_6px_16px_rgba(15,23,42,0.08)]', - dotClass: 'bg-brand-dark/34', + 'border-slate-600/22 bg-[linear-gradient(135deg,rgba(255,255,255,0.94)_0%,rgba(241,245,249,0.86)_100%)] text-slate-700/84 ring-1 ring-white/50 shadow-[inset_0_1px_0_rgba(255,255,255,0.58),0_8px_18px_rgba(15,23,42,0.09)]', + dotClass: 'bg-slate-600/46', }, team: { label: 'TEAM', + mobileLabel: 'TEAM', surfaceClass: - 'border-cyan-900/24 bg-[linear-gradient(120deg,rgba(224,242,254,0.86)_0%,rgba(209,250,229,0.68)_56%,rgba(186,230,253,0.64)_100%)] text-cyan-900 shadow-[inset_0_1px_0_rgba(255,255,255,0.58),0_8px_18px_rgba(8,78,99,0.12)]', - dotClass: 'bg-cyan-900/52', + 'border-teal-900/28 bg-[linear-gradient(140deg,rgba(236,253,250,0.95)_0%,rgba(204,251,241,0.82)_58%,rgba(186,230,253,0.76)_100%)] text-teal-900/84 ring-1 ring-white/52 shadow-[inset_0_1px_0_rgba(255,255,255,0.6),0_9px_18px_rgba(8,78,99,0.12)]', + dotClass: 'bg-teal-900/54', }, }; @@ -33,10 +41,11 @@ export const MembershipTierBadge = ({ tier }: MembershipTierBadgeProps) => { return ( - {tierMeta.label} + {tierMeta.mobileLabel} + {tierMeta.label} ); }; diff --git a/src/widgets/app-top-bar/ui/AppTopBar.tsx b/src/widgets/app-top-bar/ui/AppTopBar.tsx index 951c5c0..de452bd 100644 --- a/src/widgets/app-top-bar/ui/AppTopBar.tsx +++ b/src/widgets/app-top-bar/ui/AppTopBar.tsx @@ -17,7 +17,7 @@ export const AppTopBar = ({ user, oneLiner, onLogout }: AppTopBarProps) => {
{oneLiner}
-