/* =========================================
   [Trip-Solve] HenryPress 스타일 모던/그리드 CSS
   - 홈 화면: PC 2단 그리드 & 모던 엣지 카드
   - 게시물 본문: 가독성(크기, 여백) 유지 + 글자색 강제 해제
   - 모바일: 꽉 찬 화면 유지 + 인체공학적 줄간격
========================================= */

/* -----------------------------------------
   1. 글로벌 세팅: 폰트 & 오프화이트 배경
----------------------------------------- */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");

body, h1, h2, h3, h4, h5, h6, p, a, span, li, div {
    font-family: "Pretendard Variable", Pretendard, -apple-system, system-ui, Roboto, sans-serif !important;
}
body { background-color: #f8fafc !important; }

/* -----------------------------------------
   2. 상단 헤더 (미니멀 & 칼각 라인)
----------------------------------------- */
.site-header {
    background-color: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(10px);
    border-bottom: 1px solid #e2e8f0; 
    position: sticky; top: 0; z-index: 9999;
}
.main-navigation, .main-navigation ul ul { background-color: transparent !important; }
.main-navigation .main-nav ul li a {
    color: #0f172a !important; font-weight: 600; letter-spacing: -0.01em; 
    background: transparent !important; transition: color 0.3s ease;
}
.main-navigation .main-nav ul li a:hover, .main-navigation .main-nav ul li.current-menu-item a { color: #2563eb !important; }

/* -----------------------------------------
   3. 홈/카테고리 화면 [PC 2단 그리드] 레이아웃
----------------------------------------- */
@media (min-width: 769px) {
    .blog .site-main, .archive .site-main, .search .site-main { display: grid; grid-template-columns: repeat(2, 1fr); gap: 30px; }
    .blog .site-main .post, .archive .site-main .post, .search .site-main .post { margin-bottom: 0 !important; display: flex; flex-direction: column; height: 100%; }
    .blog .site-main .post .inside-article, .archive .site-main .post .inside-article, .search .site-main .post .inside-article { display: flex; flex-direction: column; flex-grow: 1; }
    .blog .site-main > .nav-links, .archive .site-main > .nav-links, .search .site-main > .nav-links { grid-column: 1 / -1; margin-top: 20px; }
}

/* -----------------------------------------
   4. 포스트 카드 디자인 (홈 화면 목록)
----------------------------------------- */
.blog .site-main .post, .archive .site-main .post, .search .site-main .post {
    background: #ffffff !important; border-radius: 12px; border: 1px solid #e2e8f0 !important; 
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.02) !important; overflow: hidden; transition: all 0.3s ease;
}
.blog .site-main .post:hover, .archive .site-main .post:hover, .search .site-main .post:hover { transform: translateY(-5px); border-color: #2563eb !important; box-shadow: 0 10px 25px rgba(37, 99, 235, 0.08) !important; }
.blog .site-main .post .post-image, .archive .site-main .post .post-image, .search .site-main .post .post-image { margin: 0 !important; }
.blog .site-main .post .post-image img, .archive .site-main .post .post-image img, .search .site-main .post .post-image img { width: 100%; height: 220px; object-fit: cover; display: block; border-bottom: 1px solid #f1f5f9; }
.blog .site-main .post .inside-article, .archive .site-main .post .inside-article, .search .site-main .post .inside-article { padding: 25px !important; }
.blog .site-main .post .cat-links, .archive .site-main .post .cat-links, .search .site-main .post .cat-links { display: block; margin-bottom: 12px; }
.blog .site-main .post .cat-links a, .archive .site-main .post .cat-links a, .search .site-main .post .cat-links a { display: inline-block; background-color: #eff6ff; color: #1d4ed8; font-size: 12px; font-weight: 700; padding: 5px 12px; border-radius: 20px; text-decoration: none; transition: all 0.2s; }
.blog .site-main .post .cat-links a:hover, .archive .site-main .post .cat-links a:hover, .search .site-main .post .cat-links a:hover { background-color: #2563eb; color: #ffffff; }
.blog .site-main .post .entry-title, .archive .site-main .post .entry-title, .search .site-main .post .entry-title { margin-top: 0; margin-bottom: 15px; }
.blog .site-main .post .entry-title a, .archive .site-main .post .entry-title a, .search .site-main .post .entry-title a { color: #0f172a !important; font-size: 20px; font-weight: 800; letter-spacing: -0.03em; line-height: 1.3; word-break: keep-all; }
.blog .site-main .post .entry-title a:hover, .archive .site-main .post .entry-title a:hover, .search .site-main .post .entry-title a:hover { color: #2563eb !important; }
.blog .site-main .post .entry-summary, .archive .site-main .post .entry-summary, .search .site-main .post .entry-summary { font-size: 14.5px; color: #475569; line-height: 1.6; margin-bottom: 20px; flex-grow: 1; }
.blog .site-main .post .entry-meta:not(.cat-links), .archive .site-main .post .entry-meta:not(.cat-links), .search .site-main .post .entry-meta:not(.cat-links) { display: none; }

/* -----------------------------------------
   ★ 5. 게시물 단일 본문 (색상 강제 해제 / 가독성 유지) ★
----------------------------------------- */
.single .site-main .post { background: transparent !important; border: none !important; box-shadow: none !important; }

/* 메인 제목 (H1) */
.single .entry-title { 
    font-size: 34px !important; 
    font-weight: 800 !important; 
    line-height: 1.3 !important; 
    margin-bottom: 35px !important; 
    word-break: keep-all; 
    letter-spacing: -0.04em; 
}

/* 본문 텍스트 (P, LI) - 여백 및 크기 유지 */
.single .entry-content p, 
.single .entry-content li { 
    font-size: 19px !important; 
    line-height: 1.85 !important; 
    margin-bottom: 30px !important; 
    word-break: keep-all !important; 
    letter-spacing: -0.01em !important; 
}

/* 본문 내 소제목 (H2, H3) 시각적 분리 */
.single .entry-content h2 {
    font-size: 26px !important;
    font-weight: 800 !important;
    margin-top: 55px !important;
    margin-bottom: 25px !important;
    word-break: keep-all !important;
}
.single .entry-content h3 {
    font-size: 22px !important;
    font-weight: 700 !important;
    margin-top: 40px !important;
    margin-bottom: 20px !important;
    word-break: keep-all !important;
}

/* -----------------------------------------
   6. 하단 푸터(Footer) 가로 정렬 
----------------------------------------- */
.site-footer .widget_nav_menu .widget-title, .footer-widgets .widget_nav_menu .widget-title { display: none !important; }
.site-footer .widget_nav_menu ul, .footer-widgets .widget_nav_menu ul { display: flex !important; justify-content: center !important; flex-wrap: wrap !important; gap: 25px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
.site-footer .widget_nav_menu ul li a, .footer-widgets .widget_nav_menu ul li a { font-size: 13.5px !important; color: #94a3b8 !important; font-weight: 500 !important; text-decoration: none !important; transition: color 0.2s ease !important; padding: 5px 0 !important; }
.site-footer .widget_nav_menu ul li a:hover, .footer-widgets .widget_nav_menu ul li a:hover { color: #475569 !important; }

/* -----------------------------------------
   7. 모바일(스마트폰) 화면 최적화
----------------------------------------- */
@media (max-width: 768px) {
    .single .site-main .post .inside-article { padding-left: 15px !important; padding-right: 15px !important; padding-top: 25px !important; }
    .single .entry-title { font-size: 26px !important; margin-bottom: 25px !important; }
    .single .entry-content p, .single .entry-content li { font-size: 17.5px !important; line-height: 1.8 !important; margin-bottom: 26px !important; }
    .single .entry-content h2 { font-size: 22px !important; margin-top: 45px !important; }
    .single .entry-content h3 { font-size: 19px !important; margin-top: 35px !important; }
    .blog .site-main .post .inside-article, .archive .site-main .post .inside-article, .search .site-main .post .inside-article { padding: 20px 15px !important; }
    .blog .site-main .post .post-image img, .archive .site-main .post .post-image img, .search .site-main .post .post-image img { height: 180px; }
}