#read-progress{position:fixed;top:0;left:0;right:0;height:3px;background:#ffffff0d;z-index:50}#read-progress-bar{height:100%;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,var(--accent),var(--gold));box-shadow:0 0 12px #9cb8f580;will-change:transform}.post-head{max-width:760px;padding:84px 0 0}.post-tags{display:flex;flex-wrap:wrap;gap:8px;margin:34px 0 22px;font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.tag-pill{padding:4px 11px;border-radius:30px;border:1px solid rgba(156,184,245,.4);color:var(--accent)}.tag-pill.gold{background:var(--gold);border-color:var(--gold);color:#0c0c1a}.post-title{font-family:var(--mono);font-weight:800;font-size:clamp(34px,6vw,54px);line-height:1.06;letter-spacing:-.02em;color:var(--text-bright);margin:0}.post-meta{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin:28px 0 0;font-family:var(--mono);font-size:13px;letter-spacing:.06em;color:var(--text-dimmer)}.post-meta .dot{opacity:.4}.post-meta .author{color:var(--accent)}.post-divider{height:1px;background:linear-gradient(90deg,#ffffff24,#ffffff05);margin:48px 0 0}.post-grid{display:grid;grid-template-columns:200px minmax(0,720px);gap:60px;padding:54px 0 0;align-items:start}.post-aside{position:sticky;top:46px}.aside-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-faint);margin-bottom:18px}.toc{display:flex;flex-direction:column;gap:2px;border-left:1px solid var(--line)}.toc-link{font-family:var(--mono);font-size:12px;line-height:1.5;letter-spacing:.02em;color:var(--text-dimmer);text-decoration:none;padding:6px 0 6px 16px;margin-left:-1px;border-left:1px solid transparent;transition:color .2s,border-color .2s}.toc-link.sub{padding-left:30px;font-size:11px}.toc-link:hover{color:var(--text)}.toc-link.active{color:var(--accent);border-left-color:var(--accent)}.share-label{margin:34px 0 14px}.share-row{display:flex;gap:9px}.share-row button{cursor:pointer;width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:9px;background:#ffffff0a;border:1px solid rgba(255,255,255,.12);color:#c9d3f4;font-family:var(--mono);font-size:14px;font-weight:700;transition:all .18s}.share-row button:hover{border-color:#9cb8f599;color:#fff;background:#9cb8f51a}.copied{font-family:var(--mono);font-size:11px;color:var(--gold);height:14px;margin-top:10px;opacity:0;transition:opacity .2s}.copied.show{opacity:1}.keep-reading{margin:84px 0 0;padding:46px 0 0;border-top:1px solid var(--line)}.keep-reading .aside-label{letter-spacing:.2em;font-size:12px;margin-bottom:28px}.keep-reading-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.kr-card{display:flex;flex-direction:column;gap:14px;padding:24px;border:1px solid var(--line);border-radius:12px;background:#ffffff05;text-decoration:none;min-height:170px;transition:all .2s}.kr-card:hover{border-color:#9cb8f573;background:#9cb8f50d}.kr-date{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-dimmer)}.kr-title{font-family:var(--mono);font-weight:700;font-size:17px;line-height:1.25;color:#edeff7}.kr-read{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-top:auto}.scroll-top{position:fixed;right:24px;bottom:24px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(156,184,245,.3);background:#0c0c18eb;color:var(--text);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transform:translateY(8px);transition:opacity .3s ease,transform .3s ease,color .2s,border-color .2s;z-index:60}.scroll-top.visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-top:hover{color:var(--gold);border-color:#efe4a680}.scroll-top:focus-visible{outline:1px solid rgba(239,228,166,.7);outline-offset:2px}@media(max-width:900px){.post-grid{grid-template-columns:1fr;gap:0}.post-aside{display:none}.keep-reading-grid{grid-template-columns:1fr}}@media(max-width:768px){.post-head{padding:48px 0 0}.scroll-top{right:16px;bottom:16px;width:40px;height:40px}}
