:root{--bg:#fbfaf6;--fg:#222;--sub:#666;--line:#e3dfd3;--accent:#2f5d3a;--ad:#fff7e0}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI",Meiryo,sans-serif;line-height:1.85;font-size:17px}
header.site,main,footer.site{max-width:760px;margin:0 auto;padding:0 16px}
header.site{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding-top:18px;padding-bottom:10px;border-bottom:2px solid var(--accent)}
.logo{font-weight:700;font-size:1.25rem;color:var(--accent);text-decoration:none}
.tag{color:var(--sub);font-size:.85rem}
main{padding-top:8px;padding-bottom:40px}
h1{font-size:1.5rem;line-height:1.5;margin:24px 0 8px}
h2{font-size:1.25rem;margin-top:40px;padding-left:10px;border-left:5px solid var(--accent)}
h3{font-size:1.08rem;margin-top:28px}
a{color:#1d5fa8}
.dates{color:var(--sub);font-size:.85rem;margin-top:0}
.ad{background:var(--ad);border:1px solid #ecd9a0;padding:10px 12px;font-size:.88rem;border-radius:6px;margin-top:18px}
.table{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:16px 0}
table{border-collapse:collapse;min-width:100%;font-size:.92rem}
th,td{border:1px solid var(--line);padding:6px 9px;text-align:left;white-space:nowrap}
th{background:#f0ede3}
ul.posts{list-style:none;padding:0}
ul.posts li{padding:10px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}
ul.posts .date{color:var(--sub);font-size:.85rem}
blockquote{margin:16px 0;padding:8px 14px;border-left:4px solid var(--line);color:#444;background:#f6f4ee}
footer.site{border-top:1px solid var(--line);padding-top:16px;padding-bottom:30px;color:var(--sub);font-size:.85rem}
footer.site nav{display:flex;gap:16px;flex-wrap:wrap}
footer.site nav a{color:var(--sub)}
