:root{--ink:#302a29;--muted:#887c77;--line:#f1e5df;--paper:#fffdfb;--peach:#fff0e8;--accent:#f7775b}*{box-sizing:border-box}body{margin:0;background:#fffaf7;color:var(--ink);font:16px/1.7 ui-sans-serif,system-ui,"Microsoft YaHei",sans-serif}header{height:74px;padding:0 max(28px,calc((100% - 1080px)/2));display:flex;align-items:center;justify-content:space-between;background:#fffdfbd9;backdrop-filter:blur(10px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:2}.brand{font-size:22px;font-weight:800;color:var(--ink);text-decoration:none}.brand:first-letter{color:var(--accent)}nav{display:flex;gap:22px}nav a{color:var(--muted);text-decoration:none;font-size:14px}nav a:hover{color:var(--accent)}main{max-width:1080px;margin:auto;padding:72px 28px 90px}.hero{padding:46px 52px;background:linear-gradient(120deg,#fff1e8,#fffaf6 75%);border-radius:28px;margin-bottom:46px}.eyebrow{margin:0 0 5px;color:#d98470;letter-spacing:.13em;font-size:12px;font-weight:800}.hero h1{font-size:42px;line-height:1.2;margin:0}.hero p:last-child{margin:12px 0 0;color:var(--muted)}.posts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.post{padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--paper);transition:.2s}.post:hover{transform:translateY(-3px);box-shadow:0 15px 34px #d9a99920}.post h2{font-size:23px;line-height:1.35;margin:9px 0}.post h2 a{color:inherit;text-decoration:none}.post p{color:var(--muted);margin:0}.meta{font-size:13px;color:#b39990}.tag{display:inline-block;margin:17px 6px 0 0;padding:3px 10px;border-radius:999px;background:var(--peach);color:#b96958;font-size:12px}.empty,.loading{grid-column:1/-1;text-align:center;color:var(--muted);padding:40px}.article{max-width:760px;margin:auto}.article .back{color:#bd6b59;text-decoration:none;font-size:14px}.article h1{font-size:40px;line-height:1.3;margin:26px 0 8px}.article .body{white-space:pre-wrap;margin-top:36px;font-size:17px;line-height:2;color:#493f3c}.article .tags{margin-top:15px}footer{text-align:center;color:#b9a9a2;padding:34px;border-top:1px solid var(--line);font-size:13px}@media(max-width:640px){header{padding:0 18px}main{padding:35px 18px 60px}.hero{padding:32px 25px;border-radius:20px}.hero h1{font-size:34px}.posts{grid-template-columns:1fr}.article h1{font-size:31px}nav{gap:12px}}
