/* =========================================================================
   다크 모드 "밤의 듣는 신문" (2026-10-17) — html.kt-dark 일 때만
   바탕은 순검정이 아닌 짙은 청록 먹색(#0E1617), 글자 #E6EEED(대비 15.6), 섹션 색은 밤용(inc/kt-dark.php)
   ① 토큰  ② 머리·메뉴·코너  ③ 카드·사진  ④ 기사  ⑤ 입력·버튼  ⑥ 요약 상자·공유·언어 창  ⑦ 404·꼬리말  ⑧ 본문 인라인 색 길들이기
   ========================================================================= */
html.kt-dark, html.kt-dark body.kt, html.kt-dark body.kt-d2 {   /* body.kt-d2 가 자기 변수를 다시 정하므로 body 에도 */
	color-scheme: dark;
	--kt-ink: #E6EEED; --kt-sub: #A8BAB7; --kt-mute: #86A09C; --kt-line: #26383A; --kt-soft: #152224; --kt-bg: #0E1617;
	--kt-link: #6CC6EA; --kt-accent: #3DC4BA; --kt-dark: #081011;
	--kt-brand: #3DC4BA; --kt-brand-2: #5ED6CC; --kt-lime: #A8DB6C; --kt-deep: #0A1A1B; --kt-deep-2: #9FE3DA;
	--kt-wave: linear-gradient(90deg, #2AA9A0 0%, #4FD1C5 45%, #A8DB6C 100%);
	--dk-sf: #152224; --dk-sf2: #1B2C2F; --dk-sf3: #22373A; --dk-line: #26383A; --dk-line2: #33494C;
	--wia-ink: #E6EEED; --wia-sub: #A8BAB7; --wia-line: #26383A; --wia-soft: #152224; --wia-bg: #0E1617; --wia-body: #E6EEED;
	--sec: #4FD1C5;
}
html.kt-dark { background: #0E1617; }
html.kt-dark body { background: #0E1617; color: var(--kt-ink); }
html.kt-dark ::selection { background: #2b5f59; color: #fff; }
html.kt-dark a { color: inherit; }
html.kt-dark a:focus-visible, html.kt-dark button:focus-visible { outline-color: #5ED6CC; }
/* 바뀔 때 부드럽게(전환 효과가 없는 브라우저용) */
html.kt-dark-anim, html.kt-dark-anim * { transition: background-color .35s, color .35s, border-color .35s !important; }

/* ② 머리 띠·제호·메뉴 ---------------------------------------------------- */
html.kt-dark .kt-util { background: linear-gradient(100deg, #061011 0%, #08201f 62%, #0f2a1c 100%); color: #b9d6d0; }
html.kt-dark .kt-mast { background: transparent; }
html.kt-dark .kt-nav, html.kt-dark body.kt-d2 .kt-nav { background: rgba(14,22,23,.88); border-bottom-color: var(--dk-line); box-shadow: 0 1px 0 var(--dk-line), 0 8px 22px -16px rgba(0,0,0,.9); }
html.kt-dark .kt-nav li a { color: #d5e2e0; }
html.kt-dark .kt-ico-btn { color: #d5e2e0; }
html.kt-dark .kt-ico-btn:hover, html.kt-dark body.kt-d2 .kt-ico-btn:hover { background: var(--dk-sf2); color: #5ED6CC; }
html.kt-dark .kt-search, html.kt-dark body.kt-d2 .kt-search { background: linear-gradient(180deg, #11201f, #0E1617); border-bottom-color: var(--dk-line); }
html.kt-dark .kt-drawer { background: rgba(0,0,0,.6); }
html.kt-dark .kt-drawer-in { background: #0f1a1b; color: var(--kt-ink); box-shadow: 8px 0 30px rgba(0,0,0,.6); }
html.kt-dark .kt-drawer ul { color: var(--kt-sub); }
html.kt-dark .kt-skip { background: #152224; color: #fff; }
html.kt-dark .kt-corners, html.kt-dark .kt-corners li + li { border-color: var(--dk-line); }
html.kt-dark body.kt-d2 .kt-corners a { background: var(--dk-sf); }
html.kt-dark body.kt-d2 .kt-corners a:hover { background: var(--dk-sf2); }
html.kt-dark body.kt-d2 .kt-corners b { color: #9FE3DA; }
html.kt-dark .kt-corners .kt-cta a, html.kt-dark body.kt-d2 .kt-corners .kt-cta a { background: linear-gradient(120deg, #0f7a3a 0%, #13924a 55%, #1aa457 100%); box-shadow: 0 0 0 1px rgba(111,213,138,.25), 0 8px 20px -12px rgba(26,164,87,.9); }
html.kt-dark .kt-corners .kt-cta-global a, html.kt-dark body.kt-d2 .kt-corners .kt-cta-global a { background: linear-gradient(120deg, #182c63 0%, #1d3678 55%, #24438e 100%); box-shadow: 0 0 0 1px rgba(157,177,255,.25), 0 8px 20px -12px rgba(36,67,142,.9); }
html.kt-dark .kt-lang-btn, html.kt-dark body.kt-d2 .kt-lang-btn { border-color: rgba(185,214,208,.3); background: rgba(255,255,255,.04); color: #e6eeed; }
html.kt-dark .kt-mt-in, html.kt-dark .kt-mta-card { background: #132022; color: var(--kt-ink); border-color: var(--dk-line2); box-shadow: 0 18px 40px -18px rgba(0,0,0,.9); }
html.kt-dark .kt-mt li button, html.kt-dark .kt-mt-more { color: var(--kt-ink); }
html.kt-dark .kt-mt li button:hover, html.kt-dark .kt-mt-more:hover { background: var(--dk-sf2); }
html.kt-dark .kt-mt li button span + span { color: var(--kt-sub); }
html.kt-dark .kt-mta-grid button { background: var(--dk-sf); border-color: var(--dk-line); color: var(--kt-ink); }
html.kt-dark .kt-mta-grid button:hover, html.kt-dark .kt-mta-grid button:focus-visible { background: var(--dk-sf2); border-color: #5ED6CC; }
html.kt-dark .kt-mta-b { background: #22373a; color: #b9cbc8; }
html.kt-dark .kt-mta-b.is-ai { background: #12324a; color: #8fcff0; }
html.kt-dark .kt-mta-b.is-off { background: #3a1a22; color: #ff9fae; }
html.kt-dark .kt-mtbar { background: #2a2410; border-bottom-color: #4a3f1c; color: #f2dc9c; }
html.kt-dark .kt-mtbar button, html.kt-dark .kt-mtbar a { color: #8fd6f2; }

/* ③ 머리글·카드·사진 ------------------------------------------------------ */
html.kt-dark .kt-h:not([data-sec]), html.kt-dark body.kt-d2 .kt-h:not([data-sec]) { color: var(--kt-ink); }
html.kt-dark body.kt-d2 .kt-h a.more { background: color-mix(in srgb, var(--sec, #4FD1C5) 14%, #0E1617); color: var(--sec, #9FE3DA); }
html.kt-dark body.kt-d2 .kt-h a.more:hover { background: var(--sec, #4FD1C5); color: #0b1213; }
html.kt-dark .kt-block, html.kt-dark .kt-row, html.kt-dark .kt-titles li, html.kt-dark .kt-rank li, html.kt-dark .kt-brief { border-color: var(--dk-line); }
html.kt-dark a:hover .kt-t, html.kt-dark body.kt-d2 a:hover .kt-t { color: #9FE3DA; }
html.kt-dark .kt-ph { background: var(--dk-sf); }
/* 사진은 밤에 눈부시지 않게 살짝 낮춤(올리면 원래대로) */
html.kt-dark .kt-ph img, html.kt-dark .kt-art-body img, html.kt-dark .kt-ad img, html.kt-dark .wia-wing img { filter: brightness(.9) contrast(1.04); transition: filter .25s; }
html.kt-dark a:hover .kt-ph img, html.kt-dark .kt-art-body img:hover, html.kt-dark .kt-ad a:hover img, html.kt-dark .wia-wing a:hover img { filter: none; }
html.kt-dark body.kt-d2 a:hover > .kt-ph, html.kt-dark body.kt-d2 a:hover .kt-ph { box-shadow: 0 0 0 1px rgba(95,214,204,.25), 0 12px 30px -16px rgba(0,0,0,.9); }
html.kt-dark .kt-tipcard, html.kt-dark body.kt-d2 .kt-tipcard { background: linear-gradient(135deg, #12302c, #182a17); border-color: var(--dk-line2); }
html.kt-dark .kt-btn { color: #fff !important; }
html.kt-dark .kt-ail-go .kt-btn.is-line { background: transparent; color: #9FE3DA !important; border-color: #3DC4BA; }
/* 음파: 밤에는 은은하게 빛남 */
html.kt-dark body.kt-d2 .kt-mast::after { filter: drop-shadow(0 0 4px rgba(79,209,197,.55)); }
html.kt-dark body.kt-d2 .kt-h::before, html.kt-dark body.kt-d2 .kt-sec-head h1::before { filter: drop-shadow(0 0 3px color-mix(in srgb, var(--sec) 60%, transparent)); }

/* ④ 기사 -------------------------------------------------------------------- */
html.kt-dark .kt-art-sub, html.kt-dark .kt-art-body blockquote { color: #c9d6d4; }
html.kt-dark .kt-art-sub { border-color: var(--dk-line2); }
html.kt-dark .kt-art-meta { color: var(--kt-sub); }
html.kt-dark .kt-art-body { color: #dfe9e7; }
html.kt-dark .kt-art-body a { color: #7ccff0; }
html.kt-dark .kt-art-body blockquote { border-color: #3DC4BA; background: var(--dk-sf); }
html.kt-dark .kt-art-body hr { border-color: var(--dk-line); }
html.kt-dark .kt-art-body table, html.kt-dark .kt-art-body th, html.kt-dark .kt-art-body td { border-color: var(--dk-line2) !important; }
html.kt-dark .kt-art-body th { background: var(--dk-sf2) !important; }
html.kt-dark .kt-art-body figcaption, html.kt-dark .kt-art-body .wp-caption-text { color: var(--kt-sub); }
html.kt-dark .kt-tool { background: var(--dk-sf); border-color: var(--dk-line); color: var(--kt-ink); }
html.kt-dark .kt-tool:hover { background: var(--dk-sf2); }
html.kt-dark .kt-copy, html.kt-dark .kt-tags, html.kt-dark .kt-author, html.kt-dark .kt-rel, html.kt-dark .kt-cmt { border-color: var(--dk-line); }
html.kt-dark .kt-progress { box-shadow: 0 0 8px color-mix(in srgb, var(--sec) 60%, transparent); }

/* ⑤ 입력칸·버튼 -------------------------------------------------------------- */
html.kt-dark input, html.kt-dark textarea, html.kt-dark select { color: var(--kt-ink); }
html.kt-dark .kt-search input, html.kt-dark .kt-sfind input, html.kt-dark .kt-cmt textarea, html.kt-dark .kt-cmt input[type=text], html.kt-dark .kt-cmt input[type=email],
html.kt-dark body.kt-d2 .kt-search input, html.kt-dark body.kt-d2 .kt-sfind input, html.kt-dark body.kt-d2 .kt-cmt textarea, html.kt-dark body.kt-d2 .kt-cmt input[type=text], html.kt-dark body.kt-d2 .kt-cmt input[type=email],
html.kt-dark .kt-page .kt-art-body form :is(input[type=text], input[type=email], input[type=tel], input[type=url], input[type=number], input[type=date], select, textarea),
html.kt-dark body.kt-d2 .kt-page .kt-art-body form :is(input[type=text], input[type=email], input[type=tel], input[type=url], input[type=number], input[type=date], select, textarea),
html.kt-dark .kt-404-find input {
	background: #0b1314 !important; border-color: var(--dk-line2) !important; color: var(--kt-ink); }
html.kt-dark :is(.kt-search input, .kt-sfind input, .kt-cmt textarea, .kt-cmt input, .kt-page .kt-art-body form :is(input, select, textarea), .kt-404-find input):focus {
	border-color: #4FD1C5 !important; background: #0d1718 !important; box-shadow: 0 0 0 4px rgba(79,209,197,.18), 0 0 18px -4px rgba(79,209,197,.45) !important; }
html.kt-dark ::placeholder { color: #6f8885; }
html.kt-dark .kt-tabs a { border-color: var(--dk-line2); color: var(--kt-ink); }
html.kt-dark body.kt-d2 .kt-tabs a[aria-current] { color: #0b1213; }
html.kt-dark .kt-pages :is(a, span) { border-color: var(--dk-line2); color: var(--kt-ink); }
html.kt-dark body.kt-d2 .kt-pages .current { color: #0b1213; }

/* ⑥ AI 요약 상자 · 공유 · 표준 언어 창 · 토스트 ------------------------------ */
html.kt-dark .wia-ai { --wia-ink: #dfe9e7; --wia-line: #26404a; --wia-bg: #0f1d22; --wia-muted: #8fa6a9; border-left-color: #4fa3d9; }
html.kt-dark .wia-ai__badge, html.kt-dark .wia-ai__easy summary { color: #8fcff0; }
html.kt-dark .wia-ai .wia-ai__pick, html.kt-dark .wia-ai .wia-ai__listen, html.kt-dark .wia-ai .wia-ai__br > summary { background: #13252c; color: #dfe9e7; border-color: #2a4652; }
html.kt-dark .wia-ai .wia-ai__pick:hover, html.kt-dark .wia-ai .wia-ai__listen:hover, html.kt-dark .wia-ai .wia-ai__br > summary:hover { background: #1f6fa8 !important; color: #fff !important; border-color: #1f6fa8; }
html.kt-dark .wia-ai__br-menu { background: #13252c; border-color: #2a4652; box-shadow: 0 14px 30px -14px rgba(0,0,0,.9); }
html.kt-dark .wia-ai .wia-ai__br-menu a { color: #8fcff0; }
html.kt-dark .wia-ai .wia-ai__br-menu a:hover, html.kt-dark .wia-ai .wia-ai__br-menu a:focus-visible { background: #1b3440; color: #b9e4f8; }
html.kt-dark .kt-sh { background: var(--dk-sf); border-color: var(--dk-line2); box-shadow: none; }
html.kt-dark .kt-sh-x, html.kt-dark .kt-sh-threads { --c: #e6eeed; }
html.kt-dark .kt-sh-kakao { background: var(--dk-sf); border-color: var(--dk-line2); color: #FEE500; --kk-t: #152224; }   /* 밤엔 다른 칸처럼 어두운 칸 + 노란 말풍선 */
html.kt-dark .kt-sh-kakao:hover, html.kt-dark .kt-sh-kakao:focus-visible { background: #FEE500; border-color: #FEE500; color: #3a1d1d; --kk-t: #FEE500; }
html.kt-dark .kt-sh-email, html.kt-dark .kt-sh-copy, html.kt-dark .kt-sh-native { --c: #c9d6d4; }
html.kt-dark .kt-sh::after { background: #e6eeed; color: #0b1213; }
html.kt-dark .kt-share-pop { background: #132022; border-color: var(--dk-line2); box-shadow: 0 20px 44px -18px rgba(0,0,0,.95); }
html.kt-dark .kt-float-share .kt-sh-more:hover, html.kt-dark .kt-float-share .kt-sh-more[aria-expanded="true"] { background: #4FD1C5; color: #0b1213; border-color: #4FD1C5; }
html.kt-dark .kt-toast { background: #e6eeed; color: #0b1213; }
html.kt-dark #wiaNavLangModal .wia-nav-modal-content { background: #101b1c !important; color: var(--kt-ink); }
html.kt-dark #wiaNavLangModal .wia-nav-modal-tabs, html.kt-dark #wiaNavLangModal .wia-nav-modal-body, html.kt-dark #wiaNavLangModal .wia-nav-modal-footer { background: #101b1c !important; color: var(--kt-sub); border-color: var(--dk-line) !important; }
html.kt-dark #wiaNavLangModal .wia-nav-modal-tab { background: var(--dk-sf) !important; color: var(--kt-ink) !important; border-color: var(--dk-line2) !important; }
html.kt-dark #wiaNavLangModal .wia-nav-modal-tab.active { color: #fff !important; }
html.kt-dark #wiaNavLangModal .wia-nav-lang-item { background: var(--dk-sf) !important; color: var(--kt-ink) !important; border-color: var(--dk-line2) !important; }
html.kt-dark #wiaNavLangModal .wia-nav-lang-item:hover { border-color: #4FD1C5 !important; background: var(--dk-sf2) !important; }
html.kt-dark #wiaNavLangModal input { background: #0b1314 !important; color: var(--kt-ink) !important; border-color: var(--dk-line2) !important; }
html.kt-dark #wiaNavLangModal .kt-lm-more { background: #12273a; border-color: #2a4652; color: #cfe6f5; }
html.kt-dark #wiaNavLangModal .kt-lm-b { color: #a8bab7; } html.kt-dark #wiaNavLangModal .kt-lm-b.is-ai { color: #8fcff0; } html.kt-dark #wiaNavLangModal .kt-lm-b.is-off { color: #ff9fae; }

/* ⑦ 404 · 꼬리말 · 날개 --------------------------------------------------- */
html.kt-dark .kt-404-hero { background: #0d1a1a; }
html.kt-dark .kt-404-art img { filter: invert(1) hue-rotate(180deg) brightness(.92) saturate(1.15); }   /* 연한 민트 바탕 그림을 밤 그림으로(색상은 유지) */
html.kt-dark .kt-404 h1 { color: #E6EEED; }
html.kt-dark .kt-404-sub { color: #b4c6c3; }
html.kt-dark .kt-404-code { color: #9FE3DA; }
html.kt-dark .kt-404-secs a { background: color-mix(in srgb, var(--sec, #4FD1C5) 12%, #0E1617); border-color: color-mix(in srgb, var(--sec, #4FD1C5) 35%, #0E1617); }
html.kt-dark .kt-404-secs a:hover { color: #0b1213; }
@media (min-width: 701px) and (max-width: 1100px) { html.kt-dark .kt-404-hero::before { background: linear-gradient(90deg, rgba(13,26,26,.96) 0%, rgba(13,26,26,.85) 45%, rgba(13,26,26,0) 75%); } }
html.kt-dark .kt-foot, html.kt-dark body.kt-d2 .kt-foot { background: linear-gradient(180deg, #081314, #050c0d); color: #a9c4bf; }
html.kt-dark .wia-wing .wia-banner img { box-shadow: 0 0 0 1px rgba(255,255,255,.04); }
html.kt-dark .wia-gnb, html.kt-dark .wia-partners, html.kt-dark .wia-cert, html.kt-dark .wia-author-avatar, html.kt-dark .wia-ad::before { background: var(--dk-sf); color: var(--kt-ink); }
html.kt-dark .wia-gnb a { color: var(--kt-ink); }
html.kt-dark .wia-share-btn { background: var(--dk-sf); border-color: var(--dk-line2); color: var(--kt-ink); }

/* ⑧ 기사·고정 페이지 본문에 박힌 색(편집기·옛 HTML 의 style="color/background") 길들이기 (DARK-3 에서 다시 짬)
   · 글자: 원래 색을 그대로 두고 칠하는 색만 '같은 색상, 밝게'(oklch 밝기 0.84 이상) — 빨강·파랑 강조는 밝은 빨강·파랑으로 남음
   · 바탕: 원래 바탕 위에 밤 먹색을 84% 덮음(inset 그림자 — 글자 밑, 바탕 위) — 밝은 상자도 어두운 띠도 '살짝 물든 밤 상자'가 됨, 그라데이션도
   · 사진 바탕(url)·투명 바탕은 건드리지 않음. 표 줄(tr)은 그림자가 안 그려져 바탕만 뺌
   · 상대 색을 모르는 옛 브라우저는 예전처럼 글자색 상속·바탕 빼기 */
@supports (color: oklch(from red l c h)) {
	html.kt-dark .kt-art-body :is([style*="color"], font[color]):not(a):not(mark),
	html.kt-dark .kt-art-body :is([style*="color"], font[color]):not(a):not(mark) *:not(mark),
	html.kt-dark .kt-art-body style ~ *, html.kt-dark .kt-art-body style ~ * * {
		-webkit-text-fill-color: oklch(from currentColor max(l, 0.84) min(c, 0.13) h); }
	html.kt-dark .kt-art-body [style*="background"]:not(img, figure, video, iframe, .kt-video, tr, thead, tbody, table, [style*="url("], [style*="background: transparent"], [style*="background:transparent"], [style*="background-color: transparent"], [style*="background-color:transparent"], [style*="background: none"], [style*="background:none"], [style*="background: inherit"], [style*="background-color: inherit"]),
	html.kt-dark .kt-art-body [bgcolor]:not(tr, table) {
		box-shadow: inset 0 0 0 100vmax rgba(14,22,23,.84) !important; }
}
@supports not (color: oklch(from red l c h)) {
	html.kt-dark .kt-art-body [style*="color"]:not(a):not(mark), html.kt-dark .kt-art-body font[color], html.kt-dark .kt-art-body style ~ * * { color: inherit !important; }
	html.kt-dark .kt-art-body [style*="background"]:not(img, figure, video, iframe, .kt-video, [style*="url("]), html.kt-dark .kt-art-body [bgcolor] { background-color: transparent !important; background-image: none !important; }
}
html.kt-dark .kt-art-body :is(tr, thead, tbody, table)[style*="background"]:not([style*="url("]), html.kt-dark .kt-art-body :is(tr, table)[bgcolor] { background-color: transparent !important; background-image: none !important; }
/* 옛 사이트에서 통째로 붙은 위젯(본문 속 <style> 뒤 — 클래스로 흰 바탕·검정 글자) */
html.kt-dark .kt-art-body style ~ *, html.kt-dark .kt-art-body style ~ * * { background-color: transparent !important; border-color: var(--dk-line2) !important; }
/* 밝은 회색·검정 선(#eee·#ddd·#e5e7eb·#000 …)은 밤 선으로 — 왼쪽 강조 띠는 그대로 */
html.kt-dark .kt-art-body :is([style*="solid #e2e8ec" i], [style*="solid #e5e7eb" i], [style*="solid #d1d5db" i], [style*="solid #ddd" i], [style*="solid #eee" i], [style*="solid #e0e0e0" i], [style*="solid #e8e8e8" i], [style*="solid #f0f0f0" i], [style*="solid #ccc" i], [style*="solid #e9ecef" i], [style*="solid #dee2e6" i], [style*="solid #f3f4f6" i], [style*="solid #f5f5f5" i], [style*="solid #fff" i], [style*="solid white" i], [style*="solid #000" i], [style*="solid #1f1f1f" i], [style*="solid #333" i]) {
	border-top-color: var(--dk-line2) !important; border-right-color: var(--dk-line2) !important; border-bottom-color: var(--dk-line2) !important; }
html.kt-dark .kt-art-body :is([style*="solid #e2e8ec" i], [style*="solid #e5e7eb" i], [style*="solid #d1d5db" i], [style*="solid #ddd" i], [style*="solid #eee" i], [style*="solid #e0e0e0" i], [style*="solid #e8e8e8" i], [style*="solid #f0f0f0" i], [style*="solid #ccc" i], [style*="solid #e9ecef" i], [style*="solid #dee2e6" i], [style*="solid #f3f4f6" i], [style*="solid #f5f5f5" i], [style*="solid #fff" i], [style*="solid white" i], [style*="solid #000" i], [style*="solid #1f1f1f" i], [style*="solid #333" i]):not([style*="border-left"]) {
	border-left-color: var(--dk-line2) !important; }
/* 바탕색 칠한 링크 단추(‘기사 원문 보기’ 등) — 밤 단추 + 청록 테두리 */
html.kt-dark .kt-art-body a[style*="background"][style*="padding"]:not([style*="url("]) { border-color: #3DC4BA !important; box-shadow: inset 0 0 0 100vmax rgba(14,22,23,.84), 0 0 0 1px #3DC4BA !important; color: #9FE3DA !important; -webkit-text-fill-color: #9FE3DA; }
/* 강제 색(윈도 고대비)에선 칠하는 색을 브라우저에 맡김 */
@media (forced-colors: active) { html.kt-dark .kt-art-body * { -webkit-text-fill-color: currentColor !important; box-shadow: none !important; } }

/* ⑨ 테마 고르기 단추(머리 띠, kt-dark.js 가 넣음) ------------------------- */
.kt-theme-sw { position: relative; display: inline-flex; }
.kt-theme-btn { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 22px; padding: 0; border: 1px solid rgba(199,203,209,.35); border-radius: 999px; background: rgba(255,255,255,.06); color: #e8f5f2; cursor: pointer; transition: background .2s, transform .2s; }
.kt-theme-btn:hover { background: rgba(255,255,255,.16); }
.kt-theme-btn svg { width: 14px; height: 14px; transition: transform .45s cubic-bezier(.3,1.4,.5,1); }
.kt-theme-btn[data-cur="dark"] svg { transform: rotate(-30deg); }
.kt-theme-menu { position: fixed; right: 8px; top: 40px; z-index: 100000; min-width: 190px; padding: 6px; border-radius: 14px; background: #fff; color: #111418; border: 1px solid #dfe6e4; box-shadow: 0 18px 40px -16px rgba(7,56,58,.45); white-space: nowrap; }
.kt-theme-menu[hidden] { display: none; }
.kt-theme-menu b { display: block; padding: 6px 10px 4px; font-size: 11.5px; color: #5a6068; font-weight: 700; }
.kt-theme-menu button { display: flex; align-items: center; gap: 10px; width: 100%; padding: 8px 10px; border: 0; border-radius: 10px; background: none; color: inherit; font: 600 13.5px/1.2 var(--kt-sans); cursor: pointer; text-align: left; }
.kt-theme-menu button:hover, .kt-theme-menu button:focus-visible { background: #eef6f4; outline: none; }
.kt-theme-menu button[aria-checked="true"] { color: #0C7673; }
.kt-theme-menu button[aria-checked="true"]::after { content: "✓"; margin-left: auto; font-weight: 900; }
.kt-theme-menu svg { width: 16px; height: 16px; flex: none; }
html.kt-dark .kt-theme-menu { background: #132022; color: #e6eeed; border-color: #33494C; box-shadow: 0 18px 40px -16px rgba(0,0,0,.95); }
html.kt-dark .kt-theme-menu b { color: #86A09C; }
html.kt-dark .kt-theme-menu button:hover, html.kt-dark .kt-theme-menu button:focus-visible { background: #1B2C2F; }
html.kt-dark .kt-theme-menu button[aria-checked="true"] { color: #5ED6CC; }

/* 테마가 바뀔 때 단추에서 원이 퍼지는 전환(같은 문서 view transition) */
::view-transition-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
@media (prefers-reduced-motion: reduce) { .kt-theme-btn svg { transition: none; } html.kt-dark-anim, html.kt-dark-anim * { transition: none !important; } }
@media print { html.kt-dark { color-scheme: light; } }

/* ⑩ 1차 점검에서 걸린 것(2026-10-17) */
html.kt-dark .wia-ai .wia-ai__listen, html.kt-dark .wia-ai .wia-ai__br > summary, html.kt-dark .wia-ai .wia-ai__easy > summary { background: #13252c !important; color: #dfe9e7 !important; border-color: #2a4652; }
html.kt-dark .wia-ai .wia-ai__listen:hover, html.kt-dark .wia-ai .wia-ai__listen:focus-visible, html.kt-dark .wia-ai .wia-ai__listen[aria-pressed="true"], html.kt-dark .wia-ai .wia-ai__br > summary:hover { background: #1f6fa8 !important; color: #fff !important; border-color: #1f6fa8; }
html.kt-dark .kt-sep { color: var(--kt-mute); }
html.kt-dark .kt-art-body a[style*="color"] { color: #7ccff0 !important; }
html.kt-dark .wia-family { border-top-color: var(--dk-line); }
html.kt-dark .wia-family-btn { background: var(--dk-sf); border-color: var(--dk-line2); color: var(--kt-ink); }
html.kt-dark .wia-family-btn:hover { border-color: #4FD1C5; color: #9FE3DA; }
html.kt-dark .wia-family-caret, html.kt-dark .wia-family-x, html.kt-dark .wia-family-msg { color: var(--kt-mute); }
html.kt-dark .wia-family-panel { background: #101b1c; color: var(--kt-ink); box-shadow: 0 24px 60px rgba(0,0,0,.8); }
html.kt-dark .wia-family-head { border-bottom-color: var(--dk-line); }
html.kt-dark .wia-family-item { border-color: var(--dk-line2); }
html.kt-dark .wia-family-item:hover { border-color: #4FD1C5; background: var(--dk-sf); }
html.kt-dark .wia-family-name { color: var(--kt-ink); }
html.kt-dark .wia-family-desc { color: var(--kt-sub); }
html.kt-dark .wia-family-n { color: #F2B65A; }
html.kt-dark .kt-brief b { color: #0b1213; }

/* ⑪ 모든 경우(2026-10-17 공개 전 점검) ------------------------------------------ */
/* 투명 배경 그림(검은 글씨 PNG·SVG 도표·로고)이 밤 바탕에 묻히지 않게 — 불투명 사진에는 티 안 남 */
html.kt-dark .kt-art-body img:not(.emoji):not(.wp-smiley) { background-color: #f4f7f6; border-radius: 4px; }
html.kt-dark .kt-art-body img.emoji, html.kt-dark .kt-art-body img.wp-smiley { background: none; filter: none; }
/* 브라우저 자동 완성(노란·흰 바탕) */
html.kt-dark input:-webkit-autofill, html.kt-dark textarea:-webkit-autofill, html.kt-dark select:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 100px #0b1314 inset !important; -webkit-text-fill-color: #E6EEED !important; caret-color: #E6EEED; }
html.kt-dark input, html.kt-dark textarea { caret-color: #5ED6CC; }
/* 대비 높이기를 켠 사람 */
@media (prefers-contrast: more) {
	html.kt-dark, html.kt-dark body.kt, html.kt-dark body.kt-d2 { --kt-sub: #D2DEDC; --kt-mute: #BCCBC8; --kt-line: #4A6265; --dk-line: #4A6265; --dk-line2: #5C7679; }
	html.kt-dark .kt-ph img, html.kt-dark .kt-art-body img { filter: none; }
}
/* 고대비(윈도 강제 색) — 브라우저 색에 맡김 */
@media (forced-colors: active) { html.kt-dark .kt-404-art img, html.kt-dark .kt-ph img { filter: none; } }
/* 스크롤바·폼 컨트롤 */
html.kt-dark { scrollbar-color: #33494C #0E1617; }
/* 키보드 초점이 밤에도 보이게 */
html.kt-dark :focus-visible { outline-color: #5ED6CC !important; }
/* 모바일 탭 하이라이트 */
html.kt-dark a, html.kt-dark button { -webkit-tap-highlight-color: rgba(79,209,197,.18); }

/* ⑫ DARK-3(2026-10-17): 알약 단추 — 밤엔 --kt-brand 가 밝은 청록(#3DC4BA)이라 흰 글자 대비 2.1 → 짙은 청록에서 시작(흰 글자 5.5 이상) */
html.kt-dark body.kt-d2 .kt-btn:not(.is-line),
html.kt-dark body.kt-d2 .kt-search button, html.kt-dark body.kt-d2 .kt-sfind button,
html.kt-dark body.kt-d2 .kt-page .kt-art-body form :is(button, input[type=submit]) {
	background: linear-gradient(120deg, #0C7673, #0b6a5f 60%, #2f6b24); color: #fff; -webkit-text-fill-color: #fff; box-shadow: 0 0 0 1px rgba(95,214,204,.28), 0 6px 16px -10px rgba(0,0,0,.9); }
