*{box-sizing:border-box}body{font-family:system-ui,'Segoe UI',Meiryo,sans-serif;line-height:1.8;color:#1a1a1a;margin:0;background:#fafafa}
.site-head{background:#111;color:#fff;padding:24px 20px}.brand{color:#fff;font-size:1.3rem;font-weight:700;text-decoration:none}
.tagline{margin:4px 0 0;color:#bbb;font-size:.9rem}main{max-width:720px;margin:0 auto;padding:32px 20px}
h1{font-size:1.7rem;line-height:1.4}h2{margin-top:2em;border-left:5px solid #111;padding-left:.6em}
a{color:#0b66c3}time{color:#888;font-size:.85rem}.tags{margin:.5em 0 1.5em}
.tag{display:inline-block;background:#eee;border-radius:12px;padding:2px 10px;margin-right:6px;font-size:.8rem;color:#555}
.disclosure{font-size:.8rem;color:#999;background:#f4f4f4;padding:8px 12px;border-radius:6px}
.ad{margin:2em 0;padding:8px;text-align:center;color:#bbb;font-size:.8rem}
pre{background:#1a1a1a;color:#eee;padding:14px;border-radius:8px;overflow:auto}code{font-family:Consolas,monospace}
.post-list{list-style:none;padding:0}.post-list li{padding:14px 0;border-bottom:1px solid #eee}
.post-list a{font-size:1.1rem;font-weight:600;text-decoration:none}.post-list time{display:block}
.site-foot{text-align:center;color:#999;padding:30px;font-size:.85rem}
.foot-nav{margin-bottom:10px}.foot-nav a{color:#777;text-decoration:none;font-size:.85rem}
.byline{color:#888;font-size:.85rem;margin:.2em 0 1em}.byline a{color:#666}
.cta{margin:2.5em 0 1em;padding:18px 20px;background:#fff;border:1px solid #e3e3e3;border-radius:10px}
.cta h3{margin-top:0;border:none;padding:0;font-size:1.05rem}
.newsletter{margin:2em 0;padding:22px 20px;background:#111;color:#fff;border-radius:12px}
.newsletter h3{margin-top:0;border:none;padding:0;color:#fff;font-size:1.1rem}
.newsletter p{color:#ccc;font-size:.9rem;margin:.4em 0 1em}
.newsletter form{display:flex;gap:8px;flex-wrap:wrap}
.newsletter input{flex:1;min-width:180px;padding:10px;border:none;border-radius:6px;font-size:1rem}
.newsletter button{padding:10px 18px;border:none;border-radius:6px;background:#1a7f37;color:#fff;font-weight:700;cursor:pointer}