:root{--bg:#f5f4f0;--card:#fff;--ink:#1c1c1e;--muted:#6b6b70;--line:#e3e1da;--accent:#0b6e4f;--accent-soft:#e7f1ec}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Pretendard","Apple SD Gothic Neo","Malgun Gothic","Segoe UI",sans-serif;line-height:1.7;font-size:17px}
a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}
.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;background:rgba(245,244,240,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:12px 20px}
.topbar .home{font-weight:600}.topbar .crumb{color:var(--muted);font-size:14px}
.post{max-width:760px;margin:24px auto;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:40px 46px}
.post-title{font-size:28px;line-height:1.35;margin:0 0 10px;font-weight:700}
.post-meta{color:var(--muted);font-size:14px;margin-bottom:28px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.post-meta .cat{color:var(--accent)}
.post-body{word-break:break-word}
.post-body img{max-width:100%;height:auto;border-radius:8px;margin:10px 0;display:block}
.post-body a{word-break:break-all}.post-body table{max-width:100%;border-collapse:collapse}
.post-body iframe,.post-body video{max-width:100%}
.se-main-container{font-size:17px}.post-body p{margin:0 0 4px}.se-text-paragraph{margin:0}.se-module-text{margin:6px 0}
.pager{max-width:760px;margin:0 auto 30px;display:flex;justify-content:space-between;gap:12px}
.pager .pg{flex:1;padding:14px 18px;background:var(--card);border:1px solid var(--line);border-radius:12px;color:var(--ink);font-size:14px}
.pager .pg-next{text-align:right}.pager .pg:hover{border-color:var(--accent);text-decoration:none}
.foot{max-width:760px;margin:0 auto 60px;color:var(--muted);font-size:13px;text-align:center}
.index-head{max-width:900px;margin:40px auto 10px;padding:0 20px}.index-head h1{font-size:30px;margin:0 0 6px}.index-head .sub{color:var(--muted)}
.controls{max-width:900px;margin:18px auto;padding:0 20px;display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.controls input[type=search]{flex:1;min-width:220px;padding:11px 14px;font-size:15px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.controls select{padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);font-size:15px}
.count{max-width:900px;margin:0 auto;padding:0 20px;color:var(--muted);font-size:13px}
.list{max-width:900px;margin:14px auto 80px;padding:0 20px}
.month-group{margin-top:26px}.month-group h2{font-size:15px;color:var(--muted);font-weight:600;letter-spacing:.02em;border-bottom:1px solid var(--line);padding-bottom:8px;margin:0 0 6px}
.row{display:flex;align-items:baseline;gap:14px;padding:11px 8px;border-radius:8px}.row:hover{background:var(--accent-soft)}
.row a{flex:1;color:var(--ink);font-size:17px}.row a:hover{color:var(--accent);text-decoration:none}
.row .rdate{color:var(--muted);font-size:13px;white-space:nowrap}
.row .rcat{font-size:12px;color:var(--accent);background:var(--accent-soft);padding:2px 8px;border-radius:999px;white-space:nowrap}
.hidden{display:none}
.img-missing{display:inline-block;margin:10px 0;padding:10px 14px;font-size:13px;color:var(--muted);background:#efeee9;border:1px dashed var(--line);border-radius:8px}
.comments{max-width:760px;margin:0 auto 30px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px 32px}
.cmt-h{font-size:18px;margin:0 0 16px}.cmt-h span{color:var(--accent)}
.cmt-list,.cmt-replies{list-style:none;margin:0;padding:0}
.cmt{padding:14px 0;border-top:1px solid var(--line)}
.cmt-list>.cmt:first-child{border-top:none}
.cmt-head{display:flex;gap:10px;align-items:baseline;margin-bottom:5px}
.cmt-nick{font-size:14px}.cmt-date{color:var(--muted);font-size:12px}
.cmt-body{font-size:15px;line-height:1.6;color:#2a2a2c;word-break:break-word}
.cmt-body em{color:var(--muted);font-style:normal}
.cmt-to{color:var(--accent);font-weight:600;margin-right:4px}
.cmt-tag{color:var(--muted);font-size:12px}
.cmt-replies{margin:10px 0 0;padding:6px 0 0 18px;border-left:2px solid var(--accent-soft)}
.cmt-replies .cmt{padding:10px 0;border-top:1px dashed var(--line)}
.cmt-replies .cmt:first-child{border-top:none}
.cmt-none{color:var(--muted);font-size:14px}
.row a{min-width:0;word-break:keep-all;overflow-wrap:anywhere}
.row .rcat{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.post-title{word-break:keep-all;overflow-wrap:anywhere}
@media (max-width:640px){.post{padding:26px 20px;margin:14px;border-radius:12px}.post-title{font-size:23px}body{font-size:16px}.comments{padding:20px;margin:0 14px 20px}
.topbar{padding:10px 14px}.pager{margin:0 14px 24px}.foot{padding:0 14px}
.index-head{margin-top:26px;padding:0 16px}.index-head h1{font-size:24px;line-height:1.3}
.controls{padding:0 16px}.controls input[type=search],.controls select{flex:1 1 100%;width:100%;min-width:0;max-width:100%}
.count{padding:0 16px}.list{padding:0 16px;margin-bottom:50px}
.row{flex-wrap:wrap;gap:6px 8px;padding:13px 2px;border-radius:0;border-bottom:1px solid var(--line)}
.row a{flex:1 1 100%;font-size:16px;line-height:1.5}
.row .rdate{margin-left:auto}}
