/* ===== 포탈 테마 통일 — 색상/폰트 오버라이드 ===== */

/* Geist Sans 폰트 로드 */
@import url('https://cdn.jsdelivr.net/npm/geist@1.3.1/dist/fonts/geist-sans/style.min.css');

/* 라이트 모드 — 높은 특이성으로 Material 기본값 강제 덮어쓰기 */
:root,
[data-md-color-scheme="default"],
[data-md-color-primary="custom"],
[data-md-color-accent="custom"] {
  /* 배경/텍스트 */
  --md-default-bg-color: #ffffff;
  --md-default-fg-color: #1a1a1a;
  --md-default-fg-color--light: #555555;
  --md-default-fg-color--lighter: #888888;
  --md-default-fg-color--lightest: #ebebeb;

  /* 헤더 (포탈 primary=neutral dark) */
  --md-primary-fg-color: #333333;
  --md-primary-fg-color--light: #444444;
  --md-primary-fg-color--dark: #222222;
  --md-primary-bg-color: #fafafa;
  --md-primary-bg-color--light: #ffffff;

  /* 액센트 (포탈 muted 톤) */
  --md-accent-fg-color: #555555;
  --md-accent-fg-color--transparent: rgba(85, 85, 85, 0.1);
  --md-accent-bg-color: #f0f0f0;

  /* 코드 */
  --md-code-bg-color: #f5f5f5;
  --md-code-fg-color: #1a1a1a;
  --md-code-hl-color: rgba(85, 85, 85, 0.1);

  /* 폰트 */
  --md-text-font: "Geist Sans", -apple-system, BlinkMacSystemFont, sans-serif;
  --md-code-font: "Geist Mono", ui-monospace, monospace;

  /* 타이포그래피 색상 */
  --md-typeset-color: #1a1a1a;
  --md-typeset-a-color: #555555;
}

/* 다크 모드 */
[data-md-color-scheme="slate"] {
  --md-default-bg-color: #1a1a1a;
  --md-default-fg-color: #fafafa;
  --md-default-fg-color--light: #bbbbbb;
  --md-default-fg-color--lighter: #888888;
  --md-default-fg-color--lightest: rgba(255, 255, 255, 0.1);

  --md-primary-fg-color: #1a1a1a;
  --md-primary-fg-color--light: #252525;
  --md-primary-fg-color--dark: #111111;
  --md-primary-bg-color: #fafafa;
  --md-primary-bg-color--light: #e0e0e0;

  --md-accent-fg-color: #bbbbbb;
  --md-accent-fg-color--transparent: rgba(187, 187, 187, 0.1);
  --md-accent-bg-color: #2a2a2a;

  --md-code-bg-color: #2a2a2a;
  --md-code-fg-color: #fafafa;
  --md-code-hl-color: rgba(187, 187, 187, 0.1);

  --md-typeset-color: #fafafa;
  --md-typeset-a-color: #bbbbbb;
}

/* 헤더 직접 스타일 — Material 기본값 강제 덮어쓰기 */
.md-header {
  background-color: #333333 !important;
  color: #fafafa !important;
}

[data-md-color-scheme="slate"] .md-header {
  background-color: #1a1a1a !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

/* 헤더 내 검색/버튼 색상 */
.md-header__button,
.md-header__topic,
.md-header__title {
  color: #fafafa !important;
}

/* 검색바 */
.md-search__input {
  background-color: rgba(255, 255, 255, 0.12) !important;
  color: #fafafa !important;
}

/* 탭 네비게이션 (있을 경우) */
.md-tabs {
  background-color: #333333 !important;
  color: #fafafa !important;
}

[data-md-color-scheme="slate"] .md-tabs {
  background-color: #1a1a1a !important;
}

/* 네비게이션 활성 항목 */
.md-nav__link--active,
.md-nav__link:hover {
  color: #333333 !important;
}

[data-md-color-scheme="slate"] .md-nav__link--active,
[data-md-color-scheme="slate"] .md-nav__link:hover {
  color: #bbbbbb !important;
}

/* 다크모드 토글 버튼 숨기기 (포탈에서 제어) */
.md-header__button[for="__palette"] {
  display: none !important;
}

/* ===== 사이드바 항상 표시 - 모든 화면 크기에서 강제 적용 ===== */

/* 미디어 쿼리로 Material 테마 덮어쓰기 */
@media screen and (max-width: 76.1875em) {
  /* 메인 레이아웃 */
  html body .md-container {
    display: flex !important;
  }

  html body .md-main__inner {
    display: flex !important;
    flex-direction: row !important;
  }

  /* 왼쪽 사이드바 강제 표시 */
  html body .md-sidebar--primary {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    transform: translateX(0) !important;
    position: sticky !important;
    top: 3rem;
    left: 0 !important;
    width: 12.1rem !important;
    height: calc(100vh - 3rem) !important;
    z-index: 3 !important;
    background: var(--md-default-bg-color) !important;
  }

  html body .md-sidebar--primary[hidden] {
    display: block !important;
    visibility: visible !important;
  }

  html body .md-sidebar__scrollwrap {
    display: block !important;
    overflow-y: auto !important;
  }

  /* 네비게이션 표시 */
  html body .md-nav--primary,
  html body .md-nav--primary > .md-nav__title,
  html body .md-nav--primary > .md-nav__list {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* 드로어 상태 무시 */
  html body [data-md-toggle="drawer"] ~ .md-container .md-sidebar--primary {
    display: block !important;
    transform: translateX(0) !important;
    width: 12.1rem !important;
  }

  /* 오버레이 숨기기 */
  html body .md-overlay {
    display: none !important;
    opacity: 0 !important;
  }

  /* 햄버거 메뉴 숨기기 */
  html body .md-header__button[for="__drawer"] {
    display: none !important;
  }

  /* 콘텐츠 영역 */
  html body .md-content {
    flex: 1 !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }
}

/* 더 작은 화면 */
@media screen and (max-width: 60em) {
  html body .md-sidebar--primary {
    width: 10rem !important;
  }

  html body [data-md-toggle="drawer"] ~ .md-container .md-sidebar--primary {
    width: 10rem !important;
  }

  /* TOC 숨기기 */
  html body .md-sidebar--secondary {
    display: none !important;
  }
}
