/* ═══════════════════════════════════════════════════════════════
   远骁GEO 全局样式 — 从首页提取
   版本：v3.0 (首页完整样式)
   ═══════════════════════════════════════════════════════════════ */

:root {
  --brand-50:  #F5F3FF;  --brand-100: #EDE9FE;  --brand-200: #DDD6FE;
  --brand-300: #C4B5FD;  --brand-400: #A78BFA;  --brand-500: #8B5CF6;
  --brand-600: #7C3AED;  --brand-700: #6D28D9;  --brand-800: #5B21B6;
  --brand-900: #4C1D95;
  --success-50:  #ECFDF5;  --success-500: #10B981;  --success-600: #059669;  --success-700: #047857;
  --warning-50:  #FFFBEB;  --warning-500: #F59E0B;  --warning-600: #D97706;
  --danger-50:   #FEF2F2;  --danger-500:  #EF4444;  --danger-600:  #DC2626;
  --gray-0:   #FAFAF9;  --gray-50:  #F5F5F4;  --gray-100: #E7E5E4;
  --gray-200: #D6D3D1;  --gray-300: #A8A29E;  --gray-400: #78716C;
  --gray-500: #57534E;  --gray-600: #44403C;  --gray-700: #292524;
  --gray-800: #1C1917;  --gray-900: #0C0A09;
  --space-1: 4px;   --space-2: 8px;   --space-3: 12px;
  --space-4: 16px;  --space-5: 20px;  --space-6: 24px;
  --space-8: 32px;  --space-10: 40px; --space-12: 48px;
  --space-16: 64px; --space-20: 80px; --space-24: 96px;
  --radius-sm: 6px;   --radius-md: 8px;   --radius-lg: 12px;
  --radius-xl: 16px;  --radius-2xl: 20px; --radius-full: 9999px;
  --shadow-sm: 0 1px 3px rgba(12,10,9,0.06), 0 1px 2px rgba(12,10,9,0.04);
  --shadow-md: 0 4px 6px -1px rgba(12,10,9,0.06), 0 2px 4px -2px rgba(12,10,9,0.04);
  --shadow-lg: 0 10px 15px -3px rgba(12,10,9,0.06), 0 4px 6px -4px rgba(12,10,9,0.04);
  --shadow-xl: 0 20px 25px -5px rgba(12,10,9,0.06), 0 8px 10px -6px rgba(12,10,9,0.04);
  --shadow-2xl: 0 25px 50px -12px rgba(12,10,9,0.12);
  --font-sans: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'PingFang SC', 'Hiragino Sans GB', 'Microsoft YaHei', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  --text-xs: 12px;  --text-sm: 14px;  --text-base: 16px;  --text-lg: 18px;
  --text-xl: 20px;  --text-2xl: 24px;  --text-3xl: 30px;  --text-4xl: 36px;
  --font-normal:400; --font-medium:500; --font-semibold:600; --font-bold:700; --font-extrabold:800;
  --leading-tight:1.25; --leading-normal:1.5; --leading-relaxed:1.625;
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --transition-fast:150ms var(--ease-out);
  --transition-base:250ms var(--ease-out);
  --transition-slow:400ms var(--ease-out);
  --container-max: 1200px;
  --container-padding: var(--space-6);
  --nav-height: 68px;
  --z-nav: 300; --z-modal: 400;
  
}

*, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
body { font-family:var(--font-sans); color:var(--gray-900); background:var(--gray-0); line-height:var(--leading-normal); font-size:var(--text-sm); }
::selection { background:var(--brand-100); color:var(--brand-900); }
a { text-decoration:none; color:inherit; }
button { font-family:inherit; cursor:pointer; border:none; background:none; }
ul { list-style:none; }
*:focus-visible { outline:3px solid var(--brand-500); outline-offset:2px; border-radius:var(--radius-sm); }
::-webkit-scrollbar { width:6px; height:6px; }
::-webkit-scrollbar-track { background:var(--gray-50); }
::-webkit-scrollbar-thumb { background:var(--gray-200); border-radius:var(--radius-full); }

/* ── 导航 ── */
.nav { position:fixed; top:0; left:0; right:0; z-index:var(--z-nav); background:rgba(250,250,249,0.72); backdrop-filter:blur(16px) saturate(180%); border-bottom:1px solid var(--gray-200); height:var(--nav-height); transition:box-shadow var(--transition-base), background var(--transition-base); }
.nav--scrolled { box-shadow:var(--shadow-sm); background:rgba(250,250,249,0.88); }
.nav__inner { max-width:var(--container-max); margin:0 auto; padding:0 var(--space-6); display:flex; align-items:center; justify-content:space-between; height:100%; }
.nav__brand { display:flex; align-items:center; gap:var(--space-3); font-weight:var(--font-extrabold); font-size:var(--text-lg); letter-spacing:-0.02em; color:var(--gray-900); }
.nav__brand-icon { width:34px; height:34px; border-radius:var(--radius-md); background:var(--brand-600); display:flex; align-items:center; justify-content:center; color:#fff; font-size:14px; font-weight:var(--font-extrabold); box-shadow:var(--shadow-sm); transition:transform var(--transition-spring), box-shadow var(--transition-base); }
.nav__brand:hover .nav__brand-icon { transform:scale(1.08) rotate(-4deg); box-shadow:var(--shadow-md); }
.nav__brand span { color:var(--brand-600); }
.nav__links { display:flex; align-items:center; gap:var(--space-8); }
.nav__link { color:var(--gray-500); font-size:var(--text-sm); font-weight:var(--font-medium); transition:color var(--transition-fast); position:relative; padding:var(--space-1) 0; }
.nav__link::after { content:''; position:absolute; bottom:-2px; left:0; width:0; height:1.5px; background:var(--brand-600); border-radius:var(--radius-full); transition:width var(--transition-spring); }
.nav__link:hover { color:var(--gray-900); }
.nav__link:hover::after { width:100%; }
.nav__link--active { color:var(--brand-600); }
.nav__link--active::after { width:100%; }
.nav__cta { display:flex; align-items:center; gap:var(--space-4); }
.nav__mobile-btn { display:none; font-size:var(--text-xl); color:var(--gray-700); padding:var(--space-2); }

/* ── 按钮 ── */
.btn { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-2); padding:10px 20px; border-radius:var(--radius-lg); font-size:var(--text-sm); font-weight:var(--font-semibold); text-decoration:none; cursor:pointer; border:none; outline:none; white-space:nowrap; transition:all var(--transition-base); }
.btn--primary { background:var(--brand-600); color:#fff; box-shadow:var(--shadow-sm); }
.btn--primary:hover { background:var(--brand-700); box-shadow:var(--shadow-md); transform:translateY(-1px); }
.btn--ghost { background:transparent; color:var(--gray-700); border:1px solid var(--gray-200); }
.btn--ghost:hover { border-color:var(--gray-300); color:var(--gray-900); background:var(--gray-50); }
.btn--full { width:100%; }

/* ── 帮助中心布局 ── */
.help-wrap { max-width:var(--container-max); margin:0 auto; padding:calc(var(--nav-height) + var(--space-6)) var(--space-6) var(--space-16); display:flex; gap:var(--space-8); min-height:100vh; }

/* ── 侧边栏 ── */
.sidebar { width:240px; flex-shrink:0; padding:var(--space-4) 0 var(--space-16); position:sticky; top:calc(var(--nav-height) + var(--space-4)); height:calc(100vh - var(--nav-height) - var(--space-8)); overflow-y:auto; }
.sidebar__search { position:relative; margin-bottom:var(--space-5); }
.sidebar__search-input { width:100%; padding:9px 12px 9px 36px; border:1.5px solid var(--gray-200); border-radius:var(--radius-lg); background:var(--gray-0); font-size:var(--text-sm); font-family:inherit; color:var(--gray-900); outline:none; transition:all var(--transition-base); }
.sidebar__search-input:focus { border-color:var(--brand-300); box-shadow:0 0 0 3px rgba(139,92,246,0.08); }
.sidebar__search-icon { position:absolute; left:12px; top:50%; transform:translateY(-50%); color:var(--gray-400); font-size:12px; }

/* ── 侧边栏清除按钮 ── */
.sidebar__search-clear { position:absolute; right:10px; top:50%; transform:translateY(-50%); background:none; border:none; color:var(--gray-400); font-size:14px; cursor:pointer; display:none; padding:4px 6px; border-radius:4px; z-index:5; transition:background 0.15s, color 0.15s; }
.sidebar__search-clear:hover { background:var(--gray-100); color:var(--gray-600); }

.nav-group { margin-bottom:var(--space-1); }
.nav-group__header { display:flex; align-items:center; justify-content:space-between; padding:var(--space-2) var(--space-3); cursor:pointer; border-radius:var(--radius-md); transition:background var(--transition-fast); user-select:none; }
.nav-group__header:hover { background:var(--gray-50); }
.nav-group__header-left { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-sm); font-weight:var(--font-semibold); color:var(--gray-700); }
.nav-group__header-left i { color:var(--gray-400); font-size:12px; width:16px; text-align:center; }
.nav-group__toggle { color:var(--gray-400); font-size:9px; transition:transform var(--transition-base); width:18px; height:18px; display:flex; align-items:center; justify-content:center; }
.nav-group--open .nav-group__toggle { transform:rotate(90deg); color:var(--brand-600); }
.nav-group__items { max-height:0; overflow:hidden; transition:max-height 0.4s var(--ease-out); }
.nav-group--open .nav-group__items { max-height:1200px; }

.nav-item { display:block; padding:var(--space-1) var(--space-3) var(--space-1) 36px; font-size:var(--text-xs); color:var(--gray-500); border-radius:var(--radius-md); transition:all var(--transition-fast); cursor:pointer; line-height:var(--leading-tight); margin:1px 0; }
.nav-item:hover { color:var(--gray-900); background:var(--gray-50); }
.nav-item.active { color:var(--brand-600); background:var(--brand-50); font-weight:var(--font-semibold); }

.sidebar__footer { margin-top:var(--space-8); padding-top:var(--space-4); border-top:1px solid var(--gray-200); }
.sidebar__footer-link { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-xs); color:var(--gray-400); padding:var(--space-1) 0; transition:color var(--transition-fast); }
.sidebar__footer-link:hover { color:var(--brand-600); }

.sidebar-overlay { display:none; position:fixed; inset:0; background:rgba(12,10,9,0.35); z-index:249; backdrop-filter:blur(3px); }
.sidebar-overlay.active { display:block; }

/* ── 主内容 ── */
.main { flex:1; min-width:0; padding:var(--space-4) 0 var(--space-16); }

.breadcrumb { display:flex; align-items:center; gap:var(--space-2); margin-bottom:var(--space-5); font-size:var(--text-xs); color:var(--gray-400); }
.breadcrumb a { color:var(--gray-400); transition:color var(--transition-fast); }
.breadcrumb a:hover { color:var(--brand-600); }
.breadcrumb__sep { color:var(--gray-300); font-size:8px; }
.breadcrumb__current { color:var(--gray-600); font-weight:var(--font-medium); }

/* ── 文章内容 ── */
.article__header { margin-bottom:var(--space-6); padding-bottom:var(--space-6); border-bottom:1px solid var(--gray-200); }
.article__label { display:inline-flex; align-items:center; gap:var(--space-2); padding:3px 10px; border-radius:var(--radius-sm); font-size:var(--text-xs); font-weight:var(--font-semibold); background:var(--brand-50); color:var(--brand-600); border:1px solid var(--brand-100); margin-bottom:var(--space-3); }
.article__title { font-size:var(--text-3xl); font-weight:var(--font-extrabold); color:var(--gray-900); line-height:var(--leading-tight); letter-spacing:-0.02em; margin-bottom:var(--space-3); }
.article__meta { display:flex; align-items:center; gap:var(--space-5); font-size:var(--text-xs); color:var(--gray-400); flex-wrap:wrap; }
.article__meta-item { display:flex; align-items:center; gap:var(--space-2); }
.article__body { font-size:var(--text-sm); color:var(--gray-600); line-height:var(--leading-relaxed); }
.article__body > * + * { margin-top:var(--space-6); }

.article__intro { background:var(--brand-50); border:1px solid var(--brand-100); border-radius:var(--radius-xl); padding:var(--space-5) var(--space-6); font-size:var(--text-sm); color:var(--gray-700); line-height:var(--leading-relaxed); }
.article__intro-title { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--brand-700); margin-bottom:var(--space-2); }

.article__section { margin-top:var(--space-8); }
.article__section-title { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-900); margin-bottom:var(--space-4); display:flex; align-items:center; gap:var(--space-2); padding-bottom:var(--space-2); border-bottom:1px solid var(--gray-200); }
.article__section-title i { color:var(--brand-600); font-size:14px; }

.feature-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:var(--space-4); }
.feature-card { background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-xl); padding:var(--space-5); transition:all var(--transition-base); }
.feature-card:hover { border-color:var(--brand-200); box-shadow:var(--shadow-md); transform:translateY(-2px); }
.feature-card__header { display:flex; align-items:center; gap:var(--space-3); margin-bottom:var(--space-3); }
.feature-card__icon { width:36px; height:36px; border-radius:var(--radius-md); background:var(--brand-50); display:flex; align-items:center; justify-content:center; color:var(--brand-600); font-size:14px; flex-shrink:0; }
.feature-card__title { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-900); }
.feature-card__desc { font-size:var(--text-xs); color:var(--gray-500); line-height:var(--leading-relaxed); }
.feature-card__img { width:100%; border-radius:var(--radius-md); margin-top:var(--space-3); border:1px solid var(--gray-100); background:linear-gradient(135deg,var(--gray-50),var(--gray-100)); aspect-ratio:16/9; display:flex; align-items:center; justify-content:center; color:var(--gray-300); font-size:var(--text-xs); overflow:hidden; min-height:140px; }
.feature-card__img i { font-size:28px; }

.step { display:flex; gap:var(--space-3); padding:var(--space-4) 0; border-bottom:1px solid var(--gray-100); }
.step:last-child { border-bottom:none; }
.step__num { width:28px; height:28px; border-radius:50%; background:var(--brand-600); color:#fff; display:flex; align-items:center; justify-content:center; font-size:var(--text-xs); font-weight:var(--font-bold); flex-shrink:0; margin-top:2px; }
.step__content { flex:1; }
.step__title { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-900); margin-bottom:var(--space-1); }
.step__desc { font-size:var(--text-xs); color:var(--gray-500); line-height:var(--leading-relaxed); margin-bottom:var(--space-2); }
.step__tip { display:flex; align-items:flex-start; gap:var(--space-2); padding:var(--space-2) var(--space-3); background:var(--warning-50); border-radius:var(--radius-md); font-size:var(--text-xs); color:var(--warning-600); font-weight:var(--font-medium); line-height:var(--leading-relaxed); }

.help-table { width:100%; border-collapse:collapse; margin:var(--space-3) 0; font-size:var(--text-xs); border:1px solid var(--gray-200); border-radius:var(--radius-lg); overflow:hidden; }
.help-table th { background:var(--gray-800); color:var(--gray-0); padding:var(--space-2) var(--space-3); text-align:left; font-weight:var(--font-semibold); font-size:var(--text-xs); }
.help-table td { padding:var(--space-2) var(--space-3); border-bottom:1px solid var(--gray-100); color:var(--gray-700); }
.help-table tr:nth-child(even) { background:var(--gray-50); }
.help-table tr:last-child td { border-bottom:none; }

.info-box { display:flex; gap:var(--space-3); padding:var(--space-4) var(--space-5); border-radius:var(--radius-xl); margin:var(--space-5) 0; }
.info-box--tip { background:var(--success-50); border:1px solid rgba(16,185,129,0.12); }
.info-box--warn { background:var(--warning-50); border:1px solid rgba(245,158,11,0.12); }
.info-box--note { background:var(--brand-50); border:1px solid var(--brand-100); }
.info-box__icon { font-size:16px; flex-shrink:0; margin-top:2px; }
.info-box__content { flex:1; }
.info-box__title { font-size:var(--text-sm); font-weight:var(--font-bold); margin-bottom:2px; }
.info-box__text { font-size:var(--text-xs); color:var(--gray-600); line-height:var(--leading-relaxed); }

.support-card { background:var(--gray-800); border-radius:var(--radius-2xl); padding:var(--space-6); margin-top:var(--space-10); position:relative; overflow:hidden; }
.support-card::before { content:''; position:absolute; top:-30px; right:-30px; width:100px; height:100px; border-radius:50%; background:var(--brand-600); opacity:0.12; filter:blur(30px); }
.support-card__title { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-0); margin-bottom:var(--space-2); position:relative; z-index:1; }
.support-card__desc { font-size:var(--text-sm); color:var(--gray-400); line-height:var(--leading-relaxed); margin-bottom:var(--space-5); position:relative; z-index:1; }
.support-card__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--space-3); position:relative; z-index:1; }
.support-card__item { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.06); border-radius:var(--radius-lg); padding:var(--space-4); text-decoration:none; transition:all var(--transition-base); display:flex; flex-direction:column; align-items:flex-start; gap:var(--space-2); }
.support-card__item:hover { background:rgba(255,255,255,0.07); border-color:rgba(255,255,255,0.12); transform:translateY(-2px); }
.support-card__item-icon { width:36px; height:36px; border-radius:var(--radius-md); background:var(--brand-600); display:flex; align-items:center; justify-content:center; color:#fff; font-size:14px; }
.support-card__item-title { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-0); }
.support-card__item-desc { font-size:var(--text-xs); color:var(--gray-500); line-height:var(--leading-relaxed); }

.loading-spinner { display:flex; flex-direction:column; align-items:center; justify-content:center; padding:60px 20px; }
.spinner { width:36px; height:36px; border:3px solid var(--gray-200); border-top-color:var(--brand-600); border-radius:50%; animation:spin 0.8s linear infinite; }
.loading-text { margin-top:12px; font-size:var(--text-sm); color:var(--gray-400); }
@keyframes spin { to { transform:rotate(360deg); } }

.global-toast { position:fixed; bottom:32px; left:50%; transform:translateX(-50%) translateY(80px); background:var(--gray-900); color:#fff; padding:12px 24px; border-radius:var(--radius-lg); font-size:var(--text-sm); font-weight:var(--font-medium); box-shadow:var(--shadow-2xl); opacity:0; visibility:hidden; transition:all var(--transition-base); z-index:500; max-width:90%; }
.global-toast.show { opacity:1; visibility:visible; transform:translateX(-50%) translateY(0); }

.back-to-top { position:fixed; bottom:32px; right:32px; z-index:450; width:44px; height:44px; border-radius:50%; background:var(--brand-600); color:#fff; border:none; cursor:pointer; box-shadow:var(--shadow-lg); opacity:0; visibility:hidden; transform:translateY(16px) scale(0.9); transition:all var(--transition-base); display:flex; align-items:center; justify-content:center; font-size:18px; }
.back-to-top:hover { background:var(--brand-700); transform:translateY(-2px) scale(1.05); box-shadow:var(--shadow-xl); }
.back-to-top.visible { opacity:1; visibility:visible; transform:translateY(0) scale(1); }
@media (max-width:768px) { .back-to-top { bottom:20px; right:20px; width:40px; height:40px; font-size:16px; } }

.mobile-menu-overlay { display:none; position:fixed; inset:0; background:rgba(12,10,9,0.6); backdrop-filter:blur(8px); z-index:350; opacity:0; transition:opacity var(--transition-base); }
.mobile-menu-overlay.active { display:block; opacity:1; }
.mobile-menu-panel { position:fixed; top:0; right:0; width:280px; height:100%; background:var(--gray-0); padding:var(--space-6); transform:translateX(100%); transition:transform 400ms var(--ease-out); z-index:360; box-shadow:var(--shadow-2xl); overflow-y:auto; }
.mobile-menu-overlay.active .mobile-menu-panel { transform:translateX(0); }
.mobile-menu__close { position:absolute; top:var(--space-4); right:var(--space-4); font-size:var(--text-xl); color:var(--gray-500); width:40px; height:40px; border-radius:var(--radius-lg); transition:background var(--transition-fast); }
.mobile-menu__close:hover { background:var(--gray-50); }
.mobile-menu__links { display:flex; flex-direction:column; gap:var(--space-4); margin-top:var(--space-10); }
.mobile-menu__links a { font-size:var(--text-lg); font-weight:var(--font-semibold); color:var(--gray-900); padding:var(--space-3) 0; border-bottom:1px solid var(--gray-100); }
.mobile-menu__cta { margin-top:var(--space-8); }
.mobile-menu__cta .btn { width:100%; }

/* ── 响应式 ── */
@media (max-width:1024px) {
  .help-wrap { padding:calc(var(--nav-height) + var(--space-4)) var(--space-4) var(--space-8); }
  .sidebar { display:none; }
  .sidebar.active { display:block; position:fixed; top:var(--nav-height); left:0; bottom:0; z-index:250; background:var(--gray-0); width:280px; padding:var(--space-4); box-shadow:var(--shadow-lg); overflow-y:auto; }
  .sidebar-overlay.active { display:block; }
  .nav__links, .nav__cta { display:none; }
  .nav__mobile-btn { display:block; }
  .feature-grid { grid-template-columns:1fr; }
  .support-card__grid { grid-template-columns:1fr; }
  .article__title { font-size:var(--text-2xl); }
}

@media (max-width:768px) {
  .help-wrap { padding:calc(var(--nav-height) + var(--space-3)) var(--space-3) var(--space-6); }
  .article__title { font-size:var(--text-xl); }
  .article__section-title { font-size:var(--text-lg); }
  .support-card { padding:var(--space-5); }
  .help-table { font-size:11px; }
  .help-table th, .help-table td { padding:var(--space-1) var(--space-2); }
}

@media (min-width:1400px) {
  :root { --container-max: 1280px; }
  .article__title { font-size:var(--text-4xl); }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:0.01ms !important; transition-duration:0.01ms !important; }
}

/* ═══════════════════════════════════════════════════════════════
   首页专属样式（Landing Page）
   ═══════════════════════════════════════════════════════════════ */

/* ── 容器辅助 ── */
.container { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); }

/* ── Section Header ── */
.section__header { text-align:center; margin-bottom:var(--space-12); max-width:640px; margin-left:auto; margin-right:auto; }
.section__label { display:inline-flex; align-items:center; gap:var(--space-2); padding:var(--space-2) var(--space-4); border-radius:var(--radius-full); font-size:var(--text-xs); font-weight:var(--font-semibold); margin-bottom:var(--space-4); }
.section__label--brand { background:var(--brand-50); border:1px solid var(--brand-100); color:var(--brand-600); }
.section__label--danger { background:var(--danger-50); border:1px solid var(--danger-100); color:var(--danger-500); }
.section__label--success { background:var(--success-50); border:1px solid var(--success-100); color:var(--success-600); }
.section__label--warning { background:var(--warning-50); border:1px solid var(--warning-100); color:var(--warning-600); }
.section__title { font-size:var(--text-4xl); font-weight:var(--font-extrabold); color:var(--gray-900); line-height:var(--leading-tight); margin-bottom:var(--space-4); letter-spacing:-0.02em; }
.section__desc { font-size:var(--text-lg); color:var(--gray-500); line-height:var(--leading-relaxed); }

/* ── Hero ── */
.hero { position:relative; min-height:100vh; display:flex; align-items:center; padding-top:var(--nav-height); overflow:hidden; background:var(--gray-0); }
.hero__bg { position:absolute; inset:0; pointer-events:none; overflow:hidden; }
.hero__bg-grid { position:absolute; inset:0; background-image:linear-gradient(var(--gray-200) 1px, transparent 1px), linear-gradient(90deg, var(--gray-200) 1px, transparent 1px); background-size:80px 80px; mask-image:radial-gradient(ellipse 60% 50% at 50% 50%, black 40%, transparent 70%); -webkit-mask-image:radial-gradient(ellipse 60% 50% at 50% 50%, black 40%, transparent 70%); opacity:0.5; }
.hero__bg-glow { position:absolute; width:600px; height:600px; border-radius:50%; filter:blur(120px); opacity:0.35; }
.hero__bg-glow--1 { background:var(--brand-300); top:-200px; right:-150px; }
.hero__bg-glow--2 { background:var(--brand-200); bottom:-250px; left:-200px; opacity:0.25; }
.hero__inner { max-width:var(--container-max); margin:0 auto; padding:0 var(--container-padding); position:relative; z-index:1; display:grid; grid-template-columns:1fr 1.1fr; gap:var(--space-16); align-items:center; min-height:calc(100vh - var(--nav-height)); }
.hero__badge { display:inline-flex; align-items:center; gap:var(--space-2); padding:var(--space-2) var(--space-4); background:var(--success-50); border:1px solid rgba(16,185,129,0.15); border-radius:var(--radius-full); font-size:var(--text-xs); font-weight:var(--font-semibold); color:var(--success-600); margin-bottom:var(--space-6); }
.hero__badge i { font-size:10px; }
.hero__title { font-size:var(--text-5xl); font-weight:var(--font-extrabold); line-height:var(--leading-tight); letter-spacing:-0.03em; color:var(--gray-900); margin-bottom:var(--space-5); }
.hero__title .accent { color:var(--brand-600); position:relative; }
.hero__title .accent::after { content:''; position:absolute; bottom:2px; left:0; right:0; height:8px; background:var(--brand-100); border-radius:var(--radius-full); z-index:-1; }
.hero__subtitle { font-size:var(--text-lg); color:var(--gray-500); font-weight:var(--font-normal); max-width:480px; line-height:var(--leading-relaxed); margin-bottom:var(--space-8); }
.hero__cta { display:flex; gap:var(--space-4); margin-bottom:var(--space-10); flex-wrap:wrap; }
.hero__trust { display:flex; align-items:center; gap:var(--space-6); flex-wrap:wrap; }
.hero__trust-item { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-xs); color:var(--gray-400); font-weight:var(--font-medium); }
.hero__trust-item strong { color:var(--gray-700); font-weight:var(--font-semibold); }
.hero__trust-item i { color:var(--warning-500); font-size:10px; }

/* ── Hero 验证框 ── */
.hero__verify { max-width:560px; margin-bottom:var(--space-10); }
.verify-box { background:var(--gray-0); border:1.5px solid var(--gray-200); border-radius:var(--radius-2xl); padding:var(--space-6); box-shadow:var(--shadow-lg); transition:all var(--transition-base); }
.verify-box:focus-within { border-color:var(--brand-300); box-shadow:0 0 0 4px rgba(139,92,246,0.08), var(--shadow-lg); }
.verify-box__label { font-size:var(--text-sm); font-weight:var(--font-semibold); color:var(--gray-700); margin-bottom:var(--space-3); display:flex; align-items:center; gap:var(--space-2); }
.verify-box__input-wrap { display:flex; gap:var(--space-3); margin-bottom:var(--space-4); }
.verify-box__input { flex:1; padding:14px 18px; border:1.5px solid var(--gray-200); border-radius:var(--radius-lg); font-size:var(--text-base); font-family:var(--font-sans); color:var(--gray-900); background:var(--gray-50); transition:all var(--transition-fast); outline:none; }
.verify-box__input::placeholder { color:var(--gray-400); }
.verify-box__input:focus { border-color:var(--brand-400); background:var(--gray-0); box-shadow:0 0 0 3px rgba(139,92,246,0.1); }
.verify-box__btn { padding:14px 24px; background:var(--brand-600); color:#fff; border-radius:var(--radius-lg); font-size:var(--text-sm); font-weight:var(--font-semibold); cursor:pointer; transition:all var(--transition-base); white-space:nowrap; border:none; }
.verify-box__btn:hover { background:var(--brand-700); transform:translateY(-1px); box-shadow:var(--shadow-md); }
.verify-box__btn:disabled { opacity:0.7; cursor:not-allowed; transform:none; }
.verify-box__platforms { display:flex; gap:var(--space-2); flex-wrap:wrap; }
.platform-chip { padding:var(--space-1) var(--space-3); background:var(--gray-50); border:1px solid var(--gray-200); border-radius:var(--radius-full); font-size:var(--text-xs); font-weight:var(--font-medium); color:var(--gray-500); display:flex; align-items:center; gap:var(--space-1); transition:all var(--transition-fast); }
.platform-chip:hover { background:var(--brand-50); border-color:var(--brand-200); color:var(--brand-600); }
.platform-chip i { font-size:10px; }

.verify-result { display:none; margin-top:var(--space-6); padding:var(--space-6); background:var(--gray-50); border-radius:var(--radius-xl); border:1px solid var(--gray-200); animation:slideUp 0.5s var(--ease-out); }
.verify-result.active { display:block; }
@keyframes slideUp { from { opacity:0; transform:translateY(20px); } to { opacity:1; transform:translateY(0); } }
.verify-result__header { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--space-4); flex-wrap:wrap; gap:var(--space-3); }
.verify-result__title { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-900); }
.verify-result__score { display:flex; align-items:center; gap:var(--space-2); }
.score-ring { width:48px; height:48px; border-radius:50%; background:conic-gradient(var(--brand-500) 0% 65%, var(--gray-200) 65% 100%); display:flex; align-items:center; justify-content:center; position:relative; }
.score-ring::before { content:''; width:36px; height:36px; background:var(--gray-0); border-radius:50%; position:absolute; }
.score-ring__num { position:relative; z-index:1; font-size:var(--text-xs); font-weight:var(--font-bold); color:var(--brand-600); }
.verify-result__grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-3); }
.result-item { text-align:center; padding:var(--space-4); background:var(--gray-0); border-radius:var(--radius-lg); border:1px solid var(--gray-100); }
.result-item__num { font-size:var(--text-xl); font-weight:var(--font-extrabold); color:var(--gray-900); line-height:var(--leading-none); }
.result-item__num--good { color:var(--success-600); }
.result-item__num--bad { color:var(--danger-500); }
.result-item__label { font-size:var(--text-xs); color:var(--gray-500); margin-top:var(--space-1); }
.verify-result__cta { margin-top:var(--space-4); text-align:center; }
.verify-result__cta p { font-size:var(--text-xs); color:var(--gray-400); margin-top:var(--space-2); }

/* ── Dashboard预览 ── */
.hero__visual { position:relative; }
.hero__dashboard { background:var(--gray-0); border-radius:var(--radius-2xl); border:1px solid var(--gray-200); box-shadow:var(--shadow-2xl); overflow:hidden; transition:transform var(--transition-slow), box-shadow var(--transition-slow); }
.hero__dashboard:hover { transform:translateY(-4px) rotateX(2deg); box-shadow:0 30px 60px -15px rgba(12,10,9,0.15); }
.hero__dashboard-bar { display:flex; align-items:center; gap:var(--space-3); padding:var(--space-3) var(--space-4); background:var(--gray-800); border-radius:var(--radius-lg) var(--radius-lg) 0 0; }
.hero__dashboard-dots { display:flex; gap:6px; }
.hero__dashboard-dots span { width:10px; height:10px; border-radius:50%; }
.hero__dashboard-dots span:nth-child(1) { background:#EF4444; }
.hero__dashboard-dots span:nth-child(2) { background:#F59E0B; }
.hero__dashboard-dots span:nth-child(3) { background:#10B981; }
.hero__dashboard-url { flex:1; text-align:center; font-size:11px; color:var(--gray-400); background:var(--gray-700); padding:4px 12px; border-radius:var(--radius-md); font-family:var(--font-mono); }
.hero__dashboard-body { padding:var(--space-6); background:linear-gradient(180deg, var(--gray-50) 0%, var(--gray-0) 100%); }

.dashboard-stat { display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-4); margin-bottom:var(--space-6); }
.dashboard-stat__item { background:var(--gray-0); border:1px solid var(--gray-100); border-radius:var(--radius-lg); padding:var(--space-4); text-align:center; transition:all var(--transition-base); }
.dashboard-stat__item:hover { border-color:var(--brand-200); transform:translateY(-2px); box-shadow:var(--shadow-sm); }
.dashboard-stat__num { font-size:var(--text-2xl); font-weight:var(--font-extrabold); color:var(--brand-600); line-height:var(--leading-none); margin-bottom:var(--space-1); font-variant-numeric:tabular-nums; }
.dashboard-stat__num.pulse { animation:numPulse 2s ease-in-out infinite; }
.dashboard-stat__label { font-size:var(--text-xs); color:var(--gray-500); font-weight:var(--font-medium); }
@keyframes numPulse { 0%, 100% { opacity:1; } 50% { opacity:0.7; } }

.dashboard-chart { background:var(--gray-0); border:1px solid var(--gray-100); border-radius:var(--radius-lg); padding:var(--space-5); }
.dashboard-chart__header { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--space-4); }
.dashboard-chart__title { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-900); }
.dashboard-chart__live { display:flex; align-items:center; gap:var(--space-2); font-size:var(--text-xs); color:var(--success-600); font-weight:var(--font-semibold); }
.dashboard-chart__live::before { content:''; width:6px; height:6px; background:var(--success-500); border-radius:50%; animation:livePulse 2s ease-in-out infinite; }
@keyframes livePulse { 0%, 100% { opacity:1; transform:scale(1); } 50% { opacity:0.5; transform:scale(1.5); } }

.chart-bars { display:flex; align-items:flex-end; gap:var(--space-2); height:120px; padding-top:var(--space-4); }
.chart-bar { flex:1; background:var(--brand-100); border-radius:var(--radius-sm) var(--radius-sm) 0 0; transition:all var(--transition-base); position:relative; }
.chart-bar:hover { background:var(--brand-500); }
.chart-bar__tooltip { position:absolute; bottom:calc(100% + 8px); left:50%; transform:translateX(-50%) scale(0); background:var(--gray-900); color:#fff; padding:var(--space-1) var(--space-2); border-radius:var(--radius-md); font-size:11px; font-weight:var(--font-semibold); white-space:nowrap; transition:transform var(--transition-spring); pointer-events:none; }
.chart-bar:hover .chart-bar__tooltip { transform:translateX(-50%) scale(1); }
.chart-bar:nth-child(1) { height:45%; }
.chart-bar:nth-child(2) { height:62%; }
.chart-bar:nth-child(3) { height:38%; }
.chart-bar:nth-child(4) { height:85%; background:var(--brand-500); }
.chart-bar:nth-child(5) { height:55%; }
.chart-bar:nth-child(6) { height:72%; }
.chart-bar:nth-child(7) { height:48%; }

.dashboard-platforms { display:flex; gap:var(--space-2); margin-top:var(--space-4); flex-wrap:wrap; }
.platform-tag { padding:var(--space-1) var(--space-3); background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-full); font-size:11px; font-weight:var(--font-semibold); color:var(--gray-500); transition:all var(--transition-fast); cursor:pointer; }
.platform-tag:hover { background:var(--brand-50); border-color:var(--brand-300); color:var(--brand-600); transform:translateY(-1px); }
.platform-tag.active { background:var(--brand-600); color:#fff; border-color:var(--brand-600); }

/* ── Social Proof ── */
.social-proof { padding:var(--space-16) 0; background:var(--gray-50); border-top:1px solid var(--gray-200); border-bottom:1px solid var(--gray-200); overflow:hidden; }
.social-proof__header { text-align:center; margin-bottom:var(--space-8); }
.social-proof__label { font-size:var(--text-xs); font-weight:var(--font-semibold); color:var(--gray-400); text-transform:uppercase; letter-spacing:0.1em; }
.social-proof__track { display:flex; gap:var(--space-12); animation:scrollLogos 30s linear infinite; width:max-content; }
.social-proof__track:hover { animation-play-state:paused; }
.social-proof__logo { display:flex; align-items:center; gap:var(--space-3); padding:var(--space-4) var(--space-6); background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-lg); font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-600); white-space:nowrap; transition:all var(--transition-base); }
.social-proof__logo:hover { border-color:var(--brand-300); color:var(--brand-600); transform:translateY(-2px); box-shadow:var(--shadow-sm); }
.social-proof__logo i { font-size:18px; }
@keyframes scrollLogos { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } }

/* ── Pain Point ── */
.pain-section { padding:var(--space-24) var(--container-padding); background:var(--gray-0); }
.pain-section__inner { max-width:var(--container-max); margin:0 auto; }
.pain-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-6); }
.pain-card { background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-xl); padding:var(--space-8); text-align:center; transition:all var(--transition-base); position:relative; overflow:hidden; }
.pain-card::before { content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--danger-500); opacity:0; transition:opacity var(--transition-base); }
.pain-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-lg); border-color:var(--gray-300); }
.pain-card:hover::before { opacity:1; }
.pain-card__icon { width:56px; height:56px; border-radius:var(--radius-lg); background:var(--danger-50); display:flex; align-items:center; justify-content:center; margin:0 auto var(--space-5); font-size:24px; color:var(--danger-500); transition:all var(--transition-spring); }
.pain-card:hover .pain-card__icon { transform:scale(1.1) rotate(-4deg); }
.pain-card__title { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-900); margin-bottom:var(--space-3); }
.pain-card__desc { font-size:var(--text-sm); color:var(--gray-500); line-height:var(--leading-relaxed); }

/* ── Why Us / Features ── */
.why-section { padding:var(--space-24) var(--container-padding); background:var(--gray-50); }
.why-section__inner { max-width:var(--container-max); margin:0 auto; }
.feature-showcase { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-12); align-items:center; margin-bottom:var(--space-20); }
.feature-showcase:last-child { margin-bottom:0; }
.feature-showcase--reverse { direction:rtl; }
.feature-showcase--reverse > * { direction:ltr; }
.feature-showcase__visual { position:relative; }
.feature-showcase__frame { background:var(--gray-800); border-radius:var(--radius-xl); padding:var(--space-2); box-shadow:var(--shadow-2xl); transition:all var(--transition-slow); }
.feature-showcase__frame:hover { transform:translateY(-4px) rotateY(-2deg); box-shadow:0 30px 60px -12px rgba(12,10,9,0.25); }
.feature-showcase__bar { display:flex; gap:6px; padding:var(--space-2) var(--space-3); background:var(--gray-800); border-radius:var(--radius-md) var(--radius-md) 0 0; margin-bottom:var(--space-1); }
.feature-showcase__bar span { width:8px; height:8px; border-radius:50%; }
.feature-showcase__bar span:nth-child(1) { background:#EF4444; }
.feature-showcase__bar span:nth-child(2) { background:#F59E0B; }
.feature-showcase__bar span:nth-child(3) { background:#10B981; }
.feature-showcase__screen { background:var(--gray-0); border-radius:0 0 var(--radius-md) var(--radius-md); overflow:hidden; aspect-ratio:16/10; min-height:300px; position:relative; }
.feature-showcase__placeholder { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:linear-gradient(135deg, var(--gray-50) 0%, var(--gray-100) 100%); gap:var(--space-3); }
.feature-showcase__placeholder i { font-size:48px; color:var(--brand-200); }
.feature-showcase__placeholder p { font-size:var(--text-lg); font-weight:var(--font-semibold); color:var(--gray-500); }
.feature-showcase__placeholder span { font-size:var(--text-xs); color:var(--gray-400); font-family:var(--font-mono); }

.feature-showcase__text { padding:var(--space-4) 0; }
.feature-showcase__badge { display:inline-flex; align-items:center; gap:var(--space-2); padding:var(--space-1) var(--space-3); background:var(--brand-50); border:1px solid var(--brand-100); border-radius:var(--radius-full); font-size:var(--text-xs); font-weight:var(--font-semibold); color:var(--brand-600); margin-bottom:var(--space-4); }
.feature-showcase__badge i { font-size:10px; }
.feature-showcase__title { font-size:var(--text-3xl); font-weight:var(--font-extrabold); color:var(--gray-900); line-height:var(--leading-tight); margin-bottom:var(--space-4); letter-spacing:-0.02em; }
.feature-showcase__desc { font-size:var(--text-base); color:var(--gray-500); line-height:var(--leading-relaxed); margin-bottom:var(--space-6); }
.feature-showcase__list { list-style:none; }
.feature-showcase__list li { display:flex; align-items:flex-start; gap:var(--space-3); font-size:var(--text-sm); color:var(--gray-600); margin-bottom:var(--space-3); line-height:var(--leading-relaxed); }
.feature-showcase__list li i { color:var(--success-500); margin-top:3px; flex-shrink:0; font-size:12px; }

/* ── Demo ── */
.demo-section { padding:var(--space-24) var(--container-padding); background:var(--gray-0); }
.demo-section__inner { max-width:var(--container-max); margin:0 auto; }
.demo-tabs { display:flex; justify-content:center; gap:var(--space-2); margin-bottom:var(--space-10); flex-wrap:wrap; }
.demo-tab { padding:var(--space-3) var(--space-5); background:var(--gray-0); border:1.5px solid var(--gray-200); border-radius:var(--radius-lg); font-size:var(--text-sm); font-weight:var(--font-semibold); color:var(--gray-600); cursor:pointer; transition:all var(--transition-base); display:flex; align-items:center; gap:var(--space-2); font-family:inherit; }
.demo-tab:hover { border-color:var(--brand-300); background:var(--brand-50); color:var(--brand-600); transform:translateY(-2px); box-shadow:var(--shadow-sm); }
.demo-tab.active { border-color:var(--brand-600); background:var(--brand-50); color:var(--brand-600); box-shadow:0 0 0 3px rgba(139,92,246,0.1); }
.demo-tab i { font-size:14px; }

.demo-stage { position:relative; }
.demo-frame { background:var(--gray-800); border-radius:var(--radius-2xl); padding:var(--space-3); box-shadow:var(--shadow-2xl); transition:all var(--transition-slow); max-width:900px; margin:0 auto; }
.demo-frame:hover { transform:translateY(-6px); box-shadow:0 35px 70px -15px rgba(12,10,9,0.3); }
.demo-bar { display:flex; align-items:center; gap:var(--space-3); padding:var(--space-3) var(--space-4); background:var(--gray-800); border-radius:var(--radius-lg) var(--radius-lg) 0 0; margin-bottom:var(--space-1); }
.demo-bar__dots { display:flex; gap:6px; }
.demo-bar__dots span { width:10px; height:10px; border-radius:50%; }
.demo-bar__dots span:nth-child(1) { background:#EF4444; }
.demo-bar__dots span:nth-child(2) { background:#F59E0B; }
.demo-bar__dots span:nth-child(3) { background:#10B981; }
.demo-bar__url { flex:1; text-align:center; font-size:11px; color:var(--gray-400); background:var(--gray-700); padding:4px 12px; border-radius:var(--radius-md); font-family:var(--font-mono); }

.demo-screen { position:relative; background:var(--gray-0); border-radius:0 0 var(--radius-md) var(--radius-md); overflow:hidden; aspect-ratio:16/10; min-height:400px; }
.demo-screen__content { position:absolute; inset:0; opacity:0; transition:opacity 0.5s var(--ease-out); display:flex; flex-direction:column; align-items:center; justify-content:center; }
.demo-screen__content.active { opacity:1; }
.demo-placeholder { width:100%; height:100%; display:flex; flex-direction:column; align-items:center; justify-content:center; background:linear-gradient(135deg, var(--gray-50) 0%, var(--gray-100) 100%); gap:var(--space-3); }
.demo-placeholder i { font-size:64px; color:var(--brand-200); }
.demo-placeholder h4 { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-500); }
.demo-placeholder p { font-size:var(--text-sm); color:var(--gray-400); font-family:var(--font-mono); }

.demo-caption { text-align:center; margin-top:var(--space-8); transition:opacity 0.3s var(--ease-out), transform 0.3s var(--ease-out); }
.demo-caption h4 { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-900); margin-bottom:var(--space-2); display:flex; align-items:center; justify-content:center; gap:var(--space-2); }
.demo-caption h4 i { color:var(--brand-600); }
.demo-caption p { font-size:var(--text-base); color:var(--gray-500); }

/* ── Loop ── */
.loop-section { padding:var(--space-24) var(--container-padding); background:var(--gray-50); }
.loop-section__inner { max-width:var(--container-max); margin:0 auto; }
.loop-path { display:flex; align-items:flex-start; justify-content:center; gap:0; position:relative; margin-bottom:var(--space-12); }
.loop-step { flex:1; max-width:200px; text-align:center; position:relative; z-index:1; }
.loop-step__icon { width:72px; height:72px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:24px; margin:0 auto var(--space-4); background:var(--gray-0); border:3px solid var(--gray-200); transition:all var(--transition-spring); position:relative; }
.loop-step:nth-child(1) .loop-step__icon { border-color:var(--brand-600); color:var(--brand-600); }
.loop-step:nth-child(3) .loop-step__icon { border-color:var(--brand-500); color:var(--brand-500); }
.loop-step:nth-child(5) .loop-step__icon { border-color:var(--success-500); color:var(--success-500); }
.loop-step:nth-child(7) .loop-step__icon { border-color:var(--warning-500); color:var(--warning-500); }
.loop-step:nth-child(9) .loop-step__icon { border-color:#EC4899; color:#EC4899; }
.loop-step:hover .loop-step__icon { transform:scale(1.12); box-shadow:var(--shadow-md); background:var(--gray-50); }
.loop-step__title { font-size:var(--text-lg); font-weight:var(--font-bold); margin-bottom:var(--space-2); color:var(--gray-900); }
.loop-step__desc { font-size:var(--text-sm); color:var(--gray-500); line-height:var(--leading-relaxed); padding:0 var(--space-3); }
.loop-arrow { display:flex; align-items:center; justify-content:center; padding-top:var(--space-6); color:var(--gray-300); font-size:var(--text-lg); flex-shrink:0; width:60px; }
.loop-compare { display:grid; grid-template-columns:1fr 1fr; gap:var(--space-5); max-width:800px; margin:0 auto; }
.loop-compare__item { padding:var(--space-5) var(--space-6); border-radius:var(--radius-xl); font-size:var(--text-sm); font-weight:var(--font-semibold); display:flex; align-items:center; gap:var(--space-3); }
.loop-compare__item--bad { background:var(--danger-50); border:1px solid rgba(239,68,68,0.1); color:var(--danger-500); }
.loop-compare__item--good { background:var(--brand-50); border:1px solid var(--brand-100); color:var(--brand-600); }

/* ── Pricing ── */
.pricing-section { padding:var(--space-24) var(--container-padding); background:var(--gray-0); }
.pricing-section__inner { max-width:var(--container-max); margin:0 auto; }
.pricing-grid { display:grid; grid-template-columns:1.2fr 1fr; gap:var(--space-8); align-items:start; }
.pricing-card { background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-2xl); padding:var(--space-10); box-shadow:var(--shadow-sm); transition:all var(--transition-base); }
.pricing-card:hover { box-shadow:var(--shadow-lg); border-color:var(--gray-300); }
.pricing-card--highlight { border-color:var(--brand-600); box-shadow:0 0 0 1px var(--brand-600), var(--shadow-lg); position:relative; }
.pricing-card--highlight::before { content:'推荐'; position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--brand-600); color:#fff; padding:var(--space-1) var(--space-4); border-radius:var(--radius-full); font-size:var(--text-xs); font-weight:var(--font-bold); }
.price-card__head { text-align:center; margin-bottom:var(--space-8); padding-bottom:var(--space-6); border-bottom:1px solid var(--gray-100); }
.price-card__head h3 { font-size:var(--text-xl); font-weight:var(--font-bold); color:var(--gray-900); margin-bottom:var(--space-2); }
.price-card__head p { font-size:var(--text-sm); color:var(--gray-400); }

.free-grid { display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-3); }
.free-item { display:flex; align-items:center; gap:var(--space-3); padding:var(--space-3) var(--space-4); background:var(--success-50); border-radius:var(--radius-lg); border:1px solid rgba(16,185,129,0.08); font-size:var(--text-sm); font-weight:var(--font-medium); color:var(--gray-700); transition:all var(--transition-base); }
.free-item:hover { background:rgba(16,185,129,0.08); transform:translateX(3px); border-color:rgba(16,185,129,0.15); }
.free-item i { color:var(--success-500); font-size:14px; flex-shrink:0; }
.free-note { margin-top:var(--space-8); padding:var(--space-5); background:var(--brand-50); border-radius:var(--radius-xl); border:1px dashed var(--brand-200); text-align:center; }
.free-note__title { font-size:var(--text-base); font-weight:var(--font-bold); color:var(--brand-600); margin-bottom:var(--space-2); }
.free-note__desc { font-size:var(--text-sm); color:var(--gray-500); }

.price-row { display:flex; align-items:center; justify-content:space-between; padding:var(--space-4) 0; border-bottom:1px solid var(--gray-100); }
.price-row:last-child { border-bottom:none; }
.price-row__label { font-size:var(--text-sm); font-weight:var(--font-medium); color:var(--gray-500); display:flex; align-items:center; gap:var(--space-2); }
.price-row__label i { color:var(--brand-600); font-size:13px; }
.price-row__val { display:flex; align-items:center; gap:var(--space-3); flex-wrap:wrap; justify-content:flex-end; }
.price-our { font-size:var(--text-lg); font-weight:var(--font-extrabold); color:var(--success-600); }
.price-oth { font-size:var(--text-sm); color:var(--gray-400); text-decoration:line-through; }
.price-save { padding:var(--space-1) var(--space-2); background:var(--success-50); color:var(--success-600); border-radius:var(--radius-full); font-size:11px; font-weight:var(--font-bold); }
.price-foot { margin-top:var(--space-6); padding:var(--space-5); background:var(--success-50); border-radius:var(--radius-lg); text-align:center; font-size:var(--text-sm); font-weight:var(--font-semibold); color:var(--gray-600); }
.price-foot strong { color:var(--success-600); }

/* ── Testimonials ── */
.testi-section { padding:var(--space-24) var(--container-padding); background:var(--gray-50); }
.testi-section__inner { max-width:var(--container-max); margin:0 auto; }
.testi-grid { display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-6); }
.testi-card { background:var(--gray-0); border:1px solid var(--gray-200); border-radius:var(--radius-2xl); padding:var(--space-8) var(--space-6); transition:all var(--transition-base); position:relative; }
.testi-card::before { content:'"'; position:absolute; top:var(--space-5); left:var(--space-6); font-size:48px; color:var(--gray-100); font-family:Georgia,serif; line-height:1; font-weight:var(--font-bold); }
.testi-card:hover { box-shadow:var(--shadow-lg); border-color:var(--gray-300); transform:translateY(-3px); }
.testi-card__text { font-size:var(--text-sm); color:var(--gray-600); line-height:var(--leading-relaxed); margin-bottom:var(--space-6); position:relative; z-index:1; }
.testi-card__auth { display:flex; align-items:center; gap:var(--space-3); }
.testi-card__av { width:40px; height:40px; border-radius:50%; background:var(--brand-600); display:flex; align-items:center; justify-content:center; color:#fff; font-size:14px; font-weight:var(--font-bold); flex-shrink:0; }
.testi-card__name { font-size:var(--text-sm); font-weight:var(--font-bold); color:var(--gray-900); }
.testi-card__role { font-size:var(--text-xs); color:var(--gray-400); }

.stats-row { display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-6); margin-top:var(--space-16); }
.stat-item { text-align:center; padding:var(--space-10) var(--space-8); background:var(--gray-0); border-radius:var(--radius-2xl); border:1px solid var(--gray-100); transition:all var(--transition-base); }
.stat-item:hover { border-color:var(--brand-200); background:var(--brand-50); transform:translateY(-3px); }
.stat-num { font-size:var(--text-5xl); font-weight:var(--font-extrabold); color:var(--brand-600); line-height:var(--leading-none); margin-bottom:var(--space-3); font-variant-numeric:tabular-nums; }
.stat-label { font-size:var(--text-base); font-weight:var(--font-semibold); color:var(--gray-500); }

/* ── CTA Section ── */
.cta-sec { background:linear-gradient(180deg, var(--gray-0) 0%, #F5F3FF 30%, #EDE9FE 70%, #DDD6FE 100%); position:relative; overflow:hidden; padding:var(--space-24) var(--container-padding); }
.cta-sec::before { content:''; position:absolute; inset:0; background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%237C3AED' fill-opacity='0.04'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E"); pointer-events:none; }
.cta__inner { position:relative; z-index:1; text-align:center; max-width:680px; margin:0 auto; }
.cta__title { font-size:var(--text-4xl); font-weight:var(--font-extrabold); color:var(--gray-900); margin-bottom:var(--space-4); letter-spacing:-0.02em; }
.cta__sub { font-size:var(--text-lg); color:var(--gray-600); margin-bottom:var(--space-10); line-height:var(--leading-relaxed); }
.cta__actions { display:flex; gap:var(--space-4); justify-content:center; margin-bottom:var(--space-8); flex-wrap:wrap; }
.cta__btn { padding:var(--space-4) var(--space-8); border-radius:var(--radius-xl); background:var(--brand-600); color:#fff; font-size:var(--text-base); font-weight:var(--font-bold); border:none; cursor:pointer; transition:all var(--transition-base); display:inline-flex; align-items:center; gap:var(--space-2); box-shadow:inset 0 1px 0 rgba(255,255,255,0.1), 0 4px 6px -1px rgba(124,58,237,0.15); text-decoration:none; }
.cta__btn:hover { transform:translateY(-2px); box-shadow:inset 0 1px 0 rgba(255,255,255,0.1), 0 10px 15px -3px rgba(124,58,237,0.2); background:var(--brand-700); }
.cta__btn--outline { background:transparent; color:var(--gray-700); border:1.5px solid var(--gray-300); box-shadow:var(--shadow-sm); }
.cta__btn--outline:hover { background:var(--gray-50); border-color:var(--gray-400); color:var(--gray-900); transform:translateY(-2px); box-shadow:var(--shadow-md); }
.cta__note { color:var(--gray-500); font-size:var(--text-sm); }
.cta__note strong { color:var(--brand-700); }

/* ── Footer ── */
.footer { background:var(--gray-800); color:var(--gray-0); padding:var(--space-16) var(--container-padding) var(--space-8); }
.footer__inner { max-width:var(--container-max); margin:0 auto; }
.footer__grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:var(--space-12); margin-bottom:var(--space-12); }
.footer__brand { display:flex; align-items:center; gap:var(--space-3); margin-bottom:var(--space-5); }
.footer__brand-icon { width:34px; height:34px; border-radius:var(--radius-md); background:var(--brand-600); display:flex; align-items:center; justify-content:center; color:#fff; font-size:14px; font-weight:var(--font-extrabold); }
.footer__brand-text { font-size:var(--text-lg); font-weight:var(--font-extrabold); }
.footer__desc { font-size:var(--text-sm); color:var(--gray-400); line-height:var(--leading-relaxed); max-width:320px; }
.footer__title { font-size:var(--text-sm); font-weight:var(--font-bold); margin-bottom:var(--space-5); color:var(--gray-300); }
.footer__links { list-style:none; }
.footer__links li { margin-bottom:var(--space-3); }
.footer__links a { color:var(--gray-400); text-decoration:none; font-size:var(--text-sm); transition:color var(--transition-fast); }
.footer__links a:hover { color:var(--gray-200); }
.footer__bottom { border-top:1px solid var(--gray-700); padding-top:var(--space-6); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:var(--space-4); }
.footer__copy { font-size:var(--text-xs); color:var(--gray-500); }

/* ── Reveal Animations ── */
.reveal { opacity:0; transform:translateY(30px); transition:opacity 700ms var(--ease-out), transform 700ms var(--ease-out); }
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal--d1 { transition-delay:100ms; }
.reveal--d2 { transition-delay:200ms; }
.reveal--d3 { transition-delay:300ms; }
.reveal--d4 { transition-delay:400ms; }

/* ── 首页响应式 ── */
@media (max-width:1024px) {
  .hero__inner { grid-template-columns:1fr; gap:var(--space-12); text-align:center; padding-top:var(--space-12); padding-bottom:var(--space-12); }
  .hero__subtitle { max-width:100%; margin:0 auto var(--space-8); }
  .hero__cta { justify-content:center; }
  .hero__trust { justify-content:center; }
  .hero__visual { order:-1; max-width:600px; margin:0 auto; }
  .pain-grid { grid-template-columns:repeat(2, 1fr); }
  .feature-showcase, .feature-showcase--reverse { grid-template-columns:1fr; gap:var(--space-10); direction:ltr; }
  .feature-showcase__visual { order:-1; }
  .pricing-grid { grid-template-columns:1fr; }
  .testi-grid { grid-template-columns:repeat(2, 1fr); }
  .footer__grid { grid-template-columns:repeat(2, 1fr); }
  .loop-path { flex-wrap:wrap; gap:var(--space-6); }
  .loop-step { max-width:160px; }
  .loop-arrow { display:none; }
  .hero__title { font-size:var(--text-4xl); }
}

@media (max-width:768px) {
  .hero__title { font-size:var(--text-3xl); letter-spacing:-0.02em; }
  .hero__subtitle { font-size:var(--text-base); }
  .pain-section, .why-section, .loop-section, .pricing-section, .testi-section { padding:var(--space-16) var(--space-5); }
  .section__title, .cta__title { font-size:var(--text-3xl); }
  .pain-grid, .testi-grid, .stats-row, .free-grid, .footer__grid, .loop-compare { grid-template-columns:1fr; }
  .loop-step { max-width:100%; width:100%; }
  .hero__cta { flex-direction:column; align-items:center; }
  .btn--lg { width:100%; max-width:300px; }
  .pricing-card { padding:var(--space-6); }
  .feature-showcase__screen { min-height:250px; }
  .demo-screen { min-height:250px; }
  .social-proof__track { animation-duration:20s; }
  .dashboard-stat { grid-template-columns:1fr; }
  .verify-box__input-wrap { flex-direction:column; }
  .verify-box__btn { width:100%; }
  .verify-result__grid { grid-template-columns:1fr; }
  .hero__verify { max-width:100%; }
}

@media (max-width:480px) {
  .hero__visual { transform:scale(0.85); transform-origin:center; max-width:320px; margin:0 auto; }
  .hero__title { font-size:var(--text-2xl); }
  .hero__badge { font-size:10px; padding:var(--space-1) var(--space-3); }
}

@media (min-width:1400px) {
  :root { --container-max: 1280px; }
  .hero__title { font-size:var(--text-6xl); }
  .hero__subtitle { font-size:var(--text-xl); }
}

@media (min-width:1920px) {
  :root { --container-max: 1400px; }
  .hero__title { font-size:var(--text-7xl); }
  .hero__inner { grid-template-columns:1fr 1.2fr; gap:var(--space-20); }
}

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity:1; transform:none; }
  .social-proof__track { animation:none; }
}

/* ═══════════════════════════════════════════════════════════════
   【完整修复】首页所有标题字号 —— 按原版一比一还原
   ═══════════════════════════════════════════════════════════════ */

/* ── Hero 区域 ── */
.hero__title {
  font-size: var(--text-5xl);  /* 48px */
  font-weight: var(--font-extrabold);
  line-height: var(--leading-tight);
  letter-spacing: -0.03em;
}
.hero__subtitle {
  font-size: var(--text-lg);  /* 18px */
}
.hero__badge {
  font-size: var(--text-xs);  /* 12px */
}

/* ── Section 通用标题 ── */
.section__title {
  font-size: var(--text-4xl);  /* 36px */
  font-weight: var(--font-extrabold);
  line-height: var(--leading-tight);
  letter-spacing: -0.02em;
}
.section__desc {
  font-size: var(--text-lg);  /* 18px */
}
.section__label {
  font-size: var(--text-xs);  /* 12px */
}

/* ── Feature Showcase ── */
.feature-showcase__title {
  font-size: var(--text-3xl);  /* 30px */
  font-weight: var(--font-extrabold);
  line-height: var(--leading-tight);
  letter-spacing: -0.02em;
}
.feature-showcase__desc {
  font-size: var(--text-base);  /* 16px */
}
.feature-showcase__badge {
  font-size: var(--text-xs);  /* 12px */
}
.feature-showcase__list li {
  font-size: var(--text-sm);  /* 14px */
}

/* ── Pain Card ── */
.pain-card__title {
  font-size: var(--text-xl);  /* 20px */
  font-weight: var(--font-bold);
}
.pain-card__desc {
  font-size: var(--text-sm);  /* 14px */
}

/* ── Loop Step ── */
.loop-step__title {
  font-size: var(--text-lg);  /* 18px */
  font-weight: var(--font-bold);
}
.loop-step__desc {
  font-size: var(--text-sm);  /* 14px */
}
.loop-compare__item {
  font-size: var(--text-sm);  /* 14px */
}

/* ── Pricing ── */
.price-card__head h3 {
  font-size: var(--text-xl);  /* 20px */
  font-weight: var(--font-bold);
}
.price-card__head p {
  font-size: var(--text-sm);  /* 14px */
}
.price-our {
  font-size: var(--text-lg);  /* 18px */
  font-weight: var(--font-extrabold);
}
.price-row__label {
  font-size: var(--text-sm);  /* 14px */
}
.free-item {
  font-size: var(--text-sm);  /* 14px */
}
.free-note__title {
  font-size: var(--text-base);  /* 16px */
}
.free-note__desc {
  font-size: var(--text-sm);  /* 14px */
}

/* ── Testimonials ── */
.testi-card__text {
  font-size: var(--text-sm);  /* 14px */
}
.testi-card__name {
  font-size: var(--text-sm);  /* 14px */
  font-weight: var(--font-bold);
}
.testi-card__role {
  font-size: var(--text-xs);  /* 12px */
}
.stat-num {
  font-size: var(--text-5xl);  /* 48px */
  font-weight: var(--font-extrabold);
  line-height: var(--leading-none);
}
.stat-label {
  font-size: var(--text-base);  /* 16px */
}

/* ── CTA ── */
.cta__title {
  font-size: var(--text-4xl);  /* 36px */
  font-weight: var(--font-extrabold);
  letter-spacing: -0.02em;
}
.cta__sub {
  font-size: var(--text-lg);  /* 18px */
}
.cta__btn {
  font-size: var(--text-base);  /* 16px */
}
.cta__note {
  font-size: var(--text-sm);  /* 14px */
}

/* ── Demo ── */
.demo-tab {
  font-size: var(--text-sm);  /* 14px */
}
.demo-caption h4 {
  font-size: var(--text-xl);  /* 20px */
  font-weight: var(--font-bold);
}
.demo-caption p {
  font-size: var(--text-base);  /* 16px */
}

/* ── Footer ── */
.footer__brand-text {
  font-size: var(--text-lg);  /* 18px */
}
.footer__desc {
  font-size: var(--text-sm);  /* 14px */
}
.footer__title {
  font-size: var(--text-sm);  /* 14px */
}
.footer__links a {
  font-size: var(--text-sm);  /* 14px */
}
.footer__copy {
  font-size: var(--text-xs);  /* 12px */
}

/* ── 响应式 ── */
@media (max-width: 1024px) {
  .hero__title { font-size: var(--text-4xl); }
}
@media (max-width: 768px) {
  .hero__title { font-size: var(--text-3xl); }
  .section__title,
  .cta__title { font-size: var(--text-3xl); }
  .hero__subtitle,
  .section__desc,
  .cta__sub { font-size: var(--text-base); }
}
@media (max-width: 480px) {
  .hero__title { font-size: var(--text-2xl); }
}
@media (min-width: 1400px) {
  .hero__title { font-size: var(--text-6xl); }
}
@media (min-width: 1920px) {
  .hero__title { font-size: var(--text-7xl); }
}

/* ═══════════════════════════════════════════════════════════════
   修复：右侧内容阅读性优化 — 字体调大
   ═══════════════════════════════════════════════════════════════ */

/* ── 文章正文整体调大 ── */
.article__body {
  font-size: 16px;  /* 从 14px → 16px */
  line-height: 1.8; /* 从 1.625 → 1.8，更宽松 */
  color: var(--gray-700);
}

/* ── 段落 ── */
.article__body p {
  margin-bottom: var(--space-4);
  font-size: 16px;
  line-height: 1.8;
}

/* ── 标题 ── */
.article__body h2 {
  font-size: 24px;
  font-weight: var(--font-bold);
  color: var(--gray-900);
  margin: var(--space-8) 0 var(--space-4);
  padding-bottom: var(--space-2);
  border-bottom: 2px solid var(--brand-100);
}

.article__body h3 {
  font-size: 20px;
  font-weight: var(--font-bold);
  color: var(--gray-900);
  margin: var(--space-6) 0 var(--space-3);
}

.article__body h4 {
  font-size: 17px;
  font-weight: var(--font-semibold);
  color: var(--gray-800);
  margin: var(--space-4) 0 var(--space-2);
}

/* ── 列表 ── */
.article__body ul,
.article__body ol {
  padding-left: var(--space-5);
  margin-bottom: var(--space-4);
}

.article__body li {
  font-size: 16px;
  color: var(--gray-600);
  line-height: 1.8;
  margin-bottom: var(--space-1);
}

/* ── 表格 ── */
.article__body .help-table {
  font-size: 15px;  /* 从 12px → 15px */
  width: 100%;
  border-collapse: collapse;
  margin: var(--space-4) 0;
  border-radius: var(--radius-lg);
  overflow: hidden;
  border: 1px solid var(--gray-200);
}

.article__body .help-table th {
  background: var(--gray-800);
  color: var(--gray-0);
  padding: var(--space-3) var(--space-4);
  text-align: left;
  font-weight: var(--font-semibold);
  font-size: 15px;
}

.article__body .help-table td {
  padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--gray-100);
  color: var(--gray-700);
  font-size: 15px;
  line-height: 1.6;
}

.article__body .help-table tr:nth-child(even) {
  background: var(--gray-50);
}

.article__body .help-table tr:last-child td {
  border-bottom: none;
}

/* ── 引用/提示框 ── */
.article__body blockquote {
  padding: var(--space-4) var(--space-5);
  background: var(--brand-50);
  border-left: 4px solid var(--brand-500);
  border-radius: 0 var(--radius-md) var(--radius-md) 0;
  margin: var(--space-4) 0;
  color: var(--gray-600);
  font-size: 15px;
  line-height: 1.7;
}

/* ── 代码 ── */
.article__body code {
  background: var(--gray-100);
  padding: 2px 8px;
  border-radius: var(--radius-sm);
  font-family: var(--font-mono);
  font-size: 14px;
  color: var(--brand-700);
}

.article__body pre {
  background: var(--gray-800);
  color: var(--gray-200);
  padding: var(--space-4);
  border-radius: var(--radius-lg);
  overflow-x: auto;
  margin: var(--space-4) 0;
  font-family: var(--font-mono);
  font-size: 14px;
  line-height: 1.7;
}

.article__body pre code {
  background: none;
  padding: 0;
  color: inherit;
  font-size: 14px;
}

/* ── 图片 ── */
.article__body img {
  max-width: 100%;
  height: auto;
  border-radius: var(--radius-lg);
  margin: var(--space-4) 0;
  border: 1px solid var(--gray-200);
}

/* ── 章节标题（带图标的） ── */
.article__section-title {
  font-size: 22px !important;
  font-weight: var(--font-bold);
  color: var(--gray-900);
  margin: var(--space-8) 0 var(--space-4);
  padding-bottom: var(--space-2);
  border-bottom: 2px solid var(--brand-100);
  display: flex;
  align-items: center;
  gap: var(--space-2);
}

.article__section-title i {
  color: var(--brand-600);
  font-size: 18px;
}


/* ═══════════════════════════════════════════════════════════════
   修复：左侧菜单折叠/展开功能
   ═══════════════════════════════════════════════════════════════ */

/* ── 导航组 ── */
.nav-group {
  margin-bottom: var(--space-1);
  border-bottom: 1px solid var(--gray-100);
}

.nav-group:last-child {
  border-bottom: none;
}

/* ── 导航组头部（可点击） ── */
.nav-group__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-3) var(--space-3);
  cursor: pointer;
  border-radius: var(--radius-md);
  transition: background var(--transition-fast);
  user-select: none;
}

.nav-group__header:hover {
  background: var(--gray-50);
}

.nav-group__header-left {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  font-weight: var(--font-semibold);
  color: var(--gray-700);
}

.nav-group__header-left i {
  color: var(--brand-600);
  font-size: 14px;
  width: 20px;
  text-align: center;
}

/* ── 折叠箭头 ── */
.nav-group__toggle {
  color: var(--gray-400);
  font-size: 12px;
  transition: transform 0.3s var(--ease-out);
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--radius-sm);
}

.nav-group__toggle:hover {
  background: var(--gray-100);
  color: var(--gray-600);
}

/* 展开状态：箭头旋转 */
.nav-group--open .nav-group__toggle {
  transform: rotate(90deg);
  color: var(--brand-600);
}

/* ── 子菜单容器（动画折叠） ── */
.nav-group__items {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s var(--ease-out);
  padding-left: var(--space-2);
}

.nav-group--open .nav-group__items {
  max-height: 800px; /* 足够容纳所有子菜单 */
}

/* ── 子菜单项 ── */
.nav-item {
  display: block;
  padding: var(--space-2) var(--space-3) var(--space-2) calc(var(--space-3) + 28px);
  font-size: var(--text-sm);
  color: var(--gray-500);
  border-radius: var(--radius-md);
  transition: all var(--transition-fast);
  text-decoration: none;
  line-height: var(--leading-tight);
  margin: 1px 0;
  position: relative;
}

.nav-item::before {
  content: '—';
  position: absolute;
  left: calc(var(--space-3) + 8px);
  color: var(--gray-300);
  font-size: 12px;
}

.nav-item:hover {
  color: var(--gray-900);
  background: var(--gray-50);
}

.nav-item.active {
  color: var(--brand-600);
  background: var(--brand-50);
  font-weight: var(--font-semibold);
}

.nav-item.active::before {
  color: var(--brand-400);
}


/* ═══════════════════════════════════════════════════════════════
   修复：侧边栏整体布局微调
   ═══════════════════════════════════════════════════════════════ */

.sidebar {
  width: 260px;  /* 稍微加宽，容纳更长文字 */
  flex-shrink: 0;
  padding: var(--space-4) 0 var(--space-16);
  position: sticky;
  top: calc(var(--nav-height) + var(--space-4));
  height: calc(100vh - var(--nav-height) - var(--space-8));
  overflow-y: auto;
}

/* 侧边栏滚动条美化 */
.sidebar::-webkit-scrollbar {
  width: 4px;
}

.sidebar::-webkit-scrollbar-track {
  background: transparent;
}

.sidebar::-webkit-scrollbar-thumb {
  background: var(--gray-200);
  border-radius: var(--radius-full);
}

.sidebar::-webkit-scrollbar-thumb:hover {
  background: var(--gray-300);
}

/* ── 侧边栏搜索框 ── */
.sidebar__search {
  position: relative;
  margin-bottom: var(--space-5);
  padding: 0 var(--space-1);
}

.sidebar__search-input {
  width: 100%;
  padding: 10px 12px 10px 38px;
  border: 1.5px solid var(--gray-200);
  border-radius: var(--radius-lg);
  background: var(--gray-0);
  font-size: var(--text-sm);
  font-family: inherit;
  color: var(--gray-900);
  outline: none;
  transition: all var(--transition-base);
}

.sidebar__search-input:focus {
  border-color: var(--brand-300);
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.08);
}

.sidebar__search-icon {
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--gray-400);
  font-size: 14px;
}

.sidebar__search-clear {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--gray-400);
  font-size: 16px;
  cursor: pointer;
  display: none;
  padding: 4px 6px;
  border-radius: var(--radius-sm);
  transition: all var(--transition-fast);
}

.sidebar__search-clear:hover {
  background: var(--gray-100);
  color: var(--gray-600);
}

.sidebar__search-clear.visible {
  display: block;
}

/* ── 侧边栏底部 ── */
.sidebar__footer {
  margin-top: var(--space-8);
  padding-top: var(--space-4);
  border-top: 1px solid var(--gray-200);
}

.sidebar__footer-link {
  display: flex;
  align-items: center;
  gap: var(--space-2);
  font-size: var(--text-sm);
  color: var(--gray-400);
  padding: var(--space-2) var(--space-1);
  transition: color var(--transition-fast);
  text-decoration: none;
}

.sidebar__footer-link:hover {
  color: var(--brand-600);
}

.sidebar__footer-link i {
  font-size: 14px;
}


/* ═══════════════════════════════════════════════════════════════
   修复：响应式下侧边栏
   ═══════════════════════════════════════════════════════════════ */

@media (max-width: 1024px) {
  .sidebar {
    display: none;
    position: fixed;
    top: var(--nav-height);
    left: 0;
    bottom: 0;
    z-index: 250;
    background: var(--gray-0);
    width: 290px;
    padding: var(--space-4);
    box-shadow: var(--shadow-lg);
    overflow-y: auto;
    height: auto;
  }

  .sidebar.active {
    display: block;
  }

  .sidebar-overlay {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(12, 10, 9, 0.35);
    z-index: 249;
    backdrop-filter: blur(3px);
  }

  .sidebar-overlay.active {
    display: block;
  }
}