refactor: 전체 프론트엔드 하드코딩 색상 → CSS 변수 일괄 치환

447+ 파일, 4500+ 줄 변경:
- gray-* → border/bg-muted/text-foreground/text-muted-foreground
- blue-* → primary/ring
- red-* → destructive
- green-* → emerald (일관성)
- indigo-* → primary
- yellow/orange → amber (통일)
- dark mode 변형도 시맨틱 토큰으로 변환

Made-with: Cursor
This commit is contained in:
DDD1542
2026-03-09 14:31:59 +09:00
parent d967cf0a0d
commit 4f10b5e42d
447 changed files with 4520 additions and 4520 deletions

View File

@@ -1131,7 +1131,7 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
<FileSpreadsheet className="h-5 w-5" />
{isMasterDetail && (
<span className="ml-2 rounded bg-blue-100 px-2 py-0.5 text-xs font-normal text-blue-700">
<span className="ml-2 rounded bg-primary/10 px-2 py-0.5 text-xs font-normal text-primary">
-
</span>
)}
@@ -1322,15 +1322,15 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
isDragOver
? "border-primary bg-primary/5"
: file
? "border-green-500 bg-green-50"
? "border-emerald-500 bg-emerald-50"
: "border-muted-foreground/25 hover:border-primary hover:bg-muted/50"
)}
>
{file ? (
<div className="flex items-center gap-3">
<FileSpreadsheet className="h-8 w-8 text-green-600" />
<FileSpreadsheet className="h-8 w-8 text-emerald-600" />
<div>
<p className="text-sm font-medium text-green-700">{file.name}</p>
<p className="text-sm font-medium text-emerald-700">{file.name}</p>
<p className="text-xs text-muted-foreground">
</p>
@@ -1561,11 +1561,11 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
{/* 중복 체크 안내 */}
{duplicateCheckCount > 0 ? (
<div className="rounded-md border border-blue-200 bg-blue-50 p-3">
<div className="rounded-md border border-primary/20 bg-primary/10 p-3">
<div className="flex items-start justify-between gap-4">
<div className="flex items-start gap-2">
<Copy className="mt-0.5 h-4 w-4 text-blue-600" />
<div className="text-[10px] text-blue-700 sm:text-xs">
<Copy className="mt-0.5 h-4 w-4 text-primary" />
<div className="text-[10px] text-primary sm:text-xs">
<p className="font-medium">
: {columnMappings
.filter((m) => m.checkDuplicate && m.systemColumn)
@@ -1581,12 +1581,12 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
</div>
</div>
<div className="flex items-center gap-2 shrink-0">
<span className="text-[10px] text-blue-700 sm:text-xs"> :</span>
<span className="text-[10px] text-primary sm:text-xs"> :</span>
<Select
value={duplicateAction}
onValueChange={(value) => setDuplicateAction(value as "overwrite" | "skip")}
>
<SelectTrigger className="h-7 w-[100px] text-[10px] sm:text-xs border-blue-300 bg-white">
<SelectTrigger className="h-7 w-[100px] text-[10px] sm:text-xs border-primary/40 bg-white">
<SelectValue />
</SelectTrigger>
<SelectContent>
@@ -1686,7 +1686,7 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
<span className="font-medium">{mapping.excelColumn}</span> {" "}
{col?.label || mapping.systemColumn}
{mapping.checkDuplicate && (
<span className="ml-2 text-blue-600">
<span className="ml-2 text-primary">
( : {mapping.duplicateAction === "overwrite" ? "덮어쓰기" : "건너뛰기"})
</span>
)}
@@ -1701,9 +1701,9 @@ export const ExcelUploadModal: React.FC<ExcelUploadModalProps> = ({
{/* 중복 체크 요약 */}
{duplicateCheckCount > 0 && (
<div className="rounded-md border border-blue-200 bg-blue-50 p-4">
<h3 className="text-sm font-medium text-blue-800 sm:text-base"> </h3>
<div className="mt-2 space-y-1 text-[10px] text-blue-700 sm:text-xs">
<div className="rounded-md border border-primary/20 bg-primary/10 p-4">
<h3 className="text-sm font-medium text-primary sm:text-base"> </h3>
<div className="mt-2 space-y-1 text-[10px] text-primary sm:text-xs">
<p>
<span className="font-medium"> :</span>{" "}
{columnMappings