:root{--bg:#f6f1e7;--ink:#1d2433;--mute:#6b7280;--red:#c8102e;--blue:#12326b;--card:#fffdf8;--line:#e4dccb}
@media(prefers-color-scheme:dark){:root{--bg:#12151c;--ink:#e9e6df;--mute:#9aa1ad;--red:#ef5a6f;--blue:#8fb0ee;--card:#1a1f29;--line:#2a303c}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font:18px/1.65 Georgia,'Times New Roman',serif}
a{color:var(--blue)}a:hover{color:var(--red)}
.wrap{max-width:820px;margin:0 auto;padding:0 20px}
header.top{border-bottom:1px solid var(--line)}
header.top .wrap{display:flex;justify-content:space-between;align-items:center;padding-top:18px;padding-bottom:18px;flex-wrap:wrap;gap:10px}
.logo{font-weight:700;text-decoration:none;color:var(--ink);letter-spacing:.02em}
.logo b{color:var(--red)}
nav a{margin-left:18px;text-decoration:none;font:15px/1 system-ui,sans-serif;color:var(--mute)}
nav a:first-child{margin-left:0}
.hero{padding:56px 0 28px}
.hero h1{font-size:clamp(34px,6vw,58px);line-height:1.08;margin:0 0 14px;letter-spacing:-.01em}
.hero h1 em{color:var(--red);font-style:italic}
.hero p{color:var(--mute);max-width:560px;margin:0}
.skyline{display:block;width:100%;height:auto;margin:26px 0 0;color:var(--ink)}
.meter{display:flex;gap:14px;flex-wrap:wrap;margin:34px 0}
.meter div{flex:1 1 150px;background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.meter strong{display:block;font:700 28px/1.1 system-ui,sans-serif;color:var(--blue)}
.meter span{font:14px/1.3 system-ui,sans-serif;color:var(--mute)}
h2{font-size:26px;margin:46px 0 14px}
.posts{list-style:none;padding:0;margin:0}
.posts li{border-top:1px solid var(--line);padding:20px 0}
.posts time,.meta{font:13px/1 system-ui,sans-serif;color:var(--mute);text-transform:uppercase;letter-spacing:.08em}
.posts h3{margin:8px 0 6px;font-size:23px}
.posts h3 a{text-decoration:none;color:var(--ink)}
.posts h3 a:hover{color:var(--red)}
.posts p{margin:0;color:var(--mute)}
article{padding:44px 0 10px}
article h1{font-size:clamp(30px,5vw,44px);line-height:1.12;margin:10px 0 22px}
article blockquote{margin:24px 0;padding:6px 20px;border-left:4px solid var(--red);font-style:italic}
.words{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:6px 20px;margin:28px 0}
.words dt{font-weight:700;margin-top:12px}.words dd{margin:0 0 12px;color:var(--mute)}
footer{border-top:1px solid var(--line);margin-top:60px;padding:26px 0 40px;font:14px/1.5 system-ui,sans-serif;color:var(--mute)}
