/* Shared nph subheader skin — news + mypage (static defaults on .nph-root) */
.nph-root{position:sticky;top:0;z-index:2000;background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 2px 12px rgba(0,0,0,.06);}
.nph-root *,.nph-root *::before,.nph-root *::after{box-sizing:border-box;}
.nph-root a{color:inherit;text-decoration:none;}
/* 배너광고 앞·뒤 20px — zone만. 내부 slot 0 (ad_intel 중첩 방지) */
.l14-banner-zone--s4_top,
.l14-banner-zone--portal_list_top,
.l14-banner-zone--portal_detail_top{
  margin-top:20px!important;
  margin-bottom:20px!important;
}
.l14-banner-zone--s4_top .ai-slot,
.l14-banner-zone--s4_top .bnr-slot,
.l14-banner-zone--s4_top .ai-slot--native,
.l14-banner-zone--s4_top .l14-inner > .ai-slot,
.l14-banner-zone--portal_list_top .ai-slot,
.l14-banner-zone--portal_list_top .bnr-slot,
.l14-banner-zone--portal_list_top .ai-slot--native,
.l14-banner-zone--portal_list_top .l14-inner > .ai-slot,
.l14-banner-zone--portal_detail_top .ai-slot,
.l14-banner-zone--portal_detail_top .bnr-slot,
.l14-banner-zone--portal_detail_top .ai-slot--native,
.l14-banner-zone--portal_detail_top .l14-inner > .ai-slot{
  margin-top:0!important;
  margin-bottom:0!important;
}
/* 빈 s5/s6 셸이 배너~헤더 사이 간격을 키우지 않도록 */
.l14-sec.l14-s5.l14-breadcrumb:empty,
.l14-sec.l14-s6.l14-title:empty{
  display:none!important;
  margin:0!important;
  padding:0!important;
  min-height:0!important;
}
/* NPH 크럼이 s7 안일 때 L14 s7 padding-top(40/16)이 배너 아래에 중복 → 제거 */
.l14-s7.l14-body:has(.nph-root){
  padding-top:0!important;
}

/* ① 정체성 — full / compact 모드 */
.nph-identity{display:flex;align-items:center;gap:10px;background:#fff;border-bottom:1px solid #f3f4f6;padding:10px 14px;}
.nph-identity[data-mode="compact"]{padding:6px 14px;}
/* 문자 마크 SSOT (뉴스 np-txt 동형) — FA 아이콘 폐기 */
.nph-identity-mark{width:auto;min-width:32px;height:32px;padding:0 8px;border-radius:8px;background:var(--nph-accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:14px;font-weight:800;flex-shrink:0;white-space:nowrap;box-shadow:0 2px 6px color-mix(in srgb,var(--nph-accent) 30%,transparent);}
.nph-identity-mark .np-txt{font-size:inherit;font-weight:inherit;line-height:1;letter-spacing:-0.02em;white-space:nowrap;}
/* compact — 정사각 강제 금지(문자 마크 가로 표기 SSOT) */
.nph-identity[data-mode="compact"] .nph-identity-mark{width:auto;min-width:0;height:26px;padding:0 7px;font-size:14px;border-radius:6px;white-space:nowrap;}
.nph-i18n-label{font-size:var(--fs-xs,14px);font-weight:700;color:#64748b;letter-spacing:0.04em;}
.nph-identity-text{flex:1;min-width:0;display:flex;align-items:baseline;gap:8px;overflow:hidden;}
.nph-identity-brand{font-size:18px;font-weight:800;color:#111827;letter-spacing:-0.5px;line-height:1.1;white-space:nowrap;flex-shrink:0;margin:0;}
.nph-identity[data-mode="compact"] .nph-identity-brand{font-size:16px;}
.nph-identity-brand .nph-brand-en,
.nph-identity-brand small{font-size:14px;font-weight:800;color:var(--nph-accent);letter-spacing:0.06em;text-transform:uppercase;}
.nph-root.nph-root--news .nph-identity--news .nph-identity-mark,
.nph-identity.nph-identity--news .nph-identity-mark{background:var(--nph-accent);}
.nph-identity-slogan{font-size:var(--fs-sm,15px);color:#9ca3af;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;}
.nph-identity[data-mode="compact"] .nph-identity-slogan{font-size:var(--fs-xs,14px);}

/* ────────────────────────────────────────────────────────────────
 * ② 1차 카테고리 GNB — 모바일/데스크탑 단일 SSOT (관리자 토큰 추종)
 *    모든 색(배경/글자/호버/활성/인디케이터/드롭다운) = portal_settings.* 변수.
 *    하드코딩 없음. 외부 stylesheet 충돌 방지 위해 .nph-root 자식 selector 로 specificity 강화.
 *    `<span>` 은 color:inherit !important — 외부 nav span / global selector 가
 *    chip 색을 덮어쓰는 사고를 원천 차단.
 * ──────────────────────────────────────────────────────────────── */
/* GNB 막대 — 모든 컨텍스트(index·list·detail·board)에서 동일한
 *   cat-accent SSOT 패턴 적용. list/detail 에서 잘 동작하던 색 연동을
 *   index 로 이식한 결과. cat-accent 값:
 *     - index/board : portal primary (admin 색)
 *     - list/detail : 활성 1차 카테고리 색
 *   admin gnb_bg 토큰은 폴백 차원에서 cat-accent 가 비었을 때만 사용.
 */
.nph-root .nph-cats1{
  background:var(--nph-cat-accent, var(--nph-gnb-bg));
  border-bottom:0;
  box-shadow:0 1px 0 color-mix(in srgb,var(--nph-cat-accent, var(--nph-gnb-bg)) 80%,#000);
  height:32px;display:flex;align-items:center;
  transition:background .2s,box-shadow .2s;
}
.nph-root .nph-cats1-scroller{
  flex:1;display:flex;align-items:center;
  overflow-x:auto;scroll-behavior:smooth;
  scrollbar-width:none;-ms-overflow-style:none;
  height:32px;padding:0 6px;gap:2px;
}
.nph-root .nph-cats1-scroller::-webkit-scrollbar{display:none;}
.nph-root .nph-c1-item{display:flex;align-items:center;flex-shrink:0;height:32px;position:relative;}
.nph-root .nph-cats1-chip{
  flex-shrink:0;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
  min-height:28px;height:auto;padding:2px 8px 3px;
  font-size:15px;font-weight:600;
  color:var(--nph-gnb-text);
  background:transparent;
  border-radius:6px;border:1px solid transparent;
  white-space:nowrap;
  transition:background .15s,color .15s,border-color .15s;
}
.nph-root .nph-cats1-chip > .nph-cats1-label,
.nph-root .nph-cats1-chip > span,
.nph-root .nph-cats1-chip > i{
  color:inherit !important;
  overflow:visible;text-overflow:clip;white-space:nowrap;
  line-height:1.15;max-width:none;
}
.nph-root .nph-cats1-chip > i{font-size:15px;flex-shrink:0;}
/* 1차 칩 건수 — 제목 아래 소형 뱃지 (제목 생략 방지) */
.nph-root .nph-cats1-badge{
  font-style:normal;font-size:14px;font-weight:700;
  padding:0 5px;border-radius:999px;
  background:var(--nph-c1-color, rgba(255,255,255,0.22));
  color:#fff;
  border:1px solid rgba(255,255,255,0.32);
  letter-spacing:0;
  margin-left:0;
  line-height:1.25;
}
.nph-root .nph-cats1-chip.is-active .nph-cats1-badge{
  background:rgba(0,0,0,0.28);
  border-color:rgba(255,255,255,0.5);
}
.nph-root .nph-cats2-badge,
.nph-root .nph-cats3-badge{
  font-style:normal;font-size:14px;font-weight:700;
  padding:0 5px;border-radius:999px;
  background:color-mix(in srgb,var(--nph-cat-accent) 14%, #fff);
  color:var(--nph-cat-accent);
  border:1px solid color-mix(in srgb,var(--nph-cat-accent) 22%, #fff);
  margin-left:0;margin-top:1px;line-height:1.25;
}
.nph-root .nph-cats2-chip.has-count,
.nph-root .nph-cats3-chip.has-count{
  flex-direction:column;align-items:center;justify-content:center;
  height:auto;min-height:30px;padding:4px 12px 5px;gap:1px;
}
.nph-root .nph-cats3-chip.has-count{min-height:28px;padding:3px 10px 4px;}
.nph-root .nph-cats2-chip.is-active .nph-cats2-badge,
.nph-root .nph-cats3-chip.is-active .nph-cats3-badge{
  background:rgba(255,255,255,0.22);
  color:#fff;
  border-color:rgba(255,255,255,0.4);
}
.nph-root .nph-cats1-chip:hover{
  color:var(--nph-gnb-hover-text);
  background:var(--nph-gnb-hover-bg);
}
.nph-root .nph-cats1-chip.is-active{
  color:var(--nph-gnb-active-text);
  background:var(--nph-gnb-active-bg);
  font-weight:800;
  text-shadow:0 1px 2px rgba(0,0,0,0.25);
}
/* list/detail 컨텍스트 = GNB 막대가 cat-accent 색이므로 active 칩은
 *   더 진한(어두운) 버전으로 차별화 + 강한 인디케이터. 인덱스/board 컨텍스트는
 *   GNB 막대가 primary 톤 → active 칩은 admin active_bg 토큰 그대로. */
.nph-root[data-nph-ctx="list"] .nph-cats1-chip.is-active,
.nph-root[data-nph-ctx="detail"] .nph-cats1-chip.is-active,
.nph-root[data-nph-ctx="board"] .nph-cats1-chip.is-active{
  background:color-mix(in srgb, var(--nph-cat-accent) 55%, #000);
  border-color:rgba(255,255,255,0.25);
  box-shadow:inset 0 -2px 0 0 var(--nph-gnb-active-ind, #ffffff), 0 2px 8px color-mix(in srgb, var(--nph-cat-accent) 40%, transparent);
}
.nph-root .nph-cats1-chip.is-active::after{
  content:"";position:absolute;left:6px;right:6px;bottom:0;
  height:2px;background:var(--nph-gnb-active-ind, #ffffff);
  border-radius:2px 2px 0 0;
  box-shadow:0 -1px 6px color-mix(in srgb,var(--nph-gnb-active-ind, #ffffff) 50%,transparent);
}
/* (구) `.nph-cats1.is-board` 분기 — board 컨텍스트도 인덱스/리스트와 동일한
 *      1차 카테고리 GNB 를 출력하도록 단일화되어 selector 폐기. */

/* ── 데스크탑(≥769px) — GNB 는 1차만 균등 배분. 하위 2·3차는 LNB 에서만 출력. */
@media (min-width:769px){
  .nph-root .nph-cats1{height:auto;min-height:36px;align-items:stretch;overflow:visible;}
  .nph-root .nph-cats1-scroller{height:auto;min-height:36px;padding:0;gap:0;overflow:visible;flex-wrap:nowrap;width:100%;}
  .nph-root .nph-c1-item{height:auto;min-height:36px;align-items:stretch;flex:1 1 0;min-width:0;}
  .nph-root .nph-cats1-chip{
    width:100%;height:auto;min-height:36px;
    border-radius:0;border:0;
    padding:2px 6px 3px;
  }
  /* hover 드롭다운 — 2차 카테고리 즉시 미리보기 (데스크탑 전용) */
  .nph-root .nph-c1-item.has-dd .nph-c1-dd{
    position:absolute;top:100%;left:0;min-width:240px;max-width:340px;
    background:var(--nph-drop-bg, #fff);
    color:var(--nph-drop-text, #374151);
    border:1px solid #e5e7eb;
    border-top:0;
    box-shadow:0 12px 32px rgba(0,0,0,0.16);
    border-radius:0 0 10px 10px;
    padding:6px;
    display:none;flex-direction:column;gap:1px;
    z-index:50;
    max-height:calc(100vh - 200px);overflow-y:auto;
  }
  .nph-root .nph-c1-item.has-dd:hover > .nph-c1-dd,
  .nph-root .nph-c1-item.has-dd:focus-within > .nph-c1-dd{display:flex;}
  .nph-root .nph-c1-dd a{
    display:flex;align-items:center;gap:8px;
    padding:8px 12px;
    font-size:15px;color:inherit;
    border-radius:6px;
    transition:background .12s,color .12s;
  }
  .nph-root .nph-c1-dd a:hover{
    background:var(--nph-drop-hover-bg);
    color:var(--nph-drop-hover-text);
  }
  .nph-root .nph-c1-dd a > span{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .nph-root .nph-c1-dd a > em{
    font-style:normal;font-size:14px;font-weight:700;
    padding:1px 7px;border-radius:999px;
    background:color-mix(in srgb, var(--nph-c1-color, var(--nph-cat-accent)) 14%, #fff);
    color:color-mix(in srgb, var(--nph-c1-color, var(--nph-cat-accent)) 70%, #000);
    border:1px solid color-mix(in srgb, var(--nph-c1-color, var(--nph-cat-accent)) 22%, #fff);
  }
}
/* 모바일은 hover 가 없으니 드롭다운 미노출 — GNB 1차 칩 탭이 list 이동 */
@media (max-width:768px){
  .nph-root .nph-c1-dd{display:none !important;}
}

/* 2026-05-26 — 12 도메인 진입행 (정체성 ↔ 1차 GNB 사이) */
.nph-root .nph-domains{
  background:#fff;border-bottom:1px solid #f3f4f6;
  padding:6px 12px;display:flex;align-items:center;gap:6px;
  overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;white-space:nowrap;
}
.nph-root .nph-domains::-webkit-scrollbar{display:none;}
.nph-root .nph-domain-chip{
  flex-shrink:0;display:inline-flex;align-items:center;gap:5px;
  height:30px;padding:0 12px;
  font-size:15px;font-weight:600;
  color:#475569;background:#f8fafc;
  border:1px solid #e2e8f0;border-radius:999px;
  transition:background .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s;
  --nph-d-color:#475569;
}
.nph-root .nph-domain-chip > i{font-size:14px;color:var(--nph-d-color);}
.nph-root .nph-domain-chip:hover{
  color:var(--nph-d-color);
  background:color-mix(in srgb,var(--nph-d-color) 8%,#fff);
  border-color:color-mix(in srgb,var(--nph-d-color) 30%,#fff);
}
.nph-root .nph-domain-chip.is-active{
  background:var(--nph-d-color);color:#fff;border-color:var(--nph-d-color);
  box-shadow:0 2px 8px color-mix(in srgb,var(--nph-d-color) 30%,transparent);
  transform:translateY(-1px);
}
.nph-root .nph-domain-chip.is-active > i{color:#fff;}
@media (max-width:768px){
  .nph-root .nph-domains{padding:5px var(--news-page-inset-x-md, 10px);gap:5px;}
  .nph-root .nph-domain-chip{font-size:14px;height:28px;padding:0 11px;}
}

/* ③ 액션 칩 — 한 줄 최소화 */
.nph-actions{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f9fafb;border-bottom:1px solid #e5e7eb;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;white-space:nowrap;}
.nph-actions::-webkit-scrollbar{display:none;}
.nph-actions a{flex-shrink:0;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;height:28px;border-radius:999px;font-size:14px;font-weight:600;background:#fff;border:1px solid #e5e7eb;color:#4b5563;transition:background .15s,color .15s,border-color .15s,box-shadow .15s;}
.nph-actions a:hover{background:var(--nph-accent);color:#fff;border-color:var(--nph-accent);box-shadow:0 2px 6px color-mix(in srgb,var(--nph-accent) 30%,transparent);}
.nph-actions a.is-hot{background:#ef4444;color:#fff;border-color:#ef4444;}
.nph-actions a.is-hot:hover{background:#dc2626;border-color:#dc2626;box-shadow:0 2px 8px rgba(239,68,68,0.35);}
.nph-actions a.is-current{background:var(--nph-accent);color:#fff;border-color:var(--nph-accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--nph-accent) 20%,transparent);}
.nph-actions a i{font-size:14px;}
/* 인라인 검색 바 */
.nph-searchbar{display:inline-flex;align-items:center;gap:0;flex-shrink:0;border:1px solid #e5e7eb;border-radius:999px;overflow:hidden;background:#fff;margin-left:auto;}
.nph-searchbar-input{border:none;outline:none;padding:4px 12px;font-size:14px;font-family:inherit;min-width:140px;max-width:200px;background:transparent;}
.nph-searchbar-btn{padding:0 10px;height:28px;background:var(--nph-accent);color:#fff;border:none;cursor:pointer;font-size:14px;display:flex;align-items:center;}
.nph-searchbar-btn:hover{filter:brightness(.9);}
/* 상세 필터 바 */
.nph-filter-bar{background:#f8fafc;border-bottom:1px solid #e5e7eb;padding:6px 12px;}
.nph-filter-form{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.nph-filter-input{padding:5px 10px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-family:inherit;background:#fff;}
.nph-filter-select{padding:5px 8px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;font-family:inherit;background:#fff;}
.nph-filter-date{width:130px;}
.nph-filter-submit{padding:5px 14px;background:var(--nph-accent);color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:700;cursor:pointer;}
.nph-filter-more{padding:5px 12px;border:1px solid #e2e8f0;border-radius:6px;font-size:14px;color:#475569;text-decoration:none;display:inline-flex;align-items:center;gap:4px;}
.nph-filter-more:hover{border-color:var(--nph-accent);color:var(--nph-accent);}
@media(max-width:640px){
  .nph-searchbar-input{min-width:100px;}
  .nph-filter-date{display:none;}
}

/* ④a 2차 chip — 활성 강조 강화 */
.nph-cats2{background:color-mix(in srgb,var(--nph-cat-accent) 6%,#fff);border-bottom:1px solid color-mix(in srgb,var(--nph-cat-accent) 12%,#fff);padding:8px 12px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;align-items:center;}
.nph-cats2::-webkit-scrollbar{display:none;}
.nph-cats2-label{flex-shrink:0;font-size:14px;font-weight:700;color:var(--nph-cat-accent);padding:0 8px 0 4px;opacity:.85;}
.nph-cats2-chip{flex-shrink:0;display:inline-flex;align-items:center;height:30px;padding:0 14px;font-size:15px;font-weight:500;color:#4b5563;background:#fff;border:1px solid color-mix(in srgb,var(--nph-cat-accent) 22%,#e5e7eb);border-radius:999px;white-space:nowrap;transition:background .15s,color .15s,border-color .15s,transform .15s,box-shadow .15s;}
.nph-cats2-chip .nph-cats2-chip-label{padding:0;opacity:1;color:inherit;font-weight:inherit;font-size:inherit;line-height:1.2;}
.nph-cats2-chip:hover{color:var(--nph-cat-accent);border-color:var(--nph-cat-accent);background:color-mix(in srgb,var(--nph-cat-accent) 8%,#fff);}
.nph-cats2-chip.is-active{background:var(--nph-cat-accent);color:#fff;border-color:var(--nph-cat-accent);font-weight:700;box-shadow:0 2px 8px color-mix(in srgb,var(--nph-cat-accent) 30%,transparent);transform:translateY(-1px);}
/* 「{1차}+전체」합병 칩 — 활성 시 부각 */
.nph-cats2-chip--merged{font-weight:700;letter-spacing:-0.02em;border-width:1.5px;}
.nph-cats2-chip--merged.is-active{
  font-weight:800;
  box-shadow:0 3px 12px color-mix(in srgb,var(--nph-cat-accent) 42%,transparent);
  outline:2px solid color-mix(in srgb,var(--nph-cat-accent) 35%,#fff);
  outline-offset:1px;
}
.nph-cats3{background:#fff;border-bottom:1px solid #f3f4f6;padding:7px 12px;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;align-items:center;}
.nph-cats3::-webkit-scrollbar{display:none;}
.nph-cats3-label{flex-shrink:0;font-size:14px;font-weight:700;color:#64748b;padding:0 8px 0 4px;}
.nph-cats3-chip{flex-shrink:0;display:inline-flex;align-items:center;height:28px;padding:0 12px;font-size:15px;font-weight:500;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;white-space:nowrap;transition:background .15s,color .15s,border-color .15s;}
.nph-cats3-chip:hover{color:var(--nph-cat-accent);border-color:var(--nph-cat-accent);background:color-mix(in srgb,var(--nph-cat-accent) 7%,#fff);}
.nph-cats3-chip.is-active{background:color-mix(in srgb,var(--nph-cat-accent) 14%,#fff);color:var(--nph-cat-accent);border-color:var(--nph-cat-accent);font-weight:700;}

/* ④b 브레드크럼 — 상단 배너 직하(nph-root 첫 자식).
 * 배너↔크럼 시각 간격 = zone margin-bottom 20px만 (padding-top 0). */
.nph-crumb{padding:0 16px 8px;background:#fff;font-size:var(--fs-sm,15px);color:#9ca3af;display:flex;align-items:center;gap:4px;flex-wrap:wrap;border-bottom:1px solid #f3f4f6;}
.nph-crumb a,.nph-crumb span{display:inline-flex;align-items:center;gap:4px;color:#9ca3af;}
.nph-crumb a{transition:color .15s;}
.nph-crumb a:hover{color:var(--nph-cat-accent);}
.nph-crumb .sep{color:#d1d5db;margin:0 2px;font-size:var(--fs-xs,14px);}
.nph-crumb .last{color:var(--nph-cat-accent);font-weight:700;}
.nph-crumb .last.is-title{color:#111827;max-width:min(60vw,640px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* 모바일 ≤768px — 폰트·패딩(뉴스 인덱스 .jhi-container inset SSOT) + 활성 칩 강조 */
@media (max-width:768px){
  .nph-identity{padding:8px var(--news-page-inset-x-md, 10px);}
  .nph-identity[data-mode="compact"]{padding:5px var(--news-page-inset-x-md, 10px);}
  .nph-identity.nph-identity--news{align-items:flex-start;gap:8px;}
  .nph-identity.nph-identity--news .nph-identity-mark,
  .nph-identity.nph-identity--news[data-mode="compact"] .nph-identity-mark{width:auto;min-width:34px;height:22px;padding:0 8px;font-size:14px;border-radius:5px;white-space:nowrap;}
  .nph-identity.nph-identity--news .nph-identity-mark .np-txt{font-size:14px;font-weight:800;white-space:nowrap;}
  .nph-identity.nph-identity--news .nph-identity-text{flex-direction:column;align-items:flex-start;gap:2px;}
  .nph-identity.nph-identity--news .nph-identity-brand{font-size:15px;}
  .nph-identity.nph-identity--news .nph-brand-en{font-size:15px;letter-spacing:0.08em;}
  .nph-identity.nph-identity--news .nph-identity-slogan{font-size:14px;line-height:1.25;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
  /* 정사각 리셋 금지 — 문자 마크는 가로 패딩 박스 유지 */
  .nph-identity-mark,
  .nph-identity[data-mode="compact"] .nph-identity-mark{width:auto;min-width:34px;height:22px;padding:0 8px;font-size:var(--fs-xs,14px);white-space:nowrap;}
  .nph-identity-brand{font-size:var(--fs-base,16px);}
  .nph-identity-slogan{font-size:var(--fs-xs,14px);}
  /* deal — 모바일 설명(부동산·자동차…) 폐기 */
  .nph-root[data-portal="deal"] .nph-identity-slogan{display:none!important;}
  .nph-cats1{height:32px;}
  .nph-cats1-scroller{height:32px;gap:4px;padding:0 var(--news-page-inset-x-md, 10px);}
  .nph-c1-item{height:32px;}
  .nph-cats1-chip{font-size:15px;height:28px;padding:0 12px;}

  /* ── 모바일 활성 1차 카테고리 ── 한눈에 식별 + 센터 정렬과 시너지 ── */
  .nph-root .nph-cats1-chip.is-active{
    font-size:15px;
    font-weight:800;
    height:28px;
    padding:0 14px;
    border:2px solid color-mix(in srgb, var(--nph-gnb-active-ind, #ffffff) 65%, transparent);
    box-shadow:
      0 4px 14px color-mix(in srgb, var(--nph-cat-accent) 55%, transparent),
      0 0 0 1px rgba(0,0,0,0.06);
    letter-spacing:-0.2px;
  }
  /* 활성 칩 좌측 dot — 작은 강조 표식 */
  .nph-root .nph-cats1-chip.is-active > span::before{
    content:"";
    display:inline-block;
    width:6px;height:6px;border-radius:50%;
    background:var(--nph-gnb-active-ind, #ffffff);
    box-shadow:0 0 0 3px color-mix(in srgb, var(--nph-gnb-active-ind, #ffffff) 30%, transparent);
    margin-right:8px;
    vertical-align:middle;
    position:relative;top:-1px;
  }
  /* 활성 칩 하단 인디케이터 모바일 강화 */
  .nph-root .nph-cats1-chip.is-active::after{
    height:5px;
    left:6px;right:6px;
    border-radius:3px 3px 0 0;
  }

  .nph-actions{padding:6px var(--news-page-inset-x-md, 10px);}
  .nph-cats2{padding:6px var(--news-page-inset-x-md, 10px);}
  .nph-cats2-label{font-size:14px;padding:0 4px 0 2px;}
  .nph-cats2-chip{font-size:14px;height:28px;padding:0 12px;}
  /* 활성 2차 칩도 모바일에서 강조 */
  .nph-root .nph-cats2-chip.is-active{
    font-size:15px;height:32px;padding:0 16px;
    box-shadow:0 3px 10px color-mix(in srgb, var(--nph-cat-accent) 35%, transparent);
  }
  .nph-root .nph-cats2-chip--merged.is-active{
    font-size:15px;font-weight:800;height:auto;min-height:34px;padding:6px 16px;
    box-shadow:0 4px 14px color-mix(in srgb, var(--nph-cat-accent) 48%, transparent);
  }

  /* 마이페이지 — 선택 메뉴 활성 부각 + 가로 센터 정렬(스크롤러 JS 연동) */
  .nph-root.nph-mypage .nph-cats1-scroller,
  .nph-root.nph-mypage .nph-cats2{
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }
  .nph-root.nph-mypage .nph-c1-item,
  .nph-root.nph-mypage .nph-cats2-chip{
    scroll-snap-align:center;
  }
  .nph-root.nph-mypage .nph-cats1-chip.is-active,
  .nph-root.nph-mypage .nph-cats2-chip.is-active{
    transform:scale(1.04);
    z-index:1;
    position:relative;
  }
  .nph-root.nph-mypage .nph-cats2-chip.is-active{
    font-size:16px;
    font-weight:800;
    padding:0 18px;
    min-height:34px;
    border-width:2px;
    box-shadow:0 4px 14px color-mix(in srgb, var(--nph-cat-accent) 40%, transparent);
  }
  .nph-cats3{padding:6px var(--news-page-inset-x-md, 10px);}
  .nph-cats3-label{font-size:14px;padding:0 4px 0 2px;}
  .nph-cats3-chip{font-size:14px;height:28px;padding:0 11px;}
  .nph-crumb{padding:0 var(--news-page-inset-x-md, 10px) 6px;font-size:14px;}
  .nph-crumb .last.is-title{max-width:60vw;}
}
@media (max-width:480px){
  .nph-identity,
  .nph-identity[data-mode="compact"],
  .nph-cats1-scroller,
  .nph-root .nph-domains,
  .nph-actions,
  .nph-cats2,
  .nph-cats3,
  .nph-crumb{
    padding-left:var(--news-page-inset-x-sm, 8px);
    padding-right:var(--news-page-inset-x-sm, 8px);
  }
  .nph-identity[data-mode="compact"]{padding-top:5px;padding-bottom:5px;}
  .nph-identity{padding-top:8px;padding-bottom:8px;}
  .nph-cats1-scroller{padding-top:0;padding-bottom:0;}
  .nph-root .nph-domains{padding-top:5px;padding-bottom:5px;}
  .nph-actions{padding-top:6px;padding-bottom:6px;}
  .nph-cats2{padding-top:6px;padding-bottom:6px;}
  .nph-cats3{padding-top:6px;padding-bottom:6px;}
  .nph-crumb{padding-top:0;padding-bottom:6px;}
}
.nph-root .nph-cats1-chip.is-locked,.nph-root .nph-cats2-chip.is-locked{opacity:.55;pointer-events:none;}
.mp-lnb-h-wrap .nl-sec1{margin:12px 0 14px;}

/* uh 통합헤더 단일축 — nph sticky는 uh 바로 아래 (이중 top:0 겹침 방지) */
@media (max-width: 768px) {
  .l14-shell .nph-root,
  .l14-shell [data-nph-root],
  .uh-site-header ~ .nph-root,
  .uh-site-header ~ [data-nph-root] {
    top: var(--uh-sticky-bottom, 56px);
    z-index: 1890;
  }
}
@media (max-width: 779px) {
  html.layout-mobile .uh-mobile-tabbar {
    z-index: 1950;
  }
}
