/* Technical-library entry: readable, restrained local style. */
.kb{--kb-ink:#252525;--kb-muted:#555;--kb-line:#ddd;--kb-wine:#89182d;padding-top:24px;padding-bottom:56px;color:var(--kb-ink);word-break:keep-all;line-height:1.6}
.kb *{box-sizing:border-box}
.kb h1,.kb h2,.kb h3,.kb p,.kb figure{margin:0}
.kb a,.kb button,.kb input,.kb select{font:inherit}
.kb a{color:inherit;text-decoration:none}
.kb button{cursor:pointer}
.kb :is(a,button,input,select):focus-visible{outline:3px solid var(--kb-wine);outline-offset:4px}
.kb-head{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-bottom:25px}
.kb-head h1{font-size:2.375rem;font-weight:800;line-height:1.25;letter-spacing:-.04em}
.kb-head p{font-size:1.125rem;color:var(--kb-muted);margin-top:10px}
.kb-search{width:390px;flex-shrink:0}
.kb-search label{font-size:1rem;font-weight:700;display:block;margin-bottom:8px}
.kb-search input{width:100%;min-height:52px;font-size:1.0625rem;border:1px solid #b6b6b6;background:#fff;padding:12px 15px;border-radius:8px;box-shadow:0 2px 5px #00000004;color:#252525}
.kb-search input::placeholder{color:#6a6a6a}
.kb-intro-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(280px,1fr);gap:24px}
.kb-feature{display:grid;grid-template-columns:1.08fr 1fr;background:#fff;min-height:320px;position:relative;border:1px solid #dedede;border-radius:12px;overflow:hidden;box-shadow:0 7px 22px #00000009}
.kb-feature-copy{padding:27px;display:flex;flex-direction:column;align-items:start}
.kb-eyebrow{font-size:1rem;font-weight:750;color:var(--kb-wine);margin-bottom:14px;display:block}
.kb-feature h2{font-size:2rem;font-weight:800;line-height:1.35;letter-spacing:-.045em;margin-bottom:13px}
.kb-feature p{font-size:1.125rem;color:var(--kb-muted);line-height:1.65}
.kb .kb-action{display:inline-flex;align-items:center;justify-content:center;min-height:46px;font-size:1rem;font-weight:750;background:var(--kb-wine);color:#fff;border:0;border-radius:6px;padding:10px 17px;margin-top:22px}
.kb .kb-action:hover{background:#701323}
.kb-feature figure{position:relative;min-width:0;overflow:hidden;min-height:320px}
.kb-feature img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;object-position:45% center}
.kb-feature figcaption{position:absolute;bottom:0;right:0;background:#ffffffef;font-size:.8125rem;color:#555;padding:4px 9px}
.kb-reading{background:#f5f5f5;border:0;border-radius:12px;padding:23px;display:flex;flex-direction:column;min-width:0}
.kb-reading h2{font-size:1.5rem;line-height:1.35;letter-spacing:-.035em;margin-bottom:7px;font-weight:780}
.kb-reading>p{font-size:1rem;color:var(--kb-muted);margin-bottom:15px}
.kb-reading a{display:grid;grid-template-columns:32px 1fr 16px;gap:11px;align-items:center;padding:14px 11px;background:#fff;border-radius:7px;margin-bottom:9px}
.kb-reading a>b{display:flex;align-items:center;justify-content:center;width:31px;height:32px;background:#f3f3f3;color:var(--kb-wine);font-size:.9375rem;font-weight:800;border-radius:5px}
.kb-reading strong{display:block;font-size:1.125rem;line-height:1.45;font-weight:750}
.kb-reading small{display:block;font-size:.875rem;color:#606060;margin-bottom:3px}
.kb-reading a>span{font-size:1rem;color:#555}
.kb-reading a:hover{box-shadow:0 0 0 1px #aaa}
.kb-reading a:hover strong{color:var(--kb-wine)}
.kb-reading .kb-reading-foot{margin-top:auto;margin-bottom:0;padding-top:9px;font-size:.875rem;color:#606060;line-height:1.6}
.kb-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:15px}
.kb-section-heading h2{font-size:1.625rem;font-weight:780;letter-spacing:-.035em;line-height:1.35}
.kb-section-heading p{font-size:1rem;color:#606060}
.kb-topics{margin-top:30px}
.kb-topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.kb-topic{position:relative;text-align:left;padding:18px 19px 16px;background:#fff;color:var(--kb-ink);border:1px solid #d9d9d9;border-top:3px solid var(--topic-color);border-radius:9px;min-width:0;box-shadow:0 3px 9px #00000004}
.kb-topic>small{font-size:.875rem;font-weight:700;color:var(--topic-color)}
.kb-topic strong{display:block;font-size:1.5rem;font-weight:800;margin:8px 0 6px;letter-spacing:-.035em;line-height:1.35}
.kb-topic p{font-size:1rem;color:var(--kb-muted);line-height:1.6;min-height:3.2em}
.kb-topic .kb-topic-link{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:13px;font-size:.9375rem;color:#555}
.kb-topic-link>b{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:5px;background:#f3f3f3;color:var(--topic-color);font-size:1.125rem}
.kb-topic[aria-pressed=true],.kb-topic:hover{border-color:var(--topic-color);box-shadow:0 4px 12px #00000009}
.kb-topic[aria-pressed=true]{background:#f7f7f7}
.kb-topic[aria-pressed=true] strong,.kb-topic:hover strong{color:var(--topic-color)}
.kb-library{margin-top:31px;scroll-margin-top:155px}
.kb-toolbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:14px 16px;background:#f4f4f4;border:0;border-radius:8px;font-size:1rem}
.kb-toolbar select{min-height:42px;padding:7px 29px 7px 10px;border:1px solid #bfbfbf;border-radius:5px;color:#333;background:#fff;min-width:133px;font-size:.9375rem}
.kb-toolbar label{display:flex;align-items:center;gap:8px;color:#4c4c4c;font-size:.9375rem}
.kb-toolbar label[hidden]{display:none}
.kb-toolbar input[type=checkbox]{accent-color:var(--kb-wine);width:18px;height:18px}
.kb-toolbar button{min-height:38px;border:1px solid #c5c5c5;border-radius:5px;padding:6px 11px;background:#fff;color:#444;font-size:.9375rem}
.kb-toolbar button:hover{border-color:#777}
.kb-active-topic{font-size:1rem;font-weight:750;color:var(--kb-wine);margin-right:2px}
.kb-result{margin-left:auto;font-size:.9375rem;color:#555}
.kb-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:17px}
.kb-card{position:relative;padding:21px;border:1px solid #dedede;border-radius:9px;background:#fff;min-width:0;display:flex;gap:17px}
.kb-card[hidden]{display:none}
.kb-card .kb-visual{display:none}
.kb-card:before{content:'해설';width:56px;height:69px;flex-shrink:0;background:#f3f3f3;display:flex;align-items:center;justify-content:center;color:var(--kb-wine);font-size:.9375rem;font-weight:750;border:1px solid #ddd;border-top:3px solid var(--kb-wine);border-radius:4px;margin-top:2px}
.kb-card[data-category=resource]:before{content:'자료';color:#555;border-top-color:#b97c0e}
.kb-card[data-state=planned]:before{content:'예정';color:#666;border-top-color:#aaa}
.kb-card-body{min-width:0;flex:1}
.kb-meta{display:flex;align-items:center;gap:11px;font-size:.9375rem;color:#555;margin-bottom:9px;flex-wrap:wrap}
.kb-state{font-size:.8125rem;color:#555;background:#f0f0f0;padding:2px 7px;border-radius:4px;white-space:nowrap}
.kb-state.ready{color:#24613e;background:#edf5ef}
.kb-card h3{font-size:1.375rem;font-weight:780;line-height:1.4;letter-spacing:-.035em;margin-bottom:9px}
.kb-card h3 br{display:none}
.kb-description{font-size:1.0625rem;color:#555;line-height:1.65}
.kb-card-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;color:#606060;font-size:.875rem}
.kb-card-foot a{font-size:1rem;font-weight:750;color:var(--kb-wine);white-space:nowrap}
.kb-card-foot a:hover{text-decoration:underline;text-underline-offset:4px}
.kb-empty{padding:27px 20px;background:#f6f6f6;border-radius:8px;text-align:center;color:#555;font-size:1rem}
.kb-empty[hidden]{display:none}
.kb-related{display:flex;align-items:center;gap:24px;margin-top:28px;padding:18px 0 0;font-size:1rem;border-top:1px solid #ddd;flex-wrap:wrap}
.kb-related h2{font-size:1.125rem}
.kb-related a{color:#444}
.kb-related a:hover{text-decoration:underline}
.kb-related p{margin-left:auto;font-size:.875rem;color:#606060}
@media(max-width:1100px){
 .kb-feature{grid-template-columns:1.1fr 1fr}.kb-feature-copy{padding:22px}.kb-feature h2{font-size:1.75rem}.kb-feature p{font-size:1.0625rem}.kb-intro-grid{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);gap:18px}.kb-topic{padding:16px}.kb-topic strong{font-size:1.375rem}.kb-topic p{font-size:.9375rem}.kb-reading{padding:20px}.kb-head{gap:20px}.kb-search{width:330px}
}
@media(max-width:850px){
 .kb-head{align-items:start;flex-direction:column;gap:17px}.kb-search{width:100%}.kb-intro-grid{grid-template-columns:1fr}.kb-reading{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.kb-reading h2,.kb-reading>p,.kb-reading .kb-reading-foot{grid-column:1/-1}.kb-reading .kb-reading-foot{display:none}.kb-topic-grid{grid-template-columns:1fr 1fr}.kb-topic p{min-height:0}.kb-grid{grid-template-columns:1fr}.kb-related{gap:14px 20px}.kb-related p{margin-left:0}.kb-feature figure{min-height:280px}.kb-feature{min-height:280px}.kb-feature h2{font-size:1.875rem}.kb-result{margin-left:0}
}
@media(max-width:500px){
 .kb-head h1{font-size:2rem}.kb-head p{font-size:1.0625rem}.kb-feature{grid-template-columns:1fr}.kb-feature figure{grid-row:1;min-height:165px;max-height:165px}.kb-feature-copy{padding:21px}.kb-feature h2{font-size:1.75rem}.kb-feature h2 br{display:none}.kb-feature p{font-size:1.0625rem}.kb-reading{grid-template-columns:1fr;padding:20px}.kb-reading a{padding:12px}.kb-section-heading{display:block}.kb-section-heading h2{font-size:1.375rem}.kb-section-heading p{margin-top:6px;font-size:.9375rem}.kb-topic-grid{gap:10px}.kb-topic{padding:13px 12px}.kb-topic strong{font-size:1.25rem}.kb-topic>small{font-size:.8125rem}.kb-topic p{font-size:.9375rem}.kb-topic .kb-topic-link{font-size:.8125rem;align-items:start;gap:5px}.kb-topic-link>b{width:24px;height:25px;flex-shrink:0}.kb-toolbar{gap:10px;padding:13px}.kb-result{width:100%;margin:0}.kb-card:before{width:40px;height:57px;font-size:.8125rem}.kb-card{gap:12px;padding:16px}.kb-card h3{font-size:1.1875rem}.kb-meta{gap:7px;font-size:.8125rem}.kb-description{font-size:1rem}.kb-card-foot{flex-wrap:wrap}.kb-related p{font-size:.875rem}
}
