/* Editorial reading paths, shared across Korean and English. */
:root { --ksi-reader-ink:#142c3a; --ksi-reader-muted:#536572; --ksi-reader-green:#146b58; --ksi-reader-line:#dce5e4; }
.ksi-reader-home,.ksi-reader-library { color:var(--ksi-reader-ink); background:#fff; }
.ksi-reader-home *, .ksi-reader-library * { box-sizing:border-box; }
.ksi-reader-section { width:min(1200px,calc(100% - 48px)); margin:0 auto; padding:42px 0; color:var(--ksi-reader-ink); }
.ksi-reader-section + .ksi-reader-section { border-top:1px solid var(--ksi-reader-line); }
.ksi-reader-section h1,.ksi-reader-section h2,.ksi-reader-section h3 { color:var(--ksi-reader-ink); letter-spacing:-.035em; word-break:keep-all; overflow-wrap:anywhere; }
.ksi-reader-section h1 { margin:8px 0 14px; font-size:clamp(27px,3vw,40px); line-height:1.3; }
.ksi-reader-section h2 { margin:0 0 22px; font-size:25px; line-height:1.4; }
.ksi-reader-section a { color:inherit; text-decoration:none; }
.ksi-reader-section a:hover,.ksi-reader-section a:focus-visible { color:var(--ksi-reader-green); }
.ksi-reader-section a:focus-visible,.ksi-reader-nav a:focus-visible,.ksi-reader-toc a:focus-visible { outline:3px solid #168a91; outline-offset:4px; }
.ksi-reader-kicker { margin:0 0 8px; color:var(--ksi-reader-green); font-size:12px; font-weight:800; letter-spacing:.06em; }
.ksi-reader-description { margin:0 0 28px; color:var(--ksi-reader-muted); font-size:16px; }
.ksi-reader-featured { display:grid; grid-template-columns:minmax(0,1.65fr) minmax(0,1fr); gap:24px; }
.ksi-reader-card { min-width:0; border:1px solid var(--ksi-reader-line); border-radius:8px; background:#fff; overflow:hidden; }
.ksi-reader-card > a { display:block; height:100%; }
.ksi-reader-card__copy { padding:22px; }
.ksi-reader-card h3 { margin:0 0 12px; font-size:21px; line-height:1.45; }
.ksi-reader-card p:not(.ksi-reader-kicker) { margin:0 0 18px; color:var(--ksi-reader-muted); font-size:14px; line-height:1.7; }
.ksi-reader-card--lead h3 { font-size:28px; }
.ksi-reader-card__image { display:block; width:100%; height:220px; object-fit:cover; }
.ksi-reader-support { display:grid; gap:20px; }
.ksi-reader-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px; color:var(--ksi-reader-muted); font-size:12px; }
.ksi-reader-meta > span { color:var(--ksi-reader-green); font-weight:750; }
.ksi-reader-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.ksi-reader-purpose-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.ksi-reader-purpose-grid a { display:flex; gap:14px; padding:22px 16px; align-items:center; background:#edf5f1; border-radius:6px; min-height:64px; }
.ksi-reader-purpose-grid a > span:first-child { color:var(--ksi-reader-green); font-size:12px; }
.ksi-reader-purpose-grid a > span:last-child { margin-left:auto; }
.ksi-reader-section-head { display:flex; justify-content:space-between; align-items:baseline; gap:16px; flex-wrap:wrap; margin-bottom:18px; }
.ksi-reader-section-head h2 { margin:0; }
.ksi-reader-section-head > a { color:var(--ksi-reader-green); font-weight:700; font-size:14px; padding:8px 0; }
.ksi-reader-market { background:#f4f7f6; border-radius:8px; padding:28px; }
.ksi-reader-indexes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-bottom:12px; }
.ksi-reader-indexes > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:10px; }
.ksi-reader-indexes strong { font-size:24px; }
.ksi-reader-indexes small { display:block; width:100%; color:var(--ksi-reader-muted); }
.ksi-reader-market > small { color:var(--ksi-reader-muted); }
.ksi-reader-market-link { display:block; padding-top:20px; font-weight:750; }
.ksi-reader-market-link time { font-size:12px; color:var(--ksi-reader-muted); margin-right:8px; }
.ksi-reader-subscribe { display:grid; grid-template-columns:1.4fr 1fr; gap:32px; align-items:center; }
.ksi-reader-subscribe p { color:var(--ksi-reader-muted); line-height:1.7; }
.ksi-reader-subscribe .ksi-research-sidebar__premium p { color:#e0eceb; }
.ksi-reader-nav { border-top:1px solid #e5eceb; background:#fff; }
.ksi-reader-nav > div { display:flex; flex-wrap:wrap; gap:6px 26px; width:min(1320px,calc(100% - 48px)); margin:auto; }
.ksi-reader-nav a { display:flex; align-items:center; min-height:46px; color:var(--ksi-reader-ink); text-decoration:none; font-size:14px; font-weight:750; }
.ksi-reader-nav a:hover { color:var(--ksi-reader-green); }
.ksi-single-header__identity > p { display:none; }
.ksi-reader-intro { padding:22px; border:1px solid #d2e4dc; border-left:4px solid var(--ksi-reader-green); border-radius:4px; background:#f3f8f5; margin-bottom:28px; color:var(--ksi-reader-ink); }
.ksi-reader-intro > strong { color:var(--ksi-reader-green); }
.ksi-reader-intro p,.ksi-reader-intro li { font-size:16px; line-height:1.75; }
.ksi-reader-intro > p { margin:10px 0 18px; }
.ksi-reader-intro ul { margin:12px 0 18px; padding-left:22px; }
.ksi-reader-toc { margin-top:14px; border-top:1px solid #d2e4dc; padding-top:12px; }
.ksi-reader-toc summary { cursor:pointer; font-weight:750; padding:8px 0; font-size:16px; }
.ksi-reader-toc ol { padding-left:22px; margin:10px 0; }
.ksi-reader-toc a { display:inline-block; padding:5px 0; color:#145f55; }
.ksi-reader-inline-link { display:block; margin-top:14px; padding:14px 0 0; border-top:1px solid #d2e4dc; color:#145f55; font-size:15px; font-weight:700; }
.ksi-reader-article h2[id] { scroll-margin-top:24px; }
.ksi-reader-next { margin:32px 0; padding:24px; background:#edf5f1; border-radius:6px; }
.ksi-reader-next h2 { margin:0 0 16px; font-size:23px; }
.ksi-reader-next > a { display:block; padding:14px 0; border-top:1px solid #d2e4dc; color:#145f55; font-size:17px; font-weight:750; }
.ksi-reader-search label { display:block; font-weight:700; margin-bottom:8px; }
.ksi-reader-search > div { display:flex; gap:8px; max-width:600px; }
.ksi-reader-search input[type=search] { min-width:0; flex:1; border:1px solid #9aadab; border-radius:4px; }
.ksi-reader-search button { background:var(--ksi-reader-green); color:#fff; min-height:46px; border:0; border-radius:4px; padding:10px 22px; }
.ksi-reader-pagination { display:flex; gap:10px; flex-wrap:wrap; margin:32px 0 0; }
.ksi-reader-pagination > * { padding:10px 16px; border:1px solid var(--ksi-reader-line); border-radius:4px; }
.ksi-reader-pagination .current { color:#fff; background:var(--ksi-reader-green); }
.ksi-reader-dashboard { background:#0a1622; }
.ksi-reader-dashboard > .ksi-reader-section,.ksi-reader-dashboard > .ksi-reader-section h1 { color:#f4f8fb; }
.ksi-reader-dashboard .ksi-reader-kicker { color:#87d4bd; }
.ksi-reader-dashboard .ksi-dashboard__shell { padding-top:0; }
.ksi-reader-home + .ksi-site-footer { margin-top:20px; }
@media(max-width:900px) {
    .ksi-reader-featured { grid-template-columns:1fr; }
    .ksi-reader-card--lead > a { display:grid; grid-template-columns:1fr 1.25fr; }
    .ksi-reader-card__image { height:100%; min-height:220px; }
    .ksi-reader-support { grid-template-columns:1fr 1fr; }
    .ksi-reader-grid { grid-template-columns:1fr 1fr; }
    .ksi-reader-subscribe { grid-template-columns:1fr; }
}
@media(max-width:600px) {
    .ksi-reader-section { width:calc(100% - 32px); padding:28px 0; }
    .ksi-reader-opening { padding-top:22px; }
    .ksi-reader-section h1 { font-size:27px; }
    .ksi-reader-section h2 { font-size:22px; margin-bottom:16px; }
    .ksi-reader-description { font-size:14px; margin-bottom:20px; }
    .ksi-reader-card--lead > a { display:flex; flex-direction:column; }
    .ksi-reader-card--lead .ksi-reader-card__copy { order:-1; }
    .ksi-reader-card__image { height:150px; min-height:0; }
    .ksi-reader-card__copy { padding:18px; }
    .ksi-reader-card--lead h3 { font-size:23px; }
    .ksi-reader-card h3 { word-break:keep-all; overflow-wrap:anywhere; }
    .ksi-reader-support,.ksi-reader-grid { grid-template-columns:1fr; gap:12px; }
    .ksi-reader-support .ksi-reader-card { border:0; border-bottom:1px solid var(--ksi-reader-line); border-radius:0; }
    .ksi-reader-support .ksi-reader-card__copy { padding:14px 0; }
    .ksi-reader-support h3 { font-size:19px; }
    .ksi-reader-support .ksi-reader-card p:not(.ksi-reader-kicker) { display:none; }
    .ksi-reader-purpose-grid { grid-template-columns:1fr 1fr; gap:8px; }
    .ksi-reader-purpose-grid a { padding:14px 12px; gap:8px; font-size:14px; }
    .ksi-reader-market { padding:22px 18px; }
    .ksi-reader-indexes { gap:12px; }
    .ksi-reader-indexes > div { gap:6px; }
    .ksi-reader-indexes strong { font-size:21px; }
    .ksi-reader-indexes small { font-size:11px; }
    .ksi-reader-nav > div { width:calc(100% - 32px); gap:0; justify-content:space-between; }
    .ksi-reader-nav a { font-size:12px; padding:0 3px; }
    .ksi-single-header__home strong { max-width:145px; font-size:13px; }
    .ksi-single-header__about { display:none; }
    .ksi-reader-intro { padding:18px 16px; }
    .ksi-reader-intro p,.ksi-reader-intro li { font-size:15px; }
    .ksi-reader-next { padding:20px 16px; }
    .ksi-reader-next > a { font-size:16px; }
}
.ksi-reader-inline { border-block:1px solid #d2e4dc; background:#f7faf8; padding:20px; margin:28px 0; }
.ksi-reader-inline strong { display:block; color:#146b58; font-size:13px; margin-bottom:8px; }
.ksi-reader-inline a { color:#145f55; font-size:16px; font-weight:700; }
/* Keep the environment label clear of the search and language controls. */
.ksi-staging-badge { top:auto; right:12px; bottom:12px; pointer-events:none; }
.ksi-reader-table { max-width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; margin-bottom:24px; }
.ksi-reader-table:focus-visible { outline:2px solid #168a91; outline-offset:3px; }
.ksi-reader-table table { min-width:560px; width:100%; margin:0; }
.ksi-reader-table th,.ksi-reader-table td { padding:12px; text-align:left; vertical-align:top; word-break:keep-all; }
.ksi-reader-table th { background:#edf5f1; }
.ksi-reader-table-hint { margin-bottom:8px !important; color:#536572; font-size:12px !important; }
.ksi-reader-table-hint[hidden] { display:none; }

/* Consistent information pages and a visible privacy route on every template. */
.ksi-reader-footer { background:#102f2d; color:#eef6f3; }
.ksi-reader-footer .ksi-reader-section { color:inherit; padding-top:32px; padding-bottom:32px; }
.ksi-reader-footer p { max-width:650px; color:#cbdcd6; font-size:14px; line-height:1.7; }
.ksi-reader-footer nav { display:flex; flex-wrap:wrap; gap:8px 24px; margin:20px 0; }
.ksi-reader-footer a { display:inline-flex; align-items:center; min-height:44px; font-size:14px; text-decoration:underline; text-underline-offset:4px; }
.ksi-reader-footer a:hover,.ksi-reader-footer a:focus-visible { color:#a1e6c8; }
.ksi-reader-footer small { color:#cbdcd6; }
.ksi-reader-information { background:#fff; }
.ksi-reader-information .ksi-reader-section { max-width:800px; }
.ksi-reader-updated { color:var(--ksi-reader-muted); font-size:14px; }
.ksi-reader-information__body { font-size:17px; line-height:1.9; overflow-wrap:anywhere; }
.ksi-reader-information__body h2 { margin-top:36px; margin-bottom:12px; }
.ksi-reader-information__body a { color:#146b58; text-decoration:underline; text-underline-offset:3px; }
.ksi-reader-path__steps { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; list-style:none; padding:0; margin:0; }
.ksi-reader-path__steps > li { padding:20px; border:1px solid #dce5e4; border-radius:6px; }
.ksi-reader-path h3 { font-size:18px; line-height:1.5; margin:6px 0 16px; }
.ksi-reader-path ul { list-style:none; margin:0; padding:0; }
.ksi-reader-path ul li + li { border-top:1px solid #dce5e4; margin-top:10px; padding-top:10px; }
.ksi-reader-path a { font-size:14px; line-height:1.65; display:block; padding:4px 0; }
@media(max-width:900px) { .ksi-reader-path__steps { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .ksi-reader-path__steps { grid-template-columns:1fr; } .ksi-reader-path__steps > li { padding:18px; } }
