.article-shell{max-width:980px;margin:0 auto;padding:34px 40px 64px}
.article-nav{display:flex;flex-direction:row;max-width:none;justify-content:space-between;align-items:center;gap:20px;min-height:48px;margin-bottom:76px;font-size:12px;color:var(--muted)}
.article-brand{color:var(--text);font-weight:500;display:flex;align-items:center;gap:11px;min-height:44px}
.article-brand:before{content:"";width:8px;height:8px;background:var(--accent);transform:rotate(-12deg)}
.article-nav>a{min-height:44px;display:flex;align-items:center}
.article-hero{max-width:750px;margin-bottom:58px}
.article-hero h1{font-family:"AppleMyungjo","Batang",Georgia,serif;font-size:44px;line-height:1.45;letter-spacing:-.045em;margin:18px 0 25px;font-weight:500}
.article-hero .latin-title{font-family:Georgia,serif;font-style:italic;font-size:47px;letter-spacing:-.035em}
.article-hero .lead{font-size:17px;line-height:1.9;color:var(--muted);max-width:700px}
.article-eyebrow{font:11px/1.8 var(--mono);letter-spacing:.06em;color:var(--accent)}
.article-meta{font-size:11px;line-height:1.9;color:var(--dim)}
.article-content{max-width:740px;margin-left:auto}
.article-content section{margin-bottom:58px}
.article-content h2{font-size:24px;margin-bottom:22px}
.article-content h3{font-size:16px;line-height:1.7;font-weight:500;margin:26px 0 10px}
.article-content p{line-height:1.95}
.article-content ul,.article-content ol{padding-left:22px;line-height:1.95;margin:20px 0}
.article-content li{padding-left:4px;margin-bottom:10px}
.article-content code{font:12px/1.7 var(--mono);background:var(--panel);padding:2px 4px;border-radius:2px;overflow-wrap:anywhere;word-break:break-word}
.article-content pre{background:var(--panel);padding:22px;overflow-x:auto;font:12px/1.9 var(--mono);border-left:2px solid var(--accent)}
.article-content pre code{padding:0;background:none;white-space:pre}
.article-content blockquote{margin:24px 0;padding:4px 0 4px 22px;border-left:2px solid var(--accent);font-size:16px}
.article-content blockquote p:last-child{margin:0}
.article-content .aside{border-left:1px solid var(--line);padding-left:18px;color:var(--muted);font-size:13px}
.article-content .note{background:var(--panel);padding:19px 22px;font-size:13px;line-height:1.9;margin:25px 0}
.article-content .note strong{color:var(--accent);font-weight:500}
.article-content .source{font-size:11px;color:var(--dim);margin-top:12px}
.article-content .source a,.article-content .text-link{text-decoration:underline;text-decoration-style:dotted;text-underline-offset:4px}
.article-content .text-link{display:inline-block;padding:8px 0;min-height:44px;color:var(--accent)}
.article-content table{font:12px/1.9 var(--sans)}
.article-content th,.article-content td{padding:12px 8px}
.article-content .topic-list{list-style:none;padding:0;margin:0}
.article-content .topic-list li{border-bottom:1px solid var(--line);padding:20px 0;margin:0}
.article-content .topic-list a{display:block}
.topic-title{display:block;font-size:17px;color:var(--text);font-weight:500;margin-bottom:7px}
.topic-description{display:block;color:var(--muted);font-size:13px;line-height:1.9}
.topic-status{display:block;font:10px/1.8 var(--mono);color:var(--accent);margin-bottom:8px}
.design-map{padding:24px;background:var(--panel);margin:25px 0}
.design-row{display:grid;grid-template-columns:1fr 36px 1.3fr;align-items:center;text-align:center;font-size:12px;gap:8px;margin:12px 0}
.design-box{border:1px solid var(--line);padding:15px 10px}
.design-box strong{display:block;font:12px/1.6 var(--mono);margin-bottom:5px;font-weight:500}
.design-box span{display:block;font-size:11px;color:var(--muted)}
.design-map figcaption{font-size:11px;color:var(--dim);line-height:1.9;margin-top:16px}
.article-footer{margin-top:65px}
.career-label{font:10px/1.7 var(--mono);letter-spacing:.05em;color:var(--accent);margin-bottom:12px}
.career-draft{padding:22px 25px;background:var(--panel);font-size:15px;line-height:2;margin:20px 0}
.report-index{display:flex;gap:12px 22px;flex-wrap:wrap;padding:0!important;list-style:none;font-size:12px}
.report-index li{padding:0;margin:0}
.report-index a{display:inline-block;min-height:44px;padding:10px 0}
@media(max-width:760px){.article-shell{padding:22px 25px 40px}.article-nav{margin-bottom:47px}.article-hero{margin-bottom:40px}.article-hero h1{font-size:31px}.article-hero .latin-title{font-size:36px}.article-hero .lead{font-size:15px}.article-content h2{font-size:21px}.article-content section{margin-bottom:45px}.design-map{padding:15px;margin-inline:0}.design-row{grid-template-columns:1fr 20px 1.1fr;font-size:11px;gap:4px}.design-box{padding:12px 6px}.career-draft{padding:18px}.article-content th,.article-content td{padding:10px 5px}}

.project-outline{display:flex;flex-direction:row;max-width:none;flex-wrap:wrap;gap:8px 23px;padding:16px 0;border-block:1px solid var(--line);margin-bottom:56px}
.project-outline a{display:inline-flex;justify-content:start;min-height:44px;font-size:12px}
.architecture-map{background:var(--panel);padding:26px;margin:26px 0}
.architecture-node{border:1px solid var(--line);padding:17px 10px;text-align:center;min-width:0;overflow-wrap:anywhere}
.architecture-node strong{display:block;font:13px/1.6 var(--mono);color:var(--text);margin-bottom:5px;font-weight:500}
.architecture-node span{display:block;font-size:11px;color:var(--muted);line-height:1.9}
.architecture-main{max-width:430px;margin-inline:auto}
.architecture-connector{text-align:center;font-size:10px;color:var(--muted);padding:12px 0}
.architecture-connector>span{display:block;color:var(--accent);font-size:17px;line-height:1.2;margin-bottom:5px}
.architecture-services{display:grid;grid-template-columns:1fr 1.35fr 1fr;gap:10px;margin-bottom:25px}
.architecture-db{border-color:var(--accent)}
.architecture-path{display:grid;grid-template-columns:65px 1fr;gap:14px;border-top:1px solid var(--line);padding:14px 0;align-items:start}
.path-label{font-size:11px;color:var(--accent)}
.architecture-path p{font-size:12px;line-height:1.9;margin:0}
.architecture-path p>span{font-size:11px;color:var(--muted)}
.architecture-map figcaption{font-size:11px;line-height:1.95;color:var(--muted);margin-top:18px}
.decision{margin-top:33px;padding:27px 0 12px;border-top:1px solid var(--line)}
.decision-index{font:10px/1.8 var(--mono);color:var(--accent);letter-spacing:.045em;margin:0 0 13px}
.article-content .decision h3{font-size:20px;letter-spacing:-.025em;margin:0 0 24px}
.decision-reasoning{margin:0}
.decision-reasoning>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:17px;margin-bottom:22px}
.decision-reasoning dt{font-size:11px;font-weight:500;color:var(--muted);padding-top:3px}
.decision-reasoning dd{font-size:14px;line-height:1.95;margin:0}
.decision details{border-bottom:0}
.decision summary{font-size:12px;min-height:48px}
.decision .detail-body{font-size:12px}
.decision .source a{display:inline-block;padding-block:5px}
.verification-item{border-bottom:1px solid var(--line);padding:0 0 16px;margin-bottom:23px}
.verification-item h3{font-size:16px;margin-top:0}
.verification-item p{font-size:14px}
.verification-item .source{font-size:11px}
@media(max-width:760px){.project-outline{gap:2px 18px;margin-bottom:43px;padding-block:12px}.architecture-map{padding:17px}.architecture-services{grid-template-columns:1fr;gap:8px}.architecture-node{padding:13px 9px}.architecture-connector{font-size:10px}.architecture-path{grid-template-columns:50px 1fr;gap:10px}.architecture-path p{font-size:11px}.decision-reasoning>div{display:block;margin-bottom:23px}.decision-reasoning dt{margin-bottom:6px;padding:0;color:var(--accent)}.decision-reasoning dd{font-size:14px}.article-content .decision h3{font-size:19px}.decision{padding-top:23px}}
