diff --git a/src/pages/NewUserGuide/NewUserGuide.css b/src/pages/NewUserGuide/NewUserGuide.css
new file mode 100644
index 0000000..7149447
--- /dev/null
+++ b/src/pages/NewUserGuide/NewUserGuide.css
@@ -0,0 +1,97 @@
+.new-user-guide-page {
+  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+  background-color: #f8f3ef; /* 柔和米棕底色 */
+  min-height: 100vh;
+}
+
+.guide-container {
+  display: flex;
+  padding: 32px;
+  max-width: 1000px;
+  margin: 40px auto;
+  background-color: #fffaf7; /* 粉米背景 */
+  border-radius: 16px;
+  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
+}
+
+.guide-nav {
+  width: 200px;
+  display: flex;
+  flex-direction: column;
+  gap: 16px;
+  padding-right: 24px;
+  border-right: 2px solid #e2cfc3;
+}
+
+.guide-nav button {
+  background: none;
+  border: none;
+  font-size: 17px;
+  text-align: left;
+  padding: 10px 12px;
+  cursor: pointer;
+  border-radius: 8px;
+  transition: background 0.3s, color 0.3s;
+  color: #6b4f3b; /* 米棕文字色 */
+}
+
+.guide-nav button:hover {
+  background-color: #f3ded7; /* 柔和粉色hover */
+  color: #4b3325;
+}
+
+.guide-nav button.active {
+  background-color: #eecfc1; /* 活跃标签背景色 */
+  color: #3c271b;
+  font-weight: 600;
+}
+
+.guide-main {
+  flex: 1;
+  padding-left: 32px;
+}
+
+.guide-content h2 {
+  margin-bottom: 16px;
+  font-size: 24px;
+  color: #4e342e;
+  border-bottom: 2px solid #eecfc1;
+  padding-bottom: 6px;
+}
+
+.guide-content ul,
+.guide-content ol {
+  padding-left: 24px;
+  color: #5d4037;
+  line-height: 1.8;
+  font-size: 16px;
+}
+
+.guide-content li {
+  margin-bottom: 10px;
+}
+
+@media (max-width: 768px) {
+  .guide-container {
+    flex-direction: column;
+    padding: 20px;
+  }
+
+  .guide-nav {
+    width: 100%;
+    flex-direction: row;
+    border-right: none;
+    border-bottom: 2px solid #e2cfc3;
+    gap: 8px;
+    margin-bottom: 20px;
+  }
+
+  .guide-nav button {
+    flex: 1;
+    text-align: center;
+  }
+
+  .guide-main {
+    padding-left: 0;
+  }
+}
diff --git a/src/pages/NewUserGuide/NewUserGuide.jsx b/src/pages/NewUserGuide/NewUserGuide.jsx
new file mode 100644
index 0000000..4c4d634
--- /dev/null
+++ b/src/pages/NewUserGuide/NewUserGuide.jsx
@@ -0,0 +1,85 @@
+import Header from '../../components/Header';
+import React, { useState } from 'react';
+import './NewUserGuide.css';
+
+const NewUserGuide = () => {
+  const [activeTab, setActiveTab] = useState('terms');
+
+  const renderContent = () => {
+    switch (activeTab) {
+      case 'terms':
+        return (
+          <div className="guide-content">
+            <h2>名词解释</h2>
+            <p>在本平台中，我们使用以下术语：</p>
+            <ul>
+              <li><strong>种子：</strong> 表示可下载的资源文件索引信息。</li>
+              <li><strong>做种：</strong> 指上传资源供他人下载。</li>
+              <li><strong>分享率：</strong> 上传流量与下载流量的比值。</li>
+              <li><strong>魔力值：</strong> 用于奖励活跃用户的虚拟积分。</li>
+              {/* 可继续添加名词 */}
+            </ul>
+          </div>
+        );
+      case 'tutorial':
+        return (
+          <div className="guide-content">
+            <h2>详细教程</h2>
+            <ol>
+              <li>注册并完善个人资料</li>
+              <li>浏览并下载感兴趣的种子资源</li>
+              <li>做种、评论、评分获得积分</li>
+              <li>发布你的第一个种子</li>
+              {/* 可继续扩展详细步骤 */}
+            </ol>
+          </div>
+        );
+      case 'tasks':
+        return (
+          <div className="guide-content">
+            <h2>成长任务</h2>
+            <p>完成以下任务可快速熟悉平台并获得奖励：</p>
+            <ul>
+              <li>🎯 浏览任意种子页面</li>
+              <li>🗣️ 在论坛发一条评论</li>
+              <li>📤 上传你的第一个资源</li>
+              <li>🌟 连续登录 3 天</li>
+            </ul>
+          </div>
+        );
+      default:
+        return null;
+    }
+  };
+
+  return (
+    <div className="new-user-guide-page">
+      <Header />
+      <div className="guide-container">
+        <div className="guide-nav">
+          <button
+            className={activeTab === 'terms' ? 'active' : ''}
+            onClick={() => setActiveTab('terms')}
+          >
+            名词解释
+          </button>
+          <button
+            className={activeTab === 'tutorial' ? 'active' : ''}
+            onClick={() => setActiveTab('tutorial')}
+          >
+            详细教程
+          </button>
+          <button
+            className={activeTab === 'tasks' ? 'active' : ''}
+            onClick={() => setActiveTab('tasks')}
+          >
+            成长任务
+          </button>
+        </div>
+        <div className="guide-main">{renderContent()}</div>
+      </div>
+    </div>
+  );
+};
+
+export default NewUserGuide;
