/* ==========================================================
   마케팅랩 Clean Design Override (2026-05-02)
   목적: 기존 CSS 충돌 무력화 + 깔끔한 화이트 베이스 + 단일 톤
   로드 순서: style.css → style-v2.css → extra.css → features.css → style-clean.css(마지막)
   ========================================================== */

:root {
    --mc-primary: #2563eb;
    --mc-primary-hover: #1d4ed8;
    --mc-primary-soft: #eff6ff;
    --mc-primary-tint: #dbeafe;
    --mc-text: #111827;
    --mc-text-2: #4b5563;
    --mc-text-3: #9ca3af;
    --mc-bg: #f8fafc;
    --mc-surface: #ffffff;
    --mc-border: #e5e7eb;
    --mc-border-soft: #f1f5f9;
    --mc-radius: 10px;
    --mc-radius-lg: 14px;
    --mc-shadow: 0 1px 3px rgba(15, 23, 42, 0.06);
    --mc-shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08);
    --mc-font: 'Pretendard Variable', Pretendard, -apple-system, BlinkMacSystemFont,
        system-ui, 'Apple SD Gothic Neo', 'Noto Sans KR', sans-serif;
}

/* === Global ============================================== */
html, body {
    font-family: var(--mc-font) !important;
    color: var(--mc-text) !important;
    background: var(--mc-bg) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
* { box-sizing: border-box; }

h1, h2, h3, h4, h5, h6 {
    font-family: var(--mc-font) !important;
    color: var(--mc-text) !important;
    letter-spacing: -0.018em !important;
    font-weight: 700 !important;
}

a { transition: color .15s ease; }
a:hover { text-decoration: none !important; }

/* === Top utility bar (간소화) ============================= */
.top-bar, .header-top {
    font-size: 12.5px !important;
    border-bottom: 1px solid var(--mc-border) !important;
}

/* === Main Header ========================================= */
.header-main, .site-header {
    background: var(--mc-surface) !important;
    border-bottom: 1px solid var(--mc-border) !important;
    box-shadow: none !important;
}

/* === Nav (sticky) ======================================== */
.nav-main, .main-nav {
    background: var(--mc-surface) !important;
    border-bottom: 1px solid var(--mc-border) !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.02) !important;
}
.nav-link {
    color: var(--mc-text-2) !important;
    font-weight: 600 !important;
    border-bottom: 2px solid transparent !important;
    transition: color .15s, border-color .15s, background .15s !important;
}
.nav-link:hover {
    color: var(--mc-primary) !important;
    background: var(--mc-primary-soft) !important;
}
.nav-item.active > .nav-link, .nav-link.active {
    color: var(--mc-primary) !important;
    border-bottom-color: var(--mc-primary) !important;
}
.nav-dropdown {
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    box-shadow: var(--mc-shadow-md) !important;
    padding: 8px !important;
}
.nav-dropdown li a {
    border-radius: 6px !important;
    color: var(--mc-text) !important;
    padding: 9px 12px !important;
}
.nav-dropdown li a:hover {
    background: var(--mc-primary-soft) !important;
    color: var(--mc-primary) !important;
}

/* === Buttons (단일 톤) =================================== */
.btn, button.btn {
    font-family: var(--mc-font) !important;
    border-radius: 8px !important;
    font-weight: 600 !important;
    border: 1.5px solid transparent !important;
    transition: background .15s, border-color .15s, color .15s, transform .1s !important;
}
.btn-primary {
    background: var(--mc-primary) !important;
    color: #fff !important;
    border-color: var(--mc-primary) !important;
    box-shadow: none !important;
}
.btn-primary:hover {
    background: var(--mc-primary-hover) !important;
    border-color: var(--mc-primary-hover) !important;
    color: #fff !important;
    transform: translateY(-1px);
}
.btn-outline, .btn-outline-primary {
    background: transparent !important;
    color: var(--mc-primary) !important;
    border-color: var(--mc-primary) !important;
}
.btn-outline:hover {
    background: var(--mc-primary) !important;
    color: #fff !important;
}
.btn-secondary, .btn-default {
    background: var(--mc-bg) !important;
    color: var(--mc-text) !important;
    border-color: var(--mc-border) !important;
}

/* === 카드/박스 통일 ====================================== */
.card, .panel, .box,
.combined-section, .category-card, .realtime-card,
.tool-card, .quick-link-card, .partner-card,
.sidebar-widget, .widget,
.content-card, .ranked-card,
.stat-card, .info-card {
    background: var(--mc-surface) !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    box-shadow: var(--mc-shadow) !important;
    transition: border-color .15s, box-shadow .15s, transform .15s !important;
}
.card:hover, .tool-card:hover, .quick-link-card:hover, .partner-card:hover,
.category-card:hover {
    border-color: var(--mc-primary-tint) !important;
    box-shadow: var(--mc-shadow-md) !important;
}

/* === 슬라이더/히어로 톤 다운 ============================= */
.hero-slider, .hero-banner, .main-slider {
    border-radius: var(--mc-radius-lg) !important;
    overflow: hidden !important;
    margin: 16px auto !important;
    box-shadow: var(--mc-shadow) !important;
}
.slide-bg, .slide {
    /* 기존 그라데이션을 단순 단색으로 */
    background-image: none !important;
}
.slide-bg-purple, .slide-bg-blue, .slide-bg-indigo {
    background: linear-gradient(135deg, #2563eb 0%, #4f46e5 100%) !important;
}
.slide-bg-orange, .slide-bg-red {
    background: linear-gradient(135deg, #ea580c 0%, #db2777 100%) !important;
}
.slide-bg-green, .slide-bg-teal {
    background: linear-gradient(135deg, #059669 0%, #0891b2 100%) !important;
}
.slide-text h2, .hero-banner h2 {
    color: #fff !important;
    font-size: 28px !important;
    line-height: 1.35 !important;
}
.slide-text p, .hero-banner p { color: rgba(255,255,255,0.92) !important; }

/* === 섹션 헤더 ========================================== */
.section-header, .partners-header, .tools-showcase-header {
    margin-bottom: 18px !important;
    padding: 0 4px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
}
.section-header h2, .partners-title h2 {
    font-size: 19px !important;
    font-weight: 700 !important;
    margin: 0 !important;
}

/* === 게시판 리스트 행 정리 ============================== */
.ranked-list li, .post-list li, .board-list li,
.category-list li, .realtime-list li {
    border-bottom: 1px solid var(--mc-border-soft) !important;
    padding: 10px 16px !important;
    font-size: 13.5px !important;
}
.ranked-list li:last-child, .post-list li:last-child { border-bottom: 0 !important; }
.board-label, .post-board-tag, .category-tag {
    background: var(--mc-primary-soft) !important;
    color: var(--mc-primary) !important;
    border-radius: 4px !important;
    padding: 2px 8px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    border: 0 !important;
}
.rank-num {
    background: var(--mc-bg) !important;
    color: var(--mc-text-2) !important;
    border-radius: 4px !important;
    width: 22px !important; height: 22px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
}
.rank-num.top, .rank-num.hot { background: var(--mc-primary) !important; color: #fff !important; }

/* === 탭 ================================================== */
.tab-btn, .tab-button {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2.5px solid transparent !important;
    color: var(--mc-text-3) !important;
    font-weight: 600 !important;
    padding: 12px 16px !important;
}
.tab-btn:hover { color: var(--mc-text-2) !important; }
.tab-btn.active {
    color: var(--mc-primary) !important;
    border-bottom-color: var(--mc-primary) !important;
}

/* === 라이브 상태 바 ===================================== */
.live-status-bar, .stats-bar, .footer-stats-bar {
    background: var(--mc-surface) !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    box-shadow: var(--mc-shadow) !important;
}

/* === 파트너 카드 깔끔화 ================================= */
.business-partners-section, .partners-section { margin: 24px 0 !important; }
.partners-grid { gap: 14px !important; }
.partner-card {
    background: var(--mc-surface) !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 18px !important;
    box-shadow: var(--mc-shadow) !important;
}
.partner-category {
    background: var(--mc-bg) !important;
    border: 1px solid var(--mc-border) !important;
    color: var(--mc-text-2) !important;
    border-radius: 999px !important;
    padding: 3px 10px !important;
    font-size: 11.5px !important;
    font-weight: 600 !important;
}
.partner-name { font-size: 15px !important; margin: 6px 0 !important; }
.partner-desc {
    color: var(--mc-text-2) !important;
    font-size: 12.5px !important;
    line-height: 1.5 !important;
}
.partner-badge {
    background: #fef3c7 !important;
    color: #92400e !important;
    border-radius: 4px !important;
    padding: 2px 8px !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}

/* === 좌측 사이드바 (배너 비활성화로 비어있음) ============ */
.left-sidebar, .left_sidebar, aside.left-side {
    display: none !important;
}

/* === Footer 톤 다운 ===================================== */
.site-footer, footer.site-footer {
    background: #0f172a !important;
    color: #cbd5e1 !important;
    padding: 36px 0 22px !important;
}
.site-footer h4 { color: #fff !important; font-size: 13.5px !important; }
.site-footer a { color: #cbd5e1 !important; font-size: 13px !important; }
.site-footer a:hover { color: #fff !important; }

/* === 스크롤탑 버튼 ====================================== */
.scroll-top-btn, #scrollTopBtn {
    background: var(--mc-primary) !important;
    color: #fff !important;
    border: 0 !important;
    box-shadow: var(--mc-shadow-md) !important;
    border-radius: 50% !important;
    width: 44px !important; height: 44px !important;
}

/* === 폼 요소 ============================================ */
input[type=text], input[type=email], input[type=password],
input[type=number], input[type=search], input[type=tel],
textarea, select, .form-control {
    border: 1.5px solid var(--mc-border) !important;
    border-radius: 8px !important;
    background: var(--mc-surface) !important;
    color: var(--mc-text) !important;
    font-family: var(--mc-font) !important;
    transition: border-color .15s, box-shadow .15s !important;
}
input:focus, textarea:focus, select:focus, .form-control:focus {
    border-color: var(--mc-primary) !important;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.1) !important;
    outline: 0 !important;
}

/* === 검색 상자 (헤더) =================================== */
.search-form, .header-search-form {
    border: 1.5px solid var(--mc-border) !important;
    border-radius: 10px !important;
    background: var(--mc-bg) !important;
    overflow: hidden !important;
}
.search-form:focus-within {
    border-color: var(--mc-primary) !important;
    background: var(--mc-surface) !important;
}
.search-btn { background: var(--mc-primary) !important; color: #fff !important; border: 0 !important; }
.search-btn:hover { background: var(--mc-primary-hover) !important; }

/* === 컨테이너 너비 통일 ================================= */
.container, .wrap, .main-container {
    max-width: 1240px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
}

/* === 광고/배너 영역 시각적 정리 ========================== */
.ad-banner, .top-banner, .footer-banner-section,
.banner-grid .banner-item {
    border-radius: var(--mc-radius) !important;
    overflow: hidden !important;
}
.banner-placeholder, .banner-placeholder-wide {
    background: var(--mc-bg) !important;
    color: var(--mc-text-3) !important;
    border: 1px dashed var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
}

/* === 인라인 스타일 무력화 (지나친 색상/그라데이션 제거) ====
   주의: !important로도 인라인 style은 못 막지만,
   class를 통한 color 오버라이드는 작동
*/
[style*="background:linear-gradient"]:not(.slide-bg):not(.tool-icon):not(.btn) {
    /* 그라데이션 배경은 슬라이드/도구 아이콘/버튼에만 */
}

/* === 기타 깨질 요소 정리 ================================ */
section + section { margin-top: 24px !important; }

/* === 모바일 ============================================== */
@media (max-width: 768px) {
    .container, .wrap { padding: 0 12px !important; }
    .slide-text h2, .hero-banner h2 { font-size: 22px !important; }
    .partners-grid, .tools-grid, .category-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 10px !important;
    }
    .partner-card, .tool-card { padding: 14px !important; }
}

/* ==========================================================
   GLOBAL EXPANSION (2026-05 v2)
   게시판 / 폼 / 도구 / 푸터 / 사이드바 통합 톤
   ========================================================== */

/* === 게시판 리스트 페이지 ============================== */
.board-list-wrap, .post-list-wrap, .board-container {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    box-shadow: var(--mc-shadow) !important;
    padding: 0 !important;
    overflow: hidden !important;
}
.board-list-header, .post-list-header, .board-header {
    padding: 18px 22px !important;
    border-bottom: 1px solid var(--mc-border) !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
}
.board-list-header h1, .board-list-header h2, .board-header h1, .board-header h2 {
    font-size: 20px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    letter-spacing: -0.015em !important;
}

/* 게시판 글 행 */
table.post-table, table.board-table, .post-list table {
    width: 100% !important;
    border-collapse: collapse !important;
    font-size: 13.5px !important;
}
table.post-table thead, table.board-table thead, .post-list thead {
    background: #f8fafc !important;
}
table.post-table th, table.board-table th, .post-list th {
    padding: 11px 14px !important;
    border-bottom: 1px solid var(--mc-border) !important;
    color: var(--mc-text-2) !important;
    font-weight: 600 !important;
    font-size: 12.5px !important;
    text-align: left !important;
}
table.post-table td, table.board-table td, .post-list td {
    padding: 12px 14px !important;
    border-bottom: 1px solid var(--mc-border-soft) !important;
    color: var(--mc-text) !important;
}
table.post-table tr:hover td, table.board-table tr:hover td, .post-list tr:hover td {
    background: #f8fafc !important;
}
.post-title, .post-row .title, td.title a {
    color: var(--mc-text) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}
.post-title:hover, .post-row .title:hover, td.title a:hover {
    color: var(--mc-primary) !important;
}
.post-row .meta, .post-meta {
    color: var(--mc-text-3) !important;
    font-size: 12px !important;
}

/* 게시글 view 페이지 */
.post-view, .post-detail, .view-container, article.post {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 28px 32px !important;
    box-shadow: var(--mc-shadow) !important;
}
.post-view h1, .post-detail h1, .post-title-main {
    font-size: 24px !important;
    font-weight: 700 !important;
    margin: 0 0 12px !important;
    letter-spacing: -0.015em !important;
    line-height: 1.4 !important;
}
.post-info-bar, .post-meta-bar {
    display: flex !important;
    gap: 14px !important;
    align-items: center !important;
    padding: 12px 0 18px !important;
    border-bottom: 1px solid var(--mc-border) !important;
    margin-bottom: 24px !important;
    color: var(--mc-text-2) !important;
    font-size: 13px !important;
}
.post-content, .view-content {
    line-height: 1.75 !important;
    font-size: 15px !important;
    color: var(--mc-text) !important;
    padding: 16px 0 !important;
}

/* 댓글 영역 */
.comment-section, .comments-wrap {
    margin-top: 28px !important;
    border-top: 1px solid var(--mc-border) !important;
    padding-top: 24px !important;
}
.comment-item, .comment {
    padding: 14px 0 !important;
    border-bottom: 1px solid var(--mc-border-soft) !important;
}
.comment-author { font-weight: 600 !important; color: var(--mc-text) !important; font-size: 13.5px !important; }
.comment-date, .comment-time { color: var(--mc-text-3) !important; font-size: 11.5px !important; }
.comment-content { color: var(--mc-text) !important; font-size: 13.5px !important; line-height: 1.6 !important; margin-top: 6px !important; }

/* === 페이징 =========================================== */
.pagination, .paging, .pager {
    display: flex !important; gap: 4px !important;
    justify-content: center !important;
    margin: 24px 0 !important;
}
.pagination a, .pagination span, .paging a, .paging span {
    min-width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 10px !important;
    border-radius: 8px !important;
    border: 1px solid var(--mc-border) !important;
    background: #fff !important;
    color: var(--mc-text-2) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all .15s !important;
}
.pagination a:hover, .paging a:hover {
    border-color: var(--mc-primary) !important;
    color: var(--mc-primary) !important;
    background: var(--mc-primary-soft) !important;
}
.pagination .active, .pagination .current, .paging .active, .paging .current {
    background: var(--mc-primary) !important;
    color: #fff !important;
    border-color: var(--mc-primary) !important;
}

/* === 글쓰기/폼 페이지 ================================= */
.write-form, .form-wrap, .auth-form, form.post-form {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 28px 32px !important;
    box-shadow: var(--mc-shadow) !important;
}
.form-group, .field-group {
    margin-bottom: 18px !important;
}
.form-group label, .field-group label {
    display: block !important;
    margin-bottom: 6px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--mc-text-2) !important;
}

/* 로그인/회원가입 */
.login-wrap, .register-wrap, .auth-container {
    max-width: 440px !important;
    margin: 60px auto !important;
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius-lg) !important;
    padding: 36px 36px !important;
    box-shadow: var(--mc-shadow-md) !important;
}
.login-wrap h1, .register-wrap h1, .auth-container h1, .auth-container h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    text-align: center !important;
    margin-bottom: 24px !important;
    letter-spacing: -0.015em !important;
}

/* === 도구 페이지 헤더 ================================== */
.tool-page-header {
    background: linear-gradient(135deg, #eff6ff 0%, #f5f3ff 100%) !important;
    border-radius: var(--mc-radius-lg) !important;
    padding: 36px 32px !important;
    margin-bottom: 28px !important;
    text-align: center !important;
}
.tool-page-header h1, .tool-page-header h2 {
    font-size: 26px !important;
    font-weight: 800 !important;
    margin: 0 0 8px !important;
    color: var(--mc-text) !important;
    letter-spacing: -0.025em !important;
}
.tool-page-header p {
    color: var(--mc-text-2) !important;
    font-size: 14.5px !important;
    margin: 0 !important;
}

/* === 사이드바 위젯 ===================================== */
.sidebar-widget, aside .widget, .right-sidebar > div {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 0 !important;
    margin-bottom: 14px !important;
    box-shadow: var(--mc-shadow) !important;
    overflow: hidden !important;
}
.sidebar-widget h3, aside .widget h3, .widget-title {
    background: #fff !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid var(--mc-border) !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    margin: 0 !important;
}
.sidebar-widget ul, aside .widget ul { padding: 6px 0 !important; margin: 0 !important; list-style: none !important; }
.sidebar-widget ul li, aside .widget ul li {
    padding: 8px 16px !important;
    font-size: 12.5px !important;
    border-bottom: 1px solid var(--mc-border-soft) !important;
}
.sidebar-widget ul li:last-child, aside .widget ul li:last-child { border-bottom: 0 !important; }

/* === 푸터 정리 ========================================= */
.site-footer {
    background: #0f172a !important;
    color: #94a3b8 !important;
    padding: 40px 0 24px !important;
    margin-top: 60px !important;
    font-size: 13px !important;
}
.site-footer .container, .site-footer .wrap { padding: 0 20px !important; }
.footer-top {
    display: grid !important;
    grid-template-columns: 1.4fr 3fr !important;
    gap: 40px !important;
    padding-bottom: 28px !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
@media (max-width: 768px) { .footer-top { grid-template-columns: 1fr !important; gap: 24px !important; } }
.footer-brand { max-width: 320px; }
.footer-logo {
    display: flex !important; align-items: center !important; gap: 8px !important;
    color: #fff !important;
    font-size: 18px !important; font-weight: 800 !important;
    margin-bottom: 12px !important;
}
.footer-logo i { color: #6366f1 !important; }
.footer-description {
    color: #94a3b8 !important;
    font-size: 12.5px !important;
    line-height: 1.6 !important;
    margin: 0 0 16px !important;
}
.footer-social { display: flex !important; gap: 8px !important; }
.footer-social a {
    width: 32px !important; height: 32px !important;
    background: rgba(255,255,255,0.06) !important;
    color: #cbd5e1 !important;
    border-radius: 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all .15s !important;
}
.footer-social a:hover {
    background: var(--mc-primary) !important;
    color: #fff !important;
    transform: translateY(-1px);
}

.footer-nav {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr)) !important;
    gap: 24px !important;
}
.footer-nav-column h4 {
    color: #fff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    margin-bottom: 12px !important;
    letter-spacing: 0.02em !important;
}
.footer-nav-column h4 i { color: #6366f1 !important; margin-right: 4px !important; font-size: 11px !important; }
.footer-nav-column ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }
.footer-nav-column ul li { padding: 4px 0 !important; }
.footer-nav-column ul li a {
    color: #94a3b8 !important;
    font-size: 12.5px !important;
    text-decoration: none !important;
    transition: color .15s !important;
}
.footer-nav-column ul li a:hover { color: #fff !important; }

.footer-stats-bar {
    display: flex !important;
    gap: 22px !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.08) !important;
    flex-wrap: wrap !important;
}
.footer-stats-bar .stat-item {
    display: flex !important; align-items: center !important; gap: 6px !important;
    font-size: 12px !important; color: #94a3b8 !important;
}
.footer-stats-bar .stat-item i { color: #6366f1 !important; font-size: 13px !important; }
.footer-stats-bar .stat-item strong { color: #fff !important; font-weight: 700 !important; margin-left: 2px; }

.footer-business {
    padding: 14px 0 !important;
    font-size: 11.5px !important;
    color: rgba(148, 163, 184, 0.7) !important;
    line-height: 1.7 !important;
}
.footer-business strong { color: rgba(255, 255, 255, 0.75) !important; }

.footer-bottom {
    padding: 14px 0 0 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    font-size: 11.5px !important;
}
.footer-copyright p { margin: 0 !important; color: #94a3b8 !important; }
.footer-links-bottom { display: flex !important; gap: 12px !important; align-items: center !important; }
.footer-links-bottom a { color: #94a3b8 !important; text-decoration: none !important; }
.footer-links-bottom a:hover { color: #fff !important; }
.footer-links-bottom .highlight { color: #fff !important; font-weight: 600 !important; }
.footer-links-bottom .divider { color: rgba(148, 163, 184, 0.3) !important; }

/* 푸터 배너 영역 비활성화 (광고 정리) */
.footer-banner-section { display: none !important; }

/* === 알림/모달 ========================================== */
.alert {
    padding: 12px 16px !important;
    border-radius: var(--mc-radius) !important;
    font-size: 13.5px !important;
    margin-bottom: 16px !important;
    border: 1px solid !important;
}
.alert-success { background: #ecfdf5 !important; color: #065f46 !important; border-color: #a7f3d0 !important; }
.alert-error, .alert-danger { background: #fef2f2 !important; color: #991b1b !important; border-color: #fecaca !important; }
.alert-warning { background: #fffbeb !important; color: #92400e !important; border-color: #fde68a !important; }
.alert-info { background: var(--mc-primary-soft) !important; color: #1e40af !important; border-color: #bfdbfe !important; }

.modal-content {
    background: #fff !important;
    border-radius: var(--mc-radius-lg) !important;
    box-shadow: 0 20px 60px rgba(15, 23, 42, 0.2) !important;
    border: 0 !important;
}

/* === 마이페이지 / 프로필 =============================== */
.mypage-wrap, .profile-wrap, .user-page {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 28px !important;
    box-shadow: var(--mc-shadow) !important;
}

/* === 사이드 / 광고 영역 정리 =========================== */
.left-side, .left-sidebar, .left_sidebar,
.banner-grid:has(.banner-item.left-banner),
.partners-aside, .promo-aside { display: none !important; }

/* === 콘텐츠 페이지 (가이드/뉴스/사례/사전) ============== */
.content-page-wrap { max-width: 1080px !important; margin: 0 auto !important; }
.content-card, .guide-item, .news-item, .case-item, .dict-item {
    background: #fff !important;
    border: 1px solid var(--mc-border) !important;
    border-radius: var(--mc-radius) !important;
    padding: 22px !important;
    margin-bottom: 14px !important;
    box-shadow: var(--mc-shadow) !important;
    transition: all .15s !important;
}
.content-card:hover, .guide-item:hover, .news-item:hover, .case-item:hover {
    border-color: #93c5fd !important;
    box-shadow: var(--mc-shadow-md) !important;
    transform: translateY(-2px);
}

/* === 스크롤바 디자인 (선택) ============================= */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: #f1f5f9; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* === 텍스트 선택 ======================================== */
::selection { background: rgba(37, 99, 235, 0.2); color: var(--mc-text); }

/* === 버튼 라이트 보강 =================================== */
.btn-icon, button.icon-btn {
    background: transparent !important;
    border: 1px solid var(--mc-border) !important;
    color: var(--mc-text-2) !important;
    border-radius: 8px !important;
    width: 36px !important; height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    transition: all .15s !important;
}
.btn-icon:hover, button.icon-btn:hover {
    background: var(--mc-primary-soft) !important;
    color: var(--mc-primary) !important;
    border-color: var(--mc-primary) !important;
}

/* === 빈 상태 ============================================ */
.empty-state, .no-data, .no-result {
    text-align: center !important;
    padding: 60px 20px !important;
    color: var(--mc-text-3) !important;
    font-size: 14px !important;
}
.empty-state i, .no-data i { font-size: 36px !important; opacity: 0.5; margin-bottom: 10px !important; display: block !important; }

/* ==========================================================
   FIX 2026-05-02 045858 (스크린샷 피드백 반영)
   ========================================================== */

/* 1) Hero 텍스트 색상 강제 (글로벌 h1 다크색 오버라이드) */
.ml-hero h1, .ml-hero h2, .ml-hero h3, .ml-hero h4 {
    color: #fff !important;
}
.ml-hero h1 .grad {
    background: linear-gradient(90deg, #a78bfa 0%, #60a5fa 50%, #34d399 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}
.ml-hero p, .ml-hero a, .ml-hero span, .ml-hero strong,
.ml-hero .label, .ml-hero .num, .ml-hero .item-text,
.ml-hero .head, .ml-hero .text { color: inherit; }
.ml-float-card, .ml-float-card * {
    color: #fff;
}
.ml-float-card .label, .ml-float-card .head, .ml-float-card .item-text {
    color: rgba(226, 232, 240, 0.85) !important;
}
.ml-float-card strong { color: #fff !important; }
.ml-hero p { color: rgba(226, 232, 240, 0.85) !important; }

/* 2) 카카오톡 채널 플로팅 — 더 작고 차분하게, 모바일에서만 강조 */
.kakao-channel-float {
    width: 48px !important;
    height: 48px !important;
    bottom: 24px !important;
    right: 24px !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.15) !important;
    opacity: 0.92 !important;
    transition: opacity .15s, transform .15s !important;
}
.kakao-channel-float:hover {
    opacity: 1 !important;
    transform: scale(1.08) !important;
}
.kakao-channel-float .kakao-icon {
    width: 22px !important;
    height: 22px !important;
}

/* 3) 도구 그리드 — 한 줄 4개 일관성 (뜬구름 갯수 정리) */
.ml-tools-grid {
    grid-template-columns: repeat(4, 1fr) !important;
}
@media (max-width: 1024px) { .ml-tools-grid { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 640px)  { .ml-tools-grid { grid-template-columns: repeat(2, 1fr) !important; } }

/* 4) Hero h1 안의 strong, 가독성 보정 */
.ml-hero-badge strong { color: #fff !important; }
.ml-hero-meta strong { color: #fff !important; }

/* 5) Hero 떠있는 카드의 통계 num — 그라디언트 안정화 */
.ml-float-stats .num {
    background: linear-gradient(135deg, #fff 0%, #c7d2fe 100%) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    color: transparent !important;
}

/* 6) 인기/최신글 좌측 숫자 칩(1,2,3) 가독성 */
.ml-list .ml-tag {
    min-width: 22px;
    height: 22px;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}
