/* 
 * Solution Pages Footer Final Fix
 * 솔루션 페이지 푸터 최종 색상 고정
 * 2025년 1월 13일 - 모바일 환경에서 푸터 색상 검은색 문제 해결
 * 
 * 이 파일은 반드시 다른 모든 CSS 파일보다 나중에 로드되어야 합니다.
 */

/* 기본 푸터 스타일 - 모든 환경에서 적용 */
.main-footer,
footer.main-footer,
footer {
    background: #111827 !important;
    background-color: #111827 !important;
    color: #d1d5db !important;
}

/* 푸터 내부 모든 요소 색상 강제 */
.main-footer *,
footer.main-footer *,
footer * {
    background-color: transparent !important;
}

/* 푸터 제목 */
.main-footer .footer-subtitle,
footer .footer-subtitle {
    color: #ffffff !important;
}

/* 푸터 링크 및 텍스트 */
.main-footer .footer-links a,
.main-footer .info-item,
.main-footer .info-item span,
.main-footer .business-list li,
footer .footer-links a,
footer .info-item,
footer .info-item span,
footer .business-list li {
    color: #d1d5db !important;
}

/* 푸터 아이콘 색상 */
.main-footer .info-item i,
footer .info-item i {
    color: #3b82f6 !important;
}

.main-footer .business-list i,
footer .business-list i {
    color: #10b981 !important;
}

/* 저작권 텍스트 */
.main-footer .copyright-text,
.main-footer .copyright-text p,
footer .copyright-text,
footer .copyright-text p {
    color: #d1d5db !important;
}

.main-footer .copyright-sub,
footer .copyright-sub {
    color: #6b7280 !important;
}

/* 링크 호버 효과 */
.main-footer .footer-links a:hover,
footer .footer-links a:hover {
    color: #3b82f6 !important;
}

/* 모바일 환경 - 768px 이하 */
@media (max-width: 768px) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        color: #d1d5db !important;
    }
    
    .main-footer *,
    footer.main-footer *,
    footer * {
        background-color: transparent !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
    
    .main-footer .copyright-text,
    .main-footer .copyright-text p,
    footer .copyright-text,
    footer .copyright-text p {
        color: #d1d5db !important;
    }
    
    .main-footer .copyright-sub,
    footer .copyright-sub {
        color: #6b7280 !important;
    }
}

/* 다크 모드 환경에서도 푸터 색상 유지 */
@media (prefers-color-scheme: dark) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        color: #d1d5db !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
    
    .main-footer .copyright-text,
    .main-footer .copyright-text p,
    footer .copyright-text,
    footer .copyright-text p {
        color: #d1d5db !important;
    }
    
    .main-footer .copyright-sub,
    footer .copyright-sub {
        color: #6b7280 !important;
    }
}

/* 모바일 + 다크 모드 조합 */
@media (max-width: 768px) and (prefers-color-scheme: dark) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        color: #d1d5db !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
    
    .main-footer .copyright-text,
    .main-footer .copyright-text p,
    footer .copyright-text,
    footer .copyright-text p {
        color: #d1d5db !important;
    }
    
    .main-footer .copyright-sub,
    footer .copyright-sub {
        color: #6b7280 !important;
    }
}

/* 매우 작은 모바일 기기 - 640px 이하 */
@media (max-width: 640px) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        color: #d1d5db !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
        font-size: 1.125rem !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
        font-size: 0.875rem !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
}

/* 태블릿 환경 - 641px ~ 1024px */
@media (min-width: 641px) and (max-width: 1024px) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        color: #d1d5db !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
}

/* iOS Safari 특수 처리 */
@supports (-webkit-touch-callout: none) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
        -webkit-appearance: none !important;
    }
    
    .main-footer .footer-subtitle,
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-subtitle,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
        -webkit-text-fill-color: #d1d5db !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
        -webkit-text-fill-color: #ffffff !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
        -webkit-text-fill-color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
        -webkit-text-fill-color: #10b981 !important;
    }
}

/* Android Chrome 특수 처리 */
@media screen and (-webkit-min-device-pixel-ratio: 0) {
    .main-footer,
    footer.main-footer,
    footer {
        background: #111827 !important;
        background-color: #111827 !important;
    }
    
    .main-footer .footer-subtitle,
    footer .footer-subtitle {
        color: #ffffff !important;
    }
    
    .main-footer .footer-links a,
    .main-footer .info-item,
    .main-footer .info-item span,
    .main-footer .business-list li,
    footer .footer-links a,
    footer .info-item,
    footer .info-item span,
    footer .business-list li {
        color: #d1d5db !important;
    }
    
    .main-footer .info-item i,
    footer .info-item i {
        color: #3b82f6 !important;
    }
    
    .main-footer .business-list i,
    footer .business-list i {
        color: #10b981 !important;
    }
}

/* 최우선 순위 강제 적용 - 다른 모든 스타일 덮어쓰기 */
html .main-footer,
html footer.main-footer,
html footer,
body .main-footer,
body footer.main-footer,
body footer {
    background: #111827 !important;
    background-color: #111827 !important;
    color: #d1d5db !important;
}

html .main-footer .footer-subtitle,
html footer .footer-subtitle,
body .main-footer .footer-subtitle,
body footer .footer-subtitle {
    color: #ffffff !important;
}

html .main-footer .info-item i,
html footer .info-item i,
body .main-footer .info-item i,
body footer .info-item i {
    color: #3b82f6 !important;
}

html .main-footer .business-list i,
html footer .business-list i,
body .main-footer .business-list i,
body footer .business-list i {
    color: #10b981 !important;
}

html .main-footer .footer-links a,
html .main-footer .info-item,
html .main-footer .info-item span,
html .main-footer .business-list li,
html footer .footer-links a,
html footer .info-item,
html footer .info-item span,
html footer .business-list li,
body .main-footer .footer-links a,
body .main-footer .info-item,
body .main-footer .info-item span,
body .main-footer .business-list li,
body footer .footer-links a,
body footer .info-item,
body footer .info-item span,
body footer .business-list li {
    color: #d1d5db !important;
}
