/* 이 파일은 funyworld.co.kr 과 funy-lotto.com 이 공유한다.
   한쪽만 수정하면 두 서비스가 달라 보인다. 반드시 양쪽을 함께 갱신할 것. */

/* 모든 선택자에 .funy-hd 접두 — 기존 페이지의 header/nav/a 스타일과 충돌하지 않게 한다 */
/* 상단 고정(fixed)인 이유: 로또 페이지는 body 에 여백이 있어 흐름 안에 두면 좌우가 잘린다.
   기존 body CSS 를 손대지 않고 양쪽에서 같은 모양을 내려면 뷰포트에 직접 붙이는 수밖에 없다.
   본문이 가려지지 않도록 헤더 스크립트가 body 에 .funy-hd-body 를 붙이고 그만큼 위 여백을 준다.
   (빈 spacer 요소 방식은 body 가 flex 컨테이너인 미니홈피 페이지에서 옆으로 눕는다 — 그래서 여백 방식) */
.funy-hd {
  box-sizing: border-box;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 56px;
  width: auto;
  font-family: "Noto Sans KR", "Malgun Gothic", "Apple SD Gothic Neo", sans-serif;
  font-size: 14px;
  line-height: 1;
  color: #fff;
  /* 로또 홍보 배너와 같은 보라 계열 — 두 서비스가 같은 브랜드 면을 쓴다 */
  background:
    repeating-linear-gradient(90deg, rgba(255,255,255,.04) 0 1px, transparent 1px 8px),
    linear-gradient(90deg, #1e1b4b 0%, #4c1d95 60%, #6d28d9 100%);
  box-shadow: 0 2px 8px rgba(30,27,75,.28);
  z-index: 1000;
}
/* body 전역 선택자를 쓰지 않는다 — 헤더가 붙인 클래스가 있을 때만, 위 여백 하나만 바꾼다 */
.funy-hd-body { margin-top: 56px !important; }
.funy-hd * { box-sizing: border-box; }
.funy-hd__in {
  max-width: 1100px;
  height: 100%;
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  align-items: center;
  gap: 18px;
}
.funy-hd__logo {
  font-weight: 900;
  font-size: 17px;
  letter-spacing: .04em;
  color: #fff;
  text-decoration: none;
  white-space: nowrap;
}
.funy-hd__logo span { color: #fbbf24; }
.funy-hd__nav { display: flex; gap: 4px; }
.funy-hd__switch {
  color: rgba(255,255,255,.78);
  text-decoration: none;
  padding: 8px 12px;
  border-radius: 999px;
  white-space: nowrap;
  transition: background .15s ease, color .15s ease;
}
.funy-hd__switch:hover { background: rgba(255,255,255,.12); color: #fff; }
.funy-hd__switch.is-active { background: rgba(255,255,255,.18); color: #fff; font-weight: 700; }
.funy-hd__short { display: none; }
.funy-hd__user {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}
.funy-hd__nick { font-weight: 700; }
.funy-hd__pt {
  background: rgba(251,191,36,.18);
  color: #fde68a;
  border: 1px solid rgba(251,191,36,.45);
  border-radius: 999px;
  padding: 5px 10px;
  font-weight: 700;
  font-variant-numeric: tabular-nums;
}
.funy-hd__btn {
  color: #1e1b4b;
  background: #fff;
  text-decoration: none;
  font-weight: 700;
  padding: 8px 14px;
  border-radius: 8px;
  transition: transform .12s ease, background .15s ease;
}
.funy-hd__btn:hover { transform: translateY(-1px); background: #f5f3ff; }
.funy-hd__btn--ghost { background: transparent; color: #fff; border: 1px solid rgba(255,255,255,.55); }
.funy-hd__btn--ghost:hover { background: rgba(255,255,255,.12); }

/* 키보드 접근 — 포커스 표시를 지우지 않는다 */
.funy-hd a:focus-visible {
  outline: 3px solid #fbbf24;
  outline-offset: 2px;
  border-radius: 8px;
}

/* 모바일: 높이 48px, 서비스 전환 링크는 축약 텍스트 */
@media (max-width: 640px) {
  .funy-hd { height: 48px; font-size: 13px; }
  .funy-hd-body { margin-top: 48px !important; }
  .funy-hd__in { padding: 0 10px; gap: 10px; }
  .funy-hd__logo { font-size: 15px; }
  .funy-hd__full { display: none; }
  .funy-hd__short { display: inline; }
  .funy-hd__switch { padding: 7px 9px; }
  .funy-hd__nick { max-width: 88px; overflow: hidden; text-overflow: ellipsis; }
  .funy-hd__btn { padding: 7px 10px; }
  .funy-hd__user { gap: 6px; }
}
