/* ================================================================
   📄 신규 블로그 CSS — 다이나믹 페이퍼 질감 디자인 시스템
   컨셉: Dynamic Paper × Craft Ink × Editorial Press
   "와… 완전 다른 느낌의 블로그!!" — 크래프트지 + 잉크 스탬프 테마
   
   색상 철학:
   - Base   : #f5f0e4 (따뜻한 크림지)  #ede5cf (aged 양피지)
   - Kraft  : #c4a882 / #a08060 (크래프트 브라운)
   - Ink    : #1c1917 (딥 잉크 블랙)   #2d2015 (에스프레소)
   - Stamp  : #b91c1c (버밀리온 스탬프) → 포인트 액센트
   - Pencil : #78716c (부드러운 연필)
================================================================ */

/* ================================================================
   0. 구글 폰트 + CSS 변수 기반 페이퍼 팔레트
================================================================ */
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+KR:wght@600;700;900&family=Noto+Sans+KR:wght@400;500;700;900&display=swap');

:root {
    /* ── 브랜드 색상: 페이퍼 잉크 ── */
    --brand-1: #b91c1c;        /* 버밀리온 스탬프 */
    --brand-2: #1c1917;        /* 딥 잉크 */
    --brand-glow: rgba(185,28,28,.14);

    /* ── 페이퍼 팔레트 ── */
    --paper-cream:  #f5f0e4;
    --paper-aged:   #ede5cf;
    --paper-kraft:  #c4a882;
    --paper-dark:   #a08060;
    --ink-black:    #1c1917;
    --ink-deep:     #2d2015;
    --stamp-red:    #b91c1c;
    --pencil-gray:  #78716c;

    /* ── SVG Grain 텍스처 (퍼포먼스 우선, 경량 노이즈) ── */
    --grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
    --grain-strong: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.11'/%3E%3C/svg%3E");

    /* ── 페이퍼 그림자 (물리적 종이 들림) ── */
    --shadow-paper:  3px 3px 0 rgba(101,82,56,.15), 0 6px 20px rgba(101,82,56,.10);
    --shadow-lift:   5px 5px 0 rgba(101,82,56,.18), 0 14px 36px rgba(101,82,56,.13);
    --shadow-stamp:  2px 2px 0 rgba(185,28,28,.25);

    /* ── 유리/그림자 (구조 유지용) ── */
    --glass-bg: rgba(245,240,228,.65);
    --glass-border: rgba(196,168,130,.5);
    --shadow-soft: var(--shadow-paper);
    --shadow-pop:  var(--shadow-lift);
    --radius-lg: 4px;       /* 페이퍼 컨셉: 날카로운 모서리 */
    --radius-pill: 2px;     /* 스탬프 느낌 */
    --radius-soft: 8px;     /* 부드러운 곳만 선택적 사용 */
}

/* ================================================================
   ✨ 키프레임 애니메이션
================================================================ */

/* 잉크 흐름 (그라데이션 유동) */
@keyframes gradient-flow {
    0%   { background-position: 0% 50%; }
    50%  { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* 종이 들림 효과 */
@keyframes paper-lift {
    0%   { transform: translateY(0) rotate(0deg); box-shadow: var(--shadow-paper); }
    100% { transform: translateY(-3px) rotate(-0.3deg); box-shadow: var(--shadow-lift); }
}

/* 와시테이프 슬라이드 */
@keyframes washi-in {
    from { transform: scaleX(0) skewX(-8deg); opacity: 0; }
    to   { transform: scaleX(1) skewX(-8deg); opacity: 1; }
}

/* 스탬프 찍기 */
@keyframes stamp-in {
    0%   { transform: scale(1.4) rotate(-3deg); opacity: 0; }
    60%  { transform: scale(0.96) rotate(0.5deg); opacity: 1; }
    100% { transform: scale(1) rotate(0deg); opacity: 1; }
}

/* 잉크 번짐 */
@keyframes ink-spread {
    0%   { width: 0%; opacity: 0; }
    100% { width: 100%; opacity: 1; }
}

/* ================================================================
   1. H2 — 잉크 언더라인 + 페이퍼 굵기 타이포
================================================================ */
h2 {
    margin: 56px 0 28px;
    padding: 0 0 18px 0;
    font-size: 1.55rem;
    font-weight: 900;
    font-family: 'Noto Serif KR', serif;
    color: var(--ink-black, #1c1917) !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    letter-spacing: -1px;
    line-height: 1.35;
    position: relative;
}

/* 굵은 잉크 언더라인 */
h2::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 48px;
    height: 3px;
    background: var(--stamp-red, #b91c1c);
    transition: width .5s cubic-bezier(.25,.8,.25,1);
}

h2:hover::after {
    width: 100%;
}

/* 와시테이프 장식 (왼쪽 포인트) */
h2::before {
    content: '';
    display: block;
    position: absolute;
    left: -4px;
    top: 4px;
    width: 3px;
    height: calc(100% - 18px);
    background: var(--stamp-red, #b91c1c);
    opacity: .7;
}

/* ================================================================
   2. H3 — 스탬프 박스형 (크래프트 배경)
================================================================ */
h3 {
    margin: 40px 0 18px;
    padding: 11px 18px 11px 20px;
    font-size: 1.12rem;
    font-weight: 800;
    font-family: 'Noto Sans KR', sans-serif;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    background:
        var(--grain),
        linear-gradient(135deg,
            color-mix(in srgb, var(--box-bg, var(--paper-aged, #ede5cf)) 75%, #fff),
            color-mix(in srgb, var(--paper-cream, #f5f0e4) 85%, #fff)) !important;
    border: none !important;
    border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-radius: 0 !important;
    box-shadow: var(--shadow-paper) !important;
    line-height: 1.45;
    position: relative;
}

/* 오른쪽 모서리 접힌 효과 */
h3::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    width: 0 !important;
    height: 0 !important;
    border-style: solid !important;
    border-width: 0 14px 14px 0 !important;
    border-color: transparent rgba(196,168,130,.35) transparent transparent !important;
}

h3::before {
    content: none !important;
}

/* ================================================================
   3. 본문 가독성 + 기본 요소 (페이퍼 질감)
================================================================ */
.entry-content p {
    line-height: 2.0;
    margin-bottom: 1.35em;
    word-break: keep-all;
    color: var(--ink-deep, #2d2015);
    font-family: 'Noto Sans KR', sans-serif;
    text-indent: 1em !important;
}

.entry-content h2 { margin-top: 3em; margin-bottom: 1em; }
.entry-content h3 { margin-top: 2.2em; margin-bottom: .9em; }

article img, .entry-content img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 2em auto;
    border-radius: 2px;
    box-shadow: var(--shadow-lift);
    transition: transform .35s ease, box-shadow .35s ease;
    filter: sepia(6%);
}

article img:hover, .entry-content img:hover {
    transform: scale(1.01) rotate(-0.3deg);
    box-shadow: 6px 6px 0 rgba(101,82,56,.18), 0 20px 50px rgba(101,82,56,.14);
    filter: sepia(0%);
}

.entry-content a {
    color: var(--box-main, var(--stamp-red, #b91c1c));
    text-decoration: none;
    border-bottom: 1.5px solid currentColor;
    transition: opacity .2s, border-bottom-style .2s;
}

.entry-content a:hover {
    opacity: .75;
    border-bottom-style: dashed;
}

/* ================================================================
   4. 표 (Table) — 페이퍼 스타일 6종
================================================================ */
table {
    width: 100%;
    margin: 36px 0;
    border-collapse: collapse;
    font-size: .93em;
    line-height: 1.58;
    font-family: 'Noto Sans KR', sans-serif;
    background: var(--grain);
}

/* [A] 레드 헤더 잉크형 */
.ai-table-a {
    border-radius: 2px;
    overflow: hidden;
    box-shadow: var(--shadow-lift);
}
.ai-table-a thead tr {
    background: var(--box-main, var(--stamp-red, #b91c1c));
    color: #fff;
}
.ai-table-a th {
    padding: 14px 16px;
    font-weight: 900;
    letter-spacing: .5px;
    font-family: 'Noto Serif KR', serif;
}
.ai-table-a td {
    padding: 13px 16px;
    border-bottom: 1px solid rgba(196,168,130,.35);
    background: #fff;
}
.ai-table-a tbody tr:nth-child(even) td {
    background: color-mix(in srgb, var(--paper-cream, #f5f0e4) 50%, #fff);
}
.ai-table-a tbody tr:hover td {
    background: color-mix(in srgb, var(--paper-aged, #ede5cf) 55%, #fff);
}

/* [B] 크래프트 보더형 */
.ai-table-b {
    border-radius: 0;
    border: 2px solid var(--paper-kraft, #c4a882);
    background: var(--grain), #faf7f0;
    box-shadow: var(--shadow-paper);
}
.ai-table-b thead tr {
    background: color-mix(in srgb, var(--box-main, var(--paper-kraft, #c4a882)) 18%, var(--paper-cream, #f5f0e4));
}
.ai-table-b th {
    padding: 14px 16px;
    font-weight: 900;
    color: var(--box-text, var(--ink-deep, #2d2015));
    border-bottom: 2px solid var(--paper-kraft, #c4a882);
}
.ai-table-b td {
    padding: 13px 16px;
    border-bottom: 1px solid rgba(196,168,130,.28);
}

/* [C] 미니멀 잡지형 (잉크 라인) */
.ai-table-c { border: none; background: transparent; }
.ai-table-c thead tr { border-bottom: 3px solid var(--ink-black, #1c1917); }
.ai-table-c th {
    padding: 14px 10px;
    color: var(--ink-black, #1c1917);
    font-size: 1.0em;
    font-weight: 900;
    font-family: 'Noto Serif KR', serif;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.ai-table-c td { padding: 14px 10px; border-bottom: 1px solid rgba(196,168,130,.4); }
.ai-table-c tbody tr:hover { background: var(--paper-cream, #f5f0e4); transition: .2s; }

/* [D] 다크 크래프트 헤더 */
.ai-table-d { border-radius: 2px; overflow: hidden; box-shadow: var(--shadow-lift); }
.ai-table-d thead tr {
    background: var(--ink-black, #1c1917);
    color: var(--paper-cream, #f5f0e4);
}
.ai-table-d th { padding: 16px; font-weight: 900; letter-spacing: .6px; font-family: 'Noto Serif KR', serif; }
.ai-table-d td { padding: 14px 16px; border-bottom: 1px solid rgba(196,168,130,.3); background: #faf7f0; }
.ai-table-d tbody tr:hover td {
    background: color-mix(in srgb, var(--paper-aged, #ede5cf) 45%, #fff);
}

/* [E] 카드 분리형 */
.ai-table-e { border-collapse: separate; border-spacing: 0 10px; }
.ai-table-e thead th {
    background: transparent;
    color: var(--ink-deep, #2d2015);
    font-weight: 900;
    padding: 10px 16px;
    border-bottom: 2px solid var(--ink-black, #1c1917);
    font-family: 'Noto Serif KR', serif;
}
.ai-table-e tbody tr {
    background: #faf7f0;
    box-shadow: var(--shadow-paper);
    transition: transform .2s, box-shadow .2s;
}
.ai-table-e tbody tr:hover { transform: scale(1.01) rotate(-0.15deg); box-shadow: var(--shadow-lift); }
.ai-table-e td { padding: 15px 16px; border-top: 1px solid rgba(196,168,130,.28); border-bottom: 1px solid rgba(196,168,130,.28); }
.ai-table-e td:first-child {
    border-left: 1px solid rgba(196,168,130,.28);
    border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c));
}
.ai-table-e td:last-child { border-right: 1px solid rgba(196,168,130,.28); }

/* [F] 노트북 줄 노트형 */
.ai-table-f {
    border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c));
    background: var(--grain), #faf7f0;
    box-shadow: var(--shadow-paper);
}
.ai-table-f thead th {
    background: color-mix(in srgb, var(--paper-aged, #ede5cf) 70%, #fff);
    color: var(--ink-deep, #2d2015);
    font-weight: 900;
    padding: 14px 16px;
    border-bottom: 1px solid rgba(196,168,130,.5);
}
.ai-table-f td { padding: 14px 16px; border-bottom: 1px dashed rgba(196,168,130,.4); }
.ai-table-f tbody tr:last-child td { border-bottom: none; }

/* ── 모바일 카드형 ── */
@media (max-width: 768px) {
    table { font-size: .88em; }
    table thead { display: none; }
    table tbody tr { display: block; margin-bottom: 18px; }
    table tbody td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        text-align: right;
        padding: 10px 14px;
    }
    table tbody td::before {
        content: attr(data-label);
        font-weight: 800;
        text-align: left;
        flex-shrink: 0;
        color: var(--box-main, var(--stamp-red, #b91c1c));
        margin-right: 12px;
        font-size: 0.95em;
        letter-spacing: .3px;
        font-family: 'Noto Serif KR', serif;
    }
    .ai-table-a tbody tr { box-shadow: var(--shadow-lift); }
    .ai-table-a tbody td:first-child {
        background: var(--box-main, var(--stamp-red, #b91c1c));
        color: #fff;
    }
    .ai-table-a tbody td:first-child::before { color: rgba(255,255,255,.85); }
    .ai-table-b tbody tr {
        border: 2px solid var(--paper-kraft, #c4a882);
        background: #faf7f0;
        box-shadow: var(--shadow-paper);
    }
    .ai-table-c tbody tr { border-top: 2px solid var(--ink-black, #1c1917); }
    .ai-table-c tbody td:first-child { font-weight: 900; font-family: 'Noto Serif KR', serif; }
    .ai-table-d tbody tr { box-shadow: var(--shadow-lift); }
    .ai-table-d tbody td:first-child {
        background: var(--ink-black, #1c1917);
        color: var(--paper-cream, #f5f0e4);
    }
    .ai-table-d tbody td:first-child::before { color: rgba(245,240,228,.75); }
    .ai-table-e { border-collapse: collapse; border-spacing: 0; }
    .ai-table-e tbody tr { box-shadow: var(--shadow-paper); }
    .ai-table-e td:first-child {
        border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c));
        font-weight: 800;
    }
    .ai-table-f tbody tr {
        border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c));
        background: #faf7f0;
        box-shadow: var(--shadow-paper);
    }
}

@media (max-width: 480px) {
    table { font-size: .83em; }
    table tbody td {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
        padding: 10px 12px;
    }
    table tbody td::before { margin-right: 0; margin-bottom: 3px; }
}


/* ================================================================
   5. 글 인트로 박스 — 스크랩북 카드
================================================================ */
.ai-intro-box {
    margin: 0 0 42px 0 !important;
    padding: 28px 30px 24px !important;
    background:
        var(--grain-strong),
        linear-gradient(170deg,
            color-mix(in srgb, var(--paper-aged, #ede5cf) 70%, #fff),
            color-mix(in srgb, var(--paper-cream, #f5f0e4) 85%, #fff)) !important;
    border: none !important;
    border-left: 5px solid var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-radius: 0 2px 2px 0 !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 모서리 접힘 */
.ai-intro-box::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    right: 0 !important;
    width: 0 !important;
    height: 0 !important;
    border-style: solid !important;
    border-width: 0 0 22px 22px !important;
    border-color: transparent transparent rgba(196,168,130,.4) transparent !important;
}

.ai-intro-box::before {
    content: '' !important;
    position: absolute !important;
    top: -60% !important;
    right: -15% !important;
    width: 260px !important;
    height: 260px !important;
    background: radial-gradient(circle, rgba(185,28,28,.04), transparent 70%) !important;
    pointer-events: none !important;
}

.intro-label {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    font-size: .9em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    padding: 4px 14px !important;
    border-radius: 2px !important;
    margin-bottom: 16px !important;
    letter-spacing: 1px !important;
    box-shadow: var(--shadow-stamp) !important;
    text-transform: uppercase !important;
}

.intro-content p {
    margin: 0 !important;
    font-size: 1.03em !important;
    line-height: 1.95 !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-weight: 500 !important;
    word-break: keep-all !important;
    text-indent: 0 !important;
}


/* ================================================================
   6. 내부 링크 박스 — 와시테이프 카드
================================================================ */
.auto-internal-box {
    margin: 38px 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 2px !important;
    box-shadow: none !important;
    overflow: visible !important;
    position: relative !important;
}

/* 와시테이프 상단 장식 */
.auto-internal-box::before {
    content: '' !important;
    position: absolute !important;
    top: -8px !important;
    left: 24px !important;
    width: 60px !important;
    height: 16px !important;
    background: color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 55%, transparent) !important;
    transform: skewX(-8deg) !important;
    border-radius: 1px !important;
    z-index: 1 !important;
}

.auto-internal-box .aib-phrase {
    font-weight: 900 !important;
    color: #fff !important;
    margin-bottom: 0 !important;
    font-size: .93em !important;
    font-family: 'Noto Serif KR', serif !important;
    padding: 14px 22px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-radius: 2px 2px 0 0 !important;
    letter-spacing: .3px !important;
    position: relative !important;
    z-index: 0 !important;
}

.aib-link {
    display: block !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-size: .98em !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff) !important;
    padding: 16px 22px !important;
    border-radius: 0 0 2px 2px !important;
    border: none !important;
    border-top: none !important;
    box-shadow: var(--shadow-paper) !important;
    transition: all .3s ease !important;
    line-height: 1.55 !important;
    word-break: keep-all !important;
}

.aib-link::before {
    content: '→ ' !important;
    font-size: 1.05em !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    transition: transform .25s ease !important;
    display: inline-block !important;
}

.aib-link:hover {
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 85%, #fff) !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    transform: translateX(3px) !important;
    padding-left: 26px !important;
    box-shadow: var(--shadow-lift) !important;
}

.aib-link:hover::before { transform: translateX(4px); }


/* ================================================================
   7. 인기글 TOP3 박스 — 핀보드 카드
================================================================ */
.custom-popular-box {
    margin: 44px 0 !important;
    padding: 28px !important;
    border-radius: 2px !important;
    background:
        var(--grain-strong),
        linear-gradient(160deg,
            color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff),
            color-mix(in srgb, var(--paper-cream, #f5f0e4) 80%, #fff)) !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 상단 잉크 스트라이프 */
.custom-popular-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 5px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

/* 하단 모서리 접힘 */
.custom-popular-box::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important; right: 0 !important;
    width: 0 !important; height: 0 !important;
    border-style: solid !important;
    border-width: 0 0 26px 26px !important;
    border-color: transparent transparent rgba(196,168,130,.35) transparent !important;
}

.cpb-title {
    font-size: 1.05em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    margin-bottom: 20px !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    display: flex !important;
    align-items: flex-start !important;
    line-height: 1.5 !important;
    gap: 6px !important;
}

.cpb-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

.cpb-list li { margin: 0 !important; }

.cpb-list a {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-weight: 700 !important;
    font-size: .96em !important;
    padding: 13px 18px !important;
    border-radius: 0 !important;
    transition: all .25s ease !important;
    background: rgba(255,255,255,.68) !important;
    border: 1px solid rgba(196,168,130,.38) !important;
    border-left: 3px solid transparent !important;
    word-break: keep-all !important;
    line-height: 1.52 !important;
    gap: 12px !important;
}

.cpb-list a:hover {
    background: rgba(255,255,255,.9) !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-left-color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    transform: translateX(5px) !important;
    box-shadow: var(--shadow-paper) !important;
}

.cpb-bullet {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 2px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    font-size: .75em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    flex-shrink: 0 !important;
    transition: all .25s ease !important;
    box-shadow: var(--shadow-stamp) !important;
}

.cpb-list a:hover .cpb-bullet {
    background: rgba(255,255,255,.25) !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    box-shadow: none !important;
}


/* ================================================================
   8. 외부링크 박스 — 잡지 스크랩 카드
================================================================ */
.ai-external-box {
    margin: 40px 0 !important;
    padding: 22px 24px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-cream, #f5f0e4) 75%, #fff) !important;
    border: 1.5px solid rgba(196,168,130,.48) !important;
    border-radius: 2px !important;
    box-shadow: var(--shadow-lift) !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 18px !important;
    transition: transform .25s ease, box-shadow .25s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 좌측 잉크 바 */
.ai-external-box::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important; top: 0 !important; bottom: 0 !important;
    width: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

.ai-external-box:hover {
    transform: translateY(-4px) rotate(-0.2deg) !important;
    box-shadow: 6px 8px 0 rgba(101,82,56,.18), 0 20px 48px rgba(101,82,56,.13) !important;
}

.ext-icon {
    font-size: 2.3em !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
    margin-top: 2px !important;
}

.ext-content { flex: 1 !important; }

.ext-title {
    display: block !important;
    font-size: 1.0em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    margin-bottom: 8px !important;
    letter-spacing: .8px !important;
    text-transform: uppercase !important;
}

.ext-source {
    display: block !important;
    font-size: .78em !important;
    color: var(--pencil-gray, #78716c) !important;
    margin-bottom: 10px !important;
}

.ai-external-box .quick-btn {
    display: inline-block !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 2px !important;
    padding: 11px 20px !important;
    text-align: center !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    font-size: .9em !important;
    text-decoration: none !important;
    transition: all .3s ease !important;
    box-shadow: var(--shadow-stamp) !important;
    letter-spacing: .5px !important;
}

.ai-external-box .quick-btn::before,
.ai-external-box .quick-btn::after { content: none !important; }

.ai-external-box .quick-btn:hover {
    filter: brightness(1.1) !important;
    transform: translateY(-2px) !important;
    box-shadow: 3px 3px 0 rgba(101,82,56,.25) !important;
}

.ai-external-box:not(:has(.ext-content)) {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 14px 18px !important;
    background: var(--paper-aged, #ede5cf) !important;
    border-radius: 2px !important;
    font-size: .92em !important;
    line-height: 1.7 !important;
    color: var(--ink-deep, #2d2015) !important;
}

.ext-nolink-text {
    margin: 6px 0 0 !important;
    font-size: .88em !important;
    line-height: 1.65 !important;
    color: var(--ink-deep, #2d2015) !important;
    word-break: keep-all !important;
}


/* ================================================================
   9. 내부 링크 모음 (Quick Box) — 노트 패드 스타일
================================================================ */
.ai-quick-box {
    margin: 34px 0 !important;
    padding: 26px 22px !important;
    background:
        var(--grain),
        linear-gradient(170deg,
            color-mix(in srgb, var(--paper-aged, #ede5cf) 60%, #fff),
            color-mix(in srgb, var(--paper-cream, #f5f0e4) 80%, #fff)) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    text-align: center !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 상단 잉크 바 */
.ai-quick-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

/* 줄 노트 배경 패턴 */
.ai-quick-box::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    background-image: repeating-linear-gradient(
        to bottom,
        transparent,
        transparent 27px,
        rgba(196,168,130,.15) 27px,
        rgba(196,168,130,.15) 28px
    ) !important;
    pointer-events: none !important;
}

.quick-head {
    display: block !important;
    font-size: 1.08em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    margin-bottom: 18px !important;
    line-height: 1.5 !important;
    position: relative !important;
    z-index: 1 !important;
}

.ai-quick-box a {
    display: inline-block !important;
    margin: 5px !important;
    padding: 8px 18px !important;
    background: rgba(255,255,255,.78) !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    border-radius: 2px !important;
    text-decoration: none !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-weight: 700 !important;
    font-size: .9em !important;
    transition: all .22s ease !important;
    position: relative !important;
    z-index: 1 !important;
}

.ai-quick-box a:hover {
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-stamp) !important;
}


/* ================================================================
   10. FAQ 섹션 — 아코디언 파일 폴더
================================================================ */
.ai-faq-section {
    margin: 44px 0 !important;
    padding: 28px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-cream, #f5f0e4) 72%, #fff) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important;
}

.ai-faq-section::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

.faq-section-title {
    font-size: 1.08em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    margin: 0 0 20px 0 !important;
    padding: 0 0 16px 0 !important;
    border-bottom: 1.5px solid rgba(196,168,130,.45) !important;
    line-height: 1.5 !important;
    background: none !important;
    border-left: none !important;
    border-radius: 0 !important;
}

.faq-item {
    margin-bottom: 8px !important;
    border-radius: 2px !important;
    overflow: hidden !important;
    border: 1px solid rgba(196,168,130,.38) !important;
    transition: box-shadow .25s ease !important;
}

.faq-item:hover { box-shadow: var(--shadow-paper) !important; }

.faq-question {
    list-style: none !important;
    padding: 15px 20px !important;
    font-weight: 700 !important;
    font-size: .96em !important;
    cursor: pointer !important;
    background: rgba(255,255,255,.72) !important;
    color: var(--ink-deep, #2d2015) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    transition: all .25s ease !important;
    word-break: keep-all !important;
    line-height: 1.55 !important;
}
.faq-question::-webkit-details-marker { display: none !important; }

.faq-q-mark {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 26px !important;
    height: 26px !important;
    border-radius: 2px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    font-size: .85em !important;
    flex-shrink: 0 !important;
    margin-right: 12px !important;
    box-shadow: var(--shadow-stamp) !important;
}

.faq-toggle-icon::after {
    content: '+' !important;
    font-size: 1.4em !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    font-weight: 300 !important;
    transition: transform .25s ease !important;
    display: inline-block !important;
}

details[open] .faq-question {
    background: color-mix(in srgb, var(--paper-aged, #ede5cf) 70%, #fff) !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

details[open] .faq-toggle-icon::after {
    content: '−' !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

.faq-answer {
    background: rgba(255,255,255,.88) !important;
    border-top: 1px solid rgba(196,168,130,.3) !important;
}

.faq-a-content {
    padding: 20px !important;
    font-size: .93em !important;
    color: var(--ink-deep, #2d2015) !important;
    line-height: 1.85 !important;
    word-break: keep-all !important;
}


/* ================================================================
   11. 하단 카테고리 박스
================================================================ */
.post-end-mark {
    text-align: center !important;
    margin-top: 72px !important;
    margin-bottom: 40px !important;
    color: var(--paper-kraft, #c4a882) !important;
    letter-spacing: 20px !important;
    font-size: 20px !important;
    opacity: .6 !important;
}

.bottom-category-box {
    margin-top: 30px !important;
    width: 100% !important;
}

.bcb-box {
    padding: 30px !important;
    background:
        var(--grain),
        linear-gradient(160deg,
            color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff),
            color-mix(in srgb, var(--paper-cream, #f5f0e4) 80%, #fff)) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    box-shadow: var(--shadow-lift) !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
}

.bcb-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 5px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

.bcb-box::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important; right: 0 !important;
    width: 0 !important; height: 0 !important;
    border-style: solid !important;
    border-width: 0 0 28px 28px !important;
    border-color: transparent transparent rgba(196,168,130,.38) transparent !important;
}

.bcb-title {
    font-size: 1.08em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    margin-bottom: 22px !important;
    letter-spacing: -.3px !important;
    line-height: 1.5 !important;
}

.bcb-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
}

.bcb-list li { margin: 0 !important; }

.bcb-list a {
    text-decoration: none !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    background: rgba(255,255,255,.75) !important;
    padding: 7px 16px !important;
    border-radius: 2px !important;
    font-size: .9em !important;
    font-weight: 700 !important;
    display: inline-block !important;
    transition: all .22s ease !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
}

.bcb-list a:hover {
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-stamp) !important;
}


/* ================================================================
   12. CTA 버튼 — 스탬프 프레스
================================================================ */
.cta-btn {
    display: block !important;
    width: 100% !important;
    max-width: 460px !important;
    margin: 52px auto !important;
    padding: 20px 32px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    text-align: center !important;
    border-radius: 2px !important;
    font-size: 1.18em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    text-decoration: none !important;
    box-shadow: 4px 4px 0 rgba(101,82,56,.3), 0 8px 24px rgba(185,28,28,.2) !important;
    transition: all .3s cubic-bezier(.25,.8,.25,1) !important;
    letter-spacing: .8px !important;
    position: relative !important;
    overflow: hidden !important;
}

/* 광택 스윕 */
.cta-btn::before {
    content: '' !important;
    position: absolute !important;
    top: -50% !important;
    left: -60% !important;
    width: 40% !important;
    height: 200% !important;
    background: rgba(255,255,255,.15) !important;
    transform: skewX(-20deg) !important;
    transition: left .55s ease !important;
}

.cta-btn:hover::before { left: 140% !important; }

.cta-btn:hover {
    transform: translateY(-4px) !important;
    box-shadow: 6px 6px 0 rgba(101,82,56,.3), 0 14px 36px rgba(185,28,28,.28) !important;
    filter: brightness(1.08) !important;
}

@media (max-width: 600px) {
    .cta-btn { width: 92% !important; font-size: 1.05em !important; }
}


/* ================================================================
   13. YouTube ref-box
================================================================ */
.ref-box {
    background:
        var(--grain-strong),
        linear-gradient(135deg, #1c0f08, #2d1e12) !important;
    border: none !important;
    border-radius: 2px !important;
    padding: 28px !important;
    margin: 40px 0 !important;
    text-align: center !important;
    box-shadow: 5px 5px 0 rgba(0,0,0,.25), 0 14px 40px rgba(0,0,0,.25) !important;
    position: relative !important;
    overflow: hidden !important;
}

.ref-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: linear-gradient(90deg, #E62117, #ff4444, #ff8c00) !important;
}

.ref-box p strong {
    color: var(--paper-cream, #f5f0e4) !important;
    font-size: 1.15em !important;
    display: block !important;
    margin-bottom: 16px !important;
    font-family: 'Noto Serif KR', serif !important;
}

.video-container {
    position: relative !important;
    padding-bottom: 56.25% !important;
    height: 0 !important;
    overflow: hidden !important;
    margin-bottom: 22px !important;
    border-radius: 2px !important;
    box-shadow: 3px 3px 0 rgba(0,0,0,.3), 0 10px 28px rgba(0,0,0,.4) !important;
}

.video-container iframe {
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 100% !important; height: 100% !important;
    border: 0 !important;
}

.ref-box a.yt-link-btn,
.ref-box a {
    display: block !important;
    background: #E62117 !important;
    color: #fff !important;
    line-height: 1.3 !important;
    padding: 14px 32px !important;
    border-radius: 2px !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    font-size: .95em !important;
    text-decoration: none !important;
    border-bottom: none !important;
    transition: all .3s ease !important;
    box-shadow: 3px 3px 0 rgba(0,0,0,.25) !important;
    max-width: 380px !important;
    margin: 0 auto !important;
}

.ref-box a.yt-link-btn:hover,
.ref-box a:hover {
    filter: brightness(1.1) !important;
    transform: translateY(-3px) !important;
    box-shadow: 4px 4px 0 rgba(0,0,0,.3) !important;
}


/* ================================================================
   14. 클릭유도 버튼
================================================================ */
.click-me-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 80px;
    border-radius: 2px;
    background: var(--stamp-red, #b91c1c);
    color: white;
    font-size: 28px;
    font-weight: 900;
    font-family: 'Noto Serif KR', serif;
    padding: 0 40px;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition: all .3s ease;
    box-shadow: 4px 4px 0 rgba(101,82,56,.28), 0 8px 24px rgba(185,28,28,.2);
    letter-spacing: .5px;
}

.click-me-button:hover {
    background: #991b1b;
    transform: translateY(-4px);
    box-shadow: 6px 6px 0 rgba(101,82,56,.3), 0 14px 32px rgba(185,28,28,.28);
}


/* ================================================================
   15. 이미지 링크 버튼 효과
================================================================ */
.image-button-link img {
    transition: transform .35s ease, box-shadow .35s ease, filter .35s ease;
    border: 1.5px solid transparent;
    filter: sepia(5%);
}

.image-button-link img:hover {
    transform: scale(1.02) rotate(-0.4deg);
    box-shadow: var(--shadow-lift);
    border-color: rgba(196,168,130,.5);
    filter: sepia(0%);
    cursor: pointer;
}

.wp-block-image, figure.wp-block-image {
    clear: both !important;
    display: block !important;
}

/* ================================================================
   16. 아카이브/검색 카드형 그리드
================================================================ */
@media (min-width: 769px) {
    .archive .site-main, .search .site-main {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 28px;
    }
}

.archive article.type-post, .search article.type-post {
    background: rgba(255,255,255,.85) !important;
    border: 1.5px solid rgba(196,168,130,.42) !important;
    border-radius: 2px !important;
    padding: 0 !important;
    overflow: hidden !important;
    transition: all .3s ease !important;
    box-shadow: var(--shadow-paper) !important;
    display: flex !important;
    flex-direction: column !important;
}

.archive article.type-post:hover, .search article.type-post:hover {
    transform: translateY(-6px) rotate(-0.2deg) !important;
    border-color: var(--stamp-red, #b91c1c) !important;
    box-shadow: var(--shadow-lift) !important;
}

.archive .entry-header, .search .entry-header {
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff) !important;
    padding: 24px !important;
    border-bottom: 1px solid rgba(196,168,130,.35) !important;
    margin-bottom: 0 !important;
}

.archive .entry-title, .search .entry-title {
    font-size: 1.22em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    line-height: 1.4 !important;
    margin: 0 !important;
}

.archive .entry-title a, .search .entry-title a {
    color: var(--ink-deep, #2d2015) !important;
    text-decoration: none !important;
}

.entry-meta { font-size: .83em; color: var(--pencil-gray, #78716c); margin-bottom: 14px; }

.archive .entry-summary, .search .entry-summary {
    padding: 0 24px 24px !important;
    font-size: .93em !important;
    color: var(--pencil-gray, #78716c) !important;
    line-height: 1.75 !important;
}

.archive .read-more-cta, .search .read-more-cta {
    display: block !important;
    width: calc(100% - 48px) !important;
    margin: 0 auto 24px auto !important;
    padding: 13px 20px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    text-align: center !important;
    border-radius: 2px !important;
    font-size: .98em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    text-decoration: none !important;
    box-shadow: 3px 3px 0 rgba(101,82,56,.22) !important;
    transition: all .3s ease !important;
    letter-spacing: .4px !important;
}

.archive .read-more-cta::before { content: '"'; opacity: .65; }
.archive .read-more-cta::after { content: '"'; opacity: .65; }

.archive .read-more-cta:hover {
    transform: translateY(-3px) !important;
    box-shadow: 4px 4px 0 rgba(101,82,56,.28) !important;
    filter: brightness(1.08) !important;
}

.ai-info-box {
    margin-bottom: 40px !important;
    padding: 26px !important;
    border: none !important;
    border-left: 5px solid var(--box-main, var(--stamp-red, #b91c1c)) !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff) !important;
    border-radius: 0 2px 2px 0 !important;
    box-shadow: var(--shadow-lift) !important;
}

.adsense-top-box {
    padding-top: 15px;
    border-top: 1px dashed rgba(196,168,130,.45);
    clear: both;
}


/* ================================================================
   17. ★★★ 최신글 위젯 — 페이퍼 12가지 랜덤 디자인
================================================================ */

/* ── 위젯 기본 컨테이너 (공통) ── */
.inside-right-sidebar .widget_block,
.inside-right-sidebar .wp-block-group,
.widget-area .widget_block,
.widget_recent_entries {
    border-radius: 2px !important;
    padding: 24px 20px !important;
    margin-bottom: 28px !important;
    position: relative !important;
    overflow: hidden !important;
    transition: box-shadow .3s ease !important;
}

/* 위젯 제목 공통 초기화 */
.inside-right-sidebar .wp-block-heading,
.widget-area .wp-block-heading,
.widget_recent_entries .widget-title,
.widget_recent_entries h2,
.widget_recent_entries h3 {
    font-family: 'Noto Serif KR', serif !important;
    font-size: .98em !important;
    font-weight: 900 !important;
    margin: 0 0 18px 0 !important;
    padding: 0 0 13px 0 !important;
    border-bottom: 1.5px solid rgba(196,168,130,.4) !important;
    background: none !important;
    border-left: none !important;
    border-top: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    letter-spacing: .2px !important;
}
.inside-right-sidebar .wp-block-heading::before,
.inside-right-sidebar .wp-block-heading::after,
.widget-area .wp-block-heading::before,
.widget-area .wp-block-heading::after { display: none !important; }

/* 리스트 초기화 */
.wp-block-latest-posts,
.wp-block-latest-posts__list,
.widget_recent_entries ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
}

.wp-block-latest-posts li,
.wp-block-latest-posts__list li,
.widget_recent_entries ul li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* ── 링크 기본 (공통) ── */
.widget_recent_entries ul li a,
.wp-block-latest-posts__post-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: .91em !important;
    line-height: 1.52 !important;
    word-break: keep-all !important;
    transition: all .25s ease !important;
    position: relative !important;
    overflow: hidden !important;
    border-left: 3px solid transparent !important;
}

/* 화살표 */
.widget_recent_entries ul li a::before {
    content: '→' !important;
    font-size: .85em !important;
    flex-shrink: 0 !important;
    transition: transform .22s ease !important;
    display: inline-block !important;
}

.widget_recent_entries ul li a:hover::before { transform: translateX(3px) !important; }

/* 날짜 */
.widget_recent_entries ul li .post-date {
    display: block !important;
    font-size: .74em !important;
    opacity: .5 !important;
    font-weight: 400 !important;
    margin-top: 2px !important;
}

/* ─────────────────────────────────────────────
   📄 wt-blue: 딥 인디고 잉크 on 크림지
───────────────────────────────────────────── */
.wt-blue.widget_block,
.wt-blue.wp-block-group,
.wt-blue.widget_recent_entries,
.wt-blue .widget_recent_entries {
    background: var(--grain), linear-gradient(150deg, #eff1ff, #f0f0fa) !important;
    box-shadow: 3px 3px 0 rgba(99,102,241,.15), 0 6px 20px rgba(99,102,241,.1) !important;
    border: 1.5px solid rgba(99,102,241,.2) !important;
}
.wt-blue.widget_block::before, .wt-blue.wp-block-group::before,
.wt-blue .widget_recent_entries::before, .wt-blue.widget_recent_entries::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #6366f1 !important;
    border-radius: 0 !important;
}
.wt-blue .widget_recent_entries ul li a,
.wt-blue.widget_recent_entries ul li a,
.wt-blue.widget_block .wp-block-latest-posts__post-title,
.wt-blue.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #3730a3 !important;
    border: 1px solid rgba(99,102,241,.18) !important;
    border-left: 3px solid transparent !important;
}
.wt-blue .widget_recent_entries ul li a:hover,
.wt-blue.widget_recent_entries ul li a:hover,
.wt-blue.widget_block .wp-block-latest-posts__post-title:hover,
.wt-blue.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #6366f1 !important;
    color: #fff !important;
    border-color: transparent !important;
    border-left-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(99,102,241,.3) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-green: 올리브 잉크 on 양피지
───────────────────────────────────────────── */
.wt-green .widget_recent_entries,
.wt-green.widget_recent_entries,
.wt-green.widget_block,
.wt-green.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #f0fdf0, #edfaf0) !important;
    box-shadow: 3px 3px 0 rgba(22,163,74,.14), 0 6px 20px rgba(22,163,74,.09) !important;
    border: 1.5px solid rgba(22,163,74,.2) !important;
}
.wt-green.widget_recent_entries::before, .wt-green .widget_recent_entries::before,
.wt-green.widget_block::before, .wt-green.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #16a34a !important;
}
.wt-green .widget_recent_entries ul li a,
.wt-green.widget_recent_entries ul li a,
.wt-green.widget_block .wp-block-latest-posts__post-title,
.wt-green.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #166534 !important;
    border: 1px solid rgba(22,163,74,.18) !important;
    border-left: 3px solid transparent !important;
}
.wt-green .widget_recent_entries ul li a:hover,
.wt-green.widget_recent_entries ul li a:hover,
.wt-green.widget_block .wp-block-latest-posts__post-title:hover,
.wt-green.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #16a34a !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(22,163,74,.3) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-red: 버밀리온 스탬프 on 크림지
───────────────────────────────────────────── */
.wt-red .widget_recent_entries,
.wt-red.widget_recent_entries,
.wt-red.widget_block,
.wt-red.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #fff4f2, #fff0ef) !important;
    box-shadow: 3px 3px 0 rgba(185,28,28,.15), 0 6px 20px rgba(185,28,28,.1) !important;
    border: 1.5px solid rgba(185,28,28,.2) !important;
}
.wt-red.widget_recent_entries::before, .wt-red .widget_recent_entries::before,
.wt-red.widget_block::before, .wt-red.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #b91c1c !important;
}
.wt-red .widget_recent_entries ul li a,
.wt-red.widget_recent_entries ul li a,
.wt-red.widget_block .wp-block-latest-posts__post-title,
.wt-red.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #991b1b !important;
    border: 1px solid rgba(185,28,28,.18) !important;
    border-left: 3px solid transparent !important;
}
.wt-red .widget_recent_entries ul li a:hover,
.wt-red.widget_recent_entries ul li a:hover,
.wt-red.widget_block .wp-block-latest-posts__post-title:hover,
.wt-red.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #b91c1c !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(185,28,28,.3) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-orange: 앰버 잉크 on 크래프트
───────────────────────────────────────────── */
.wt-orange .widget_recent_entries,
.wt-orange.widget_recent_entries,
.wt-orange.widget_block,
.wt-orange.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #fffbeb, #fdf7e0) !important;
    box-shadow: 3px 3px 0 rgba(180,83,9,.14), 0 6px 20px rgba(180,83,9,.09) !important;
    border: 1.5px solid rgba(180,83,9,.22) !important;
}
.wt-orange.widget_recent_entries::before, .wt-orange .widget_recent_entries::before,
.wt-orange.widget_block::before, .wt-orange.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #b45309 !important;
}
.wt-orange .widget_recent_entries ul li a,
.wt-orange.widget_recent_entries ul li a,
.wt-orange.widget_block .wp-block-latest-posts__post-title,
.wt-orange.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #92400e !important;
    border: 1px solid rgba(180,83,9,.18) !important;
    border-left: 3px solid transparent !important;
}
.wt-orange .widget_recent_entries ul li a:hover,
.wt-orange.widget_recent_entries ul li a:hover,
.wt-orange.widget_block .wp-block-latest-posts__post-title:hover,
.wt-orange.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #b45309 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(180,83,9,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-purple: 바이올렛 잉크 on 라벤더 페이퍼
───────────────────────────────────────────── */
.wt-purple .widget_recent_entries,
.wt-purple.widget_recent_entries,
.wt-purple.widget_block,
.wt-purple.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #f6f2ff, #f3efff) !important;
    box-shadow: 3px 3px 0 rgba(124,58,237,.14), 0 6px 20px rgba(124,58,237,.1) !important;
    border: 1.5px solid rgba(124,58,237,.18) !important;
}
.wt-purple.widget_recent_entries::before, .wt-purple .widget_recent_entries::before,
.wt-purple.widget_block::before, .wt-purple.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #7c3aed !important;
}
.wt-purple .widget_recent_entries ul li a,
.wt-purple.widget_recent_entries ul li a,
.wt-purple.widget_block .wp-block-latest-posts__post-title,
.wt-purple.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #5b21b6 !important;
    border: 1px solid rgba(124,58,237,.15) !important;
    border-left: 3px solid transparent !important;
}
.wt-purple .widget_recent_entries ul li a:hover,
.wt-purple.widget_recent_entries ul li a:hover,
.wt-purple.widget_block .wp-block-latest-posts__post-title:hover,
.wt-purple.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #7c3aed !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(124,58,237,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-teal: 틸 잉크 on 민트 크림
───────────────────────────────────────────── */
.wt-teal .widget_recent_entries,
.wt-teal.widget_recent_entries,
.wt-teal.widget_block,
.wt-teal.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #f0fdfa, #ecfcf8) !important;
    box-shadow: 3px 3px 0 rgba(13,148,136,.14), 0 6px 20px rgba(13,148,136,.09) !important;
    border: 1.5px solid rgba(13,148,136,.2) !important;
}
.wt-teal.widget_recent_entries::before, .wt-teal .widget_recent_entries::before,
.wt-teal.widget_block::before, .wt-teal.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #0d9488 !important;
}
.wt-teal .widget_recent_entries ul li a,
.wt-teal.widget_recent_entries ul li a,
.wt-teal.widget_block .wp-block-latest-posts__post-title,
.wt-teal.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #134e4a !important;
    border: 1px solid rgba(13,148,136,.15) !important;
    border-left: 3px solid transparent !important;
}
.wt-teal .widget_recent_entries ul li a:hover,
.wt-teal.widget_recent_entries ul li a:hover,
.wt-teal.widget_block .wp-block-latest-posts__post-title:hover,
.wt-teal.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #0d9488 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(13,148,136,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-indigo: 다크 잉크 on 야간 크래프트
───────────────────────────────────────────── */
.wt-indigo .widget_recent_entries,
.wt-indigo.widget_recent_entries,
.wt-indigo.widget_block,
.wt-indigo.wp-block-group {
    background: var(--grain-strong), linear-gradient(150deg, #1c1410, #241e18) !important;
    box-shadow: 3px 3px 0 rgba(0,0,0,.3), 0 8px 28px rgba(0,0,0,.22) !important;
    border: 1.5px solid rgba(196,168,130,.2) !important;
}
.wt-indigo .wp-block-heading, .wt-indigo .widget-title,
.wt-indigo.widget_recent_entries h2, .wt-indigo.widget_recent_entries h3,
.wt-indigo.widget_block .wp-block-heading, .wt-indigo.wp-block-group .wp-block-heading {
    color: var(--paper-cream, #f5f0e4) !important;
    border-color: rgba(196,168,130,.22) !important;
}
.wt-indigo.widget_recent_entries::before, .wt-indigo .widget_recent_entries::before,
.wt-indigo.widget_block::before, .wt-indigo.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: var(--stamp-red, #b91c1c) !important;
}
.wt-indigo .widget_recent_entries ul li a,
.wt-indigo.widget_recent_entries ul li a,
.wt-indigo.widget_block .wp-block-latest-posts__post-title,
.wt-indigo.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.07) !important;
    color: var(--paper-aged, #ede5cf) !important;
    border: 1px solid rgba(196,168,130,.2) !important;
    border-left: 3px solid transparent !important;
}
.wt-indigo .widget_recent_entries ul li a:hover,
.wt-indigo.widget_recent_entries ul li a:hover,
.wt-indigo.widget_block .wp-block-latest-posts__post-title:hover,
.wt-indigo.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: var(--stamp-red, #b91c1c) !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(185,28,28,.3) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-pink: 로즈 잉크 on 블러쉬 페이퍼
───────────────────────────────────────────── */
.wt-pink .widget_recent_entries,
.wt-pink.widget_recent_entries,
.wt-pink.widget_block,
.wt-pink.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #fff4f6, #fff0f3) !important;
    box-shadow: 3px 3px 0 rgba(219,39,119,.14), 0 6px 20px rgba(219,39,119,.09) !important;
    border: 1.5px solid rgba(219,39,119,.2) !important;
}
.wt-pink.widget_recent_entries::before, .wt-pink .widget_recent_entries::before,
.wt-pink.widget_block::before, .wt-pink.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #db2777 !important;
}
.wt-pink .widget_recent_entries ul li a,
.wt-pink.widget_recent_entries ul li a,
.wt-pink.widget_block .wp-block-latest-posts__post-title,
.wt-pink.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #9d174d !important;
    border: 1px solid rgba(219,39,119,.18) !important;
    border-left: 3px solid transparent !important;
}
.wt-pink .widget_recent_entries ul li a:hover,
.wt-pink.widget_recent_entries ul li a:hover,
.wt-pink.widget_block .wp-block-latest-posts__post-title:hover,
.wt-pink.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #db2777 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(219,39,119,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-amber: 골드 잉크 on 따뜻한 크림지
───────────────────────────────────────────── */
.wt-amber .widget_recent_entries,
.wt-amber.widget_recent_entries,
.wt-amber.widget_block,
.wt-amber.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #fdf8e8, #faf5e0) !important;
    box-shadow: 3px 3px 0 rgba(161,98,7,.14), 0 6px 20px rgba(161,98,7,.09) !important;
    border: 1.5px solid rgba(196,168,130,.4) !important;
}
.wt-amber.widget_recent_entries::before, .wt-amber .widget_recent_entries::before,
.wt-amber.widget_block::before, .wt-amber.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #a16207 !important;
}
.wt-amber .widget_recent_entries ul li a,
.wt-amber.widget_recent_entries ul li a,
.wt-amber.widget_block .wp-block-latest-posts__post-title,
.wt-amber.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #78350f !important;
    border: 1px solid rgba(196,168,130,.35) !important;
    border-left: 3px solid transparent !important;
}
.wt-amber .widget_recent_entries ul li a:hover,
.wt-amber.widget_recent_entries ul li a:hover,
.wt-amber.widget_block .wp-block-latest-posts__post-title:hover,
.wt-amber.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #a16207 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(161,98,7,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-mint: 에메랄드 잉크 on 셀러리 페이퍼
───────────────────────────────────────────── */
.wt-mint .widget_recent_entries,
.wt-mint.widget_recent_entries,
.wt-mint.widget_block,
.wt-mint.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #f2fbf5, #ecf9f0) !important;
    box-shadow: 3px 3px 0 rgba(5,150,105,.13), 0 6px 20px rgba(5,150,105,.09) !important;
    border: 1.5px solid rgba(5,150,105,.2) !important;
}
.wt-mint.widget_recent_entries::before, .wt-mint .widget_recent_entries::before,
.wt-mint.widget_block::before, .wt-mint.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #059669 !important;
}
.wt-mint .widget_recent_entries ul li a,
.wt-mint.widget_recent_entries ul li a,
.wt-mint.widget_block .wp-block-latest-posts__post-title,
.wt-mint.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #065f46 !important;
    border: 1px solid rgba(5,150,105,.15) !important;
    border-left: 3px solid transparent !important;
}
.wt-mint .widget_recent_entries ul li a:hover,
.wt-mint.widget_recent_entries ul li a:hover,
.wt-mint.widget_block .wp-block-latest-posts__post-title:hover,
.wt-mint.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #059669 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(5,150,105,.28) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-crimson: 다크 크래프트 (묵직한 잉크)
───────────────────────────────────────────── */
.wt-crimson .widget_recent_entries,
.wt-crimson.widget_recent_entries,
.wt-crimson.widget_block,
.wt-crimson.wp-block-group {
    background: var(--grain-strong), linear-gradient(150deg, #200a08, #2d1210) !important;
    box-shadow: 3px 3px 0 rgba(0,0,0,.32), 0 8px 28px rgba(0,0,0,.22) !important;
    border: 1.5px solid rgba(185,28,28,.25) !important;
}
.wt-crimson .wp-block-heading, .wt-crimson .widget-title,
.wt-crimson.widget_recent_entries h2, .wt-crimson.widget_recent_entries h3,
.wt-crimson.widget_block .wp-block-heading, .wt-crimson.wp-block-group .wp-block-heading {
    color: var(--paper-cream, #f5f0e4) !important;
    border-color: rgba(196,168,130,.18) !important;
}
.wt-crimson.widget_recent_entries::before, .wt-crimson .widget_recent_entries::before,
.wt-crimson.widget_block::before, .wt-crimson.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #991b1b !important;
}
.wt-crimson .widget_recent_entries ul li a,
.wt-crimson.widget_recent_entries ul li a,
.wt-crimson.widget_block .wp-block-latest-posts__post-title,
.wt-crimson.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.07) !important;
    color: var(--paper-aged, #ede5cf) !important;
    border: 1px solid rgba(185,28,28,.22) !important;
    border-left: 3px solid transparent !important;
}
.wt-crimson .widget_recent_entries ul li a:hover,
.wt-crimson.widget_recent_entries ul li a:hover,
.wt-crimson.widget_block .wp-block-latest-posts__post-title:hover,
.wt-crimson.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #991b1b !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(153,27,27,.4) !important;
}

/* ─────────────────────────────────────────────
   📄 wt-sky: 스카이 잉크 on 하늘빛 페이퍼
───────────────────────────────────────────── */
.wt-sky .widget_recent_entries,
.wt-sky.widget_recent_entries,
.wt-sky.widget_block,
.wt-sky.wp-block-group {
    background: var(--grain), linear-gradient(150deg, #f0f8ff, #eaf4ff) !important;
    box-shadow: 3px 3px 0 rgba(2,132,199,.14), 0 6px 20px rgba(2,132,199,.09) !important;
    border: 1.5px solid rgba(2,132,199,.2) !important;
}
.wt-sky.widget_recent_entries::before, .wt-sky .widget_recent_entries::before,
.wt-sky.widget_block::before, .wt-sky.wp-block-group::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: #0284c7 !important;
}
.wt-sky .widget_recent_entries ul li a,
.wt-sky.widget_recent_entries ul li a,
.wt-sky.widget_block .wp-block-latest-posts__post-title,
.wt-sky.wp-block-group .wp-block-latest-posts__post-title {
    background: rgba(255,255,255,.72) !important;
    color: #0c4a6e !important;
    border: 1px solid rgba(2,132,199,.16) !important;
    border-left: 3px solid transparent !important;
}
.wt-sky .widget_recent_entries ul li a:hover,
.wt-sky.widget_recent_entries ul li a:hover,
.wt-sky.widget_block .wp-block-latest-posts__post-title:hover,
.wt-sky.wp-block-group .wp-block-latest-posts__post-title:hover {
    background: #0284c7 !important;
    color: #fff !important;
    border-color: transparent !important;
    box-shadow: 2px 2px 0 rgba(2,132,199,.28) !important;
}


/* ================================================================
   18. 모바일 반응형 통합
================================================================ */
@media (max-width: 768px) {

    h1 { font-size: 1.42rem !important; line-height: 1.36 !important; letter-spacing: -.4px !important; }
    h2 {
        font-size: 1.18rem !important;
        line-height: 1.42 !important;
        margin-top: 1.8em !important;
        margin-bottom: .8em !important;
        padding-bottom: 12px !important;
    }
    h2::after { width: 36px !important; }
    h3 {
        font-size: 1.03rem !important;
        line-height: 1.46 !important;
        margin-top: 1.4em !important;
        padding: 10px 14px 10px 16px !important;
    }
    h4 { font-size: .97rem !important; line-height: 1.5 !important; }

    .entry-content h2, .post-content h2 { font-size: 1.18rem !important; }
    .entry-content h3, .post-content h3 { font-size: 1.03rem !important; }
    .entry-content h4, .post-content h4 { font-size: .95rem !important; }

    .entry-title, .page-title {
        font-size: 1.36rem !important;
        line-height: 1.4 !important;
        letter-spacing: -.4px !important;
        word-break: keep-all !important;
    }
    .archive .entry-title, .search .entry-title {
        font-size: 1.05rem !important;
        font-weight: 900 !important;
    }

    .archive .site-main, .search .site-main { display: block; }
    .archive .type-post { margin-bottom: 22px !important; }

    .custom-popular-box { padding: 18px 14px !important; margin: 22px 0 !important; }
    .cpb-title { font-size: .93rem !important; margin-bottom: 12px !important; }
    .cpb-list a { font-size: .9rem !important; padding: 12px 14px !important; }

    .ai-external-box {
        padding: 16px 16px 14px !important;
        margin: 18px 0 !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
        gap: 6px 10px !important;
        align-items: flex-start !important;
    }
    .ext-icon { font-size: 1.5em !important; flex-shrink: 0 !important; margin-top: 2px !important; line-height: 1 !important; }
    .ext-content { flex: 1 !important; min-width: 0 !important; }
    .ext-title { font-size: 1.0rem !important; margin-bottom: 6px !important; }
    .ext-source { font-size: .76rem !important; margin-bottom: 8px !important; }
    .ai-external-box .quick-btn {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        padding: 12px 14px !important;
        font-size: .88rem !important;
        text-align: center !important;
        margin-top: 2px !important;
    }

    .quick-btn { padding: 10px 14px !important; font-size: .88rem !important; }
    .cta-btn { padding: 14px 16px !important; font-size: .95rem !important; }

    .ref-box a.yt-link-btn, .ref-box a {
        padding: 10px 18px !important;
        font-size: .88rem !important;
        line-height: 1.5 !important;
        min-height: unset !important;
        height: auto !important;
    }
    .ref-box { padding: 18px 14px !important; }

    .auto-internal-box { margin: 20px 0 !important; }
    .aib-phrase { font-size: .88rem !important; }
    .aib-link { font-size: .9rem !important; padding: 12px 14px !important; }

    .ai-faq-section { padding: 16px 14px !important; }
    .faq-question { font-size: .92rem !important; padding: 13px 14px !important; }
    .faq-a-content { font-size: .9rem !important; padding: 16px !important; }

    .ai-intro-box { padding: 16px 16px 14px !important; }
    .intro-content p { font-size: .93rem !important; line-height: 1.82 !important; }

    .ai-quick-box { padding: 16px 14px !important; }
    .quick-head { font-size: .93rem !important; }

    .widget_recent_entries ul li a { padding: 10px 12px !important; font-size: .87em !important; }

    .entry-content p, .post-content p {
        word-break: keep-all !important;
        line-height: 1.88 !important;
        text-indent: 1em !important;
    }

    .entry-content .ai-intro-box p,
    .entry-content .ai-info-box p,
    .entry-content .ai-external-box p,
    .entry-content .ai-quick-box p,
    .entry-content .auto-internal-box p,
    .entry-content .custom-popular-box p,
    .entry-content .ref-box p,
    .entry-content li p {
        text-indent: 0 !important;
    }

    .click-me-button { font-size: 18px; padding: 18px 0; height: auto; }
}

@media (max-width: 480px) {
    h1 { font-size: 1.28rem !important; }
    h2 { font-size: 1.08rem !important; }
    h3 { font-size: .97rem !important; }
    h4 { font-size: .92rem !important; }
    .entry-title, .page-title { font-size: 1.22rem !important; }
}


/* ================================================================
   19. 모바일 제목 강제 (WordPress 블록 호환)
================================================================ */
@media (max-width: 768px) {
    .entry-content h2, .post-content h2,
    .wp-block-heading.is-style-default { font-size: 1.18rem !important; }
    .entry-content h3, .post-content h3 { font-size: 1.03rem !important; }
    .entry-content h4, .post-content h4 { font-size: .95rem !important; }
    .yt-link-btn, .ref-box a { padding: 6px 12px !important; min-height: unset !important; }
}


/* ================================================================
   20. word-break 공통
================================================================ */
.custom-popular-box, .cpb-title, .cpb-list, .cpb-list li, .cpb-list a,
.ai-external-box, .ai-external-box .ext-content,
.quick-btn, .cta-btn, .auto-internal-box, .aib-link,
.ref-box, .yt-link-btn,
.ai-faq-section, .ai-faq-section .faq-item,
.ai-faq-section .faq-question, .ai-faq-section .faq-answer,
.ai-faq-section .faq-a-content,
.ai-quick-box, .quick-box, .quick-box a,
.ai-info-box, .ai-intro-box, .intro-content p {
    word-break: keep-all !important;
    overflow-wrap: break-word !important;
    word-wrap: break-word !important;
}


/* ================================================================
   21. 블록 위젯 + 클래식 위젯 공통 전역 ::before
================================================================ */
.inside-right-sidebar .widget_block::before,
.inside-right-sidebar .wp-block-group::before,
.widget-area .widget_block::before,
.widget_recent_entries::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--stamp-red, #b91c1c) !important;
    border-radius: 0 !important;
}


/* ================================================================
   22. 블록 최신글 링크 (wp-block-latest-posts__post-title)
================================================================ */
.wp-block-latest-posts__post-title {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    font-size: .91em !important;
    line-height: 1.52 !important;
    word-break: keep-all !important;
    transition: all .25s ease !important;
    background: rgba(255,255,255,.72) !important;
    color: var(--ink-deep, #2d2015) !important;
    border: 1px solid rgba(196,168,130,.32) !important;
    border-left: 3px solid transparent !important;
    margin: 0 !important;
}

.wp-block-latest-posts__post-title:hover {
    background: var(--stamp-red, #b91c1c) !important;
    color: #fff !important;
    border-color: transparent !important;
    transform: translateX(4px) !important;
    box-shadow: 2px 2px 0 rgba(185,28,28,.28) !important;
}


/* ================================================================
   23. 글 하단 카테고리 + 이전글/다음글 내비게이션
================================================================ */
.entry-footer.entry-meta,
footer.entry-meta,
.entry-meta.entry-footer {
    margin-top: 48px !important;
    padding: 0 !important;
}

.entry-footer .cat-links,
footer.entry-meta .cat-links {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 20px 24px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 62%, #fff) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    box-shadow: var(--shadow-paper) !important;
    position: relative !important;
    overflow: hidden !important;
}

.entry-footer .cat-links::before,
footer.entry-meta .cat-links::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-radius: 0 !important;
}

.entry-footer .cat-links .gp-icon,
footer.entry-meta .cat-links .gp-icon { display: none !important; }

.entry-footer .cat-links .screen-reader-text,
footer.entry-meta .cat-links .screen-reader-text {
    position: static !important; width: auto !important; height: auto !important;
    clip: unset !important; font-size: .75em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--ink-deep, #2d2015) !important;
    letter-spacing: 1px !important; text-transform: uppercase !important;
    opacity: .55 !important; flex-shrink: 0 !important;
}

.entry-footer .cat-links a,
footer.entry-meta .cat-links a {
    display: inline-flex !important;
    align-items: center !important;
    text-decoration: none !important;
    font-size: .86em !important;
    font-weight: 700 !important;
    color: var(--ink-deep, #2d2015) !important;
    background: rgba(255,255,255,.78) !important;
    padding: 5px 14px !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    transition: all .22s ease !important;
    letter-spacing: .2px !important;
    word-break: keep-all !important;
}

.entry-footer .cat-links a:hover,
footer.entry-meta .cat-links a:hover {
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-stamp) !important;
}

.entry-footer .cat-links a::before,
footer.entry-meta .cat-links a::before {
    content: '📁 ' !important;
    font-size: .9em !important;
    opacity: .75 !important;
}


/* ================================================================
   이전글 / 다음글 내비게이션
================================================================ */
.post-navigation,
#nav-below.post-navigation {
    margin: 32px 0 0 !important;
    padding: 0 !important;
    border: none !important;
}

.post-navigation .nav-links {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
}

.post-navigation .nav-previous,
.post-navigation .nav-next { border: none !important; padding: 0 !important; }

.post-navigation .nav-previous a,
.post-navigation .nav-next a {
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    text-decoration: none !important;
    padding: 20px 22px !important;
    border-radius: 2px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-cream, #f5f0e4) 75%, #fff) !important;
    border: 1.5px solid rgba(196,168,130,.42) !important;
    box-shadow: var(--shadow-paper) !important;
    transition: all .28s ease !important;
    position: relative !important;
    overflow: hidden !important;
    height: 100% !important;
    box-sizing: border-box !important;
}

.post-navigation .nav-previous a::before,
.post-navigation .nav-next a::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 3px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    opacity: 0 !important;
    transition: opacity .28s ease !important;
}

.post-navigation .nav-previous a:hover::before,
.post-navigation .nav-next a:hover::before { opacity: 1 !important; }

.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
    transform: translateY(-4px) !important;
    box-shadow: var(--shadow-lift) !important;
    border-color: rgba(185,28,28,.3) !important;
}

.post-navigation .nav-previous a .meta-nav,
.post-navigation .nav-next a .meta-nav {
    font-size: .72em !important;
    font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    letter-spacing: 1.2px !important;
    text-transform: uppercase !important;
    opacity: .8 !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
}

.post-navigation .nav-previous a .meta-nav::before {
    content: '←' !important;
    font-size: 1.1em !important;
}

.post-navigation .nav-next a .meta-nav::after {
    content: '→' !important;
    font-size: 1.1em !important;
}

.post-navigation .nav-previous a span:not(.meta-nav),
.post-navigation .nav-next a span:not(.meta-nav) {
    font-size: .92em !important;
    font-weight: 700 !important;
    color: var(--ink-deep, #2d2015) !important;
    line-height: 1.55 !important;
    word-break: keep-all !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.post-navigation .nav-next { text-align: right !important; }

.post-navigation .nav-links:has(.nav-previous:only-child),
.post-navigation .nav-links:has(.nav-next:only-child) {
    grid-template-columns: 1fr !important;
}
.post-navigation .nav-links > .nav-previous:only-child,
.post-navigation .nav-links > .nav-next:only-child {
    grid-column: 1 / -1 !important;
}

@media (max-width: 640px) {
    .post-navigation .nav-links { grid-template-columns: 1fr !important; }
    .post-navigation .nav-next { text-align: left !important; }
    .post-navigation .nav-previous a,
    .post-navigation .nav-next a { padding: 16px 18px !important; }
    .entry-footer .cat-links,
    footer.entry-meta .cat-links { padding: 16px 18px !important; }
}


/* ================================================================
   ✨ vC+ PATCH — 푸터 / 태그 / 댓글 / 검색창
================================================================ */

/* ================================================================
   [+1] 푸터 위젯 영역 — 다크 크래프트
================================================================ */
.footer-widgets,
.site-footer .footer-widgets-container,
#footer-widgets {
    background:
        var(--grain-strong),
        linear-gradient(160deg, #1c1410 0%, #2d1e12 50%, #1c1410 100%) !important;
    border-top: 4px solid var(--stamp-red, #b91c1c) !important;
    padding: 52px 0 38px !important;
    position: relative !important;
    overflow: hidden !important;
}
.footer-widgets::before, #footer-widgets::before {
    content: '' !important;
    position: absolute !important;
    top: -80px !important; left: -80px !important;
    width: 300px !important; height: 300px !important;
    background: radial-gradient(circle, rgba(185,28,28,.08), transparent 70%) !important;
    pointer-events: none !important;
}
.footer-widgets .widget,
.footer-widgets-container .widget {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(196,168,130,.15) !important;
    border-radius: 2px !important;
    padding: 24px 20px !important;
    position: relative !important;
    overflow: hidden !important;
    transition: box-shadow .3s ease !important;
}
.footer-widgets .widget::before,
.footer-widgets-container .widget::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 3px !important;
    background: var(--stamp-red, #b91c1c) !important;
}
.footer-widgets .widget-title,
.footer-widgets .wp-block-heading,
.footer-widgets-container .widget-title {
    font-family: 'Noto Serif KR', serif !important;
    font-size: .98em !important; font-weight: 900 !important;
    color: var(--paper-cream, #f5f0e4) !important;
    margin: 0 0 16px 0 !important; padding: 0 0 12px 0 !important;
    border-bottom: 1px solid rgba(196,168,130,.2) !important;
    background: none !important; border-left: none !important;
    border-radius: 0 !important; box-shadow: none !important;
}
.footer-widgets .widget-title::before,
.footer-widgets .widget-title::after { display: none !important; }
.footer-widgets a, .footer-widgets-container a {
    color: rgba(245,240,228,.75) !important;
    text-decoration: none !important;
    font-size: .88em !important;
    border-bottom: none !important;
    transition: color .2s !important;
}
.footer-widgets a:hover, .footer-widgets-container a:hover {
    color: var(--paper-cream, #f5f0e4) !important; opacity: 1 !important;
}
.footer-widgets ul, .footer-widgets-container ul {
    list-style: none !important; padding: 0 !important; margin: 0 !important;
    display: flex !important; flex-direction: column !important; gap: 5px !important;
}
.footer-widgets ul li { margin: 0 !important; padding: 0 !important; }
.footer-widgets ul li a {
    display: flex !important; align-items: center !important; gap: 7px !important;
    padding: 7px 12px !important; border-radius: 2px !important;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(196,168,130,.12) !important;
    font-size: .87em !important;
}
.footer-widgets ul li a::before {
    content: '›' !important; color: var(--stamp-red, #b91c1c) !important;
    font-size: 1.2em !important; font-weight: 900 !important; flex-shrink: 0 !important;
}
.footer-widgets ul li a:hover {
    background: rgba(185,28,28,.15) !important;
    color: var(--paper-cream, #f5f0e4) !important;
    border-color: rgba(185,28,28,.3) !important;
    padding-left: 16px !important;
}
.footer-widgets p, .footer-widgets-container p {
    color: rgba(245,240,228,.65) !important;
    font-size: .87em !important; line-height: 1.78 !important;
    text-indent: 0 !important; margin-bottom: .7em !important;
}

/* [+2] site-info 하단 바 */
.site-info, footer.site-info, .site-footer .site-info {
    background: linear-gradient(135deg, #100b08, #1a1208) !important;
    border-top: 1px solid rgba(196,168,130,.12) !important;
    padding: 20px 0 !important;
    text-align: center !important;
    position: relative !important;
}
.site-info::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, var(--stamp-red,#b91c1c), transparent) !important;
}
.site-info a, .site-info .copyright {
    color: rgba(245,240,228,.5) !important;
    font-size: .82em !important;
    text-decoration: none !important; border-bottom: none !important;
}
.site-info a:hover { color: rgba(245,240,228,.9) !important; opacity: 1 !important; }

/* [+3] 태그 링크 */
.entry-footer .tags-links,
footer.entry-meta .tags-links,
.entry-meta .tags-links,
.tags-links {
    display: flex !important; flex-wrap: wrap !important;
    align-items: center !important; gap: 7px !important;
    margin-top: 12px !important; padding: 18px 22px !important;
    background: var(--grain), color-mix(in srgb, var(--paper-cream, #f5f0e4) 75%, #fff) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(180,83,9,.3) !important;
    box-shadow: var(--shadow-paper) !important;
    position: relative !important; overflow: hidden !important;
}
.tags-links::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, #b45309, #d97706, #f59e0b) !important;
}
.tags-links .screen-reader-text {
    position: static !important; width: auto !important; height: auto !important;
    clip: unset !important; font-size: .74em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: #92400e !important; letter-spacing: 1px !important;
    text-transform: uppercase !important; opacity: .75 !important; flex-shrink: 0 !important;
}
.tags-links .gp-icon { display: none !important; }
.tags-links a {
    display: inline-flex !important; align-items: center !important; gap: 3px !important;
    text-decoration: none !important; font-size: .82em !important; font-weight: 700 !important;
    color: #78350f !important; background: rgba(255,255,255,.82) !important;
    padding: 5px 12px !important; border-radius: 2px !important;
    border: 1.5px solid rgba(180,83,9,.3) !important;
    transition: all .22s ease !important;
}
.tags-links a::before { content: '#' !important; opacity: .55 !important; font-weight: 900 !important; }
.tags-links a:hover {
    background: #b45309 !important;
    color: #fff !important; border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: 2px 2px 0 rgba(101,82,56,.25) !important;
}
.tags-links a:hover::before { opacity: 1 !important; }

/* [+4] 댓글 섹션 */
.comments-area {
    margin-top: 52px !important; padding: 30px !important;
    background: var(--grain), color-mix(in srgb, var(--paper-cream, #f5f0e4) 68%, #fff) !important;
    border: 1.5px solid rgba(196,168,130,.42) !important;
    border-radius: 2px !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important; overflow: hidden !important;
}
.comments-area::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}
.comments-area .comments-title,
.comment-reply-title, #reply-title {
    font-size: 1.12em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--ink-deep, #2d2015) !important;
    margin: 0 0 24px 0 !important; padding: 0 0 14px 18px !important;
    border-left: 4px solid var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-bottom: 1px solid rgba(196,168,130,.38) !important;
    background: none !important; border-radius: 0 !important; box-shadow: none !important;
    line-height: 1.4 !important;
}
.comment-list {
    list-style: none !important; padding: 0 !important;
    margin: 0 0 30px !important;
    display: flex !important; flex-direction: column !important; gap: 12px !important;
}
.comment-list li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.comment-list .comment-body {
    padding: 18px 20px !important;
    background: rgba(255,255,255,.82) !important;
    border: 1px solid rgba(196,168,130,.32) !important;
    border-radius: 2px !important;
    box-shadow: var(--shadow-paper) !important;
    position: relative !important; overflow: hidden !important;
}
.comment-list .comment-body::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important;
    width: 4px !important; height: 100% !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}
.comment-list .children {
    margin-top: 10px !important; padding-left: 22px !important;
    list-style: none !important;
    border-left: 2px dashed rgba(196,168,130,.4) !important;
}
.comment-author img.avatar {
    border-radius: 2px !important;
    border: 2px solid rgba(196,168,130,.4) !important;
    width: 42px !important; height: 42px !important;
    filter: sepia(8%) !important;
}
.comment-author .fn { font-weight: 800 !important; font-family: 'Noto Serif KR', serif !important; color: var(--ink-deep, #2d2015) !important; font-size: .93em !important; }
.comment-metadata { font-size: .77em !important; color: var(--pencil-gray, #78716c) !important; margin-bottom: 10px !important; }
.comment-content p {
    font-size: .92em !important; line-height: 1.85 !important;
    color: var(--ink-deep, #2d2015) !important; text-indent: 0 !important; word-break: keep-all !important;
}
.reply a.comment-reply-link {
    display: inline-flex !important; align-items: center !important; gap: 4px !important;
    font-size: .78em !important; font-weight: 700 !important;
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    text-decoration: none !important; border-bottom: none !important;
    padding: 4px 12px !important;
    background: color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 9%, transparent) !important;
    border-radius: 2px !important;
    transition: all .2s ease !important;
}
.reply a.comment-reply-link:hover {
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important; color: #fff !important;
}

/* [+5] 댓글 폼 */
#commentform, .comment-form {
    display: flex !important; flex-direction: column !important; gap: 12px !important;
}
.comment-form .comment-notes {
    font-size: .82em !important; color: var(--pencil-gray, #78716c) !important; text-indent: 0 !important;
}
#commentform label, .comment-form label {
    display: block !important; font-size: .82em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--ink-deep, #2d2015) !important; margin-bottom: 5px !important;
    letter-spacing: .4px !important;
}
#commentform input[type="text"],
#commentform input[type="email"],
#commentform input[type="url"],
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"] {
    width: 100% !important; padding: 10px 14px !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    border-radius: 2px !important;
    background: rgba(255,255,255,.88) !important;
    font-family: 'Noto Sans KR', sans-serif !important;
    font-size: .9em !important; color: var(--ink-deep, #2d2015) !important;
    transition: border-color .2s, box-shadow .2s !important;
    box-sizing: border-box !important; outline: none !important;
}
#commentform textarea, .comment-form textarea {
    width: 100% !important;
    min-height: 100px !important;
    max-height: 240px !important;
    padding: 10px 14px !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    border-radius: 2px !important;
    background: rgba(255,255,255,.88) !important;
    font-family: 'Noto Sans KR', sans-serif !important;
    font-size: .9em !important; color: var(--ink-deep, #2d2015) !important;
    line-height: 1.75 !important; resize: vertical !important;
    transition: border-color .2s, box-shadow .2s !important;
    box-sizing: border-box !important; outline: none !important;
}
#commentform input:focus, .comment-form input:focus,
#commentform textarea:focus, .comment-form textarea:focus {
    border-color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 10%, transparent) !important;
    background: #fff !important;
}
#commentform #submit, .form-submit input[type="submit"] {
    display: block !important; width: 100% !important; max-width: 280px !important;
    padding: 13px 28px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important; font-family: 'Noto Serif KR', serif !important;
    font-size: .98em !important; font-weight: 900 !important;
    border: none !important; border-radius: 2px !important;
    cursor: pointer !important;
    box-shadow: 3px 3px 0 rgba(101,82,56,.25) !important;
    transition: all .28s ease !important; margin-top: 6px !important;
    position: relative !important; overflow: hidden !important;
}
#commentform #submit::before, .form-submit input[type="submit"]::before {
    content: '' !important;
    position: absolute !important; top: -50% !important; left: -60% !important;
    width: 40% !important; height: 200% !important;
    background: rgba(255,255,255,.15) !important; transform: skewX(-20deg) !important;
    transition: left .5s ease !important;
}
#commentform #submit:hover::before, .form-submit input[type="submit"]:hover::before { left: 140% !important; }
#commentform #submit:hover, .form-submit input[type="submit"]:hover {
    transform: translateY(-3px) !important;
    box-shadow: 4px 4px 0 rgba(101,82,56,.3) !important;
    filter: brightness(1.08) !important;
}
.comment-form-cookies-consent {
    display: flex !important; align-items: flex-start !important; gap: 9px !important;
}
.comment-form-cookies-consent input[type="checkbox"] { accent-color: var(--box-main, var(--stamp-red, #b91c1c)) !important; }
.comment-form-cookies-consent label {
    font-size: .8em !important; font-weight: 400 !important;
    color: var(--pencil-gray, #78716c) !important; margin-bottom: 0 !important; line-height: 1.6 !important;
}
.comment-form .logged-in-as {
    font-size: .83em !important; color: var(--pencil-gray, #78716c) !important; text-indent: 0 !important;
}
.comment-form .logged-in-as a {
    color: var(--box-main, var(--stamp-red, #b91c1c)) !important; border-bottom: 1px solid currentColor !important; font-weight: 600 !important;
}

/* [+6] 사이드바 & 전역 검색 위젯 */
.widget_search .search-form,
.wp-block-search__inside-wrapper,
.search-form {
    display: flex !important; gap: 6px !important; align-items: center !important;
}
.widget_search input[type="search"],
.wp-block-search__input,
.search-form input[type="search"],
.search-field {
    flex: 1 !important; padding: 9px 14px !important;
    border: 1.5px solid rgba(196,168,130,.48) !important;
    border-radius: 2px !important;
    background: rgba(255,255,255,.88) !important;
    font-family: 'Noto Sans KR', sans-serif !important;
    font-size: .88em !important; color: var(--ink-deep, #2d2015) !important;
    outline: none !important;
    transition: border-color .2s, box-shadow .2s !important;
    box-sizing: border-box !important;
    min-height: unset !important; height: auto !important;
}
.widget_search input[type="search"]:focus,
.wp-block-search__input:focus,
.search-field:focus {
    border-color: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 10%, transparent) !important;
    background: #fff !important;
}
.widget_search input[type="submit"],
.wp-block-search__button,
.search-form input[type="submit"],
.search-submit {
    padding: 9px 18px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important; border: none !important;
    border-radius: 2px !important;
    font-size: .86em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    cursor: pointer !important; white-space: nowrap !important;
    transition: all .22s ease !important;
    flex-shrink: 0 !important;
    min-height: unset !important; height: auto !important;
    box-shadow: 2px 2px 0 rgba(101,82,56,.22) !important;
}
.widget_search input[type="submit"]:hover,
.wp-block-search__button:hover,
.search-submit:hover {
    filter: brightness(1.1) !important;
    transform: translateY(-1px) !important;
    box-shadow: 3px 3px 0 rgba(101,82,56,.28) !important;
}

/* [+7] 모바일 반응형 */
@media (max-width: 768px) {
    .footer-widgets, #footer-widgets { padding: 32px 0 24px !important; }
    .footer-widgets .widget, .footer-widgets-container .widget { padding: 18px 14px !important; }
    .site-info { padding: 16px 0 !important; }
    .tags-links { padding: 14px 14px !important; gap: 5px !important; margin-top: 8px !important; }
    .tags-links a { font-size: .78em !important; padding: 4px 10px !important; }
    .comments-area { padding: 20px 14px !important; margin-top: 32px !important; }
    .comment-reply-title, #reply-title { font-size: 1.02em !important; }
    .comment-list .comment-body { padding: 14px 12px !important; }
    #commentform textarea, .comment-form textarea { min-height: 80px !important; }
    #commentform #submit, .form-submit input[type="submit"] {
        max-width: 100% !important; font-size: .92em !important; padding: 12px 20px !important;
    }
}


/* ================================================================
   ★ FIX: .quick-box → .ai-quick-box 완전 동기화
================================================================ */
.quick-box {
    margin: 34px 0 !important;
    padding: 26px 22px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 60%, #fff) !important;
    border-radius: 2px !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    text-align: center !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important;
    overflow: hidden !important;
}

.quick-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 4px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
}

.quick-box::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    background-image: repeating-linear-gradient(
        to bottom,
        transparent, transparent 27px,
        rgba(196,168,130,.12) 27px, rgba(196,168,130,.12) 28px
    ) !important;
    pointer-events: none !important;
}

.quick-box .quick-head {
    display: block !important; font-size: 1.08em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    margin-bottom: 18px !important; line-height: 1.5 !important;
    position: relative !important; z-index: 1 !important;
}

.quick-box a {
    display: inline-block !important; margin: 5px !important;
    padding: 8px 18px !important;
    background: rgba(255,255,255,.78) !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    border-radius: 2px !important;
    text-decoration: none !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-weight: 700 !important; font-size: .9em !important;
    transition: all .22s ease !important;
    position: relative !important; z-index: 1 !important;
}

.quick-box a:hover {
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important; border-color: transparent !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-stamp) !important;
}

@media (max-width: 768px) {
    .quick-box { padding: 16px 14px !important; }
    .quick-box .quick-head { font-size: .93rem !important; }
    .entry-content .quick-box p { text-indent: 0 !important; }
}


/* ================================================================
   ★ vC UPGRADE PATCH — 콘텐츠 박스 3종
================================================================ */

/* ── 공통 기반 ── */
.ai-tip-box,
.ai-warning-box,
.ai-checklist-box {
    margin: 32px 0 !important;
    padding: 20px 24px 20px 26px !important;
    position: relative !important;
    overflow: hidden !important;
    word-break: keep-all !important;
    border-radius: 0 2px 2px 0 !important;
    box-shadow: var(--shadow-paper) !important;
    transition: box-shadow .3s ease !important;
}
.ai-tip-box:hover, .ai-warning-box:hover, .ai-checklist-box:hover {
    box-shadow: var(--shadow-lift) !important;
}

/* 상단 잉크 바 */
.ai-tip-box::before,
.ai-warning-box::before,
.ai-checklist-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important;
    height: 3px !important;
    background-size: 300% !important;
    animation: gradient-flow 5s ease infinite !important;
}

/* 내부 텍스트 */
.ai-tip-box p, .ai-warning-box p, .ai-checklist-box p {
    margin: 0 0 .7em !important;
    line-height: 1.88 !important;
    text-indent: 0 !important;
    font-size: .95em !important;
    font-family: 'Noto Sans KR', sans-serif !important;
    color: inherit !important;
}
.ai-tip-box p:last-child, .ai-warning-box p:last-child, .ai-checklist-box p:last-child { margin-bottom: 0 !important; }

/* 내부 ul/li */
.ai-tip-box ul, .ai-warning-box ul, .ai-checklist-box ul {
    margin: 8px 0 0 !important; padding-left: 0 !important; list-style: none !important;
}
.ai-tip-box ul li, .ai-warning-box ul li, .ai-checklist-box ul li {
    padding: 5px 0 5px 24px !important;
    position: relative !important;
    line-height: 1.72 !important; font-size: .93em !important;
}
.ai-checklist-box ul li::before { content: '✅' !important; position: absolute !important; left: 0 !important; font-size: .82em !important; }
.ai-tip-box ul li::before      { content: '📌' !important; position: absolute !important; left: 0 !important; font-size: .82em !important; }
.ai-warning-box ul li::before  { content: '⚠️' !important; position: absolute !important; left: 0 !important; font-size: .80em !important; }

/* ━━━ ai-tip-box: 크래프트 팁 (버밀리온) ━━━ */
.ai-tip-box {
    background: var(--grain), linear-gradient(135deg, #fff8f5, rgba(255,255,255,.97)) !important;
    border-left: 5px solid var(--stamp-red, #b91c1c) !important;
    color: var(--ink-deep, #2d2015) !important;
}
.ai-tip-box::before {
    background: linear-gradient(90deg, #b91c1c, #dc2626, #ef4444, #b91c1c) !important;
}
.ai-tip-box strong { color: #991b1b !important; }

/* ━━━ ai-warning-box: 앰버 경고 ━━━ */
.ai-warning-box {
    background: var(--grain), linear-gradient(135deg, #fffbf0, rgba(255,255,255,.97)) !important;
    border-left: 5px solid #b45309 !important;
    color: var(--ink-deep, #2d2015) !important;
}
.ai-warning-box::before {
    background: linear-gradient(90deg, #b45309, #d97706, #f59e0b, #b45309) !important;
}
.ai-warning-box strong { color: #92400e !important; }

/* ━━━ ai-checklist-box: 올리브 그린 ━━━ */
.ai-checklist-box {
    background: var(--grain), linear-gradient(135deg, #f4fbf5, rgba(255,255,255,.97)) !important;
    border-left: 5px solid #166534 !important;
    color: var(--ink-deep, #2d2015) !important;
}
.ai-checklist-box::before {
    background: linear-gradient(90deg, #166534, #15803d, #16a34a, #166534) !important;
}
.ai-checklist-box strong { color: #14532d !important; }

@media (max-width: 768px) {
    .ai-tip-box, .ai-warning-box, .ai-checklist-box {
        padding: 16px 16px 16px 20px !important;
        margin: 24px 0 !important;
    }
}


/* ================================================================
   [UP-2] H4 스타일 — 크래프트 포인트
================================================================ */
h4 {
    margin: 22px 0 12px;
    font-size: 1.02rem;
    font-weight: 800;
    font-family: 'Noto Serif KR', serif;
    line-height: 1.52;
    color: var(--box-text, var(--ink-deep, #2d2015));
    padding-left: 14px !important;
    border-left: 3px solid color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 55%, transparent) !important;
}


/* ================================================================
   [UP-3] blockquote — 페이퍼 인용구 (노트 박스)
================================================================ */
.entry-content blockquote,
.post-content blockquote {
    margin: 34px 0 !important;
    padding: 22px 28px 22px 28px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 62%, #fff) !important;
    border-left: 5px solid var(--box-main, var(--stamp-red, #b91c1c)) !important;
    border-radius: 0 2px 2px 0 !important;
    box-shadow: var(--shadow-paper) !important;
    position: relative !important;
    overflow: hidden !important;
}
.entry-content blockquote::before {
    content: '"' !important;
    position: absolute !important;
    top: -12px !important; left: 16px !important;
    font-size: 5.5rem !important;
    font-family: 'Noto Serif KR', serif !important;
    color: color-mix(in srgb, var(--box-main, var(--stamp-red, #b91c1c)) 13%, transparent) !important;
    line-height: 1 !important;
    pointer-events: none !important;
}
.entry-content blockquote p {
    margin: 0 !important;
    font-style: italic !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--box-text, var(--ink-deep, #2d2015)) !important;
    font-size: .97em !important;
    line-height: 1.92 !important;
    text-indent: 0 !important;
}
.entry-content blockquote cite {
    display: block !important;
    margin-top: 10px !important;
    font-size: .82em !important;
    color: var(--pencil-gray, #78716c) !important;
    font-style: normal !important;
    font-family: 'Noto Sans KR', sans-serif !important;
}


/* ================================================================
   [UP-4] ul / ol — 크래프트 불릿
================================================================ */
.entry-content ul:not([class]),
.post-content ul:not([class]) {
    list-style: none !important;
    padding-left: 0 !important;
    margin: 16px 0 20px !important;
}
.entry-content ul:not([class]) li,
.post-content ul:not([class]) li {
    padding: 6px 0 6px 26px !important;
    position: relative !important;
    line-height: 1.8 !important;
    word-break: keep-all !important;
}
.entry-content ul:not([class]) li::before {
    content: '' !important;
    position: absolute !important;
    left: 4px !important;
    top: 13px !important;
    width: 8px !important;
    height: 8px !important;
    border-radius: 0 !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    transform: rotate(45deg) !important;
}
.entry-content ol:not([class]),
.post-content ol:not([class]) {
    padding-left: 0 !important;
    margin: 16px 0 20px !important;
    counter-reset: ol-counter !important;
    list-style: none !important;
}
.entry-content ol:not([class]) li,
.post-content ol:not([class]) li {
    padding: 6px 0 6px 36px !important;
    position: relative !important;
    line-height: 1.8 !important;
    word-break: keep-all !important;
    counter-increment: ol-counter !important;
}
.entry-content ol:not([class]) li::before {
    content: counter(ol-counter) !important;
    position: absolute !important;
    left: 0 !important;
    top: 6px !important;
    width: 24px !important; height: 24px !important;
    border-radius: 2px !important;
    background: var(--box-main, var(--stamp-red, #b91c1c)) !important;
    color: #fff !important;
    font-size: .72em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    display: inline-flex !important;
    align-items: center !important; justify-content: center !important;
    box-shadow: var(--shadow-stamp) !important;
}


/* ================================================================
   [UP-5] EZ TOC — 목차 (페이퍼 파일 카드)
================================================================ */
#ez-toc-container {
    margin: 34px 0 42px !important;
    padding: 0 !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-cream, #f5f0e4) 78%, #fff) !important;
    border: 1.5px solid rgba(196,168,130,.45) !important;
    border-radius: 2px !important;
    box-shadow: var(--shadow-lift) !important;
    position: relative !important; overflow: hidden !important;
}
/* 상단 버밀리온 바 */
#ez-toc-container::before {
    content: '' !important; position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important;
    background: var(--stamp-red, #b91c1c) !important;
}
/* 타이틀 영역 */
#ez-toc-container .ez-toc-title-container {
    padding: 18px 22px 14px !important;
    background:
        var(--grain),
        color-mix(in srgb, var(--paper-aged, #ede5cf) 65%, #fff) !important;
    border-bottom: 1px solid rgba(196,168,130,.38) !important;
    display: flex !important; align-items: center !important;
    justify-content: space-between !important; flex-wrap: wrap !important; gap: 8px !important;
}
/* 목차 타이틀 */
#ez-toc-container .ez-toc-title,
p.ez-toc-title {
    font-size: 1.0em !important; font-weight: 900 !important;
    font-family: 'Noto Serif KR', serif !important;
    color: var(--ink-deep, #2d2015) !important;
    margin: 0 !important; padding: 0 !important;
    background: none !important; border: none !important; box-shadow: none !important;
    letter-spacing: .4px !important;
}
/* 토글 버튼 */
#ez-toc-container .ez-toc-btn,
#ez-toc-container a.ez-toc-toggle {
    display: inline-flex !important; align-items: center !important;
    gap: 5px !important; padding: 5px 14px !important;
    background: rgba(255,255,255,.82) !important;
    border: 1.5px solid rgba(196,168,130,.5) !important;
    border-radius: 2px !important;
    font-size: .78em !important; font-weight: 700 !important;
    color: var(--ink-deep, #2d2015) !important;
    cursor: pointer !important; transition: all .22s ease !important;
    text-decoration: none !important;
}
#ez-toc-container .ez-toc-btn:hover,
#ez-toc-container a.ez-toc-toggle:hover {
    background: var(--stamp-red, #b91c1c) !important;
    color: #fff !important; border-color: transparent !important;
}
/* 리스트 래퍼 */
#ez-toc-container nav,
#ez-toc-container .ez-toc-list-level-1 {
    padding: 16px 22px 20px !important; position: relative !important; z-index: 2 !important;
}
/* 줄 노트 배경 */
#ez-toc-container nav::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important; left: 0 !important; right: 0 !important; bottom: 0 !important;
    background-image: repeating-linear-gradient(
        to bottom,
        transparent, transparent 31px,
        rgba(196,168,130,.14) 31px, rgba(196,168,130,.14) 32px
    ) !important;
    pointer-events: none !important;
}
/* 리스트 공통 */
#ez-toc-container ul.ez-toc-list,
#ez-toc-container ul {
    list-style: none !important; padding: 0 !important; margin: 0 !important;
}
/* 1단계 항목 */
#ez-toc-container ul.ez-toc-list > li {
    margin: 0 0 2px !important; padding: 0 !important; list-style: none !important;
}
#ez-toc-container ul.ez-toc-list > li > a {
    display: block !important; padding: 9px 14px !important;
    border-radius: 0 !important;
    color: var(--ink-deep, #2d2015) !important;
    text-decoration: none !important;
    font-size: .9em !important; font-weight: 700 !important;
    line-height: 1.52 !important; word-break: keep-all !important;
    transition: all .2s ease !important;
    border-left: 3px solid transparent !important;
}
#ez-toc-container ul.ez-toc-list > li > a:hover {
    background: rgba(255,255,255,.72) !important;
    color: var(--stamp-red, #b91c1c) !important;
    border-left-color: var(--stamp-red, #b91c1c) !important;
    box-shadow: 2px 0 0 var(--stamp-red, #b91c1c) !important;
}
/* 2단계 항목 */
#ez-toc-container ul ul {
    padding-left: 16px !important; margin-top: 2px !important;
}
#ez-toc-container ul ul li a {
    display: block !important; padding: 6px 12px !important;
    border-radius: 0 !important;
    color: var(--pencil-gray, #78716c) !important;
    text-decoration: none !important;
    font-size: .84em !important; font-weight: 600 !important;
    line-height: 1.5 !important; word-break: keep-all !important;
    transition: all .2s ease !important;
    border-left: 2px solid transparent !important;
}
#ez-toc-container ul ul li a:hover {
    background: rgba(255,255,255,.65) !important;
    color: var(--stamp-red, #b91c1c) !important;
    border-left-color: var(--stamp-red, #b91c1c) !important;
}
/* 3단계 */
#ez-toc-container ul ul ul { padding-left: 14px !important; }
#ez-toc-container ul ul ul li a { font-size: .8em !important; }

/* .ez-toc-grey 배경 제거 */
#ez-toc-container.ez-toc-grey,
#ez-toc-container.ez-toc-grey div,
#ez-toc-container.ez-toc-grey nav { background: transparent !important; }

/* 활성 항목 */
#ez-toc-container .ez-toc-list li.active > a,
#ez-toc-container .ez-toc-list a.active {
    background: rgba(255,255,255,.72) !important;
    color: var(--stamp-red, #b91c1c) !important;
    border-left-color: var(--stamp-red, #b91c1c) !important;
    font-weight: 800 !important;
}
/* 모바일 */
@media (max-width: 768px) {
    #ez-toc-container { margin: 24px 0 30px !important; }
    #ez-toc-container ul.ez-toc-list > li > a { font-size: .86em !important; padding: 8px 12px !important; }
    #ez-toc-container ul ul li a { font-size: .8em !important; }
}
