:root{--paper:#f2eee7;--paper-2:#e9e3d9;--ink:#1d1b18;--ink-2:#5b5650;--rule:#d6cfc3;--accent:#3b63a8;
--serif:'Noto Serif KR','Nanum Myeongjo',serif;--sans:'Pretendard Variable',Pretendard,-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
--mono:'IBM Plex Mono',ui-monospace,Menlo,Consolas,monospace;color-scheme:light}
@media (prefers-color-scheme:dark){:root{--paper:#171614;--paper-2:#211f1c;--ink:#ece7de;--ink-2:#a39d93;--rule:#34312c;--accent:#8fb0e8;color-scheme:dark}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 var(--sans);word-break:keep-all;overflow-wrap:break-word}
a{color:inherit}a:hover{color:var(--accent)}img{max-width:100%;display:block}
.wrap{max-width:1080px;margin:0 auto;padding-inline:20px}
header.site{border-bottom:1px solid var(--rule)}
header.site .wrap{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 24px;padding-block:22px}
.mark{font:500 18px var(--mono);letter-spacing:.42em;text-decoration:none}
nav a{font:14px var(--sans);color:var(--ink-2);text-decoration:none;margin-left:18px}nav a:first-child{margin-left:0}
.tag{display:inline-block;font:13px var(--mono);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 55%,transparent);border-radius:99px;padding:2px 12px;text-decoration:none}
.meta{font:13px var(--mono);color:var(--ink-2);letter-spacing:.02em}
h1,h2,h3{font-family:var(--serif);font-weight:700;line-height:1.35;text-wrap:balance;margin:0}
.lead{padding-block:56px 40px;border-bottom:1px solid var(--rule)}
.lead p{margin:14px 0 0;color:var(--ink-2);max-width:40em}
.lead h1{font-size:clamp(28px,4.2vw,44px)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:36px 28px;padding-block:40px}
.card{text-decoration:none;display:flex;flex-direction:column;gap:10px}
.card img{aspect-ratio:4/5;object-fit:cover;width:100%;background:var(--paper-2)}
.card h3{font-size:19px}.card:hover h3{color:var(--accent)}
.row{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}
.list{list-style:none;margin:0;padding:24px 0}.list li{border-bottom:1px solid var(--rule);padding-block:16px}
.list a{text-decoration:none;display:grid;grid-template-columns:120px 1fr;gap:4px 20px}.list h3{font-size:18px}
@media (max-width:560px){.list a{grid-template-columns:1fr}}
article{max-width:720px;margin:0 auto;padding-block:48px 72px}
article h1{font-size:clamp(28px,5vw,40px);margin-top:14px}
.answer{font:600 19px/1.65 var(--sans);margin:22px 0 0;padding-left:16px;border-left:3px solid var(--accent)}
.cover{margin:36px 0;max-width:560px}
section{margin-top:52px}section h2{font-size:22px;margin-bottom:14px}
.points{margin:0;padding-left:1.2em}.points li{margin-bottom:10px}
.slides{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px}
.slides img{width:min(78vw,360px);flex:none;scroll-snap-align:start;border:1px solid var(--rule)}
.body p{margin:0 0 1.1em}
.evidence{background:var(--paper-2);padding:18px 20px;font-size:15px}
.sources{margin:0;padding-left:1.2em;font-size:15px}.sources li{margin-bottom:6px}
.sources span{color:var(--ink-2);font:13px var(--mono)}
footer.site{border-top:1px solid var(--rule);margin-top:40px}
footer.site .wrap{padding-block:30px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:var(--ink-2);font-size:14px}
.search input{width:100%;font:18px var(--sans);padding:14px 16px;border:1px solid var(--rule);background:var(--paper-2);color:var(--ink);border-radius:0}
.search input:focus{outline:2px solid var(--accent);outline-offset:1px}
.empty{color:var(--ink-2);padding-block:24px}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}