
    :root {
      --color-primary: #1a56db;
      --color-primary-dark: #1e3a8a;
      --color-primary-light: #3b82f6;
      --color-primary-50: #eff6ff;
      --color-primary-100: #dbeafe;
      --color-primary-200: #bfdbfe;
      --color-accent: #f59e0b;
      --color-accent-light: #fbbf24;
      --color-success: #10b981;
      --color-danger: #ef4444;
      --color-bg: #f1f5f9;
      --color-bg-card: #ffffff;
      --color-bg-dark: #0f172a;
      --color-text: #1e293b;
      --color-text-secondary: #64748b;
      --color-text-muted: #94a3b8;
      --color-text-inverse: #ffffff;
      --color-border: #e2e8f0;
      --color-border-light: #f1f5f9;
      --shadow-sm: 0 1px 2px 0 rgba(0,0,0,.05);
      --shadow-md: 0 4px 6px -1px rgba(0,0,0,.07), 0 2px 4px -2px rgba(0,0,0,.05);
      --shadow-lg: 0 10px 15px -3px rgba(0,0,0,.08), 0 4px 6px -4px rgba(0,0,0,.05);
      --shadow-xl: 0 20px 25px -5px rgba(0,0,0,.08), 0 8px 10px -6px rgba(0,0,0,.05);
      --radius-sm: 6px;
      --radius-md: 10px;
      --radius-lg: 16px;
      --transition-fast: all .15s ease;
      --transition-base: all .25s cubic-bezier(.4,0,.2,1);
      --transition-smooth: all .35s cubic-bezier(.4,0,.2,1);
      --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", "Hiragino Sans GB", sans-serif;
      --font-size-xs: 12px;
      --font-size-sm: 13px;
      --font-size-base: 14px;
      --font-size-md: 15px;
      --font-size-lg: 18px;
      --font-size-xl: 22px;
      --font-size-2xl: 28px;
      --font-size-3xl: 36px;
      --space-1: 4px; --space-2: 8px; --space-3: 12px; --space-4: 16px;
      --space-5: 20px; --space-6: 24px; --space-8: 32px; --space-10: 40px;
      --max-width: 1240px;
    }
    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
    html { scroll-behavior: smooth; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
    body { font-family: var(--font-sans); font-size: var(--font-size-base); line-height: 1.6; color: var(--color-text); background: var(--color-bg); overflow-x: hidden; }
    a { color: var(--color-text); text-decoration: none; transition: var(--transition-fast); }
    a:hover { color: var(--color-primary); }
    img { max-width: 100%; height: auto; display: block; }
    ul, ol { list-style: none; }
    .container { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--space-5); }
    .header { position: sticky; top: 0; z-index: 100; background: var(--color-bg-card); border-bottom: 1px solid var(--color-border); box-shadow: var(--shadow-sm); }
    .header-inner { display: flex; align-items: center; justify-content: space-between; height: 64px; gap: var(--space-6); }
    .logo { display: flex; align-items: center; gap: var(--space-3); flex-shrink: 0; }
    .logo-icon { width: 38px; height: 38px; background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light)); border-radius: var(--radius-md); display: flex; align-items: center; justify-content: center; color: var(--color-text-inverse); font-weight: 800; font-size: var(--font-size-lg); }
    .logo-text { font-size: var(--font-size-lg); font-weight: 700; color: var(--color-text); }
    .logo-text span { color: var(--color-primary); }
    .search-area { flex: 1; max-width: 520px; }
    .search-box { display: flex; border: 2px solid var(--color-border); border-radius: var(--radius-md); overflow: hidden; transition: var(--transition-fast); }
    .search-box:focus-within { border-color: var(--color-primary); box-shadow: 0 0 0 3px var(--color-primary-100); }
    .search-input { flex: 1; padding: var(--space-2) var(--space-4); border: none; outline: none; font-size: var(--font-size-base); font-family: var(--font-sans); color: var(--color-text); background: transparent; }
    .search-input::placeholder { color: var(--color-text-muted); }
    .search-btn { padding: var(--space-2) var(--space-6); background: var(--color-primary); color: var(--color-text-inverse); border: none; font-size: var(--font-size-base); font-weight: 600; cursor: pointer; transition: var(--transition-fast); font-family: var(--font-sans); }
    .search-btn:hover { background: var(--color-primary-dark); }
    .auth-area { display: flex; align-items: center; gap: var(--space-3); flex-shrink: 0; }
    .btn-login, .btn-register { padding: var(--space-2) var(--space-5); border-radius: var(--radius-md); font-size: var(--font-size-sm); font-weight: 600; cursor: pointer; border: none; transition: var(--transition-fast); font-family: var(--font-sans); white-space: nowrap; }
    .btn-login { background: transparent; color: var(--color-text-secondary); border: 1px solid var(--color-border); }
    .btn-login:hover { border-color: var(--color-primary); color: var(--color-primary); background: var(--color-primary-50); }
    .btn-register { background: var(--color-primary); color: var(--color-text-inverse); }
    .btn-register:hover { background: var(--color-primary-dark); }
    .hero { position: relative; height: 320px; overflow: hidden; background: var(--color-bg-dark); }
    .hero-img { width: 100%; height: 100%; object-fit: cover; opacity: .55; }
    .hero-overlay { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(15,23,42,.75) 0%, rgba(26,86,219,.45) 100%); display: flex; align-items: center; }
    .hero-content { max-width: var(--max-width); margin: 0 auto; padding: 0 var(--space-5); width: 100%; }
    .hero-title { font-size: var(--font-size-3xl); font-weight: 800; color: var(--color-text-inverse); line-height: 1.2; margin-bottom: var(--space-4); }
    .hero-title em { font-style: normal; color: var(--color-accent-light); }
    .hero-subtitle { font-size: var(--font-size-md); color: rgba(255,255,255,.8); max-width: 540px; line-height: 1.7; margin-bottom: var(--space-6); }
    .hero-stats { display: flex; gap: var(--space-10); }
    .hero-stat-num { font-size: var(--font-size-2xl); font-weight: 800; color: var(--color-text-inverse); }
    .hero-stat-label { font-size: var(--font-size-sm); color: rgba(255,255,255,.65); margin-top: 2px; }
    .section-title { display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-5); padding-bottom: var(--space-3); border-bottom: 2px solid var(--color-border-light); }
    .section-title-bar { width: 4px; height: 22px; border-radius: 2px; background: linear-gradient(180deg, var(--color-primary), var(--color-primary-light)); flex-shrink: 0; }
    .section-title h2 { font-size: var(--font-size-lg); font-weight: 700; color: var(--color-text); }
    .section-title .more-link { margin-left: auto; font-size: var(--font-size-xs); color: var(--color-text-muted); }
    .section-title .more-link:hover { color: var(--color-primary); }
    .main-content { padding: var(--space-8) 0; }
    .content-grid { display: grid; grid-template-columns: 1fr 280px; gap: var(--space-6); align-items: start; }
    .main-column { display: flex; flex-direction: column; gap: var(--space-6); }
    .content-section { background: var(--color-bg-card); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); padding: var(--space-5); overflow: hidden; }
    .featured-block { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; grid-template-rows: 1fr 1fr; gap: var(--space-3); margin-bottom: var(--space-5);}
    .featured-item { position: relative; border-radius: var(--radius-md); overflow: hidden; }
    .featured-item img { width: 100%; height: 100%; object-fit: cover; transition: var(--transition-smooth); }
    .featured-item:hover img { transform: scale(1.05); }
    .featured-item-title { position: absolute; bottom: 0; left: 0; right: 0; padding: var(--space-8) var(--space-3) var(--space-2); background: linear-gradient(transparent, rgba(0,0,0,.7)); color: var(--color-text-inverse); font-size: var(--font-size-xs); font-weight: 500; line-height: 1.4; }
    .text-list { display: flex; flex-direction: column; }
    .text-list-item { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) 0; border-bottom: 1px solid var(--color-border-light); transition: var(--transition-fast); }
    .text-list-item:last-child { border-bottom: none; }
    .text-list-item:hover { background: var(--color-primary-50); margin: 0 calc(var(--space-3) * -1); padding-left: var(--space-3); padding-right: var(--space-3); border-radius: var(--radius-sm); }
    .text-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-primary-light); flex-shrink: 0; }
    .text-list-item a { font-size: var(--font-size-sm); color: var(--color-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
    .text-list-item a:hover { color: var(--color-primary); }
    .video-item { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2) 0; border-bottom: 1px solid var(--color-border-light); transition: var(--transition-fast); }
    .video-item:last-child { border-bottom: none; }
    .video-item:hover { background: var(--color-primary-50); margin: 0 calc(var(--space-3) * -1); padding-left: var(--space-3); padding-right: var(--space-3); border-radius: var(--radius-sm); }
    .video-rank { width: 22px; height: 22px; border-radius: var(--radius-sm); display: flex; align-items: center; justify-content: center; font-size: var(--font-size-xs); font-weight: 700; flex-shrink: 0; margin-top: 2px; background: var(--color-border-light); color: #1a56db; }
    .video-rank.top { background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light)); color: var(--color-text-inverse); }
    .video-item-title { font-size: var(--font-size-sm); line-height: 1.5; color: var(--color-text); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .side-column { display: flex; flex-direction: column; gap: var(--space-6); position: sticky; top: 80px; }
    .side-card { background: var(--color-bg-card); border-radius: var(--radius-lg); box-shadow: var(--shadow-md); padding: var(--space-5); }
    .recommend-grid { display: grid; grid-template-columns: 1fr 1fr; gap: var(--space-3); }
    .recommend-card { display: flex; flex-direction: column; align-items: center; gap: var(--space-2); padding: var(--space-4) var(--space-3); border-radius: var(--radius-md); background: var(--color-primary-50); border: 1px solid var(--color-primary-100); transition: var(--transition-base); cursor: pointer; text-align: center; }
    .recommend-card:hover { background: var(--color-primary-100); transform: translateY(-2px); box-shadow: var(--shadow-md); }
    .recommend-icon { width: 40px; height: 40px; border-radius: var(--radius-md); background: linear-gradient(135deg, var(--color-primary), var(--color-primary-light)); display: flex; align-items: center; justify-content: center; }
    .recommend-icon svg { width: 20px; height: 20px; color: var(--color-text-inverse); }
    .recommend-label { font-size: var(--font-size-sm); font-weight: 600; color: var(--color-text); }
    .news-item { display: flex; align-items: flex-start; gap: var(--space-3); padding: var(--space-3) 0; border-bottom: 1px solid var(--color-border-light); transition: var(--transition-fast); }
    .news-item:last-child { border-bottom: none; }
    .news-item:hover { background: var(--color-primary-50); margin: 0 calc(var(--space-3) * -1); padding-left: var(--space-3); padding-right: var(--space-3); border-radius: var(--radius-sm); }
    .news-num { width: 24px; height: 24px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: var(--font-size-xs); font-weight: 700; flex-shrink: 0; background: var(--color-primary-50); color: var(--color-primary); }
    .news-num.hot { background: linear-gradient(135deg, var(--color-danger), #f97316); color: var(--color-text-inverse); }
    .news-item-title { font-size: var(--font-size-sm); line-height: 1.5; color: var(--color-text); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
    .footer { background: var(--color-bg-dark); color: rgba(255,255,255,.65); padding: var(--space-10) 0 var(--space-6); }
    .footer-top { display: flex; justify-content: space-between; align-items: flex-start; padding-bottom: var(--space-8); border-bottom: 1px solid rgba(255,255,255,.1); gap: var(--space-8); flex-wrap: wrap; }
    .footer-brand { max-width: 320px; }
    .footer-brand-name { font-size: var(--font-size-lg); font-weight: 700; color: var(--color-text-inverse); margin-bottom: var(--space-3); }
    .footer-brand-desc { font-size: var(--font-size-sm); line-height: 1.7; }
    .footer-links-section h4 { color: var(--color-text-inverse); font-size: var(--font-size-base); font-weight: 600; margin-bottom: var(--space-4); }
    .footer-links-list { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-4); }
    .footer-links-list a { font-size: var(--font-size-sm); color: rgba(255,255,255,.55); }
    .footer-links-list a:hover { color: var(--color-text-inverse); }
    .footer-bottom { padding-top: var(--space-5); text-align: center; font-size: var(--font-size-xs); color: rgba(255,255,255,.35); }
    @media (max-width: 1024px) {
      .hero { height: 280px; }
      .hero-title { font-size: var(--font-size-2xl); }
      .content-grid { grid-template-columns: 1fr 240px; }
    }
    @media (max-width: 768px) {
      .header-inner { height: 56px; }
      .search-area { display: none; }
      .auth-area { display: none; }
      .hero { height: 220px; }
      .hero-title { font-size: var(--font-size-xl); }
      .hero-subtitle { display: none; }
      .hero-stats { gap: var(--space-6); }
      .hero-stat-num { font-size: var(--font-size-lg); }
      .content-grid { grid-template-columns: 1fr; min-width: 0; }
      .content-grid > * { min-width: 0; }
      .side-column { position: static; order: -1; }
      .featured-block { height: 200px; }
      .featured-item { min-width: 0; }
      .footer-top { flex-direction: column; }
    }
    @media (max-width: 480px) {
      .hero { height: 180px; }
      .hero-title { font-size: var(--font-size-lg); }
      .hero-stats { flex-wrap: wrap; gap: var(--space-4); }
      .featured-block { height: 160px; gap: var(--space-2); }
    }
    @keyframes fadeInUp { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
    .content-section, .side-card { animation: fadeInUp .5s ease both; }
    .content-section:nth-child(2) { animation-delay: .1s; }
    .content-section:nth-child(3) { animation-delay: .15s; }
    .content-section:nth-child(4) { animation-delay: .2s; }
    .side-card:nth-child(2) { animation-delay: .1s; }
