/* =========================================================
   ALAU DESIGN SYSTEM — alau.kr 전용
   Hero / Recall / Table / Category / Footer / Mobile
   ========================================================= */


/* =========================================================
   0. DESIGN TOKENS
   ========================================================= */

:root{--alau-blue: #2E30EC;
    --alau-blue-dark: #2700E2;
    --alau-blue-light: #EEF0FF;

    --alau-text: #111827;
    --alau-text-body: #374151;
    --alau-text-muted: #676E77;

    --alau-border: #E7E7EA;
    --alau-bg-soft: #F7F7F8;
    --alau-white: #FFFFFF;}
/* =========================================================
   1. TYPOGRAPHY
   Pretendard Variable 단일 (SIL OFL · 상업적 사용 가능)
   ========================================================= */

body,
button,
input,
select,
textarea,
.site-title,
.main-navigation,
.widget,
.site-footer,
h1,
h2,
h3,
h4,
h5,
h6{font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;}
.alau-recall-home,
.alau-recall-all,
.alau-recall-home *,
.alau-recall-all *,
.alau-table-wrap,
.alau-table-wrap *,
.category .page-header,
.category article{font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;}
/* =========================================================
   3. RECALL — COMMON
   ========================================================= */

.alau-recall-home,
.alau-recall-all{width: 100%;
    max-width: 1140px;

    margin-left: auto;
    margin-right: auto;

    box-sizing: border-box;}
/* 카테고리 배지 */

.alau-recall-badge{display: inline-flex;
    align-items: center;

    padding: 3px 8px;

    background: var(--alau-blue-light);
    color: var(--alau-blue);

    border-radius: 999px;

    font-size: 10px;
    font-weight: 700;
    line-height: 1.3;}
/* =========================================================
   5. RECALL — ALL PAGE
   ========================================================= */

.alau-recall-all{margin-top: 50px;
    margin-bottom: 90px;}
.alau-recall-all-head{margin-bottom: 28px;}
.alau-recall-all-head h1{margin: 0 0 12px;

    color: var(--alau-text);

    font-size: 36px;
    font-weight: 800;
    line-height: 1.3;

    letter-spacing: -0.03em;}
.alau-recall-all-head p{max-width: 720px;

    margin: 0;

    color: #374151;

    font-size: 15px;
    line-height: 1.7;}
/* =========================================================
   6. RECALL — SEARCH
   ========================================================= */

.alau-recall-search{display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        minmax(0, 260px)
        auto;

    gap: 10px;

    margin: 27px 0 16px;}
.alau-recall-search input,
.alau-recall-search select{width: 100%;
    min-width: 0;
    min-height: 50px;

    box-sizing: border-box;

    padding: 0 16px;

    background: var(--alau-white);

    border: 1px solid #DDDDE4;
    border-radius: 8px;

    color: var(--alau-text);

    font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
    font-size: 15px;

    box-shadow: none;}
.alau-recall-search input::placeholder{color: #676E77;}
.alau-recall-search input:focus,
.alau-recall-search select:focus{outline: none;

    border-color: var(--alau-blue);

    box-shadow: 0 0 0 2px rgba(46, 48, 236, 0.08);}
.alau-recall-search button{min-height: 50px;

    padding: 0 28px;

    background: var(--alau-blue);
    color: var(--alau-white);

    border: 0;
    border-radius: 8px;

    font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif;
    font-size: 15px;
    font-weight: 700;

    cursor: pointer;

    transition:
        background-color 0.15s ease,
        transform 0.15s ease;}
.alau-recall-search button:hover{background: var(--alau-blue-dark);}
.alau-recall-search button:active{transform: translateY(1px);}
.alau-recall-result-count{margin: 0 0 14px;

    color: var(--alau-text-muted);

    font-size: 13px;}
/* =========================================================
   7. RECALL — TABLE
   이미지 | 상품명 | 회사명 | 리콜 절차 | 유통/소비기한
   ========================================================= */

.alau-recall-table{width: 100%;

    border-top: 2px solid var(--alau-text);}
.alau-recall-table-head,
.alau-recall-table-row{display: grid;

    grid-template-columns:
        90px
        minmax(190px, 1.25fr)
        minmax(170px, 1fr)
        minmax(240px, 1.45fr)
        minmax(180px, 1fr);

    column-gap: 20px;

    align-items: center;

    box-sizing: border-box;}
.alau-recall-table-head{padding: 15px 12px;

    background: #F5F5F6;

    border-bottom: 1px solid #DADADD;

    color: #374151;

    font-size: 12px;
    font-weight: 700;
    line-height: 1.4;}
.alau-recall-table-row{padding: 20px 12px;

    border-bottom: 1px solid var(--alau-border);

    transition: background-color 0.15s ease;}
.alau-recall-table-row:hover{background: #FAFAFB;}
.alau-recall-table-image{width: 72px;
    height: 72px;

    overflow: hidden;

    background: #F3F3F5;

    border: 1px solid #E7E7EA;
    border-radius: 8px;

    box-sizing: border-box;}
.alau-recall-table-image img{display: block !important;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;

    object-fit: cover !important;}
.alau-recall-table-product,
.alau-recall-table-company,
.alau-recall-table-process,
.alau-recall-table-expiry{min-width: 0;}
.alau-recall-table-product .alau-recall-badge{margin-bottom: 6px;}
.alau-recall-table-product > strong{display: block;

    color: var(--alau-text);

    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;

    letter-spacing: -0.015em;

    word-break: keep-all;
    overflow-wrap: anywhere;}
.alau-recall-table-date{display: block;

    margin-top: 5px;

    color: #676E77;

    font-size: 11px;}
.alau-recall-table-company{color: #374151;

    font-size: 13px;
    line-height: 1.6;

    word-break: keep-all;
    overflow-wrap: anywhere;}
.alau-recall-table-process{color: var(--alau-text-body);

    font-size: 13px;
    line-height: 1.65;

    word-break: keep-all;
    overflow-wrap: anywhere;}
.alau-recall-table-expiry{color: #374151;

    font-size: 13px;
    line-height: 1.6;

    word-break: keep-all;
    overflow-wrap: anywhere;}
/* 페이지네이션 */

.alau-recall-pagination{display: flex;

    align-items: center;
    justify-content: center;

    gap: 24px;

    margin-top: 34px;}
.alau-recall-pagination a{color: var(--alau-blue);

    font-size: 14px;
    font-weight: 700;

    text-decoration: none;}
.alau-recall-pagination a:hover{color: var(--alau-blue-dark);

    text-decoration: underline;
    text-underline-offset: 3px;}
.alau-recall-pagination span{color: var(--alau-text-muted);

    font-size: 13px;}
.alau-recall-credit{max-width: 780px;

    margin-top: 18px;

    color: #676E77;

    font-size: 11px;
    line-height: 1.7;

    word-break: keep-all;}
/* =========================================================
   8. RECALL — TABLET
   ========================================================= */

@media (max-width: 1024px){
  .alau-recall-table-head,
    .alau-recall-table-row{grid-template-columns:
            76px
            minmax(155px, 1.2fr)
            minmax(125px, 0.9fr)
            minmax(180px, 1.35fr)
            minmax(145px, 0.95fr);

        column-gap: 14px;}
  .alau-recall-table-image{width: 66px;
        height: 66px;}
  .alau-recall-table-company,
    .alau-recall-table-process,
    .alau-recall-table-expiry{font-size: 12px;}
}
/* =========================================================
   9. RECALL — MOBILE
   ========================================================= */

@media (max-width: 768px){
  .alau-recall-all{margin-top: 32px;
        margin-bottom: 56px;}
  .alau-recall-all-head h1{font-size: 29px;}
  .alau-recall-all-head p{font-size: 14px;}
  /* 검색 */

    .alau-recall-search{grid-template-columns: 1fr;

        gap: 8px;}
  .alau-recall-search button{width: 100%;}
  /* 전체 리콜 → 카드 */

    .alau-recall-table-head{display: none;}
  .alau-recall-table-row{display: grid;

        grid-template-columns:
            68px
            minmax(0, 1fr);

        gap: 7px 12px;

        align-items: start;

        padding: 18px 0;}
  .alau-recall-table-image{grid-column: 1;
        grid-row: 1 / span 2;

        width: 68px;
        height: 68px;}
  .alau-recall-table-product{grid-column: 2;
        grid-row: 1;}
  .alau-recall-table-product > strong{font-size: 15px;}
  .alau-recall-table-company{grid-column: 2;
        grid-row: 2;

        font-size: 11px;
        line-height: 1.45;}
  .alau-recall-table-company::before{content: "업체";

        margin-right: 6px;

        color: #676E77;

        font-size: 9px;
        font-weight: 700;}
  .alau-recall-table-process,
    .alau-recall-table-expiry{grid-column: 1 / -1;

        display: grid;

        grid-template-columns:
            72px
            minmax(0, 1fr);

        gap: 8px;

        font-size: 12px;
        line-height: 1.55;}
  .alau-recall-table-process{margin-top: 9px;

        padding-top: 11px;

        border-top: 1px solid #EEEEF1;}
  .alau-recall-table-process::before{content: "리콜 절차";

        color: var(--alau-text);

        font-size: 10px;
        font-weight: 700;}
  .alau-recall-table-expiry::before{content: "유통/소비기한";

        color: var(--alau-text);

        font-size: 10px;
        font-weight: 700;}
}
@media (max-width: 480px){
  .alau-recall-table-row{grid-template-columns:
            60px
            minmax(0, 1fr);}
  .alau-recall-table-image{width: 60px;
        height: 60px;}
  .alau-recall-table-process,
    .alau-recall-table-expiry{grid-template-columns:
            68px
            minmax(0, 1fr);}
}
/* =========================================================
   10. 본문 표 — [alau_table]
   ========================================================= */

.alau-table-wrap{width: 100%;
    max-width: 100%;

    margin: 28px 0 36px;

    overflow-x: auto;

    -webkit-overflow-scrolling: touch;}
.alau-table-wrap table{width: 100%;
    min-width: 100%;

    margin: 0;

    border: 0 !important;
    border-collapse: collapse;
    border-spacing: 0;

    background: var(--alau-white);

    border-top: 3px solid var(--alau-blue) !important;

    color: #353535;

    font-size: 15px;
    line-height: 1.65;}
.alau-table-wrap table th,
.alau-table-wrap table td{padding: 15px 17px;

    border: 0 !important;
    border-bottom: 1px solid #E8E8EA !important;

    color: #353535;

    text-align: left;
    vertical-align: middle;

    word-break: keep-all;
    overflow-wrap: anywhere;}
.alau-table-wrap table thead th{background: #F5F5F6;

    color: #222222;

    font-weight: 700;

    border-bottom: 1px solid #DADADD !important;}
.alau-table-firstcol table tbody th{width: 25%;
    min-width: 130px;

    background: #F7F7F8;

    color: #222222;

    font-weight: 700;}
.alau-table-wrap table tbody td{background: #FFFFFF;

    color: #444444;}
.alau-table-wrap table tbody tr:hover td{background: #FAFAFB;}
.alau-table-firstcol table tbody tr:hover th{background: #F2F2F4;}
.alau-table-wrap table tbody tr:last-child th,
.alau-table-wrap table tbody tr:last-child td{border-bottom: 1px solid #DADADD !important;}
.alau-table-wrap table a{color: var(--alau-blue);

    font-weight: 600;

    text-decoration: underline;
    text-underline-offset: 3px;}
.alau-table-wrap table strong{color: #222222;

    font-weight: 700;}
@media (max-width: 768px){
  .alau-table-wrap{margin: 22px 0 30px;}
  .alau-table-wrap table{font-size: 13px;
        line-height: 1.55;}
  .alau-table-wrap table th,
    .alau-table-wrap table td{padding: 12px;}
  .alau-table-firstcol table tbody th{width: 32%;
        min-width: 105px;}
}
@media (max-width: 480px){
  .alau-table-wrap table{font-size: 12px;}
  .alau-table-wrap table th,
    .alau-table-wrap table td{padding: 10px;}
}
/* =========================================================
   15. FOOTER — 미니멀
   ========================================================= */

.footer-bar{font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif !important;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.6;
    text-align: center;
    margin-bottom: 6px;}
.footer-bar p{margin: 0;}
.footer-bar a{font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif !important;
    color: #374151;
    text-decoration: none;
    transition: opacity 0.2s ease;}
.footer-bar a:hover{opacity: 0.6;}
.site-info,
.inside-site-info{font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo", "Malgun Gothic", sans-serif !important;}
.inside-site-info{font-size: 11px;
    font-weight: 400;
    line-height: 1.5;
    color: #676E77;
    text-align: center;
    padding-top: 4px;
    padding-bottom: 24px;}
/* =========================================================
   16. HOME — MOBILE APP-LIKE LAYOUT
   ========================================================= */

@media (max-width: 768px){
  body.home .site-content,
    body.home .content-area,
    body.home .site-main,
    body.home .inside-article,
    body.home .entry-content{width: 100% !important;
        max-width: 100% !important;

        margin-left: 0 !important;
        margin-right: 0 !important;

        box-sizing: border-box !important;}
  body.home .site-content{padding:
            10px
            12px
            28px !important;}
  body.home .inside-article,
    body.home .entry-content{padding-left: 0 !important;
        padding-right: 0 !important;}
}
/* 작은 모바일 */

@media (max-width: 380px){
  body.home .site-content{padding-left: 10px !important;
        padding-right: 10px !important;}
}
/* =========================================================
   17. FOOTER BAR MENU
   ========================================================= */

.footer-bar .widget_nav_menu ul.menu{display: flex;
    flex-wrap: wrap;
    justify-content: center;

    gap: 8px 22px;

    margin: 0;
    padding: 0;

    list-style: none;}
.footer-bar .widget_nav_menu ul.menu li{margin: 0;
    padding: 0;

    border: 0;}
.footer-bar .widget_nav_menu ul.menu li a{color: #374151;

    font-size: 13px;

    text-decoration: none;}
.footer-bar .widget{margin: 0;
    padding: 0;}
/* =========================================================
   18. 페이지 제목 정리
   홈과 리콜 조회는 자체 H1을 쓰므로 테마 제목 숨김
   ========================================================= */

body.home .entry-header,
body.page-template-default.page-id-33 .entry-header{display: none;}
/* =========================================================
   10. RECALL — 썸네일 없는 결과 (이미지 칸 숨김)
   결과 집합에 이미지가 하나도 없을 때 PHP가
   .alau-recall-table--noimg / .alau-recall-home--noimg 를 붙인다.
   ========================================================= */

.alau-recall-table--noimg .alau-recall-table-head,
.alau-recall-table--noimg .alau-recall-table-row{grid-template-columns:
        minmax(190px, 1.25fr)
        minmax(170px, 1fr)
        minmax(240px, 1.45fr)
        minmax(180px, 1fr);}
@media (max-width: 1024px){
  .alau-recall-table--noimg .alau-recall-table-head,
    .alau-recall-table--noimg .alau-recall-table-row{grid-template-columns:
            minmax(155px, 1.2fr)
            minmax(125px, 0.9fr)
            minmax(180px, 1.35fr)
            minmax(145px, 0.95fr);}
}
@media (max-width: 768px){
  .alau-recall-table--noimg .alau-recall-table-row{grid-template-columns: minmax(0, 1fr);}
  .alau-recall-table--noimg .alau-recall-table-product,
    .alau-recall-table--noimg .alau-recall-table-company{grid-column: 1;}
}
@media (max-width: 480px){
  .alau-recall-table--noimg .alau-recall-table-row{grid-template-columns: minmax(0, 1fr);}
}
/* =========================================================
   11. RECALL — 개별 행에 이미지가 없을 때
   회색 NO IMAGE 박스 대신 자리만 비운다.
   데스크톱·태블릿은 표 정렬을 지켜야 하므로 칸을 유지하고,
   모바일 카드에서는 행 자체가 전체 폭을 쓴다.
   ========================================================= */

.alau-recall-table-image--empty,
.alau-recall-home-image--empty{background: none;
    border-color: transparent;}
@media (max-width: 768px){
  .alau-recall-table-row--noimg{grid-template-columns: minmax(0, 1fr);}
  .alau-recall-table-row--noimg .alau-recall-table-image{display: none;}
  .alau-recall-table-row--noimg .alau-recall-table-product,
    .alau-recall-table-row--noimg .alau-recall-table-company{grid-column: 1;}
}
@media (max-width: 480px){
  .alau-recall-table-row--noimg{grid-template-columns: minmax(0, 1fr);}
}
/* =========================================================
   19. UX 재설계 — 판정 카드 · 카드 리스트 · 검색 히어로
   ========================================================= */

:root{--alau-warn: #B45309;
    --alau-warn-bg: #FFFBEB;
    --alau-warn-line: #FCD34D;
    --alau-safe: #047857;
    --alau-safe-bg: #ECFDF5;
    --alau-safe-line: #6EE7B7;}
/* ---------- 알림 CTA 메뉴 버튼 ---------- */

.main-navigation .menu-item.alau-menu-cta > a{background: var(--alau-blue);
    color: #FFFFFF !important;

    border-radius: 999px;

    font-weight: 700;}
.main-navigation .menu-item.alau-menu-cta > a:hover{background: var(--alau-blue-dark);}
@media (max-width: 768px){
  /* 리콜 원문 표 → 카드 (기존 8번 섹션 보강) */

    .alau-recall-all{padding-left: 2px;
        padding-right: 2px;}
}
/* =========================================================
   21. 홈 상단 여백 — 메뉴와 히어로 사이 간격 축소
   ========================================================= */

body.home .inside-article{padding-top: 12px !important;}
@media (max-width: 768px){
  body.home .inside-article{padding-top: 8px !important;}
}
/* =========================================================
   22. 모바일 메뉴 토글 — 높이 확보
   타이포 설정의 line-height:1em 때문에 15px 바가 되던 문제
   ========================================================= */

@media (max-width: 768px){
  .main-navigation .menu-toggle{display: flex;

        align-items: center;
        justify-content: center;

        gap: 8px;

        width: 100%;
        min-height: 56px;

        padding: 0 20px;

        line-height: 1;}
  .main-navigation .menu-toggle .gp-icon svg{width: 18px;
        height: 18px;}
  .main-navigation .menu-toggle .mobile-menu{line-height: 1;}
}
/* =========================================================
   23. 포인트 컬러 — 형광연두 #E7FC55
   배경으로 쓰면 흰 글자가 안 보여서(대비 1.14) 선으로만 쓴다
   ========================================================= */

.main-navigation .main-nav ul li > a{position: relative;}
.main-navigation .main-nav ul li > a::after{content: "";

    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 12px;

    height: 3px;

    background: #E7FC55;

    border-radius: 2px;

    opacity: 0;
    transform: translateY(3px);

    transition:
        opacity 0.15s ease,
        transform 0.15s ease;}
.main-navigation .main-nav ul li > a:hover::after,
.main-navigation .main-nav ul li > a:focus-visible::after,
.main-navigation .main-nav ul li.current-menu-item > a::after,
.main-navigation .main-nav ul li.current-menu-parent > a::after{opacity: 1;
    transform: translateY(0);}
/* 하위메뉴에서는 밑줄 대신 왼쪽 바 */
.main-navigation .main-nav ul ul li > a::after{left: 0;
    right: auto;
    top: 8px;
    bottom: 8px;

    width: 3px;
    height: auto;

    transform: translateX(-3px);}
.main-navigation .main-nav ul ul li > a:hover::after,
.main-navigation .main-nav ul ul li.current-menu-item > a::after{transform: translateX(0);}
/* 모바일 펼침 메뉴에서는 밑줄이 어색하므로 좌측 바로 */
@media (max-width: 768px){
  .main-navigation .main-nav ul li > a::after{left: 0;
        right: auto;
        top: 12px;
        bottom: 12px;

        width: 3px;
        height: auto;

        transform: translateX(-3px);}
  .main-navigation .main-nav ul li > a:hover::after,
    .main-navigation .main-nav ul li.current-menu-item > a::after{transform: translateX(0);}
}
/* 위로가기 버튼 hover 시 형광연두 테두리 */
.generate-back-to-top:hover,
.generate-back-to-top:focus{box-shadow: inset 0 0 0 2px #E7FC55;}
/* =========================================================
   FIX: 문서형 고정 페이지 본문 컨테이너
   (alau-v2가 테마 폭/패딩을 제거해 .wrap 래퍼가 없는
    문서형 페이지가 화면 전체로 늘어나는 문제 보정)
   대상: 개인정보처리방침(3) · ABOUT(34) · 이용약관(35) · 문의(36)
   ※ .wrap 을 자체적으로 가진 앱 페이지(/life/ /check/ /first/ 등)는 제외
   ========================================================= */
body.alau-v2.page-id-3 .entry-header,
body.alau-v2.page-id-3 .entry-content,
body.alau-v2.page-id-34 .entry-header,
body.alau-v2.page-id-34 .entry-content,
body.alau-v2.page-id-35 .entry-header,
body.alau-v2.page-id-35 .entry-content,
body.alau-v2.page-id-36 .entry-header,
body.alau-v2.page-id-36 .entry-content,
body.alau-v2.page-id-91 .entry-header,
body.alau-v2.page-id-91 .entry-content,
body.alau-v2.page-id-177 .entry-header,
body.alau-v2.page-id-177 .entry-content,
body.alau-v2.page-id-181 .entry-header,
body.alau-v2.page-id-181 .entry-content{max-width: 820px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box;}
body.alau-v2.page-id-3 .entry-header,
body.alau-v2.page-id-34 .entry-header,
body.alau-v2.page-id-35 .entry-header,
body.alau-v2.page-id-36 .entry-header,
body.alau-v2.page-id-91 .entry-header,
body.alau-v2.page-id-177 .entry-header,
body.alau-v2.page-id-181 .entry-header{padding-top: 28px !important;}
body.alau-v2.page-id-3 .entry-content,
body.alau-v2.page-id-34 .entry-content,
body.alau-v2.page-id-35 .entry-content,
body.alau-v2.page-id-36 .entry-content,
body.alau-v2.page-id-91 .entry-content,
body.alau-v2.page-id-177 .entry-content,
body.alau-v2.page-id-181 .entry-content{padding-bottom: 56px !important;}
@media (max-width: 768px){
  body.alau-v2.page-id-3 .entry-header,
    body.alau-v2.page-id-3 .entry-content,
    body.alau-v2.page-id-34 .entry-header,
    body.alau-v2.page-id-34 .entry-content,
    body.alau-v2.page-id-35 .entry-header,
    body.alau-v2.page-id-35 .entry-content,
    body.alau-v2.page-id-36 .entry-header,
    body.alau-v2.page-id-36 .entry-content,
    body.alau-v2.page-id-91 .entry-header,
    body.alau-v2.page-id-91 .entry-content,
    body.alau-v2.page-id-177 .entry-header,
    body.alau-v2.page-id-177 .entry-content,
    body.alau-v2.page-id-181 .entry-header,
    body.alau-v2.page-id-181 .entry-content{padding-left: 16px !important;
        padding-right: 16px !important;}
}
/* =========================================================
   TYPO: 문서형 페이지 타이포 위계 (SEO)
   ※ .entry-content 직계 자식에만. 변수명은 --doc-* 로 격리해
     alau-v2 디자인 시스템의 --fs-* 토큰과 충돌시키지 않는다.
   ========================================================= */
body.alau-v2{--doc-h1: 30px;
    --doc-h2: 22px;
    --doc-h3: 18px;
    --doc-h4: 16px;
    --doc-body: 16px;
    --doc-table: 15px;}
@media (max-width: 768px){
  body.alau-v2{--doc-h1: 26px; --doc-h2: 20px; --doc-h3: 17px; --doc-table: 14px;}
}
/* 폰트 통일 — alau-v2 강제 규칙에서 누락된 h5,h6,li,th,td 보정 */
body.alau-v2 h5, body.alau-v2 h6, body.alau-v2 li,
body.alau-v2 th, body.alau-v2 td, body.alau-v2 figcaption{font-family: var(--kr) !important;}
/* 페이지 제목 */
body.alau-v2 .entry-header h1{font-size: var(--doc-h1) !important;
    line-height: 1.35 !important;
    letter-spacing: -.02em !important;
    margin-bottom: 28px !important;}
/* 본문 흐름 헤딩 (직계 자식만) */
body.alau-v2 .entry-content > h2,
body.alau-v2 .entry-content > h3,
body.alau-v2 .entry-content > h4,
body.alau-v2 .entry-content > h5{font-weight: 700 !important; color: #111827;}
body.alau-v2 .entry-content > h2,
body.alau-v2 .entry-content > h5{font-size: var(--doc-h2) !important; line-height: 1.45 !important;
    letter-spacing: -.01em !important; margin-top: 44px !important; margin-bottom: 14px !important;}
body.alau-v2 .entry-content > h3{font-size: var(--doc-h3) !important; line-height: 1.5 !important;
    letter-spacing: -.01em !important; margin-top: 28px !important; margin-bottom: 10px !important;}
body.alau-v2 .entry-content > h4{font-size: var(--doc-h4) !important; line-height: 1.55 !important;
    margin-top: 20px !important; margin-bottom: 8px !important;}
body.alau-v2 .entry-content > *:first-child{margin-top: 0 !important;}
/* 본문 리듬 — alau-v2 전역 p{margin:0}
보정 */
body.alau-v2 .entry-content > p{font-size: var(--doc-body) !important; line-height: 1.75 !important; margin-bottom: 16px !important;}
body.alau-v2 .entry-content > ul,
body.alau-v2 .entry-content > ol{margin-bottom: 16px !important; padding-left: 1.1em !important;}
body.alau-v2 .entry-content > ul > li,
body.alau-v2 .entry-content > ol > li{line-height: 1.75 !important; margin-bottom: 6px !important;}
body.alau-v2 .entry-content > p:last-child,
body.alau-v2 .entry-content > ul:last-child{margin-bottom: 0 !important;}
/* 표 */
body.alau-v2 .entry-content > .wp-block-table{margin: 20px 0 24px !important;}
body.alau-v2 .entry-content > .wp-block-table th,
body.alau-v2 .entry-content > .wp-block-table td{font-size: var(--doc-table) !important; line-height: 1.6 !important;}
/* =========================================================
   V2ALIGN: 좌측 기준선 통일 (헤더 로고와 같은 선)
   컨테이너 3종(.wrap / .alau-jrn / .alau-x)을 모두 .wrap 규칙에 맞춘다.
   ========================================================= */
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .entry-header,
body.alau-v2 .alau-jrn,
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .entry-content > .alau-x{max-width: 1200px !important;
    margin-left: auto !important; margin-right: auto !important;
    padding-left: 20px !important; padding-right: 20px !important;
    box-sizing: border-box;}
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte560 .entry-header,
body.alau-v2 .app.gte560 .alau-jrn,
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte560 .entry-content > .alau-x{padding-left: 24px !important; padding-right: 24px !important;}
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte760 .entry-header,
body.alau-v2 .app.gte760 .alau-jrn,
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte760 .entry-content > .alau-x{padding-left: 32px !important; padding-right: 32px !important;}
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte900 .entry-header,
body.alau-v2 .app.gte900 .alau-jrn,
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .app.gte900 .entry-content > .alau-x{padding-left: 40px !important; padding-right: 40px !important;}
/* /recall/ 도 같은 기준선 */
body.alau-v2:not(.page-id-3):not(.page-id-34):not(.page-id-35):not(.page-id-36):not(.page-id-91):not(.page-id-177):not(.page-id-181) .entry-content > .alau-recall-all{max-width: 1200px !important; margin-left: auto !important; margin-right: auto !important;
    padding-left: 40px !important; padding-right: 40px !important; box-sizing: border-box;}
/* 여정 상세 = 읽기 컬럼 640px, 왼쪽 정렬 */
body.alau-v2 .alau-jrn[data-jrn] > *{max-width: 640px; margin-right: auto;}
body.alau-v2 .alau-jrn-resume{max-width: none !important;}
/* =========================================================
   V2SYNC: 시안2(alau-proto-v2) 값 동기화
   시안2에서 컴포넌트별 computed style 을 추출해 그대로 맞춘 값
   ========================================================= */

/* 0) 자간 — 시안2 본문은 letter-spacing:normal.
      GeneratePress 가 body 에 -0.01em 을 전역으로 걸어 답답해 보이던 것을 해제 */
body.alau-v2,
body.alau-v2 button, body.alau-v2 input, body.alau-v2 select, body.alau-v2 textarea,
body.alau-v2 p, body.alau-v2 li, body.alau-v2 td, body.alau-v2 th, body.alau-v2 dd, body.alau-v2 dt,
body.alau-v2 .crumb, body.alau-v2 .q-help, body.alau-v2 .src, body.alau-v2 .note-s,
body.alau-v2 .card p, body.alau-v2 .crit, body.alau-v2 .next, body.alau-v2 figcaption{letter-spacing: normal !important;}
/* 큰 제목만 음수 자간 (시안2와 동일) */
body.alau-v2 .entry-header h1,
body.alau-v2 .art h1,
body.alau-v2 .q-title{letter-spacing: -.02em !important;}
body.alau-v2 .sec-head h2{letter-spacing: -.01em !important;}
body.alau-v2 .eyebrow, body.alau-v2 .ten .lbl{letter-spacing: .14em !important;}
/* 1) 아티클 제목·크럼 (시안2: h1 34px, crumb 12.5px) */
body.alau-v2 .entry-header h1{font-size: 34px !important; line-height: 1.35 !important; margin-bottom: 10px !important;}
body.alau-v2 .entry-content .crumb{font-size: 12.5px !important; line-height: 1.7 !important; color: var(--text-muted) !important;}
/* 2) 10초 답 (시안2: padding 20/22, p 18px/1.55, lbl 10.5px) */
body.alau-v2 .ten, body.alau-v2 .alau-jrn__ten{padding: 20px 22px !important; margin: 22px 0 !important; border-radius: 12px !important;}
body.alau-v2 .ten p, body.alau-v2 .alau-jrn__ten p{font-size: 18px !important; line-height: 1.55 !important; font-weight: 700 !important;}
body.alau-v2 .ten .lbl, body.alau-v2 .alau-jrn__ten .k{font-size: 10.5px !important; margin-bottom: 6px !important; padding-bottom: 0 !important; border-bottom: 0 !important;}
/* 3) 여정 섹션 제목 (v3 가 .blk>h2 는 이미 제공) */
body.alau-v2 .alau-jrn__sec{font-size: 19px !important; line-height: 1.35 !important; font-weight: 700 !important;
    letter-spacing: -.01em !important; margin: 36px 0 12px !important;}
/* 4) 기준 목록 본문색만 보정 (크기·여백은 v3 기본값 사용) */
body.alau-v2 .crit div{color: var(--text-body) !important;}
/* =========================================================
   JRN: 여정 컴포넌트 (시안2 표 구조)
   ========================================================= */
body.alau-v2 .alau-jrn__ten{background: var(--signal-point) !important; border: 0 !important;}
body.alau-v2 .alau-jrn__ten .k{color: var(--text-on-point) !important; opacity: .75;}
body.alau-v2 .alau-jrn__ten p{color: var(--text-on-point) !important;}
body.alau-v2 .alau-jrn__ten b{box-shadow: none !important; font-weight: 800;}
body.alau-v2 .alau-jrn[data-jrn] .alau-jrn__g{margin: 0 !important; border-left: 1px solid var(--jln); border-right: 1px solid var(--jln);
    background: #fff; overflow: hidden;}
body.alau-v2 .alau-jrn__sec + .alau-jrn__g,
body.alau-v2 .alau-jrn__lead + .alau-jrn__g{border-top: 1px solid var(--jln); border-radius: 12px 12px 0 0;}
body.alau-v2 .alau-jrn__g:not(:has(+ .alau-jrn__g)){border-bottom: 1px solid var(--jln); border-radius: 0 0 12px 12px; margin-bottom: 36px !important;}
body.alau-v2 .alau-jrn__gh{background: #F5F6F8; margin: 0 !important; padding: 11px 16px !important;
    font-size: 13px !important; border-top: 1px solid var(--jln); border-bottom: 1px solid var(--jln);}
body.alau-v2 .alau-jrn__sec + .alau-jrn__g > .alau-jrn__gh,
body.alau-v2 .alau-jrn__lead + .alau-jrn__g > .alau-jrn__gh{border-top: 0;}
body.alau-v2 .alau-jrn__gn{display: none !important;}
body.alau-v2 .alau-jrn__g.is-done .alau-jrn__gh::after{content: '✓'; color: var(--jok); font-weight: 800; margin-left: auto;}
body.alau-v2 .alau-jrn__i{border: 0 !important; border-bottom: 1px solid var(--jln) !important; border-radius: 0 !important;
    margin: 0 !important; padding: 13px 16px !important; background: #fff !important;}
body.alau-v2 .alau-jrn__g > .alau-jrn__i:last-child{border-bottom: 0 !important;}
body.alau-v2 .alau-jrn__i.is-on{background: #F8FAFF !important;}
body.alau-v2 .alau-jrn__i .lk{display: inline-block; margin-top: 6px;}
body.alau-v2 .alau-jrn__lead{margin: 0 0 14px !important; font-size: 13px !important; color: var(--jm) !important;}
@media (min-width: 900px){
  body.alau-v2 .alau-jrn__list{grid-template-columns: repeat(3, 1fr) !important; gap: 16px !important;}
}
/* 문서형 페이지 안의 .alau-x 는 자체 패딩 제거 (/report/) */
body.alau-v2.page-id-181 .entry-content > .alau-x,
body.alau-v2.page-id-91 .entry-content > .alau-x,
body.alau-v2.page-id-177 .entry-content > .alau-x{max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;}
/* =========================================================
   V2FIX2: 검색결과 하단 섹션 정렬 · 여정 카드 정돈
   ========================================================= */
/* '같이 알아둘 것' (.v2-next) 이 자체 860px 로 가운데 정렬되어
   위 블록(.stack, 1120px)과 어긋나던 문제 */
body.alau-v2 .entry-content > .v2-next{max-width: 1200px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
    box-sizing: border-box;}
body.alau-v2 .app.gte560 .entry-content > .v2-next{padding-left: 24px !important; padding-right: 24px !important;}
body.alau-v2 .app.gte760 .entry-content > .v2-next{padding-left: 32px !important; padding-right: 32px !important;}
body.alau-v2 .app.gte900 .entry-content > .v2-next{padding-left: 40px !important; padding-right: 40px !important;}
/* 여정 카드: 높이 통일 + 진행바 상시 노출 (시안2) */
body.alau-v2 .alau-jrn__list{align-items: stretch !important;}
body.alau-v2 .alau-jrn__jc{display: flex !important;
    flex-direction: column !important;
    min-height: 168px;}
body.alau-v2 .alau-jrn__jc p{display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
    overflow: hidden; min-height: 2.9em;}
body.alau-v2 .alau-jrn__jc .m{margin-top: auto !important;}
body.alau-v2 .alau-jrn__lead2{font-size: 15px !important;
    color: var(--text-muted) !important;
    margin: 4px 0 20px !important;}
/* v3 후 잔여 보정: GeneratePress h2 자간 누수 · 시안2 h1 들여쓰기(--tin 4px) */
body.alau-v2 .blk > h2,
body.alau-v2 .sec h2,
body.alau-v2 .art h2{letter-spacing: normal !important;}
body.alau-v2 .entry-header h1{padding-left: 4px !important;}
body.alau-v2 .entry-content .crumb{padding-left: 4px !important;}