.hero { background: #fff; padding: 40px; margin-bottom: 30px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.hero h1 { font-size: 28px; margin-bottom: 15px; color: #0066cc; }
.hero .intro { font-size: 16px; line-height: 1.8; color: #666; }

.hot-section, .guide-section, .latest-section { background: #fff; padding: 30px; margin-bottom: 30px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.hot-section h2, .guide-section h2, .latest-section h2 { font-size: 24px; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid #0066cc; }

.video-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; margin-bottom: 20px; }
.video-card { padding: 20px; background: #f9f9f9; border-radius: 6px; transition: all 0.3s; }
.video-card:hover { box-shadow: 0 4px 12px rgba(0,0,0,0.15); transform: translateY(-2px); }
.video-card h3 { font-size: 18px; margin-bottom: 8px; }
.video-card h3 a { color: #333; }
.video-card h3 a:hover { color: #0066cc; }
.video-card .meta { font-size: 13px; color: #999; margin-bottom: 8px; }
.video-card .desc { font-size: 14px; color: #666; line-height: 1.6; }

.guide-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; }
.guide-card { padding: 25px; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #fff; border-radius: 6px; }
.guide-card h3 { font-size: 20px; margin-bottom: 10px; }
.guide-card h3 a { color: #fff; }
.guide-card p { font-size: 14px; line-height: 1.6; opacity: 0.9; }

.video-list { display: flex; flex-direction: column; gap: 15px; }
.video-item { display: flex; align-items: center; padding: 15px; background: #f9f9f9; border-radius: 6px; transition: all 0.3s; }
.video-item:hover { background: #f0f0f0; }
.video-item .rank { font-size: 24px; font-weight: bold; color: #0066cc; margin-right: 20px; min-width: 40px; text-align: center; }
.video-item .item-content { flex: 1; }
.video-item h3 { font-size: 16px; margin-bottom: 5px; }
.video-item h3 a { color: #333; }
.video-item .meta { font-size: 13px; color: #999; }

.more-link { text-align: center; margin-top: 20px; font-size: 16px; }
.more-link a { color: #0066cc; font-weight: 500; }

.page-intro { font-size: 16px; color: #666; margin-bottom: 30px; line-height: 1.8; }

.list-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 25px; }
.list-video-card { position: relative; padding: 25px; background: #fff; border: 1px solid #e0e0e0; border-radius: 8px; transition: all 0.3s; }
.list-video-card:hover { box-shadow: 0 4px 16px rgba(0,0,0,0.1); border-color: #0066cc; }
.list-video-card .rank-badge, .list-video-card .year-badge, .list-video-card .genre-badge { position: absolute; top: 10px; right: 10px; padding: 4px 10px; background: #0066cc; color: #fff; border-radius: 12px; font-size: 12px; }
.list-video-card .year-badge { background: #28a745; }
.list-video-card .genre-badge { background: #ff6b6b; }
.list-video-card h3 { font-size: 18px; margin-bottom: 10px; padding-right: 80px; }
.list-video-card h3 a { color: #333; }
.list-video-card .meta { font-size: 13px; color: #999; margin-bottom: 8px; }
.list-video-card .tags { font-size: 12px; color: #0066cc; margin-bottom: 10px; }
.list-video-card .desc { font-size: 14px; color: #666; line-height: 1.6; }

.detail-page { background: #fff; padding: 40px; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1); }
.detail-page h1 { font-size: 32px; margin-bottom: 30px; color: #0066cc; padding-bottom: 15px; border-bottom: 3px solid #0066cc; }
.detail-page h2 { font-size: 22px; margin: 30px 0 15px; color: #333; }
.detail-info dl { display: grid; grid-template-columns: 100px 1fr; gap: 12px; line-height: 1.8; }
.detail-info dt { font-weight: 600; color: #666; }
.detail-info dd { color: #333; }
.detail-highlight { background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); color: #fff; padding: 25px; border-radius: 8px; margin: 25px 0; }
.detail-highlight h2 { color: #fff; margin-top: 0; }
.highlight-text { font-size: 18px; line-height: 1.8; font-style: italic; }
.detail-summary p, .detail-review p { font-size: 16px; line-height: 2; color: #444; text-align: justify; }
.related-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); gap: 20px; margin-top: 20px; }
.related-card { padding: 20px; background: #f9f9f9; border-radius: 6px; transition: all 0.3s; }
.related-card:hover { background: #f0f0f0; box-shadow: 0 4px 12px rgba(0,0,0,0.1); }
.related-card h3 { font-size: 16px; margin-bottom: 8px; }
.related-card h3 a { color: #333; }
.related-card .meta { font-size: 12px; color: #999; margin-bottom: 6px; }
.related-card .desc { font-size: 13px; color: #666; line-height: 1.6; }

@media (max-width: 768px) {
  .hero { padding: 25px 20px; }
  .hero h1 { font-size: 22px; }
  .hot-section, .guide-section, .latest-section { padding: 20px 15px; }
  .video-grid { grid-template-columns: 1fr; gap: 15px; }
  .list-grid { grid-template-columns: 1fr; gap: 20px; }
  .detail-page { padding: 25px 20px; }
  .detail-page h1 { font-size: 24px; }
  .detail-info dl { grid-template-columns: 80px 1fr; gap: 10px; font-size: 14px; }
  .related-grid { grid-template-columns: 1fr; }
}