:root{
	--bg:#0a0b12; --surface:rgba(255,255,255,.035); --surface-2:rgba(255,255,255,.06);
	--border:rgba(255,255,255,.09); --border-str:rgba(255,255,255,.16);
	--text:#eaecf5; --muted:#98a1ba; --faint:#6b7490;
	--a1:#7c6cff; --a2:#2ad4ff; --r:18px; --r-sm:12px;
	font-family:"Inter",ui-sans-serif,system-ui,-apple-system,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
	color:var(--text); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
	margin:0; min-width:320px; background:var(--bg); color:var(--text);
	background-image:
		radial-gradient(60rem 40rem at 10% -8%, rgba(124,108,255,.18), transparent 60%),
		radial-gradient(50rem 34rem at 100% 0%, rgba(42,212,255,.12), transparent 55%);
	background-attachment:fixed;
}
a{color:inherit;text-decoration:none}
img{display:block}
.shell{width:min(1120px,calc(100% - 40px));margin:0 auto}

/* Nav */
.nav-wrap{position:sticky;top:0;z-index:15;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:rgba(10,11,18,.55);border-bottom:1px solid var(--border)}
.top-nav{display:flex;align-items:center;justify-content:space-between;height:64px}
.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.01em}
.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,var(--a1),var(--a2));color:#0a0b12;font-weight:900;box-shadow:0 8px 24px rgba(124,108,255,.35)}
.back-btn{padding:9px 16px;border:1px solid var(--border-str);border-radius:999px;background:var(--surface);color:var(--muted);font-size:.88rem;font-weight:600;transition:all .15s}
.back-btn:hover{background:var(--surface-2);color:var(--text)}

/* Layout */
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:34px;align-items:start;padding:clamp(28px,5vh,56px) 0 80px}

/* Article card */
.article-page{border:1px solid var(--border);border-radius:var(--r);background:linear-gradient(180deg,var(--surface-2),var(--surface));padding:clamp(24px,4vw,48px)}
.article-page .eyebrow{margin:0 0 10px;color:var(--a2);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.article-page h1{margin:0 0 16px;font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.08;letter-spacing:-.02em;font-weight:800}
.article-page .lead{margin:0 0 14px;color:var(--muted);font-size:1.12rem;line-height:1.7}
.article-page time{display:block;margin-bottom:8px;color:var(--faint);font-size:.86rem;font-weight:700}
.article-page h2{margin:40px 0 14px;font-size:1.5rem;font-weight:800;letter-spacing:-.01em}
.article-page h3{margin:28px 0 10px;font-size:1.15rem;font-weight:700;color:#cfd6ea}
.article-page p{margin:14px 0;color:#c7cde0;font-size:1.02rem;line-height:1.85;white-space:pre-line}
.article-page hr{height:1px;margin:34px 0;border:0;background:var(--border)}
.article-page blockquote{margin:20px 0;padding:14px 16px;border-left:3px solid var(--a1);border-radius:10px;background:color-mix(in srgb,var(--a1) 12%,transparent);color:#d7dcf0}
.article-page figure{margin:22px 0}
.article-page img{display:block;max-width:100%;max-height:760px;margin:0 auto;border:1px solid var(--border);border-radius:12px;background:#f4f6fb;object-fit:contain}
.inline-link-card{display:grid;gap:6px;margin:18px 0;padding:16px 18px;border:1px solid color-mix(in srgb,var(--a2) 34%,transparent);border-radius:14px;background:color-mix(in srgb,var(--a2) 10%,transparent);transition:transform .15s,border-color .15s}
.inline-link-card:hover{transform:translateY(-2px);border-color:var(--a2)}
.inline-link-card strong{font-size:1.06rem;color:var(--text)}
.inline-link-card span{color:var(--muted);line-height:1.6}

/* Related sidebar */
.related{position:sticky;top:88px;display:grid;gap:10px}
.related h2{margin:0 0 4px;font-size:1.2rem;font-weight:800}
.related a{display:grid;gap:4px;padding:15px 16px;border:1px solid var(--border);border-radius:var(--r-sm);background:var(--surface);transition:all .15s}
.related a:hover{transform:translateY(-2px);border-color:var(--border-str);background:var(--surface-2)}
.related span{color:var(--faint);font-size:.76rem;font-weight:700}
.related strong{font-size:.96rem;font-weight:700;line-height:1.4}

/* Footer */
.footer{border-top:1px solid var(--border)}
.footer-in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding:30px 0;color:var(--faint);font-size:.86rem}

@media(max-width:880px){.article-layout{grid-template-columns:1fr}.related{position:static}}
@media(max-width:560px){.shell{width:calc(100% - 28px)}}
