임동욱 임동욱 07-27
style: edupay-app 색상 토큰 이식 및 라이트/다크 시맨틱 컬러 정의
Co-Authored-By: Claude Opus 5 
@dd547e087ebb194554ed8f4f5486268a06710e9d
app/globals.css
--- app/globals.css
+++ app/globals.css
@@ -1,26 +1,92 @@
 @import "tailwindcss";
 
+/* 색상 토큰 출처: edupay-app lib/ui/core/tokens/app_colors.dart
+   (Figma: FOX PAY 1차 제작시안, node 91:10205). 다크 값은 edupay-app에 대응
+   다크 시안이 없어 "임의 도출 — 정식 다크 시안 확정 시 교체". */
 :root {
+  /* Brand */
+  --primary: #502ef5;
+  --primary-container: #6d5ce7;
+  --on-primary: #ffffff;
+  --on-primary-container: #e2e0fb;
+  --secondary: #877aec;
+
+  /* Surface / background (원 토큰: surface / gray0) */
   --background: #ffffff;
-  --foreground: #171717;
-  /* 임시 값, 디자인 확정 전 — 에러/위험 상태 표시용 (initial-security-setup, 로그인 실패 메시지) */
-  --danger: #dc2626;
+  --surface: #ffffff;
+  --surface-muted: #f5f7fa;
+
+  /* Foreground / text (원 토큰: onSurface 계열) */
+  --foreground: #2c3038;
+  --foreground-muted: #565d6b;
+  --foreground-subtle: #6b7486;
+
+  /* Border (원 토큰: outline 계열) */
+  --border: #dae0ed;
+  --border-subtle: #e1e6f1;
+
+  /* Status */
+  --danger: #ec2e2f;
+  --success: #21b770;
+  --warning: #ffb020;
+
+  /* Overlay */
+  --scrim: rgb(0 0 0 / 0.6);
 }
 
 @theme inline {
+  --color-primary: var(--primary);
+  --color-primary-container: var(--primary-container);
+  --color-on-primary: var(--on-primary);
+  --color-on-primary-container: var(--on-primary-container);
+  --color-secondary: var(--secondary);
+
   --color-background: var(--background);
+  --color-surface: var(--surface);
+  --color-surface-muted: var(--surface-muted);
+
   --color-foreground: var(--foreground);
+  --color-foreground-muted: var(--foreground-muted);
+  --color-foreground-subtle: var(--foreground-subtle);
+
+  --color-border: var(--border);
+  --color-border-subtle: var(--border-subtle);
+
   --color-danger: var(--danger);
+  --color-success: var(--success);
+  --color-warning: var(--warning);
+
+  --color-scrim: var(--scrim);
+
   --font-sans: var(--font-geist-sans);
   --font-mono: var(--font-geist-mono);
 }
 
 @media (prefers-color-scheme: dark) {
   :root {
-    --background: #0a0a0a;
-    --foreground: #ededed;
-    /* 임시 값, 디자인 확정 전 */
-    --danger: #f87171;
+    /* 임의 도출 — 정식 다크 시안 확정 시 교체 */
+    --primary: #877aec;
+    --primary-container: #502ef5;
+    --on-primary: #ffffff;
+    --on-primary-container: #e2e0fb;
+    --secondary: #9b92ff;
+
+    --background: #14161b;
+    --surface: #1e2128;
+    --surface-muted: #2c3038;
+
+    --foreground: #f5f7fa;
+    --foreground-muted: #bbc4d8;
+    --foreground-subtle: #8790a3;
+
+    --border: #424752;
+    --border-subtle: #343943;
+
+    --danger: #ff5c5d;
+    --success: #3acb93;
+    --warning: #ffc24d;
+
+    --scrim: rgb(0 0 0 / 0.7);
   }
 }
 
Add a comment
List