/* 화면 밝기 단추·메뉴·전환 효과 공용 (2026-11-07) — 본사 wia-news/assets/kt-dark.css 192~212행과 같은 값 */
.kt-theme-sw { position: relative; display: inline-flex; flex: none; }
.kt-theme-btn { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 32px; padding: 0; border: 1px solid var(--ktm-bd, #bfe0e6); border-radius: 999px; background: var(--ktm-bg, #eef6f8); color: var(--ktm-fg, #0b2a3a); cursor: pointer; transition: background .2s; }
.kt-theme-btn:hover { background: var(--ktm-bg-h, #dceff2); }
.kt-theme-btn:focus-visible { outline: 2px solid var(--ktm-focus, #0C7673); outline-offset: 2px; }
.kt-theme-btn svg { width: 18px; height: 18px; transition: transform .45s cubic-bezier(.3,1.4,.5,1); }
.kt-theme-btn[data-cur="dark"] svg { transform: rotate(-30deg); }
html.kt-dark { --ktm-bd: rgba(185,214,208,.3); --ktm-bg: rgba(255,255,255,.04); --ktm-bg-h: rgba(255,255,255,.16); --ktm-fg: #e6eeed; --ktm-focus: #5ED6CC; }
@media (max-width: 768px), (pointer: coarse) { .kt-theme-btn { width: 44px; height: 44px; } }
.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: 13px; color: #5a6068; font-weight: 700; }
.kt-theme-menu button { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 44px; padding: 11px 12px; border: 0; border-radius: 10px; background: none; color: inherit; font: 600 15px/1.2 inherit; font-family: inherit; cursor: pointer; text-align: start; }
.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: "✓"; content: "✓" / ""; margin-inline-start: 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-old(root), ::view-transition-new(root) { animation: none; mix-blend-mode: normal; }
html.kt-dark-anim, html.kt-dark-anim * { transition: background-color .8s, color .8s, border-color .8s !important; }
@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; } }
