h1, h2, h3, h4, h5, h6 {
  font-family: 'Rajdhani', sans-serif;
  text-transform: uppercase;
}

.edgtf-si-button .edgtf-btn,
.edgtf-si-button .edgtf-btn-text {
  font-family: 'Rajdhani', sans-serif;
  text-transform: uppercase;
}

/* 라운드 제거 범위 */
.generator-search *,
.ai-image,
.ai-image *,
.card-v {
  border-radius: 0 !important;
}

/* 이미지 테두리 제거 */
img { border: 0 !important; }

/* 버튼은 기본 스타일 유지 (라운드 등) */

/* 아코디언 라운드 제거 */
.accordion,
.accordion *,
.accordion-custom,
.accordion-custom * {
  border-radius: 0 !important;
}

/* 인풋/폼 요소 라운드 제거 */
input,
textarea,
select,
.form-control,
.form-select {
  border-radius: 0 !important;
}

/* 대각선 채움 아웃라인 효과: 3개 요소에 적용 */
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg,
a.btn.btn-primary-icon.btn-md,
a.edgtf-btn.edgtf-btn-outline {
  position: relative;
  z-index: 0; /* 스택 컨텍스트 생성 */
  overflow: hidden;
  border: 2px solid #111 !important;
  background-color: transparent !important;
  color: #111 !important;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-family: 'Rajdhani', sans-serif;
  font-weight: 700;
  transition: color .2s ease-in-out, background-color .2s ease-in-out, border-color .2s ease-in-out;
}

.edgtf-btn-text,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg i,
a.btn.btn-primary-icon.btn-md i,
a.edgtf-btn.edgtf-btn-outline i,
a.edgtf-btn.edgtf-btn-outline .edgtf-btn-text {
  position: relative;
  z-index: 2;
}

#viewAllImagesButton a.btn-outline-primary-icon.btn-lg::before,
a.btn.btn-primary-icon.btn-md::before,
a.edgtf-btn.edgtf-btn-outline::before {
  content: "";
  position: absolute;
  left: -60px;               /* 더 멀리서 시작 */
  top: -2px;                 /* 상단 여유 */
  width: 200%;               /* 충분히 넓게 */
  height: calc(100% + 4px);  /* 하단 여유로 흰 줄 제거 */
  background-color: #111;
  transform: translate3d(-110%, 0, 0) skew(-30deg);
  transform-origin: left center;
  transition: .5s cubic-bezier(.76, .49, .25, 1);
  z-index: -1; /* 오버레이를 텍스트보다 뒤로 확실히 */
  pointer-events: none; /* 호버 상태 유지 */
  backface-visibility: hidden;
  will-change: transform;
}

#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover,
a.btn.btn-primary-icon.btn-md:hover,
a.edgtf-btn.edgtf-btn-outline:hover {
  color: #fff !important;
  border-color: #111 !important;
}

#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover::before,
a.btn.btn-primary-icon.btn-md:hover::before,
a.edgtf-btn.edgtf-btn-outline:hover::before {
  transform: translateX(0) skew(-30deg);
}

/* 호버 시 내부 텍스트/아이콘도 흰색으로 확실히 반전 */
.edgtf-btn-text,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover i,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover .edgtf-btn-text,
a.btn.btn-primary-icon.btn-md:hover,
a.btn.btn-primary-icon.btn-md:hover i,
a.btn.btn-primary-icon.btn-md:hover .edgtf-btn-text,
a.edgtf-btn.edgtf-btn-outline:hover,
a.edgtf-btn.edgtf-btn-outline:hover i,
a.edgtf-btn.edgtf-btn-outline:hover .edgtf-btn-text {
  color: #fff !important;
}

/* 호버 시 a 자체와 내부 자손 모두 흰색으로 강제 */
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover *,
a.btn.btn-primary-icon.btn-md:hover,
a.btn.btn-primary-icon.btn-md:hover *,
a.edgtf-btn.edgtf-btn-outline:hover,
a.edgtf-btn.edgtf-btn-outline:hover * {
  color: #fff !important;
}

/* 강제: 호버 중 텍스트가 다른 규칙에 의해 되돌아가지 않도록 높인 우선순위 */
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:hover *,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:focus,
#viewAllImagesButton a.btn-outline-primary-icon.btn-lg:focus *,
a.btn.btn-primary-icon.btn-md:hover,
a.btn.btn-primary-icon.btn-md:hover *,
a.btn.btn-primary-icon.btn-md:focus,
a.btn.btn-primary-icon.btn-md:focus * {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}

/* 버튼에서는 대각선 전환 효과 제거 */
/*#generate-button.btn {
  overflow: visible;
  position: static;
  z-index: auto;
  font-family: inherit;
  letter-spacing: normal;
  text-transform: none;
  border-width: 1px !important;
  border-style: solid !important;
  border-color: var(--primaryColor) !important;
  background-color: var(--primaryColor) !important;
  color: #fff !important;
}
#generate-button.btn::before {
  content: none !important;
}
#generate-button.btn:hover,
#generate-button.btn:hover *,
#generate-button.btn:focus,
#generate-button.btn:focus * {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
  background-color: var(--primaryColor) !important;
  border-color: var(--primaryColor) !important;
}*/

/* button 태그(Generate)는 효과 포함, 다른 버튼은 텍스트만 대문자 */
button.btn { text-transform: uppercase; }

/* 버튼/인풋 라운드 제거 */
.btn,
.btn-group-lg>.btn,
.btn-lg,
button,
input,
textarea,
select,
.form-control,
.form-select {
  border-radius: 0 !important;
}



/* 버튼 호버 시 텍스트/아이콘 색은 기본(흰색) 유지 */
#generate-button.btn.btn-primary:hover,
#generate-button.btn.btn-primary:hover *,
button.btn.btn-primary:hover,
button.btn.btn-primary:hover * {
  color: #fff !important;
  -webkit-text-fill-color: #fff;
}

/* 버튼 호버 시 아이콘 색 진해짐 방지 (배경색 영향 제거) */
button.btn:hover i,
button.btn:focus i,
#generate-button.btn:hover i,
#generate-button.btn:focus i {
  color: inherit !important;
  -webkit-text-fill-color: inherit;
  filter: none !important;
  mix-blend-mode: normal !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* 이전 흰색 강제 규칙 무력화 (버튼에 한정) */

/* 레이아웃 고정: hover/active/focus 시 크기/줄바꿈 변화 방지 */

/* Generate 버튼 포커스/활성 시에도 흰 바탕 + 색 글자/아이콘 유지 */


