#kje-portfolio .kje-profile-lead,#kje-portfolio .kje-background dd,#kje-portfolio .kje-about-copy,#kje-portfolio .kje-poster-word{white-space:pre-line}
#kje-portfolio .kje-project-cover{width:100%;height:100%;object-fit:cover;display:block}
#kje-portfolio .kje-project-desc{white-space:pre-line}
#kje-portfolio .kje-post-section{padding:46px 0 60px}
#kje-portfolio .kje-post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
#kje-portfolio .kje-post-card{border-top:1px solid var(--kje-line);padding-top:18px;min-width:0}
#kje-portfolio .kje-post-cover{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:17px;background:var(--kje-wash)}
#kje-portfolio .kje-post-meta{font-size:11px;color:var(--kje-muted);margin-bottom:9px}
#kje-portfolio .kje-post-title{font-size:19px;line-height:1.6;letter-spacing:-.5px;font-weight:500;overflow-wrap:anywhere}
#kje-portfolio .kje-post-card a:hover .kje-post-title{text-decoration:underline;text-underline-offset:5px}
#kje-portfolio .kje-post-summary{margin-top:10px;font-size:13px;line-height:1.9;color:var(--kje-muted);overflow-wrap:anywhere}
#kje-portfolio .kje-post-empty{font-size:13px;color:var(--kje-muted);border-top:1px solid var(--kje-line);padding:25px 0}
#kje-portfolio .kje-reader{max-width:800px;margin:0 auto;padding:8px 0 25px}
#kje-portfolio .kje-reader-back{display:inline-block;font-size:12px;margin-bottom:30px;text-decoration:underline;text-underline-offset:5px}
#kje-portfolio .kje-reader h2{font-family:'Noto Serif KR',serif;font-size:clamp(26px,4vw,38px);line-height:1.5;overflow-wrap:anywhere;margin:8px 0 22px}
#kje-portfolio .kje-reader .kje-post-cover{aspect-ratio:auto;max-height:600px;object-fit:contain;margin:26px 0}
#kje-portfolio .kje-rich-content{font-size:16px;line-height:1.95;overflow-wrap:anywhere;color:var(--kje-ink)}
#kje-portfolio .kje-rich-content p{margin:0 0 1.1em}
#kje-portfolio .kje-rich-content h2,#kje-portfolio .kje-rich-content h3,#kje-portfolio .kje-rich-content h4{font-family:inherit;font-size:1.35em;font-weight:600;line-height:1.6;margin:1.6em 0 .6em}
#kje-portfolio .kje-rich-content img{display:block;max-width:100%;height:auto;margin:1.4em auto}
#kje-portfolio .kje-rich-content a{color:var(--kje-green);text-decoration:underline;text-underline-offset:4px}
#kje-portfolio .kje-rich-content blockquote{border-left:3px solid var(--kje-green);margin:1.4em 0;padding:.2em 1.2em;color:var(--kje-muted)}
#kje-portfolio .kje-rich-content pre{overflow:auto;padding:18px;background:var(--kje-wash);font-size:13px;white-space:pre}
#kje-portfolio .kje-rich-content code{font-size:.9em;background:var(--kje-wash)}
#kje-portfolio .kje-rich-content table{display:block;overflow:auto;border-collapse:collapse;max-width:100%;margin:1.5em 0}
#kje-portfolio .kje-rich-content th,#kje-portfolio .kje-rich-content td{padding:10px;border:1px solid var(--kje-line)}
#kje-portfolio .kje-rich-content figcaption{font-size:12px;color:var(--kje-muted);text-align:center}
#kje-portfolio .kje-rich-content hr{border:0;border-top:1px solid var(--kje-line);margin:2em 0}
#kje-portfolio .kje-post-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}
#kje-portfolio .kje-post-filter{border:1px solid var(--kje-line);padding:7px 13px;border-radius:20px;font-size:12px}
#kje-portfolio .kje-post-filter[aria-pressed=true]{background:var(--kje-button);color:var(--kje-button-text);border-color:var(--kje-button)}
@media(max-width:850px){#kje-portfolio .kje-post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#kje-portfolio .kje-post-grid{grid-template-columns:1fr;gap:28px}#kje-portfolio .kje-post-section{padding:30px 0 40px}#kje-portfolio .kje-rich-content{font-size:15px}}

#kje-portfolio .kje-project .kje-post-meta{margin-top:12px;margin-bottom:0}
