:root {
  --ks-page-bg: #ffffff;
  --ks-surface: #ffffff;
  --ks-surface-alt: #f4f7f9;
  --ks-surface-raised: #ffffff;
  --ks-control-bg: #ffffff;
  --ks-control-border: #b7c6cf;
  --ks-line-strong: #b7c6cf;
  --ks-shadow-raised: 0 18px 38px rgba(25, 42, 55, .12);
}

html[data-ks-color-scheme="dark"] {
  color-scheme: dark;
  --ks-page-bg: #14181c;
  --ks-surface: #1d2329;
  --ks-surface-alt: #20272d;
  --ks-surface-raised: #262e35;
  --ks-control-bg: #20272d;
  --ks-control-border: #596671;
  --ks-text: #f1f4f6;
  --ks-muted: #b9c2ca;
  --ks-line: #46515b;
  --ks-line-strong: #5b6873;
  --ks-soft: #20272d;
  --ks-white: #1d2329;
  --ks-focus: var(--ks-primary-dark, #91b9dc);
  --ks-shadow-menu: 0 18px 42px rgba(0, 0, 0, .42);
  --ks-shadow-raised: 0 18px 42px rgba(0, 0, 0, .32);
}

.ks-theme-control {
  position: relative;
  display: inline-flex;
  align-items: center;
  color: inherit;
}
.ks-theme-control__toggle {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  padding: 0;
  border: 1px solid transparent;
  border-radius: 9px;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.ks-theme-control__toggle:hover,
.ks-theme-control__toggle[aria-expanded="true"] {
  border-color: var(--ks-line);
  background: var(--ks-soft);
}
.ks-theme-control__toggle svg,
.ks-theme-control__option svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.ks-theme-control__menu {
  position: absolute;
  z-index: 620;
  top: calc(100% + 8px);
  right: 0;
  width: 190px;
  padding: 7px;
  border: 1px solid var(--ks-line);
  border-radius: 12px;
  background: var(--ks-surface-raised);
  box-shadow: var(--ks-shadow-raised);
}
.ks-theme-control__menu[hidden] { display: none !important; }
.ks-theme-control__option {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 9px;
  width: 100%;
  min-height: 42px;
  padding: 8px 10px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--ks-text);
  text-align: left;
  cursor: pointer;
}
.ks-theme-control__option:hover,
.ks-theme-control__option:focus-visible,
.ks-theme-control__option.is-selected {
  background: var(--ks-soft);
  color: var(--ks-primary-dark, var(--ks-primary-strong));
}
.ks-theme-control__check {
  visibility: hidden;
  font-weight: 800;
  text-align: center;
}
.ks-theme-control__option.is-selected .ks-theme-control__check { visibility: visible; }
.ks-header__mobile-actions { display: none; margin-left: auto; align-items: center; gap: 4px; }
.ks-theme-control--mobile .ks-theme-control__toggle { width: 48px; height: 48px; border-color: var(--ks-line); }
.ks-theme-control--mobile .ks-theme-control__menu { top: calc(100% + 6px); }

html[data-ks-color-scheme="dark"] body,
html[data-ks-color-scheme="dark"] .ks-site {
  background: var(--ks-page-bg);
  color: var(--ks-text);
}
html[data-ks-color-scheme="dark"] a { color: var(--ks-primary-dark, #91b9dc); }
html[data-ks-color-scheme="dark"] .ks-header {
  border-bottom-color: var(--ks-line);
  background: rgba(29, 35, 41, .98);
}
html[data-ks-color-scheme="dark"] .ks-header__utility {
  border-bottom-color: var(--ks-line);
  background: #181d22;
  color: var(--ks-muted);
}
html[data-ks-color-scheme="dark"] .ks-brand a,
html[data-ks-color-scheme="dark"] .ks-gnb__level1 > li > .ks-menu-row > a,
html[data-ks-color-scheme="dark"] .ks-gnb__level2 .ks-menu-row > a,
html[data-ks-color-scheme="dark"] .ks-gnb__level3 a { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-mobile-menu-button,
html[data-ks-color-scheme="dark"] .ks-gnb__panel,
html[data-ks-color-scheme="dark"] .ks-gnb__level2,
html[data-ks-color-scheme="dark"] .ks-gnb__level3,
html[data-ks-color-scheme="dark"] .ks-header-search {
  border-color: var(--ks-line);
  background: var(--ks-surface);
  color: var(--ks-text);
}
html[data-ks-color-scheme="dark"] .ks-gnb--full .ks-gnb__level1::after {
  border-color: var(--ks-line);
  background: var(--ks-surface);
  box-shadow: 0 20px 34px rgba(0, 0, 0, .3);
}
html[data-ks-color-scheme="dark"] .ks-gnb__level2 .ks-menu-row > a:hover,
html[data-ks-color-scheme="dark"] .ks-gnb__level2 .ks-menu-row > a:focus-visible,
html[data-ks-color-scheme="dark"] .ks-gnb__level2 .is-active > .ks-menu-row > a,
html[data-ks-color-scheme="dark"] .ks-gnb__level3 a:hover,
html[data-ks-color-scheme="dark"] .ks-gnb__level3 a:focus-visible,
html[data-ks-color-scheme="dark"] .ks-gnb__level3 .is-active > a,
html[data-ks-color-scheme="dark"] .ks-gnb__level1 > li.is-open > .ks-menu-row {
  background: var(--ks-surface-raised);
  color: var(--ks-primary-dark, #91b9dc);
}
html[data-ks-color-scheme="dark"] .ks-mobile-search,
html[data-ks-color-scheme="dark"] .ks-gnb__level2,
html[data-ks-color-scheme="dark"] .ks-gnb__level3 { background: var(--ks-surface-alt); }
html[data-ks-color-scheme="dark"] .ks-header-search__controls input,
html[data-ks-color-scheme="dark"] .ks-mobile-search__controls input,
html[data-ks-color-scheme="dark"] .ks-site input:not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="checkbox"]):not([type="radio"]),
html[data-ks-color-scheme="dark"] .ks-site select,
html[data-ks-color-scheme="dark"] .ks-site textarea {
  border-color: var(--ks-control-border);
  background: var(--ks-control-bg);
  color: var(--ks-text);
}
html[data-ks-color-scheme="dark"] .ks-site input::placeholder,
html[data-ks-color-scheme="dark"] .ks-site textarea::placeholder { color: #939fa8; opacity: 1; }
html[data-ks-color-scheme="dark"] .ks-page-heading {
  border-bottom-color: var(--ks-line);
  background: #181e23;
}
html[data-ks-color-scheme="dark"] .ks-page-heading__title,
html[data-ks-color-scheme="dark"] .ks-lnb li.is-active > a,
html[data-ks-color-scheme="dark"] .ks-lnb a:hover,
html[data-ks-color-scheme="dark"] .ks-lnb a:focus-visible { color: var(--ks-primary-dark, #91b9dc); }
html[data-ks-color-scheme="dark"] .ks-page-heading__summary,
html[data-ks-color-scheme="dark"] .ks-lnb a { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-breadcrumb li + li::before { color: #84919b; }
html[data-ks-color-scheme="dark"] .ks-lnb ul ul,
html[data-ks-color-scheme="dark"] .ks-lnb li.is-active > a,
html[data-ks-color-scheme="dark"] .ks-lnb a:hover,
html[data-ks-color-scheme="dark"] .ks-lnb a:focus-visible,
html[data-ks-color-scheme="dark"] .ks-lnb-donation { background: var(--ks-surface-alt); }
html[data-ks-color-scheme="dark"] .ks-lnb-contact,
html[data-ks-color-scheme="dark"] .ks-lnb-donation,
html[data-ks-color-scheme="dark"] .ks-content-hero,
html[data-ks-color-scheme="dark"] .ks-callout,
html[data-ks-color-scheme="dark"] .ks-info-grid,
html[data-ks-color-scheme="dark"] .ks-feature-list,
html[data-ks-color-scheme="dark"] .ks-location-list,
html[data-ks-color-scheme="dark"] .ks-map { border-color: var(--ks-line); }
html[data-ks-color-scheme="dark"] .ks-content-hero,
html[data-ks-color-scheme="dark"] .ks-callout,
html[data-ks-color-scheme="dark"] .ks-empty-guide,
html[data-ks-color-scheme="dark"] .ks-map { background: var(--ks-surface-alt); color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-feature-list li,
html[data-ks-color-scheme="dark"] .ks-info-grid > div { background: var(--ks-surface); }
html[data-ks-color-scheme="dark"] .ks-location-list dt { border-color: var(--ks-line-strong); }
html[data-ks-color-scheme="dark"] .ks-admin-guide { background: var(--ks-surface-alt); color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-admin-guide__link { color: var(--ks-primary-dark); }

html[data-ks-color-scheme="dark"] .ks-site table { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-site th,
html[data-ks-color-scheme="dark"] .ks-site td { border-color: var(--ks-line); }
html[data-ks-color-scheme="dark"] .ks-site thead th { background: var(--ks-surface-alt); color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-site tbody tr,
html[data-ks-color-scheme="dark"] .ks-site tbody td { background-color: transparent; }
html[data-ks-color-scheme="dark"] .ks-site hr { border-color: var(--ks-line); }
html[data-ks-color-scheme="dark"] .ks-site blockquote,
html[data-ks-color-scheme="dark"] .ks-site pre,
html[data-ks-color-scheme="dark"] .ks-site code { background: var(--ks-surface-alt); color: var(--ks-text); }

html[data-ks-color-scheme="dark"] .board,
html[data-ks-color-scheme="dark"] .board .board_read,
html[data-ks-color-scheme="dark"] .board .read_header,
html[data-ks-color-scheme="dark"] .board .read_body,
html[data-ks-color-scheme="dark"] .board .read_footer,
html[data-ks-color-scheme="dark"] .board .feedback,
html[data-ks-color-scheme="dark"] .board .feedback .fbHeader,
html[data-ks-color-scheme="dark"] .board .feedback > ul > li,
html[data-ks-color-scheme="dark"] .board .write_comment,
html[data-ks-color-scheme="dark"] .board .write_editor,
html[data-ks-color-scheme="dark"] .board .write_header,
html[data-ks-color-scheme="dark"] .board .list_footer,
html[data-ks-color-scheme="dark"] .board .exOut,
html[data-ks-color-scheme="dark"] .board .exForm,
html[data-ks-color-scheme="dark"] .board .board_list,
html[data-ks-color-scheme="dark"] .board .board_list td,
html[data-ks-color-scheme="dark"] .board .board_list th {
  border-color: var(--ks-line) !important;
  background-color: transparent !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .board a,
html[data-ks-color-scheme="dark"] .board .read_header h3,
html[data-ks-color-scheme="dark"] .board .feedback .fbHeader h3 { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .board .read_header .meta,
html[data-ks-color-scheme="dark"] .board .feedback .fbMeta,
html[data-ks-color-scheme="dark"] .board .feedback .files a .fileSize { color: var(--ks-muted) !important; }
html[data-ks-color-scheme="dark"] .board .btn,
html[data-ks-color-scheme="dark"] .board button,
html[data-ks-color-scheme="dark"] .board input[type="button"],
html[data-ks-color-scheme="dark"] .board input[type="submit"] {
  border-color: var(--ks-control-border) !important;
  background: var(--ks-surface-raised) !important;
  color: var(--ks-text) !important;
}

html[data-ks-color-scheme="dark"] .ks-calendar-board,
html[data-ks-color-scheme="dark"] .ks-calendar-month,
html[data-ks-color-scheme="dark"] .ks-calendar-agenda,
html[data-ks-color-scheme="dark"] .ks-calendar-selected,
html[data-ks-color-scheme="dark"] .ks-calendar-write,
html[data-ks-color-scheme="dark"] .ks-calendar-read,
html[data-ks-color-scheme="dark"] .ks-calendar-widget__calendar,
html[data-ks-color-scheme="dark"] .ks-calendar-widget__agenda {
  border-color: var(--ks-line) !important;
  background: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-calendar-board table.ks-calendar-grid th,
html[data-ks-color-scheme="dark"] .ks-calendar-board table.ks-calendar-grid td,
html[data-ks-color-scheme="dark"] .ks-calendar-widget table.ks-calendar-grid th,
html[data-ks-color-scheme="dark"] .ks-calendar-widget table.ks-calendar-grid td {
  border-color: var(--ks-line) !important;
  background: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-calendar-board table.ks-calendar-grid td.is-other-month,
html[data-ks-color-scheme="dark"] .ks-calendar-widget table.ks-calendar-grid td.is-other-month { background: #181d22 !important; color: #89959e !important; }
html[data-ks-color-scheme="dark"] .ks-calendar-board .is-today,
html[data-ks-color-scheme="dark"] .ks-calendar-widget .is-today { background: #263846 !important; }
html[data-ks-color-scheme="dark"] .ks-calendar-primary-button { color: #ffffff !important; }
html[data-ks-color-scheme="dark"] .ks-calendar-secondary-button,
html[data-ks-color-scheme="dark"] .ks-calendar-view-tabs a,
html[data-ks-color-scheme="dark"] .ks-calendar-categories a {
  border-color: var(--ks-line) !important;
  background: var(--ks-surface-raised) !important;
  color: var(--ks-text) !important;
}

html[data-ks-color-scheme="dark"] .ks-gallery,
html[data-ks-color-scheme="dark"] .ks-gallery-card,
html[data-ks-color-scheme="dark"] .ks-gallery-document,
html[data-ks-color-scheme="dark"] .ks-gallery-document__header,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body,
html[data-ks-color-scheme="dark"] .ks-gallery-document__extra,
html[data-ks-color-scheme="dark"] .ks-gallery-files,
html[data-ks-color-scheme="dark"] .ks-gallery-tags,
html[data-ks-color-scheme="dark"] .ks-gallery .feedback,
html[data-ks-color-scheme="dark"] .ks-gallery .feedback > ul > li,
html[data-ks-color-scheme="dark"] .ks-gallery .write_editor,
html[data-ks-color-scheme="dark"] .ks-gallery .exForm td,
html[data-ks-color-scheme="dark"] .ks-gallery .exForm th {
  border-color: var(--ks-line) !important;
  background-color: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-gallery-card__media,
html[data-ks-color-scheme="dark"] .ks-gallery-card__empty,
html[data-ks-color-scheme="dark"] .ks-gallery-empty,
html[data-ks-color-scheme="dark"] .ks-gallery-search,
html[data-ks-color-scheme="dark"] .ks-gallery-password,
html[data-ks-color-scheme="dark"] .ks-gallery-action--light { background: var(--ks-surface-alt) !important; color: var(--ks-text) !important; }
html[data-ks-color-scheme="dark"] .ks-gallery-card__body h3,
html[data-ks-color-scheme="dark"] .ks-gallery-document__header h3,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body,
html[data-ks-color-scheme="dark"] .ks-gallery-files a { color: var(--ks-text) !important; }
html[data-ks-color-scheme="dark"] .ks-gallery-card__summary,
html[data-ks-color-scheme="dark"] .ks-gallery-card__meta,
html[data-ks-color-scheme="dark"] .ks-gallery-document__meta,
html[data-ks-color-scheme="dark"] .ks-gallery-files span { color: var(--ks-muted) !important; }

html[data-ks-color-scheme="dark"] .ks-is__search,
html[data-ks-color-scheme="dark"] .ks-is__tabs,
html[data-ks-color-scheme="dark"] .ks-is__result-card,
html[data-ks-color-scheme="dark"] .ks-is__media-card,
html[data-ks-color-scheme="dark"] .ks-is__empty,
html[data-ks-color-scheme="dark"] .ks-is__intro,
html[data-ks-color-scheme="dark"] .ks-is__pagination a,
html[data-ks-color-scheme="dark"] .ks-is__pagination strong {
  border-color: var(--ks-line) !important;
  background: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-is__tabs a,
html[data-ks-color-scheme="dark"] .ks-is__result h4 a,
html[data-ks-color-scheme="dark"] .ks-is__media-body h4 a,
html[data-ks-color-scheme="dark"] .ks-is__source a { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-is__tabs a[aria-current="page"],
html[data-ks-color-scheme="dark"] .ks-is__targets a[aria-current="page"],
html[data-ks-color-scheme="dark"] .ks-is__pagination strong { color: var(--ks-primary-dark, #91b9dc) !important; }
html[data-ks-color-scheme="dark"] .ks-is__excerpt,
html[data-ks-color-scheme="dark"] .ks-is__meta,
html[data-ks-color-scheme="dark"] .ks-is__source { color: var(--ks-muted); }

html[data-ks-color-scheme="dark"] .ks-home,
html[data-ks-color-scheme="dark"] .ks-home-hero,
html[data-ks-color-scheme="dark"] .ks-home-section,
html[data-ks-color-scheme="dark"] .ks-home-board,
html[data-ks-color-scheme="dark"] .ks-home-gallery,
html[data-ks-color-scheme="dark"] .ks-home-contact,
html[data-ks-color-scheme="dark"] .ks-home-calendar,
html[data-ks-color-scheme="dark"] .ks-home-popup,
html[data-ks-color-scheme="dark"] .ks-home-partners,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__item,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__compact-shell,
html[data-ks-color-scheme="dark"] .ks-gallery-frame {
  border-color: var(--ks-line) !important;
  background-color: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-home-quick a,
html[data-ks-color-scheme="dark"] .ks-home-board li,
html[data-ks-color-scheme="dark"] .ks-home-gallery__item,
html[data-ks-color-scheme="dark"] .ks-home-gallery__link,
html[data-ks-color-scheme="dark"] .ks-home-popup__body,
html[data-ks-color-scheme="dark"] .ks-home-partners__controls button,
html[data-ks-color-scheme="dark"] .ks-home-partners__item a,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__compact-link,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__media,
html[data-ks-color-scheme="dark"] .ks-gallery-frame__content {
  border-color: var(--ks-line) !important;
  background-color: var(--ks-surface-alt) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-home h2,
html[data-ks-color-scheme="dark"] .ks-home h3,
html[data-ks-color-scheme="dark"] .ks-home strong,
html[data-ks-color-scheme="dark"] .ks-home a,
html[data-ks-color-scheme="dark"] .ks-gallery-widget h3,
html[data-ks-color-scheme="dark"] .ks-gallery-widget strong,
html[data-ks-color-scheme="dark"] .ks-gallery-frame h2 { color: var(--ks-text); }
html[data-ks-color-scheme="dark"] .ks-home p,
html[data-ks-color-scheme="dark"] .ks-home time,
html[data-ks-color-scheme="dark"] .ks-home-board__meta,
html[data-ks-color-scheme="dark"] .ks-gallery-widget time,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__summary,
html[data-ks-color-scheme="dark"] .ks-gallery-frame__heading p { color: var(--ks-muted); }
/* KCMS 0.1.129: 다크모드 관련 기관 로고 패널 및 모바일 크기 보정 */
html[data-ks-color-scheme="dark"] .ks-home-partners__item a {
  padding: 7px !important;
  background-color: transparent !important;
  border-color: #46515b !important;
  box-shadow: none;
}
html[data-ks-color-scheme="dark"] .ks-home-partners__item a:hover,
html[data-ks-color-scheme="dark"] .ks-home-partners__item a:focus-visible {
  border-color: var(--ks-primary-dark, #91b9dc) !important;
  box-shadow: 0 0 0 3px rgba(145, 185, 220, .24);
}
html[data-ks-color-scheme="dark"] .ks-home-partners__logo {
  width: 100%;
  height: 100%;
  min-height: 76px;
  padding: 4px 6px;
  background-color: #d8dde2;
  border: 0;
  border-radius: 6px;
  box-shadow: none;
}
html[data-ks-color-scheme="dark"] .ks-home-partners__item img {
  max-width: 95%;
  max-height: 60px;
}
@media screen and (max-width: 680px) {
  html[data-ks-color-scheme="dark"] .ks-home-partners__item a {
    padding: 5px !important;
  }
  html[data-ks-color-scheme="dark"] .ks-home-partners__logo {
    min-height: 52px;
    padding: 3px 4px;
    background-color: #d8dde2;
  }
  html[data-ks-color-scheme="dark"] .ks-home-partners__item img {
    max-width: 92%;
    max-height: 42px;
  }
}
html[data-ks-color-scheme="dark"] .ks-home-banner__media,
html[data-ks-color-scheme="dark"] .ks-home-gallery__thumb,
html[data-ks-color-scheme="dark"] .ks-gallery-card__media,
html[data-ks-color-scheme="dark"] .ks-gallery-widget__media { background-color: #11161a !important; }
html[data-ks-color-scheme="dark"] img,
html[data-ks-color-scheme="dark"] video,
html[data-ks-color-scheme="dark"] iframe { filter: none; }

@media screen and (max-width: 1020px) {
  .ks-header__mobile-actions { display: flex; }
  .ks-mobile-menu-button { margin-left: 0; }
  html[data-ks-color-scheme="dark"] .ks-gnb__backdrop { background: rgba(0, 0, 0, .58); }
}

@media print {
  .ks-theme-control,
  .ks-header__mobile-actions .ks-theme-control { display: none !important; }
}

@media (forced-colors: active) {
  .ks-theme-control__toggle,
  .ks-theme-control__menu,
  .ks-theme-control__option { border: 1px solid ButtonText; }
}

/* KCMS 0.1.113: 헤더 로고와 기본 회원 로그인 화면 다크모드 보정 */
html[data-ks-color-scheme="dark"] .ks-brand img {
  padding: 4px 6px;
  border: 1px solid var(--ks-line);
  border-radius: 6px;
  background: var(--ks-surface-alt);
  box-shadow: none;
}

html[data-ks-color-scheme="dark"] .ks-content .xm {
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin {
  border-color: var(--ks-line-strong) !important;
  background: var(--ks-surface) !important;
  color: var(--ks-text) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .42) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin > .login-header {
  border-bottom-color: var(--ks-line) !important;
  background: var(--ks-surface) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin > .login-header > h1 {
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin > .login-body {
  background: var(--ks-surface) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin label,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin #warning,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin #warning > p {
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="text"],
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="email"],
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="password"] {
  border-color: var(--ks-control-border) !important;
  background: var(--ks-control-bg) !important;
  color: var(--ks-text) !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .28) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="text"]:focus,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="email"]:focus,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="password"]:focus {
  border-color: var(--ks-primary-dark, #91b9dc) !important;
  outline: 2px solid var(--ks-primary-dark, #91b9dc) !important;
  outline-offset: 1px;
  box-shadow: none !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input[type="checkbox"] {
  accent-color: var(--ks-primary-dark, #91b9dc);
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin .submit {
  border: 1px solid var(--ks-primary-dark, #91b9dc) !important;
  background: var(--ks-primary-dark, #91b9dc) !important;
  color: #111820 !important;
  box-shadow: none !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin .submit:hover,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin .submit:focus-visible {
  filter: brightness(1.08);
  outline: 2px solid var(--ks-primary-dark, #91b9dc);
  outline-offset: 2px;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin > .login-footer {
  border-top-color: var(--ks-line) !important;
  background: var(--ks-surface-alt) !important;
  color: var(--ks-muted) !important;
  box-shadow: none !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin > .login-footer > a {
  color: var(--ks-primary-dark, #91b9dc) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin .message {
  border-color: var(--ks-line-strong) !important;
  background: var(--ks-surface-alt) !important;
  color: var(--ks-text) !important;
}
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input:-webkit-autofill,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input:-webkit-autofill:hover,
html[data-ks-color-scheme="dark"] .ks-content .xm .signin input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--ks-text) !important;
  box-shadow: 0 0 0 1000px var(--ks-control-bg) inset !important;
  caret-color: var(--ks-text);
}


/* KCMS 0.1.125: 다크모드 게시판 본문 글자 대비 보정 */
html[data-ks-color-scheme="dark"] .board .read_body,
html[data-ks-color-scheme="dark"] .board .read_body .xe_content,
html[data-ks-color-scheme="dark"] .board .read_body .rhymix_content,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body .xe_content,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body .rhymix_content {
  color: var(--ks-text, #f1f4f6) !important;
}
html[data-ks-color-scheme="dark"] .board .read_body p,
html[data-ks-color-scheme="dark"] .board .read_body div,
html[data-ks-color-scheme="dark"] .board .read_body span,
html[data-ks-color-scheme="dark"] .board .read_body font,
html[data-ks-color-scheme="dark"] .board .read_body li,
html[data-ks-color-scheme="dark"] .board .read_body dt,
html[data-ks-color-scheme="dark"] .board .read_body dd,
html[data-ks-color-scheme="dark"] .board .read_body h1,
html[data-ks-color-scheme="dark"] .board .read_body h2,
html[data-ks-color-scheme="dark"] .board .read_body h3,
html[data-ks-color-scheme="dark"] .board .read_body h4,
html[data-ks-color-scheme="dark"] .board .read_body h5,
html[data-ks-color-scheme="dark"] .board .read_body h6,
html[data-ks-color-scheme="dark"] .board .read_body strong,
html[data-ks-color-scheme="dark"] .board .read_body b,
html[data-ks-color-scheme="dark"] .board .read_body em,
html[data-ks-color-scheme="dark"] .board .read_body i,
html[data-ks-color-scheme="dark"] .board .read_body u,
html[data-ks-color-scheme="dark"] .board .read_body small,
html[data-ks-color-scheme="dark"] .board .read_body blockquote,
html[data-ks-color-scheme="dark"] .board .read_body figcaption,
html[data-ks-color-scheme="dark"] .board .read_body th,
html[data-ks-color-scheme="dark"] .board .read_body td,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body p,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body div,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body span,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body font,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body li,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body dt,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body dd,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h1,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h2,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h3,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h4,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h5,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body h6,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body strong,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body b,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body em,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body i,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body u,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body small,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body blockquote,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body figcaption,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body th,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body td {
  color: inherit !important;
}
html[data-ks-color-scheme="dark"] .board .read_body a,
html[data-ks-color-scheme="dark"] .board .read_body a span,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body a,
html[data-ks-color-scheme="dark"] .ks-gallery-document__body a span {
  color: var(--ks-primary-dark, #91b9dc) !important;
}


/* KCMS 0.1.126: 다크모드 추천·비추천 버튼 */
@media screen {
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a {
    border-color: var(--ks-control-border, #596671) !important;
    background: var(--ks-surface-alt, #20272d) !important;
    color: var(--ks-text, #f1f4f6) !important;
    box-shadow: none !important;
  }
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a i {
    color: var(--ks-primary-dark, #91b9dc) !important;
  }
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a:hover,
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a:focus-visible {
    border-color: var(--ks-primary-dark, #91b9dc) !important;
    background: var(--ks-surface-raised, #29323a) !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 3px rgba(145, 185, 220, .22) !important;
    outline: 0;
  }
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a:hover i,
  html[data-ks-color-scheme="dark"] .board .read_footer .vote a:focus-visible i {
    color: #ffffff !important;
  }
}

/* KCMS 0.1.132: 권한 부족으로 호출되는 기본 회원 로그인 폼 다크모드 보강 */
html[data-ks-color-scheme="dark"] .ks-content .signin {
  color-scheme: dark;
  border-color: var(--ks-line-strong, #46525c) !important;
  background: var(--ks-surface, #1b2228) !important;
  color: var(--ks-text, #f1f4f6) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .44) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin > .login-header,
html[data-ks-color-scheme="dark"] .ks-content .signin > .login-body {
  border-color: var(--ks-line, #39444d) !important;
  background: var(--ks-surface, #1b2228) !important;
  color: var(--ks-text, #f1f4f6) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin > .login-header > h1,
html[data-ks-color-scheme="dark"] .ks-content .signin label,
html[data-ks-color-scheme="dark"] .ks-content .signin #warning,
html[data-ks-color-scheme="dark"] .ks-content .signin #warning p {
  color: var(--ks-text, #f1f4f6) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin input[type="text"],
html[data-ks-color-scheme="dark"] .ks-content .signin input[type="email"],
html[data-ks-color-scheme="dark"] .ks-content .signin input[type="password"] {
  border-color: var(--ks-control-border, #53606b) !important;
  background: var(--ks-control-bg, #11171c) !important;
  color: var(--ks-text, #f1f4f6) !important;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .34) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin input::placeholder {
  color: #8997a1 !important;
  opacity: 1;
}

html[data-ks-color-scheme="dark"] .ks-content .signin input[type="text"]:focus,
html[data-ks-color-scheme="dark"] .ks-content .signin input[type="email"]:focus,
html[data-ks-color-scheme="dark"] .ks-content .signin input[type="password"]:focus {
  border-color: var(--ks-primary-dark, #91b9dc) !important;
  outline: 2px solid var(--ks-primary-dark, #91b9dc) !important;
  outline-offset: 1px;
  box-shadow: none !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin input[type="checkbox"] {
  accent-color: var(--ks-primary-dark, #91b9dc);
}

html[data-ks-color-scheme="dark"] .ks-content .signin .submit,
html[data-ks-color-scheme="dark"] .ks-content .signin input[type="submit"] {
  border: 1px solid var(--ks-primary-dark, #91b9dc) !important;
  background: var(--ks-primary-dark, #91b9dc) !important;
  color: #101820 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin > .login-footer {
  border-top-color: var(--ks-line, #39444d) !important;
  background: var(--ks-surface-alt, #222a31) !important;
  color: var(--ks-muted, #b1bbc3) !important;
  box-shadow: none !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin > .login-footer > a {
  color: var(--ks-primary-dark, #91b9dc) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin .message {
  border-color: var(--ks-line-strong, #46525c) !important;
  background: var(--ks-surface-alt, #222a31) !important;
  color: var(--ks-text, #f1f4f6) !important;
}

html[data-ks-color-scheme="dark"] .ks-content .signin input:-webkit-autofill,
html[data-ks-color-scheme="dark"] .ks-content .signin input:-webkit-autofill:hover,
html[data-ks-color-scheme="dark"] .ks-content .signin input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--ks-text, #f1f4f6) !important;
  box-shadow: 0 0 0 1000px var(--ks-control-bg, #11171c) inset !important;
  caret-color: var(--ks-text, #f1f4f6);
}

/* KCMS 0.1.133: 권한 부족 시스템 메시지(#access) 로그인 폼 다크모드 */
html[data-ks-color-scheme="dark"] .ks-content #access {
  color-scheme: dark;
  background: var(--ks-surface, #1b2228) !important;
  border-color: var(--ks-line-strong, #46525c) !important;
  color: var(--ks-text, #f1f4f6) !important;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .44) !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access .login-header,
html[data-ks-color-scheme="dark"] .ks-content #access .login-body,
html[data-ks-color-scheme="dark"] .ks-content #access .login-footer {
  background: transparent !important;
  border-color: var(--ks-line, #39444d) !important;
  color: var(--ks-text, #f1f4f6) !important;
  box-shadow: none !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access .login-header h1 {
  color: #ff9f9f !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access label,
html[data-ks-color-scheme="dark"] .ks-content #access p,
html[data-ks-color-scheme="dark"] .ks-content #access .message {
  color: var(--ks-text, #f1f4f6) !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access input[type="text"],
html[data-ks-color-scheme="dark"] .ks-content #access input[type="email"],
html[data-ks-color-scheme="dark"] .ks-content #access input[type="password"] {
  background: var(--ks-control-bg, #11171c) !important;
  border-color: var(--ks-control-border, #53606b) !important;
  color: var(--ks-text, #f1f4f6) !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,.34) !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access input::placeholder {
  color: #8997a1 !important;
  opacity: 1;
}
html[data-ks-color-scheme="dark"] .ks-content #access input[type="checkbox"] {
  accent-color: var(--ks-primary-dark, #91b9dc);
}
html[data-ks-color-scheme="dark"] .ks-content #access .button,
html[data-ks-color-scheme="dark"] .ks-content #access .submit,
html[data-ks-color-scheme="dark"] .ks-content #access button[type="submit"],
html[data-ks-color-scheme="dark"] .ks-content #access input[type="submit"] {
  background: var(--ks-primary-dark, #91b9dc) !important;
  border: 1px solid var(--ks-primary-dark, #91b9dc) !important;
  color: #101820 !important;
  text-shadow: none !important;
  box-shadow: none !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access .login-footer {
  background: var(--ks-surface-alt, #222a31) !important;
  color: var(--ks-muted, #b1bbc3) !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access .login-footer a {
  color: var(--ks-primary-dark, #91b9dc) !important;
}
html[data-ks-color-scheme="dark"] .ks-content #access input:-webkit-autofill,
html[data-ks-color-scheme="dark"] .ks-content #access input:-webkit-autofill:hover,
html[data-ks-color-scheme="dark"] .ks-content #access input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--ks-text, #f1f4f6) !important;
  -webkit-box-shadow: 0 0 0 1000px var(--ks-control-bg, #11171c) inset !important;
  caret-color: var(--ks-text, #f1f4f6);
}

html[data-ks-color-scheme="dark"] .ks-history-year__heading,
html[data-ks-color-scheme="dark"] .ks-history-item__date,
html[data-ks-color-scheme="dark"] .ks-history-item__category{color:var(--ks-primary-dark,#91b9dc)}
html[data-ks-color-scheme="dark"] .ks-history-item::before{border-color:var(--ks-page-bg)}
html[data-ks-color-scheme="dark"] .ks-history-item__content{border-color:var(--ks-line)}
html[data-ks-color-scheme="dark"] .ks-history-item__category{border-color:var(--ks-line-strong);background:var(--ks-surface-alt)}
html[data-ks-color-scheme="dark"] .ks-history__empty{border-color:var(--ks-line-strong);background:var(--ks-surface-alt);color:var(--ks-muted)}
