/* 이 파일은 scripts/header-contract.mjs 가 생성한다. 직접 편집하지 마라.
   재생성: node scripts/build-header-css.mjs
   드리프트는 npm run audit 와 header-contract.test.mjs 가 잡는다. */
:root{--site-shell-max:1440px;--site-gutter:16px;--site-header-h:96px;--site-logo:54px;--site-btn-h:54px;--site-brand-fs:36px;--site-footer-max:1080px;--site-footer-gutter:48px}
@media(min-width:1025px){:root{--site-logo:58px;--site-btn-h:58px;--site-brand-fs:39px}}
@media(max-width:1024px){:root{--site-btn-h:48px}}
@media(max-width:860px){:root{--site-header-h:76px;--site-logo:40px;--site-btn-h:42px;--site-brand-fs:28px}}
@media(max-width:768px){:root{--site-header-h:70px;--site-logo:36px;--site-btn-h:40px;--site-brand-fs:25px;--site-footer-gutter:22px}}

/* 헤더 폰트는 **랜딩 canonical 과 같은 Pretendard 스택**을 명시 고정한다. 그러지 않으면 표면마다 body 폰트를
   상속해(랜딩=Pretendard · Wiki=시스템/Noto) 같은 헤더가 다른 글꼴로 렌더됐다(옛 .wiki-header 는 이 스택을 명시했지만
   새 .bd-hd 는 빠져 있었다). inherit 하는 자식(.bd-hd-lang·langitem)도 이 값을 물려받는다. */
.bd-hd{position:sticky;top:0;z-index:100;height:var(--site-header-h);background:rgba(255,255,255,0.93);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #F4F0EB;transition:box-shadow .2s ease;font-family:"Pretendard Variable",Pretendard,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;}
.bd-hd-in{max-width:var(--site-shell-max);margin:0 auto;padding:0 var(--site-gutter);height:var(--site-header-h);display:flex;align-items:center;gap:20px;}
.bd-hd-brand{display:flex;align-items:center;gap:10px;flex:none;font-weight:800;color:#F7544B;font-size:var(--site-brand-fs);letter-spacing:-0.5px;}
.bd-hd-brand img{width:var(--site-logo);height:var(--site-logo);display:block;flex:none;object-fit:contain;}
.bd-hd-brand span{font-size:var(--site-brand-fs);font-weight:800;color:#F7544B;letter-spacing:-0.5px;}
.bd-hd-nav{display:flex;align-items:center;gap:34px;flex:1;justify-content:center;min-width:0;}
.bd-hd-nav a{font-size:19px;font-weight:800;color:#26262B;white-space:nowrap;transition:color .15s ease;}
.bd-hd-nav a:hover{color:#F7544B;}
.bd-hd-right{display:flex;align-items:center;gap:12px;flex:none;}
.bd-hd-cta{display:inline-flex;align-items:center;height:var(--site-btn-h);padding:0 30px;border-radius:999px;background:#F7544B;color:#fff;font-size:17px;font-weight:800;white-space:nowrap;box-shadow:0 8px 18px rgba(247,84,75,0.28);}
/* 모바일 전용 소형 App 버튼 — 데스크톱의 큰 '앱 다운로드' CTA(.bd-hd-cta) 대신 모바일 헤더에서만 노출.
   동작(링크/이동)은 CTA 와 동일(hrefs.download). KR·햄버거와 같은 흰 pill 계열(테두리+아주 약한 그림자). */
.bd-hd-appmini{display:none;align-items:center;justify-content:center;height:var(--site-btn-h);padding:0 15px;border-radius:999px;border:1px solid #E2DAD0;background:#fff;color:#F7544B;font-size:14px;font-weight:800;white-space:nowrap;font-family:inherit;box-shadow:0 1px 2px rgba(27,27,31,0.06),0 2px 5px rgba(27,27,31,0.05);}
.bd-hd-langwrap{position:relative;}
.bd-hd-lang{display:flex;align-items:center;gap:8px;height:var(--site-btn-h);padding:0 18px;border-radius:999px;border:1px solid #E2DAD0;background:#FFFFFF;cursor:pointer;font-size:17px;font-weight:800;color:#1B1B1F;white-space:nowrap;font-family:inherit;box-shadow:0 1px 2px rgba(27,27,31,0.06),0 2px 5px rgba(27,27,31,0.05);}
.bd-hd-langmenu{display:none;position:absolute;top:52px;right:0;min-width:212px;max-height:64vh;overflow-y:auto;background:#fff;border:1px solid #EFE9E3;border-radius:14px;box-shadow:0 16px 40px rgba(27,27,31,0.14);padding:8px;flex-direction:column;z-index:60;}
.bd-hd-langmenu.open{display:flex;}
.bd-hd-langitem{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:40px;padding:0 12px;border:none;background:transparent;border-radius:9px;cursor:pointer;font-size:15px;font-weight:600;color:#1B1B1F;text-align:left;text-decoration:none;white-space:nowrap;font-family:inherit;}
.bd-hd-langitem.active{background:#FFF1EF;}
.bd-hd-langitem:hover{background:#FAF6F2;}
.bd-hd-langitem>span:first-child{overflow:hidden;text-overflow:ellipsis;}
.bd-hd-langitem .code{flex:none;font-size:12px;font-weight:700;color:#9A958E;}
.bd-hd-burger{display:none;align-items:center;justify-content:center;width:44px;height:44px;flex:none;border-radius:11px;border:1px solid #E2DAD0;background:#fff;cursor:pointer;box-shadow:0 1px 2px rgba(27,27,31,0.06),0 2px 5px rgba(27,27,31,0.05);}
.bd-hd-mobile{display:none;background:#fff;border-bottom:1px solid #F1ECE6;padding:8px 20px 16px;flex-direction:column;gap:4px;position:relative;z-index:70;}
.bd-hd-mobile.open{display:flex;}
.bd-hd-mobile a{padding:12px 4px;font-size:16px;font-weight:600;color:#3A3A40;border-bottom:1px solid #F4EFE9;}
.bd-hd-mobile a.bd-hd-mobile-cta{font-weight:800;color:#F7544B;border-bottom:none;}
.bd-hd :focus-visible,.bd-hd-mobile :focus-visible{outline:2px solid #F7544B;outline-offset:3px;border-radius:8px;}

@media(min-width:1025px){
  .bd-hd-nav a{font-size:21px;}
  .bd-hd-cta{padding:0 33px;font-size:19px;}
  .bd-hd-lang{padding:0 20px;font-size:19px;}
}
@media(max-width:1024px){
  .bd-hd-in{max-width:100%;}
  .bd-hd-nav{gap:22px;}
  .bd-hd-nav a{font-size:16px;}
  .bd-hd-cta{padding:0 20px;font-size:15px;}
  .bd-hd-lang{padding:0 14px;font-size:14px;}
}
@media(max-width:860px){
  .bd-hd-in{gap:12px;justify-content:space-between;padding-left:18px;padding-right:18px;}
  .bd-hd-brand{min-width:0;gap:8px;}
  .bd-hd-brand span{line-height:1;}
  .bd-hd-nav{display:none;}
  .bd-hd-cta{display:none;}
  .bd-hd-appmini{display:inline-flex;}
  .bd-hd-burger{display:flex;width:42px;height:42px;}
  .bd-hd-lang{padding:0 12px;font-size:14px;gap:6px;}
  .bd-hd-lang svg:first-child{width:16px;height:16px;}
}
@media(max-width:768px){
  .bd-hd-in{gap:8px;padding-left:16px;padding-right:14px;}
  .bd-hd-brand span{letter-spacing:-0.4px;}
  .bd-hd-appmini{padding:0 12px;font-size:13px;border-radius:18px;}
  .bd-hd-lang{min-width:58px;justify-content:center;padding:0 12px;border-radius:18px;}
  .bd-hd-lang svg:first-child,.bd-hd-lang svg:last-child{display:none;}
  .bd-hd-burger{width:40px;height:40px;border-radius:12px;}
}
@media(prefers-reduced-motion:reduce){
  .bd-hd,.bd-hd-nav a{transition:none;}
}
