/* 收藏页面样式 */ .favorite-item { transition: all 0.3s ease; border: 1px solid #e9ecef; } .favorite-item:hover { box-shadow: 0 4px 8px rgba(0,0,0,0.1); transform: translateY(-2px); } .favorite-image { width: 80px; height: 80px; object-fit: cover; border-radius: 8px; border: 1px solid #e9ecef; } .favorite-image-placeholder { width: 80px; height: 80px; background-color: #f8f9fa; border: 1px solid #e9ecef; border-radius: 8px; display: flex; align-items: center; justify-content: center; color: #6c757d; font-size: 2rem; } .favorite-checkbox { transform: scale(1.2); } .empty-state { min-height: 300px; display: flex; align-items: center; justify-content: center; } /* 图标按钮样式 */ .icon-buttons .btn { font-size: 1.1rem; padding: 0.5rem; border-radius: 50%; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; margin: 0 2px; transition: all 0.2s ease; } .icon-buttons .btn:hover { transform: scale(1.1); } .icon-buttons .btn-outline-primary:hover { background-color: #007bff; border-color: #007bff; color: white; } .icon-buttons .btn-outline-danger:hover { background-color: #dc3545; border-color: #dc3545; color: white; } .card-title a { color: #212529; font-size: 0.95rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; } .card-title a:hover { color: #007bff; } .favorite-item .card-body { padding: 1rem; } .badge { font-size: 0.75rem; } /* 工具提示样式 */ .tooltip-inner { font-size: 0.8rem; padding: 0.25rem 0.5rem; } /* 响应式设计 */ @media (max-width: 768px) { .favorite-image, .favorite-image-placeholder { width: 60px; height: 60px; } .card-title a { font-size: 0.9rem; } .icon-buttons .btn { font-size: 1rem; width: 35px; height: 35px; } }