/** 기업 전문서비스 공통 메뉴 보정 */

/* 기업전문서비스(B2B) 드롭다운 흰색 배경 최종 확대 */
.mega.small.menu-small-card{
  width:540px!important;
  padding:12px!important;
}
.mega.small.menu-small-card .mega-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}
.mega.small.menu-small-card .mega-card{
  min-height:86px!important;
  padding:15px 16px!important;
  margin-bottom:10px!important;
  border-radius:14px!important;
}
@media(max-width:1180px){
  .mega.small.menu-small-card{
    width:500px!important;
  }
}

/* Header action group: CTA + compact account links */
.header-action-group{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  margin-left:10px!important;
  flex:0 0 auto!important;
}
.header-action-group .top-btn-compact{
  margin-left:0!important;
}
.header-auth{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:16px!important;
  line-height:1!important;
}
.auth-link{
  display:inline!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#667085!important;
  font-size:11px!important;
  font-weight:500!important;
  line-height:1.2!important;
  white-space:nowrap!important;
  text-decoration:none!important;
  transition:color .2s ease!important;
}
.auth-link:hover{
  color:#0f3d75!important;
}
.auth-divider{
  color:#c8cdd5!important;
  font-size:10px!important;
  line-height:1!important;
}
@media(max-width:980px){
  .header-action-group{display:none!important;}
}
@media(max-width:1430px){
  .header-action-group{margin-left:7px!important;gap:4px!important;}
  .header-action-group .top-btn-compact{padding-left:10px!important;padding-right:10px!important;}
  .auth-link{font-size:10.5px!important;}
}

/* Header responsive authority v2.2 */
.header{position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:10000!important;overflow:visible!important;background:rgba(255,255,255,.94)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;border-bottom:1px solid var(--line,#e8eee3)!important}
.header *{box-sizing:border-box!important}
.header .header-inner{width:100%!important;max-width:1460px!important;height:88px!important;margin:0 auto!important;padding:0 30px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;overflow:visible!important}
.header .logo{display:flex!important;align-items:center!important;flex:0 0 auto!important;min-width:0!important}
.header .logo img{width:64px!important;height:64px!important;object-fit:contain!important}
.header .nav{display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 auto!important;min-width:0!important;margin-left:auto!important;gap:0!important;transform:none!important;overflow:visible!important}
.header .nav-item{position:relative!important;flex:0 0 auto!important;padding:34px 10px!important;color:#29362d!important;font-size:15.5px!important;font-weight:700!important;line-height:20px!important;white-space:nowrap!important;overflow:visible!important}
.header .nav-link{display:block!important;color:inherit!important;font:inherit!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;white-space:nowrap!important;text-decoration:none!important}
.header .nav-separator{flex:0 0 auto!important;padding:0 1px!important;color:#c8cec8!important;font-size:13px!important;font-weight:400!important;line-height:1!important;pointer-events:none!important;user-select:none!important}
.header .nav-item::after{left:10px!important;right:10px!important}
.header .mega{top:88px!important;z-index:10010!important}
.header .header-action-group{display:flex!important;flex:0 0 auto!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;margin-left:8px!important;min-width:0!important}
.header .header-action-group .top-btn-compact{margin-left:0!important;padding:9px 11px!important;font-size:12px!important;line-height:20px!important;white-space:nowrap!important}
.header .header-auth{display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;min-height:15px!important;margin-left:0!important;line-height:1!important;white-space:nowrap!important}
.header .auth-link,.header .auth-login,.header .auth-signup,.header .auth-admin,.header .auth-mypage,.header .auth-logout,.header .auth-member-name,.header .auth-status{min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#667085!important;font-size:10.5px!important;font-weight:500!important;line-height:1.2!important;white-space:nowrap!important;text-decoration:none!important;transform:none!important}
.header .auth-divider{color:#c8cdd5!important;font-size:9px!important;line-height:1!important}
.header .mobile{display:none!important}
@media (max-width:1430px) and (min-width:981px){
.header .header-inner{padding-left:18px!important;padding-right:18px!important}.header .logo img{width:60px!important;height:60px!important}.header .nav-item{padding-left:6px!important;padding-right:6px!important;font-size:14.5px!important}.header .nav-item::after{left:6px!important;right:6px!important}.header .nav-separator{font-size:13px!important;padding:0!important}.header .header-action-group{margin-left:5px!important;gap:3px!important}.header .header-action-group .top-btn-compact{padding:8px 9px!important;font-size:11.5px!important}.header .header-action-group .top-btn-compact::after{width:18px!important;height:18px!important;font-size:11px!important}.header .auth-link,.header .auth-login,.header .auth-signup,.header .auth-admin,.header .auth-mypage,.header .auth-logout,.header .auth-member-name,.header .auth-status{font-size:10px!important}}
@media (max-width:1180px) and (min-width:981px){
.header .header-inner{padding-left:10px!important;padding-right:10px!important}.header .logo img{width:56px!important;height:56px!important}.header .nav-item{padding-left:3px!important;padding-right:3px!important;font-size:13.5px!important}.header .nav-item::after{left:3px!important;right:3px!important}.header .nav-separator{font-size:11px!important;padding:0!important}.header .header-action-group{margin-left:3px!important;gap:2px!important}.header .header-action-group .top-btn-compact{padding:7px 7px!important;font-size:10.8px!important}.header .header-action-group .top-btn-compact::after{display:none!important}.header .header-auth{gap:2px!important}.header .auth-link,.header .auth-login,.header .auth-signup,.header .auth-admin,.header .auth-mypage,.header .auth-logout,.header .auth-member-name,.header .auth-status{font-size:9.5px!important}.header .auth-divider{font-size:8px!important}}
@media (max-width:980px){
.header .header-inner{height:auto!important;min-height:72px!important;padding:8px 20px!important}.header .logo img{width:56px!important;height:56px!important}.header .nav,.header .header-action-group,.header .top-btn{display:none!important}.header .mobile{display:block!important;margin-left:auto!important;color:#29362d!important;font-size:13px!important;font-weight:800!important;letter-spacing:.04em!important;white-space:nowrap!important}}

/* Mobile navigation interaction authority v2.4 */
@media (max-width:980px){
  body.mobile-menu-active{overflow:hidden!important}
  .header .mobile{
    appearance:none!important;
    -webkit-appearance:none!important;
    font-family:inherit!important;
    line-height:1!important;
    touch-action:manipulation!important;
    min-width:64px!important;
    padding:12px 10px!important;
    border:1px solid #dfe7dc!important;
    border-radius:10px!important;
    background:#fff!important;
    text-align:center!important;
    cursor:pointer!important;
    user-select:none!important;
  }
  .header .mobile:focus-visible{outline:3px solid rgba(216,132,34,.28)!important;outline-offset:2px!important}
  .header.mobile-menu-open .mobile{border-color:#d88422!important;color:#c9781b!important}
  .header.mobile-menu-open .nav{
    position:absolute!important;
    top:100%!important;
    right:0!important;
    bottom:auto!important;
    left:0!important;
    z-index:10020!important;
    width:100%!important;
    height:calc(100vh - 72px)!important;
    height:calc(100dvh - 72px)!important;
    max-height:calc(100vh - 72px)!important;
    max-height:calc(100dvh - 72px)!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    margin:0!important;
    padding:14px 20px 128px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    background:#fff!important;
    box-shadow:0 16px 30px rgba(31,48,35,.14)!important;
  }
  .header.mobile-menu-open .nav-separator{display:none!important}
  .header.mobile-menu-open .nav-item{
    width:100%!important;
    padding:0!important;
    border-bottom:1px solid #edf1eb!important;
    font-size:15px!important;
  }
  .header.mobile-menu-open .nav-link{
    width:100%!important;
    padding:17px 4px!important;
    color:#29362d!important;
  }
  .header.mobile-menu-open .nav-item::after,
  .header.mobile-menu-open .mega{display:none!important}
  .header.mobile-menu-open .header-action-group{
    position:absolute!important;
    top:calc(100vh - 104px)!important;
    top:calc(100dvh - 104px)!important;
    right:0!important;
    left:0!important;
    z-index:10030!important;
    display:flex!important;
    width:100%!important;
    min-height:104px!important;
    margin:0!important;
    padding:12px 20px 16px!important;
    border-top:1px solid #e6ece3!important;
    background:#fff!important;
    box-shadow:0 -8px 18px rgba(31,48,35,.07)!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:center!important;
    gap:10px!important;
  }
  .header.mobile-menu-open .header-action-group .top-btn{
    display:flex!important;
    width:100%!important;
    min-height:40px!important;
    margin:0!important;
    align-items:center!important;
    justify-content:center!important;
  }
  .header.mobile-menu-open .header-auth{
    display:flex!important;
    min-height:26px!important;
    justify-content:center!important;
    gap:9px!important;
  }
  .header.mobile-menu-open .header-auth .auth-link,
  .header.mobile-menu-open .header-auth .auth-member-name,
  .header.mobile-menu-open .header-auth .auth-status{
    font-size:12px!important;
    line-height:1.4!important;
  }
}

/* Dropdown containment authority v2.3
   Keep all mega-menu contents inside their own white panel/card at narrow desktop widths. */
.header .mega{
  box-sizing:border-box!important;
  max-width:calc(100vw - 24px)!important;
  overflow:visible!important;
}
.header .mega .mega-grid{
  width:100%!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  min-width:0!important;
}
.header .mega .mega-grid > div{
  min-width:0!important;
}
.header .mega h4,
.header .mega .mega-card,
.header .mega .mega-card strong,
.header .mega .mega-card span{
  white-space:normal!important;
}
.header .mega .mega-card{
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
  overflow-wrap:anywhere!important;
  word-break:keep-all!important;
}
.header .mega .mega-card strong,
.header .mega .mega-card span{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:keep-all!important;
}

@media (max-width:1180px) and (min-width:981px){
  .header .nav-item > .mega:not(.small){
    width:min(520px,calc(100vw - 24px))!important;
    padding:14px!important;
  }
  .header .nav-item > .mega:not(.small) .mega-grid{
    gap:14px!important;
  }
  .header .nav-item > .mega:not(.small) .mega-card{
    padding:13px 14px!important;
  }
  .header .nav-item > .mega:not(.small) .mega-card strong{
    font-size:14px!important;
  }
  .header .nav-item > .mega:not(.small) .mega-card span{
    font-size:11.5px!important;
    line-height:1.4!important;
  }
}
