.hero-section > img[alt="소소킹 로고"] {
  content: url('/logo.png?v=20260729-brand-unified-1');
  display: block !important;
  visibility: visible !important;
  width: 148px !important;
  height: 148px !important;
  min-width: 148px;
  min-height: 148px;
  object-fit: contain;
  border-radius: 0;
  background: transparent;
  filter: drop-shadow(0 12px 22px rgba(0,0,0,.38));
}

.page-header .logo,
.admin-header .logo {
  display: inline-flex;
  align-items: center;
  gap: 9px;
}

.page-header .logo::before,
.admin-header .logo::before {
  content: "";
  display: block;
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  background: transparent url('/icons/sosoking-192.png?v=20260729-brand-unified-1') center/contain no-repeat;
  filter: drop-shadow(0 3px 7px rgba(0,0,0,.3));
}

/* PC에서는 본문 폭과 헤더·하단 메뉴 폭을 일치시킨다. */
.page-header {
  width: min(100%, 600px);
  margin-left: auto;
  margin-right: auto;
}

/* left:50% + translate 방식은 일부 모바일/PWA에서 기존 left:0과 충돌할 수 있다. */
#bottom-nav {
  left: 0;
  right: 0;
  width: 100%;
  max-width: 600px;
  height: calc(66px + env(safe-area-inset-bottom, 0px));
  margin-left: auto;
  margin-right: auto;
  transform: none;
  box-sizing: border-box;
}

/* 판결소는 홈·판결기록·접수·계정의 4개 메뉴만 사용한다. */
#bottom-nav .nav-item {
  flex: 1 1 25%;
  min-width: 0;
  gap: 2px;
  padding: 7px 0 6px;
}

#bottom-nav .nav-icon { font-size: 23px; }

#bottom-nav .nav-cta .nav-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 30px;
  overflow: visible;
}

#bottom-nav .nav-label {
  font-size: 8.8px;
  white-space: nowrap;
}

#nav-account-icon img {
  width: 27px !important;
  height: 27px !important;
}

#toast-container,
#theme-toggle { bottom: 88px; }

#site-footer { padding-bottom: 84px; }

@media (min-width: 601px) {
  .page-header {
    border-left: 1px solid var(--border);
    border-right: 1px solid var(--border);
    border-radius: 0 0 12px 12px;
  }

  #bottom-nav {
    border-left: 1px solid var(--border);
    border-right: 1px solid var(--border);
    border-radius: 14px 14px 0 0;
    box-shadow: 0 -8px 28px rgba(0,0,0,.28);
  }
}

@media (max-width: 520px) {
  .hero-section > img[alt="소소킹 로고"] {
    width: 132px !important;
    height: 132px !important;
    min-width: 132px;
    min-height: 132px;
  }
  .page-header .logo::before,
  .admin-header .logo::before {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
  }
}

.auth-brand-logo {
  display: block;
  width: 112px;
  height: 112px;
  object-fit: contain;
  margin: 0 auto 10px;
  filter: drop-shadow(0 10px 18px rgba(0,0,0,.34));
}

.nav-brand-icon {
  display: block;
  width: 40px;
  height: 40px;
  max-width: none;
  object-fit: contain;
  margin: -7px auto -5px;
  filter: drop-shadow(0 2px 4px rgba(0,0,0,.35));
}

.footer-brand-logo {
  display: block;
  width: 58px;
  height: 58px;
  object-fit: contain;
  margin: 0 auto 12px;
  filter: drop-shadow(0 6px 12px rgba(0,0,0,.3));
}

/* 메인, 판결문, 관리자 화면을 모두 고딕체로 통일한다. */
:root {
  --font-serif: 'Noto Sans KR', Arial, sans-serif;
  --font-sans: 'Noto Sans KR', Arial, sans-serif;
}

html,
body,
body * {
  font-family: 'Noto Sans KR', Arial, sans-serif !important;
}

button,
input,
textarea,
select,
option { font: inherit; }
