/* Bootstrap 5 위에 얹는 최소 커스텀 (admin 테마 레이아웃) */

:root {
  --hosub-sidebar-w: 240px;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans KR", sans-serif;
}

/* --- 사이드바 --- */
.hosub-sidebar {
  width: var(--hosub-sidebar-w);
}

@media (min-width: 992px) {
  .hosub-sidebar {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1030;
    display: flex;
    visibility: visible !important;
    transform: none !important;
  }
  .hosub-main {
    margin-left: var(--hosub-sidebar-w);
  }
}

.sidebar-brand {
  align-items: center;
  gap: 8px;
  font-size: 1.25rem;
  font-weight: 600;
  padding: 18px 20px;
  letter-spacing: -0.01em;
}

.hosub-sidebar .nav-link {
  color: rgba(255, 255, 255, 0.75);
  border-radius: 8px;
  padding: 8px 12px;
  margin-bottom: 2px;
  display: flex;
  align-items: center;
  gap: 10px;
}
.hosub-sidebar .nav-link:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
}
.hosub-sidebar .nav-link.active {
  background: var(--bs-primary);
  color: #fff;
}
.hosub-sidebar .nav-link i {
  font-size: 1.05rem;
}

/* --- 네비바 / 메인 --- */
.hosub-navbar {
  background: var(--bs-body-bg);
  z-index: 1020;
}
.brand-toggle {
  cursor: default;
  user-select: none;
}

/* stat 타일 */
.stat .stat-value {
  font-size: 1.6rem;
  font-weight: 650;
  line-height: 1.1;
  letter-spacing: -0.02em;
}
.stat .stat-label {
  font-size: 0.8rem;
  color: var(--bs-secondary-color);
}

/* 카드 헤더 아이콘 */
.card-header .bi {
  opacity: 0.8;
  margin-right: 6px;
}

.mono {
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.8rem;
}

/* Bootstrap 에 없는 점선 테두리 유틸 */
.border-dashed {
  border-style: dashed !important;
}

/* 로그인 */
.login-card {
  width: 100%;
  max-width: 360px;
}

/* 이스터에그 훅: 파티 모드 */
body.hosub-party .navbar-brand {
  animation: hosub-wobble 0.6s ease-in-out infinite;
  display: inline-block;
}
@keyframes hosub-wobble {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-4deg); }
  75% { transform: rotate(4deg); }
}
