/* DKU 테마 보조 스타일 (정적 이식용 유틸) */
.dku-hidden { display: none !important; }

/* 모바일 시트 배경 */
#dku-mobile-backdrop {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: rgba(15, 18, 32, 0.55);
  backdrop-filter: blur(2px);
}

/* 언어 선택 드롭다운 */
.dku-lang-menu {
  position: absolute;
  right: 0;
  top: calc(100% + 8px);
  z-index: 60;
  min-width: 132px;
  padding: 6px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(15, 18, 32, 0.08);
  box-shadow: 0 18px 40px -12px rgba(15, 18, 32, 0.35);
}
.dku-lang-menu button {
  display: block;
  width: 100%;
  padding: 8px 10px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  font-size: 13px;
  font-weight: 700;
  color: #1c2033;
  text-align: left;
  cursor: pointer;
}
.dku-lang-menu button:hover { background: rgba(112, 44, 168, 0.08); }
.dku-lang-menu button.is-active { background: rgba(112, 44, 168, 0.12); color: #702ca8; }

/* 모바일 플로팅 버튼 접힘/펼침 */
@media (max-width: 767px) {
  /* 메인 히어로 배지가 모바일 헤더에 붙지 않도록 확실한 상단 간격 적용 */
  .dku-hero-badge { margin-top: 24px !important; }

  #dku-floating > div:first-child {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height .3s ease, opacity .25s ease;
  }
  #dku-floating > div:first-child.dku-float-open {
    max-height: 60vh;
    opacity: 1;
  }
}

/* 구글 번역 기본 위젯/배너 숨김 */
.skiptranslate iframe, #goog-gt-tt, .goog-te-balloon-frame { display: none !important; }
body { top: 0 !important; }
.goog-text-highlight { background: none !important; box-shadow: none !important; }

/* ── 그누보드 default.css 레이아웃 초기화 (DKU 반응형 유지) ───────────── */
#hd, #wrapper, #ft { min-width: 0 !important; }
#container {
  position: relative !important;
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: inherit !important;
  background: transparent !important;
}
#container:after { content: none !important; display: none !important; }
#container_wr { width: auto !important; max-width: none !important; margin: 0 !important; }
#aside { float: none !important; width: auto !important; margin: 0 !important; }
#dku-root { overflow-x: hidden; }

/* 스크롤 전환 헤더는 래퍼 밖으로 이탈하지 못하는 position:sticky 대신
   뷰포트에 직접 고정한다. 정적/PHP 페이지에서도 React와 동일하게 유지된다. */
#dku-header-scrolled {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 50;
  width: 100%;
}
#dku-header-scrolled > header {
  position: relative;
  top: auto;
}

/* 누락된 그라데이션 시작색 유틸 (플로팅 AI 학과추천 버튼 배경) */
.from-primary-deep {
  --tw-gradient-from: var(--primary-deep);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
}
.from-violet-400 {
  --tw-gradient-from: oklch(70.2% 0.183 293.541);
  --tw-gradient-stops: var(--tw-gradient-via-stops, var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position));
}

/* 그누보드 기본 안내 텍스트(로그인 중 / 스킵 네비 등) 시각적 숨김 — 디자인 상단 노출 방지 */
#hd_login_msg,
#skip_to_container,
.sound_only { position: absolute !important; width: 1px !important; height: 1px !important;
  margin: -1px !important; padding: 0 !important; overflow: hidden !important;
  clip: rect(0 0 0 0) !important; border: 0 !important; white-space: nowrap !important; }
