html.dark {
    color-scheme: dark;
}

body {
    transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease;
}

.dark body {
    background-color: #0f172a !important;
    color: #e5e7eb;
}

.dark .bg-white {
    background-color: #111827 !important;
}

.dark .bg-gray-50 {
    background-color: #0f172a !important;
}

.dark .bg-gray-100 {
    background-color: #111827 !important;
}

.dark .bg-green-50 {
    background-color: rgba(20, 83, 45, 0.3) !important;
}

.dark .bg-blue-50 {
    background-color: rgba(30, 58, 138, 0.28) !important;
}

.dark .bg-purple-50 {
    background-color: rgba(88, 28, 135, 0.28) !important;
}

.dark .bg-orange-50 {
    background-color: rgba(124, 45, 18, 0.28) !important;
}

.dark .bg-red-50 {
    background-color: rgba(127, 29, 29, 0.28) !important;
}

.dark .bg-amber-50 {
    background-color: rgba(120, 53, 15, 0.28) !important;
}

.dark .bg-indigo-50 {
    background-color: rgba(49, 46, 129, 0.28) !important;
}

.dark .bg-sky-50 {
    background-color: rgba(12, 74, 110, 0.28) !important;
}

.dark .bg-teal-50 {
    background-color: rgba(17, 94, 89, 0.28) !important;
}

.dark .bg-cyan-50 {
    background-color: rgba(21, 94, 117, 0.28) !important;
}

.dark .bg-emerald-50 {
    background-color: rgba(6, 78, 59, 0.28) !important;
}

.dark .bg-violet-50 {
    background-color: rgba(76, 29, 149, 0.28) !important;
}

.dark .bg-rose-50 {
    background-color: rgba(136, 19, 55, 0.28) !important;
}

.dark .text-gray-800 {
    color: #f8fafc !important;
}

.dark .text-gray-700 {
    color: #e5e7eb !important;
}

.dark .text-gray-600 {
    color: #cbd5e1 !important;
}

.dark .text-gray-500,
.dark .text-gray-400 {
    color: #94a3b8 !important;
}

.dark .border-gray-100,
.dark .border-gray-200,
.dark .border-gray-300,
.dark .border-gray-700,
.dark .border-green-100,
.dark .border-green-200,
.dark .border-blue-100,
.dark .border-purple-100,
.dark .border-orange-100,
.dark .border-red-100,
.dark .border-amber-100,
.dark .border-indigo-100,
.dark .border-sky-100,
.dark .border-teal-100,
.dark .border-rose-100 {
    border-color: #334155 !important;
}

.dark .shadow-sm,
.dark .shadow-md,
.dark .shadow-lg {
    box-shadow: 0 20px 40px rgba(2, 6, 23, 0.35) !important;
}

.dark .prose h2 {
    color: #f8fafc !important;
}

.dark .prose h3 {
    color: #e5e7eb !important;
}

.dark .prose p,
.dark .prose ul,
.dark .prose ol {
    color: #cbd5e1 !important;
}

.dark .prose strong {
    color: #f8fafc !important;
}

.dark .tip-box {
    background: rgba(21, 128, 61, 0.18) !important;
    border-left-color: #4ade80 !important;
}

.dark .tip-box p {
    color: #bbf7d0 !important;
}

.dark .tip-box strong {
    color: #dcfce7 !important;
}

.dark .warn-box {
    background: rgba(146, 64, 14, 0.22) !important;
    border-left-color: #f59e0b !important;
}

.dark .warn-box p {
    color: #fcd34d !important;
}

.dark .warn-box strong {
    color: #fde68a !important;
}

.dark .info-box {
    background: rgba(30, 64, 175, 0.22) !important;
    border-left-color: #60a5fa !important;
}

.dark .info-box p {
    color: #dbeafe !important;
}

.dark .info-box strong {
    color: #bfdbfe !important;
}

/* 다크모드 컬러 텍스트 — 카드 뱃지, 링크, 카테고리 라벨 */
.dark .text-green-600,
.dark .text-green-700 { color: #4ade80 !important; }

.dark .text-blue-600,
.dark .text-blue-700 { color: #60a5fa !important; }

.dark .text-purple-600,
.dark .text-purple-700 { color: #c084fc !important; }

.dark .text-amber-600,
.dark .text-amber-700 { color: #fbbf24 !important; }

.dark .text-orange-600,
.dark .text-orange-700 { color: #fb923c !important; }

.dark .text-teal-600,
.dark .text-teal-700 { color: #2dd4bf !important; }

.dark .text-red-600,
.dark .text-red-700 { color: #f87171 !important; }

.dark .text-indigo-600,
.dark .text-indigo-700 { color: #818cf8 !important; }

.dark .text-sky-600,
.dark .text-sky-700 { color: #38bdf8 !important; }

.dark .text-rose-600,
.dark .text-rose-700 { color: #fb7185 !important; }

.dark .text-emerald-600,
.dark .text-emerald-700 { color: #34d399 !important; }

.dark .text-violet-600,
.dark .text-violet-700 { color: #a78bfa !important; }

.dark .text-cyan-600,
.dark .text-cyan-700 { color: #22d3ee !important; }

.dark .text-lime-600,
.dark .text-lime-700 { color: #a3e635 !important; }
