/* 국세청 홈택스(hometax.go.kr) 배색을 참고한 테마 */
:root {
  --brand-blue: #2466eb;
  --brand-blue-hover: #1c50c4;
  --brand-blue-light: #eaf1fd;
  --brand-navy: #004288;
  --brand-navy-dark: #002c5c;
  --text-dark: #111111;
}

body {
  background-color: #f2f5fa;
}

/* 상단 내비게이션 */
.site-navbar {
  background: linear-gradient(100deg, var(--brand-navy) 0%, var(--brand-blue) 65%, var(--brand-blue) 100%) !important;
  box-shadow: 0 2px 10px rgba(0, 42, 88, 0.25);
}
.site-navbar .navbar-brand {
  color: #ffffff;
  letter-spacing: 0.02em;
}
.site-navbar .nav-link {
  color: rgba(255, 255, 255, 0.85);
  position: relative;
  padding-top: 0.85rem;
  padding-bottom: 0.85rem;
}
.site-navbar .navbar-brand:hover,
.site-navbar .nav-link:hover,
.site-navbar .nav-link:focus {
  color: #ffffff;
}
.site-navbar .nav-link.active,
.site-navbar .nav-link.fw-700 {
  color: #ffffff;
  font-weight: 700;
}
.site-navbar .nav-link.active::after {
  content: '';
  position: absolute;
  left: 0.9rem;
  right: 0.9rem;
  bottom: 0.35rem;
  height: 3px;
  border-radius: 2px;
  background-color: #ffffff;
}
.site-navbar .dropdown-menu {
  background-color: #ffffff;
  border: none;
  border-radius: 0.5rem;
  box-shadow: 0 10px 24px rgba(0, 42, 88, 0.2);
  overflow: hidden;
}
.site-navbar .dropdown-item {
  color: var(--text-dark);
}
.site-navbar .dropdown-item:hover,
.site-navbar .dropdown-item:focus {
  background-color: var(--brand-blue-light);
  color: var(--brand-blue);
}
.site-navbar .dropdown-item.active {
  background-color: var(--brand-blue);
  color: #ffffff;
}

/* 카드 */
.card {
  border: none;
  border-top: 3px solid var(--brand-blue);
  box-shadow: 0 4px 16px rgba(13, 59, 140, 0.08);
}

/* 제목 강조 */
h1 {
  position: relative;
  padding-left: 0.9rem;
  border-left: 5px solid var(--brand-blue);
}

/* 버튼 */
.btn-primary {
  background: linear-gradient(135deg, var(--brand-blue), var(--brand-navy));
  border-color: var(--brand-blue);
  box-shadow: 0 4px 10px rgba(36, 102, 235, 0.35);
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background: var(--brand-blue-hover) !important;
  border-color: var(--brand-blue-hover) !important;
  box-shadow: 0 4px 12px rgba(28, 80, 196, 0.45);
}
.btn-outline-secondary {
  color: var(--brand-navy);
  border-color: var(--brand-navy);
}
.btn-outline-secondary:hover,
.btn-outline-secondary:focus {
  background-color: var(--brand-navy);
  border-color: var(--brand-navy);
}

/* 입력 폼 포커스 */
.form-control:focus,
.form-select:focus {
  border-color: var(--brand-blue);
  box-shadow: 0 0 0 0.2rem rgba(36, 102, 235, 0.2);
}

/* 결과 표 강조색 */
.table-primary {
  --bs-table-bg: var(--brand-blue-light);
}
.table-success {
  --bs-table-bg: #e1f0e6;
  font-size: 1.05em;
}
.table-success th,
.table-success td {
  color: var(--brand-navy-dark);
  font-weight: 700;
}
