/* Uses the existing Chenfan header details and crawlable language anchors. */
.cf-language-control > .cf-language-links {
    display: none;
}

.cf-language-control[open] > .cf-language-links {
    position: absolute;
    inset: calc(100% + 8px) var(--cf-language-panel-right, 0) auto auto;
    z-index: 110;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px;
    width: min(560px, calc(100vw - 24px), calc(var(--cf-language-viewport, 100vw) - 24px));
    min-width: 0;
    max-height: min(70vh, 460px);
    box-sizing: border-box;
    overflow: auto;
    padding: 8px;
    border: 1px solid #474e4f;
    background: #191d1e;
    box-shadow: 0 12px 28px rgb(0 0 0 / 35%);
}

.cf-language-control > .cf-language-links > a {
    display: flex;
    align-items: center;
    min-height: 42px;
    padding: 8px 10px;
    border: 1px solid transparent;
    box-sizing: border-box;
    color: #ebeeee;
    font-size: 13px;
    white-space: normal;
    overflow-wrap: anywhere;
}

.cf-language-control > .cf-language-links > a:hover,
.cf-language-control > .cf-language-links > a:focus-visible {
    background: #33393a;
}

.cf-language-control > .cf-language-links > a[aria-current]:not([aria-current="false"]) {
    border-color: #6b7475;
    background: #353b3c;
    color: #fff;
    font-weight: 600;
}

.cf-language-control > .cf-language-links > a:focus-visible {
    outline-offset: -3px;
}

@media (max-width: 900px) {
    .cf-language-control[open] > .cf-language-links {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .cf-language-control[open] > .cf-language-links {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

.cf-language-links>a{text-decoration:none}


html[lang="ko"] :is(main, .masthead, .foot) :is(h1,h2,h3,p,li,a,th,td,button,label):lang(ko) {
    word-break: keep-all;
    overflow-wrap: anywhere;
}
html[lang="ja"] :is(main, .masthead, .foot) :lang(ja) {
    line-break: strict;
}
